diff --git a/.br-external.mk b/.br-external.mk new file mode 100644 index 0000000000..43dc5f0477 --- /dev/null +++ b/.br-external.mk @@ -0,0 +1,10 @@ +# +# Automatically generated file; DO NOT EDIT. +# + +BR2_EXTERNAL ?= +BR2_EXTERNAL_NAMES = +BR2_EXTERNAL_DIRS = +BR2_EXTERNAL_MKS = + +# No br2-external tree defined. diff --git a/arch/Config.in b/arch/Config.in index be37481ac2..7149b2cb31 100644 --- a/arch/Config.in +++ b/arch/Config.in @@ -159,6 +159,13 @@ config BR2_nios2 http://www.altera.com/ http://en.wikipedia.org/wiki/Nios_II +config BR2_or1k + bool "OpenRISC" + select BR2_ARCH_HAS_MMU_MANDATORY + help + OpenRISC is a free and open processor for embedded system. + http://openrisc.io + config BR2_powerpc bool "PowerPC" select BR2_ARCH_HAS_MMU_MANDATORY @@ -197,16 +204,6 @@ config BR2_sh http://www.hitachi.com/ http://en.wikipedia.org/wiki/SuperH -config BR2_sh64 - bool "SuperH64" - depends on BR2_DEPRECATED_SINCE_2015_05 - select BR2_ARCH_HAS_MMU_MANDATORY - help - SuperH64 (or SH) is a 64-bit reduced instruction set computer (RISC) - instruction set architecture (ISA) developed by Hitachi. - http://www.hitachi.com/ - http://en.wikipedia.org/wiki/SuperH - config BR2_sparc bool "SPARC" select BR2_ARCH_HAS_MMU_MANDATORY @@ -336,12 +333,19 @@ config BR2_BINFMT_FLAT_ONE config BR2_BINFMT_FLAT_SEP_DATA bool "Separate data and code region" + # this FLAT binary type technically exists on m68k, but fails + # to build numerous packages: due to architecture limitation, + # big functions cannot be built in this mode. They cause build + # failures such as "Tried to convert PC relative branch to + # absolute jump" or "error: value -yyyyy out of range". + depends on BR2_bfin help Allow for the data and text segments to be separated and placed in different regions of memory. config BR2_BINFMT_FLAT_SHARED bool "Shared binary" + depends on BR2_m68k || BR2_bfin # Even though this really generates shared binaries, there is no libdl # and dlopen() cannot be used. So packages that require shared # libraries cannot be built. Therefore, we don't select @@ -357,14 +361,10 @@ if BR2_arcle || BR2_arceb source "arch/Config.in.arc" endif -if BR2_arm || BR2_armeb +if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_aarch64_be source "arch/Config.in.arm" endif -if BR2_aarch64 || BR2_aarch64_be -source "arch/Config.in.aarch64" -endif - if BR2_bfin source "arch/Config.in.bfin" endif @@ -385,11 +385,15 @@ if BR2_nios2 source "arch/Config.in.nios2" endif +if BR2_or1k +source "arch/Config.in.or1k" +endif + if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le source "arch/Config.in.powerpc" endif -if BR2_sh || BR2_sh64 +if BR2_sh source "arch/Config.in.sh" endif diff --git a/arch/Config.in.aarch64 b/arch/Config.in.aarch64 deleted file mode 100644 index 34cd409a59..0000000000 --- a/arch/Config.in.aarch64 +++ /dev/null @@ -1,7 +0,0 @@ -config BR2_ARCH - default "aarch64" if BR2_aarch64 - default "aarch64_be" if BR2_aarch64_be - -config BR2_ENDIAN - default "LITTLE" if BR2_aarch64 - default "BIG" if BR2_aarch64_be diff --git a/arch/Config.in.arm b/arch/Config.in.arm index ee612f50c8..2617976f13 100644 --- a/arch/Config.in.arm +++ b/arch/Config.in.arm @@ -31,6 +31,10 @@ config BR2_ARM_CPU_HAS_VFPV4 bool select BR2_ARM_CPU_HAS_VFPV3 +config BR2_ARM_CPU_HAS_FP_ARMV8 + bool + select BR2_ARM_CPU_HAS_VFPV4 + config BR2_ARM_CPU_HAS_ARM bool @@ -55,9 +59,11 @@ config BR2_ARM_CPU_ARMV7A config BR2_ARM_CPU_ARMV7M bool +config BR2_ARM_CPU_ARMV8 + bool + choice prompt "Target Architecture Variant" - depends on BR2_arm || BR2_armeb default BR2_arm926t help Specific CPU variant to use @@ -68,12 +74,14 @@ config BR2_arm920t select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV4 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm922t bool "arm922t" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV4 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm926t bool "arm926t" select BR2_ARM_CPU_HAS_ARM @@ -81,12 +89,14 @@ config BR2_arm926t select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV5 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm1136j_s bool "arm1136j-s" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm1136jf_s bool "arm1136jf-s" select BR2_ARM_CPU_HAS_ARM @@ -94,12 +104,14 @@ config BR2_arm1136jf_s select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm1176jz_s bool "arm1176jz-s" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm1176jzf_s bool "arm1176jzf-s" select BR2_ARM_CPU_HAS_ARM @@ -107,6 +119,7 @@ config BR2_arm1176jzf_s select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_arm11mpcore bool "mpcore" select BR2_ARM_CPU_HAS_ARM @@ -114,6 +127,7 @@ config BR2_arm11mpcore select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a5 bool "cortex-A5" select BR2_ARM_CPU_HAS_ARM @@ -122,6 +136,7 @@ config BR2_cortex_a5 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a7 bool "cortex-A7" select BR2_ARM_CPU_HAS_ARM @@ -130,6 +145,7 @@ config BR2_cortex_a7 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a8 bool "cortex-A8" select BR2_ARM_CPU_HAS_ARM @@ -138,6 +154,7 @@ config BR2_cortex_a8 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a9 bool "cortex-A9" select BR2_ARM_CPU_HAS_ARM @@ -146,6 +163,7 @@ config BR2_cortex_a9 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a12 bool "cortex-A12" select BR2_ARM_CPU_HAS_ARM @@ -154,6 +172,7 @@ config BR2_cortex_a12 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a15 bool "cortex-A15" select BR2_ARM_CPU_HAS_ARM @@ -162,6 +181,7 @@ config BR2_cortex_a15 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_cortex_a17 bool "cortex-A17" select BR2_ARM_CPU_HAS_ARM @@ -170,41 +190,73 @@ config BR2_cortex_a17 select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 +config BR2_cortex_a53 + bool "cortex-A53" + select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_FP_ARMV8 + select BR2_ARM_CPU_ARMV8 + select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_cortex_a57 + bool "cortex-A57" + select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_FP_ARMV8 + select BR2_ARM_CPU_ARMV8 + select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_cortex_a72 + bool "cortex-A72" + select BR2_ARM_CPU_HAS_ARM if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_NEON if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_THUMB2 if !BR2_ARCH_IS_64 + select BR2_ARM_CPU_HAS_FP_ARMV8 + select BR2_ARM_CPU_ARMV8 + select BR2_ARCH_HAS_MMU_OPTIONAL config BR2_cortex_m3 bool "cortex-M3" select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7M + depends on !BR2_ARCH_IS_64 config BR2_cortex_m4 bool "cortex-M4" select BR2_ARM_CPU_HAS_THUMB2 select BR2_ARM_CPU_ARMV7M + depends on !BR2_ARCH_IS_64 config BR2_fa526 bool "fa526/626" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_ARMV4 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_pj4 bool "pj4" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_HAS_VFPV3 select BR2_ARM_CPU_ARMV7A select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_strongarm bool "strongarm sa110/sa1100" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_ARMV4 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_xscale bool "xscale" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV5 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 config BR2_iwmmxt bool "iwmmxt" select BR2_ARM_CPU_HAS_ARM select BR2_ARM_CPU_ARMV5 select BR2_ARCH_HAS_MMU_OPTIONAL + depends on !BR2_ARCH_IS_64 endchoice config BR2_ARM_ENABLE_NEON @@ -284,7 +336,7 @@ endchoice choice prompt "Floating point strategy" - depends on BR2_ARM_EABI || BR2_ARM_EABIHF + default BR2_ARM_FPU_FP_ARMV8 if BR2_ARM_CPU_HAS_FP_ARMV8 default BR2_ARM_FPU_VFPV4D16 if BR2_ARM_CPU_HAS_VFPV4 default BR2_ARM_FPU_VFPV3D16 if BR2_ARM_CPU_HAS_VFPV3 default BR2_ARM_FPU_VFPV2 if BR2_ARM_CPU_HAS_VFPV2 @@ -395,10 +447,25 @@ config BR2_ARM_FPU_NEON_VFPV4 example on Cortex-A5 and Cortex-A7, support for VFPv4 and NEON is optional. +config BR2_ARM_FPU_FP_ARMV8 + bool "FP-ARMv8" + depends on BR2_ARM_CPU_HAS_FP_ARMV8 + help + This option allows to use the ARMv8 floating point unit. + +config BR2_ARM_FPU_NEON_FP_ARMV8 + bool "NEON/FP-ARMv8" + depends on BR2_ARM_CPU_HAS_FP_ARMV8 + depends on BR2_ARM_CPU_HAS_NEON + help + This option allows to use both the ARMv8 floating point unit + and the NEON SIMD unit for floating point operations. + endchoice choice prompt "ARM instruction set" + depends on BR2_arm || BR2_armeb config BR2_ARM_INSTRUCTIONS_ARM bool "ARM" @@ -434,12 +501,14 @@ config BR2_ARM_INSTRUCTIONS_THUMB2 endchoice config BR2_ARCH - default "arm" if BR2_arm - default "armeb" if BR2_armeb + default "arm" if BR2_arm + default "armeb" if BR2_armeb + default "aarch64" if BR2_aarch64 + default "aarch64_be" if BR2_aarch64_be config BR2_ENDIAN - default "LITTLE" if BR2_arm - default "BIG" if BR2_armeb + default "LITTLE" if (BR2_arm || BR2_aarch64) + default "BIG" if (BR2_armeb || BR2_aarch64_be) config BR2_GCC_TARGET_CPU default "arm920t" if BR2_arm920t @@ -465,11 +534,22 @@ config BR2_GCC_TARGET_CPU default "strongarm" if BR2_strongarm default "xscale" if BR2_xscale default "iwmmxt" if BR2_iwmmxt + default "cortex-a53" if (BR2_cortex_a53 && !BR2_ARCH_IS_64) + default "cortex-a53+fp" if (BR2_cortex_a53 && BR2_ARCH_IS_64 && BR2_ARM_FPU_FP_ARMV8) + default "cortex-a53+fp+simd" if (BR2_cortex_a53 && BR2_ARCH_IS_64 && BR2_ARM_FPU_NEON_FP_ARMV8) + default "cortex-a57" if (BR2_cortex_a57 && !BR2_ARCH_IS_64) + default "cortex-a57+fp" if (BR2_cortex_a57 && BR2_ARCH_IS_64 && BR2_ARM_FPU_FP_ARMV8) + default "cortex-a57+fp+simd" if (BR2_cortex_a57 && BR2_ARCH_IS_64 && BR2_ARM_FPU_NEON_FP_ARMV8) + default "cortex-a72" if (BR2_cortex_a72 && !BR2_ARCH_IS_64) + default "cortex-a72+fp" if (BR2_cortex_a72 && BR2_ARCH_IS_64 && BR2_ARM_FPU_FP_ARMV8) + default "cortex-a72+fp+simd" if (BR2_cortex_a72 && BR2_ARCH_IS_64 && BR2_ARM_FPU_NEON_FP_ARMV8) config BR2_GCC_TARGET_ABI - default "aapcs-linux" + default "aapcs-linux" if BR2_arm || BR2_armeb + default "lp64" if BR2_aarch64 || BR2_aarch64_be config BR2_GCC_TARGET_FPU + depends on BR2_arm || BR2_armeb default "vfp" if BR2_ARM_FPU_VFPV2 default "vfpv3" if BR2_ARM_FPU_VFPV3 default "vfpv3-d16" if BR2_ARM_FPU_VFPV3D16 @@ -477,6 +557,8 @@ config BR2_GCC_TARGET_FPU default "vfpv4-d16" if BR2_ARM_FPU_VFPV4D16 default "neon" if BR2_ARM_FPU_NEON default "neon-vfpv4" if BR2_ARM_FPU_NEON_VFPV4 + default "fp-armv8" if BR2_ARM_FPU_FP_ARMV8 + default "neon-fp-armv8" if BR2_ARM_FPU_NEON_FP_ARMV8 config BR2_GCC_TARGET_FLOAT_ABI default "soft" if BR2_ARM_SOFT_FLOAT diff --git a/arch/Config.in.bfin b/arch/Config.in.bfin index 415fc890d8..9f7056a6dc 100644 --- a/arch/Config.in.bfin +++ b/arch/Config.in.bfin @@ -1,7 +1,7 @@ choice prompt "Target CPU" depends on BR2_bfin - default BR2_bf609 + default BR2_bf532 help Specify target CPU config BR2_bf606 diff --git a/arch/Config.in.m68k b/arch/Config.in.m68k index da06c3a9bb..ced871f58b 100644 --- a/arch/Config.in.m68k +++ b/arch/Config.in.m68k @@ -35,7 +35,3 @@ endchoice config BR2_GCC_TARGET_CPU default "68040" if BR2_m68k_68040 default "5208" if BR2_m68k_cf5208 - -config BR2_GCC_TARGET_ARCH - default "m68k" if BR2_m68k_m68k - default "cf" if BR2_m68k_cf diff --git a/arch/Config.in.mips b/arch/Config.in.mips index fda1a1d7e7..ce41e9e725 100644 --- a/arch/Config.in.mips +++ b/arch/Config.in.mips @@ -1,3 +1,21 @@ +# mips default CPU ISAs +config BR2_MIPS_CPU_MIPS32 + bool +config BR2_MIPS_CPU_MIPS32R2 + bool +config BR2_MIPS_CPU_MIPS32R5 + bool +config BR2_MIPS_CPU_MIPS32R6 + bool +config BR2_MIPS_CPU_MIPS64 + bool +config BR2_MIPS_CPU_MIPS64R2 + bool +config BR2_MIPS_CPU_MIPS64R5 + bool +config BR2_MIPS_CPU_MIPS64R6 + bool + choice prompt "Target Architecture Variant" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el @@ -6,27 +24,78 @@ choice help Specific CPU variant to use - 64bit cabable: 64, 64r2, 64r6 - non-64bit capable: 32, 32r2, 32r6 + 64bit cabable: 64, 64r2, 64r5, 64r6 + non-64bit capable: 32, 32r2, 32r5, 32r6 config BR2_mips_32 - bool "mips 32" + bool "Generic MIPS32" depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32 config BR2_mips_32r2 - bool "mips 32r2" + bool "Generic MIPS32R2" depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R2 +config BR2_mips_32r5 + bool "Generic MIPS32R5" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R5 config BR2_mips_32r6 - bool "mips 32r6" + bool "Generic MIPS32R6" depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R6 +config BR2_mips_interaptiv + bool "interAptiv" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R2 +config BR2_mips_m5150 + bool "M5150" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R5 +config BR2_mips_m6250 + bool "M6250" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R6 +config BR2_mips_p5600 + bool "P5600" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R5 +config BR2_mips_xburst + bool "XBurst" + depends on !BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS32R2 + help + The Ingenic XBurst is a MIPS32R2 microprocessor. It has a + bug in the FPU that can generate incorrect results in + certain cases. The problem shows up when you have several + fused madd instructions in sequence with dependant + operands. This requires the -mno-fused-madd compiler option + to be used in order to prevent emitting these instructions. + + See http://www.ingenic.com/en/?xburst.html config BR2_mips_64 - bool "mips 64" + bool "Generic MIPS64" depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64 config BR2_mips_64r2 - bool "mips 64r2" + bool "Generic MIPS64R2" depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64R2 +config BR2_mips_64r5 + bool "Generic MIPS64R5" + depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64R5 config BR2_mips_64r6 - bool "mips 64r6" + bool "Generic MIPS64R6" depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64R6 +config BR2_mips_i6400 + bool "I6400" + depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64R6 +config BR2_mips_p6600 + bool "P6600" + depends on BR2_ARCH_IS_64 + select BR2_MIPS_CPU_MIPS64R6 endchoice @@ -70,10 +139,19 @@ config BR2_ENDIAN config BR2_GCC_TARGET_ARCH default "mips32" if BR2_mips_32 default "mips32r2" if BR2_mips_32r2 + default "mips32r5" if BR2_mips_32r5 default "mips32r6" if BR2_mips_32r6 + default "interaptiv" if BR2_mips_interaptiv + default "m5101" if BR2_mips_m5150 + default "m6201" if BR2_mips_m6250 + default "p5600" if BR2_mips_p5600 + default "mips32r2" if BR2_mips_xburst default "mips64" if BR2_mips_64 default "mips64r2" if BR2_mips_64r2 + default "mips64r5" if BR2_mips_64r5 default "mips64r6" if BR2_mips_64r6 + default "i6400" if BR2_mips_i6400 + default "p6600" if BR2_mips_p6600 config BR2_MIPS_OABI32 bool diff --git a/arch/Config.in.or1k b/arch/Config.in.or1k new file mode 100644 index 0000000000..dba64a6ac9 --- /dev/null +++ b/arch/Config.in.or1k @@ -0,0 +1,5 @@ +config BR2_ARCH + default "or1k" + +config BR2_ENDIAN + default "BIG" diff --git a/arch/Config.in.sh b/arch/Config.in.sh index 1bdea37cbc..4705212583 100644 --- a/arch/Config.in.sh +++ b/arch/Config.in.sh @@ -23,8 +23,7 @@ config BR2_ARCH default "sh4eb" if BR2_sh4eb default "sh4a" if BR2_sh4a default "sh4aeb" if BR2_sh4aeb - default "sh64" if BR2_sh64 config BR2_ENDIAN - default "LITTLE" if BR2_sh4 || BR2_sh4a || BR2_sh64 + default "LITTLE" if BR2_sh4 || BR2_sh4a default "BIG" if BR2_sh2a || BR2_sh4eb || BR2_sh4aeb diff --git a/board/common/cleanups.sh b/board/common/cleanups.sh index 019b964485..86acbb9488 100755 --- a/board/common/cleanups.sh +++ b/board/common/cleanups.sh @@ -187,6 +187,7 @@ rm -f $TARGET/etc/init.d/S20urandom rm -f $TARGET/etc/init.d/S80dhcp-relay rm -f $TARGET/etc/init.d/S80dhcp-server rm -f $TARGET/etc/init.d/S91smb +rm -f $TARGET/etc/init.d/S99motion # other unwanted dirs rm -rf $TARGET/data/* diff --git a/boot/grub2/grub2-remove-gets.patch b/boot/grub2/0001-remove-gets.patch similarity index 100% rename from boot/grub2/grub2-remove-gets.patch rename to boot/grub2/0001-remove-gets.patch diff --git a/boot/grub2/0002-grub-core-gettext-gettext.c-main_context-secondary_c.patch b/boot/grub2/0002-grub-core-gettext-gettext.c-main_context-secondary_c.patch new file mode 100644 index 0000000000..94be092710 --- /dev/null +++ b/boot/grub2/0002-grub-core-gettext-gettext.c-main_context-secondary_c.patch @@ -0,0 +1,39 @@ +From f30c692c1f9ef0e93bee2b408a24baa017f1ca9d Mon Sep 17 00:00:00 2001 +From: Vladimir Serbinenko +Date: Thu, 7 Nov 2013 01:01:47 +0100 +Subject: [PATCH] * grub-core/gettext/gettext.c (main_context), + (secondary_context): Define after defining type and not before. + +[Thomas: backport from upstream commit +f30c692c1f9ef0e93bee2b408a24baa017f1ca9d, and remove ChangeLog +modifications to avoid conflicts.] +Signed-off-by: Thomas Petazzoni +--- + grub-core/gettext/gettext.c | 4 ++-- + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/grub-core/gettext/gettext.c b/grub-core/gettext/gettext.c +index df73570..4880cef 100644 +--- a/grub-core/gettext/gettext.c ++++ b/grub-core/gettext/gettext.c +@@ -34,8 +34,6 @@ GRUB_MOD_LICENSE ("GPLv3+"); + http://www.gnu.org/software/autoconf/manual/gettext/MO-Files.html . + */ + +-static struct grub_gettext_context main_context, secondary_context; +- + static const char *(*grub_gettext_original) (const char *s); + + struct grub_gettext_msg +@@ -69,6 +67,8 @@ struct grub_gettext_context + struct grub_gettext_msg *grub_gettext_msg_list; + }; + ++static struct grub_gettext_context main_context, secondary_context; ++ + #define MO_MAGIC_NUMBER 0x950412de + + static grub_err_t +-- +2.7.4 + diff --git a/boot/grub2/grub2.mk b/boot/grub2/grub2.mk index 88a46f4cee..dc4e51ea8e 100644 --- a/boot/grub2/grub2.mk +++ b/boot/grub2/grub2.mk @@ -45,6 +45,9 @@ endif # the confusion, it also uses NM, OBJCOPY and STRIP to build the # bootloader itself; none of these are used to build the native # tools. +# +# NOTE: TARGET_STRIP is overridden by BR2_STRIP_none, so always +# use the cross compile variant to ensure grub2 builds GRUB2_CONF_ENV = \ $(HOST_CONFIGURE_OPTS) \ @@ -55,14 +58,14 @@ GRUB2_CONF_ENV = \ TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \ NM="$(TARGET_NM)" \ OBJCOPY="$(TARGET_OBJCOPY)" \ - STRIP="$(TARGET_STRIP)" + STRIP="$(TARGET_CROSS)strip" GRUB2_CONF_OPTS = \ --target=$(GRUB2_TARGET) \ --with-platform=$(GRUB2_PLATFORM) \ --disable-grub-mkfont \ --enable-efiemu=no \ - --enable-liblzma=no \ + ac_cv_lib_lzma_lzma_code=no \ --enable-device-mapper=no \ --enable-libzfs=no \ --disable-werror diff --git a/boot/syslinux/0002-disable-pie.patch b/boot/syslinux/0002-disable-pie.patch new file mode 100644 index 0000000000..b31b622c41 --- /dev/null +++ b/boot/syslinux/0002-disable-pie.patch @@ -0,0 +1,22 @@ +Description: Disable PIE to avoid FTBFS on amd64 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1579023 +Author: Graham Inggs +Last-Update: 2016-05-06 + +gcc 6.x has PIE support enabled by default, which causes a build issue +with syslinux. This patch disables PIE support in the relevant +syslinux Makefile. + +Signed-off-by: Ryan Coe + +--- a/gpxe/src/Makefile ++++ b/gpxe/src/Makefile +@@ -4,7 +4,7 @@ + # + + CLEANUP := +-CFLAGS := ++CFLAGS := -fno-PIE + ASFLAGS := + LDFLAGS := + MAKEDEPS := Makefile diff --git a/boot/uboot/2016.07/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch b/boot/uboot/2016.07/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch new file mode 100644 index 0000000000..eded9a3128 --- /dev/null +++ b/boot/uboot/2016.07/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch @@ -0,0 +1,39 @@ +From 7c8d81605302e7d7fdd3e7d8eb69302bddc64a2c Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Fri, 16 Sep 2016 12:12:26 +0300 +Subject: [PATCH] arc: Use -mcpu=XXX instead of obsolete -marcXXX + +With newer ARC tools old way of CPU specification gets obsolete, +so we're switching to newer and more common way of setting "-mcpu". + +Signed-off-by: Alexey Brodkin +--- + arch/arc/config.mk | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/arch/arc/config.mk b/arch/arc/config.mk +index 7c974f0..13676bd 100644 +--- a/arch/arc/config.mk ++++ b/arch/arc/config.mk +@@ -31,15 +31,15 @@ CONFIG_MMU = 1 + endif + + ifdef CONFIG_CPU_ARC750D +-PLATFORM_CPPFLAGS += -marc700 ++PLATFORM_CPPFLAGS += -mcpu=arc700 + endif + + ifdef CONFIG_CPU_ARC770D +-PLATFORM_CPPFLAGS += -marc700 -mlock -mswape ++PLATFORM_CPPFLAGS += -mcpu=arc700 -mlock -mswape + endif + + ifdef CONFIG_CPU_ARCEM6 +-PLATFORM_CPPFLAGS += -marcem ++PLATFORM_CPPFLAGS += -mcpu=arcem + endif + + ifdef CONFIG_CPU_ARCHS34 +-- +2.7.4 + diff --git a/boot/uboot/2016.09.01/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch b/boot/uboot/2016.09.01/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch new file mode 100644 index 0000000000..eded9a3128 --- /dev/null +++ b/boot/uboot/2016.09.01/0001-arc-Use-mcpu-XXX-instead-of-obsolete-marcXXX.patch @@ -0,0 +1,39 @@ +From 7c8d81605302e7d7fdd3e7d8eb69302bddc64a2c Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Fri, 16 Sep 2016 12:12:26 +0300 +Subject: [PATCH] arc: Use -mcpu=XXX instead of obsolete -marcXXX + +With newer ARC tools old way of CPU specification gets obsolete, +so we're switching to newer and more common way of setting "-mcpu". + +Signed-off-by: Alexey Brodkin +--- + arch/arc/config.mk | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/arch/arc/config.mk b/arch/arc/config.mk +index 7c974f0..13676bd 100644 +--- a/arch/arc/config.mk ++++ b/arch/arc/config.mk +@@ -31,15 +31,15 @@ CONFIG_MMU = 1 + endif + + ifdef CONFIG_CPU_ARC750D +-PLATFORM_CPPFLAGS += -marc700 ++PLATFORM_CPPFLAGS += -mcpu=arc700 + endif + + ifdef CONFIG_CPU_ARC770D +-PLATFORM_CPPFLAGS += -marc700 -mlock -mswape ++PLATFORM_CPPFLAGS += -mcpu=arc700 -mlock -mswape + endif + + ifdef CONFIG_CPU_ARCEM6 +-PLATFORM_CPPFLAGS += -marcem ++PLATFORM_CPPFLAGS += -mcpu=arcem + endif + + ifdef CONFIG_CPU_ARCHS34 +-- +2.7.4 + diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in index 4613dd3c95..4e629c0ef4 100644 --- a/boot/uboot/Config.in +++ b/boot/uboot/Config.in @@ -38,7 +38,7 @@ choice Select the specific U-Boot version you want to use config BR2_TARGET_UBOOT_LATEST_VERSION - bool "2016.03" + bool "2017.01" config BR2_TARGET_UBOOT_CUSTOM_VERSION bool "Custom version" @@ -86,7 +86,7 @@ endif config BR2_TARGET_UBOOT_VERSION string - default "2016.03" if BR2_TARGET_UBOOT_LATEST_VERSION + default "2017.01" if BR2_TARGET_UBOOT_LATEST_VERSION default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \ if BR2_TARGET_UBOOT_CUSTOM_VERSION default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL @@ -95,6 +95,7 @@ config BR2_TARGET_UBOOT_VERSION config BR2_TARGET_UBOOT_PATCH string "Custom U-Boot patches" + default BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR if BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR != "" # legacy help A space-separated list of patches to apply to U-Boot. Each patch can be described as an URL, a local file path, @@ -137,9 +138,15 @@ config BR2_TARGET_UBOOT_NEEDS_DTC Select this option if your U-Boot board configuration requires the Device Tree compiler to be available. -choice - prompt "U-Boot binary format" - default BR2_TARGET_UBOOT_FORMAT_BIN +config BR2_TARGET_UBOOT_NEEDS_OPENSSL + bool "U-Boot needs OpenSSL" + help + Select this option if your U-Boot board configuration + requires OpenSSL to be available on the host. This is + typically the case when the board configuration has + CONFIG_FIT_SIGNATURE enabled. + +menu "U-Boot binary format" config BR2_TARGET_UBOOT_FORMAT_AIS bool "u-boot.ais" @@ -150,6 +157,7 @@ config BR2_TARGET_UBOOT_FORMAT_AIS config BR2_TARGET_UBOOT_FORMAT_BIN bool "u-boot.bin" + default y config BR2_TARGET_UBOOT_FORMAT_DTB_IMG bool "u-boot-dtb.img" @@ -252,19 +260,21 @@ config BR2_TARGET_UBOOT_FORMAT_CUSTOM help On some platforms, the standard U-Boot binary is not called u-boot.bin, but u-boot.bin. If this is your case, - you should select this option and specify the correct name + you should select this option and specify the correct name(s) in BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME. -endchoice - config BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME - string "U-Boot binary format: custom name" + string "U-Boot binary format: custom names" depends on BR2_TARGET_UBOOT_FORMAT_CUSTOM help - Specify the correct name of the output binary created by - U-Boot, if it is not one of the default names. For example: + In case the U-Boot binary for the target platform is not among + the default names, one or more custom names can be listed here. + Use space to separate multiple names. + Example: u-boot_magic.bin +endmenu + config BR2_TARGET_UBOOT_OMAP_IFT depends on BR2_TARGET_UBOOT_FORMAT_BIN depends on BR2_arm || BR2_armeb @@ -313,7 +323,7 @@ config BR2_TARGET_UBOOT_SPL_NAME default "spl/u-boot-spl.bin" depends on BR2_TARGET_UBOOT_SPL help - This is the name of the SPL binary, generated during + A space-separated list of SPL binaries, generated during u-boot build. For most platform it is spl/u-boot-spl.bin but not always. It is MLO on OMAP for example. @@ -348,9 +358,13 @@ menuconfig BR2_TARGET_UBOOT_ENVIMAGE if BR2_TARGET_UBOOT_ENVIMAGE config BR2_TARGET_UBOOT_ENVIMAGE_SOURCE - string "Source file for environment" + string "Source files for environment" help - Text file describing the environment. + 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. config BR2_TARGET_UBOOT_ENVIMAGE_SIZE string "Size of environment" diff --git a/boot/uboot/uboot.hash b/boot/uboot/uboot.hash index 747d133dfc..5473cfeab6 100644 --- a/boot/uboot/uboot.hash +++ b/boot/uboot/uboot.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 e49337262ecac44dbdeac140f2c6ebd1eba345e0162b0464172e7f05583ed7bb u-boot-2016.03.tar.bz2 +sha256 6c425175f93a4bcf2ec9faf5658ef279633dbd7856a293d95bd1ff516528ecf2 u-boot-2017.01.tar.bz2 diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index e73963853c..6b9d544546 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -36,44 +36,81 @@ BR_NO_CHECK_HASH_FOR += $(UBOOT_SOURCE) endif endif +ifeq ($(BR2_TARGET_UBOOT_FORMAT_BIN),y) +UBOOT_BINS += u-boot.bin +endif + ifeq ($(BR2_TARGET_UBOOT_FORMAT_ELF),y) -UBOOT_BIN = u-boot -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_KWB),y) -UBOOT_BIN = u-boot.kwb -UBOOT_MAKE_TARGET = $(UBOOT_BIN) -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_AIS),y) -UBOOT_BIN = u-boot.ais -UBOOT_MAKE_TARGET = $(UBOOT_BIN) -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_LDR),y) -UBOOT_BIN = u-boot.ldr -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND_BIN),y) -UBOOT_BIN = u-boot-nand.bin -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_DTB_IMG),y) -UBOOT_BIN = u-boot-dtb.img -UBOOT_MAKE_TARGET = all $(UBOOT_BIN) -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_IMG),y) -UBOOT_BIN = u-boot.img -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_IMX),y) -UBOOT_BIN = u-boot.imx -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_SB),y) -UBOOT_BIN = u-boot.sb -UBOOT_MAKE_TARGET = $(UBOOT_BIN) +UBOOT_BINS += u-boot +# To make elf usable for debuging on ARC use special target +ifeq ($(BR2_arc),y) +UBOOT_MAKE_TARGET += mdbtrick +endif +endif + +# Call 'make all' unconditionally +UBOOT_MAKE_TARGET += all + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_KWB),y) +UBOOT_BINS += u-boot.kwb +UBOOT_MAKE_TARGET += u-boot.kwb +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_AIS),y) +UBOOT_BINS += u-boot.ais +UBOOT_MAKE_TARGET += u-boot.ais +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_LDR),y) +UBOOT_BINS += u-boot.ldr +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND_BIN),y) +UBOOT_BINS += u-boot-nand.bin +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_DTB_IMG),y) +UBOOT_BINS += u-boot-dtb.img +UBOOT_MAKE_TARGET += u-boot-dtb.img +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_IMG),y) +UBOOT_BINS += u-boot.img +UBOOT_MAKE_TARGET += u-boot.img +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_IMX),y) +UBOOT_BINS += u-boot.imx +UBOOT_MAKE_TARGET += u-boot.imx +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_SB),y) +UBOOT_BINS += u-boot.sb +UBOOT_MAKE_TARGET += u-boot.sb # mxsimage needs OpenSSL UBOOT_DEPENDENCIES += host-elftosb host-openssl -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_SD),y) +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_SD),y) # BootStream (.sb) is generated by U-Boot, we convert it to SD format -UBOOT_BIN = u-boot.sd -UBOOT_MAKE_TARGET = u-boot.sb +UBOOT_BINS += u-boot.sd +UBOOT_MAKE_TARGET += u-boot.sb UBOOT_DEPENDENCIES += host-elftosb host-openssl -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND),y) -UBOOT_BIN = u-boot.nand -UBOOT_MAKE_TARGET = u-boot.sb +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND),y) +UBOOT_BINS += u-boot.nand +UBOOT_MAKE_TARGET += u-boot.sb UBOOT_DEPENDENCIES += host-elftosb host-openssl -else ifeq ($(BR2_TARGET_UBOOT_FORMAT_CUSTOM),y) -UBOOT_BIN = $(call qstrip,$(BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME)) -else -UBOOT_BIN = u-boot.bin -UBOOT_BIN_IFT = $(UBOOT_BIN).ift +endif + +ifeq ($(BR2_TARGET_UBOOT_FORMAT_CUSTOM),y) +UBOOT_BINS += $(call qstrip,$(BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME)) +endif + +ifeq ($(BR2_TARGET_UBOOT_OMAP_IFT),y) +UBOOT_BINS += u-boot.bin +UBOOT_BIN_IFT = u-boot.bin.ift endif # The kernel calls AArch64 'arm64', but U-Boot calls it just 'arm', so @@ -89,13 +126,17 @@ endif UBOOT_MAKE_OPTS += \ CROSS_COMPILE="$(TARGET_CROSS)" \ ARCH=$(UBOOT_ARCH) \ - HOSTCFLAGS="$(HOST_CFLAGS)" \ + HOSTCC="$(HOSTCC) $(HOST_CFLAGS)" \ HOSTLDFLAGS="$(HOST_LDFLAGS)" ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y) UBOOT_DEPENDENCIES += host-dtc endif +ifeq ($(BR2_TARGET_UBOOT_NEEDS_OPENSSL),y) +UBOOT_DEPENDENCIES += host-openssl +endif + # prior to u-boot 2013.10 the license info was in COPYING. Copy it so # legal-info finds it define UBOOT_COPY_OLD_LICENSE_FILE @@ -140,6 +181,12 @@ endif # BR2_TARGET_UBOOT_USE_DEFCONFIG UBOOT_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) +define UBOOT_HELP_CMDS + @echo ' uboot-menuconfig - Run U-Boot menuconfig' + @echo ' uboot-savedefconfig - Run U-Boot savedefconfig' + @echo ' uboot-update-defconfig - Save the U-Boot configuration to the path specified' + @echo ' by BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE' +endef endif # BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY define UBOOT_BUILD_CMDS @@ -162,15 +209,22 @@ define UBOOT_BUILD_OMAP_IFT endef define UBOOT_INSTALL_IMAGES_CMDS - cp -dpf $(@D)/$(UBOOT_BIN) $(BINARIES_DIR)/ + $(foreach f,$(UBOOT_BINS), \ + cp -dpf $(@D)/$(f) $(BINARIES_DIR)/ + ) $(if $(BR2_TARGET_UBOOT_FORMAT_NAND), - cp -dpf $(@D)/$(UBOOT_MAKE_TARGET) $(BINARIES_DIR)) + cp -dpf $(@D)/u-boot.sb $(BINARIES_DIR)) $(if $(BR2_TARGET_UBOOT_SPL), - cp -dpf $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) $(BINARIES_DIR)/) + $(foreach f,$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)), \ + cp -dpf $(@D)/$(f) $(BINARIES_DIR)/ + ) + ) $(if $(BR2_TARGET_UBOOT_ENVIMAGE), - $(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \ - $(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \ - -o $(BINARIES_DIR)/uboot-env.bin $(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE)) + cat $(call qstrip,$(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE)) | \ + $(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \ + $(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \ + $(if $(filter BIG,$(BR2_ENDIAN)),-b) \ + -o $(BINARIES_DIR)/uboot-env.bin -) endef define UBOOT_INSTALL_OMAP_IFT_IMAGE @@ -193,8 +247,9 @@ endif ifeq ($(BR2_TARGET_UBOOT_ZYNQ_IMAGE),y) define UBOOT_GENERATE_ZYNQ_IMAGE - $(HOST_DIR)/usr/bin/python2 $(HOST_DIR)/usr/bin/zynq-boot-bin.py \ - -u $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) \ + $(HOST_DIR)/usr/bin/python2 \ + $(HOST_DIR)/usr/bin/zynq-boot-bin.py \ + -u $(@D)/$(firstword $(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME))) \ -o $(BINARIES_DIR)/BOOT.BIN endef UBOOT_DEPENDENCIES += host-zynq-boot-bin @@ -203,8 +258,11 @@ endif ifeq ($(BR2_TARGET_UBOOT_ALTERA_SOCFPGA_IMAGE_CRC),y) define UBOOT_CRC_ALTERA_SOCFPGA_IMAGE - $(HOST_DIR)/usr/bin/mkpimage -o $(BINARIES_DIR)/$(notdir $(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME))).crc \ - $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) + $(foreach f,$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)), \ + $(HOST_DIR)/usr/bin/mkpimage \ + -o $(BINARIES_DIR)/$(notdir $(call qstrip,$(f))).crc \ + $(@D)/$(call qstrip,$(f)) + ) endef UBOOT_DEPENDENCIES += host-mkpimage UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_CRC_ALTERA_SOCFPGA_IMAGE diff --git a/fs/cloop/cloop.mk b/fs/cloop/cloop.mk index f783adeb00..9e42a3a27f 100644 --- a/fs/cloop/cloop.mk +++ b/fs/cloop/cloop.mk @@ -7,7 +7,8 @@ ROOTFS_CLOOP_DEPENDENCIES = host-cloop host-cdrkit define ROOTFS_CLOOP_CMD - $(HOST_DIR)/usr/bin/genisoimage -r $(TARGET_DIR) | $(HOST_DIR)/usr/bin/create_compressed_fs - 65536 > $@ + $(HOST_DIR)/usr/bin/genisoimage -r $(TARGET_DIR) | \ + $(HOST_DIR)/usr/bin/create_compressed_fs - 65536 > $@ endef -$(eval $(call ROOTFS_TARGET,cloop)) \ No newline at end of file +$(eval $(call ROOTFS_TARGET,cloop)) diff --git a/fs/common.mk b/fs/common.mk index 68e3a0f2d0..437f327ad7 100644 --- a/fs/common.mk +++ b/fs/common.mk @@ -76,22 +76,29 @@ $$(BINARIES_DIR)/rootfs.$(1): target-finalize $$(ROOTFS_$(2)_DEPENDENCIES) rm -f $$(FAKEROOT_SCRIPT) rm -f $$(TARGET_DIR_WARNING_FILE) rm -f $$(USERS_TABLE) + echo '#!/bin/sh' > $$(FAKEROOT_SCRIPT) echo "set -e" >> $$(FAKEROOT_SCRIPT) echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT) ifneq ($$(ROOTFS_USERS_TABLES),) cat $$(ROOTFS_USERS_TABLES) >> $$(USERS_TABLE) endif - printf '$$(subst $$(sep),\n,$$(PACKAGES_USERS))' >> $$(USERS_TABLE) + $$(call PRINTF,$$(PACKAGES_USERS)) >> $$(USERS_TABLE) #PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT) ifneq ($$(ROOTFS_DEVICE_TABLES),) cat $$(ROOTFS_DEVICE_TABLES) > $$(FULL_DEVICE_TABLE) ifeq ($$(BR2_ROOTFS_DEVICE_CREATION_STATIC),y) - printf '$$(subst $$(sep),\n,$$(PACKAGES_DEVICES_TABLE))' >> $$(FULL_DEVICE_TABLE) + $$(call PRINTF,$$(PACKAGES_DEVICES_TABLE)) >> $$(FULL_DEVICE_TABLE) endif - printf '$$(subst $$(sep),\n,$$(PACKAGES_PERMISSIONS_TABLE))' >> $$(FULL_DEVICE_TABLE) +endif + $$(call PRINTF,$$(PACKAGES_PERMISSIONS_TABLE)) >> $$(FULL_DEVICE_TABLE) #echo "$$(HOST_DIR)/usr/bin/makedevs -d $$(FULL_DEVICE_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT) + $$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\ + echo "echo '$$(TERM_BOLD)>>> Executing fakeroot script $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \ + echo $$(s) $$(TARGET_DIR) $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep)) +ifeq ($$(BR2_REPRODUCIBLE),y) + echo "find $$(TARGET_DIR) -print0 | xargs -0 -r touch -hd @$$(SOURCE_DATE_EPOCH)" >> $$(FAKEROOT_SCRIPT) endif - echo "$$(ROOTFS_$(2)_CMD)" >> $$(FAKEROOT_SCRIPT) + $$(call PRINTF,$$(ROOTFS_$(2)_CMD)) >> $$(FAKEROOT_SCRIPT) chmod a+x $$(FAKEROOT_SCRIPT) PATH=$$(BR_PATH) $$(HOST_DIR)/usr/bin/fakeroot -- $$(FAKEROOT_SCRIPT) $$(INSTALL) -m 0644 support/misc/target-dir-warning.txt $$(TARGET_DIR_WARNING_FILE) diff --git a/fs/ext2/Config.in b/fs/ext2/Config.in index 1e7f719a8d..b8eeed25d4 100644 --- a/fs/ext2/Config.in +++ b/fs/ext2/Config.in @@ -11,7 +11,7 @@ config BR2_TARGET_ROOTFS_EXT2_2 choice bool "ext2/3/4 variant" - default BR2_TARGET_ROOTFS_EXT2_2r0 + default BR2_TARGET_ROOTFS_EXT2_2r1 config BR2_TARGET_ROOTFS_EXT2_2r0 bool "ext2 (rev0)" diff --git a/fs/ext2/ext2.mk b/fs/ext2/ext2.mk index 7417f81cf0..cfb34c4565 100644 --- a/fs/ext2/ext2.mk +++ b/fs/ext2/ext2.mk @@ -20,12 +20,11 @@ ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)),0) EXT2_OPTS += -r $(BR2_TARGET_ROOTFS_EXT2_RESBLKS) endif -# Not qstrip-ing the variable, because it may contain spaces, but we must -# qstrip it when checking. Furthermore, we need to further quote it, so -# that the quotes do not get eaten by the echo statement when creating the -# fakeroot script -ifneq ($(call qstrip,$(BR2_TARGET_ROOTFS_EXT2_LABEL)),) -EXT2_OPTS += -l '$(BR2_TARGET_ROOTFS_EXT2_LABEL)' +# qstrip results in stripping consecutive spaces into a single one. So the +# variable is not qstrip-ed to preserve the integrity of the string value. +EXT2_LABEL := $(subst ",,$(BR2_TARGET_ROOTFS_EXT2_LABEL)) +ifneq ($(EXT2_LABEL),) +EXT2_OPTS += -l "$(EXT2_LABEL)" endif ROOTFS_EXT2_DEPENDENCIES = host-mke2img diff --git a/fs/iso9660/iso9660.mk b/fs/iso9660/iso9660.mk index 32d79d77d8..d1d9cbf1a4 100644 --- a/fs/iso9660/iso9660.mk +++ b/fs/iso9660/iso9660.mk @@ -24,7 +24,7 @@ ROOTFS_ISO9660_BOOT_MENU = $(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU)) -ROOTFS_ISO9660_DEPENDENCIES = host-cdrkit host-fakeroot linux +ROOTFS_ISO9660_DEPENDENCIES = host-cdrkit linux ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y) ROOTFS_ISO9660_USE_INITRD = YES diff --git a/fs/jffs2/jffs2.mk b/fs/jffs2/jffs2.mk index a9cd4146ee..9a36a75ff4 100644 --- a/fs/jffs2/jffs2.mk +++ b/fs/jffs2/jffs2.mk @@ -39,8 +39,8 @@ ROOTFS_JFFS2_DEPENDENCIES = host-mtd ifneq ($(BR2_TARGET_ROOTFS_JFFS2_SUMMARY),) define ROOTFS_JFFS2_CMD - $(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $@.nosummary && \ - $(SUMTOOL) $(SUMTOOL_OPTS) -i $@.nosummary -o $@ && \ + $(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $@.nosummary + $(SUMTOOL) $(SUMTOOL_OPTS) -i $@.nosummary -o $@ rm $@.nosummary endef else diff --git a/fs/squashfs/squashfs.mk b/fs/squashfs/squashfs.mk index a71d9cc57b..c4d9ca50b3 100644 --- a/fs/squashfs/squashfs.mk +++ b/fs/squashfs/squashfs.mk @@ -26,8 +26,7 @@ endif define ROOTFS_SQUASHFS_CMD $(HOST_DIR)/usr/bin/mksquashfs $(TARGET_DIR) $@ -noappend \ - $(ROOTFS_SQUASHFS_ARGS) && \ - chmod 0644 $@ + $(ROOTFS_SQUASHFS_ARGS) endef $(eval $(call ROOTFS_TARGET,squashfs)) diff --git a/fs/tar/tar.mk b/fs/tar/tar.mk index 28219cf052..0e3eacbedf 100644 --- a/fs/tar/tar.mk +++ b/fs/tar/tar.mk @@ -7,7 +7,8 @@ TAR_OPTS := $(call qstrip,$(BR2_TARGET_ROOTFS_TAR_OPTIONS)) define ROOTFS_TAR_CMD - tar -c$(TAR_OPTS)f $@ --numeric-owner -C $(TARGET_DIR) . + (cd $(TARGET_DIR); find -print0 | LC_ALL=C sort -z | \ + tar $(TAR_OPTS) -cf $@ --null --no-recursion -T - --numeric-owner) endef $(eval $(call ROOTFS_TARGET,tar)) diff --git a/fs/ubifs/ubi.mk b/fs/ubifs/ubi.mk index aba3bea83b..e488cb5f8a 100644 --- a/fs/ubifs/ubi.mk +++ b/fs/ubifs/ubi.mk @@ -20,10 +20,12 @@ else UBINIZE_CONFIG_FILE_PATH = fs/ubifs/ubinize.cfg endif +# don't use sed -i as it misbehaves on systems with SELinux enabled when this is +# executed through fakeroot (see #9386) define ROOTFS_UBI_CMD - $(INSTALL) -m 0644 $(UBINIZE_CONFIG_FILE_PATH) $(BUILD_DIR)/ubinize.cfg ;\ - $(SED) 's;BR2_ROOTFS_UBIFS_PATH;$@fs;' $(BUILD_DIR)/ubinize.cfg ;\ - $(HOST_DIR)/usr/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) $(BUILD_DIR)/ubinize.cfg ;\ + sed 's;BR2_ROOTFS_UBIFS_PATH;$@fs;' \ + $(UBINIZE_CONFIG_FILE_PATH) > $(BUILD_DIR)/ubinize.cfg + $(HOST_DIR)/usr/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) $(BUILD_DIR)/ubinize.cfg rm $(BUILD_DIR)/ubinize.cfg endef diff --git a/package/4th/0001-avoid-regen-during-install.patch b/package/4th/0001-avoid-regen-during-install.patch new file mode 100644 index 0000000000..436cff1fd6 --- /dev/null +++ b/package/4th/0001-avoid-regen-during-install.patch @@ -0,0 +1,17 @@ +avoid regen during install + +Signed-off-by: Francois Perrad + +--- a/sources/Makefile ++++ b/sources/Makefile +@@ -120,7 +120,7 @@ + ln -sf $(SHARED_LIB) $(LIBRARIES)/lib4th.so + endif + +-mostlyinstall: libinstall all ++mostlyinstall: libinstall + cp 4th 4tsh pp4th $(BINARIES) + + install: mostlyinstall +-- + diff --git a/package/4th/4th.hash b/package/4th/4th.hash new file mode 100644 index 0000000000..97083da8f6 --- /dev/null +++ b/package/4th/4th.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 1c7adbb1a56dad4c4c781e6e023d77ac862842560c05246b691d07e9a4460ab2 4th-3.62.4-unix.tar.gz diff --git a/package/4th/4th.mk b/package/4th/4th.mk new file mode 100644 index 0000000000..0d82614f36 --- /dev/null +++ b/package/4th/4th.mk @@ -0,0 +1,70 @@ +################################################################################ +# +# 4th +# +################################################################################ + +4TH_VERSION = 3.62.4 +4TH_SOURCE = 4th-$(4TH_VERSION)-unix.tar.gz +4TH_SITE = http://downloads.sourceforge.net/project/forth-4th/4th-$(4TH_VERSION) +4TH_LICENSE = GPLv3+, LGPLv3+ +# The COPYING file only contains the text of the LGPLv3, but the +# source code really contains parts under GPLv3+. +4TH_LICENSE_FILES = COPYING +4TH_DEPENDENCIES = host-4th +4TH_INSTALL_STAGING = YES + +4TH_CFLAGS = $(TARGET_CFLAGS) -DUNIX -fsigned-char + +ifeq ($(BR2_STATIC_LIBS),y) +4TH_MAKE_ENV = $(TARGET_MAKE_ENV) STATIC=1 +else +4TH_MAKE_ENV = $(TARGET_MAKE_ENV) SHARED=1 +4TH_CFLAGS += -fPIC +endif + +define 4TH_BUILD_CMDS + $(4TH_MAKE_ENV) $(MAKE) -C $(@D)/sources all \ + CROSS="$(TARGET_CROSS)" \ + CFLAGS="$(4TH_CFLAGS)" \ + FOURTH=$(HOST_DIR)/usr/bin/4th +endef + +define 4TH_INSTALL_STAGING_CMDS + $(4TH_MAKE_ENV) $(MAKE) -C $(@D)/sources libinstall \ + LIBRARIES=$(STAGING_DIR)/usr/lib + $(INSTALL) -D -m 0644 $(@D)/sources/4th.h \ + $(STAGING_DIR)/usr/include/4th.h +endef + +define 4TH_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/bin + mkdir -p $(TARGET_DIR)/usr/lib + $(4TH_MAKE_ENV) $(MAKE) -C $(@D)/sources mostlyinstall \ + BINARIES=$(TARGET_DIR)/usr/bin \ + LIBRARIES=$(TARGET_DIR)/usr/lib + mkdir -p $(TARGET_DIR)/usr/share/4th/lib + cp -dpf $(@D)/4th/*.4th $(TARGET_DIR)/usr/share/4th + cp -dpf $(@D)/4th/lib/*.4th $(TARGET_DIR)/usr/share/4th/lib + mkdir -p $(TARGET_DIR)/usr/share/4th/demo + cp -dpf $(@D)/4th/demo/*.4th $(TARGET_DIR)/usr/share/4th/demo + mkdir -p $(TARGET_DIR)/usr/share/4th/4pp/lib + cp -dpf $(@D)/4th/4pp/*.4pp $(TARGET_DIR)/usr/share/4th/4pp + cp -dpf $(@D)/4th/4pp/lib/*.4pp $(TARGET_DIR)/usr/share/4th/4pp/lib +endef + +define HOST_4TH_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/sources all \ + CFLAGS="$(HOST_CFLAGS) -DUNIX -fsigned-char" +endef + +define HOST_4TH_INSTALL_CMDS + mkdir -p $(HOST_DIR)/usr/bin + mkdir -p $(HOST_DIR)/usr/lib + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/sources mostlyinstall \ + BINARIES=$(HOST_DIR)/usr/bin \ + LIBRARIES=$(HOST_DIR)/usr/lib +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/4th/Config.in b/package/4th/Config.in new file mode 100644 index 0000000000..4554664ab4 --- /dev/null +++ b/package/4th/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_4TH + bool "4th" + help + 4tH is a Forth compiler that can create bytecode, + C-embeddable bytecode, standalone executables, but also + works fine as a scripting language + + http://thebeez.home.xs4all.nl/4tH/ diff --git a/package/Config.in b/package/Config.in index aeb33ced8e..deff0fe2c2 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2,7 +2,6 @@ menu "Target packages" source "package/busybox/Config.in" source "package/skeleton/Config.in" - source "package/motioneye/Config.in" menu "Audio and video applications" source "package/alsa-utils/Config.in" @@ -22,12 +21,12 @@ menu "Audio and video applications" source "package/jack2/Config.in" source "package/kodi/Config.in" source "package/lame/Config.in" - source "package/libwebcam/Config.in" source "package/madplay/Config.in" + source "package/mimic/Config.in" source "package/miraclecast/Config.in" source "package/mjpegtools/Config.in" - source "package/motion/Config.in" source "package/modplugtools/Config.in" + source "package/motion/Config.in" source "package/mpd/Config.in" source "package/mpd-mpc/Config.in" source "package/mpg123/Config.in" @@ -36,16 +35,17 @@ menu "Audio and video applications" source "package/multicat/Config.in" source "package/musepack/Config.in" source "package/ncmpc/Config.in" + source "package/omxplayer/Config.in" source "package/on2-8170-libs/Config.in" source "package/opus-tools/Config.in" source "package/pulseaudio/Config.in" source "package/sox/Config.in" - source "package/streameye/Config.in" source "package/squeezelite/Config.in" source "package/tidsp-binaries/Config.in" source "package/tovid/Config.in" source "package/tstools/Config.in" source "package/twolame/Config.in" + source "package/udpxy/Config.in" source "package/upmpdcli/Config.in" source "package/v4l2grab/Config.in" source "package/vlc/Config.in" @@ -57,16 +57,13 @@ endmenu menu "Compressors and decompressors" source "package/bzip2/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/gzip/Config.in" -endif source "package/lz4/Config.in" source "package/lzip/Config.in" source "package/lzop/Config.in" + source "package/p7zip/Config.in" source "package/unrar/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/unzip/Config.in" -endif source "package/xz/Config.in" source "package/zip/Config.in" endmenu @@ -82,18 +79,18 @@ menu "Debugging, profiling and benchmark" source "package/dt/Config.in" source "package/duma/Config.in" source "package/fio/Config.in" + source "package/fwts/Config.in" source "package/gdb/Config.in" source "package/google-breakpad/Config.in" source "package/iozone/Config.in" source "package/kexec/Config.in" source "package/kexec-lite/Config.in" source "package/ktap/Config.in" + source "package/kvm-unit-tests/Config.in" source "package/kyua/Config.in" source "package/latencytop/Config.in" source "package/lmbench/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/lsof/Config.in" -endif source "package/ltp-testsuite/Config.in" source "package/ltrace/Config.in" source "package/lttng-babeltrace/Config.in" @@ -103,6 +100,7 @@ endif source "package/memstat/Config.in" source "package/netperf/Config.in" source "package/netsniff-ng/Config.in" + source "package/nmon/Config.in" source "package/oprofile/Config.in" source "package/pax-utils/Config.in" source "package/pv/Config.in" @@ -119,6 +117,7 @@ endif source "package/tinymembench/Config.in" source "package/trace-cmd/Config.in" source "package/trinity/Config.in" + source "package/uclibc-ng-test/Config.in" source "package/valgrind/Config.in" source "package/whetstone/Config.in" endmenu @@ -132,39 +131,30 @@ menu "Development tools" source "package/cppunit/Config.in" source "package/cvs/Config.in" source "package/cxxtest/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/diffutils/Config.in" source "package/dos2unix/Config.in" source "package/findutils/Config.in" -endif source "package/flex/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/gawk/Config.in" -endif source "package/gettext/Config.in" source "package/git/Config.in" + source "package/git-crypt/Config.in" source "package/gperf/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/grep/Config.in" -endif - source "package/intltool/Config.in" source "package/jq/Config.in" source "package/libtool/Config.in" source "package/make/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/patch/Config.in" -endif source "package/pkgconf/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/sed/Config.in" -endif - source "package/sstrip/Config.in" source "package/subversion/Config.in" source "package/tree/Config.in" source "package/yasm/Config.in" endmenu menu "Filesystem and flash utilities" + source "package/aufs/Config.in" + source "package/aufs-util/Config.in" source "package/autofs/Config.in" source "package/btrfs-progs/Config.in" source "package/cifs-utils/Config.in" @@ -179,10 +169,10 @@ menu "Filesystem and flash utilities" source "package/exfat-utils/Config.in" source "package/f2fs-tools/Config.in" source "package/flashbench/Config.in" + source "package/fwup/Config.in" source "package/genext2fs/Config.in" source "package/genpart/Config.in" source "package/genromfs/Config.in" - source "package/makedevs/Config.in" source "package/mmc-utils/Config.in" source "package/mtd/Config.in" source "package/mtools/Config.in" @@ -237,6 +227,8 @@ menu "Games" source "package/prboom/Config.in" source "package/rubix/Config.in" source "package/sl/Config.in" + source "package/stella/Config.in" + source "package/supertuxkart/Config.in" endmenu menu "Graphic libraries and applications (graphic/text)" @@ -256,12 +248,9 @@ comment "Graphic libraries" source "package/directfb/Config.in" source "package/directfb-examples/Config.in" source "package/efl/Config.in" - source "package/elementary/Config.in" source "package/fbdump/Config.in" source "package/fbgrab/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/fbset/Config.in" -endif source "package/fb-test-app/Config.in" source "package/fbterm/Config.in" source "package/fbv/Config.in" @@ -281,6 +270,9 @@ endif source "package/sdl_sound/Config.in" source "package/sdl_ttf/Config.in" source "package/sdl2/Config.in" + source "package/sdl2_gfx/Config.in" + source "package/sdl2_image/Config.in" + source "package/sdl2_ttf/Config.in" comment "Other GUIs" source "package/qt/Config.in" @@ -294,10 +286,13 @@ comment "QT libraries and helper libraries" source "package/quazip/Config.in" source "package/qwt/Config.in" endif + source "package/tekui/Config.in" source "package/weston/Config.in" source "package/x11r7/Config.in" comment "X applications" + depends on BR2_PACKAGE_XORG7 + source "package/alsamixergui/Config.in" source "package/apitrace/Config.in" source "package/dillo/Config.in" @@ -308,11 +303,11 @@ comment "X applications" source "package/gtkperf/Config.in" source "package/leafpad/Config.in" source "package/midori/Config.in" + source "package/nodm/Config.in" source "package/pcmanfm/Config.in" source "package/qt-webkit-kiosk/Config.in" source "package/rdesktop/Config.in" source "package/synergy/Config.in" - source "package/torsmo/Config.in" source "package/wmctrl/Config.in" source "package/x11vnc/Config.in" source "package/xdotool/Config.in" @@ -322,10 +317,14 @@ comment "X applications" source "package/yad/Config.in" comment "X libraries and helper libraries" + depends on BR2_PACKAGE_XORG7 + source "package/libsexy/Config.in" source "package/x11r7/xkeyboard-config/Config.in" comment "X window managers" + depends on BR2_PACKAGE_XORG7 + source "package/enlightenment/Config.in" source "package/fluxbox/Config.in" source "package/matchbox/Config.in" @@ -340,17 +339,22 @@ menu "Firmware" source "package/linux-firmware/Config.in" source "package/rpi-firmware/Config.in" source "package/sunxi-boards/Config.in" + source "package/ts4900-fpga/Config.in" source "package/ux500-firmware/Config.in" source "package/wilc1000-firmware/Config.in" source "package/zd1211-firmware/Config.in" endmenu source "package/a10disp/Config.in" + source "package/acpica/Config.in" source "package/acpid/Config.in" + source "package/acpitool/Config.in" source "package/aer-inject/Config.in" source "package/am335x-pru-package/Config.in" + source "package/amd-catalyst/Config.in" source "package/avrdude/Config.in" source "package/bcache-tools/Config.in" source "package/biosdevname/Config.in" + source "package/cbootimage/Config.in" source "package/cc-tool/Config.in" source "package/cdrkit/Config.in" source "package/cryptsetup/Config.in" @@ -360,9 +364,7 @@ endmenu source "package/dbus-glib/Config.in" source "package/dbus-python/Config.in" source "package/dbus-triggerd/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/devmem2/Config.in" -endif source "package/dmidecode/Config.in" source "package/dmraid/Config.in" source "package/dtv-scan-tables/Config.in" @@ -371,6 +373,7 @@ endif source "package/edid-decode/Config.in" source "package/eeprog/Config.in" source "package/eudev/Config.in" + source "package/ev3dev-linux-drivers/Config.in" source "package/evemu/Config.in" source "package/evtest/Config.in" source "package/fan-ctrl/Config.in" @@ -386,9 +389,7 @@ endif source "package/gpsd/Config.in" source "package/gptfdisk/Config.in" source "package/gvfs/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/hdparm/Config.in" -endif source "package/hwdata/Config.in" source "package/hwloc/Config.in" source "package/i2c-tools/Config.in" @@ -404,6 +405,7 @@ endif source "package/iucode-tool/Config.in" source "package/kbd/Config.in" source "package/lcdproc/Config.in" + source "package/libuio/Config.in" source "package/libump/Config.in" source "package/linux-backports/Config.in" source "package/lirc-tools/Config.in" @@ -422,6 +424,8 @@ endif source "package/nvidia-driver/Config.in" source "package/nvidia-tegra23/Config.in" source "package/nvme/Config.in" + source "package/odroid-mali/Config.in" + source "package/odroid-scripts/Config.in" source "package/ofono/Config.in" source "package/ola/Config.in" source "package/on2-8170-modules/Config.in" @@ -432,17 +436,20 @@ endif source "package/owl-linux/Config.in" source "package/parted/Config.in" source "package/pciutils/Config.in" + source "package/pdbg/Config.in" source "package/picocom/Config.in" source "package/pifmrds/Config.in" source "package/powertop/Config.in" source "package/pps-tools/Config.in" + source "package/pru-software-support/Config.in" source "package/pulseview/Config.in" source "package/read-edid/Config.in" source "package/rfkill/Config.in" source "package/rng-tools/Config.in" - source "package/rpi-armmem/Config.in" source "package/rpi-userland/Config.in" + source "package/rs485conf/Config.in" source "package/rtl8188eu/Config.in" + source "package/rtl8723bs/Config.in" source "package/rtl8821au/Config.in" source "package/sane-backends/Config.in" source "package/sdparm/Config.in" @@ -452,17 +459,18 @@ endif source "package/sispmctl/Config.in" source "package/smartmontools/Config.in" source "package/smstools3/Config.in" - source "package/snowball-hdmiservice/Config.in" source "package/spi-tools/Config.in" source "package/sredird/Config.in" source "package/statserial/Config.in" source "package/stm32flash/Config.in" source "package/sunxi-cedarx/Config.in" source "package/sunxi-mali/Config.in" - source "package/sunxi-mali-prop/Config.in" source "package/sysstat/Config.in" source "package/targetcli-fb/Config.in" source "package/ti-gfx/Config.in" + source "package/ti-sgx-demos/Config.in" + source "package/ti-sgx-km/Config.in" + source "package/ti-sgx-um/Config.in" source "package/ti-uim/Config.in" source "package/ti-utils/Config.in" source "package/triggerhappy/Config.in" @@ -470,6 +478,7 @@ endif source "package/ubus/Config.in" source "package/udev/Config.in" source "package/udisks/Config.in" + source "package/upower/Config.in" source "package/usb_modeswitch/Config.in" source "package/usb_modeswitch_data/Config.in" source "package/usbmount/Config.in" @@ -481,6 +490,7 @@ endif endmenu menu "Interpreter languages and scripting" + source "package/4th/Config.in" source "package/enscript/Config.in" source "package/erlang/Config.in" if BR2_PACKAGE_ERLANG @@ -499,6 +509,7 @@ menu "Erlang libraries/modules" source "package/erlang-p1-zlib/Config.in" endmenu endif + source "package/ficl/Config.in" source "package/gauche/Config.in" source "package/guile/Config.in" source "package/haserl/Config.in" @@ -510,11 +521,13 @@ endif if BR2_PACKAGE_HAS_LUAINTERPRETER && !BR2_STATIC_LIBS # lua modules are dynamically loaded, so not available on static builds menu "Lua libraries/modules" + source "package/argparse/Config.in" source "package/cgilua/Config.in" source "package/copas/Config.in" source "package/cosmo/Config.in" source "package/coxpcall/Config.in" source "package/dado/Config.in" + source "package/easydbus/Config.in" source "package/lbase64/Config.in" source "package/ljlinenoise/Config.in" source "package/ljsyscall/Config.in" @@ -571,7 +584,6 @@ menu "Perl libraries/modules" source "package/perl-crypt-openssl-random/Config.in" source "package/perl-crypt-openssl-rsa/Config.in" source "package/perl-datetime-tiny/Config.in" - source "package/perl-db-file/Config.in" source "package/perl-digest-hmac/Config.in" source "package/perl-digest-sha1/Config.in" source "package/perl-encode-detect/Config.in" @@ -617,6 +629,7 @@ endif if BR2_PACKAGE_PHP if !BR2_STATIC_LIBS menu "External php extensions" + source "package/php-amqp/Config.in" source "package/php-geoip/Config.in" source "package/php-gnupg/Config.in" source "package/php-imagick/Config.in" @@ -635,40 +648,64 @@ endif if BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 menu "External python modules" source "package/python-alsaaudio/Config.in" + source "package/python-argh/Config.in" + source "package/python-arrow/Config.in" + source "package/python-attrs/Config.in" source "package/python-autobahn/Config.in" + source "package/python-babel/Config.in" source "package/python-backports-abc/Config.in" source "package/python-beautifulsoup4/Config.in" + source "package/python-bitstring/Config.in" source "package/python-bottle/Config.in" source "package/python-can/Config.in" source "package/python-cbor/Config.in" source "package/python-certifi/Config.in" source "package/python-cffi/Config.in" source "package/python-characteristic/Config.in" + source "package/python-chardet/Config.in" source "package/python-cheetah/Config.in" source "package/python-cherrypy/Config.in" source "package/python-click/Config.in" source "package/python-coherence/Config.in" source "package/python-configobj/Config.in" source "package/python-configshell-fb/Config.in" + source "package/python-constantly/Config.in" + source "package/python-couchdb/Config.in" source "package/python-crc16/Config.in" + source "package/python-crcmod/Config.in" source "package/python-crossbar/Config.in" source "package/python-cryptography/Config.in" source "package/python-cssselect/Config.in" + source "package/python-cssutils/Config.in" source "package/python-daemon/Config.in" + source "package/python-dataproperty/Config.in" + source "package/python-dateutil/Config.in" source "package/python-dialog/Config.in" + source "package/python-dialog3/Config.in" + source "package/python-dicttoxml/Config.in" source "package/python-django/Config.in" source "package/python-docopt/Config.in" + source "package/python-docutils/Config.in" + source "package/python-dominate/Config.in" source "package/python-dpkt/Config.in" source "package/python-ecdsa/Config.in" + source "package/python-engineio/Config.in" source "package/python-enum/Config.in" source "package/python-enum34/Config.in" source "package/python-flask/Config.in" + source "package/python-flask-babel/Config.in" + source "package/python-flask-jsonrpc/Config.in" + source "package/python-flask-login/Config.in" source "package/python-flup/Config.in" + source "package/python-futures/Config.in" source "package/python-gobject/Config.in" + source "package/python-gunicorn/Config.in" source "package/python-html5lib/Config.in" source "package/python-httplib2/Config.in" + source "package/python-humanize/Config.in" source "package/python-id3/Config.in" source "package/python-idna/Config.in" + source "package/python-incremental/Config.in" source "package/python-iniparse/Config.in" source "package/python-iowait/Config.in" source "package/python-ipaddr/Config.in" @@ -677,18 +714,26 @@ menu "External python modules" source "package/python-ipython/Config.in" source "package/python-itsdangerous/Config.in" source "package/python-jinja2/Config.in" + source "package/python-jsonschema/Config.in" source "package/python-json-schema-validator/Config.in" source "package/python-keyring/Config.in" source "package/python-libconfig/Config.in" source "package/python-lmdb/Config.in" + source "package/python-logbook/Config.in" source "package/python-lxml/Config.in" source "package/python-mad/Config.in" source "package/python-mako/Config.in" source "package/python-markdown/Config.in" + source "package/python-markdown2/Config.in" source "package/python-markupsafe/Config.in" + source "package/python-mbstrdecoder/Config.in" source "package/python-meld3/Config.in" source "package/python-mistune/Config.in" source "package/python-msgpack/Config.in" + source "package/python-mutagen/Config.in" + source "package/python-mwclient/Config.in" + source "package/python-mwscrape/Config.in" + source "package/python-mwscrape2slob/Config.in" source "package/python-netaddr/Config.in" source "package/python-netifaces/Config.in" source "package/python-networkmanager/Config.in" @@ -697,31 +742,39 @@ menu "External python modules" source "package/python-paho-mqtt/Config.in" source "package/python-pam/Config.in" source "package/python-paramiko/Config.in" + source "package/python-pathpy/Config.in" + source "package/python-pathtools/Config.in" + source "package/python-pathvalidate/Config.in" source "package/python-pexpect/Config.in" - source "package/python-picamera/Config.in" source "package/python-pillow/Config.in" source "package/python-posix-ipc/Config.in" + source "package/python-prompt-toolkit/Config.in" source "package/python-protobuf/Config.in" source "package/python-psutil/Config.in" source "package/python-ptyprocess/Config.in" + source "package/python-pudb/Config.in" source "package/python-pyasn/Config.in" source "package/python-pyasn-modules/Config.in" source "package/python-pycli/Config.in" source "package/python-pycparser/Config.in" source "package/python-pycrypto/Config.in" - source "package/python-pycurl/Config.in" source "package/python-pydal/Config.in" + source "package/python-pyelftools/Config.in" source "package/python-pyftpdlib/Config.in" source "package/python-pygame/Config.in" source "package/python-pygments/Config.in" + source "package/python-pyicu/Config.in" source "package/python-pyinotify/Config.in" + source "package/python-pylru/Config.in" source "package/python-pymysql/Config.in" source "package/python-pynacl/Config.in" source "package/python-pyopenssl/Config.in" source "package/python-pyparsing/Config.in" source "package/python-pyparted/Config.in" source "package/python-pypcap/Config.in" + source "package/python-pyqrcode/Config.in" source "package/python-pyqt/Config.in" + source "package/python-pyqt5/Config.in" source "package/python-pyratemp/Config.in" source "package/python-pyro/Config.in" source "package/python-pyroute2/Config.in" @@ -731,6 +784,8 @@ menu "External python modules" source "package/python-pysnmp-apps/Config.in" source "package/python-pysnmp-mibs/Config.in" source "package/python-pysocks/Config.in" + source "package/python-pytablereader/Config.in" + source "package/python-pytablewriter/Config.in" source "package/python-pytrie/Config.in" source "package/python-pytz/Config.in" source "package/python-pyudev/Config.in" @@ -739,33 +794,51 @@ menu "External python modules" source "package/python-pyyaml/Config.in" source "package/python-pyzmq/Config.in" source "package/python-requests/Config.in" + source "package/python-requests-toolbelt/Config.in" source "package/python-rpi-gpio/Config.in" source "package/python-rtslib-fb/Config.in" + source "package/python-scapy3k/Config.in" + source "package/python-sdnotify/Config.in" source "package/python-serial/Config.in" source "package/python-service-identity/Config.in" source "package/python-setproctitle/Config.in" source "package/python-setuptools/Config.in" + source "package/python-sh/Config.in" source "package/python-shutilwhich/Config.in" + source "package/python-simpleaudio/Config.in" source "package/python-simplejson/Config.in" source "package/python-singledispatch/Config.in" source "package/python-sip/Config.in" source "package/python-six/Config.in" + source "package/python-slob/Config.in" source "package/python-smbus-cffi/Config.in" + source "package/python-socketio/Config.in" source "package/python-spidev/Config.in" source "package/python-thrift/Config.in" + source "package/python-tomako/Config.in" + source "package/python-toml/Config.in" source "package/python-tornado/Config.in" source "package/python-treq/Config.in" source "package/python-twisted/Config.in" source "package/python-txaio/Config.in" + source "package/python-u-msgpack/Config.in" + source "package/python-ubjson/Config.in" source "package/python-ujson/Config.in" source "package/python-urllib3/Config.in" source "package/python-urwid/Config.in" source "package/python-versiontools/Config.in" + source "package/python-watchdog/Config.in" + source "package/python-wcwidth/Config.in" source "package/python-web2py/Config.in" source "package/python-webpy/Config.in" source "package/python-werkzeug/Config.in" + source "package/python-whoosh/Config.in" source "package/python-ws4py/Config.in" source "package/python-wsaccel/Config.in" + source "package/python-xlrd/Config.in" + source "package/python-xlsxwriter/Config.in" + source "package/python-xlutils/Config.in" + source "package/python-xlwt/Config.in" source "package/python-zope-interface/Config.in" endmenu endif @@ -783,6 +856,7 @@ menu "Libraries" menu "Audio/Sound" source "package/alsa-lib/Config.in" + source "package/aubio/Config.in" source "package/audiofile/Config.in" source "package/celt051/Config.in" source "package/fdk-aac/Config.in" @@ -795,7 +869,9 @@ menu "Audio/Sound" source "package/libcodec2/Config.in" source "package/libcue/Config.in" source "package/libcuefile/Config.in" + source "package/libebur128/Config.in" source "package/libg7221/Config.in" + source "package/libgsm/Config.in" source "package/libid3tag/Config.in" source "package/libilbc/Config.in" source "package/liblo/Config.in" @@ -863,15 +939,19 @@ menu "Crypto" source "package/nettle/Config.in" source "package/openssl/Config.in" source "package/polarssl/Config.in" + source "package/tinydtls/Config.in" source "package/trousers/Config.in" + source "package/ustream-ssl/Config.in" endmenu menu "Database" source "package/berkeleydb/Config.in" source "package/cppdb/Config.in" source "package/gdbm/Config.in" + source "package/hiredis/Config.in" source "package/kompexsqlite/Config.in" source "package/leveldb/Config.in" + source "package/libpqxx/Config.in" source "package/mongodb/Config.in" source "package/mysql/Config.in" source "package/postgresql/Config.in" @@ -910,11 +990,13 @@ menu "Graphics" source "package/granite/Config.in" source "package/graphite2/Config.in" source "package/gtkmm3/Config.in" + source "package/gtksourceview/Config.in" source "package/harfbuzz/Config.in" source "package/ijs/Config.in" source "package/imlib2/Config.in" source "package/jasper/Config.in" source "package/jpeg/Config.in" + source "package/kmsxx/Config.in" source "package/lcms2/Config.in" source "package/lesstif/Config.in" source "package/libart/Config.in" @@ -922,13 +1004,11 @@ menu "Graphics" source "package/libdri2/Config.in" source "package/libdrm/Config.in" source "package/libepoxy/Config.in" - source "package/libevas-generic-loaders/Config.in" source "package/libexif/Config.in" source "package/libfm/Config.in" source "package/libfm-extra/Config.in" source "package/libfreeglut/Config.in" source "package/libfreeimage/Config.in" - source "package/libgail/Config.in" source "package/libgdiplus/Config.in" source "package/libgeotiff/Config.in" source "package/libglade/Config.in" @@ -948,6 +1028,7 @@ menu "Graphics" source "package/libsvgtiny/Config.in" source "package/libva/Config.in" source "package/libva-intel-driver/Config.in" + source "package/libvdpau/Config.in" source "package/libvips/Config.in" source "package/menu-cache/Config.in" source "package/opencv/Config.in" @@ -962,9 +1043,7 @@ menu "Graphics" source "package/tiff/Config.in" source "package/wayland/Config.in" source "package/wayland-protocols/Config.in" - source "package/webkit/Config.in" source "package/webkitgtk/Config.in" - source "package/webkitgtk24/Config.in" source "package/webp/Config.in" source "package/zbar/Config.in" source "package/zxing-cpp/Config.in" @@ -985,6 +1064,7 @@ menu "Hardware handling" source "package/libfreefare/Config.in" source "package/libftdi/Config.in" source "package/libftdi1/Config.in" + source "package/libgpiod/Config.in" source "package/libgudev/Config.in" source "package/libhid/Config.in" source "package/libiio/Config.in" @@ -1017,10 +1097,16 @@ menu "Hardware handling" source "package/pcsc-lite/Config.in" source "package/tslib/Config.in" source "package/urg/Config.in" + source "package/wiringpi/Config.in" endmenu menu "Javascript" source "package/angularjs/Config.in" +if BR2_PACKAGE_ANGULARJS +menu "External AngularJS plugins" + source "package/angular-websocket/Config.in" +endmenu +endif source "package/bootstrap/Config.in" source "package/explorercanvas/Config.in" source "package/flot/Config.in" @@ -1047,9 +1133,11 @@ menu "JSON/XML" source "package/expat/Config.in" source "package/ezxml/Config.in" source "package/jansson/Config.in" + source "package/jsmn/Config.in" source "package/json-c/Config.in" source "package/json-glib/Config.in" source "package/jsoncpp/Config.in" + source "package/libfastjson/Config.in" source "package/libjson/Config.in" source "package/libroxml/Config.in" source "package/libucl/Config.in" @@ -1059,6 +1147,7 @@ menu "JSON/XML" source "package/libxslt/Config.in" source "package/libyaml/Config.in" source "package/mxml/Config.in" + source "package/pugixml/Config.in" source "package/rapidjson/Config.in" source "package/rapidxml/Config.in" source "package/raptor/Config.in" @@ -1076,24 +1165,26 @@ menu "Logging" source "package/liblog4c-localtime/Config.in" source "package/liblogging/Config.in" source "package/log4cplus/Config.in" + source "package/log4cpp/Config.in" source "package/log4cxx/Config.in" source "package/zlog/Config.in" endmenu menu "Multimedia" source "package/bitstream/Config.in" + source "package/libaacs/Config.in" + source "package/libamcodec/Config.in" source "package/libass/Config.in" + source "package/libbdplus/Config.in" source "package/libbluray/Config.in" source "package/libdcadec/Config.in" source "package/libdvbcsa/Config.in" source "package/libdvbpsi/Config.in" source "package/libdvbsi/Config.in" + source "package/libdvdcss/Config.in" source "package/libdvdnav/Config.in" source "package/libdvdread/Config.in" source "package/libebml/Config.in" - source "package/libfslcodec/Config.in" - source "package/libfslparser/Config.in" - source "package/libfslvpuwrap/Config.in" source "package/libhdhomerun/Config.in" source "package/libimxvpuapi/Config.in" source "package/libmatroska/Config.in" @@ -1113,6 +1204,11 @@ endmenu menu "Networking" source "package/agentpp/Config.in" + source "package/alljoyn/Config.in" + source "package/alljoyn-base/Config.in" + source "package/alljoyn-tcl/Config.in" + source "package/alljoyn-tcl-base/Config.in" + source "package/batman-adv/Config.in" source "package/c-ares/Config.in" source "package/canfestival/Config.in" source "package/cgic/Config.in" @@ -1127,10 +1223,12 @@ menu "Networking" source "package/gssdp/Config.in" source "package/gupnp/Config.in" source "package/gupnp-av/Config.in" + source "package/gupnp-dlna/Config.in" source "package/ibrcommon/Config.in" source "package/ibrdtn/Config.in" source "package/libcgi/Config.in" source "package/libcgicc/Config.in" + source "package/libcoap/Config.in" source "package/libcurl/Config.in" source "package/libdnet/Config.in" source "package/libeXosip2/Config.in" @@ -1143,8 +1241,10 @@ menu "Networking" source "package/libmbus/Config.in" source "package/libmemcached/Config.in" source "package/libmicrohttpd/Config.in" + source "package/libminiupnpc/Config.in" source "package/libmnl/Config.in" source "package/libmodbus/Config.in" + source "package/libnatpmp/Config.in" source "package/libndp/Config.in" source "package/libnet/Config.in" source "package/libnetfilter_acct/Config.in" @@ -1185,8 +1285,11 @@ menu "Networking" source "package/nss-pam-ldapd/Config.in" source "package/omniorb/Config.in" source "package/openldap/Config.in" + source "package/openmpi/Config.in" source "package/openpgm/Config.in" + source "package/openzwave/Config.in" source "package/ortp/Config.in" + source "package/paho-mqtt-c/Config.in" source "package/qdecoder/Config.in" source "package/qpid-proton/Config.in" source "package/rabbitmq-c/Config.in" @@ -1196,7 +1299,6 @@ menu "Networking" source "package/sofia-sip/Config.in" source "package/thrift/Config.in" source "package/usbredir/Config.in" - source "package/wvstreams/Config.in" source "package/zeromq/Config.in" source "package/zmqpp/Config.in" source "package/zyre/Config.in" @@ -1208,6 +1310,7 @@ menu "Other" source "package/argp-standalone/Config.in" source "package/armadillo/Config.in" source "package/atf/Config.in" + source "package/bctoolbox/Config.in" source "package/bdwgc/Config.in" source "package/boost/Config.in" source "package/clapack/Config.in" @@ -1226,6 +1329,8 @@ menu "Other" source "package/gmp/Config.in" source "package/gsl/Config.in" source "package/gtest/Config.in" + source "package/jemalloc/Config.in" + source "package/lapack/Config.in" source "package/libargtable2/Config.in" source "package/libatomic_ops/Config.in" source "package/libbsd/Config.in" @@ -1243,7 +1348,9 @@ menu "Other" source "package/libffi/Config.in" source "package/libgee/Config.in" source "package/libglib2/Config.in" + source "package/libglob/Config.in" source "package/libical/Config.in" + source "package/libite/Config.in" source "package/liblinear/Config.in" source "package/libnspr/Config.in" source "package/libpfm4/Config.in" @@ -1276,7 +1383,8 @@ endif source "package/mpfr/Config.in" source "package/msgpack/Config.in" source "package/mtdev2tuio/Config.in" - source "package/netbsd-queue/Config.in" + source "package/musl-compat-headers/Config.in" + source "package/openblas/Config.in" source "package/orc/Config.in" source "package/p11-kit/Config.in" source "package/poco/Config.in" @@ -1284,7 +1392,12 @@ endif source "package/protobuf-c/Config.in" source "package/qhull/Config.in" source "package/qlibc/Config.in" + source "package/riemann-c-client/Config.in" + source "package/shapelib/Config.in" + source "package/skalibs/Config.in" + source "package/sphinxbase/Config.in" source "package/startup-notification/Config.in" + source "package/tinycbor/Config.in" source "package/tz/Config.in" source "package/tzdata/Config.in" endmenu @@ -1334,17 +1447,19 @@ menu "Miscellaneous" source "package/bc/Config.in" source "package/clamav/Config.in" source "package/collectd/Config.in" + source "package/domoticz/Config.in" source "package/empty/Config.in" source "package/gnuradio/Config.in" source "package/googlefontdirectory/Config.in" source "package/gr-osmosdr/Config.in" + source "package/gsettings-desktop-schemas/Config.in" source "package/haveged/Config.in" + source "package/linux-syscall-support/Config.in" source "package/mcrypt/Config.in" source "package/mobile-broadband-provider-info/Config.in" source "package/qemu/Config.in" source "package/qpdf/Config.in" source "package/shared-mime-info/Config.in" - source "package/snowball-init/Config.in" source "package/taskd/Config.in" source "package/wine/Config.in" source "package/xutil_util-macros/Config.in" @@ -1360,6 +1475,7 @@ menu "Networking applications" source "package/autossh/Config.in" source "package/avahi/Config.in" source "package/axel/Config.in" + source "package/babeld/Config.in" source "package/bandwidthd/Config.in" source "package/batctl/Config.in" source "package/bcusdk/Config.in" @@ -1372,8 +1488,8 @@ menu "Networking applications" source "package/bwm-ng/Config.in" source "package/c-icap/Config.in" source "package/c-icap-modules/Config.in" - source "package/cannelloni/Config.in" source "package/can-utils/Config.in" + source "package/cannelloni/Config.in" source "package/chrony/Config.in" source "package/civetweb/Config.in" source "package/connman/Config.in" @@ -1382,9 +1498,9 @@ menu "Networking applications" source "package/crda/Config.in" source "package/ctorrent/Config.in" source "package/cups/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/dante/Config.in" + source "package/darkhttpd/Config.in" source "package/dhcp/Config.in" -endif source "package/dhcpcd/Config.in" source "package/dhcpdump/Config.in" source "package/dnsmasq/Config.in" @@ -1401,6 +1517,7 @@ endif source "package/fping/Config.in" source "package/freeswitch/Config.in" source "package/gesftpserver/Config.in" + source "package/gupnp-tools/Config.in" source "package/gutenprint/Config.in" source "package/hans/Config.in" source "package/hiawatha/Config.in" @@ -1409,13 +1526,11 @@ endif source "package/httping/Config.in" source "package/ibrdtn-tools/Config.in" source "package/ibrdtnd/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/ifenslave/Config.in" source "package/ifplugd/Config.in" -endif source "package/iftop/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/ifupdown/Config.in" -endif + source "package/igd2-for-linux/Config.in" source "package/igh-ethercat/Config.in" source "package/igmpproxy/Config.in" source "package/inadyn/Config.in" @@ -1434,6 +1549,7 @@ endif source "package/kismet/Config.in" source "package/knock/Config.in" source "package/leafnode2/Config.in" + source "package/lft/Config.in" source "package/lftp/Config.in" source "package/lighttpd/Config.in" source "package/linknx/Config.in" @@ -1446,6 +1562,7 @@ endif source "package/memcached/Config.in" source "package/mii-diag/Config.in" source "package/minidlna/Config.in" + source "package/minissdpd/Config.in" source "package/mjpg-streamer/Config.in" source "package/modem-manager/Config.in" source "package/mongrel2/Config.in" @@ -1458,20 +1575,23 @@ endif source "package/ncftp/Config.in" source "package/ndisc6/Config.in" source "package/netatalk/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/netcat/Config.in" source "package/netcat-openbsd/Config.in" -endif source "package/netplug/Config.in" source "package/netsnmp/Config.in" source "package/netstat-nat/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/net-tools/Config.in" -endif source "package/network-manager/Config.in" source "package/nfacct/Config.in" source "package/nftables/Config.in" source "package/nginx/Config.in" +if BR2_PACKAGE_NGINX +menu "External nginx modules" + source "package/nginx-dav-ext/Config.in" + source "package/nginx-naxsi/Config.in" + source "package/nginx-upload/Config.in" +endmenu +endif source "package/ngircd/Config.in" source "package/ngrep/Config.in" source "package/nload/Config.in" @@ -1502,6 +1622,7 @@ endif source "package/pure-ftpd/Config.in" source "package/putty/Config.in" source "package/quagga/Config.in" + source "package/rabbitmq-server/Config.in" source "package/radvd/Config.in" source "package/rp-pppoe/Config.in" source "package/rpcbind/Config.in" @@ -1513,7 +1634,9 @@ endif source "package/sconeserver/Config.in" source "package/ser2net/Config.in" source "package/shairport-sync/Config.in" + source "package/shellinabox/Config.in" source "package/smcroute/Config.in" + source "package/sngrep/Config.in" source "package/socat/Config.in" source "package/socketcand/Config.in" source "package/softether/Config.in" @@ -1522,40 +1645,41 @@ endif source "package/spice-protocol/Config.in" source "package/squid/Config.in" source "package/sshpass/Config.in" + source "package/sslh/Config.in" source "package/strongswan/Config.in" source "package/stunnel/Config.in" source "package/tcpdump/Config.in" source "package/tcping/Config.in" source "package/tcpreplay/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/tftpd/Config.in" -endif source "package/thttpd/Config.in" source "package/tinc/Config.in" source "package/tinyhttpd/Config.in" source "package/tn5250/Config.in" source "package/tor/Config.in" source "package/transmission/Config.in" + source "package/tunctl/Config.in" source "package/tvheadend/Config.in" source "package/udpcast/Config.in" + source "package/uhttpd/Config.in" source "package/ulogd/Config.in" source "package/ushare/Config.in" source "package/ussp-push/Config.in" source "package/vde2/Config.in" + source "package/vdr/Config.in" + source "package/vdr-plugin-vnsiserver/Config.in" source "package/vnstat/Config.in" source "package/vpnc/Config.in" source "package/vsftpd/Config.in" source "package/vtun/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/wavemon/Config.in" source "package/wget/Config.in" source "package/whois/Config.in" -endif source "package/wireless-regdb/Config.in" source "package/wireless_tools/Config.in" source "package/wireshark/Config.in" source "package/wpa_supplicant/Config.in" source "package/wpan-tools/Config.in" - source "package/wvdial/Config.in" source "package/xinetd/Config.in" source "package/xl2tp/Config.in" source "package/xtables-addons/Config.in" @@ -1575,11 +1699,8 @@ comment "* " comment "See the manual: " comment "http://buildroot.org/manual.html#faq-no-binary-packages" comment "-------------------------------------------------------" - source "package/ipkg/Config.in" source "package/opkg/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/rpm/Config.in" -endif endmenu menu "Real-Time" @@ -1588,16 +1709,16 @@ menu "Real-Time" endmenu menu "Security" + source "package/policycoreutils/Config.in" source "package/setools/Config.in" endmenu menu "Shell and utilities" comment "Shells" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/bash/Config.in" source "package/dash/Config.in" + source "package/mksh/Config.in" source "package/zsh/Config.in" -endif comment "Utilities" source "package/at/Config.in" source "package/ccrypt/Config.in" @@ -1615,13 +1736,10 @@ comment "Utilities" source "package/ranger/Config.in" source "package/screen/Config.in" source "package/sudo/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/terminology/Config.in" source "package/time/Config.in" -endif source "package/tmux/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/which/Config.in" -endif source "package/xmlstarlet/Config.in" source "package/xxhash/Config.in" endmenu @@ -1629,19 +1747,22 @@ endmenu menu "System tools" source "package/acl/Config.in" source "package/android-tools/Config.in" + source "package/atop/Config.in" source "package/attr/Config.in" source "package/audit/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/bootutils/Config.in" - source "package/coreutils/Config.in" -endif - source "package/cpuload/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS - source "package/dcron/Config.in" - source "package/debianutils/Config.in" -endif source "package/cgroupfs-mount/Config.in" + source "package/circus/Config.in" + source "package/coreutils/Config.in" + source "package/cpuload/Config.in" + source "package/dcron/Config.in" + source "package/ddrescue/Config.in" + source "package/debianutils/Config.in" + source "package/docker-containerd/Config.in" + source "package/docker-engine/Config.in" source "package/dsp-tools/Config.in" + source "package/efibootmgr/Config.in" + source "package/efivar/Config.in" source "package/emlog/Config.in" source "package/ftop/Config.in" source "package/getent/Config.in" @@ -1661,52 +1782,40 @@ endif source "package/openvmtools/Config.in" source "package/polkit/Config.in" source "package/powerpc-utils/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/procps-ng/Config.in" -endif source "package/procrank_linux/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/psmisc/Config.in" -endif source "package/pwgen/Config.in" source "package/quota/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/rsyslog/Config.in" -endif + source "package/runc/Config.in" source "package/scrub/Config.in" source "package/scrypt/Config.in" source "package/smack/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/start-stop-daemon/Config.in" -endif source "package/supervisor/Config.in" source "package/swupdate/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/sysklogd/Config.in" source "package/syslog-ng/Config.in" -endif source "package/systemd/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/systemd-bootchart/Config.in" source "package/sysvinit/Config.in" source "package/tar/Config.in" -endif source "package/tpm-tools/Config.in" source "package/unscd/Config.in" source "package/util-linux/Config.in" + source "package/xen/Config.in" + source "package/xvisor/Config.in" endmenu menu "Text editors and viewers" source "package/ed/Config.in" source "package/joe/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/less/Config.in" -endif source "package/mc/Config.in" source "package/nano/Config.in" source "package/uemacs/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/vim/Config.in" -endif endmenu endmenu diff --git a/package/Config.in.host b/package/Config.in.host index 13acb22ee6..8da79c303c 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -12,6 +12,7 @@ menu "Host utilities" source "package/e2fsprogs/Config.in.host" source "package/e2tools/Config.in.host" source "package/faketime/Config.in.host" + source "package/fwup/Config.in.host" source "package/genext2fs/Config.in.host" source "package/genimage/Config.in.host" source "package/genpart/Config.in.host" @@ -19,20 +20,29 @@ menu "Host utilities" source "package/gptfdisk/Config.in.host" source "package/imx-usb-loader/Config.in.host" source "package/jq/Config.in.host" + source "package/jsmin/Config.in.host" source "package/lpc3250loader/Config.in.host" + source "package/lttng-babeltrace/Config.in.host" + source "package/mfgtools/Config.in.host" source "package/mke2img/Config.in.host" + source "package/mkpasswd/Config.in.host" source "package/mtd/Config.in.host" source "package/mtools/Config.in.host" + source "package/mxsldr/Config.in.host" source "package/omap-u-boot-utils/Config.in.host" source "package/openocd/Config.in.host" + source "package/opkg-utils/Config.in.host" source "package/parted/Config.in.host" source "package/patchelf/Config.in.host" + source "package/pru-software-support/Config.in.host" source "package/pwgen/Config.in.host" source "package/qemu/Config.in.host" + source "package/raspberrypi-usbboot/Config.in.host" source "package/sam-ba/Config.in.host" source "package/squashfs/Config.in.host" source "package/sunxi-tools/Config.in.host" source "package/tegrarcm/Config.in.host" + source "package/ti-cgt-pru/Config.in.host" source "package/uboot-tools/Config.in.host" source "package/util-linux/Config.in.host" source "package/vboot-utils/Config.in.host" diff --git a/package/Makefile.in b/package/Makefile.in index 616bdd056b..4a3eb26963 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -122,6 +122,9 @@ endif ifeq ($(BR2_OPTIMIZE_3),y) TARGET_OPTIMIZATION = -O3 endif +ifeq ($(BR2_OPTIMIZE_G),y) +TARGET_OPTIMIZATION = -Og +endif ifeq ($(BR2_OPTIMIZE_S),y) TARGET_OPTIMIZATION = -Os endif @@ -138,6 +141,7 @@ endif TARGET_CPPFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) TARGET_CXXFLAGS = $(TARGET_CFLAGS) +TARGET_FCFLAGS = $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) TARGET_LDFLAGS = $(call qstrip,$(BR2_TARGET_LDFLAGS)) ifeq ($(BR2_BINFMT_FLAT),y) @@ -145,35 +149,42 @@ TARGET_CFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FL -Wl$(comma)-elf2flt) TARGET_CXXFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),\ -Wl$(comma)-elf2flt) +TARGET_FCFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),\ + -Wl$(comma)-elf2flt) TARGET_LDFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt) endif ifeq ($(BR2_BINFMT_FLAT_SHARED),y) TARGET_LDFLAGS += -mid-shared-library -mshared-library-id=0 TARGET_CFLAGS += -mid-shared-library -mshared-library-id=0 +TARGET_FCFLAGS += -mid-shared-library -mshared-library-id=0 TARGET_CXXFLAGS += -mid-shared-library -mshared-library-id=0 endif ifeq ($(BR2_BINFMT_FLAT_SEP_DATA),y) TARGET_LDFLAGS += -msep-data TARGET_CFLAGS += -msep-data +TARGET_FCFLAGS += -msep-data TARGET_CXXFLAGS += -msep-data endif ifeq ($(BR2_SSP_REGULAR),y) TARGET_CFLAGS += -fstack-protector TARGET_CXXFLAGS += -fstack-protector +TARGET_FCFLAGS += -fstack-protector else ifeq ($(BR2_SSP_STRONG),y) TARGET_CFLAGS += -fstack-protector-strong TARGET_CXXFLAGS += -fstack-protector-strong +TARGET_FCFLAGS += -fstack-protector-strong else ifeq ($(BR2_SSP_ALL),y) TARGET_CFLAGS += -fstack-protector-all TARGET_CXXFLAGS += -fstack-protector-all +TARGET_FCFLAGS += -fstack-protector-all endif ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) TARGET_CROSS = $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)- else -TARGET_CROSS = $(HOST_DIR)/usr/bin/$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))- +TARGET_CROSS = $(HOST_DIR)/usr/bin/$(TOOLCHAIN_EXTERNAL_PREFIX)- endif # Define TARGET_xx variables for all common binutils/gcc @@ -192,32 +203,19 @@ TARGET_OBJDUMP = $(TARGET_CROSS)objdump ifeq ($(BR2_STRIP_strip),y) STRIP_STRIP_DEBUG := --strip-debug -STRIP_STRIP_UNNEEDED := --strip-unneeded -STRIP_STRIP_ALL := --strip-all TARGET_STRIP = $(TARGET_CROSS)strip STRIPCMD = $(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note -KSTRIPCMD = $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) -endif -ifeq ($(BR2_STRIP_sstrip),y) -STRIP_STRIP_DEBUG := -STRIP_STRIP_UNNEEDED := -STRIP_STRIP_ALL := -TARGET_STRIP = $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-sstrip -STRIPCMD = $(TARGET_STRIP) -KSTRIPCMD = $(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note --strip-unneeded endif ifeq ($(BR2_STRIP_none),y) TARGET_STRIP = true STRIPCMD = $(TARGET_STRIP) -KSTRIPCMD = $(TARGET_STRIP) endif INSTALL := $(shell which install || type -p install) FLEX := $(shell which flex || type -p flex) BISON := $(shell which bison || type -p bison) -SED := $(shell which sed || type -p sed) -i -e UNZIP := $(shell which unzip || type -p unzip) -q -APPLY_PATCHES = support/scripts/apply-patches.sh $(if $(QUIET),-s) +APPLY_PATCHES = PATH=$(HOST_DIR)/usr/bin:$$PATH support/scripts/apply-patches.sh $(if $(QUIET),-s) HOST_CPPFLAGS = -I$(HOST_DIR)/usr/include HOST_CFLAGS ?= -O2 @@ -236,8 +234,10 @@ export PERL=$(shell which perl) # finds this perl module by exporting the proper value for PERL5LIB. export PERL5LIB=$(HOST_DIR)/usr/lib/perl +TARGET_MAKE_ENV = PATH=$(BR_PATH) + TARGET_CONFIGURE_OPTS = \ - PATH=$(BR_PATH) \ + $(TARGET_MAKE_ENV) \ AR="$(TARGET_AR)" \ AS="$(TARGET_AS)" \ LD="$(TARGET_LD)" \ @@ -247,6 +247,7 @@ TARGET_CONFIGURE_OPTS = \ CPP="$(TARGET_CPP)" \ CXX="$(TARGET_CXX)" \ FC="$(TARGET_FC)" \ + F77="$(TARGET_FC)" \ RANLIB="$(TARGET_RANLIB)" \ READELF="$(TARGET_READELF)" \ STRIP="$(TARGET_STRIP)" \ @@ -270,15 +271,22 @@ TARGET_CONFIGURE_OPTS = \ CXXFLAGS="$(TARGET_CXXFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ FCFLAGS="$(TARGET_FCFLAGS)" \ + FFLAGS="$(TARGET_FCFLAGS)" \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ STAGING_DIR="$(STAGING_DIR)" \ INTLTOOL_PERL=$(PERL) -TARGET_MAKE_ENV = PATH=$(BR_PATH) +HOST_MAKE_ENV = \ + PATH=$(BR_PATH) \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + PKG_CONFIG_SYSROOT_DIR="/" \ + PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \ + PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ + PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig" HOST_CONFIGURE_OPTS = \ - PATH=$(BR_PATH) \ + $(HOST_MAKE_ENV) \ AR="$(HOSTAR)" \ AS="$(HOSTAS)" \ LD="$(HOSTLD)" \ @@ -293,19 +301,8 @@ HOST_CONFIGURE_OPTS = \ CFLAGS="$(HOST_CFLAGS)" \ CXXFLAGS="$(HOST_CXXFLAGS)" \ LDFLAGS="$(HOST_LDFLAGS)" \ - PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \ - PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ - PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ - PKG_CONFIG_SYSROOT_DIR="/" \ - PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig" \ INTLTOOL_PERL=$(PERL) -HOST_MAKE_ENV = \ - PATH=$(BR_PATH) \ - PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ - PKG_CONFIG_SYSROOT_DIR="/" \ - PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig" - # This is extra environment we can not export ourselves (eg. because some # packages use that variable internally, eg. uboot), so we have to # explicitly pass it to user-supplied external hooks (eg. post-build, @@ -313,8 +310,7 @@ HOST_MAKE_ENV = \ EXTRA_ENV = \ PATH=$(BR_PATH) \ BR2_DL_DIR=$(BR2_DL_DIR) \ - BUILD_DIR=$(BUILD_DIR) \ - BR2_EXTERNAL=$(BR2_EXTERNAL) + BUILD_DIR=$(BUILD_DIR) ################################################################################ # settings we need to pass to configure @@ -378,6 +374,7 @@ ifeq ($(BR2_STATIC_LIBS),y) SHARED_STATIC_LIBS_OPTS = --enable-static --disable-shared TARGET_CFLAGS += -static TARGET_CXXFLAGS += -static +TARGET_FCFLAGS += -static TARGET_LDFLAGS += -static else ifeq ($(BR2_SHARED_LIBS),y) SHARED_STATIC_LIBS_OPTS = --disable-static --enable-shared @@ -400,3 +397,4 @@ include package/pkg-generic.mk include package/pkg-kconfig.mk include package/pkg-rebar.mk include package/pkg-kernel-module.mk +include package/pkg-waf.mk diff --git a/package/acl/0002-add-__acl_-prefixes-to-internal-symbols.patch b/package/acl/0002-add-__acl_-prefixes-to-internal-symbols.patch new file mode 100644 index 0000000000..f9a5d9bd1e --- /dev/null +++ b/package/acl/0002-add-__acl_-prefixes-to-internal-symbols.patch @@ -0,0 +1,292 @@ +From debbe4f7b591b3f35d0ed65c17fa81b196b2eb2d Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Tue, 12 Aug 2014 08:37:25 -0400 +Subject: [PATCH] add __acl_ prefixes to internal symbols + +When static linking libacl, people sometimes run into symbol collisions +because their own code defines symbols like "quote". So for acl internal +symbols, use an __acl_ prefix. + +[Rahul Bedarkar: backported from upstream + http://git.savannah.gnu.org/cgit/acl.git/commit/?id=a2c4d71c2e84419a49db503ed59de4d3d1dca7dd ] +Signed-off-by: Rahul Bedarkar +--- + exports | 12 ++---------- + getfacl/getfacl.c | 4 ++-- + include/misc.h | 8 ++++---- + libacl/__acl_to_any_text.c | 4 ++-- + libacl/acl_from_text.c | 4 ++-- + libmisc/high_water_alloc.c | 2 +- + libmisc/next_line.c | 6 +++--- + libmisc/quote.c | 4 ++-- + libmisc/unquote.c | 2 +- + setfacl/parse.c | 10 +++++----- + setfacl/setfacl.c | 4 ++-- + 11 files changed, 26 insertions(+), 34 deletions(-) + +diff --git a/exports b/exports +index 7d8e69e..bf15d84 100644 +--- a/exports ++++ b/exports +@@ -59,22 +59,14 @@ ACL_1.0 { + acl_to_any_text; + + local: +- # Library internal stuff ++ # Library internal stuff + __new_var_obj_p; + __new_obj_p_here; + __free_obj_p; + __check_obj_p; + __ext2int_and_check; +- __acl_reorder_entry_obj_p; +- __acl_reorder_obj_p; +- __acl_init_obj; +- __acl_create_entry_obj; +- __acl_free_acl_obj; +- __acl_to_any_text; ++ __acl_*; + __apply_mask_to_mode; +- +- quote; +- unquote; + }; + + ACL_1.1 { +diff --git a/getfacl/getfacl.c b/getfacl/getfacl.c +index f8eaf25..af9e225 100644 +--- a/getfacl/getfacl.c ++++ b/getfacl/getfacl.c +@@ -90,7 +90,7 @@ int opt_numeric; /* don't convert id's to symbolic names */ + + static const char *xquote(const char *str, const char *quote_chars) + { +- const char *q = quote(str, quote_chars); ++ const char *q = __acl_quote(str, quote_chars); + if (q == NULL) { + fprintf(stderr, "%s: %s\n", progname, strerror(errno)); + exit(1); +@@ -718,7 +718,7 @@ int main(int argc, char *argv[]) + do { + if (optind == argc || + strcmp(argv[optind], "-") == 0) { +- while ((line = next_line(stdin)) != NULL) { ++ while ((line = __acl_next_line(stdin)) != NULL) { + if (*line == '\0') + continue; + +diff --git a/include/misc.h b/include/misc.h +index 0c5fdcc..c25accf 100644 +--- a/include/misc.h ++++ b/include/misc.h +@@ -15,9 +15,9 @@ + along with this program. If not, see . + */ + +-extern int high_water_alloc(void **buf, size_t *bufsize, size_t newsize); ++extern int __acl_high_water_alloc(void **buf, size_t *bufsize, size_t newsize); + +-extern const char *quote(const char *str, const char *quote_chars); +-extern char *unquote(char *str); ++extern const char *__acl_quote(const char *str, const char *quote_chars); ++extern char *__acl_unquote(char *str); + +-extern char *next_line(FILE *file); ++extern char *__acl_next_line(FILE *file); +diff --git a/libacl/__acl_to_any_text.c b/libacl/__acl_to_any_text.c +index a4f9c34..19f1ccc 100644 +--- a/libacl/__acl_to_any_text.c ++++ b/libacl/__acl_to_any_text.c +@@ -159,7 +159,7 @@ acl_entry_to_any_str(const acl_entry_t entry_d, char *text_p, ssize_t size, + if (options & TEXT_NUMERIC_IDS) + str = NULL; + else +- str = quote(user_name( ++ str = __acl_quote(user_name( + entry_obj_p->eid.qid), ":, \t\n\r"); + if (str != NULL) { + strncpy(text_p, str, size); +@@ -182,7 +182,7 @@ acl_entry_to_any_str(const acl_entry_t entry_d, char *text_p, ssize_t size, + if (options & TEXT_NUMERIC_IDS) + str = NULL; + else +- str = quote(group_name( ++ str = __acl_quote(group_name( + entry_obj_p->eid.qid), ":, \t\n\r"); + if (str != NULL) { + strncpy(text_p, str, size); +diff --git a/libacl/acl_from_text.c b/libacl/acl_from_text.c +index 1e05322..f6165be 100644 +--- a/libacl/acl_from_text.c ++++ b/libacl/acl_from_text.c +@@ -206,7 +206,7 @@ parse_acl_entry(const char **text_p, acl_t *acl_p) + str = get_token(text_p); + if (str) { + entry_obj.etag = ACL_USER; +- error = get_uid(unquote(str), ++ error = get_uid(__acl_unquote(str), + &entry_obj.eid.qid); + free(str); + if (error) { +@@ -225,7 +225,7 @@ parse_acl_entry(const char **text_p, acl_t *acl_p) + str = get_token(text_p); + if (str) { + entry_obj.etag = ACL_GROUP; +- error = get_gid(unquote(str), ++ error = get_gid(__acl_unquote(str), + &entry_obj.eid.qid); + free(str); + if (error) { +diff --git a/libmisc/high_water_alloc.c b/libmisc/high_water_alloc.c +index c127dc1..951f4bb 100644 +--- a/libmisc/high_water_alloc.c ++++ b/libmisc/high_water_alloc.c +@@ -21,7 +21,7 @@ + #include + #include "misc.h" + +-int high_water_alloc(void **buf, size_t *bufsize, size_t newsize) ++int __acl_high_water_alloc(void **buf, size_t *bufsize, size_t newsize) + { + #define CHUNK_SIZE 256 + /* +diff --git a/libmisc/next_line.c b/libmisc/next_line.c +index 0566d7a..126a364 100644 +--- a/libmisc/next_line.c ++++ b/libmisc/next_line.c +@@ -23,7 +23,7 @@ + + #define LINE_SIZE getpagesize() + +-char *next_line(FILE *file) ++char *__acl_next_line(FILE *file) + { + static char *line; + static size_t line_size; +@@ -31,7 +31,7 @@ char *next_line(FILE *file) + int eol = 0; + + if (!line) { +- if (high_water_alloc((void **)&line, &line_size, LINE_SIZE)) ++ if (__acl_high_water_alloc((void **)&line, &line_size, LINE_SIZE)) + return NULL; + } + c = line; +@@ -47,7 +47,7 @@ char *next_line(FILE *file) + if (feof(file)) + break; + if (!eol) { +- if (high_water_alloc((void **)&line, &line_size, ++ if (__acl_high_water_alloc((void **)&line, &line_size, + 2 * line_size)) + return NULL; + c = strrchr(line, '\0'); +diff --git a/libmisc/quote.c b/libmisc/quote.c +index bf8f9eb..a28800c 100644 +--- a/libmisc/quote.c ++++ b/libmisc/quote.c +@@ -23,7 +23,7 @@ + #include + #include "misc.h" + +-const char *quote(const char *str, const char *quote_chars) ++const char *__acl_quote(const char *str, const char *quote_chars) + { + static char *quoted_str; + static size_t quoted_str_len; +@@ -40,7 +40,7 @@ const char *quote(const char *str, const char *quote_chars) + if (nonpr == 0) + return str; + +- if (high_water_alloc((void **)"ed_str, "ed_str_len, ++ if (__acl_high_water_alloc((void **)"ed_str, "ed_str_len, + (s - (unsigned char *)str) + nonpr * 3 + 1)) + return NULL; + for (s = (unsigned char *)str, q = quoted_str; *s != '\0'; s++) { +diff --git a/libmisc/unquote.c b/libmisc/unquote.c +index bffebf9..4f4ce7c 100644 +--- a/libmisc/unquote.c ++++ b/libmisc/unquote.c +@@ -22,7 +22,7 @@ + #include + #include "misc.h" + +-char *unquote(char *str) ++char *__acl_unquote(char *str) + { + unsigned char *s, *t; + +diff --git a/setfacl/parse.c b/setfacl/parse.c +index e7e6add..7433459 100644 +--- a/setfacl/parse.c ++++ b/setfacl/parse.c +@@ -226,7 +226,7 @@ user_entry: + str = get_token(text_p); + if (str) { + cmd->c_tag = ACL_USER; +- error = get_uid(unquote(str), &cmd->c_id); ++ error = get_uid(__acl_unquote(str), &cmd->c_id); + free(str); + if (error) { + *text_p = backup; +@@ -245,7 +245,7 @@ user_entry: + str = get_token(text_p); + if (str) { + cmd->c_tag = ACL_GROUP; +- error = get_gid(unquote(str), &cmd->c_id); ++ error = get_gid(__acl_unquote(str), &cmd->c_id); + free(str); + if (error) { + *text_p = backup; +@@ -466,7 +466,7 @@ read_acl_comments( + if (strncmp(cp, "file:", 5) == 0) { + cp += 5; + SKIP_WS(cp); +- cp = unquote(cp); ++ cp = __acl_unquote(cp); + + if (path_p) { + if (*path_p) +@@ -483,7 +483,7 @@ read_acl_comments( + if (uid_p) { + if (*uid_p != ACL_UNDEFINED_ID) + goto fail; +- if (get_uid(unquote(cp), uid_p) != 0) ++ if (get_uid(__acl_unquote(cp), uid_p) != 0) + continue; + } + } else if (strncmp(cp, "group:", 6) == 0) { +@@ -493,7 +493,7 @@ read_acl_comments( + if (gid_p) { + if (*gid_p != ACL_UNDEFINED_ID) + goto fail; +- if (get_gid(unquote(cp), gid_p) != 0) ++ if (get_gid(__acl_unquote(cp), gid_p) != 0) + continue; + } + } else if (strncmp(cp, "flags:", 6) == 0) { +diff --git a/setfacl/setfacl.c b/setfacl/setfacl.c +index 81062a6..fb2d172 100644 +--- a/setfacl/setfacl.c ++++ b/setfacl/setfacl.c +@@ -92,7 +92,7 @@ int promote_warning; + + static const char *xquote(const char *str, const char *quote_chars) + { +- const char *q = quote(str, quote_chars); ++ const char *q = __acl_quote(str, quote_chars); + if (q == NULL) { + fprintf(stderr, "%s: %s\n", progname, strerror(errno)); + exit(1); +@@ -311,7 +311,7 @@ int next_file(const char *arg, seq_t seq) + args.seq = seq; + + if (strcmp(arg, "-") == 0) { +- while ((line = next_line(stdin))) ++ while ((line = __acl_next_line(stdin))) + errors = walk_tree(line, walk_flags, 0, do_set, &args); + if (!feof(stdin)) { + fprintf(stderr, _("%s: Standard input: %s\n"), +-- +2.6.2 + diff --git a/package/acpica/0001-build-do-not-use-Werror.patch b/package/acpica/0001-build-do-not-use-Werror.patch new file mode 100644 index 0000000000..4ccb4d4d34 --- /dev/null +++ b/package/acpica/0001-build-do-not-use-Werror.patch @@ -0,0 +1,62 @@ +From 9382ae2431d2962c430e7149302c8690f5bc159c Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 10 Jul 2016 15:06:15 +0200 +Subject: [PATCH] build: do not use -Werror + +Warnings come and go with various compiler versions, so using -Werror is +prone to cause build failures with various compiler versions, especially +newer versions that introduce new warnings. + +Remove use of -Werror. + +Signed-off-by: "Yann E. MORIN" +--- + generate/unix/Makefile.config | 1 - + generate/unix/iasl/Makefile | 12 ++++++------ + 2 files changed, 6 insertions(+), 7 deletions(-) + +diff --git a/generate/unix/Makefile.config b/generate/unix/Makefile.config +index da0f61d..1476e27 100644 +--- a/generate/unix/Makefile.config ++++ b/generate/unix/Makefile.config +@@ -185,7 +185,6 @@ CWARNINGFLAGS = \ + -Wall\ + -Wbad-function-cast\ + -Wdeclaration-after-statement\ +- -Werror\ + -Wformat=2\ + -Wmissing-declarations\ + -Wmissing-prototypes\ +diff --git a/generate/unix/iasl/Makefile b/generate/unix/iasl/Makefile +index a3759cc..c2dc8f0 100644 +--- a/generate/unix/iasl/Makefile ++++ b/generate/unix/iasl/Makefile +@@ -320,19 +320,19 @@ $(OBJDIR)/prparserparse.c $(OBJDIR)/prparser.y.h : $(ASL_COMPILER)/prparse + # by the utilities above and they are not necessarily ANSI C, etc. + # + $(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< + + $(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< + + $(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< + + $(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< + + $(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< + + $(OBJDIR)/prparserparse.o : $(OBJDIR)/prparserparse.c +- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< ++ $(CC) -c $(CFLAGS) -Wall -o$@ $< +-- +2.7.4 + diff --git a/package/acpica/Config.in b/package/acpica/Config.in new file mode 100644 index 0000000000..c5ffb005f5 --- /dev/null +++ b/package/acpica/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_ACPICA + bool "acpica" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + The ACPI Component Architecture (ACPICA) project provides an + operating system (OS)-independent reference implementation + of the Advanced Configuration and Power Interface + Specification (ACPI). + + https://www.acpica.org + +comment "acpica needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/acpica/acpica.hash b/package/acpica/acpica.hash new file mode 100644 index 0000000000..8f1c08a677 --- /dev/null +++ b/package/acpica/acpica.hash @@ -0,0 +1,3 @@ +# locally computed hash +sha256 dfb33db5599bd48134dbd6e50c8804099be0cf1c35d98975a6cb84dabca78b67 acpica-unix2-20161117.tar.gz + diff --git a/package/acpica/acpica.mk b/package/acpica/acpica.mk new file mode 100644 index 0000000000..f76c948c3d --- /dev/null +++ b/package/acpica/acpica.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# acpica +# +################################################################################ + +ACPICA_VERSION = 20161117 +ACPICA_SOURCE = acpica-unix2-$(ACPICA_VERSION).tar.gz +ACPICA_SITE = https://acpica.org/sites/acpica/files +ACPICA_LICENSE = BSD-3c or GPLv2 +ACPICA_LICENSE_FILES = source/include/acpi.h +ACPICA_DEPENDENCIES = host-bison host-flex + +define ACPICA_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + HARDWARE_NAME=$(BR2_ARCH) HOST=_LINUX CC="$(TARGET_CC)" \ + all +endef + +define ACPICA_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + HARDWARE_NAME=$(BR2_ARCH) DESTDIR="$(TARGET_DIR)" \ + INSTALLFLAGS=-m755 install +endef + +$(eval $(generic-package)) diff --git a/package/acpid/acpid.hash b/package/acpid/acpid.hash index 91990fd108..9cf91d9333 100644 --- a/package/acpid/acpid.hash +++ b/package/acpid/acpid.hash @@ -1,3 +1,3 @@ # From https://sourceforge.net/projects/acpid2/files/ -md5 e41bdf628e122edb4342fca432ea7db9 acpid-2.0.27.tar.xz -sha1 aabf129499f99b3c14e7a9f5b5ec717b0913e9c8 acpid-2.0.27.tar.xz +md5 0432407b5ff75ae8e08afb43052fde2b acpid-2.0.28.tar.xz +sha1 a5cb34d53eb6965293c436db23dc81550273975b acpid-2.0.28.tar.xz diff --git a/package/acpid/acpid.mk b/package/acpid/acpid.mk index 510282bb48..f561b9083d 100644 --- a/package/acpid/acpid.mk +++ b/package/acpid/acpid.mk @@ -4,7 +4,7 @@ # ################################################################################ -ACPID_VERSION = 2.0.27 +ACPID_VERSION = 2.0.28 ACPID_SOURCE = acpid-$(ACPID_VERSION).tar.xz ACPID_SITE = http://downloads.sourceforge.net/project/acpid2 ACPID_LICENSE = GPLv2+ diff --git a/package/acpitool/Config.in b/package/acpitool/Config.in new file mode 100644 index 0000000000..a6f082cc5c --- /dev/null +++ b/package/acpitool/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_ACPITOOL + bool "acpitool" + depends on !BR2_bfin + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + help + A small, convenient command-line ACPI client with a lot of + features for Linux + + http://acpitool.sourceforge.net + +comment "acpitool needs a toolchain w/ threads, C++, dynamic library" + depends on !BR2_bfin + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_INSTALL_LIBSTDCPP diff --git a/package/acpitool/acpitool.hash b/package/acpitool/acpitool.hash new file mode 100644 index 0000000000..e25dc546f3 --- /dev/null +++ b/package/acpitool/acpitool.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 004fb6cd43102918b6302cf537a2db7ceadda04aef2e0906ddf230f820dad34f acpitool-0.5.1.tar.bz2 diff --git a/package/acpitool/acpitool.mk b/package/acpitool/acpitool.mk new file mode 100644 index 0000000000..f663fbb9e7 --- /dev/null +++ b/package/acpitool/acpitool.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# acpitool +# +################################################################################ + +ACPITOOL_VERSION = 0.5.1 +ACPITOOL_SOURCE = acpitool-$(ACPITOOL_VERSION).tar.bz2 +ACPITOOL_SITE = http://downloads.sourceforge.net/sourceforge/acpitool +ACPITOOL_LICENSE = GPLv2+ +ACPITOOL_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/adwaita-icon-theme/adwaita-icon-theme.hash b/package/adwaita-icon-theme/adwaita-icon-theme.hash index a416e235fa..61b5f14d25 100644 --- a/package/adwaita-icon-theme/adwaita-icon-theme.hash +++ b/package/adwaita-icon-theme/adwaita-icon-theme.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.20/adwaita-icon-theme-3.20.sha256sum -sha256 7a0a887349f340dd644032f89d81264b694c4b006bd51af1c2c368d431e7ae35 adwaita-icon-theme-3.20.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.22/adwaita-icon-theme-3.22.0.sha256sum +sha256 c18bf6e26087d9819a962c77288b291efab25d0419b73d909dd771716a45dcb7 adwaita-icon-theme-3.22.0.tar.xz diff --git a/package/adwaita-icon-theme/adwaita-icon-theme.mk b/package/adwaita-icon-theme/adwaita-icon-theme.mk index 24ce3504f3..fdf66c8e94 100644 --- a/package/adwaita-icon-theme/adwaita-icon-theme.mk +++ b/package/adwaita-icon-theme/adwaita-icon-theme.mk @@ -4,9 +4,11 @@ # ################################################################################ -ADWAITA_ICON_THEME_VERSION = 3.20 -ADWAITA_ICON_THEME_SITE = http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/$(ADWAITA_ICON_THEME_VERSION) +ADWAITA_ICON_THEME_VERSION_MAJOR = 3.22 +ADWAITA_ICON_THEME_VERSION = $(ADWAITA_ICON_THEME_VERSION_MAJOR).0 +ADWAITA_ICON_THEME_SITE = http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/$(ADWAITA_ICON_THEME_VERSION_MAJOR) ADWAITA_ICON_THEME_SOURCE = adwaita-icon-theme-$(ADWAITA_ICON_THEME_VERSION).tar.xz +ADWAITA_ICON_THEME_INSTALL_STAGING = YES ADWAITA_ICON_THEME_LICENSE = LGPLv3 or CC-BY-SA-3.0 ADWAITA_ICON_THEME_LICENSE_FILES = COPYING COPYING_LGPL COPYING_CCBYSA3 ADWAITA_ICON_THEME_DEPENDENCIES = host-intltool host-libgtk3 diff --git a/package/aespipe/aespipe.hash b/package/aespipe/aespipe.hash index fa66b97d55..cc7640a0d0 100644 --- a/package/aespipe/aespipe.hash +++ b/package/aespipe/aespipe.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 260190beea911190a839e711f610ec3454a9b13985d35479775b7e26ad4c845e aespipe-v2.4c.tar.bz2 +sha256 c5ce656e0ade49b93e1163ec7b35450721d5743d8d804ad3a9e39add0389e50f aespipe-v2.4d.tar.bz2 diff --git a/package/aespipe/aespipe.mk b/package/aespipe/aespipe.mk index c567092ae8..6a38556ef1 100644 --- a/package/aespipe/aespipe.mk +++ b/package/aespipe/aespipe.mk @@ -4,7 +4,7 @@ # ################################################################################ -AESPIPE_VERSION = 2.4c +AESPIPE_VERSION = 2.4d AESPIPE_SOURCE = aespipe-v$(AESPIPE_VERSION).tar.bz2 AESPIPE_SITE = http://loop-aes.sourceforge.net/aespipe AESPIPE_LICENSE = GPL diff --git a/package/agentpp/agentpp.hash b/package/agentpp/agentpp.hash index 6b992f9769..131edc4a17 100644 --- a/package/agentpp/agentpp.hash +++ b/package/agentpp/agentpp.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 d473b98d5f08e572b474c375c11ff1c4c5323824eb721c3979b6c5258b72949d agent++-4.0.4.tar.gz +sha256 6775fa2a038801edddedc148d7846427ddc4d438e3bb33362d9eec6074918a88 agent++-4.0.7.tar.gz diff --git a/package/agentpp/agentpp.mk b/package/agentpp/agentpp.mk index 7b1edec719..12cf2089e9 100644 --- a/package/agentpp/agentpp.mk +++ b/package/agentpp/agentpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -AGENTPP_VERSION = 4.0.4 +AGENTPP_VERSION = 4.0.7 AGENTPP_SOURCE = agent++-$(AGENTPP_VERSION).tar.gz AGENTPP_SITE = http://www.agentpp.com/download AGENTPP_LICENSE = Apache-2.0 diff --git a/package/aircrack-ng/0004-fix-musl-build.patch b/package/aircrack-ng/0004-fix-musl-build.patch deleted file mode 100644 index cc093d38df..0000000000 --- a/package/aircrack-ng/0004-fix-musl-build.patch +++ /dev/null @@ -1,53 +0,0 @@ -From da6e87670ad4639371da056f9e36201a9236dfa2 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 29 Jul 2015 19:38:46 +0200 -Subject: [PATCH] fix musl build - -aircrack-ng doesn't build with a musl toolchain due to -cdefs.h internal glibc header being used in internal -ethernet.h [1]. - -[1] http://wiki.musl-libc.org/wiki/FAQ - -Signed-off-by: Romain Naour ---- - src/include/ethernet.h | 20 +++++++++++--------- - 1 file changed, 11 insertions(+), 9 deletions(-) - -diff --git a/src/include/ethernet.h b/src/include/ethernet.h -index 72d5e81..e9d9236 100644 ---- a/src/include/ethernet.h -+++ b/src/include/ethernet.h -@@ -389,18 +389,20 @@ void ether_vlan_mtap(struct bpf_if *, struct mbuf *, - - #else /* _KERNEL */ - --#include -- - /* - * Ethernet address conversion/parsing routines. - */ --__BEGIN_DECLS --struct ether_addr *ether_aton(const char *); --int ether_hostton(const char *, struct ether_addr *); --int ether_line(const char *, struct ether_addr *, char *); --char *ether_ntoa(const struct ether_addr *); --int ether_ntohost(char *, const struct ether_addr *); --__END_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif -+ struct ether_addr *ether_aton(const char *); -+ int ether_hostton(const char *, struct ether_addr *); -+ int ether_line(const char *, struct ether_addr *, char *); -+ char *ether_ntoa(const struct ether_addr *); -+ int ether_ntohost(char *, const struct ether_addr *); -+#ifdef __cplusplus -+} -+#endif - - #endif /* !_KERNEL */ - --- -2.4.3 - diff --git a/package/alljoyn-base/Config.in b/package/alljoyn-base/Config.in new file mode 100644 index 0000000000..8556d66c60 --- /dev/null +++ b/package/alljoyn-base/Config.in @@ -0,0 +1,51 @@ +config BR2_PACKAGE_ALLJOYN_BASE + bool "alljoyn-base" + depends on BR2_USE_MMU # alljoyn + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR # alljoyn + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # alljoyn + select BR2_PACKAGE_ALLJOYN + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ALLJOYN_BASE_CONTROLPANEL if \ + !BR2_PACKAGE_ALLJOYN_BASE_NOTIFICATION && \ + !BR2_PACKAGE_ALLJOYN_BASE_ONBOARDING + help + + AllJoyn Base Services are common services used by many + devices, providing a set of interfaces for different devices + to interact and interoperate with one another. + + https://allseenalliance.org + +if BR2_PACKAGE_ALLJOYN_BASE + +config BR2_PACKAGE_ALLJOYN_BASE_CONTROLPANEL + bool "controlpanel" + help + Enable AllJoyn Control Panel base service which allows + devices to advertise a virtual control panel to be + controlled remotely. + +config BR2_PACKAGE_ALLJOYN_BASE_NOTIFICATION + bool "notification" + help + Enable AllJoyn Notification base service which allows + text-based notifications to be sent and received by devices + on the AllJoyn network. Also supports audio and images via + URLs. + +config BR2_PACKAGE_ALLJOYN_BASE_ONBOARDING + bool "onboarding" + help + Enable AllJoyn Onboarding base service which provides a + consistent way to bring a new device onto the Wi-Fi network. + +endif # BR2_PACKAGE_ALLJOYN_BASE + +comment "alljoyn-base needs a toolchain w/ C++, threads, wchar, dynamic library" + 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_STATIC_LIBS diff --git a/package/alljoyn-base/alljoyn-base.hash b/package/alljoyn-base/alljoyn-base.hash new file mode 100644 index 0000000000..dbec3a3539 --- /dev/null +++ b/package/alljoyn-base/alljoyn-base.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 742f724b3a06c8fc4039591dba24871755728221ca5dc4afb78ebd9a7e3beb44 alljoyn-base-16.04.00.tar.gz diff --git a/package/alljoyn-base/alljoyn-base.mk b/package/alljoyn-base/alljoyn-base.mk new file mode 100644 index 0000000000..ad19802823 --- /dev/null +++ b/package/alljoyn-base/alljoyn-base.mk @@ -0,0 +1,91 @@ +################################################################################ +# +# alljoyn-base +# +################################################################################ + +ALLJOYN_BASE_REV = 16.04 +ALLJOYN_BASE_VERSION = $(ALLJOYN_BASE_REV).00 +ALLJOYN_BASE_SITE = \ + https://mirrors.kernel.org/allseenalliance/alljoyn/$(ALLJOYN_BASE_REV) +# See https://allseenalliance.org/alliance/ip-policy +ALLJOYN_BASE_LICENSE = ISC + +ALLJOYN_BASE_DEPENDENCIES = host-scons alljoyn openssl +ALLJOYN_BASE_INSTALL_STAGING = YES + +ALLJOYN_BASE_CRYPTO = openssl + +# AllJoyn can be compiled in debug or release mode. By default, +# AllJoyn is built in debug mode. +ALLJOYN_BASE_VARIANT = release + +ALLJOYN_BASE_BINDINGS = c,cpp + +# By setting openwrt for OS and CPU, AllJoyn cross-compilation can be finely +# tuned through TARGET_xxx options. All TARGET_xxx variables must be defined +# otherwise compilation will fail. +# CROSS_COMPILE option should not be used as it works only for linux/ARM. +ALLJOYN_BASE_OS = openwrt +ALLJOYN_BASE_CPU = openwrt + +# AllJoyn install everything in this relative path +ALLJOYN_BASE_DISTDIR = \ + build/$(ALLJOYN_OS)/$(ALLJOYN_CPU)/$(ALLJOYN_VARIANT)/dist + +ALLJOYN_BASE_SCONS_OPTS = \ + -j$(PARALLEL_JOBS) \ + V=1 \ + OS=$(ALLJOYN_BASE_OS) \ + CPU=$(ALLJOYN_BASE_CPU) \ + VARIANT=$(ALLJOYN_BASE_VARIANT) \ + BR=off \ + CRYPTO=$(ALLJOYN_BASE_CRYPTO) \ + BINDINGS=$(ALLJOYN_BASE_BINDINGS) \ + ALLJOYN_DISTDIR="$(STAGING_DIR)"\ + TARGET_CFLAGS="$(TARGET_CFLAGS)" \ + TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)" \ + TARGET_LINKFLAGS="$(TARGET_LINKFLAGS)" \ + TARGET_CC="$(TARGET_CC)" \ + TARGET_CXX="$(TARGET_CXX)" \ + TARGET_LD="$(TARGET_LD)" \ + TARGET_LINK="$(TARGET_CXX)" \ + TARGET_AR="$(TARGET_AR)" \ + TARGET_RANLIB="$(TARGET_RANLIB)" \ + TARGET_PATH="$(BR_PATH)" + +ifeq ($(BR2_PACKAGE_ALLJOYN_BASE_CONTROLPANEL), y) +ALLJOYN_BASE_TARGETS += controlpanel +endif + +ifeq ($(BR2_PACKAGE_ALLJOYN_BASE_NOTIFICATION), y) +ALLJOYN_BASE_TARGETS += notification +endif + +ifeq ($(BR2_PACKAGE_ALLJOYN_BASE_ONBOARDING), y) +ALLJOYN_BASE_TARGETS += onboarding +endif + +define ALLJOYN_BASE_BUILD_CMDS + $(foreach target,$(ALLJOYN_BASE_TARGETS),\ + cd $(@D)/$(target); $(SCONS) $(ALLJOYN_BASE_SCONS_OPTS) + ) +endef + +define ALLJOYN_BASE_INSTALL_STAGING_CMDS + $(foreach target,$(ALLJOYN_BASE_TARGETS),\ + cp -a $(@D)/$(target)/$(ALLJOYN_BASE_DISTDIR)/*/lib/lib* \ + $(STAGING_DIR)/usr/lib/ + cp -a $(@D)/$(target)/$(ALLJOYN_BASE_DISTDIR)/*/inc/* \ + $(STAGING_DIR)/usr/include/ + ) +endef + +define ALLJOYN_BASE_INSTALL_TARGET_CMDS + $(foreach target,$(ALLJOYN_BASE_TARGETS),\ + cp -a $(@D)/$(target)/$(ALLJOYN_BASE_DISTDIR)/*/lib/lib* \ + $(TARGET_DIR)/usr/lib/ + ) +endef + +$(eval $(generic-package)) diff --git a/package/alljoyn-tcl-base/Config.in b/package/alljoyn-tcl-base/Config.in new file mode 100644 index 0000000000..ebc3370afb --- /dev/null +++ b/package/alljoyn-tcl-base/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_ALLJOYN_TCL_BASE + bool "alljoyn-tcl-base" + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS # alljoyn-tcl + select BR2_PACKAGE_ALLJOYN_TCL + help + AllJoyn Base Services are common services used by many + devices, providing a set of interfaces for different devices + to interact and interoperate with one another. + + Thin Client Library is designed to bring the benefits of the + AllJoyn distributed programming environment to embedded + systems. + + https://allseenalliance.org + +comment "alljoyn-tcl-base needs a toolchain w/ threads and dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/alljoyn-tcl-base/alljoyn-tcl-base.hash b/package/alljoyn-tcl-base/alljoyn-tcl-base.hash new file mode 100644 index 0000000000..882839d7de --- /dev/null +++ b/package/alljoyn-tcl-base/alljoyn-tcl-base.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 741f7a71929ccd6a66bf75d2b03affc62411e229b70bb89399be9b1b2ce40629 alljoyn-base_tcl-16.04.00.tar.gz diff --git a/package/alljoyn-tcl-base/alljoyn-tcl-base.mk b/package/alljoyn-tcl-base/alljoyn-tcl-base.mk new file mode 100644 index 0000000000..461cd097d6 --- /dev/null +++ b/package/alljoyn-tcl-base/alljoyn-tcl-base.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# alljoyn-tcl-base +# +################################################################################ + +ALLJOYN_TCL_BASE_REV = 16.04 +ALLJOYN_TCL_BASE_VERSION = $(ALLJOYN_TCL_BASE_REV).00 +ALLJOYN_TCL_BASE_SOURCE = alljoyn-base_tcl-$(ALLJOYN_TCL_BASE_VERSION).tar.gz +ALLJOYN_TCL_BASE_SITE = \ + https://mirrors.kernel.org/allseenalliance/alljoyn/$(ALLJOYN_TCL_BASE_REV) +# See https://allseenalliance.org/alliance/ip-policy +ALLJOYN_TCL_BASE_LICENSE = ISC + +ALLJOYN_TCL_BASE_DEPENDENCIES = host-scons alljoyn-tcl +ALLJOYN_TCL_BASE_INSTALL_STAGING = YES + +# AllJoyn Base Thin Core can be compiled in debug or release mode. By default, +# AllJoyn Base Thin Core is built in debug mode. +ALLJOYN_TCL_BASE_VARIANT = release + +ALLJOYN_TCL_BASE_SCONS_OPTS = \ + -j$(PARALLEL_JOBS) \ + V=1 \ + VARIANT=$(ALLJOYN_TCL_BASE_VARIANT) \ + CC="$(TARGET_CC)" \ + CXX="$(TARGET_CXX)" \ + AJTCL_DIST=$(STAGING_DIR) \ + WS=off + +define ALLJOYN_TCL_BASE_BUILD_CMDS + cd $(@D); $(SCONS) $(ALLJOYN_TCL_BASE_SCONS_OPTS) +endef + +define ALLJOYN_TCL_BASE_INSTALL_STAGING_CMDS + cp -a $(@D)/dist/lib/lib* $(STAGING_DIR)/usr/lib/ + cp -a $(@D)/dist/include/* $(STAGING_DIR)/usr/include/ +endef + +# Only install AllJoyn Base Thin Core dynamic libraries into target directory +define ALLJOYN_TCL_BASE_INSTALL_TARGET_CMDS + cp -a $(@D)/dist/lib/lib*.so* $(TARGET_DIR)/usr/lib/ +endef + +$(eval $(generic-package)) diff --git a/package/alljoyn-tcl/Config.in b/package/alljoyn-tcl/Config.in new file mode 100644 index 0000000000..fe54af08d4 --- /dev/null +++ b/package/alljoyn-tcl/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_ALLJOYN_TCL + bool "alljoyn-tcl" + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + The AllJoyn framework defines a common way for devices and + apps to communicate with one another regardless of brands, + categories, transports, and OSes. Developers write + applications that discover nearby devices, and communicate + with each other directly and through the cloud, unleashing + new possibilities in the Internet of Things. + + AllJoyn Thin Core Library (AJTCL) is designed to bring the + benefits of the AllJoyn distributed programming environment + to embedded systems. + + https://allseenalliance.org + +comment "alljoyn-tcl needs a toolchain w/ threads and dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/alljoyn-tcl/alljoyn-tcl.hash b/package/alljoyn-tcl/alljoyn-tcl.hash new file mode 100644 index 0000000000..208d676c8b --- /dev/null +++ b/package/alljoyn-tcl/alljoyn-tcl.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 da13614a9db79067937b744a87328fed84d99ba62e3de19b0ddc4a83e4b2447e ajtcl-16.04.00a-src.tar.gz diff --git a/package/alljoyn-tcl/alljoyn-tcl.mk b/package/alljoyn-tcl/alljoyn-tcl.mk new file mode 100644 index 0000000000..cabdf8992a --- /dev/null +++ b/package/alljoyn-tcl/alljoyn-tcl.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# alljoyn-tcl +# +################################################################################ + +ALLJOYN_TCL_REV = 16.04 +ALLJOYN_TCL_VERSION = $(ALLJOYN_TCL_REV).00a +ALLJOYN_TCL_SOURCE = ajtcl-$(ALLJOYN_TCL_VERSION)-src.tar.gz +ALLJOYN_TCL_SITE = \ + https://mirrors.kernel.org/allseenalliance/alljoyn/$(ALLJOYN_TCL_REV) +# See https://allseenalliance.org/alliance/ip-policy +ALLJOYN_TCL_LICENSE = ISC + +ALLJOYN_TCL_DEPENDENCIES = host-scons +ALLJOYN_TCL_INSTALL_STAGING = YES + +# AllJoyn Thin Core can be compiled in debug or release mode. By default, +# AllJoyn Thin Core is built in debug mode. +ALLJOYN_TCL_VARIANT = release + +ALLJOYN_TCL_SCONS_OPTS = \ + -j$(PARALLEL_JOBS) \ + V=1 \ + VARIANT=$(ALLJOYN_TCL_VARIANT) \ + CC="$(TARGET_CC)" \ + CXX="$(TARGET_CXX)" + +define ALLJOYN_TCL_BUILD_CMDS + cd $(@D); $(SCONS) $(ALLJOYN_TCL_SCONS_OPTS) +endef + +define ALLJOYN_TCL_INSTALL_STAGING_CMDS + cp -a $(@D)/dist/lib/lib* $(STAGING_DIR)/usr/lib/ + cp -a $(@D)/dist/include/* $(STAGING_DIR)/usr/include/ +endef + +# Only install AllJoyn Thin Core dynamic libraries into target directory +define ALLJOYN_TCL_INSTALL_TARGET_CMDS + cp -a $(@D)/dist/lib/lib*.so* $(TARGET_DIR)/usr/lib/ +endef + +$(eval $(generic-package)) diff --git a/package/alljoyn/0001-UARTStreamLinux-fix-build-on-sparc.patch b/package/alljoyn/0001-UARTStreamLinux-fix-build-on-sparc.patch new file mode 100644 index 0000000000..efca67feae --- /dev/null +++ b/package/alljoyn/0001-UARTStreamLinux-fix-build-on-sparc.patch @@ -0,0 +1,56 @@ +From b8e35cf95184ff18bcf923f900439f56c93609db Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 16 Jul 2016 15:23:41 +0200 +Subject: [PATCH] UARTStreamLinux: fix build on sparc + +Some of the serial port highest speed are not defined on SPARC, so +alljoyn should not use them, so we add a patch to fix that. + +From: +https://git.buildroot.org/buildroot/commit/?id=c5e96d8935016456bea342db170ae6a139a8470f + +Fixes: +http://autobuild.buildroot.net/results/e5b/e5b30b5e0d86b44b97410d434b771e1fb7b18de0 + +Signed-off-by: Romain Naour +--- + common/os/posix/UARTStreamLinux.cc | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/common/os/posix/UARTStreamLinux.cc b/common/os/posix/UARTStreamLinux.cc +index c193b70..ae81d9d 100644 +--- a/common/os/posix/UARTStreamLinux.cc ++++ b/common/os/posix/UARTStreamLinux.cc +@@ -111,21 +111,29 @@ QStatus UART(const qcc::String& devName, uint32_t baud, uint8_t databits, const + speed = B2000000; + break; + ++#ifdef B2500000 + case 2500000: + speed = B2500000; + break; ++#endif + ++#ifdef B3000000 + case 3000000: + speed = B3000000; + break; ++#endif + ++#ifdef B3500000 + case 3500000: + speed = B3500000; + break; ++#endif + ++#ifdef B4000000 + case 4000000: + speed = B4000000; + break; ++#endif + + default: + QCC_LogError(ER_BAD_ARG_2, ("Invalid baud %d", baud)); +-- +2.5.5 + diff --git a/package/alljoyn/Config.in b/package/alljoyn/Config.in new file mode 100644 index 0000000000..6eb417daf8 --- /dev/null +++ b/package/alljoyn/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_ALLJOYN + bool "alljoyn" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_OPENSSL + help + The AllJoyn framework defines a common way for devices and + apps to communicate with one another regardless of brands, + categories, transports, and OSes. Developers write + applications that discover nearby devices, and communicate + with each other directly and through the cloud, unleashing + new possibilities in the Internet of Things. + + https://allseenalliance.org + +comment "alljoyn needs a toolchain w/ C++, threads, wchar and dynamic library" + 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_STATIC_LIBS diff --git a/package/alljoyn/alljoyn.hash b/package/alljoyn/alljoyn.hash new file mode 100644 index 0000000000..47dd0d4de4 --- /dev/null +++ b/package/alljoyn/alljoyn.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 fc437d96cf1213f18048240b5d12a374b31894d21830a0a6ccf562ffa13425d5 alljoyn-16.04.00a-src.tar.gz diff --git a/package/alljoyn/alljoyn.mk b/package/alljoyn/alljoyn.mk new file mode 100644 index 0000000000..69d5dedc41 --- /dev/null +++ b/package/alljoyn/alljoyn.mk @@ -0,0 +1,69 @@ +################################################################################ +# +# alljoyn +# +################################################################################ + +ALLJOYN_REV = 16.04 +ALLJOYN_VERSION = $(ALLJOYN_REV).00a +ALLJOYN_SOURCE = alljoyn-$(ALLJOYN_VERSION)-src.tar.gz +ALLJOYN_SITE = https://mirrors.kernel.org/allseenalliance/alljoyn/$(ALLJOYN_REV) +# See https://allseenalliance.org/alliance/ip-policy +ALLJOYN_LICENSE = ISC + +ALLJOYN_DEPENDENCIES = host-scons libcap openssl +ALLJOYN_INSTALL_STAGING = YES + +ALLJOYN_CRYPTO = openssl + +# AllJoyn can be compiled in debug or release mode. By default, AllJoyn is built +# in debug mode. +ALLJOYN_VARIANT = release + +ALLJOYN_BINDINGS = c,cpp + +# By setting openwrt for OS and CPU, AllJoyn cross-compilation can be finely +# tuned through TARGET_xxx options. All TARGET_xxx variables must be defined +# otherwise compilation will fail. +# CROSS_COMPILE option should not be used as it works only for linux/ARM. +ALLJOYN_OS = openwrt +ALLJOYN_CPU = openwrt + +# AllJoyn installs everything in this relative path +ALLJOYN_DISTDIR = build/$(ALLJOYN_OS)/$(ALLJOYN_CPU)/$(ALLJOYN_VARIANT)/dist/ + +ALLJOYN_SCONS_OPTS = \ + -j$(PARALLEL_JOBS) \ + V=1 \ + OS=$(ALLJOYN_OS) \ + CPU=$(ALLJOYN_CPU) \ + VARIANT=$(ALLJOYN_VARIANT) \ + BR=off \ + CRYPTO=$(ALLJOYN_CRYPTO) \ + BINDINGS=$(ALLJOYN_BINDINGS) \ + TARGET_CFLAGS="$(TARGET_CFLAGS)" \ + TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)" \ + TARGET_LINKFLAGS="$(TARGET_LINKFLAGS)" \ + TARGET_CC="$(TARGET_CC)" \ + TARGET_CXX="$(TARGET_CXX)" \ + TARGET_LD="$(TARGET_LD)" \ + TARGET_LINK="$(TARGET_CXX)" \ + TARGET_AR="$(TARGET_AR)" \ + TARGET_RANLIB="$(TARGET_RANLIB)" \ + TARGET_PATH="$(BR_PATH)" + +define ALLJOYN_BUILD_CMDS + cd $(@D); $(SCONS) $(ALLJOYN_SCONS_OPTS) +endef + +define ALLJOYN_INSTALL_STAGING_CMDS + cp -a $(@D)/$(ALLJOYN_DISTDIR)/*/lib/lib* $(STAGING_DIR)/usr/lib/ + cp -a $(@D)/$(ALLJOYN_DISTDIR)/*/inc/* $(STAGING_DIR)/usr/include/ +endef + +# Only install alljoyn dynamic libraries into target directory +define ALLJOYN_INSTALL_TARGET_CMDS + cp -a $(@D)/$(ALLJOYN_DISTDIR)/*/lib/lib*.so* $(TARGET_DIR)/usr/lib/ +endef + +$(eval $(generic-package)) diff --git a/package/alsa-lib/0003-dlmisc.patch b/package/alsa-lib/0003-dlmisc.patch index 05dc70ee7e..24b7230cae 100644 --- a/package/alsa-lib/0003-dlmisc.patch +++ b/package/alsa-lib/0003-dlmisc.patch @@ -36,10 +36,11 @@ diff --git a/modules/mixer/simple/sbasedl.c b/modules/mixer/simple/sbasedl.c #include #include #include -+#ifdef HAVE_LIBDL ++#include "config.h" ++#ifdef HAVE_DLFCN #include +#endif - #include "config.h" +-#include "config.h" #include "asoundlib.h" #include "mixer_abst.h" diff --git a/src/mixer/simple_abst.c b/src/mixer/simple_abst.c @@ -49,9 +50,10 @@ diff --git a/src/mixer/simple_abst.c b/src/mixer/simple_abst.c #include #include #include -+#ifdef HAVE_LIBDL ++#include "config.h" ++#ifdef HAVE_DLFCN #include +#endif - #include "config.h" +-#include "config.h" #include "asoundlib.h" #include "mixer_simple.h" diff --git a/package/alsa-lib/0005-remove-powerpc64-workaround.patch b/package/alsa-lib/0005-remove-powerpc64-workaround.patch new file mode 100644 index 0000000000..57a369e0e3 --- /dev/null +++ b/package/alsa-lib/0005-remove-powerpc64-workaround.patch @@ -0,0 +1,67 @@ +Linking currently fails on powerpc64 and powerpc64le when configured +with --without-versioned, as follows: +../src/.libs/libasound.so: undefined reference to `.__snd_pcm_hw_params_set_format_first' +(And many similar messages.) + +This appears to be due to a very old (2003) workaround for powerpc64, +(introduced by commit 06221f86) in include/alsa-symbols.h which alters +symbol names. While it was probably necessary at the time, it does not +appear to be necessary now and removing it fixes the build. + +Signed-off-by: Sam Bobroff +--- + include/alsa-symbols.h | 25 ++++--------------------- + 1 file changed, 4 insertions(+), 21 deletions(-) + +diff --git a/include/alsa-symbols.h b/include/alsa-symbols.h +index 51cb982..0cb0b9f 100644 +--- a/include/alsa-symbols.h ++++ b/include/alsa-symbols.h +@@ -29,19 +29,10 @@ + #define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post + #define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name) + +-#ifdef __powerpc64__ +-# define symbol_version(real, name, version) \ +- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version); \ +- __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@" #version) +-# define default_symbol_version(real, name, version) \ +- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version); \ +- __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@@" #version) +-#else +-# define symbol_version(real, name, version) \ +- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version) +-# define default_symbol_version(real, name, version) \ +- __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version) +-#endif ++#define symbol_version(real, name, version) \ ++__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version) ++#define default_symbol_version(real, name, version) \ ++__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version) + + #ifdef USE_VERSIONED_SYMBOLS + #define use_symbol_version(real, name, version) \ +@@ -50,13 +41,6 @@ + default_symbol_version(real, name, version) + #else + #define use_symbol_version(real, name, version) /* nothing */ +-#ifdef __powerpc64__ +-#define use_default_symbol_version(real, name, version) \ +- __asm__ (".weak " ASM_NAME(#name)); \ +- __asm__ (".weak ." ASM_NAME(#name)); \ +- __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)); \ +- __asm__ (".set ." ASM_NAME(#name) ",." ASM_NAME(#real)) +-#else + #if defined(__alpha__) || defined(__mips__) + #define use_default_symbol_version(real, name, version) \ + __asm__ (".weak " ASM_NAME(#name)); \ +@@ -67,6 +51,5 @@ + __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)) + #endif + #endif +-#endif + + #endif /* __ALSA_SYMBOLS_H */ +-- +2.10.0.297.gf6727b0 + diff --git a/package/alsa-lib/0006-ucm-parser-needs-limits.h.patch b/package/alsa-lib/0006-ucm-parser-needs-limits.h.patch new file mode 100644 index 0000000000..b47dedb3a9 --- /dev/null +++ b/package/alsa-lib/0006-ucm-parser-needs-limits.h.patch @@ -0,0 +1,30 @@ +From 13a796b4bd00defa9f9297fd23d508b430682aed Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Wed, 21 Dec 2016 19:41:26 -0300 +Subject: [PATCH] ucm: parser needs limits.h + +It's using PATH_MAX which is defined there, otherwise the build fails on +musl libc. + +Signed-off-by: Gustavo Zacarias +--- +Patch status: sent to alsa-devel ML. + + src/ucm/parser.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/ucm/parser.c b/src/ucm/parser.c +index c98373a..f520abc 100644 +--- a/src/ucm/parser.c ++++ b/src/ucm/parser.c +@@ -32,6 +32,7 @@ + + #include "ucm_local.h" + #include ++#include + + /** The name of the environment variable containing the UCM directory */ + #define ALSA_CONFIG_UCM_VAR "ALSA_CONFIG_UCM" +-- +2.10.2 + diff --git a/package/alsa-lib/alsa-lib.hash b/package/alsa-lib/alsa-lib.hash index 49be64392d..6f56a76796 100644 --- a/package/alsa-lib/alsa-lib.hash +++ b/package/alsa-lib/alsa-lib.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8ac76c3144ed2ed49da7622ab65ac5415205913ccbedde877972383cbc234269 alsa-lib-1.1.1.tar.bz2 +sha256 71282502184c592c1a008e256c22ed0ba5728ca65e05273ceb480c70f515969c alsa-lib-1.1.3.tar.bz2 diff --git a/package/alsa-lib/alsa-lib.mk b/package/alsa-lib/alsa-lib.mk index ae0377db3e..5957568aa3 100644 --- a/package/alsa-lib/alsa-lib.mk +++ b/package/alsa-lib/alsa-lib.mk @@ -4,11 +4,11 @@ # ################################################################################ -ALSA_LIB_VERSION = 1.1.1 +ALSA_LIB_VERSION = 1.1.3 ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2 ALSA_LIB_SITE = ftp://ftp.alsa-project.org/pub/lib -ALSA_LIB_LICENSE = LGPLv2.1+ -ALSA_LIB_LICENSE_FILES = COPYING +ALSA_LIB_LICENSE = LGPLv2.1+ (library), GPLv2+ (aserver) +ALSA_LIB_LICENSE_FILES = COPYING aserver/COPYING ALSA_LIB_INSTALL_STAGING = YES ALSA_LIB_CFLAGS = $(TARGET_CFLAGS) ALSA_LIB_AUTORECONF = YES @@ -62,10 +62,6 @@ else ALSA_LIB_CONF_OPTS += --disable-python endif -ifeq ($(BR2_SOFT_FLOAT),y) -ALSA_LIB_CONF_OPTS += --with-softfloat -endif - ifeq ($(BR2_bfin),y) # blackfin external toolchains don't have versionsort. Fake it using alphasort # instead diff --git a/package/alsa-utils/alsa-utils.hash b/package/alsa-utils/alsa-utils.hash index 89eb51018c..1add17e08b 100644 --- a/package/alsa-utils/alsa-utils.hash +++ b/package/alsa-utils/alsa-utils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 89757c9abaf420831b088fce354d492acc170bd02bb50eb7392c175f594b8041 alsa-utils-1.1.1.tar.bz2 +sha256 127217a54eea0f9a49700a2f239a2d4f5384aa094d68df04a8eb80132eb6167c alsa-utils-1.1.3.tar.bz2 diff --git a/package/alsa-utils/alsa-utils.mk b/package/alsa-utils/alsa-utils.mk index a04d2cb862..a72191e9b2 100644 --- a/package/alsa-utils/alsa-utils.mk +++ b/package/alsa-utils/alsa-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -ALSA_UTILS_VERSION = 1.1.1 +ALSA_UTILS_VERSION = 1.1.3 ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2 ALSA_UTILS_SITE = ftp://ftp.alsa-project.org/pub/utils ALSA_UTILS_LICENSE = GPLv2 @@ -23,6 +23,7 @@ ALSA_UTILS_CONF_ENV = \ ALSA_UTILS_CONF_OPTS = \ --disable-xmlto \ + --disable-rst2man \ --with-curses=$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncursesw,ncurses) ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) diff --git a/package/am335x-pru-package/am335x-pru-package.hash b/package/am335x-pru-package/am335x-pru-package.hash new file mode 100644 index 0000000000..36671b488a --- /dev/null +++ b/package/am335x-pru-package/am335x-pru-package.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 2a902f825ccc1885c5dccd83e1ccee104aa30e601c9964a24f49459f76f674b9 am335x-pru-package-5f374ad57cc195f28bf5e585c3d446aba6ee7096.tar.gz diff --git a/package/am335x-pru-package/am335x-pru-package.mk b/package/am335x-pru-package/am335x-pru-package.mk index a4ff201c21..d6bffb4f51 100644 --- a/package/am335x-pru-package/am335x-pru-package.mk +++ b/package/am335x-pru-package/am335x-pru-package.mk @@ -4,7 +4,7 @@ # ################################################################################ -AM335X_PRU_PACKAGE_VERSION = 506e074859891a2b350eb4f5fcb451c4961410ea +AM335X_PRU_PACKAGE_VERSION = 5f374ad57cc195f28bf5e585c3d446aba6ee7096 AM335X_PRU_PACKAGE_SITE = $(call github,beagleboard,am335x_pru_package,$(AM335X_PRU_PACKAGE_VERSION)) AM335X_PRU_PACKAGE_LICENSE = BSD-3c AM335X_PRU_PACKAGE_LICENSE_FILES = pru_sw/utils/LICENCE.txt @@ -19,19 +19,19 @@ AM335X_MAKE_TARGET = release $(if $(BR2_STATIC_LIBS),,sorelease) endif define AM335X_PRU_PACKAGE_BUILD_CMDS - $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" \ -C $(@D)/pru_sw/app_loader/interface $(AM335X_MAKE_TARGET) endef # 'install' installs whatever was built, and our patch removes the dependency # on the release build, so we can use it to install whatever we built above. define AM335X_PRU_PACKAGE_INSTALL_STAGING_CMDS - $(MAKE1) DESTDIR="$(STAGING_DIR)" PREFIX="/usr" \ + $(TARGET_MAKE_ENV) $(MAKE1) DESTDIR="$(STAGING_DIR)" PREFIX="/usr" \ -C $(@D)/pru_sw/app_loader/interface install endef define AM335X_PRU_PACKAGE_INSTALL_TARGET_CMDS - $(MAKE1) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" \ + $(TARGET_MAKE_ENV) $(MAKE1) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" \ -C $(@D)/pru_sw/app_loader/interface install endef diff --git a/package/am33x-cm3/Config.in b/package/am33x-cm3/Config.in index 060d0efc8d..d33dfaa613 100644 --- a/package/am33x-cm3/Config.in +++ b/package/am33x-cm3/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_AM33X_CM3 bool "am33x-cm3" depends on BR2_arm # only relevant for TI am335x + depends on BR2_BINFMT_ELF # assumes the compiler builds ELF file help Cortex-M3 binary blob for suspend-resume on am335x diff --git a/package/am33x-cm3/am33x-cm3.mk b/package/am33x-cm3/am33x-cm3.mk index 01cb9a02ca..629a83238c 100644 --- a/package/am33x-cm3/am33x-cm3.mk +++ b/package/am33x-cm3/am33x-cm3.mk @@ -14,7 +14,7 @@ AM33X_CM3_LICENSE_FILES = License.txt # The build command below will use the standard cross-compiler (normally # build for Cortex-A8, to build the FW for the Cortex-M3. define AM33X_CM3_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all endef # Not all of the firmware files are used diff --git a/package/amd-catalyst/0001-Add-support-for-Linux-4.0.patch b/package/amd-catalyst/0001-Add-support-for-Linux-4.0.patch new file mode 100644 index 0000000000..a0db9621a1 --- /dev/null +++ b/package/amd-catalyst/0001-Add-support-for-Linux-4.0.patch @@ -0,0 +1,45 @@ +From c35482bc0cc56b40263b74c3e58e42be867fd9f2 Mon Sep 17 00:00:00 2001 +From: Alberto Milone +Date: Thu, 17 Sep 2015 15:41:46 +0200 +Subject: [PATCH] Add support for Linux 4.0 + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 5 +++++ + common/lib/modules/fglrx/build_mod/kcl_str.c | 4 ++++ + 2 files changed, 9 insertions(+) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index 677565d..6017e89 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -285,6 +285,11 @@ MODULE_DEVICE_TABLE(pci, fglrx_pci_table); + + MODULE_INFO(supported, "external"); + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 20, 0) ++#define read_cr4() __read_cr4() ++#define write_cr4(cr4) __write_cr4(cr4) ++#endif ++ + /* globals constants */ + const char* KCL_SYSINFO_OsVersionString = UTS_RELEASE; + const unsigned int KCL_SYSINFO_PageSize = PAGE_SIZE; +diff --git a/common/lib/modules/fglrx/build_mod/kcl_str.c b/common/lib/modules/fglrx/build_mod/kcl_str.c +index 2d89eb0..bacdb69 100755 +--- a/common/lib/modules/fglrx/build_mod/kcl_str.c ++++ b/common/lib/modules/fglrx/build_mod/kcl_str.c +@@ -42,6 +42,10 @@ + #include "kcl_type.h" + #include "kcl_str.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 20, 0) ++#define strnicmp strncasecmp ++#endif ++ + /** \brief Fill memory with a constant byte + * \param s Pointer to memory + * \param c Initializing value +-- +2.8.1 + diff --git a/package/amd-catalyst/0002-Add-support-for-Linux-4.1.patch b/package/amd-catalyst/0002-Add-support-for-Linux-4.1.patch new file mode 100644 index 0000000000..cc95916e1e --- /dev/null +++ b/package/amd-catalyst/0002-Add-support-for-Linux-4.1.patch @@ -0,0 +1,31 @@ +From e9c8ccb4c8c842042542b792c51f9a7ec6c85e06 Mon Sep 17 00:00:00 2001 +From: Alberto Milone +Date: Thu, 17 Sep 2015 15:44:59 +0200 +Subject: [PATCH] Add support for Linux 4.1 + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index 6017e89..94778f1 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -3508,10 +3508,12 @@ int ATI_API_CALL KCL_InstallInterruptHandler( + KCL_PUB_InterruptHandlerWrap, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) + ((useMSI) ? (SA_INTERRUPT) : (SA_SHIRQ)), +-#else ++#elif LINUX_VERSION_CODE < KERNEL_VERSION(4,1,0) + //when MSI enabled. keep irq disabled when calling the action handler, + //exclude this IRQ from irq balancing (only on one CPU) + ((useMSI) ? (IRQF_DISABLED) : (IRQF_SHARED)), ++#else ++ ((useMSI) ? (0x0) : (IRQF_SHARED)), + #endif + dev_name, + context); +-- +2.8.1 + diff --git a/package/amd-catalyst/0003-Add-support-for-Linux-4.2.patch b/package/amd-catalyst/0003-Add-support-for-Linux-4.2.patch new file mode 100644 index 0000000000..7458162965 --- /dev/null +++ b/package/amd-catalyst/0003-Add-support-for-Linux-4.2.patch @@ -0,0 +1,121 @@ +From e2e6c2dac2a0311a022208dd289374b832538329 Mon Sep 17 00:00:00 2001 +From: Alberto Milone +Date: Tue, 14 Jul 2015 12:56:37 +0200 +Subject: [PATCH] Add support for Linux 4.2 + +Deal with the FPU code renaming + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 38 ++++++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index 94778f1..749ea51 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -191,9 +191,17 @@ + #include + #include + #include ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + #include "asm/i387.h" ++#else ++#include ++#endif + #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0) ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + #include ++#else ++#include ++#endif + #endif + + #include "firegl_public.h" +@@ -1711,6 +1719,9 @@ void ATI_API_CALL KCL_SetCurrentProcessState(KCL_ENUM_ProcessState state) + + #if defined(__i386__) + #ifndef __HAVE_ARCH_CMPXCHG ++#ifndef __xg ++#define __xg(x) ((volatile long *)(x)) ++#endif + static inline + unsigned long __fgl_cmpxchg(volatile void *ptr, unsigned long old, + unsigned long new, int size) +@@ -1747,7 +1758,11 @@ unsigned long ATI_API_CALL kcl__cmpxchg(volatile void *ptr, unsigned long old, + unsigned long new, int size) + { + #ifndef __HAVE_ARCH_CMPXCHG ++#if defined(__i386__) + return __fgl_cmpxchg(ptr,old,new,size); ++#elif defined(__x86_64__) ++ return cmpxchg((unsigned long*)ptr,old,new); ++#endif + #else + /* On kernel version 2.6.34 passing a variable or unsupported size + * argument to the __cmpxchg macro causes the default-clause of a +@@ -6443,21 +6458,36 @@ static int KCL_fpu_save_init(struct task_struct *tsk) + struct fpu *fpu = &tsk->thread.fpu; + + if(static_cpu_has(X86_FEATURE_XSAVE)) { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + fpu_xsave(fpu); + if (!(fpu->state->xsave.xsave_hdr.xstate_bv & XSTATE_FP)) ++#else ++ copy_xregs_to_kernel(&fpu->state.xsave); ++ if (!(fpu->state.xsave.header.xfeatures & XSTATE_FP)) ++#endif + return 1; + } else if (static_cpu_has(X86_FEATURE_FXSR)) { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + fpu_fxsave(fpu); ++#else ++ copy_fxregs_to_kernel(fpu); ++#endif + } else { + asm volatile("fnsave %[fx]; fwait" ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + : [fx] "=m" (fpu->state->fsave)); ++#else ++ : [fx] "=m" (fpu->state.fsave)); ++#endif + return 0; + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + if (unlikely(fpu->state->fxsave.swd & X87_FSW_ES)) { + asm volatile("fnclex"); + return 0; + } ++#endif + return 1; + } + #endif +@@ -6469,8 +6499,12 @@ static int KCL_fpu_save_init(struct task_struct *tsk) + void ATI_API_CALL KCL_fpu_begin(void) + { + #ifdef CONFIG_X86_64 ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + kernel_fpu_begin(); + #else ++ __kernel_fpu_begin(); ++#endif ++#else + #ifdef TS_USEDFPU + struct thread_info *cur_thread = current_thread_info(); + struct task_struct *cur_task = get_current(); +@@ -6515,7 +6549,11 @@ void ATI_API_CALL KCL_fpu_begin(void) + */ + void ATI_API_CALL KCL_fpu_end(void) + { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) + kernel_fpu_end(); ++#else ++ __kernel_fpu_end(); ++#endif + } + + /** Create new directory entry under "/proc/...." +-- +2.8.1 + diff --git a/package/amd-catalyst/0004-Use-fpregs_active-instead-of-has_fpu.patch b/package/amd-catalyst/0004-Use-fpregs_active-instead-of-has_fpu.patch new file mode 100644 index 0000000000..4d375b8ad8 --- /dev/null +++ b/package/amd-catalyst/0004-Use-fpregs_active-instead-of-has_fpu.patch @@ -0,0 +1,33 @@ +From 7120f00015570a2e4d9b6532731960d509c71cba Mon Sep 17 00:00:00 2001 +From: Alberto Milone +Date: Thu, 17 Sep 2015 15:48:30 +0200 +Subject: [PATCH] Use fpregs_active instead of has_fpu + +This is for Linux 4.2 + +Thanks to Tim Gardner for the patch. + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index 749ea51..4c1f9a5 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -6528,7 +6528,11 @@ void ATI_API_CALL KCL_fpu_begin(void) + /* The thread structure is changed with the commit below for kernel 3.3: + * https://github.com/torvalds/linux/commit/7e16838d94b566a17b65231073d179bc04d590c8 + */ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0) ++ if (cur_task->thread.fpu.fpregs_active) ++#else + if (cur_task->thread.fpu.has_fpu) ++#endif + #else + if (cur_task->thread.has_fpu) + #endif +-- +2.8.1 + diff --git a/package/amd-catalyst/0005-Use-a-local-copy-of-copy_xregs_to_kernel.patch b/package/amd-catalyst/0005-Use-a-local-copy-of-copy_xregs_to_kernel.patch new file mode 100644 index 0000000000..c9513ef188 --- /dev/null +++ b/package/amd-catalyst/0005-Use-a-local-copy-of-copy_xregs_to_kernel.patch @@ -0,0 +1,79 @@ +From eb703737be5c91c1a0817351db8ec152c523c85d Mon Sep 17 00:00:00 2001 +From: Alberto Milone +Date: Thu, 17 Sep 2015 15:49:46 +0200 +Subject: [PATCH] Use a local copy of copy_xregs_to_kernel + +This is needed for Linux 4.2. + +Thanks to Tim Gardner for the patch. + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 44 +++++++++++++++++++++- + 1 file changed, 43 insertions(+), 1 deletion(-) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index 4c1f9a5..bb67bba 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -6443,6 +6443,48 @@ int ATI_API_CALL kcl_sscanf(const char * buf, const char * fmt, ...) + return i; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0) ++/* ++ * Save processor xstate to xsave area. ++ */ ++static void _copy_xregs_to_kernel(struct xregs_state *xstate) ++{ ++ u64 mask = -1; ++ u32 lmask = mask; ++ u32 hmask = mask >> 32; ++ int err = 0; ++ ++ /*WARN_ON(!alternatives_patched);*/ ++ ++ /* ++ * If xsaves is enabled, xsaves replaces xsaveopt because ++ * it supports compact format and supervisor states in addition to ++ * modified optimization in xsaveopt. ++ * ++ * Otherwise, if xsaveopt is enabled, xsaveopt replaces xsave ++ * because xsaveopt supports modified optimization which is not ++ * supported by xsave. ++ * ++ * If none of xsaves and xsaveopt is enabled, use xsave. ++ */ ++ alternative_input_2( ++ "1:"XSAVE, ++ XSAVEOPT, ++ X86_FEATURE_XSAVEOPT, ++ XSAVES, ++ X86_FEATURE_XSAVES, ++ [xstate] "D" (xstate), "a" (lmask), "d" (hmask) : ++ "memory"); ++ asm volatile("2:\n\t" ++ xstate_fault(err) ++ : "0" (err) ++ : "memory"); ++ ++ /* We should never fault when copying to a kernel buffer: */ ++ WARN_ON_FPU(err); ++} ++#endif ++ + /** \brief Generate UUID + * \param buf pointer to the generated UUID + * \return None +@@ -6462,7 +6504,7 @@ static int KCL_fpu_save_init(struct task_struct *tsk) + fpu_xsave(fpu); + if (!(fpu->state->xsave.xsave_hdr.xstate_bv & XSTATE_FP)) + #else +- copy_xregs_to_kernel(&fpu->state.xsave); ++ _copy_xregs_to_kernel(&fpu->state.xsave); + if (!(fpu->state.xsave.header.xfeatures & XSTATE_FP)) + #endif + return 1; +-- +2.8.1 + diff --git a/package/amd-catalyst/0006-Add-support-for-Linux-4.4.patch b/package/amd-catalyst/0006-Add-support-for-Linux-4.4.patch new file mode 100644 index 0000000000..104e2c599d --- /dev/null +++ b/package/amd-catalyst/0006-Add-support-for-Linux-4.4.patch @@ -0,0 +1,78 @@ +From 54b230e26a1889c08507e791ab043f8a4b4ff771 Mon Sep 17 00:00:00 2001 +From: Romain Perier +Date: Thu, 7 Jul 2016 14:40:53 +0200 +Subject: [PATCH] Add support for Linux 4.4 + +It fixes various things like the use of seq_printf because its API +changed. It also replaces the call to mtrr_add and mtrr_del by +arch_phys_wc_add and arch_phys_wc_del because these symbols are +no longer exported for Linux >= 4.3.x. + +Signed-off-by: Romain Perier +--- + common/lib/modules/fglrx/build_mod/firegl_public.c | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/common/lib/modules/fglrx/build_mod/firegl_public.c b/common/lib/modules/fglrx/build_mod/firegl_public.c +index bb67bba..b4b2d30 100755 +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -636,9 +636,16 @@ static int firegl_major_proc_read(struct seq_file *m, void* data) + + len = snprintf(buf, request, "%d\n", major); + #else ++ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0) ++ seq_printf(m, "%d\n", major); ++ len = 0; ++#else + len = seq_printf(m, "%d\n", major); + #endif + ++#endif ++ + KCL_DEBUG1(FN_FIREGL_PROC, "return len=%i\n",len); + + return len; +@@ -3432,7 +3439,11 @@ int ATI_API_CALL KCL_MEM_MTRR_Support(void) + int ATI_API_CALL KCL_MEM_MTRR_AddRegionWc(unsigned long base, unsigned long size) + { + #ifdef CONFIG_MTRR ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0) ++ return arch_phys_wc_add(base, size); ++#else + return mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1); ++#endif + #else /* !CONFIG_MTRR */ + return -EPERM; + #endif /* !CONFIG_MTRR */ +@@ -3441,7 +3452,12 @@ int ATI_API_CALL KCL_MEM_MTRR_AddRegionWc(unsigned long base, unsigned long size + int ATI_API_CALL KCL_MEM_MTRR_DeleteRegion(int reg, unsigned long base, unsigned long size) + { + #ifdef CONFIG_MTRR ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0) ++ arch_phys_wc_del(reg); ++ return 0; ++#else + return mtrr_del(reg, base, size); ++#endif + #else /* !CONFIG_MTRR */ + return -EPERM; + #endif /* !CONFIG_MTRR */ +@@ -6505,8 +6521,13 @@ static int KCL_fpu_save_init(struct task_struct *tsk) + if (!(fpu->state->xsave.xsave_hdr.xstate_bv & XSTATE_FP)) + #else + _copy_xregs_to_kernel(&fpu->state.xsave); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0) ++ if (!(fpu->state.xsave.header.xfeatures & XFEATURE_MASK_FP)) ++#else + if (!(fpu->state.xsave.header.xfeatures & XSTATE_FP)) + #endif ++ ++#endif + return 1; + } else if (static_cpu_has(X86_FEATURE_FXSR)) { + #if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0) +-- +2.8.1 + diff --git a/package/amd-catalyst/0007-remove-gpl-symbols.patch b/package/amd-catalyst/0007-remove-gpl-symbols.patch new file mode 100644 index 0000000000..d0094b0934 --- /dev/null +++ b/package/amd-catalyst/0007-remove-gpl-symbols.patch @@ -0,0 +1,54 @@ +Author: Manuel Rüger +Date: Sat, 2 Jan 2016 17:24:30 +0100 +URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/x11-drivers/ati-drivers/files?id=179aa11ed2f1bd79cf1b190263c3a7a07279fc50 + +Signed-off-by: Romain Perier +--- +--- a/common/lib/modules/fglrx/build_mod/firegl_public.c 2015-09-18 23:57:02.000000000 -0400 ++++ b/common/lib/modules/fglrx/build_mod/firegl_public.c 2015-09-18 23:57:11.000000000 -0400 +@@ -136,7 +136,6 @@ + #include + #include + #include +-#include // for flush_tlb_page + #include + #ifdef CONFIG_MTRR + #include +@@ -251,6 +250,26 @@ + #define WRITE_CR4(x) write_cr4(x) + #endif + ++#define __flush_tlb_one(addr) asm volatile("invlpg (%0)" ::"r" (addr) : "memory") ++#define __flush_tlb() native_write_cr3(native_read_cr3()) ++ ++static inline void __flush_tlb_all(void) ++{ ++ if (cpu_has_pge) ++ { ++ unsigned long flags, cr4; ++ raw_local_irq_save(flags); ++ cr4 = native_read_cr4(); ++ native_write_cr4(cr4 & ~X86_CR4_PGE); ++ native_write_cr4(cr4); ++ raw_local_irq_restore(flags); ++ } ++ else ++ { ++ __flush_tlb(); ++ } ++} ++ + // ============================================================ + /* globals */ + +--- a/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2015-09-19 00:43:35.000000000 -0400 ++++ b/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2015-09-19 00:43:48.000000000 -0400 +@@ -868,7 +868,7 @@ void ATI_API_CALL KCL_ACPI_No_Hotplug(vo + #elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) + if(pdev) + { +-#if (UTS_UBUNTU_RELEASE_ABI < 0 && LINUX_VERSION_CODE < KERNEL_VERSION(4,1,3)) || (UTS_UBUNTU_RELEASE_ABI >= 0 && UTS_UBUNTU_RELEASE_ABI < 26 && LINUX_VERSION_CODE <= KERNEL_VERSION(3,19,8)) ++#if 0 && (UTS_UBUNTU_RELEASE_ABI < 0 && LINUX_VERSION_CODE < KERNEL_VERSION(4,1,3)) || (UTS_UBUNTU_RELEASE_ABI >= 0 && UTS_UBUNTU_RELEASE_ABI < 26 && LINUX_VERSION_CODE <= KERNEL_VERSION(3,19,8)) + pci_ignore_hotplug(pdev); + #else + pdev->ignore_hotplug = 1; diff --git a/package/amd-catalyst/20-fglrx.conf b/package/amd-catalyst/20-fglrx.conf new file mode 100644 index 0000000000..d83ff582f6 --- /dev/null +++ b/package/amd-catalyst/20-fglrx.conf @@ -0,0 +1,4 @@ +Section "Device" + Identifier "AMD Radeon GPU" + Driver "fglrx" +EndSection diff --git a/package/amd-catalyst/Config.in b/package/amd-catalyst/Config.in new file mode 100644 index 0000000000..85551ed803 --- /dev/null +++ b/package/amd-catalyst/Config.in @@ -0,0 +1,81 @@ +comment "amd-catalyst needs a glibc toolchain" + depends on BR2_i386 || BR2_x86_64 + depends on !BR2_TOOLCHAIN_USES_GLIBC + +config BR2_PACKAGE_AMD_CATALYST + bool "amd-catalyst" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_TOOLCHAIN_USES_GLIBC + help + The binary-only driver blob for AMD cards. + This driver supports AMD Radeon HD 5xxx and newer graphics + cards. + + http://www.amd.com/ + +if BR2_PACKAGE_AMD_CATALYST + +comment "amd-catalyst X.org drivers needs a modular Xorg server <= 1.17" + depends on !BR2_PACKAGE_XORG7 \ + || !BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR \ + || !BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + +config BR2_PACKAGE_AMD_CATALYST_XORG + bool "X.org drivers" + default y + depends on BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR + depends on BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + select BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX + select BR2_PACKAGE_ACPID # runtime + select BR2_PACKAGE_XLIB_LIBX11 # runtime + select BR2_PACKAGE_XLIB_LIBXEXT # runtime + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE # runtime + # This package does not have standard GL headers + select BR2_PACKAGE_MESA3D_HEADERS + select BR2_PACKAGE_HAS_LIBGL + +if BR2_PACKAGE_AMD_CATALYST_XORG + +config BR2_PACKAGE_PROVIDES_LIBGL + default "amd-catalyst" + +config BR2_PACKAGE_AMD_CATALYST_CMDLINE_TOOLS + bool "command-line configuration tools" + help + Build and install the AMD command line tools. + +comment "Catalyst Control Center needs Qt4 with X11 and PNG support" + depends on !BR2_PACKAGE_QT || !BR2_PACKAGE_QT_X11 \ + || BR2_PACKAGE_QT_NOPNG + +config BR2_PACKAGE_AMD_CATALYST_CCCLE + bool "Catalyst Control Center" + depends on BR2_PACKAGE_QT + depends on BR2_PACKAGE_QT_X11 + depends on !BR2_PACKAGE_QT_NOPNG + select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps-ng + select BR2_PACKAGE_PROCPS_NG # runtime + select BR2_PACKAGE_QT_ACCESSIBILITY + help + Installs the Catalyst Control Center, a Qt graphical tool to + control AMD graphics accelerators. + +endif + +comment "amd-catalyst kernel module needs a kernel to be built" + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_AMD_CATALYST_MODULE + bool "fglrx kernel module" + depends on BR2_LINUX_KERNEL + help + Builds and install the fglrx kernel module + +config BR2_PACKAGE_AMD_CATALYST_OPENCL + bool "OpenCL support" + help + Installs the OpenCL binary blobs and the ICD profile + for GPGPU computing. + +endif # BR2_PACKAGE_AMD_CATALYST diff --git a/package/amd-catalyst/amd-catalyst.hash b/package/amd-catalyst/amd-catalyst.hash new file mode 100644 index 0000000000..9f9b0a3149 --- /dev/null +++ b/package/amd-catalyst/amd-catalyst.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 bf3e6e7d5c51db3d075410a3f116f865b82823debc1d66698d187249feec6a91 amd-catalyst-15.9-linux-installer-15.201.1151-x86.x86_64.zip diff --git a/package/amd-catalyst/amd-catalyst.mk b/package/amd-catalyst/amd-catalyst.mk new file mode 100644 index 0000000000..5636f81c9d --- /dev/null +++ b/package/amd-catalyst/amd-catalyst.mk @@ -0,0 +1,174 @@ +################################################################################ +# +# amd-catalyst +# +################################################################################ + +AMD_CATALYST_VERSION = 15.9 +AMD_CATALYST_VERBOSE_VER = 15.201.1151 +AMD_CATALYST_SITE = http://www2.ati.com/drivers/linux +AMD_CATALYST_DL_OPTS = --referer='http://support.amd.com' +AMD_CATALYST_SOURCE = amd-catalyst-$(AMD_CATALYST_VERSION)-linux-installer-$(AMD_CATALYST_VERBOSE_VER)-x86.x86_64.zip +AMD_CATALYST_LICENSE = AMD Software License +AMD_CATALYST_LICENSE_FILES = LICENSE.TXT +AMD_CATALYST_INSTALL_STAGING = YES +AMD_CATALYST_SUFFIX = $(if $(BR2_x86_64),_64) +AMD_CATALYST_ARCH_DIR = $(@D)/arch/x86$(AMD_CATALYST_SUFFIX) +AMD_CATALYST_LIB_SUFFIX = $(if $(BR2_x86_64),64) + + +define AMD_CATALYST_EXTRACT_CMDS + unzip -q $(DL_DIR)/$(AMD_CATALYST_SOURCE) -d $(@D) + $(SHELL) $(@D)/AMD-Catalyst-$(AMD_CATALYST_VERSION)-Linux-installer-$(AMD_CATALYST_VERBOSE_VER)-x86.x86_64.run --extract $(@D) +endef + +ifeq ($(BR2_PACKAGE_AMD_CATALYST_MODULE),y) +AMD_CATALYST_MODULE_SUBDIRS = common/lib/modules/fglrx/build_mod/2.6.x +AMD_CATALYST_MODULE_MAKE_OPTS = \ + CFLAGS_MODULE="-DCOMPAT_ALLOC_USER_SPACE=arch_compat_alloc_user_space" + +define AMD_CATALYST_PREPARE_MODULE + # The Makefile expects to have source in the folder 2.6.x + cp $(@D)/common/lib/modules/fglrx/build_mod/*.{c,h} \ + $(@D)/common/lib/modules/fglrx/build_mod/2.6.x + # This static lib is required during the link + cp $(@D)/arch/x86$(AMD_CATALYST_SUFFIX)/lib/modules/fglrx/build_mod/libfglrx_ip.a \ + $(@D)/common/lib/modules/fglrx/build_mod/2.6.x +endef + +AMD_CATALYST_POST_PATCH_HOOKS += AMD_CATALYST_PREPARE_MODULE + +$(eval $(kernel-module)) +endif + +ifeq ($(BR2_PACKAGE_AMD_CATALYST_OPENCL),y) + +AMD_CATALYST_OCL_SUFFIX = $(if $(BR2_x86_64),64,32) +AMD_CATALYST_OPENCL_FILES = \ + libOpenCL.so.1 \ + libaticalcl.so \ + libamdocl$(AMD_CATALYST_OCL_SUFFIX).so \ + libamdocl12cl$(AMD_CATALYST_OCL_SUFFIX).so + +define AMD_CATALYST_INSTALL_OPENCL + $(foreach f,$(AMD_CATALYST_OPENCL_FILES), \ + $(INSTALL) -D -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/lib$(AMD_CATALYST_LIB_SUFFIX)/$(f) $(TARGET_DIR)/usr/lib/$(f) + ) + ln -sf libOpenCL.so.1 \ + $(TARGET_DIR)/usr/lib/libOpenCL.so + $(INSTALL) -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/bin/clinfo \ + $(TARGET_DIR)/usr/bin/clinfo + $(INSTALL) -D -m 0644 $(AMD_CATALYST_ARCH_DIR)/etc/OpenCL/vendors/amdocl$(AMD_CATALYST_OCL_SUFFIX).icd \ + $(TARGET_DIR)/etc/OpenCL/vendors/amdocl$(AMD_CATALYST_OCL_SUFFIX).icd +endef + +endif + +ifeq ($(BR2_PACKAGE_AMD_CATALYST_XORG), y) + +# GL headers are needed by any package that wants to use libgl, so they need to +# be installed before any user of it. The only way to do so is to have this +# package depends on mesa3d-headers. +AMD_CATALYST_DEPENDENCIES += mesa3d-headers +AMD_CATALYST_PROVIDES = libgl +AMD_CATALYST_X11R6_LIB = $(@D)/xpic$(if $(BR2_x86_64),_64a)/usr/X11R6/lib$(AMD_CATALYST_LIB_SUFFIX) + +define AMD_CATALYST_INSTALL_GL_LIBS + $(INSTALL) -m 0644 $(AMD_CATALYST_ARCH_DIR)/usr/X11R6/lib$(AMD_CATALYST_LIB_SUFFIX)/fglrx/fglrx-libGL.so.1.2 \ + $(1)/usr/lib + ln -sf fglrx-libGL.so.1.2 $(1)/usr/lib/libGL.so.1.2 + ln -sf fglrx-libGL.so.1.2 $(1)/usr/lib/libGL.so.1 + ln -sf fglrx-libGL.so.1.2 $(1)/usr/lib/libGL.so +endef + +define AMD_CATALYST_INSTALL_STAGING_XORG + $(call AMD_CATALYST_INSTALL_GL_LIBS,$(STAGING_DIR)) + $(INSTALL) -D -m 0644 package/amd-catalyst/gl.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/gl.pc +endef + +AMD_CATALYST_XORG_DRIVERS_FILES = modules/amdxmm.so \ + modules/drivers/fglrx_drv.so \ + modules/linux/libfglrxdrm.so + +define AMD_CATALYST_INSTALL_XORG + # Xorg drivers + $(foreach f,$(AMD_CATALYST_XORG_DRIVERS_FILES), \ + $(INSTALL) -D -m 0755 $(AMD_CATALYST_X11R6_LIB)/$(f) \ + $(TARGET_DIR)/usr/lib/xorg/$(f) + ) + + # Xorg is not able to detect the driver automatically + $(INSTALL) -D -m 0644 package/amd-catalyst/20-fglrx.conf \ + $(TARGET_DIR)/etc/X11/xorg.conf.d/20-fglrx.conf + + + # Common files: containing binary profiles about GPUs, + # required by the fglrx_drv xorg driver + $(INSTALL) -d $(TARGET_DIR)/etc/ati + $(INSTALL) -m 0644 $(@D)/common/etc/ati/* $(TARGET_DIR)/etc/ati/ + + # DRI and GLX xorg modules: by default DRI is activated, + # these modules are required by the fglrx_drv.so xorg driver + $(INSTALL) -D -m 0644 $(AMD_CATALYST_ARCH_DIR)/usr/X11R6/lib$(AMD_CATALYST_LIB_SUFFIX)/modules/dri/fglrx_dri.so \ + $(TARGET_DIR)/usr/lib/dri/fglrx_dri.so + $(INSTALL) -D -m 0644 $(AMD_CATALYST_X11R6_LIB)/modules/extensions/fglrx/fglrx-libglx.so \ + $(TARGET_DIR)/usr/lib/xorg/modules/extensions/libglx.so + $(INSTALL) -D -m 0644 $(AMD_CATALYST_X11R6_LIB)/modules/glesx.so \ + $(TARGET_DIR)/usr/lib/xorg/modules/glesx.so + + # Userspace GL libraries, also runtime dependency of most of the cmdline + # tools + $(INSTALL) -m 0644 $(AMD_CATALYST_ARCH_DIR)/usr/X11R6/lib$(AMD_CATALYST_LIB_SUFFIX)/*.so \ + $(TARGET_DIR)/usr/lib/ + $(call AMD_CATALYST_INSTALL_GL_LIBS,$(TARGET_DIR)) + + # Runtime dependency required by libfglrxdrm.so + $(INSTALL) -m 0644 $(AMD_CATALYST_ARCH_DIR)/usr/lib$(AMD_CATALYST_LIB_SUFFIX)/libatiuki.so.1.0 \ + $(TARGET_DIR)/usr/lib/ + ln -sf libatiuki.so.1.0 \ + $(TARGET_DIR)/usr/lib/libatiuki.so.1 +endef + +endif + +ifeq ($(BR2_PACKAGE_AMD_CATALYST_CMDLINE_TOOLS), y) +AMD_CATALYST_CMDLINE_TOOLS_FILES = \ + atiode \ + atiodcli \ + fgl_glxgears \ + aticonfig \ + amd-console-helper \ + fglrxinfo + +define AMD_CATALYST_INSTALL_CMDLINE_TOOLS + $(INSTALL) -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/sbin/atieventsd \ + $(TARGET_DIR)/usr/sbin + $(foreach f,$(AMD_CATALYST_CMDLINE_TOOLS_FILES), \ + $(INSTALL) -D -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/X11R6/bin/$(f) \ + $(TARGET_DIR)/usr/bin/$(f) + ) +endef +endif + +ifeq ($(BR2_PACKAGE_AMD_CATALYST_CCCLE), y) +define AMD_CATALYST_INSTALL_CCCLE + $(INSTALL) -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/X11R6/bin/amdcccle \ + $(TARGET_DIR)/usr/bin/amdcccle + $(INSTALL) -m 0755 $(AMD_CATALYST_ARCH_DIR)/usr/sbin/amdnotifyui \ + $(TARGET_DIR)/usr/sbin/amdnotifyui +endef +endif + +define AMD_CATALYST_INSTALL_STAGING_CMDS + $(call AMD_CATALYST_INSTALL_STAGING_XORG) +endef + +define AMD_CATALYST_INSTALL_TARGET_CMDS + $(call AMD_CATALYST_INSTALL_XORG) + $(call AMD_CATALYST_INSTALL_CMDLINE_TOOLS) + $(call AMD_CATALYST_INSTALL_CCCLE) + $(call AMD_CATALYST_INSTALL_OPENCL) +endef + +$(eval $(generic-package)) diff --git a/package/amd-catalyst/gl.pc b/package/amd-catalyst/gl.pc new file mode 100644 index 0000000000..8729271fa0 --- /dev/null +++ b/package/amd-catalyst/gl.pc @@ -0,0 +1,12 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: gl +Description: AMD Catalyst OpenGL library +Version: 15.9 +Libs: -L${libdir} -lGL -lm -lXext -lX11 -ldl +Cflags: -I${includedir} +glx_tls: no + diff --git a/package/android-tools/0004-Fix-build-issue-with-musl.patch b/package/android-tools/0004-Fix-build-issue-with-musl.patch index e5ba0e6ec4..964eb87a6d 100644 --- a/package/android-tools/0004-Fix-build-issue-with-musl.patch +++ b/package/android-tools/0004-Fix-build-issue-with-musl.patch @@ -1,9 +1,6 @@ [PATCH] Fix build issue with musl -cdefs.h header doesn't exist in musl toolchains: -http://wiki.musl-libc.org/wiki/FAQ - -Also arpa/nameser.h doesn't use the same macro name to avoid several +arpa/nameser.h doesn't use the same macro name to avoid several inclusions. Finally had an issue with framebuffer_service.c since it was missing the @@ -26,7 +23,7 @@ diff --git a/core/adbd/arpa_nameser.h b/core/adbd/arpa_nameser.h index 438dc04..b2a28d6 100644 --- a/core/adbd/arpa_nameser.h +++ b/core/adbd/arpa_nameser.h -@@ -52,11 +52,12 @@ +@@ -52,6 +52,8 @@ #ifndef _ARPA_NAMESER_H_ #define _ARPA_NAMESER_H_ @@ -35,51 +32,12 @@ index 438dc04..b2a28d6 100644 #define BIND_4_COMPAT - #include --#include - - /* - * Revision information. This is the release date in YYYYMMDD format. -@@ -505,7 +506,9 @@ typedef enum __ns_cert_types { - #define ns_makecanon __ns_makecanon - #define ns_samename __ns_samename - --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - int ns_msg_getflag(ns_msg, int); - uint16_t ns_get16(const u_char *); - uint32_t ns_get32(const u_char *); -@@ -560,7 +563,9 @@ int ns_samedomain(const char *, const char *); - int ns_subdomain(const char *, const char *); - int ns_makecanon(const char *, char *, size_t); - int ns_samename(const char *, const char *); --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #ifdef BIND_4_COMPAT - #include "arpa_nameser_compat.h" @@ -574,4 +579,5 @@ __END_DECLS #define XLOG(...) do {} while (0) #endif +#endif /* !_ARPA_NAMESER_H */ #endif /* !_ARPA_NAMESER_H_ */ -diff --git a/core/adbd/base64.c b/core/adbd/base64.c -index 7270703..73725f5 100644 ---- a/core/adbd/base64.c -+++ b/core/adbd/base64.c -@@ -42,7 +42,6 @@ - * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. - */ - --#include - #if defined(LIBC_SCCS) && !defined(lint) - __RCSID("$NetBSD: base64.c,v 1.8 2002/11/11 01:15:17 thorpej Exp $"); - #endif /* LIBC_SCCS and not lint */ diff --git a/core/adbd/framebuffer_service.c b/core/adbd/framebuffer_service.c index 20c08d2..48e0241 100644 --- a/core/adbd/framebuffer_service.c @@ -92,140 +50,5 @@ index 20c08d2..48e0241 100644 #include #include #include -diff --git a/core/adbd/qemu_pipe.h b/core/adbd/qemu_pipe.h -index 1a67022..572a242 100644 ---- a/core/adbd/qemu_pipe.h -+++ b/core/adbd/qemu_pipe.h -@@ -16,7 +16,6 @@ - #ifndef ANDROID_INCLUDE_HARDWARE_QEMU_PIPE_H - #define ANDROID_INCLUDE_HARDWARE_QEMU_PIPE_H - --#include - #include - #include - #include -diff --git a/core/include/cutils/android_reboot.h b/core/include/cutils/android_reboot.h -index 0c79be7..2ebe1cf 100644 ---- a/core/include/cutils/android_reboot.h -+++ b/core/include/cutils/android_reboot.h -@@ -17,7 +17,9 @@ - #ifndef __CUTILS_ANDROID_REBOOT_H__ - #define __CUTILS_ANDROID_REBOOT_H__ - --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - - /* Commands */ - #define ANDROID_RB_RESTART 0xDEAD0001 -@@ -30,6 +32,8 @@ __BEGIN_DECLS - - int android_reboot(int cmd, int flags, char *arg); - --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #endif /* __CUTILS_ANDROID_REBOOT_H__ */ -diff --git a/core/include/cutils/bitops.h b/core/include/cutils/bitops.h -index 1b3b762..a7c8cab 100644 ---- a/core/include/cutils/bitops.h -+++ b/core/include/cutils/bitops.h -@@ -17,9 +17,9 @@ - #ifndef __CUTILS_BITOPS_H - #define __CUTILS_BITOPS_H - --#include -- --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - - static inline int popcount(unsigned int x) - { -@@ -36,6 +36,8 @@ static inline int popcountll(unsigned long long x) - return __builtin_popcountll(x); - } - --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #endif /* __CUTILS_BITOPS_H */ -diff --git a/core/include/cutils/partition_utils.h b/core/include/cutils/partition_utils.h -index 597df92..0da9d5b 100644 ---- a/core/include/cutils/partition_utils.h -+++ b/core/include/cutils/partition_utils.h -@@ -17,11 +17,15 @@ - #ifndef __CUTILS_PARTITION_WIPED_H__ - #define __CUTILS_PARTITION_WIPED_H__ - --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - - int partition_wiped(char *source); - void erase_footer(const char *dev_path, long long size); - --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #endif /* __CUTILS_PARTITION_WIPED_H__ */ -diff --git a/extras/ext4_utils/sha1.c b/extras/ext4_utils/sha1.c -index 463ec38..e2e29cf 100644 ---- a/extras/ext4_utils/sha1.c -+++ b/extras/ext4_utils/sha1.c -@@ -17,9 +17,6 @@ - - #define SHA1HANDSOFF /* Copies data before messing with it. */ - --#ifndef USE_MINGW --#include --#endif - #include - #include - #include -diff --git a/extras/ext4_utils/sha1.h b/extras/ext4_utils/sha1.h -index 9a8f7e3..fe3217e 100644 ---- a/extras/ext4_utils/sha1.h -+++ b/extras/ext4_utils/sha1.h -@@ -17,11 +17,6 @@ typedef unsigned char u_char; - typedef unsigned int uint32_t; - typedef unsigned int u_int32_t; - typedef unsigned int u_int; -- --#define __BEGIN_DECLS --#define __END_DECLS --#else --#include - #endif - - #define SHA1_DIGEST_LENGTH 20 -@@ -33,11 +28,15 @@ typedef struct { - u_char buffer[64]; - } SHA1_CTX; - --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - void SHA1Transform(uint32_t[5], const u_char[64]); - void SHA1Init(SHA1_CTX *); - void SHA1Update(SHA1_CTX *, const u_char *, u_int); - void SHA1Final(u_char[SHA1_DIGEST_LENGTH], SHA1_CTX *); --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #endif /* _SYS_SHA1_H_ */ -- 2.6.1 - diff --git a/package/android-tools/0005-fix-big-endian-build.patch b/package/android-tools/0006-fix-big-endian-build.patch similarity index 100% rename from package/android-tools/0005-fix-big-endian-build.patch rename to package/android-tools/0006-fix-big-endian-build.patch diff --git a/package/android-tools/0007-include-cdefs-h-when-needed.patch b/package/android-tools/0007-include-cdefs-h-when-needed.patch new file mode 100644 index 0000000000..da4ee13a17 --- /dev/null +++ b/package/android-tools/0007-include-cdefs-h-when-needed.patch @@ -0,0 +1,41 @@ +Include cdefs.h wherever it is needed + +cdefs.h is included from within a lot of glibc headers, so it almost +invariably and automagically gets pulled in with glibc. + +However, this might not be the case with other C libraries. musl does +not provide cdefs.h so it does not include it from its own headers +(cdefs.h must be provided separately). + +So we must include it when we are going to use macros it provides. + +Signed-off-by: "Yann E. MORIN" +--- + core/adbd/services.c | 1 + + core/libcutils/android_reboot.c | 1 + + 2 files changed, 2 insertions(+), 0 deletion(-) + +diff --git a/core/adbd/services.c b/core/adbd/services.c +index 20c08d2..48e0241 100644 +--- a/core/adbd/services.c ++++ b/core/adbd/services.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include "sysdeps.h" + +diff --git a/core/libcutils/android_reboot.c b/core/libcutils/android_reboot.c +index 20c08d2..48e0241 100644 +--- a/core/libcutils/android_reboot.c ++++ b/core/libcutils/android_reboot.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #include + diff --git a/package/android-tools/Config.in b/package/android-tools/Config.in index 35bb8af6ef..19772ad4d7 100644 --- a/package/android-tools/Config.in +++ b/package/android-tools/Config.in @@ -17,21 +17,43 @@ config BR2_PACKAGE_ANDROID_TOOLS if BR2_PACKAGE_ANDROID_TOOLS +# We need kernel headers that support the __SANE_USERSPACE_TYPES__ +# mechanism for 64 bits architectures, so that u64 gets defined as +# "unsigned long long" and not "unsigned long". We know that >= 3.16 +# is needed for MIPS64 (kernel commit +# f4b3aa7cd9d32407670e67238c5ee752bb98f481) and >= 3.10 is needed for +# PowerPC64 (kernel commit +# 2c9c6ce0199a4d252e20c531cfdc9d24e39235c0). Without this, the build +# fails with a bad redefinition of u64 (the android-tools fastboot +# code defines it as "unsigned long long"). +config BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS + bool + default y if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 && (BR2_powerpc64 || BR2_powerpc64le) + default y if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 && (BR2_mips64 || BR2_mips64el) + default y if !BR2_powerpc64 && !BR2_powerpc64le && !BR2_mips64 && !BR2_mips64el + config BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT bool "fastboot" select BR2_PACKAGE_LIBSELINUX select BR2_PACKAGE_ZLIB depends on BR2_TOOLCHAIN_HAS_THREADS # libselinux depends on !BR2_STATIC_LIBS # libselinux + depends on BR2_TOOLCHAIN_USES_GLIBC # libselinux depends on !BR2_arc # libselinux + depends on BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS help This option will build and install the fastboot utility for the target, which can be used to reflash other target devices implementing the fastboot protocol. -comment "fastboot needs a toolchain w/ threads, dynamic library" +comment "fastboot needs a glibc toolchain w/ threads, dynamic library" depends on !BR2_arc - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_USES_GLIBC + +comment "fastboot needs headers >= 3.10 (PowerPC64), headers >= 3.16 (MIPS64)" + depends on !BR2_arc + depends on !BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS config BR2_PACKAGE_ANDROID_TOOLS_ADB bool "adb" diff --git a/package/angular-websocket/Config.in b/package/angular-websocket/Config.in new file mode 100644 index 0000000000..0981bd0d52 --- /dev/null +++ b/package/angular-websocket/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_ANGULAR_WEBSOCKET + bool "angular-websocket" + help + An AngularJS WebSocket service for connecting client + applications to servers. + + https://github.com/AngularClass/angular-websocket diff --git a/package/angular-websocket/angular-websocket.hash b/package/angular-websocket/angular-websocket.hash new file mode 100644 index 0000000000..36700684b9 --- /dev/null +++ b/package/angular-websocket/angular-websocket.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 69d752896bc17c08750a2fda24b5eb3c6d653afc6f406dd90a6b7c920b22a14a angular-websocket-v2.0.0.tar.gz diff --git a/package/angular-websocket/angular-websocket.mk b/package/angular-websocket/angular-websocket.mk new file mode 100644 index 0000000000..b422847e2d --- /dev/null +++ b/package/angular-websocket/angular-websocket.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# angular-websocket +# +################################################################################ + +ANGULAR_WEBSOCKET_VERSION = v2.0.0 +ANGULAR_WEBSOCKET_SITE = $(call github,AngularClass,angular-websocket,$(ANGULAR_WEBSOCKET_VERSION)) +ANGULAR_WEBSOCKET_LICENSE = MIT +ANGULAR_WEBSOCKET_LICENSE_FILES = LICENSE + +# install .min.js as .js +define ANGULAR_WEBSOCKET_INSTALL_TARGET_CMDS + $(INSTALL) -m 0644 -D $(@D)/dist/angular-websocket.min.js \ + $(TARGET_DIR)/var/www/angular-websocket.js +endef + +$(eval $(generic-package)) diff --git a/package/angularjs/Config.in b/package/angularjs/Config.in index 206b3d8499..f0d2015a70 100644 --- a/package/angularjs/Config.in +++ b/package/angularjs/Config.in @@ -1,79 +1,6 @@ -menuconfig BR2_PACKAGE_ANGULARJS +config BR2_PACKAGE_ANGULARJS bool "angularjs" help AngularJS web application framework. http://angularjs.org - -if BR2_PACKAGE_ANGULARJS - -config BR2_ANGULARJS_MODULES - bool "angularjs modules" - help - Select which modules to install. If disabled, all modules - will be installed. - -if BR2_ANGULARJS_MODULES - -config BR2_ANGULARJS_MODULE_ANIMATE - bool "animate" - help - The ngAnimate module provides support for CSS-based animations - (keyframes and transitions) as well as JavaScript-based animations - via callback hooks. Animations are not enabled by default, however, - by including ngAnimate then the animation hooks are enabled for an - Angular app. - -config BR2_ANGULARJS_MODULE_ARIA - bool "aria" - help - The ngAria module provides support for common ARIA attributes that - convey state or semantic information about the application for users - of assistive technologies, such as screen readers. - -config BR2_ANGULARJS_MODULE_COOKIES - bool "cookies" - help - The ngCookies module provides a convenient wrapper for reading and - writing browser cookies. - -config BR2_ANGULARJS_MODULE_MESSAGE_FORMAT - bool "message-format" - help - The ngMessageFormat module is used recognize MessageFormat extensions - in interpolation expressions. - -config BR2_ANGULARJS_MODULE_MESSAGES - bool "messages" - help - The ngMessages module provides enhanced support for displaying - messages within templates (typically within forms or when rendering - message objects that return key/value data). - -config BR2_ANGULARJS_MODULE_RESOURCE - bool "resource" - help - The ngResource module provides interaction support with RESTful - services via the $resource service. - -config BR2_ANGULARJS_MODULE_ROUTE - bool "route" - help - The ngRoute module provides routing and deeplinking services and - directives for angular apps. - -config BR2_ANGULARJS_MODULE_SANITIZE - bool "sanitize" - help - The ngSanitize module provides functionality to sanitize HTML. - -config BR2_ANGULARJS_MODULE_TOUCH - bool "touch" - help - The ngTouch module provides touch events and other helpers for - touch-enabled devices. The implementation is based on jQuery Mobile - touch event handling (jquerymobile.com). - -endif - -endif diff --git a/package/angularjs/angularjs.mk b/package/angularjs/angularjs.mk index 60dbdb6d30..08a4b60845 100644 --- a/package/angularjs/angularjs.mk +++ b/package/angularjs/angularjs.mk @@ -17,23 +17,11 @@ define ANGULARJS_EXTRACT_CMDS rmdir $(@D)/angular-$(ANGULARJS_VERSION) endef -ANGULARJS_FILES = angular - -ANGULARJS_MODULES = animate aria cookies message-format messages resource \ - route sanitize touch - -ifeq ($(BR2_ANGULARJS_MODULES),y) -ANGULARJS_FILES += $(foreach mod,$(ANGULARJS_MODULES),\ - $(if $(BR2_ANGULARJS_MODULE_$(call UPPERCASE,$(mod))),\ - angular-$(mod))) -else -ANGULARJS_FILES += $(foreach mod,$(ANGULARJS_MODULES),angular-$(mod)) -endif - +# install .min.js as .js define ANGULARJS_INSTALL_TARGET_CMDS - $(foreach f,$(ANGULARJS_FILES),\ - $(INSTALL) -m 0644 -D $(@D)/$(f).min.js \ - $(TARGET_DIR)/var/www/$(f).js$(sep)) + $(foreach f,$(notdir $(wildcard $(@D)/*.min.js)), + $(INSTALL) -m 0644 -D $(@D)/$(f) \ + $(TARGET_DIR)/var/www/$(f:.min.js=.js)$(sep)) endef $(eval $(generic-package)) diff --git a/package/apache/Config.in b/package/apache/Config.in index 0814a17f7e..511876d2eb 100644 --- a/package/apache/Config.in +++ b/package/apache/Config.in @@ -14,6 +14,34 @@ config BR2_PACKAGE_APACHE http://httpd.apache.org +if BR2_PACKAGE_APACHE + +choice + prompt "Multi-Processing Module (MPM)" + default BR2_PACKAGE_APACHE_MPM_WORKER + help + Select the Multi-Processing Module (MPM). + +config BR2_PACKAGE_APACHE_MPM_EVENT + bool "event" + help + A variant of the worker MPM with the goal of consuming threads + only for connections with active processing + +config BR2_PACKAGE_APACHE_MPM_PREFORK + bool "prefork" + help + Implements a non-threaded, pre-forking web server + +config BR2_PACKAGE_APACHE_MPM_WORKER + bool "worker" + help + Implements a hybrid multi-threaded multi-process web server + +endchoice + +endif + comment "apache needs a toolchain w/ dynamic library, threads" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/apache/apache.hash b/package/apache/apache.hash index 062a54990d..38fd883f82 100644 --- a/package/apache/apache.hash +++ b/package/apache/apache.hash @@ -1,2 +1,2 @@ -# From http://www.apache.org/dist/httpd/httpd-2.4.20.tar.bz2.sha1 -sha1 cefe8ea4a3f81c7a08e36c80ebbd792c67ab361b httpd-2.4.20.tar.bz2 +# From http://www.apache.org/dist/httpd/httpd-2.4.23.tar.bz2.sha1 +sha1 bd6d138c31c109297da2346c6e7b93b9283993d2 httpd-2.4.25.tar.bz2 diff --git a/package/apache/apache.mk b/package/apache/apache.mk index 6d9a324b9f..ae629bd2ca 100644 --- a/package/apache/apache.mk +++ b/package/apache/apache.mk @@ -4,7 +4,7 @@ # ################################################################################ -APACHE_VERSION = 2.4.20 +APACHE_VERSION = 2.4.25 APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2 APACHE_SITE = http://archive.apache.org/dist/httpd APACHE_LICENSE = Apache-2.0 @@ -20,6 +20,14 @@ APACHE_CONF_ENV= \ ap_cv_void_ptr_lt_long=no \ PCRE_CONFIG=$(STAGING_DIR)/usr/bin/pcre-config +ifeq ($(BR2_PACKAGE_APACHE_MPM_EVENT),y) +APACHE_MPM = event +else ifeq ($(BR2_PACKAGE_APACHE_MPM_PREFORK),y) +APACHE_MPM = prefork +else ifeq ($(BR2_PACKAGE_APACHE_MPM_WORKER),y) +APACHE_MPM = worker +endif + APACHE_CONF_OPTS = \ --sysconfdir=/etc/apache2 \ --with-apr=$(STAGING_DIR)/usr \ @@ -31,7 +39,7 @@ APACHE_CONF_OPTS = \ --enable-mime-magic \ --without-suexec-bin \ --enable-mods-shared=all \ - --with-mpm=worker \ + --with-mpm=$(APACHE_MPM) \ --disable-lua \ --disable-luajit diff --git a/package/apitrace/Config.in b/package/apitrace/Config.in index a977712818..7fdd35af3e 100644 --- a/package/apitrace/Config.in +++ b/package/apitrace/Config.in @@ -1,4 +1,4 @@ -comment "apitrace needs a (e)glibc toolchain w/ C++, gcc >= 4.6" +comment "apitrace needs a glibc toolchain w/ C++, gcc >= 4.6" depends on BR2_PACKAGE_XORG7 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC \ || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/apitrace/apitrace.hash b/package/apitrace/apitrace.hash new file mode 100644 index 0000000000..eac470b03d --- /dev/null +++ b/package/apitrace/apitrace.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 21d0cc765b84e537c5a3a117073818942653b85685b9633d364836ccfe0b9fd5 apitrace-7.0.tar.gz diff --git a/package/argparse/Config.in b/package/argparse/Config.in new file mode 100644 index 0000000000..d207b0482c --- /dev/null +++ b/package/argparse/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_ARGPARSE + bool "argparse" + help + Argparse is a feature-rich command line parser for Lua + inspired by argparse for Python. Argparse supports + positional arguments, options, flags, optional arguments, + subcommands and more. Argparse automatically generates + usage, help and error messages. + + https://github.com/mpeterv/argparse diff --git a/package/argparse/argparse.hash b/package/argparse/argparse.hash new file mode 100644 index 0000000000..a4746bc6af --- /dev/null +++ b/package/argparse/argparse.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e00e5637c937d7bfca96025f2c598ba4fffe9eb818d69952e77b4c08167a6be3 argparse-0.5.0-1.src.rock diff --git a/package/argparse/argparse.mk b/package/argparse/argparse.mk new file mode 100644 index 0000000000..095f0a315c --- /dev/null +++ b/package/argparse/argparse.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# argparse +# +################################################################################ + +ARGPARSE_VERSION_UPSTREAM = 0.5.0 +ARGPARSE_VERSION = $(ARGPARSE_VERSION_UPSTREAM)-1 +ARGPARSE_SUBDIR = argparse +ARGPARSE_LICENSE = MIT +ARGPARSE_LICENSE_FILES = $(ARGPARSE_SUBDIR)/LICENSE + +$(eval $(luarocks-package)) diff --git a/package/armadillo/Config.in b/package/armadillo/Config.in index 18bf750ebd..9483f181cf 100644 --- a/package/armadillo/Config.in +++ b/package/armadillo/Config.in @@ -3,8 +3,9 @@ comment "armadillo needs a toolchain w/ C++" depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) depends on !BR2_powerpc depends on !BR2_bfin + depends on !BR2_m68k_cf -comment "armadillo needs an (e)glibc toolchain w/ C++" +comment "armadillo needs a glibc toolchain w/ C++" depends on BR2_powerpc depends on !BR2_INSTALL_LIBSTDCPP || BR2_TOOLCHAIN_USES_UCLIBC @@ -14,6 +15,7 @@ config BR2_PACKAGE_ARMADILLO depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) # clapack depends on !BR2_powerpc || BR2_TOOLCHAIN_USES_GLIBC # clapack depends on !BR2_bfin # clapack + depends on !BR2_m68k_cf # clapack select BR2_PACKAGE_CLAPACK help Armadillo: An Open Source C++ Linear Algebra Library for diff --git a/package/arptables/arptables.mk b/package/arptables/arptables.mk index 4f101c7b12..888d396e17 100644 --- a/package/arptables/arptables.mk +++ b/package/arptables/arptables.mk @@ -10,7 +10,7 @@ ARPTABLES_SITE = http://downloads.sourceforge.net/project/ebtables/arptables/arp ARPTABLES_LICENSE = GPLv2+ define ARPTABLES_BUILD_CMDS - $(MAKE) -C $(@D) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ CC="$(TARGET_CC)" COPT_FLAGS="$(TARGET_CFLAGS)" endef diff --git a/package/assimp/Config.in b/package/assimp/Config.in index 93020f7238..8fa6429da0 100644 --- a/package/assimp/Config.in +++ b/package/assimp/Config.in @@ -4,6 +4,11 @@ config BR2_PACKAGE_ASSIMP # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that # cause an infinite loop in gcc when building this package. depends on !BR2_microblaze + # The ADI Blackfin toolchain does not build assimp properly, + # fails with "internal compiler error: in simplify_subreg, at + # simplify-rtx.c:5001". It builds fine with a mainline gcc for + # Blackfin. + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_ZLIB help diff --git a/package/assimp/assimp.hash b/package/assimp/assimp.hash new file mode 100644 index 0000000000..bee26fb4f3 --- /dev/null +++ b/package/assimp/assimp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 187f825c563e84b1b17527a4da0351aa3d575dfd696a9d204ae4bb19ee7df94a assimp-v3.2.tar.gz diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk index fd556e5962..08893fff00 100644 --- a/package/assimp/assimp.mk +++ b/package/assimp/assimp.mk @@ -11,6 +11,12 @@ ASSIMP_LICENSE_FILES = LICENSE ASSIMP_DEPENDENCIES = zlib ASSIMP_INSTALL_STAGING = YES -ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k),y) +ASSIMP_CXXFLAGS += -mxgot +endif + +ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF \ + -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(ASSIMP_CXXFLAGS)" $(eval $(cmake-package)) diff --git a/package/atk/atk.hash b/package/atk/atk.hash index 7178ccc81c..12c98706dd 100644 --- a/package/atk/atk.hash +++ b/package/atk/atk.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/atk/2.20/atk-2.20.0.sha256sum -sha256 493a50f6c4a025f588d380a551ec277e070b28a82e63ef8e3c06b3ee7c1238f0 atk-2.20.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/atk/2.22/atk-2.22.0.sha256sum +sha256 d349f5ca4974c9c76a4963e5b254720523b0c78672cbc0e1a3475dbd9b3d44b6 atk-2.22.0.tar.xz diff --git a/package/atk/atk.mk b/package/atk/atk.mk index 663d13ae5f..90d329ae23 100644 --- a/package/atk/atk.mk +++ b/package/atk/atk.mk @@ -4,7 +4,7 @@ # ################################################################################ -ATK_VERSION_MAJOR = 2.20 +ATK_VERSION_MAJOR = 2.22 ATK_VERSION = $(ATK_VERSION_MAJOR).0 ATK_SOURCE = atk-$(ATK_VERSION).tar.xz ATK_SITE = http://ftp.gnome.org/pub/gnome/sources/atk/$(ATK_VERSION_MAJOR) diff --git a/package/atop/0001-remove-unused-include-of-termio.h.patch b/package/atop/0001-remove-unused-include-of-termio.h.patch new file mode 100644 index 0000000000..3a04b05e60 --- /dev/null +++ b/package/atop/0001-remove-unused-include-of-termio.h.patch @@ -0,0 +1,52 @@ +remove unused include of termio.h + +This header is not provided by musl, leading to build failures. + +Patch status: accepted upstream. + +Signed-off-by: Ricardo Martincoski +--- +diff -purN atop-2.2-3.orig/showgeneric.c atop-2.2-3/showgeneric.c +--- atop-2.2-3.orig/showgeneric.c 2016-07-19 22:07:43.275324499 -0300 ++++ atop-2.2-3/showgeneric.c 2016-07-19 22:08:16.171453283 -0300 +@@ -268,7 +268,6 @@ static const char rcsid[] = "$Id: showge + #include + #include + #include +-#include + #include + #include + #include +diff -purN atop-2.2-3.orig/showlinux.c atop-2.2-3/showlinux.c +--- atop-2.2-3.orig/showlinux.c 2016-07-19 22:07:43.275324499 -0300 ++++ atop-2.2-3/showlinux.c 2016-07-19 22:08:20.979472459 -0300 +@@ -274,7 +274,6 @@ static const char rcsid[] = "$Id: showli + #include + #include + #include +-#include + #include + #include + #include +diff -purN atop-2.2-3.orig/showprocs.c atop-2.2-3/showprocs.c +--- atop-2.2-3.orig/showprocs.c 2016-07-19 22:07:43.275324499 -0300 ++++ atop-2.2-3/showprocs.c 2016-07-19 22:08:25.083488900 -0300 +@@ -94,7 +94,6 @@ static const char rcsid[] = "$Id: showpr + #include + #include + #include +-#include + #include + #include + #include +diff -purN atop-2.2-3.orig/showsys.c atop-2.2-3/showsys.c +--- atop-2.2-3.orig/showsys.c 2016-07-19 22:07:43.275324499 -0300 ++++ atop-2.2-3/showsys.c 2016-07-19 22:08:29.099505047 -0300 +@@ -80,7 +80,6 @@ static const char rcsid[] = "XXXXXX"; + #include + #include + #include +-#include + #include + #include + #include diff --git a/package/atop/Config.in b/package/atop/Config.in new file mode 100644 index 0000000000..d42a201bd9 --- /dev/null +++ b/package/atop/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_ATOP + bool "atop" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_ZLIB + help + Atop is an ASCII full-screen performance monitor for Linux + that is capable of reporting the activity of all processes + (even if processes have finished during the interval), daily + logging of system and process activity for long-term analysis, + highlighting overloaded system resources by using colors, etc. + At regular intervals, it shows system-level activity related + to the CPU, memory, swap, disks (including LVM) and network + layers, and for every process (and thread) it shows e.g. the + CPU utilization, memory growth, disk utilization, priority, + username, state, and exit code. + + http://www.atoptool.nl diff --git a/package/atop/atop.hash b/package/atop/atop.hash new file mode 100644 index 0000000000..bbf268d06e --- /dev/null +++ b/package/atop/atop.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 c785b8a2355be28b3de6b58a8ea4c4fcab8fadeaa57a99afeb03c66fac8e055d atop-2.2-3.tar.gz diff --git a/package/atop/atop.mk b/package/atop/atop.mk new file mode 100644 index 0000000000..27e1f82154 --- /dev/null +++ b/package/atop/atop.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# atop +# +################################################################################ + +ATOP_VERSION = 2.2-3 +ATOP_SITE = http://www.atoptool.nl/download +ATOP_LICENSE = GPLv2+ +ATOP_LICENSE_FILES = COPYING +ATOP_DEPENDENCIES = ncurses zlib + +define ATOP_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define ATOP_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/atop $(TARGET_DIR)/usr/bin/atop +endef + +$(eval $(generic-package)) diff --git a/package/aubio/Config.in b/package/aubio/Config.in new file mode 100644 index 0000000000..c4c60db2f3 --- /dev/null +++ b/package/aubio/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_AUBIO + bool "aubio" + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + aubio is a tool designed for the extraction of annotations from + audio signals. Its features include segmenting a sound file + before each of its attacks, performing pitch detection, tapping + the beat and producing midi streams from live audio. + + Because these tasks are difficult, we thought it was important + to gather them in a dedicated library. To increase the fun, we + have made these algorithms work in a causal way, so as to be + used in real time applications with as low delay as possible. + Functions can be used offline in sound editors and software + samplers, or online in audio effects and virtual instruments. + + https://aubio.org + +comment "aubio needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/aubio/aubio.hash b/package/aubio/aubio.hash new file mode 100644 index 0000000000..e4478477d7 --- /dev/null +++ b/package/aubio/aubio.hash @@ -0,0 +1,2 @@ +# From https://aubio.org/pub/aubio-0.4.3.tar.bz2.sha256 +sha256 b62cdb073c0c64ae301917fa162969d42cba45e478bdf1e74490bd87e9cceaab aubio-0.4.3.tar.bz2 diff --git a/package/aubio/aubio.mk b/package/aubio/aubio.mk new file mode 100644 index 0000000000..f3330c2b89 --- /dev/null +++ b/package/aubio/aubio.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# aubio +# +################################################################################ + +AUBIO_VERSION = 0.4.3 +AUBIO_SITE = https://aubio.org/pub +AUBIO_SOURCE = aubio-$(AUBIO_VERSION).tar.bz2 +AUBIO_LICENSE = GPLv3+ +AUBIO_LICENSE_FILES = COPYING +AUBIO_INSTALL_STAGING = YES + +AUBIO_CONF_OPTS = \ + --disable-docs \ + --disable-atlas + +# Add --notests for each build step to avoid running unit tests on the +# build machine. +AUBIO_WAF_OPTS = --notests + +ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) +AUBIO_DEPENDENCIES += libsndfile +AUBIO_CONF_OPTS += --enable-sndfile +else +AUBIO_CONF_OPTS += --disable-sndfile +endif + +ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y) +AUBIO_DEPENDENCIES += libsamplerate +AUBIO_CONF_OPTS += --enable-samplerate +else +AUBIO_CONF_OPTS += --disable-samplerate +endif + +ifeq ($(BR2_PACKAGE_JACK2),y) +AUBIO_DEPENDENCIES += jack2 +AUBIO_CONF_OPTS += --enable-jack +else +AUBIO_CONF_OPTS += --disable-jack +endif + +ifeq ($(BR2_PACKAGE_FFTW),y) +AUBIO_DEPENDENCIES += fftw +# fftw3 require double otherwise it will look for fftw3f +ifeq ($(BR2_PACKAGE_FFTW_PRECISION_DOUBLE),y) +AUBIO_CONF_OPTS += --enable-fftw3 --enable-double +else ifeq ($(BR2_PACKAGE_FFTW_PRECISION_SINGLE),y) +AUBIO_CONF_OPTS += --enable-fftw3f --disable-double +endif +else # !BR2_PACKAGE_FFTW +AUBIO_CONF_OPTS += --disable-fftw3 +endif + +ifeq ($(BR2_PACKAGE_FFMPEG_AVRESAMPLE),y) +AUBIO_DEPENDENCIES += ffmpeg +AUBIO_CONF_OPTS += --enable-avcodec +else +AUBIO_CONF_OPTS += --disable-avcodec +endif + +$(eval $(waf-package)) diff --git a/package/audiofile/0002-cast-to-unsigned-gcc6.patch b/package/audiofile/0002-cast-to-unsigned-gcc6.patch new file mode 100644 index 0000000000..01baeb5e63 --- /dev/null +++ b/package/audiofile/0002-cast-to-unsigned-gcc6.patch @@ -0,0 +1,28 @@ +From 28cfdbbcb96a69087c3d21faf69b5eae7bcf6d69 Mon Sep 17 00:00:00 2001 +From: Hodorgasm +Date: Wed, 11 May 2016 21:42:07 -0400 +Subject: [PATCH] Cast to unsigned while left bit-shifting + +GCC-6 now treats the left bitwise-shift of a negative integer as nonconformant so explicitly cast to an unsigned int while bit-shifting. + +Downloaded from upstream PR: +https://github.com/mpruett/audiofile/pull/28 + +Signed-off-by: Bernd Kuhls +--- + libaudiofile/modules/SimpleModule.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libaudiofile/modules/SimpleModule.h b/libaudiofile/modules/SimpleModule.h +index 03c6c69..4014fb2 100644 +--- a/libaudiofile/modules/SimpleModule.h ++++ b/libaudiofile/modules/SimpleModule.h +@@ -123,7 +123,7 @@ struct signConverter + typedef typename IntTypes::UnsignedType UnsignedType; + + static const int kScaleBits = (Format + 1) * CHAR_BIT - 1; +- static const int kMinSignedValue = -1 << kScaleBits; ++ static const int kMinSignedValue = static_cast(static_cast(-1) << kScaleBits);; + + struct signedToUnsigned : public std::unary_function + { diff --git a/package/audit/Config.in b/package/audit/Config.in index 717c364fd5..023ac79d30 100644 --- a/package/audit/Config.in +++ b/package/audit/Config.in @@ -2,14 +2,15 @@ config BR2_PACKAGE_AUDIT_ARCH_SUPPORTS bool default y if BR2_aarch64 || BR2_arm || BR2_armeb || \ - BR2_i386 || BR2_powerpc || BR2_x86_64 + BR2_i386 || BR2_powerpc || BR2_powerpc64 || \ + BR2_x86_64 config BR2_PACKAGE_AUDIT bool "audit" depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_USES_MUSL + depends on !BR2_TOOLCHAIN_USES_MUSL # strndupa() help The audit package contains the user space utilities for storing and searching the audit records generated by @@ -19,7 +20,7 @@ config BR2_PACKAGE_AUDIT http://people.redhat.com/sgrubb/audit/ -comment "audit needs a uClibc or (e)glibc toolchain w/ threads, dynamic library" +comment "audit needs a uClibc or glibc toolchain w/ threads, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ || BR2_TOOLCHAIN_USES_MUSL depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS diff --git a/package/audit/audit.hash b/package/audit/audit.hash index f234fdb206..2ae8f99bb7 100644 --- a/package/audit/audit.hash +++ b/package/audit/audit.hash @@ -1,2 +1,2 @@ #Locally computed -sha256 25f57f465f3230d7b1166b615ffd6748818a3dc225d0e8b396c5b2e951674e23 audit-2.4.4.tar.gz +sha256 0441790794fd9375dbca598fa0ffb46c57ff37b3a24b94ffec0bbee3215cca09 audit-2.7.1.tar.gz diff --git a/package/audit/audit.mk b/package/audit/audit.mk index 329f8c5aca..298ef20b7b 100644 --- a/package/audit/audit.mk +++ b/package/audit/audit.mk @@ -4,9 +4,9 @@ # ################################################################################ -AUDIT_VERSION = 2.4.4 +AUDIT_VERSION = 2.7.1 AUDIT_SITE = http://people.redhat.com/sgrubb/audit -AUDIT_LICENSE = GPLv2 +AUDIT_LICENSE = GPLv2+ (programs), unclear (libraries) AUDIT_LICENSE_FILES = COPYING AUDIT_INSTALL_STAGING = YES @@ -46,7 +46,6 @@ define AUDIT_INSTALL_INIT_SYSTEMD ln -fs ../../../../usr/lib/systemd/system/auditd.service \ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/auditd.service - mkdir -p $(TARGET_DIR)/usr/lib/tmpfiles.d $(INSTALL) -D -m 644 package/audit/audit_tmpfiles.conf \ $(TARGET_DIR)/usr/lib/tmpfiles.d/audit.conf endef @@ -57,4 +56,11 @@ define AUDIT_INSTALL_CLEANUP endef AUDIT_POST_INSTALL_TARGET_HOOKS += AUDIT_INSTALL_CLEANUP +HOST_AUDIT_CONF_OPTS = \ + --without-python \ + --without-python3 \ + --disable-zos-remote \ + --without-libcap-ng + $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/aufs-util/0001-remove-user-settings.patch b/package/aufs-util/0001-remove-user-settings.patch new file mode 100644 index 0000000000..7eebc95dd4 --- /dev/null +++ b/package/aufs-util/0001-remove-user-settings.patch @@ -0,0 +1,16 @@ +install: drop setting ownership + +Signed-off-by: "Yann E. MORIN" + +diff --git a/Makefile b/Makefile +--- a/Makefile ++++ b/Makefile +@@ -21,7 +21,7 @@ + override CPPFLAGS += -DAUFHSM_CMD=\"/usr/bin/aufhsm\" + override CFLAGS += -O -Wall + INSTALL ?= install +-Install = ${INSTALL} -o root -g root -p ++Install = ${INSTALL} -p + ManDir = /usr/share/man + + # diff --git a/package/aufs-util/0002-no-check-ver.patch b/package/aufs-util/0002-no-check-ver.patch new file mode 100644 index 0000000000..5fe692072f --- /dev/null +++ b/package/aufs-util/0002-no-check-ver.patch @@ -0,0 +1,24 @@ +Makefile: do not check version + +The aufs-util package tries to ensure that its version is compatible +with the one in the running kernel. However, this test is flawed: the +version string in the aufs4x branch for aufs-util is aufs3.x, so it does +not match the version in the kernel when it is aufs4.x. + +Disengage this check, ion the assumption the user knows what he is +doing. + +Signed-off-by: "Yann E. MORIN" + +diff --git a/Makefile b/Makefile +--- a/Makefile ++++ b/Makefile +@@ -62,7 +62,7 @@ + $(foreach v, CPPFLAGS CFLAGS INSTALL Install ManDir LibUtilHdr, \ + $(eval MAKE += ${v}="$${${v}}")) + +-all: ver_test ${Man} ${Bin} ${Etc} ++all: ${Man} ${Bin} ${Etc} + ${MAKE} -C libau $@ + ln -sf ./libau/libau*.so . + $(call MakeFHSM, $@) diff --git a/package/aufs-util/0003-no-strip-lib.patch b/package/aufs-util/0003-no-strip-lib.patch new file mode 100644 index 0000000000..15830503b5 --- /dev/null +++ b/package/aufs-util/0003-no-strip-lib.patch @@ -0,0 +1,18 @@ +install: do not strip libs when installing + +We want unstripped binaries in staging; stripping is done by Buildroot +as a whole in target-finalize if needed, anyway. + +Signed-off-by: "Yann E. MORIN" + +diff --git a/libau/Makefile b/libau/Makefile +--- a/libau/Makefile ++++ b/libau/Makefile +@@ -37,7 +37,6 @@ + ln -sf $< $@ + ${LibSo}.${LibSoMajor}: ${LibSo}.${LibSoMajor}.${LibSoMinor} + ln -sf $< $@ +-${LibSo}.${LibSoMajor}.${LibSoMinor}: override LDFLAGS += -s + ${LibSo}.${LibSoMajor}.${LibSoMinor}: override LDLIBS += -ldl -lpthread + ${LibSo}.${LibSoMajor}.${LibSoMinor}: ${LibSoObj} + ${CC} --shared -Wl,-soname,${LibSo}.${LibSoMajor} ${LDFLAGS} \ diff --git a/package/aufs-util/Config.in b/package/aufs-util/Config.in new file mode 100644 index 0000000000..93999fb606 --- /dev/null +++ b/package/aufs-util/Config.in @@ -0,0 +1,35 @@ +comment "aufs-util needs a linux kernel and a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_LINUX_KERNEL || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_AUFS_UTIL + bool "aufs-util" + depends on BR2_USE_MMU + depends on BR2_LINUX_KERNEL + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Aufs command line utilities. + + Needs a kernel with aufs support. A kernel + extension package is available. + + http://sourceforge.net/p/aufs/aufs-util/ + +if BR2_PACKAGE_AUFS_UTIL + +config BR2_PACKAGE_AUFS_UTIL_VERSION + string "aufs-util version" + default "" + help + The version you choose must match that of the aufs support + in your kernel. Usually, this is aufs3.x for 3.x kernels and + aufs4.x for 4.x kernels. + + Usually, the sha1 of the cset you want to use; avoid using a + branch name as this yields non-reproducible builds. + + See the following resources to see what versions are available: + + https://sourceforge.net/p/aufs/aufs-util/ci/master/tree/ + +endif diff --git a/package/aufs-util/aufs-util.mk b/package/aufs-util/aufs-util.mk new file mode 100644 index 0000000000..d41b4ac4fd --- /dev/null +++ b/package/aufs-util/aufs-util.mk @@ -0,0 +1,59 @@ +################################################################################ +# +# aufs-util +# +################################################################################ + +# linux-headers +AUFS_UTIL_VERSION = $(call qstrip,$(BR2_PACKAGE_AUFS_UTIL_VERSION)) +AUFS_UTIL_SITE = http://git.code.sf.net/p/aufs/aufs-util +AUFS_UTIL_SITE_METHOD = git +AUFS_UTIL_LICENSE = GPLv2 +AUFS_UTIL_LICENSE_FILES = COPYING + +AUFS_UTIL_DEPENDENCIES = linux + +# Building aufs-util requires access to the kernel headers of aufs, +# which are only available in the kernel build directory, which is why +# we add -I$(LINUX_DIR)/include/uapi. These headers have not been +# prepared for usage by userspace, so to workaround this we have to +# defined the "__user" macro as empty. +AUFS_UTIL_HOST_CPPFLAGS = \ + $(HOST_CPPFLAGS) \ + -I$(LINUX_DIR)/include/uapi \ + -D__user= + +AUFS_UTIL_CPPFLAGS = \ + $(TARGET_CPPFLAGS) \ + -I$(LINUX_DIR)/include/uapi \ + -D__user= + +# rdu64 is supposed to provide the LFS variant of readdir(), +# readdir64(). However, because Buildroot is always LFS-enabled, +# readdir() is always the LFS variant. Drop rdu64 from the build, as +# it causes build failures due to multiple implementations of +# readdir64(). +define AUFS_UTIL_REMOVE_RDU64 + $(SED) 's% rdu64.o%%' $(@D)/libau/Makefile +endef + +AUFS_UTIL_POST_PATCH_HOOKS += AUFS_UTIL_REMOVE_RDU64 + +# First, we build the host tools, needed to build the target tools. +define AUFS_UTIL_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + $(HOST_CONFIGURE_OPTS) \ + CPPFLAGS="$(AUFS_UTIL_HOST_CPPFLAGS)" \ + HOSTCC="$(HOSTCC)" HOSTLD="$(HOSTLD)" \ + INSTALL="$(INSTALL)" c2sh c2tmac + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) \ + $(TARGET_CONFIGURE_OPTS) \ + CPPFLAGS="$(AUFS_UTIL_CPPFLAGS)" \ + INSTALL="$(INSTALL)" all +endef + +define AUFS_UTIL_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) INSTALL="$(INSTALL)" DESTDIR="$(TARGET_DIR)" install +endef + +$(eval $(generic-package)) diff --git a/package/aufs/Config.in b/package/aufs/Config.in new file mode 100644 index 0000000000..cc5ff365fe --- /dev/null +++ b/package/aufs/Config.in @@ -0,0 +1,16 @@ +# Automatically selected by the corresponding linux extension +config BR2_PACKAGE_AUFS + bool + +if BR2_PACKAGE_AUFS + +# Both come from the selection of the linux extension. +config BR2_PACKAGE_AUFS_SERIES + int + default BR2_LINUX_KERNEL_EXT_AUFS_SERIES + +config BR2_PACKAGE_AUFS_VERSION + string + default BR2_LINUX_KERNEL_EXT_AUFS_VERSION + +endif diff --git a/package/aufs/aufs.mk b/package/aufs/aufs.mk new file mode 100644 index 0000000000..1ba5508ac3 --- /dev/null +++ b/package/aufs/aufs.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# aufs +# +################################################################################ + +AUFS_VERSION = $(call qstrip,$(BR2_PACKAGE_AUFS_VERSION)) +AUFS_LICENSE = GPLv2 +AUFS_LICENSE_FILES = COPYING + +ifeq ($(BR2_PACKAGE_AUFS_SERIES),3) +AUFS_SITE = http://git.code.sf.net/p/aufs/aufs3-standalone +AUFS_SITE_METHOD = git +else ifeq ($(BR2_PACKAGE_AUFS_SERIES),4) +AUFS_SITE = $(call github,sfjro,aufs4-standalone,$(AUFS_VERSION)) +endif + +ifeq ($(BR_BUILDING):$(BR2_PACKAGE_AUFS):$(AUFS_VERSION),y:y:) +$(error No aufs version specified) +endif + +$(eval $(generic-package)) diff --git a/package/autoconf-archive/autoconf-archive.hash b/package/autoconf-archive/autoconf-archive.hash index 5576566870..6982a4dd67 100644 --- a/package/autoconf-archive/autoconf-archive.hash +++ b/package/autoconf-archive/autoconf-archive.hash @@ -1,2 +1,2 @@ # Computed locally -sha256 7c0467a5dbd2340153bca5a477bd92fbc951d9ee3cbed92f16f6bf08ac0c350a autoconf-archive-2015.09.25.tar.xz +sha256 88fb2efff640eddd28a52ae550ff5561bca3bd2bba09e1d7b0580e719875e437 autoconf-archive-2016.03.20.tar.xz diff --git a/package/autoconf-archive/autoconf-archive.mk b/package/autoconf-archive/autoconf-archive.mk index 98acba3e41..86956eb672 100644 --- a/package/autoconf-archive/autoconf-archive.mk +++ b/package/autoconf-archive/autoconf-archive.mk @@ -4,7 +4,7 @@ # ################################################################################ -AUTOCONF_ARCHIVE_VERSION = 2015.09.25 +AUTOCONF_ARCHIVE_VERSION = 2016.03.20 AUTOCONF_ARCHIVE_SOURCE = autoconf-archive-$(AUTOCONF_ARCHIVE_VERSION).tar.xz AUTOCONF_ARCHIVE_SITE = $(BR2_GNU_MIRROR)/autoconf-archive AUTOCONF_ARCHIVE_LICENSE = GPLv3+ with exception diff --git a/package/autofs/0002-autofs-build-check-for-clock_gettime-in-librt.patch b/package/autofs/0002-autofs-build-check-for-clock_gettime-in-librt.patch new file mode 100644 index 0000000000..ade6d1cdb3 --- /dev/null +++ b/package/autofs/0002-autofs-build-check-for-clock_gettime-in-librt.patch @@ -0,0 +1,62 @@ +From a38ab6c0f2790e047fc64867865eb2a073135618 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Sun, 19 Jun 2016 00:17:41 -0300 +Subject: [PATCH] autofs: build: check for clock_gettime in librt + +Glibc versions older than 2.17 define clock_gettime() in librt, so add a +check for this. + +Signed-off-by: Gustavo Zacarias +--- +Patch status: sent to autofs@ mailing list + + Makefile.conf.in | 3 +++ + Makefile.rules | 2 ++ + configure.in | 4 ++++ + 3 files changed, 9 insertions(+) + +diff --git a/Makefile.conf.in b/Makefile.conf.in +index cb53e66..2bc3202 100644 +--- a/Makefile.conf.in ++++ b/Makefile.conf.in +@@ -11,6 +11,9 @@ + DAEMON_CFLAGS = @DAEMON_CFLAGS@ + DAEMON_LDFLAGS = @DAEMON_LDFLAGS@ + ++# Glibc < 2.17 requires librt for clock_gettime() ++LIBCLOCK_GETTIME = @LIBCLOCK_GETTIME@ ++ + # Special parameters for glibc (libc 6) + LIBNSL = @LIBNSL@ + LIBRESOLV = @LIBRESOLV@ +diff --git a/Makefile.rules b/Makefile.rules +index 6fa3e02..7d1af2e 100644 +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -56,6 +56,8 @@ endif + + LIBS += $(LIBNSL) + ++LIBS += $(LIBCLOCK_GETTIME) ++ + # Standard rules + + .SUFFIXES: .c .o .s .so +diff --git a/configure.in b/configure.in +index 25d7c4e..a4318e8 100644 +--- a/configure.in ++++ b/configure.in +@@ -177,6 +177,10 @@ if test "$ac_cv_search_versionsort" = "no"; then + [Define if your C library does not provide versionsort]) + fi + ++# glibc < 2.17 needs librt for clock_gettime() ++AC_CHECK_LIB(rt, clock_gettime, LIBCLOCK_GETTIME="-lrt") ++AC_SUBST(LIBCLOCK_GETTIME) ++ + # + # glibc/libc 6 new libraries + # +-- +2.7.3 + diff --git a/package/autofs/0003-configure-add-cache-variable-for-Linux-proc-filesyst.patch b/package/autofs/0003-configure-add-cache-variable-for-Linux-proc-filesyst.patch new file mode 100644 index 0000000000..93f3f9cf2a --- /dev/null +++ b/package/autofs/0003-configure-add-cache-variable-for-Linux-proc-filesyst.patch @@ -0,0 +1,47 @@ +From bb5cc9cee1963362fe56b4fac65fed4912da4215 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 30 Jul 2016 22:30:01 +0200 +Subject: [PATCH] configure: add cache variable for Linux proc filesystem check + +When cross-compiling, whether the /proc filesystem is available in the +build environment does not give any indication as to whether it will +be available in the execution environment. + +This commit therefore adjust the AF_LINUX_PROCFS macro to use +AC_CACHE_CHECK(), so that an ac_cv_linux_procfs variable can be +preseeded in the environment to force the result of this check. + +Signed-off-by: Thomas Petazzoni +--- + aclocal.m4 | 15 +++++---------- + 1 file changed, 5 insertions(+), 10 deletions(-) + +diff --git a/aclocal.m4 b/aclocal.m4 +index 2115204..333699c 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -80,16 +80,11 @@ dnl + dnl Check for the Linux /proc filesystem + dnl -------------------------------------------------------------------------- + AC_DEFUN(AF_LINUX_PROCFS, +-[AC_MSG_CHECKING(for Linux proc filesystem) +-if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" +-then +- linux_procfs=yes +-else +- linux_procfs=no +-fi +-AC_MSG_RESULT($linux_procfs) +-if test $linux_procfs = yes +-then ++[AC_CACHE_CHECK([for Linux proc filesystem], [ac_cv_linux_procfs], ++ [ac_cv_linux_procfs=no ++ test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" && ac_cv_linux_procfs=yes]) ++ if test $ac_cv_linux_procfs = yes ++ then + AC_DEFINE(HAVE_LINUX_PROCFS, 1, + [Define if you have the Linux /proc filesystem.]) + fi]) +-- +2.7.4 + diff --git a/package/autofs/Config.in b/package/autofs/Config.in index dbe667442f..8e08357a4e 100644 --- a/package/autofs/Config.in +++ b/package/autofs/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_AUTOFS bool "autofs" - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on !BR2_STATIC_LIBS # dlfcn @@ -15,7 +15,7 @@ config BR2_PACKAGE_AUTOFS http://www.linuxfromscratch.org/blfs/view/svn/general/autofs.html -comment "autofs needs a toolchain w/ threads, RPC, dynamic library" +comment "autofs needs a toolchain w/ NPTL, RPC, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HAS_NATIVE_RPC diff --git a/package/autofs/autofs.hash b/package/autofs/autofs.hash index 2d98375a7b..72b1378595 100644 --- a/package/autofs/autofs.hash +++ b/package/autofs/autofs.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/daemons/autofs/v5/sha256sums.asc -sha256 e08ff0ef9ff365d87b6c33dca136d20e4e07675197a324f2816894cb437021c3 autofs-5.1.1.tar.xz +sha256 88b7de39088aead983e02072a7b753d5ee52ce419c8913f7a3d4ff5521313f0c autofs-5.1.2.tar.xz diff --git a/package/autofs/autofs.mk b/package/autofs/autofs.mk index a98e5eb685..23e683688b 100644 --- a/package/autofs/autofs.mk +++ b/package/autofs/autofs.mk @@ -4,17 +4,22 @@ # ################################################################################ -AUTOFS_VERSION = 5.1.1 +AUTOFS_VERSION = 5.1.2 AUTOFS_SOURCE = autofs-$(AUTOFS_VERSION).tar.xz AUTOFS_SITE = $(BR2_KERNEL_MIRROR)/linux/daemons/autofs/v5 AUTOFS_LICENSE = GPLv2+ AUTOFS_LICENSE_FILES = COPYING COPYRIGHT AUTOFS_DEPENDENCIES = host-flex host-bison +# For 0002-autofs-configure-check-for-clock_gettime-in-librt.patch and +# 0003-configure-add-cache-variable-for-Linux-proc-filesyst.patch. +AUTOFS_AUTORECONF = YES # autofs looks on the build machine for the path of modprobe, so tell # it explicitly where it will be located on the target. AUTOFS_CONF_ENV = \ - ac_cv_path_MODPROBE=/sbin/modprobe + ac_cv_path_KRB5_CONFIG=no \ + ac_cv_path_MODPROBE=/sbin/modprobe \ + ac_cv_linux_procfs=yes # instead of looking in the PATH like any reasonable package, autofs # configure looks only in an hardcoded search path for host tools, @@ -24,7 +29,8 @@ AUTOFS_CONF_OPTS = \ --enable-ignore-busy \ --without-openldap \ --without-sasl \ - --with-path="$(BR_PATH)" + --with-path="$(BR_PATH)" \ + --with-hesiod=no AUTOFS_MAKE_ENV = DONTSTRIP=1 diff --git a/package/autossh/0001-honour-LDFLAGS.patch b/package/autossh/0001-honour-LDFLAGS.patch new file mode 100644 index 0000000000..2e6160b8fd --- /dev/null +++ b/package/autossh/0001-honour-LDFLAGS.patch @@ -0,0 +1,16 @@ +Honour LDFLAGS, especially required when static linking + +Signed-off-by: Waldemar Brodkorb + +diff -Nur autossh-1.4e.orig/Makefile.in autossh-1.4e/Makefile.in +--- autossh-1.4e.orig/Makefile.in 2015-02-10 05:41:58.000000000 +0100 ++++ autossh-1.4e/Makefile.in 2016-11-25 12:49:06.052122855 +0100 +@@ -31,7 +31,7 @@ + + + $(TARGET): $(OFILES) +- $(CC) $(CPPFLAGS) -o $(TARGET) $(OFILES) $(LIBS) ++ $(CC) $(CPPFLAGS) $(LDFLAGS) -o $(TARGET) $(OFILES) $(LIBS) + + clean: + - /bin/rm -f *.o *.a *.core *~ diff --git a/package/avrdude/Config.in b/package/avrdude/Config.in index 460f155086..8aca841282 100644 --- a/package/avrdude/Config.in +++ b/package/avrdude/Config.in @@ -15,7 +15,7 @@ config BR2_PACKAGE_AVRDUDE https://github.com/kcuzner/avrdude -comment "avrdude needs a uclibc or (e)glibc toolchain w/ threads, wchar, dynamic library" +comment "avrdude needs a uClibc or glibc toolchain w/ threads, wchar, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) depends on !BR2_bfin diff --git a/package/avrdude/avrdude.hash b/package/avrdude/avrdude.hash new file mode 100644 index 0000000000..b2c6125908 --- /dev/null +++ b/package/avrdude/avrdude.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 b32128f4812d5e852cfba2e863d950ec30e0f72f09bc14fb41c02528bbc5dd18 avrdude-ad04c429a90f4c34f000ea4ae11db2705915a31f.tar.gz diff --git a/package/avrdude/avrdude.mk b/package/avrdude/avrdude.mk index 181189345c..27a74de164 100644 --- a/package/avrdude/avrdude.mk +++ b/package/avrdude/avrdude.mk @@ -4,10 +4,10 @@ # ################################################################################ -AVRDUDE_VERSION = eabe067c4527bc2eedc5db9288ef5cf1818ec720 +AVRDUDE_VERSION = ad04c429a90f4c34f000ea4ae11db2705915a31f AVRDUDE_SITE = $(call github,kcuzner,avrdude,$(AVRDUDE_VERSION)) AVRDUDE_LICENSE = GPLv2+ -AVRDUDR_LICENSE_FILES = avrdude/COPYING +AVRDUDE_LICENSE_FILES = avrdude/COPYING AVRDUDE_SUBDIR = avrdude # Sources coming from git, without generated configure and Makefile.in # files. diff --git a/package/axel/axel.mk b/package/axel/axel.mk index 6328d997e1..6cf0fa8d75 100644 --- a/package/axel/axel.mk +++ b/package/axel/axel.mk @@ -9,13 +9,14 @@ AXEL_SITE = http://sources.buildroot.net AXEL_LICENSE = GPLv2+ AXEL_LICENSE_FILES = COPYING -AXEL_LDFLAGS = -lpthread - ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) AXEL_DEPENDENCIES += gettext AXEL_LDFLAGS += -lintl endif +# -lintl may use symbols from -lpthread +AXEL_LDFLAGS += -lpthread + ifneq ($(BR2_ENABLE_LOCALE),y) AXEL_DISABLE_I18N = --i18n=0 endif @@ -30,12 +31,12 @@ define AXEL_CONFIGURE_CMDS endef define AXEL_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LFLAGS="$(TARGET_LDFLAGS) $(AXEL_LDFLAGS)" -C $(@D) endef define AXEL_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/axfsutils/axfsutils.hash b/package/axfsutils/axfsutils.hash index 4a3b3fb34d..bde94a0b90 100644 --- a/package/axfsutils/axfsutils.hash +++ b/package/axfsutils/axfsutils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9c041393131bdfebefa89cfaba7788b514b56ffc51bda8f130fd49b39fe89dc0 axfsutils-f26ae785e33df76f658b71ef2cfbc7f511ff875d.tar.gz +sha256 80dd97305b005262643e9fad04ec03b860430ea2c58666ce5b007897afbc9693 axfsutils-64886703fdff6cfc64eb20fbe7d7295bbeec867b.tar.gz diff --git a/package/axfsutils/axfsutils.mk b/package/axfsutils/axfsutils.mk index 4dd60efcde..1bd62809af 100644 --- a/package/axfsutils/axfsutils.mk +++ b/package/axfsutils/axfsutils.mk @@ -4,11 +4,11 @@ # ################################################################################ -AXFSUTILS_VERSION = f26ae785e33df76f658b71ef2cfbc7f511ff875d +AXFSUTILS_VERSION = 64886703fdff6cfc64eb20fbe7d7295bbeec867b AXFSUTILS_SITE = $(call github,jaredeh,axfs,$(AXFSUTILS_VERSION)) AXFSUTILS_LICENSE = GPLv2 AXFSUTILS_LICENSE_FILES = mkfs.axfs-legacy/COPYING -AXFSUTILS_DEPENDENCIES = host-zlib +HOST_AXFSUTILS_DEPENDENCIES = host-zlib # The 'new' mkfs.axfs version requires GNUstep which is not a buildroot # prerequisite. The 'legacy' one works just as well without that requirement. diff --git a/package/babeld/0001-kernel_netlink.c-don-t-include-linux-if_bridge.h.patch b/package/babeld/0001-kernel_netlink.c-don-t-include-linux-if_bridge.h.patch new file mode 100644 index 0000000000..efadd2038a --- /dev/null +++ b/package/babeld/0001-kernel_netlink.c-don-t-include-linux-if_bridge.h.patch @@ -0,0 +1,78 @@ +From 723bbfd8bdb76012a3da937c7499cf3c0b111dd5 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 20 Aug 2016 11:13:56 +0200 +Subject: [PATCH] kernel_netlink.c: don't include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Including causes the inclusion of , +which defines 'struct in6_addr', also defined in , causing +a build failure with the musl C library: + +In file included from /home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/if_bridge.h:18:0, + from kernel_netlink.c:42, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/in6.h:32:8: error: redefinition of ‘struct in6_addr’ + struct in6_addr { + ^ +In file included from kernel_netlink.c:33:0, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:23:8: note: originally defined here + struct in6_addr { + ^ +In file included from /home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/if_bridge.h:18:0, + from kernel_netlink.c:42, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/in6.h:49:8: error: redefinition of ‘struct sockaddr_in6’ + struct sockaddr_in6 { + ^ +In file included from kernel_netlink.c:33:0, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:34:8: note: originally defined here + struct sockaddr_in6 { + ^ +In file included from /home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/if_bridge.h:18:0, + from kernel_netlink.c:42, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/linux/in6.h:59:8: error: redefinition of ‘struct ipv6_mreq’ + struct ipv6_mreq { + ^ +In file included from kernel_netlink.c:33:0, + from kernel.c:31: +/home/thomas/projets/buildroot/output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:42:8: note: originally defined here + struct ipv6_mreq { + ^ + +In order to address this, this patch removes the +inclusion, and instead defines BRCTL_GET_BRIDGES to the appropriate +value if it's not provided by the C library. + +Signed-off-by: Thomas Petazzoni +--- + kernel_netlink.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/kernel_netlink.c b/kernel_netlink.c +index 4eadc39..1a5b3dd 100644 +--- a/kernel_netlink.c ++++ b/kernel_netlink.c +@@ -39,10 +39,14 @@ THE SOFTWARE. + #include + #include + #include +-#include + #include + #include + ++/* From */ ++#ifndef BRCTL_GET_BRIDGES ++#define BRCTL_GET_BRIDGES 1 ++#endif ++ + #if(__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 5) + #define RTA_TABLE 15 + #endif +-- +2.7.4 + diff --git a/package/babeld/Config.in b/package/babeld/Config.in new file mode 100644 index 0000000000..5d08c0842a --- /dev/null +++ b/package/babeld/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_BABELD + bool "babeld" + depends on BR2_USE_MMU # fork() + help + Babel is a loop-avoiding distance-vector routing protocol for IPv6 + and IPv4 with fast convergence properties. + + http://www.pps.univ-paris-diderot.fr/~jch/software/babel/ diff --git a/package/babeld/S50babeld b/package/babeld/S50babeld new file mode 100644 index 0000000000..c75b4c378a --- /dev/null +++ b/package/babeld/S50babeld @@ -0,0 +1,40 @@ +#!/bin/sh +# +# Starts babeld. +# + +# Allow a few customizations from a config file +test -r /etc/default/babeld && . /etc/default/babeld + +start() { + printf "Starting babeld: " + start-stop-daemon -S -q -p /run/babeld.pid \ + --exec /usr/sbin/babeld -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping babeld: " + start-stop-daemon -K -q -p /run/babeld.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/babeld/babeld.hash b/package/babeld/babeld.hash new file mode 100644 index 0000000000..0ee64c4f9c --- /dev/null +++ b/package/babeld/babeld.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 2c955e7d4ad971da1e860e5cedbaf1dd79903468ff6488b3f67102b2a8d087b6 babeld-1.7.1.tar.gz diff --git a/package/babeld/babeld.mk b/package/babeld/babeld.mk new file mode 100644 index 0000000000..d718237d98 --- /dev/null +++ b/package/babeld/babeld.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# babeld +# +################################################################################ + +BABELD_VERSION = 1.7.1 +BABELD_SITE = http://www.pps.univ-paris-diderot.fr/~jch/software/files +BABELD_LICENSE = MIT +BABELD_LICENSE_FILES = LICENCE + +define BABELD_BUILD_CMDS + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) +endef + +define BABELD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/babeld $(TARGET_DIR)/usr/sbin/babeld +endef + +define BABELD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/babeld/S50babeld \ + $(TARGET_DIR)/etc/init.d/S50babeld +endef + +define BABELD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/babeld/babeld.service \ + $(TARGET_DIR)/usr/lib/systemd/system/babeld.service + + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + + ln -fs ../../../../usr/lib/systemd/system/babeld.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/babeld.service +endef + +$(eval $(generic-package)) diff --git a/package/babeld/babeld.service b/package/babeld/babeld.service new file mode 100644 index 0000000000..abe72a8cd0 --- /dev/null +++ b/package/babeld/babeld.service @@ -0,0 +1,10 @@ +[Unit] +Description=Babel daemon + +[Service] +EnvironmentFile=-/etc/default/babeld +ExecStart=/usr/sbin/babeld $DAEMON_ARGS +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/package/bandwidthd/bandwidthd.hash b/package/bandwidthd/bandwidthd.hash new file mode 100644 index 0000000000..248f9ff961 --- /dev/null +++ b/package/bandwidthd/bandwidthd.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 0270d0def6cc53c8d47d59a9dd093d51fbca1620adeef85c15e35a32010e26ab bandwidthd-v2.0.1-auto-r11.tar.gz diff --git a/package/bash/0031-patchlevel-31.patch b/package/bash/0031-patchlevel-31.patch deleted file mode 100644 index d285a1f882..0000000000 --- a/package/bash/0031-patchlevel-31.patch +++ /dev/null @@ -1,116 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-031 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-031 - -Bug-Reported-by: lolilolicon -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-08/msg00139.html - -Bug-Description: - -The new nameref assignment functionality introduced in bash-4.3 did not perform -enough validation on the variable value and would create variables with -invalid names. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/subst.h 2014-01-11 21:02:27.000000000 -0500 ---- b/subst.h 2014-09-01 12:16:56.000000000 -0400 -*************** -*** 48,51 **** ---- 48,52 ---- - #define ASS_MKGLOBAL 0x0008 /* force global assignment */ - #define ASS_NAMEREF 0x0010 /* assigning to nameref variable */ -+ #define ASS_FROMREF 0x0020 /* assigning from value of nameref variable */ - - /* Flags for the string extraction functions. */ -*** a/bash-4.3-patched/variables.c 2014-05-15 08:26:50.000000000 -0400 ---- b/variables.c 2014-09-01 14:37:44.000000000 -0400 -*************** -*** 2504,2511 **** - int hflags, aflags; - { -! char *newval; - SHELL_VAR *entry; - - entry = (hflags & HASH_NOSRCH) ? (SHELL_VAR *)NULL : hash_lookup (name, table); - /* Follow the nameref chain here if this is the global variables table */ - if (entry && nameref_p (entry) && (invisible_p (entry) == 0) && table == global_variables->table) ---- 2566,2590 ---- - int hflags, aflags; - { -! char *newname, *newval; - SHELL_VAR *entry; -+ #if defined (ARRAY_VARS) -+ arrayind_t ind; -+ char *subp; -+ int sublen; -+ #endif - -+ newname = 0; -+ #if defined (ARRAY_VARS) -+ if ((aflags & ASS_FROMREF) && (hflags & HASH_NOSRCH) == 0 && valid_array_reference (name)) -+ { -+ newname = array_variable_name (name, &subp, &sublen); -+ if (newname == 0) -+ return (SHELL_VAR *)NULL; /* XXX */ -+ entry = hash_lookup (newname, table); -+ } -+ else -+ #endif - entry = (hflags & HASH_NOSRCH) ? (SHELL_VAR *)NULL : hash_lookup (name, table); -+ - /* Follow the nameref chain here if this is the global variables table */ - if (entry && nameref_p (entry) && (invisible_p (entry) == 0) && table == global_variables->table) -*************** -*** 2538,2541 **** ---- 2617,2630 ---- - } - } -+ #if defined (ARRAY_VARS) -+ else if (entry == 0 && newname) -+ { -+ entry = make_new_array_variable (newname); /* indexed array by default */ -+ if (entry == 0) -+ return entry; -+ ind = array_expand_index (name, subp, sublen); -+ bind_array_element (entry, ind, value, aflags); -+ } -+ #endif - else if (entry == 0) - { -*************** -*** 2658,2662 **** - if (nameref_cell (nv) == 0) - return (bind_variable_internal (nv->name, value, nvc->table, 0, flags)); -! return (bind_variable_internal (nameref_cell (nv), value, nvc->table, 0, flags)); - } - else ---- 2747,2752 ---- - if (nameref_cell (nv) == 0) - return (bind_variable_internal (nv->name, value, nvc->table, 0, flags)); -! /* XXX - bug here with ref=array[index] */ -! return (bind_variable_internal (nameref_cell (nv), value, nvc->table, 0, flags|ASS_FROMREF)); - } - else -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 30 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 31 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0032-patchlevel-32.patch b/package/bash/0032-patchlevel-32.patch deleted file mode 100644 index 6cdc0f1e81..0000000000 --- a/package/bash/0032-patchlevel-32.patch +++ /dev/null @@ -1,55 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-032 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-032 - -Bug-Reported-by: crispusfairbairn@gmail.com -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-09/msg00013.html - -Bug-Description: - -When bash is running in Posix mode, it allows signals -- including SIGCHLD -- -to interrupt the `wait' builtin, as Posix requires. However, the interrupt -causes bash to not run a SIGCHLD trap for all exited children. This patch -fixes the issue and restores the documented behavior in Posix mode. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/jobs.c 2014-05-14 09:20:15.000000000 -0400 ---- b/jobs.c 2014-09-09 11:50:38.000000000 -0400 -*************** -*** 3340,3344 **** - { - interrupt_immediately = 0; -! trap_handler (SIGCHLD); /* set pending_traps[SIGCHLD] */ - wait_signal_received = SIGCHLD; - /* If we're in a signal handler, let CHECK_WAIT_INTR pick it up; ---- 3346,3352 ---- - { - interrupt_immediately = 0; -! /* This was trap_handler (SIGCHLD) but that can lose traps if -! children_exited > 1 */ -! queue_sigchld_trap (children_exited); - wait_signal_received = SIGCHLD; - /* If we're in a signal handler, let CHECK_WAIT_INTR pick it up; -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 31 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 32 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0033-patchlevel-33.patch b/package/bash/0033-patchlevel-33.patch deleted file mode 100644 index 45fb686e33..0000000000 --- a/package/bash/0033-patchlevel-33.patch +++ /dev/null @@ -1,229 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-033 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-033 - -Bug-Reported-by: mickael9@gmail.com, Jan Rome -Bug-Reference-ID: <20140907224046.382ED3610CC@mickael-laptop.localdomain>, - <540D661D.50908@gmail.com> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-09/msg00029.html - http://lists.gnu.org/archive/html/bug-bash/2014-09/msg00030.html - -Bug-Description: - -Bash does not clean up the terminal state in all cases where bash or -readline modifies it and bash is subsequently terminated by a fatal signal. -This happens when the `read' builtin modifies the terminal settings, both -when readline is active and when it is not. It occurs most often when a script -installs a trap that exits on a signal without re-sending the signal to itself. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/shell.c 2014-01-14 08:04:32.000000000 -0500 ---- b/shell.c 2014-12-22 10:27:50.000000000 -0500 -*************** -*** 74,77 **** ---- 74,78 ---- - - #if defined (READLINE) -+ # include - # include "bashline.h" - #endif -*************** -*** 910,913 **** ---- 912,923 ---- - fflush (stderr); - -+ /* Clean up the terminal if we are in a state where it's been modified. */ -+ #if defined (READLINE) -+ if (RL_ISSTATE (RL_STATE_TERMPREPPED) && rl_deprep_term_function) -+ (*rl_deprep_term_function) (); -+ #endif -+ if (read_tty_modified ()) -+ read_tty_cleanup (); -+ - /* Do trap[0] if defined. Allow it to override the exit status - passed to us. */ -*** a/bash-4.3-patched/builtins/read.def 2014-10-01 12:57:38.000000000 -0400 ---- b/builtins/read.def 2014-12-22 10:48:54.000000000 -0500 -*************** -*** 141,148 **** - int sigalrm_seen; - -! static int reading; - static SigHandler *old_alrm; - static unsigned char delim; - - /* In all cases, SIGALRM just sets a flag that we check periodically. This - avoids problems with the semi-tricky stuff we do with the xfree of ---- 141,150 ---- - int sigalrm_seen; - -! static int reading, tty_modified; - static SigHandler *old_alrm; - static unsigned char delim; - -+ static struct ttsave termsave; -+ - /* In all cases, SIGALRM just sets a flag that we check periodically. This - avoids problems with the semi-tricky stuff we do with the xfree of -*************** -*** 189,193 **** - SHELL_VAR *var; - TTYSTRUCT ttattrs, ttset; -- struct ttsave termsave; - #if defined (ARRAY_VARS) - WORD_LIST *alist; ---- 191,194 ---- -*************** -*** 222,226 **** - USE_VAR(lastsig); - -! sigalrm_seen = reading = 0; - - i = 0; /* Index into the string that we are reading. */ ---- 223,227 ---- - USE_VAR(lastsig); - -! sigalrm_seen = reading = tty_modified = 0; - - i = 0; /* Index into the string that we are reading. */ -*************** -*** 439,442 **** ---- 440,445 ---- - goto assign_vars; - } -+ if (interactive_shell == 0) -+ initialize_terminating_signals (); - old_alrm = set_signal_handler (SIGALRM, sigalrm); - add_unwind_protect (reset_alarm, (char *)NULL); -*************** -*** 483,487 **** ---- 486,493 ---- - if (i < 0) - sh_ttyerror (1); -+ tty_modified = 1; - add_unwind_protect ((Function *)ttyrestore, (char *)&termsave); -+ if (interactive_shell == 0) -+ initialize_terminating_signals (); - } - } -*************** -*** 498,502 **** ---- 504,511 ---- - sh_ttyerror (1); - -+ tty_modified = 1; - add_unwind_protect ((Function *)ttyrestore, (char *)&termsave); -+ if (interactive_shell == 0) -+ initialize_terminating_signals (); - } - -*************** -*** 589,592 **** ---- 598,603 ---- - else - lastsig = 0; -+ if (terminating_signal && tty_modified) -+ ttyrestore (&termsave); /* fix terminal before exiting */ - CHECK_TERMSIG; - eof = 1; -*************** -*** 979,982 **** ---- 990,1007 ---- - { - ttsetattr (ttp->fd, ttp->attrs); -+ tty_modified = 0; -+ } -+ -+ void -+ read_tty_cleanup () -+ { -+ if (tty_modified) -+ ttyrestore (&termsave); -+ } -+ -+ int -+ read_tty_modified () -+ { -+ return (tty_modified); - } - -*** ./bash-4.3-patched/builtins/common.h 2014-10-01 12:57:47.000000000 -0400 ---- b/builtins/common.h 2014-12-22 10:10:14.000000000 -0500 -*************** -*** 123,126 **** ---- 141,148 ---- - extern void getopts_reset __P((int)); - -+ /* Functions from read.def */ -+ extern void read_tty_cleanup __P((void)); -+ extern int read_tty_modified __P((void)); -+ - /* Functions from set.def */ - extern int minus_o_option_value __P((char *)); -*** a/bash-4.3-patched/bashline.c 2014-05-14 09:22:39.000000000 -0400 ---- b/bashline.c 2014-09-08 11:28:56.000000000 -0400 -*************** -*** 203,206 **** ---- 203,207 ---- - extern int array_needs_making; - extern int posixly_correct, no_symbolic_links; -+ extern int sigalrm_seen; - extern char *current_prompt_string, *ps1_prompt; - extern STRING_INT_ALIST word_token_alist[]; -*************** -*** 4209,4214 **** - /* If we're going to longjmp to top_level, make sure we clean up readline. - check_signals will call QUIT, which will eventually longjmp to top_level, -! calling run_interrupt_trap along the way. */ -! if (interrupt_state) - rl_cleanup_after_signal (); - bashline_reset_event_hook (); ---- 4262,4268 ---- - /* If we're going to longjmp to top_level, make sure we clean up readline. - check_signals will call QUIT, which will eventually longjmp to top_level, -! calling run_interrupt_trap along the way. The check for sigalrm_seen is -! to clean up the read builtin's state. */ -! if (terminating_signal || interrupt_state || sigalrm_seen) - rl_cleanup_after_signal (); - bashline_reset_event_hook (); -*** a/bash-4.3-patched/sig.c 2014-01-10 15:06:06.000000000 -0500 ---- b/sig.c 2014-09-08 11:26:33.000000000 -0400 -*************** -*** 533,538 **** - /* Set the event hook so readline will call it after the signal handlers - finish executing, so if this interrupted character input we can get -! quick response. */ -! if (interactive_shell && interactive && no_line_editing == 0) - bashline_set_event_hook (); - #endif ---- 533,540 ---- - /* Set the event hook so readline will call it after the signal handlers - finish executing, so if this interrupted character input we can get -! quick response. If readline is active or has modified the terminal we -! need to set this no matter what the signal is, though the check for -! RL_STATE_TERMPREPPED is possibly redundant. */ -! if (RL_ISSTATE (RL_STATE_SIGHANDLER) || RL_ISSTATE (RL_STATE_TERMPREPPED)) - bashline_set_event_hook (); - #endif -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 32 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 33 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0034-patchlevel-34.patch b/package/bash/0034-patchlevel-34.patch deleted file mode 100644 index 79c8945c5c..0000000000 --- a/package/bash/0034-patchlevel-34.patch +++ /dev/null @@ -1,94 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-034 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-034 - -Bug-Reported-by: Dreamcat4 -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-05/msg00001.html - -Bug-Description: - -If neither the -f nor -v options is supplied to unset, and a name argument is -found to be a function and unset, subsequent name arguments are not treated as -variables before attempting to unset a function by that name. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/builtins/set.def 2013-04-19 07:20:34.000000000 -0400 ---- b/builtins/set.def 2015-05-05 13:25:36.000000000 -0400 -*************** -*** 752,758 **** ---- 797,805 ---- - { - int unset_function, unset_variable, unset_array, opt, nameref, any_failed; -+ int global_unset_func, global_unset_var; - char *name; - - unset_function = unset_variable = unset_array = nameref = any_failed = 0; -+ global_unset_func = global_unset_var = 0; - - reset_internal_getopt (); -*************** -*** 762,769 **** - { - case 'f': -! unset_function = 1; - break; - case 'v': -! unset_variable = 1; - break; - case 'n': ---- 809,816 ---- - { - case 'f': -! global_unset_func = 1; - break; - case 'v': -! global_unset_var = 1; - break; - case 'n': -*************** -*** 778,782 **** - list = loptend; - -! if (unset_function && unset_variable) - { - builtin_error (_("cannot simultaneously unset a function and a variable")); ---- 825,829 ---- - list = loptend; - -! if (global_unset_func && global_unset_var) - { - builtin_error (_("cannot simultaneously unset a function and a variable")); -*************** -*** 796,799 **** ---- 843,849 ---- - name = list->word->word; - -+ unset_function = global_unset_func; -+ unset_variable = global_unset_var; -+ - #if defined (ARRAY_VARS) - unset_array = 0; - -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 33 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 34 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0035-patchlevel-35.patch b/package/bash/0035-patchlevel-35.patch deleted file mode 100644 index c18b60dc56..0000000000 --- a/package/bash/0035-patchlevel-35.patch +++ /dev/null @@ -1,67 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-035 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-035 - -Bug-Reported-by: -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-08/msg00045.html - -Bug-Description: - -A locale with a long name can trigger a buffer overflow and core dump. This -applies on systems that do not have locale_charset in libc, are not using -GNU libiconv, and are not using the libintl that ships with bash in lib/intl. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/lib/sh/unicode.c 2014-01-30 16:47:19.000000000 -0500 ---- b/lib/sh/unicode.c 2015-05-01 08:58:30.000000000 -0400 -*************** -*** 79,83 **** - if (s) - { -! strcpy (charsetbuf, s+1); - t = strchr (charsetbuf, '@'); - if (t) ---- 79,84 ---- - if (s) - { -! strncpy (charsetbuf, s+1, sizeof (charsetbuf) - 1); -! charsetbuf[sizeof (charsetbuf) - 1] = '\0'; - t = strchr (charsetbuf, '@'); - if (t) -*************** -*** 85,89 **** - return charsetbuf; - } -! strcpy (charsetbuf, locale); - return charsetbuf; - } ---- 86,91 ---- - return charsetbuf; - } -! strncpy (charsetbuf, locale, sizeof (charsetbuf) - 1); -! charsetbuf[sizeof (charsetbuf) - 1] = '\0'; - return charsetbuf; - } -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 34 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 35 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0036-patchlevel-36.patch b/package/bash/0036-patchlevel-36.patch deleted file mode 100644 index f35b29b5bd..0000000000 --- a/package/bash/0036-patchlevel-36.patch +++ /dev/null @@ -1,61 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-036 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-036 - -Bug-Reported-by: emanuelczirai@cryptolab.net -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00071.html - -Bug-Description: - -When evaluating and setting integer variables, and the assignment fails to -create a variable (for example, when performing an operation on an array -variable with an invalid subscript), bash attempts to dereference a null -pointer, causing a segmentation violation. - -Patch (apply with `patch -p0'): - -*** a/bash-20150206/variables.c 2015-01-23 20:39:27.000000000 -0500 ---- b/variables.c 2015-02-19 13:56:12.000000000 -0500 -*************** -*** 2834,2841 **** - v = bind_variable (lhs, rhs, 0); - -! if (v && isint) -! VSETATTR (v, att_integer); -! -! VUNSETATTR (v, att_invisible); - - return (v); ---- 2834,2843 ---- - v = bind_variable (lhs, rhs, 0); - -! if (v) -! { -! if (isint) -! VSETATTR (v, att_integer); -! VUNSETATTR (v, att_invisible); -! } - - return (v); -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 35 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 36 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0037-patchlevel-37.patch b/package/bash/0037-patchlevel-37.patch deleted file mode 100644 index 5f8aff356c..0000000000 --- a/package/bash/0037-patchlevel-37.patch +++ /dev/null @@ -1,47 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-037 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-037 - -Bug-Reported-by: Greg Wooledge -Bug-Reference-ID: <20150204144240.GN13956@eeg.ccf.org> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00007.html - -Bug-Description: - -If an associative array uses `@' or `*' as a subscript, `declare -p' produces -output that cannot be reused as input. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/assoc.c 2011-11-05 16:39:05.000000000 -0400 ---- b/assoc.c 2015-02-04 15:28:25.000000000 -0500 -*************** -*** 437,440 **** ---- 440,445 ---- - if (sh_contains_shell_metas (tlist->key)) - istr = sh_double_quote (tlist->key); -+ else if (ALL_ELEMENT_SUB (tlist->key[0]) && tlist->key[1] == '\0') -+ istr = sh_double_quote (tlist->key); - else - istr = tlist->key; -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 36 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 37 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0038-patchlevel-38.patch b/package/bash/0038-patchlevel-38.patch deleted file mode 100644 index 09fd9c2ec0..0000000000 --- a/package/bash/0038-patchlevel-38.patch +++ /dev/null @@ -1,92 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-038 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-038 - -Bug-Reported-by: worley@alum.mit.edu (Dale R. Worley) -Bug-Reference-ID: <201406100051.s5A0pCeB014978@hobgoblin.ariadne.com> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00028.html - -Bug-Description: - -There are a number of instances where `time' is not recognized as a reserved -word when the shell grammar says it should be. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/parse.y 2014-04-07 11:56:12.000000000 -0400 ---- b/parse.y 2014-06-11 10:25:53.000000000 -0400 -*************** -*** 2819,2827 **** - case OR_OR: - case '&': - case DO: - case THEN: - case ELSE: - case '{': /* } */ -! case '(': /* ) */ - case BANG: /* ! time pipeline */ - case TIME: /* time time pipeline */ ---- 2819,2832 ---- - case OR_OR: - case '&': -+ case WHILE: - case DO: -+ case UNTIL: -+ case IF: - case THEN: -+ case ELIF: - case ELSE: - case '{': /* } */ -! case '(': /* )( */ -! case ')': /* only valid in case statement */ - case BANG: /* ! time pipeline */ - case TIME: /* time time pipeline */ -*** a/bash-4.3-patched/y.tab.c 2014-10-05 13:52:50.000000000 -0400 ---- b/y.tab.c 2015-05-19 15:08:43.000000000 -0400 -*************** -*** 5131,5139 **** - case OR_OR: - case '&': - case DO: - case THEN: - case ELSE: - case '{': /* } */ -! case '(': /* ) */ - case BANG: /* ! time pipeline */ - case TIME: /* time time pipeline */ ---- 5131,5144 ---- - case OR_OR: - case '&': -+ case WHILE: - case DO: -+ case UNTIL: -+ case IF: - case THEN: -+ case ELIF: - case ELSE: - case '{': /* } */ -! case '(': /* )( */ -! case ')': /* only valid in case statement */ - case BANG: /* ! time pipeline */ - case TIME: /* time time pipeline */ -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 37 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 38 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0039-patchlevel-39.patch b/package/bash/0039-patchlevel-39.patch deleted file mode 100644 index 2a555b96c1..0000000000 --- a/package/bash/0039-patchlevel-39.patch +++ /dev/null @@ -1,61 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-039 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-039 - -Bug-Reported-by: SN -Bug-Reference-ID: <54E2554C.205@gazeta.pl> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00060.html - -Bug-Description: - -Using the output of `declare -p' when run in a function can result in variables -that are invisible to `declare -p'. This problem occurs when an assignment -builtin such as `declare' receives a quoted compound array assignment as one of -its arguments. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/arrayfunc.c 2014-10-01 13:08:48.000000000 -0400 ---- b/arrayfunc.c 2015-02-19 14:33:05.000000000 -0500 -*************** -*** 405,408 **** ---- 405,411 ---- - else - array_insert (a, i, l->word->word); -+ -+ VUNSETATTR (var, att_invisible); /* no longer invisible */ -+ - return var; - } -*************** -*** 635,638 **** ---- 638,645 ---- - if (nlist) - dispose_words (nlist); -+ -+ if (var) -+ VUNSETATTR (var, att_invisible); /* no longer invisible */ -+ - return (var); - } -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 38 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 39 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0040-patchlevel-40.patch b/package/bash/0040-patchlevel-40.patch deleted file mode 100644 index 2a03c45a92..0000000000 --- a/package/bash/0040-patchlevel-40.patch +++ /dev/null @@ -1,51 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-040 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-040 - -Bug-Reported-by: Jean Delvare -Bug-Reference-ID: <20150609180231.5f463695@endymion.delvare> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00033.html - -Bug-Description: - -There is a memory leak that occurs when bash expands an array reference on -the rhs of an assignment statement. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/subst.c 2014-10-01 12:57:47.000000000 -0400 ---- b/subst.c 2015-06-22 09:16:53.000000000 -0400 -*************** -*** 5783,5787 **** - if (pflags & PF_ASSIGNRHS) - { -! temp = array_variable_name (name, &tt, (int *)0); - if (ALL_ELEMENT_SUB (tt[0]) && tt[1] == ']') - temp = array_value (name, quoted|Q_DOUBLE_QUOTES, 0, &atype, &ind); ---- 5783,5787 ---- - if (pflags & PF_ASSIGNRHS) - { -! var = array_variable_part (name, &tt, (int *)0); - if (ALL_ELEMENT_SUB (tt[0]) && tt[1] == ']') - temp = array_value (name, quoted|Q_DOUBLE_QUOTES, 0, &atype, &ind); -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 39 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 40 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0041-patchlevel-41.patch b/package/bash/0041-patchlevel-41.patch deleted file mode 100644 index c8ba4b1081..0000000000 --- a/package/bash/0041-patchlevel-41.patch +++ /dev/null @@ -1,76 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-041 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-041 - -Bug-Reported-by: Hanno Böck -Bug-Reference-ID: <20150623131106.6f111da9@pc1>, <20150707004640.0e61d2f9@pc1> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00089.html, - http://lists.gnu.org/archive/html/bug-bash/2015-07/msg00018.html - -Bug-Description: - -There are several out-of-bounds read errors that occur when completing command -lines where assignment statements appear before the command name. The first -two appear only when programmable completion is enabled; the last one only -happens when listing possible completions. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3.40/bashline.c 2014-12-29 14:39:43.000000000 -0500 ---- b/bashline.c 2015-08-12 10:21:58.000000000 -0400 -*************** -*** 1469,1476 **** ---- 1469,1489 ---- - os = start; - n = 0; -+ was_assignment = 0; - s = find_cmd_start (os); - e = find_cmd_end (end); - do - { -+ /* Don't read past the end of rl_line_buffer */ -+ if (s > rl_end) -+ { -+ s1 = s = e1; -+ break; -+ } -+ /* Or past point if point is within an assignment statement */ -+ else if (was_assignment && s > rl_point) -+ { -+ s1 = s = e1; -+ break; -+ } - /* Skip over assignment statements preceding a command name. If we - don't find a command name at all, we can perform command name -*** a/bash-4.3.40/lib/readline/complete.c 2013-10-14 09:27:10.000000000 -0400 ---- b/lib/readline/complete.c 2015-07-31 09:34:39.000000000 -0400 -*************** -*** 690,693 **** ---- 690,695 ---- - if (temp == 0 || *temp == '\0') - return (pathname); -+ else if (temp[1] == 0 && temp == pathname) -+ return (pathname); - /* If the basename is NULL, we might have a pathname like '/usr/src/'. - Look for a previous slash and, if one is found, return the portion -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 40 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 41 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0042-patchlevel-42.patch b/package/bash/0042-patchlevel-42.patch deleted file mode 100644 index bb3471c63f..0000000000 --- a/package/bash/0042-patchlevel-42.patch +++ /dev/null @@ -1,59 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-042 - -Signed-off-by: Gustavo Zacarias - - BASH PATCH REPORT - ================= - -Bash-Release: 4.3 -Patch-ID: bash43-042 - -Bug-Reported-by: Nathan Neulinger -Bug-Reference-ID: <558EFDF2.7060402@neulinger.org> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00096.html - -Bug-Description: - -There is a problem when parsing command substitutions containing `case' -commands within pipelines that causes the parser to not correctly identify -the end of the command substitution. - -Patch (apply with `patch -p0'): - -*** a/bash-4.3-patched/parse.y 2015-05-18 19:27:05.000000000 -0400 ---- b/parse.y 2015-06-29 10:59:27.000000000 -0400 -*************** -*** 3709,3712 **** ---- 3709,3714 ---- - tflags |= LEX_INWORD; - lex_wlen = 0; -+ if (tflags & LEX_RESWDOK) -+ lex_rwlen = 0; - } - } -*** a/bash-4.3-patched/y.tab.c 2015-05-18 19:27:05.000000000 -0400 ---- b/y.tab.c 2015-06-29 10:59:27.000000000 -0400 -*************** -*** 6021,6024 **** ---- 6021,6026 ---- - tflags |= LEX_INWORD; - lex_wlen = 0; -+ if (tflags & LEX_RESWDOK) -+ lex_rwlen = 0; - } - } -*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 ---- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 -*************** -*** 26,30 **** - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 41 - - #endif /* _PATCHLEVEL_H_ */ ---- 26,30 ---- - looks for to find the patch level (for the sccs version string). */ - -! #define PATCHLEVEL 42 - - #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/Config.in b/package/bash/Config.in index 2f823dcc7f..783e4b38b5 100644 --- a/package/bash/Config.in +++ b/package/bash/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_BASH select BR2_PACKAGE_READLINE # uses fork() depends on BR2_USE_MMU + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help The standard GNU Bourne again shell. diff --git a/package/bash/bash.hash b/package/bash/bash.hash index faf2364588..adbd60868a 100644 --- a/package/bash/bash.hash +++ b/package/bash/bash.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 317881019bbf2262fb814b7dd8e40632d13c3608d2f237800a8828fbb8a640dd bash-4.3.30.tar.gz +sha256 d86b3392c1202e8ff5a423b302e6284db7f8f435ea9f39b5b1b20fd3ac36dfcb bash-4.4.tar.gz diff --git a/package/bash/bash.mk b/package/bash/bash.mk index 3cd8d8273c..090cf5224c 100644 --- a/package/bash/bash.mk +++ b/package/bash/bash.mk @@ -4,7 +4,7 @@ # ################################################################################ -BASH_VERSION = 4.3.30 +BASH_VERSION = 4.4 BASH_SITE = $(BR2_GNU_MIRROR)/bash # Build after since bash is better than busybox shells BASH_DEPENDENCIES = ncurses readline host-bison \ diff --git a/package/bash/bash44-001.patch b/package/bash/bash44-001.patch new file mode 100644 index 0000000000..842aea4313 --- /dev/null +++ b/package/bash/bash44-001.patch @@ -0,0 +1,64 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-001 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-001 + +Bug-Reported-by: Sean Zha +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00107.html + +Bug-Description: + +Bash-4.4 changed the way the history list is initially allocated to reduce +the number of reallocations and copies. Users who set HISTSIZE to a very +large number to essentially unlimit the size of the history list will get +memory allocation errors + +Patch (apply with `patch -p0'): + +*** a/bash-4.4/lib/readline/history.c 2015-12-28 13:50:31.000000000 -0500 +--- b/lib/readline/history.c 2016-09-30 14:28:40.000000000 -0400 +*************** +*** 58,61 **** +--- 58,63 ---- + #define DEFAULT_HISTORY_INITIAL_SIZE 502 + ++ #define MAX_HISTORY_INITIAL_SIZE 8192 ++ + /* The number of slots to increase the_history by. */ + #define DEFAULT_HISTORY_GROW_SIZE 50 +*************** +*** 308,312 **** + { + if (history_stifled && history_max_entries > 0) +! history_size = history_max_entries + 2; + else + history_size = DEFAULT_HISTORY_INITIAL_SIZE; +--- 310,316 ---- + { + if (history_stifled && history_max_entries > 0) +! history_size = (history_max_entries > MAX_HISTORY_INITIAL_SIZE) +! ? MAX_HISTORY_INITIAL_SIZE +! : history_max_entries + 2; + else + history_size = DEFAULT_HISTORY_INITIAL_SIZE; +*** a/bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 0 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 1 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-002.patch b/package/bash/bash44-002.patch new file mode 100644 index 0000000000..6f4a809fb2 --- /dev/null +++ b/package/bash/bash44-002.patch @@ -0,0 +1,73 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-002 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-002 + +Bug-Reported-by: Eric Pruitt +Bug-Reference-ID: <20160916055120.GA28272@sinister.codevat.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00015.html + +Bug-Description: + +Bash-4.4 warns when discarding NUL bytes in command substitution output +instead of silently dropping them. This patch changes the warnings from +one per NUL byte encountered to one warning per command substitution. + +Patch (apply with `patch -p0'): + +*** a/bash-4.4/subst.c 2016-08-30 16:46:38.000000000 -0400 +--- b/subst.c 2016-09-26 10:20:19.000000000 -0400 +*************** +*** 5932,5935 **** +--- 5933,5937 ---- + int istring_index, istring_size, c, tflag, skip_ctlesc, skip_ctlnul; + ssize_t bufn; ++ int nullbyte; + + istring = (char *)NULL; +*************** +*** 5939,5942 **** +--- 5941,5946 ---- + skip_ctlesc |= *s == CTLESC, skip_ctlnul |= *s == CTLNUL; + ++ nullbyte = 0; ++ + /* Read the output of the command through the pipe. This may need to be + changed to understand multibyte characters in the future. */ +*************** +*** 5957,5961 **** + { + #if 1 +! internal_warning ("%s", _("command substitution: ignored null byte in input")); + #endif + continue; +--- 5961,5969 ---- + { + #if 1 +! if (nullbyte == 0) +! { +! internal_warning ("%s", _("command substitution: ignored null byte in input")); +! nullbyte = 1; +! } + #endif + continue; +*** a/bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 1 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 2 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-003.patch b/package/bash/bash44-003.patch new file mode 100644 index 0000000000..cdfc206f8a --- /dev/null +++ b/package/bash/bash44-003.patch @@ -0,0 +1,62 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-003 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-003 + +Bug-Reported-by: op7ic \x00 +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00005.html + +Bug-Description: + +Specially-crafted input, in this case an incomplete pathname expansion +bracket expression containing an invalid collating symbol, can cause the +shell to crash. + +Patch (apply with `patch -p0'): + +*** a/bash-4.4/lib/glob/sm_loop.c 2016-04-10 11:23:21.000000000 -0400 +--- b/lib/glob/sm_loop.c 2016-11-02 14:03:34.000000000 -0400 +*************** +*** 331,334 **** +--- 331,340 ---- + if (p[pc] == L('.') && p[pc+1] == L(']')) + break; ++ if (p[pc] == 0) ++ { ++ if (vp) ++ *vp = INVALID; ++ return (p + pc); ++ } + val = COLLSYM (p, pc); + if (vp) +*************** +*** 484,487 **** +--- 490,496 ---- + c = FOLD (c); + ++ if (c == L('\0')) ++ return ((test == L('[')) ? savep : (CHAR *)0); ++ + if ((flags & FNM_PATHNAME) && c == L('/')) + /* [/] can never match when matching a pathname. */ +*** a/bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 2 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 3 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-004.patch b/package/bash/bash44-004.patch new file mode 100644 index 0000000000..ba6ff62689 --- /dev/null +++ b/package/bash/bash44-004.patch @@ -0,0 +1,88 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-004 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-004 + +Bug-Reported-by: Christian Weisgerber +Bug-Reference-ID: <20161101160302.GB54856@lorvorc.mips.inka.de> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00004.html + +Bug-Description: + +There is a race condition that can result in bash referencing freed memory +when freeing data associated with the last process substitution. + +Patch (apply with `patch -p0'): + +*** a/bash-4.4/jobs.c 2016-08-23 16:38:44.000000000 -0400 +--- b/jobs.c 2016-11-02 18:24:45.000000000 -0400 +*************** +*** 454,457 **** +--- 454,472 ---- + } + ++ void ++ discard_last_procsub_child () ++ { ++ PROCESS *disposer; ++ sigset_t set, oset; ++ ++ BLOCK_CHILD (set, oset); ++ disposer = last_procsub_child; ++ last_procsub_child = (PROCESS *)NULL; ++ UNBLOCK_CHILD (oset); ++ ++ if (disposer) ++ discard_pipeline (disposer); ++ } ++ + struct pipeline_saver * + alloc_pipeline_saver () +*** a/bash-4.4/jobs.h 2016-04-27 10:35:51.000000000 -0400 +--- b/jobs.h 2016-11-02 18:25:08.000000000 -0400 +*************** +*** 191,194 **** +--- 191,195 ---- + extern void stop_making_children __P((void)); + extern void cleanup_the_pipeline __P((void)); ++ extern void discard_last_procsub_child __P((void)); + extern void save_pipeline __P((int)); + extern PROCESS *restore_pipeline __P((int)); +*** a/bash-4.4/subst.c 2016-08-30 16:46:38.000000000 -0400 +--- b/subst.c 2016-11-02 18:23:24.000000000 -0400 +*************** +*** 5809,5816 **** + #if defined (JOB_CONTROL) + if (last_procsub_child) +! { +! discard_pipeline (last_procsub_child); +! last_procsub_child = (PROCESS *)NULL; +! } + last_procsub_child = restore_pipeline (0); + #endif +--- 5834,5838 ---- + #if defined (JOB_CONTROL) + if (last_procsub_child) +! discard_last_procsub_child (); + last_procsub_child = restore_pipeline (0); + #endif +*** a/bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 3 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 4 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-005.patch b/package/bash/bash44-005.patch new file mode 100644 index 0000000000..0278e31dfb --- /dev/null +++ b/package/bash/bash44-005.patch @@ -0,0 +1,51 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-005 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-005 + +Bug-Reported-by: Dr. Werner Fink +Bug-Reference-ID: <20161107100936.ajnojd7dspirdflf@noether.suse.de> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00054.html + +Bug-Description: + +Under certain circumstances, a simple command is optimized to eliminate a +fork, resulting in an EXIT trap not being executed. + +Patch (apply with `patch -p0'): + +*** a/bash-4.4/builtins/evalstring.c 2016-08-11 14:18:51.000000000 -0400 +--- b/builtins/evalstring.c 2016-11-08 15:05:07.000000000 -0500 +*************** +*** 105,114 **** + *bash_input.location.string == '\0' && + command->type == cm_simple && +- #if 0 + signal_is_trapped (EXIT_TRAP) == 0 && + signal_is_trapped (ERROR_TRAP) == 0 && +- #else + any_signals_trapped () < 0 && +- #endif + command->redirects == 0 && command->value.Simple->redirects == 0 && + ((command->flags & CMD_TIME_PIPELINE) == 0) && +--- 105,111 ---- +*** a/bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 4 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 5 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-006.patch b/package/bash/bash44-006.patch new file mode 100644 index 0000000000..ba58ed40c3 --- /dev/null +++ b/package/bash/bash44-006.patch @@ -0,0 +1,63 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-006 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-006 + +Bug-Reported-by: +Bug-Reference-ID: +Bug-Reference-URL: + +Bug-Description: + +Out-of-range negative offsets to popd can cause the shell to crash attempting +to free an invalid memory block. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/builtins/pushd.def 2016-01-25 13:31:49.000000000 -0500 +--- b/builtins/pushd.def 2016-10-28 10:46:49.000000000 -0400 +*************** +*** 366,370 **** + } + +! if (which > directory_list_offset || (directory_list_offset == 0 && which == 0)) + { + pushd_error (directory_list_offset, which_word ? which_word : ""); +--- b/366,370 ---- + } + +! if (which > directory_list_offset || (which < -directory_list_offset) || (directory_list_offset == 0 && which == 0)) + { + pushd_error (directory_list_offset, which_word ? which_word : ""); +*************** +*** 388,391 **** +--- b/388,396 ---- + of the list into place. */ + i = (direction == '+') ? directory_list_offset - which : which; ++ if (i < 0 || i > directory_list_offset) ++ { ++ pushd_error (directory_list_offset, which_word ? which_word : ""); ++ return (EXECUTION_FAILURE); ++ } + free (pushd_directory_list[i]); + directory_list_offset--; +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 5 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 6 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-007.patch b/package/bash/bash44-007.patch new file mode 100644 index 0000000000..71e771d6cf --- /dev/null +++ b/package/bash/bash44-007.patch @@ -0,0 +1,155 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-007 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-007 + +Bug-Reported-by: Jens Heyens +Bug-Reference-ID: +Bug-Reference-URL: https://savannah.gnu.org/support/?109224 + +Bug-Description: + +When performing filename completion, bash dequotes the directory name being +completed, which can result in match failures and potential unwanted +expansion. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/bashline.c 2016-08-05 21:44:05.000000000 -0400 +--- b/bashline.c 2017-01-19 13:15:51.000000000 -0500 +*************** +*** 143,147 **** + static void restore_directory_hook __P((rl_icppfunc_t)); + +! static int directory_exists __P((const char *)); + + static void cleanup_expansion_error __P((void)); +--- b/144,148 ---- + static void restore_directory_hook __P((rl_icppfunc_t)); + +! static int directory_exists __P((const char *, int)); + + static void cleanup_expansion_error __P((void)); +*************** +*** 3103,3111 **** + } + +! /* Check whether not the (dequoted) version of DIRNAME, with any trailing slash +! removed, exists. */ + static int +! directory_exists (dirname) + const char *dirname; + { + char *new_dirname; +--- b/3107,3116 ---- + } + +! /* Check whether not DIRNAME, with any trailing slash removed, exists. If +! SHOULD_DEQUOTE is non-zero, we dequote the directory name first. */ + static int +! directory_exists (dirname, should_dequote) + const char *dirname; ++ int should_dequote; + { + char *new_dirname; +*************** +*** 3113,3118 **** + struct stat sb; + +! /* First, dequote the directory name */ +! new_dirname = bash_dequote_filename ((char *)dirname, rl_completion_quote_character); + dirlen = STRLEN (new_dirname); + if (new_dirname[dirlen - 1] == '/') +--- b/3118,3124 ---- + struct stat sb; + +! /* We save the string and chop the trailing slash because stat/lstat behave +! inconsistently if one is present. */ +! new_dirname = should_dequote ? bash_dequote_filename ((char *)dirname, rl_completion_quote_character) : savestring (dirname); + dirlen = STRLEN (new_dirname); + if (new_dirname[dirlen - 1] == '/') +*************** +*** 3146,3150 **** + should_expand_dirname = '`'; + +! if (should_expand_dirname && directory_exists (local_dirname)) + should_expand_dirname = 0; + +--- b/3152,3156 ---- + should_expand_dirname = '`'; + +! if (should_expand_dirname && directory_exists (local_dirname, 0)) + should_expand_dirname = 0; + +*************** +*** 3156,3160 **** + global_nounset = unbound_vars_is_error; + unbound_vars_is_error = 0; +! wl = expand_prompt_string (new_dirname, 0, W_NOCOMSUB|W_COMPLETE); /* does the right thing */ + unbound_vars_is_error = global_nounset; + if (wl) +--- b/3162,3166 ---- + global_nounset = unbound_vars_is_error; + unbound_vars_is_error = 0; +! wl = expand_prompt_string (new_dirname, 0, W_NOCOMSUB|W_NOPROCSUB|W_COMPLETE); /* does the right thing */ + unbound_vars_is_error = global_nounset; + if (wl) +*************** +*** 3245,3249 **** + } + +! if (should_expand_dirname && directory_exists (local_dirname)) + should_expand_dirname = 0; + +--- b/3262,3266 ---- + } + +! if (should_expand_dirname && directory_exists (local_dirname, 1)) + should_expand_dirname = 0; + +*************** +*** 3251,3255 **** + { + new_dirname = savestring (local_dirname); +! wl = expand_prompt_string (new_dirname, 0, W_NOCOMSUB|W_COMPLETE); /* does the right thing */ + if (wl) + { +--- b/3268,3272 ---- + { + new_dirname = savestring (local_dirname); +! wl = expand_prompt_string (new_dirname, 0, W_NOCOMSUB|W_NOPROCSUB|W_COMPLETE); /* does the right thing */ + if (wl) + { +*** bash-4.4/subst.c 2016-08-30 16:46:38.000000000 -0400 +--- b/subst.c 2017-01-19 07:09:57.000000000 -0500 +*************** +*** 9459,9462 **** +--- b/9459,9466 ---- + if (word->flags & W_COMPLETE) + tword->flags |= W_COMPLETE; /* for command substitutions */ ++ if (word->flags & W_NOCOMSUB) ++ tword->flags |= W_NOCOMSUB; ++ if (word->flags & W_NOPROCSUB) ++ tword->flags |= W_NOPROCSUB; + + temp = (char *)NULL; +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 6 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 7 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-008.patch b/package/bash/bash44-008.patch new file mode 100644 index 0000000000..931033c5b7 --- /dev/null +++ b/package/bash/bash44-008.patch @@ -0,0 +1,88 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-008 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-008 + +Bug-Reported-by: Koichi MURASE +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00050.html + +Bug-Description: + +Under certain circumstances, bash will evaluate arithmetic expressions as +part of reading an expression token even when evaluation is suppressed. This +happens while evaluating a conditional expression and skipping over the +failed branch of the expression. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/expr.c 2015-10-11 14:46:36.000000000 -0400 +--- b/expr.c 2016-11-08 11:55:46.000000000 -0500 +*************** +*** 579,585 **** + if (curtok == QUES) /* found conditional expr */ + { +- readtok (); +- if (curtok == 0 || curtok == COL) +- evalerror (_("expression expected")); + if (cval == 0) + { +--- b/579,582 ---- +*************** +*** 588,591 **** +--- b/585,592 ---- + } + ++ readtok (); ++ if (curtok == 0 || curtok == COL) ++ evalerror (_("expression expected")); ++ + val1 = EXP_HIGHEST (); + +*************** +*** 594,600 **** + if (curtok != COL) + evalerror (_("`:' expected for conditional expression")); +! readtok (); +! if (curtok == 0) +! evalerror (_("expression expected")); + set_noeval = 0; + if (cval) +--- b/595,599 ---- + if (curtok != COL) + evalerror (_("`:' expected for conditional expression")); +! + set_noeval = 0; + if (cval) +*************** +*** 604,608 **** +--- b/603,611 ---- + } + ++ readtok (); ++ if (curtok == 0) ++ evalerror (_("expression expected")); + val2 = expcond (); ++ + if (set_noeval) + noeval--; +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 7 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 8 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-009.patch b/package/bash/bash44-009.patch new file mode 100644 index 0000000000..3ba1b3fe0f --- /dev/null +++ b/package/bash/bash44-009.patch @@ -0,0 +1,111 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-009 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-009 + +Bug-Reported-by: Hong Cho +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-12/msg00043.html + +Bug-Description: + +There is a race condition in add_history() that can be triggered by a fatal +signal arriving between the time the history length is updated and the time +the history list update is completed. A later attempt to reference an +invalid history entry can cause a crash. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/lib/readline/history.c 2016-11-11 13:42:49.000000000 -0500 +--- b/lib/readline/history.c 2016-12-05 10:37:51.000000000 -0500 +*************** +*** 280,283 **** +--- b/280,284 ---- + { + HIST_ENTRY *temp; ++ int new_length; + + if (history_stifled && (history_length == history_max_entries)) +*************** +*** 296,306 **** + /* Copy the rest of the entries, moving down one slot. Copy includes + trailing NULL. */ +- #if 0 +- for (i = 0; i < history_length; i++) +- the_history[i] = the_history[i + 1]; +- #else + memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *)); +- #endif + + history_base++; + } +--- b/297,303 ---- + /* Copy the rest of the entries, moving down one slot. Copy includes + trailing NULL. */ + memmove (the_history, the_history + 1, history_length * sizeof (HIST_ENTRY *)); + ++ new_length = history_length; + history_base++; + } +*************** +*** 316,320 **** + history_size = DEFAULT_HISTORY_INITIAL_SIZE; + the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *)); +! history_length = 1; + } + else +--- b/313,317 ---- + history_size = DEFAULT_HISTORY_INITIAL_SIZE; + the_history = (HIST_ENTRY **)xmalloc (history_size * sizeof (HIST_ENTRY *)); +! new_length = 1; + } + else +*************** +*** 326,330 **** + xrealloc (the_history, history_size * sizeof (HIST_ENTRY *)); + } +! history_length++; + } + } +--- b/323,327 ---- + xrealloc (the_history, history_size * sizeof (HIST_ENTRY *)); + } +! new_length = history_length + 1; + } + } +*************** +*** 332,337 **** + temp = alloc_history_entry ((char *)string, hist_inittime ()); + +! the_history[history_length] = (HIST_ENTRY *)NULL; +! the_history[history_length - 1] = temp; + } + +--- b/329,335 ---- + temp = alloc_history_entry ((char *)string, hist_inittime ()); + +! the_history[new_length] = (HIST_ENTRY *)NULL; +! the_history[new_length - 1] = temp; +! history_length = new_length; + } + +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 8 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 9 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-010.patch b/package/bash/bash44-010.patch new file mode 100644 index 0000000000..8da1ec5bea --- /dev/null +++ b/package/bash/bash44-010.patch @@ -0,0 +1,53 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-010 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-010 + +Bug-Reported-by: Clark Wang +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00104.html + +Bug-Description: + +Depending on compiler optimizations and behavior, the `read' builtin may not +save partial input when a timeout occurs. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/builtins/read.def 2016-05-16 14:24:56.000000000 -0400 +--- b/builtins/read.def 2016-11-25 12:37:56.000000000 -0500 +*************** +*** 182,186 **** + { + register char *varname; +! int size, i, nr, pass_next, saw_escape, eof, opt, retval, code, print_ps2; + int input_is_tty, input_is_pipe, unbuffered_read, skip_ctlesc, skip_ctlnul; + int raw, edit, nchars, silent, have_timeout, ignore_delim, fd, lastsig, t_errno; +--- b/182,187 ---- + { + register char *varname; +! int size, nr, pass_next, saw_escape, eof, opt, retval, code, print_ps2; +! volatile int i; + int input_is_tty, input_is_pipe, unbuffered_read, skip_ctlesc, skip_ctlnul; + int raw, edit, nchars, silent, have_timeout, ignore_delim, fd, lastsig, t_errno; + +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 9 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 10 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-011.patch b/package/bash/bash44-011.patch new file mode 100644 index 0000000000..cca66aad26 --- /dev/null +++ b/package/bash/bash44-011.patch @@ -0,0 +1,54 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-011 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-011 + +Bug-Reported-by: Russell King +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2017-01/msg00000.html + +Bug-Description: + +Subshells begun to run command and process substitutions may attempt to +set the terminal's process group to an incorrect value if they receive +a fatal signal. This depends on the behavior of the process that starts +the shell. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/sig.c 2016-02-11 15:02:45.000000000 -0500 +--- b/sig.c 2017-01-04 09:09:47.000000000 -0500 +*************** +*** 586,590 **** + if (sig == SIGHUP && (interactive || (subshell_environment & (SUBSHELL_COMSUB|SUBSHELL_PROCSUB)))) + hangup_all_jobs (); +! end_job_control (); + #endif /* JOB_CONTROL */ + +--- b/571,576 ---- + if (sig == SIGHUP && (interactive || (subshell_environment & (SUBSHELL_COMSUB|SUBSHELL_PROCSUB)))) + hangup_all_jobs (); +! if ((subshell_environment & (SUBSHELL_COMSUB|SUBSHELL_PROCSUB)) == 0) +! end_job_control (); + #endif /* JOB_CONTROL */ + +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 10 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 11 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash44-012.patch b/package/bash/bash44-012.patch new file mode 100644 index 0000000000..ef081f9198 --- /dev/null +++ b/package/bash/bash44-012.patch @@ -0,0 +1,165 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-012 + +Signed-off-by: Peter Korsgaard + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-012 + +Bug-Reported-by: Clark Wang +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00106.html + +Bug-Description: + +When -N is used, the input is not supposed to be split using $IFS, but +leading and trailing IFS whitespace was still removed. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/subst.c 2017-01-20 14:22:01.000000000 -0500 +--- b/subst.c 2017-01-25 13:43:22.000000000 -0500 +*************** +*** 2826,2834 **** + /* Parse a single word from STRING, using SEPARATORS to separate fields. + ENDPTR is set to the first character after the word. This is used by +! the `read' builtin. This is never called with SEPARATORS != $IFS; +! it should be simplified. + + XXX - this function is very similar to list_string; they should be + combined - XXX */ + char * + get_word_from_string (stringp, separators, endptr) +--- b/2826,2838 ---- + /* Parse a single word from STRING, using SEPARATORS to separate fields. + ENDPTR is set to the first character after the word. This is used by +! the `read' builtin. +! +! This is never called with SEPARATORS != $IFS, and takes advantage of that. + + XXX - this function is very similar to list_string; they should be + combined - XXX */ ++ ++ #define islocalsep(c) (local_cmap[(unsigned char)(c)] != 0) ++ + char * + get_word_from_string (stringp, separators, endptr) +*************** +*** 2838,2841 **** +--- b/2842,2846 ---- + char *current_word; + int sindex, sh_style_split, whitesep, xflags; ++ unsigned char local_cmap[UCHAR_MAX+1]; /* really only need single-byte chars here */ + size_t slen; + +*************** +*** 2847,2854 **** + separators[2] == '\n' && + separators[3] == '\0'; +! for (xflags = 0, s = ifs_value; s && *s; s++) + { + if (*s == CTLESC) xflags |= SX_NOCTLESC; + if (*s == CTLNUL) xflags |= SX_NOESCCTLNUL; + } + +--- b/2852,2861 ---- + separators[2] == '\n' && + separators[3] == '\0'; +! memset (local_cmap, '\0', sizeof (local_cmap)); +! for (xflags = 0, s = separators; s && *s; s++) + { + if (*s == CTLESC) xflags |= SX_NOCTLESC; + if (*s == CTLNUL) xflags |= SX_NOESCCTLNUL; ++ local_cmap[(unsigned char)*s] = 1; /* local charmap of separators */ + } + +*************** +*** 2857,2864 **** + + /* Remove sequences of whitespace at the beginning of STRING, as +! long as those characters appear in IFS. */ +! if (sh_style_split || !separators || !*separators) + { +! for (; *s && spctabnl (*s) && isifs (*s); s++); + + /* If the string is nothing but whitespace, update it and return. */ +--- b/2864,2872 ---- + + /* Remove sequences of whitespace at the beginning of STRING, as +! long as those characters appear in SEPARATORS. This happens if +! SEPARATORS == $' \t\n' or if IFS is unset. */ +! if (sh_style_split || separators == 0) + { +! for (; *s && spctabnl (*s) && islocalsep (*s); s++); + + /* If the string is nothing but whitespace, update it and return. */ +*************** +*** 2879,2885 **** + This obeys the field splitting rules in Posix.2. */ + sindex = 0; +! /* Don't need string length in ADVANCE_CHAR or string_extract_verbatim +! unless multibyte chars are possible. */ +! slen = (MB_CUR_MAX > 1) ? STRLEN (s) : 1; + current_word = string_extract_verbatim (s, slen, &sindex, separators, xflags); + +--- b/2887,2893 ---- + This obeys the field splitting rules in Posix.2. */ + sindex = 0; +! /* Don't need string length in ADVANCE_CHAR unless multibyte chars are +! possible, but need it in string_extract_verbatim for bounds checking */ +! slen = STRLEN (s); + current_word = string_extract_verbatim (s, slen, &sindex, separators, xflags); + +*************** +*** 2900,2904 **** + /* Now skip sequences of space, tab, or newline characters if they are + in the list of separators. */ +! while (s[sindex] && spctabnl (s[sindex]) && isifs (s[sindex])) + sindex++; + +--- b/2908,2912 ---- + /* Now skip sequences of space, tab, or newline characters if they are + in the list of separators. */ +! while (s[sindex] && spctabnl (s[sindex]) && islocalsep (s[sindex])) + sindex++; + +*************** +*** 2907,2916 **** + delimiter, not a separate delimiter that would result in an empty field. + Look at POSIX.2, 3.6.5, (3)(b). */ +! if (s[sindex] && whitesep && isifs (s[sindex]) && !spctabnl (s[sindex])) + { + sindex++; + /* An IFS character that is not IFS white space, along with any adjacent + IFS white space, shall delimit a field. */ +! while (s[sindex] && spctabnl (s[sindex]) && isifs (s[sindex])) + sindex++; + } +--- b/2915,2924 ---- + delimiter, not a separate delimiter that would result in an empty field. + Look at POSIX.2, 3.6.5, (3)(b). */ +! if (s[sindex] && whitesep && islocalsep (s[sindex]) && !spctabnl (s[sindex])) + { + sindex++; + /* An IFS character that is not IFS white space, along with any adjacent + IFS white space, shall delimit a field. */ +! while (s[sindex] && spctabnl (s[sindex]) && islocalsep(s[sindex])) + sindex++; + } +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 11 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 12 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/batctl/batctl.hash b/package/batctl/batctl.hash index 1a045f43ed..5920ff09db 100644 --- a/package/batctl/batctl.hash +++ b/package/batctl/batctl.hash @@ -1,4 +1,4 @@ -# http://downloads.open-mesh.org/batman/releases/batman-adv-2015.1/batctl-2015.1.tar.gz.sha1 -sha1 ae086f334ff912ab2a8116caedf0a2a1816acf1a batctl-2015.1.tar.gz +# http://downloads.open-mesh.org/batman/releases/batman-adv-2016.1/batctl-2016.1.tar.gz.sha1 +sha1 72b974bde707594e2cf0cc122d7d7da0f1f65160 batctl-2016.1.tar.gz # Locally calculated -sha256 ea67ee22785e6fcd5149472bdf2df4e9f21716968e025e7dd41556a010a8d14a batctl-2015.1.tar.gz +sha256 c854397b2ddd2cb8d15d1e65839819380648ccb37507d0303e133011fe6f03c9 batctl-2016.1.tar.gz diff --git a/package/batctl/batctl.mk b/package/batctl/batctl.mk index e91dff99dc..ed1b06ca2e 100644 --- a/package/batctl/batctl.mk +++ b/package/batctl/batctl.mk @@ -4,7 +4,7 @@ # ################################################################################ -BATCTL_VERSION = 2015.1 +BATCTL_VERSION = 2016.1 BATCTL_SITE = http://downloads.open-mesh.org/batman/releases/batman-adv-$(BATCTL_VERSION) BATCTL_LICENSE = GPLv2 BATCTL_DEPENDENCIES = libnl host-pkgconf diff --git a/package/batman-adv/Config.in b/package/batman-adv/Config.in new file mode 100644 index 0000000000..fbef0d8d6b --- /dev/null +++ b/package/batman-adv/Config.in @@ -0,0 +1,35 @@ +comment "batman-adv needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_BATMAN_ADV + bool "batman-adv" + depends on BR2_LINUX_KERNEL + help + batman-adv mesh networking kernel module + + https://www.open-mesh.org/projects/batman-adv/ + +if BR2_PACKAGE_BATMAN_ADV + +config BR2_PACKAGE_BATMAN_ADV_DEBUG + bool "enable debugging" + help + Enables B.A.T.M.A.N. debugging. + +config BR2_PACKAGE_BATMAN_ADV_NC + bool "enable network coding" + help + Enables B.A.T.M.A.N. network coding. + Note: this requires promiscuous mode on ALL nodes! + + https://www.open-mesh.org/projects/batman-adv/wiki/NetworkCoding + +config BR2_PACKAGE_BATMAN_ADV_BATMAN_V + bool "enable B.A.T.M.A.N. V protocol (experimental)" + help + Enables B.A.T.M.A.N. V network protocol. + This is the next-gen protocol and is experimental at this time. + + https://www.open-mesh.org/projects/batman-adv/wiki/BATMAN_V + +endif diff --git a/package/batman-adv/batman-adv.hash b/package/batman-adv/batman-adv.hash new file mode 100644 index 0000000000..6c0e5cacf9 --- /dev/null +++ b/package/batman-adv/batman-adv.hash @@ -0,0 +1,2 @@ +# From https://downloads.open-mesh.org/batman/stable/sources/batman-adv/batman-adv-2016.1.tar.gz.sha1 +sha1 c9ca52c913fbf81aca266695a77359ecdbcc8bd8 batman-adv-2016.1.tar.gz diff --git a/package/batman-adv/batman-adv.mk b/package/batman-adv/batman-adv.mk new file mode 100644 index 0000000000..256781f0f2 --- /dev/null +++ b/package/batman-adv/batman-adv.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# batman-adv +# +################################################################################ + +BATMAN_ADV_VERSION = 2016.1 +BATMAN_ADV_SITE = https://downloads.open-mesh.org/batman/stable/sources/batman-adv +BATMAN_ADV_LICENSE = GPLv2 + +# Bridge Loop Avoidance, Distributed Arp Table are always enabled +BATMAN_ADV_CFLAGS = \ + -I$(@D)/compat-include/ \ + -include $(@D)/compat.h \ + -DBATADV_SOURCE_VERSION=\"\\\"$(BATMAN_ADV_VERSION)\\\"\" +BATMAN_ADV_MODULE_MAKE_OPTS = \ + KVER=$(LINUX_VERSION_PROBED) \ + INSTALL_MOD_DIR=updates/net/batman-adv \ + NOSTDINC_FLAGS="$(BATMAN_ADV_CFLAGS)" \ + CONFIG_BATMAN_ADV=m \ + CONFIG_BATMAN_ADV_BATMAN_V=$(BR2_PACKAGE_BATMAN_ADV_BATMAN_V) \ + CONFIG_BATMAN_ADV_BLA=y \ + CONFIG_BATMAN_ADV_DAT=y \ + CONFIG_BATMAN_ADV_DEBUG=$(BR2_PACKAGE_BATMAN_ADV_DEBUG) \ + CONFIG_BATMAN_ADV_MCAST=y \ + CONFIG_BATMAN_ADV_NC=$(BR2_PACKAGE_BATMAN_ADV_NC) +BATMAN_ADV_MODULE_SUBDIRS = net/batman-adv + +define BATMAN_ADV_CONFIGURE_CMDS + $(BATMAN_ADV_MODULE_MAKE_OPTS) $(@D)/gen-compat-autoconf.sh $(@D)/compat-autoconf.h +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/bcache-tools/Config.in b/package/bcache-tools/Config.in index ee5f1f273a..7e6319bce7 100644 --- a/package/bcache-tools/Config.in +++ b/package/bcache-tools/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_BCACHE_TOOLS bool "bcache tools" depends on BR2_PACKAGE_HAS_UDEV - depends on BR2_USE_WCHAR # util-linux depends on BR2_USE_MMU # util-linux (libblkid) select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID @@ -16,6 +15,6 @@ config BR2_PACKAGE_BCACHE_TOOLS This is the user space bcache tools, required to setup the linux bcache feature of the Linux kernel. -comment "bcache-tools needs udev /dev management and a toolchain w/ wchar" +comment "bcache-tools needs udev /dev management" depends on BR2_USE_MMU - depends on !BR2_PACKAGE_HAS_UDEV || !BR2_USE_WCHAR + depends on !BR2_PACKAGE_HAS_UDEV diff --git a/package/bctoolbox/Config.in b/package/bctoolbox/Config.in new file mode 100644 index 0000000000..834f6e2a6a --- /dev/null +++ b/package/bctoolbox/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_BCTOOLBOX + bool "bctoolbox" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_MBEDTLS # mbedtls is preferred over polarssl + help + Utilities library used by Belledonne Communications + softwares like belle-sip, mediastreamer2 and linphone. + + https://github.com/BelledonneCommunications/bctoolbox + +comment "bctoolbox needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/bctoolbox/bctoolbox.hash b/package/bctoolbox/bctoolbox.hash new file mode 100644 index 0000000000..70be55c3d7 --- /dev/null +++ b/package/bctoolbox/bctoolbox.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 da7df7ff359a9829e9e6ef98dfe9fead0cf735b8a4a5da1b1047f467dee1b2a9 bctoolbox-0.4.0.tar.gz diff --git a/package/bctoolbox/bctoolbox.mk b/package/bctoolbox/bctoolbox.mk new file mode 100644 index 0000000000..64c67792a7 --- /dev/null +++ b/package/bctoolbox/bctoolbox.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# bctoolbox +# +################################################################################ + +BCTOOLBOX_VERSION = 0.4.0 +BCTOOLBOX_SITE = $(call github,BelledonneCommunications,bctoolbox,$(BCTOOLBOX_VERSION)) +BCTOOLBOX_LICENSE = GPLv2+ +BCTOOLBOX_LICENSE_FILES = COPYING +BCTOOLBOX_DEPENDENCIES = mbedtls +BCTOOLBOX_INSTALL_STAGING = YES + +BCTOOLBOX_CONF_OPTS = \ + -DENABLE_STRICT=OFF \ + -DENABLE_TESTS_COMPONENT=OFF \ + -DENABLE_TESTS=OFF \ + -DGIT_EXECUTABLE=OFF + +ifeq ($(BR2_STATIC_LIBS),y) +BCTOOLBOX_CONF_OPTS += -DENABLE_SHARED=OFF -DENABLE_STATIC=ON +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +BCTOOLBOX_CONF_OPTS += -DENABLE_SHARED=ON -DENABLE_STATIC=ON +else ifeq ($(BR2_SHARED_LIBS),y) +BCTOOLBOX_CONF_OPTS += -DENABLE_SHARED=ON -DENABLE_STATIC=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch b/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch deleted file mode 100644 index fc64386ca6..0000000000 --- a/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch +++ /dev/null @@ -1,48 +0,0 @@ -From c36db3f798bf576f42d81a0c51198b17d7112e8c Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sat, 8 Aug 2015 17:43:28 +0200 -Subject: [PATCH] Do not use the non-standard header - - is glibc-specific, and should be used only internally by -glibc, not by external libraries/programs. It is not available in all -standard C libraries. - -Submitted upstream: https://sourceforge.net/p/bcusdk/patches/3/ - -Signed-off-by: Thomas Petazzoni ---- - eibd/include/eibclient.h | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/eibd/include/eibclient.h b/eibd/include/eibclient.h -index 2781878..b095a1c 100644 ---- a/eibd/include/eibclient.h -+++ b/eibd/include/eibclient.h -@@ -27,10 +27,11 @@ - #ifndef EIBCLIENT_H - #define EIBCLIENT_H - --#include - #include - --__BEGIN_DECLS; -+#ifdef __cplusplus -+extern "C" { -+#endif - - #include "eibloadresult.h" - -@@ -889,5 +890,9 @@ int EIB_Cache_LastUpdates_async (EIBConnection * con, uint16_t start, - uint16_t * end); - - --__END_DECLS -+ -+#ifdef __cplusplus -+} -+#endif -+ - #endif --- -2.5.0 - diff --git a/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch b/package/bcusdk/0001-fd_set-requires-inclusion-of-sys-select.h.patch similarity index 100% rename from package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch rename to package/bcusdk/0001-fd_set-requires-inclusion-of-sys-select.h.patch diff --git a/package/bdwgc/0004-configure-match-uclinux-pattern.patch b/package/bdwgc/0004-configure-match-uclinux-pattern.patch new file mode 100644 index 0000000000..78bad1c595 --- /dev/null +++ b/package/bdwgc/0004-configure-match-uclinux-pattern.patch @@ -0,0 +1,32 @@ +From f8ecc7fb09adf34a23d324f373e667c81311fc1c Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 6 Aug 2016 23:24:35 +0200 +Subject: [PATCH] configure: match uclinux pattern + +bdwgc does not recognize "uclinux" as a valid OS part of the target +tuple which is used by some arm cortex-M toolchains. + +Fixes: +http://autobuild.buildroot.net/results/94f/94fbc1e5afe183e5b071d1e869b2d780025389e2 + +Signed-off-by: Romain Naour +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index b1ce2b2..a69d101 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -186,7 +186,7 @@ case "$THREADS" in + AC_DEFINE(THREAD_LOCAL_ALLOC) + AC_MSG_WARN("Explicit GC_INIT() calls may be required."); + ;; +- *-*-linux*) ++ *-*-*linux*) + AC_DEFINE(GC_LINUX_THREADS) + AC_DEFINE(_REENTRANT) + ;; +-- +2.5.5 + diff --git a/package/bdwgc/bdwgc.mk b/package/bdwgc/bdwgc.mk index 4603151166..0e9054df3c 100644 --- a/package/bdwgc/bdwgc.mk +++ b/package/bdwgc/bdwgc.mk @@ -11,6 +11,7 @@ BDWGC_INSTALL_STAGING = YES BDWGC_LICENSE = bdwgc license BDWGC_LICENSE_FILES = README.QUICK BDWGC_DEPENDENCIES = libatomic_ops host-pkgconf +HOST_BDWGC_DEPENDENCIES = host-libatomic_ops host-pkgconf # The libtool shipped with the package is bogus and generates some # -L/usr/lib flags. It uses a version not supported by Buildroot diff --git a/package/beecrypt/beecrypt.mk b/package/beecrypt/beecrypt.mk index e66cec10d6..bd29b3b2c8 100644 --- a/package/beecrypt/beecrypt.mk +++ b/package/beecrypt/beecrypt.mk @@ -17,6 +17,16 @@ BEECRYPT_CONF_OPTS = \ --without-python \ --disable-openmp +# disable optimized m68k assembly as it doesn't compile for coldfire +ifeq ($(BR2_m68k_cf),y) +BEECRYPT_CONF_OPTS += --enable-debug +endif + +# arm asm optimization doesn't work for thumb-only +ifeq ($(BR2_arm):$(BR2_ARM_CPU_HAS_ARM),y:) +BEECRYPT_CONF_OPTS += --enable-debug +endif + ifeq ($(BR2_PACKAGE_BEECRYPT_CPP),y) BEECRYPT_DEPENDENCIES += icu BEECRYPT_CONF_OPTS += --with-cplusplus diff --git a/package/bellagio/0005-fix-doc-installation-path.patch b/package/bellagio/0005-fix-doc-installation-path.patch new file mode 100644 index 0000000000..06b0743e26 --- /dev/null +++ b/package/bellagio/0005-fix-doc-installation-path.patch @@ -0,0 +1,24 @@ +Makefile.am: fix bogus docdir definition + +The definition of the docdir variable uses $(DESTDIR). However, +automake already prefixes all *dir variables automatically with +DESTDIR, which causes the documentation to be installed in +$(DESTDIR)/$(DESTDIR)/usr/share/doc/... + +Fix this by removing the $(DESTDIR) part of the docdir definition. + +Signed-off-by: Thomas Petazzoni + +Index: b/Makefile.am +=================================================================== +--- a/Makefile.am ++++ b/Makefile.am +@@ -7,7 +7,7 @@ + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = libomxil-bellagio.pc + +-docdir = $(DESTDIR)$(prefix)/share/doc/@PACKAGE@ ++docdir = $(prefix)/share/doc/@PACKAGE@ + doc_DATA = README \ + ChangeLog \ + TODO diff --git a/package/bind/bind.hash b/package/bind/bind.hash index 1f8b8b7720..dc472b1216 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,2 +1,2 @@ -# Verified from ftp://ftp.isc.org/isc/bind9/9.10.4/bind-9.10.4.tar.gz.sha256.asc -sha256 f8d412b38d5ac390275b943bde69f4608f67862a45487ec854b30e4448fcb056 bind-9.10.4.tar.gz +# Verified from http://ftp.isc.org/isc/bind9/9.11.0-P2/bind-9.11.0-P2.tar.gz.sha256.asc +sha256 d651f83ce1c08c83d6ac8201685c4f2b5fdb79794f3a4f93c3948e0ef439c1e5 bind-9.11.0-P2.tar.gz diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 8cfcf7f3cc..714308977a 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,13 +4,13 @@ # ################################################################################ -BIND_VERSION = 9.10.4 +BIND_VERSION = 9.11.0-P2 BIND_SITE = ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION) # bind does not support parallel builds. BIND_MAKE = $(MAKE1) BIND_INSTALL_STAGING = YES BIND_CONFIG_SCRIPTS = bind9-config isc-config.sh -BIND_LICENSE = ISC +BIND_LICENSE = MPLv2.0 BIND_LICENSE_FILES = COPYRIGHT BIND_TARGET_SERVER_SBIN = arpaname ddns-confgen dnssec-checkds dnssec-coverage BIND_TARGET_SERVER_SBIN += dnssec-importkey dnssec-keygen dnssec-revoke @@ -32,6 +32,13 @@ BIND_CONF_OPTS = \ --enable-rrl \ --enable-filter-aaaa +ifeq ($(BR2_PACKAGE_ZLIB),y) +BIND_CONF_OPTS += --with-zlib=$(STAGING_DIR)/usr/include +BIND_DEPENDENCIES += zlib +else +BIND_CONF_OPTS += --without-zlib +endif + ifeq ($(BR2_PACKAGE_LIBCAP),y) BIND_CONF_OPTS += --enable-linux-caps BIND_DEPENDENCIES += libcap diff --git a/package/binutils/2.23.2/120-sh-conf.patch b/package/binutils/2.23.2/120-sh-conf.patch deleted file mode 100644 index ea3d1b6068..0000000000 --- a/package/binutils/2.23.2/120-sh-conf.patch +++ /dev/null @@ -1,29 +0,0 @@ -r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines - -Likewise, binutils has no idea about any of these new targets either, so we -fix that up too.. now we're able to actually build a real toolchain for -sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more -inept targets than that one, really. Go look, I promise). - ---- a/configure -+++ b/configure -@@ -1495,7 +1495,7 @@ - mips*-*-*) - noconfigdirs="$noconfigdirs gprof" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${target}" in - sh*-*-elf) - ;; ---- a/configure.ac -+++ b/configure.ac -@@ -712,7 +712,7 @@ - mips*-*-*) - noconfigdirs="$noconfigdirs gprof" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${target}" in - sh*-*-elf) - ;; diff --git a/package/binutils/2.23.2/300-001_ld_makefile_patch.patch b/package/binutils/2.23.2/300-001_ld_makefile_patch.patch deleted file mode 100644 index 5cb0f614d8..0000000000 --- a/package/binutils/2.23.2/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.am binutils-2.17.50.0.17/ld/Makefile.am ---- binutils-2.17.50.0.17.oorig/ld/Makefile.am 2007-06-18 19:29:29.000000000 +0200 -+++ binutils-2.17.50.0.17/ld/Makefile.am 2007-06-25 10:00:36.000000000 +0200 -@@ -18,7 +18,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ -diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.in binutils-2.17.50.0.17/ld/Makefile.in ---- binutils-2.17.50.0.17.oorig/ld/Makefile.in 2007-06-18 19:29:29.000000000 +0200 -+++ binutils-2.17.50.0.17/ld/Makefile.in 2007-06-25 10:00:36.000000000 +0200 -@@ -287,7 +287,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch b/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch deleted file mode 100644 index df783109bb..0000000000 --- a/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em ---- binutils-2.21.orig/ld/emultempl/elf32.em 2010-10-29 09:10:36.000000000 -0300 -+++ binutils-2.21/ld/emultempl/elf32.em 2010-12-10 09:26:56.746102724 -0300 -@@ -1270,6 +1270,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -1497,6 +1499,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - - for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next) - if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) diff --git a/package/binutils/2.23.2/900-xtensa-trampolines.patch b/package/binutils/2.23.2/900-xtensa-trampolines.patch deleted file mode 100644 index b5b934fcab..0000000000 --- a/package/binutils/2.23.2/900-xtensa-trampolines.patch +++ /dev/null @@ -1,846 +0,0 @@ -From a82c7d9030b67a6a76a5403d0e1641f9e42141ac Mon Sep 17 00:00:00 2001 -From: David Weatherford -Date: Fri, 21 Mar 2014 11:53:42 +0000 -Subject: [PATCH] Add support to the Xtensa target for creating trampolines for - out-of-range branches. - - * tc-xtensa.c (xtensa_check_frag_count, xtensa_create_trampoline_frag) - (xtensa_maybe_create_trampoline_frag, init_trampoline_frag) - (find_trampoline_seg, search_trampolines, get_best_trampoline) - (check_and_update_trampolines, add_jump_to_trampoline) - (dump_trampolines): New function. - (md_parse_option): Add cases for --[no-]trampolines options. - (md_assemble, finish_vinsn, xtensa_end): Add call to - xtensa_check_frag_count. - (xg_assemble_vliw_tokens): Add call to - xtensa_maybe_create_trampoline_frag. - (xtensa_relax_frag): Relax fragments with RELAX_TRAMPOLINE state. - (relax_frag_immed): Relax jump instructions that cannot reach its - target. - * tc-xtensa.h (xtensa_relax_statesE::RELAX_TRAMPOLINE): New relax - state. - - * as.texinfo: Document --[no-]trampolines command-line options. - * c-xtensa.texi: Document trampolines relaxation and command line - options. - - * frags.c (get_frag_count, clear_frag_count): New function. - (frag_alloc): Increment totalfrags counter. - * frags.h (get_frag_count, clear_frag_count): New function. - - * all.exp: Add test for trampoline relaxation. - * trampoline.d: Trampoline relaxation expected dump. - * trampoline.s: Trampoline relaxation test source. ---- -Backported from: a82c7d9030b67a6a76a5403d0e1641f9e42141ac -Changes to Changelog files are dropped. - - gas/config/tc-xtensa.c | 558 +++++++++++++++++++++++++++++++++- - gas/config/tc-xtensa.h | 5 + - gas/frags.c | 15 + - gas/frags.h | 3 + - gas/testsuite/gas/xtensa/all.exp | 1 + - gas/testsuite/gas/xtensa/trampoline.d | 26 ++ - gas/testsuite/gas/xtensa/trampoline.s | 21 ++ - 11 files changed, 753 insertions(+), 2 deletions(-) - create mode 100644 gas/testsuite/gas/xtensa/trampoline.d - create mode 100644 gas/testsuite/gas/xtensa/trampoline.s - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index fe8ec0f..ea23c96 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -468,6 +468,12 @@ static void xtensa_set_frag_assembly_state (fragS *); - static void finish_vinsn (vliw_insn *); - static bfd_boolean emit_single_op (TInsn *); - static int total_frag_text_expansion (fragS *); -+static bfd_boolean use_trampolines = TRUE; -+static void xtensa_check_frag_count (void); -+static void xtensa_create_trampoline_frag (bfd_boolean); -+static void xtensa_maybe_create_trampoline_frag (void); -+struct trampoline_frag; -+static int init_trampoline_frag (struct trampoline_frag *); - - /* Alignment Functions. */ - -@@ -520,6 +526,7 @@ static void tinsn_from_chars (TInsn *, char *, int); - static void tinsn_immed_from_frag (TInsn *, fragS *, int); - static int get_num_stack_text_bytes (IStack *); - static int get_num_stack_literal_bytes (IStack *); -+static bfd_boolean tinsn_to_slotbuf (xtensa_format, int, TInsn *, xtensa_insnbuf); - - /* vliw_insn functions. */ - -@@ -687,7 +694,10 @@ enum - option_prefer_l32r, - option_prefer_const16, - -- option_target_hardware -+ option_target_hardware, -+ -+ option_trampolines, -+ option_no_trampolines, - }; - - const char *md_shortopts = ""; -@@ -760,6 +770,9 @@ struct option md_longopts[] = - - { "target-hardware", required_argument, NULL, option_target_hardware }, - -+ { "trampolines", no_argument, NULL, option_trampolines }, -+ { "no-trampolines", no_argument, NULL, option_no_trampolines }, -+ - { NULL, no_argument, NULL, 0 } - }; - -@@ -940,6 +953,14 @@ md_parse_option (int c, char *arg) - directive_state[directive_transform] = FALSE; - return 1; - -+ case option_trampolines: -+ use_trampolines = TRUE; -+ return 1; -+ -+ case option_no_trampolines: -+ use_trampolines = FALSE; -+ return 1; -+ - default: - return 0; - } -@@ -963,7 +984,9 @@ Xtensa options:\n\ - flix bundles\n\ - --no-allow-flix neither allow hand-written nor generate\n\ - flix bundles\n\ -- --rename-section old=new Rename section 'old' to 'new'\n", stream); -+ --rename-section old=new Rename section 'old' to 'new'\n\ -+ --[no-]trampolines [Do not] generate trampolines (jumps to jumps)\n\ -+ when jumps do not reach their targets\n", stream); - } - - -@@ -5568,6 +5591,8 @@ md_assemble (char *str) - - /* We've just emitted a new instruction so clear the list of labels. */ - xtensa_clear_insn_labels (); -+ -+ xtensa_check_frag_count (); - } - - -@@ -6372,6 +6397,8 @@ finish_vinsn (vliw_insn *vinsn) - xg_assemble_vliw_tokens (vinsn); - - xg_clear_vinsn (vinsn); -+ -+ xtensa_check_frag_count (); - } - - -@@ -7140,6 +7167,7 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) - RELAX_UNREACHABLE, - frag_now->fr_symbol, frag_now->fr_offset, NULL); - xtensa_set_frag_assembly_state (frag_now); -+ xtensa_maybe_create_trampoline_frag (); - } - else if (is_branch && do_align_targets ()) - { -@@ -7222,9 +7250,164 @@ xtensa_end (void) - xtensa_sanity_check (); - - xtensa_add_config_info (); -+ -+ xtensa_check_frag_count (); -+} -+ -+ -+struct trampoline_frag -+{ -+ struct trampoline_frag *next; -+ bfd_boolean needs_jump_around; -+ fragS *fragP; -+ fixS *fixP; -+}; -+ -+struct trampoline_seg -+{ -+ struct trampoline_seg *next; -+ asection *seg; -+ struct trampoline_frag trampoline_list; -+}; -+ -+static struct trampoline_seg trampoline_seg_list; -+#define J_RANGE (128 * 1024) -+ -+static int unreachable_count = 0; -+ -+ -+static void -+xtensa_maybe_create_trampoline_frag (void) -+{ -+ if (!use_trampolines) -+ return; -+ -+ /* We create an area for possible trampolines every 10 unreachable frags. -+ These are preferred over the ones not preceded by an unreachable frag, -+ because we don't have to jump around them. This function is called after -+ each RELAX_UNREACHABLE frag is created. */ -+ -+ if (++unreachable_count > 10) -+ { -+ xtensa_create_trampoline_frag (FALSE); -+ clear_frag_count (); -+ unreachable_count = 0; -+ } -+} -+ -+static void -+xtensa_check_frag_count (void) -+{ -+ if (!use_trampolines || frag_now->tc_frag_data.is_no_transform) -+ return; -+ -+ /* We create an area for possible trampolines every 8000 frags or so. This -+ is an estimate based on the max range of a "j" insn (+/-128K) divided -+ by a typical frag byte count (16), minus a few for safety. This function -+ is called after each source line is processed. */ -+ -+ if (get_frag_count () > 8000) -+ { -+ xtensa_create_trampoline_frag (TRUE); -+ clear_frag_count (); -+ unreachable_count = 0; -+ } -+} -+ -+static xtensa_insnbuf trampoline_buf = NULL; -+static xtensa_insnbuf trampoline_slotbuf = NULL; -+ -+#define TRAMPOLINE_FRAG_SIZE 3000 -+ -+static void -+xtensa_create_trampoline_frag (bfd_boolean needs_jump_around) -+{ -+ /* Emit a frag where we can place intermediate jump instructions, -+ in case we need to jump farther than 128K bytes. -+ Each jump instruction takes three bytes. -+ We allocate enough for 1000 trampolines in each frag. -+ If that's not enough, oh well. */ -+ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ struct trampoline_frag *tf; -+ char *varP; -+ fragS *fragP; -+ int size = TRAMPOLINE_FRAG_SIZE; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ if (ts->seg == now_seg) -+ break; -+ } -+ -+ if (ts == NULL) -+ { -+ ts = (struct trampoline_seg *)xcalloc(sizeof (struct trampoline_seg), 1); -+ ts->next = trampoline_seg_list.next; -+ trampoline_seg_list.next = ts; -+ ts->seg = now_seg; -+ } -+ -+ frag_wane (frag_now); -+ frag_new (0); -+ xtensa_set_frag_assembly_state (frag_now); -+ varP = frag_var (rs_machine_dependent, size, size, RELAX_TRAMPOLINE, NULL, 0, NULL); -+ fragP = (fragS *)(varP - SIZEOF_STRUCT_FRAG); -+ if (trampoline_buf == NULL) -+ { -+ trampoline_buf = xtensa_insnbuf_alloc (xtensa_default_isa); -+ trampoline_slotbuf = xtensa_insnbuf_alloc (xtensa_default_isa); -+ } -+ tf = (struct trampoline_frag *)xmalloc(sizeof (struct trampoline_frag)); -+ tf->next = ts->trampoline_list.next; -+ ts->trampoline_list.next = tf; -+ tf->needs_jump_around = needs_jump_around; -+ tf->fragP = fragP; -+ tf->fixP = NULL; -+} -+ -+ -+static struct trampoline_seg * -+find_trampoline_seg (asection *seg) -+{ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ if (ts->seg == seg) -+ return ts; -+ } -+ -+ return NULL; - } - - -+void dump_trampolines (void); -+ -+void -+dump_trampolines (void) -+{ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ asection *seg = ts->seg; -+ -+ if (seg == NULL) -+ continue; -+ fprintf(stderr, "SECTION %s\n", seg->name); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ for ( ; tf; tf = tf->next) -+ { -+ if (tf->fragP == NULL) -+ continue; -+ fprintf(stderr, " 0x%08x: fix=%d, jump_around=%s\n", -+ (int)tf->fragP->fr_address, (int)tf->fragP->fr_fix, -+ tf->needs_jump_around ? "T" : "F"); -+ } -+ } -+} -+ - static void - xtensa_cleanup_align_frags (void) - { -@@ -8708,6 +8891,149 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - new_stretch += relax_frag_for_align (fragP, stretch); - break; - -+ case RELAX_TRAMPOLINE: -+ if (fragP->tc_frag_data.relax_seen) -+ { -+ segment_info_type *seginfo = seg_info (now_seg); -+ fragS *fP; /* The out-of-range jump. */ -+ fixS *fixP; -+ -+ /* Scan for jumps that will not reach. */ -+ for (fixP = seginfo->fix_root; fixP ; fixP = fixP->fx_next) -+ { -+ symbolS *s = fixP->fx_addsy; -+ xtensa_opcode opcode; -+ int target; -+ int addr; -+ int delta; -+ -+ if (fixP->fx_r_type < BFD_RELOC_XTENSA_SLOT0_OP || -+ fixP->fx_r_type > BFD_RELOC_XTENSA_SLOT14_OP) -+ continue; -+ xtensa_insnbuf_from_chars (isa, trampoline_buf, -+ (unsigned char *) fixP->fx_frag->fr_literal + fixP->fx_where, -+ 0); -+ fmt = xtensa_format_decode (isa, trampoline_buf); -+ gas_assert (fmt != XTENSA_UNDEFINED); -+ slot = fixP->tc_fix_data.slot; -+ xtensa_format_get_slot (isa, fmt, slot, trampoline_buf, trampoline_slotbuf); -+ opcode = xtensa_opcode_decode (isa, fmt, slot, trampoline_slotbuf); -+ if (opcode != xtensa_j_opcode) -+ continue; -+ target = S_GET_VALUE (s); -+ addr = fixP->fx_frag->fr_address; -+ delta = target - addr + stretch; -+ if (delta > J_RANGE || delta < -1 * J_RANGE) -+ { /* Found an out-of-range jump; scan the list of trampolines for the best match. */ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ struct trampoline_frag *prev = &ts->trampoline_list; -+ int lower = (target < addr) ? target : addr; -+ int upper = (target > addr) ? target : addr; -+ int midpoint = lower + (upper - lower) / 2; -+ -+ if ((upper - lower) > 2 * J_RANGE) -+ { -+ /* One trampoline won't suffice; we need multiple jumps. -+ Jump to the trampoline that's farthest, but still in -+ range relative to the original "j" instruction. */ -+ for ( ; tf; prev = tf, tf = tf->next ) -+ { -+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0 ; -+ -+ if (addr == lower) -+ { -+ /* Forward jump. */ -+ if (this_addr - addr < J_RANGE) -+ break; -+ } -+ else -+ { -+ /* Backward jump. */ -+ if (next_addr == 0 || addr - next_addr > J_RANGE) -+ break; -+ } -+ } -+ } -+ else -+ { -+ struct trampoline_frag *best_tf = NULL; -+ int best_delta = 0; -+ -+ for ( ; tf; prev = tf, tf = tf->next ) -+ { -+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ int this_delta = abs (this_addr - midpoint); -+ -+ if (!best_tf || this_delta < best_delta) -+ { -+ best_tf = tf; -+ best_delta = this_delta; -+ } -+ } -+ tf = best_tf; -+ } -+ if (tf->fragP == fragP) -+ { -+ int trampaddr = fragP->fr_address + fragP->fr_fix; -+ -+ if (abs (addr - trampaddr) < J_RANGE) -+ { /* The trampoline is in range of original; fix it! */ -+ fixS *newfixP; -+ int offset; -+ TInsn insn; -+ symbolS *lsym; -+ -+ new_stretch += init_trampoline_frag (tf); -+ offset = fragP->fr_fix; /* Where to assemble the j insn. */ -+ lsym = fragP->fr_symbol; -+ fP = fixP->fx_frag; -+ /* Assemble a jump to the target label here. */ -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], lsym, offset); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fragP->fr_literal + offset, 3); -+ fragP->fr_fix += 3; -+ fragP->fr_var -= 3; -+ /* Add a fix-up for the original j insn. */ -+ newfixP = fix_new (fP, fixP->fx_where, fixP->fx_size, lsym, fragP->fr_fix - 3, TRUE, fixP->fx_r_type); -+ newfixP->fx_no_overflow = 1; -+ newfixP->tc_fix_data.X_add_symbol = lsym; -+ newfixP->tc_fix_data.X_add_number = offset; -+ newfixP->tc_fix_data.slot = slot; -+ /* Move the fix-up from the original j insn to this one. */ -+ fixP->fx_frag = fragP; -+ fixP->fx_where = fragP->fr_fix - 3; -+ fixP->tc_fix_data.slot = 0; -+ /* Adjust the jump around this trampoline (if present). */ -+ if (tf->fixP != NULL) -+ { -+ tf->fixP->fx_offset += 3; -+ } -+ new_stretch += 3; -+ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */ -+ /* Do we have room for more? */ -+ if (fragP->fr_var < 3) -+ { /* No, convert to fill. */ -+ frag_wane (fragP); -+ fragP->fr_subtype = 0; -+ /* Remove from the trampoline_list. */ -+ prev->next = tf->next; -+ break; -+ } -+ } -+ } -+ } -+ } -+ } -+ break; -+ - default: - as_bad (_("bad relaxation state")); - } -@@ -9146,6 +9472,200 @@ bytes_to_stretch (fragS *this_frag, - } - - -+static struct trampoline_frag * -+search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only) -+{ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = (ts) ? ts->trampoline_list.next : NULL; -+ struct trampoline_frag *best_tf = NULL; -+ int best_delta = 0; -+ int best_addr = 0; -+ symbolS *sym = tinsn->tok[0].X_add_symbol; -+ offsetT target = S_GET_VALUE (sym) + tinsn->tok[0].X_add_number; -+ offsetT addr = fragP->fr_address; -+ offsetT lower = (addr < target) ? addr : target; -+ offsetT upper = (addr > target) ? addr : target; -+ int delta = upper - lower; -+ offsetT midpoint = lower + delta / 2; -+ int this_delta = -1; -+ int this_addr = -1; -+ -+ if (delta > 2 * J_RANGE) -+ { -+ /* One trampoline won't do; we need multiple. -+ Choose the farthest trampoline that's still in range of the original -+ and let a later pass finish the job. */ -+ for ( ; tf; tf = tf->next) -+ { -+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0; -+ -+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ if (lower == addr) -+ { -+ /* Forward jump. */ -+ if (this_addr - addr < J_RANGE) -+ break; -+ } -+ else -+ { -+ /* Backward jump. */ -+ if (next_addr == 0 || addr - next_addr > J_RANGE) -+ break; -+ } -+ if (abs (addr - this_addr) < J_RANGE) -+ return tf; -+ -+ return NULL; -+ } -+ } -+ for ( ; tf; tf = tf->next) -+ { -+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ this_delta = abs (this_addr - midpoint); -+ if (unreachable_only && tf->needs_jump_around) -+ continue; -+ if (!best_tf || this_delta < best_delta) -+ { -+ best_tf = tf; -+ best_delta = this_delta; -+ best_addr = this_addr; -+ } -+ } -+ -+ if (best_tf && -+ best_delta < J_RANGE && -+ abs(best_addr - lower) < J_RANGE && -+ abs(best_addr - upper) < J_RANGE) -+ return best_tf; -+ -+ return NULL; /* No suitable trampoline found. */ -+} -+ -+ -+static struct trampoline_frag * -+get_best_trampoline (TInsn *tinsn, fragS *fragP) -+{ -+ struct trampoline_frag *tf = NULL; -+ -+ tf = search_trampolines (tinsn, fragP, TRUE); /* Try unreachable first. */ -+ -+ if (tf == NULL) -+ tf = search_trampolines (tinsn, fragP, FALSE); /* Try ones needing a jump-around, too. */ -+ -+ return tf; -+} -+ -+ -+static void -+check_and_update_trampolines (void) -+{ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ struct trampoline_frag *prev = &ts->trampoline_list; -+ -+ for ( ; tf; prev = tf, tf = tf->next) -+ { -+ if (tf->fragP->fr_var < 3) -+ { -+ frag_wane (tf->fragP); -+ prev->next = tf->next; -+ tf->fragP = NULL; -+ } -+ } -+} -+ -+ -+static int -+init_trampoline_frag (struct trampoline_frag *trampP) -+{ -+ fragS *fp = trampP->fragP; -+ int growth = 0; -+ -+ if (fp->fr_fix == 0) -+ { -+ symbolS *lsym; -+ char label[10 + 2 * sizeof(fp)]; -+ sprintf (label, ".L0_TR_%p", fp); -+ -+ lsym = (symbolS *)local_symbol_make (label, now_seg, 0, fp); -+ fp->fr_symbol = lsym; -+ if (trampP->needs_jump_around) -+ { -+ /* Add a jump around this block of jumps, in case -+ control flows into this block. */ -+ fixS *fixP; -+ TInsn insn; -+ xtensa_format fmt; -+ xtensa_isa isa = xtensa_default_isa; -+ -+ fp->tc_frag_data.is_insn = 1; -+ /* Assemble a jump insn. */ -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], lsym, 3); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fp->fr_literal, 3); -+ fp->fr_fix += 3; -+ fp->fr_var -= 3; -+ growth = 3; -+ fixP = fix_new (fp, 0, 3, lsym, 3, TRUE, BFD_RELOC_XTENSA_SLOT0_OP); -+ trampP->fixP = fixP; -+ } -+ } -+ return growth; -+} -+ -+ -+static int -+add_jump_to_trampoline (struct trampoline_frag *trampP, fragS *origfrag) -+{ -+ fragS *tramp = trampP->fragP; -+ fixS *fixP; -+ int offset = tramp->fr_fix; /* Where to assemble the j insn. */ -+ TInsn insn; -+ symbolS *lsym; -+ symbolS *tsym; -+ int toffset; -+ xtensa_format fmt; -+ xtensa_isa isa = xtensa_default_isa; -+ int growth = 0; -+ -+ lsym = tramp->fr_symbol; -+ /* Assemble a jump to the target label in the trampoline frag. */ -+ tsym = origfrag->tc_frag_data.slot_symbols[0]; -+ toffset = origfrag-> tc_frag_data.slot_offsets[0]; -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], tsym, toffset); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)tramp->fr_literal + offset, 3); -+ tramp->fr_fix += 3; -+ tramp->fr_var -= 3; -+ growth = 3; -+ /* add a fix-up for the trampoline jump. */ -+ fixP = fix_new (tramp, tramp->fr_fix - 3, 3, tsym, toffset, TRUE, BFD_RELOC_XTENSA_SLOT0_OP); -+ /* Modify the jump at the start of this trampoline to point past the newly-added jump. */ -+ fixP = trampP->fixP; -+ if (fixP) -+ fixP->fx_offset += 3; -+ /* Modify the original j to point here. */ -+ origfrag->tc_frag_data.slot_symbols[0] = lsym; -+ origfrag->tc_frag_data.slot_offsets[0] = tramp->fr_fix - 3; -+ /* If trampoline is full, remove it from the list. */ -+ check_and_update_trampolines (); -+ -+ return growth; -+} -+ -+ - static long - relax_frag_immed (segT segP, - fragS *fragP, -@@ -9284,6 +9804,37 @@ relax_frag_immed (segT segP, - if (negatable_branch && istack.ninsn > 1) - update_next_frag_state (fragP); - -+ /* If last insn is a jump, and it cannot reach its target, try to find a trampoline. */ -+ if (istack.ninsn > 2 && -+ istack.insn[istack.ninsn - 1].insn_type == ITYPE_LABEL && -+ istack.insn[istack.ninsn - 2].insn_type == ITYPE_INSN && -+ istack.insn[istack.ninsn - 2].opcode == xtensa_j_opcode) -+ { -+ TInsn *jinsn = &istack.insn[istack.ninsn - 2]; -+ -+ if (!xg_symbolic_immeds_fit (jinsn, segP, fragP, fragP->fr_offset, total_text_diff)) -+ { -+ struct trampoline_frag *tf = get_best_trampoline (jinsn, fragP); -+ -+ if (tf) -+ { -+ this_text_diff += init_trampoline_frag (tf); -+ this_text_diff += add_jump_to_trampoline (tf, fragP); -+ } -+ else -+ { -+ /* If target symbol is undefined, assume it will reach once linked. */ -+ expressionS *exp = &istack.insn[istack.ninsn - 2].tok[0]; -+ -+ if (exp->X_op == O_symbol && S_IS_DEFINED (exp->X_add_symbol)) -+ { -+ as_bad_where (fragP->fr_file, fragP->fr_line, -+ _("jump target out of range; no usable trampoline found")); -+ } -+ } -+ } -+ } -+ - return this_text_diff; - } - -@@ -9404,6 +9955,9 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, segT sec, fragS *fragp) - else - as_bad (_("invalid relaxation fragment result")); - break; -+ -+ case RELAX_TRAMPOLINE: -+ break; - } - - fragp->fr_var = 0; -diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h -index 0bf1240..4672bc6 100644 ---- a/gas/config/tc-xtensa.h -+++ b/gas/config/tc-xtensa.h -@@ -180,6 +180,11 @@ enum xtensa_relax_statesE - prevent the linker from changing the size of any frag between the - section start and the org frag. */ - -+ RELAX_TRAMPOLINE, -+ /* Every few thousand frags, we insert one of these, just in case we may -+ need some space for a trampoline (jump to a jump) because the function -+ has gotten too big. If not needed, it disappears. */ -+ - RELAX_NONE - }; - -diff --git a/gas/frags.c b/gas/frags.c -index 5f68480..e14099d 100644 ---- a/gas/frags.c -+++ b/gas/frags.c -@@ -24,6 +24,20 @@ - - extern fragS zero_address_frag; - extern fragS predefined_address_frag; -+ -+static int totalfrags; -+ -+int -+get_frag_count (void) -+{ -+ return totalfrags; -+} -+ -+void -+clear_frag_count (void) -+{ -+ totalfrags = 0; -+} - - /* Initialization for frag routines. */ - -@@ -70,6 +84,7 @@ frag_alloc (struct obstack *ob) - ptr = (fragS *) obstack_alloc (ob, SIZEOF_STRUCT_FRAG); - obstack_alignment_mask (ob) = oalign; - memset (ptr, 0, SIZEOF_STRUCT_FRAG); -+ totalfrags++; - return ptr; - } - -diff --git a/gas/frags.h b/gas/frags.h -index 319898f..2f9e1b5 100644 ---- a/gas/frags.h -+++ b/gas/frags.h -@@ -155,4 +155,7 @@ char *frag_var (relax_stateT type, - - bfd_boolean frag_offset_fixed_p (const fragS *, const fragS *, offsetT *); - -+int get_frag_count (void); -+void clear_frag_count (void); -+ - #endif /* FRAGS_H */ -diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp -index 2b2c294..3683b78 100644 ---- a/gas/testsuite/gas/xtensa/all.exp -+++ b/gas/testsuite/gas/xtensa/all.exp -@@ -98,6 +98,7 @@ if [istarget xtensa*-*-*] then { - run_dump_test "pcrel" - run_dump_test "weak-call" - run_dump_test "jlong" -+ run_dump_test "trampoline" - } - - if [info exists errorInfo] then { -diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d -new file mode 100644 -index 0000000..b4f65dc ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/trampoline.d -@@ -0,0 +1,26 @@ -+#as: -+#objdump: -d -+#name: trampolines relaxation -+ -+.*: +file format .*xtensa.* -+#... -+.*0:.*j.0x1194c -+.*3:.*j.0x1194f -+.*6:.*j.0x11952 -+.*9:.*j.0x1d4e4 -+#... -+.*11949:.*j.0x11955 -+.*1194c:.*j.0x24a0e -+.*1194f:.*j.0x24a0e -+.*11952:.*j.0x24a11 -+#... -+.*1d4e1:.*j.0x1d4e7 -+.*1d4e4:.*j.0x33462 -+#... -+.*24a0e:.*j.0x24a0e -+.*24a11:.*j.0x24a11 -+#... -+.*3345f:.*ret -+.*33462:.*j.0x49407 -+#... -+.*49407:.*j.0x49407 -diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s -new file mode 100644 -index 0000000..259a3bb ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/trampoline.s -@@ -0,0 +1,21 @@ -+ .text -+ j 1f -+ j 1f -+ j 2f -+ j 3f -+ .rep 25000 -+99: -+ and a2, a2, a3 -+ bne a2, a3, 99b -+ .endr -+1: -+ j 1b -+2: -+ j 2b -+ -+ .rep 25000 -+ and a2, a2, a3 -+ _ret -+ .endr -+3: -+ j 3b --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch b/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch deleted file mode 100644 index e1c2d85aa8..0000000000 --- a/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 15 Apr 2014 19:12:46 +0400 -Subject: [PATCH] Fix alignment for the first section frag on xtensa - -Linking object files produced by partial linking with link-time -relaxation enabled sometimes fails with the following error message: - -dangerous relocation: call8: misaligned call target: (.text.unlikely+0x63) - -This happens because no basic block with an XTENSA_PROP_ALIGN flag in the -property table is generated for the first basic block, even if the -.align directive is present. -It was believed that the first frag alignment could be derived from the -section alignment, but this was not implemented for the partial linking -case: after partial linking first frag of a section may become not -first, but no additional alignment frag is inserted before it. -Basic block for such frag may be merged with previous basic block into -extended basic block during relaxation pass losing its alignment -restrictions. - -Fix this by always recording alignment for the first section frag. - -2014-04-22 Max Filippov - -gas/ - * config/tc-xtensa.c (xtensa_handle_align): record alignment for the - first section frag. - ---- -Backported from: a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1 -Changes to Changelog files and tests are dropped. - - gas/config/tc-xtensa.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index ea23c96..58ace38 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5609,7 +5609,6 @@ xtensa_handle_align (fragS *fragP) - && ! fragP->tc_frag_data.is_literal - && (fragP->fr_type == rs_align - || fragP->fr_type == rs_align_code) -- && fragP->fr_address + fragP->fr_fix > 0 - && fragP->fr_offset > 0 - && now_seg != bss_section) - { --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch b/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch deleted file mode 100644 index ba24f4e4b0..0000000000 --- a/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 6a17eba5358549d0d6d195bb22b34cdbc068def2 Mon Sep 17 00:00:00 2001 -From: Volodymyr Arbatov -Date: Mon, 6 May 2013 09:43:21 -0800 -Subject: [PATCH] Use signed data type for R_XTENSA_DIFF* relocation offsets. - -R_XTENSA_DIFF relocation offsets are in fact signed. Treat them as such. -Add testcase that examines ld behaviour on R_XTENSA_DIFF relocation -changing sign during relaxation. - -2014-05-02 Volodymyr Arbatov - David Weatherford - Max Filippov - -bfd/ - * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as - signed. - -gas/ - * config/tc-xtensa.c (md_apply_fix): mark BFD_RELOC_XTENSA_DIFF* - fixups as signed. ---- -Backported from: 1058c7532d0b012ac329219264ddad59049fb6e6 -Changes to Changelog files and tests are dropped. - - bfd/elf32-xtensa.c | 32 ++++++++++++----------- - gas/config/tc-xtensa.c | 3 +++ - 2 files changed, 20 insertions(+), 15 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index edb04b4..8818d67 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -222,11 +222,11 @@ static reloc_howto_type elf_howto_table[] = - FALSE, 0, 0, FALSE), - - /* Relocations for supporting difference of symbols. */ -- HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF8", FALSE, 0, 0xff, FALSE), -- HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF16", FALSE, 0, 0xffff, FALSE), -- HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF32", FALSE, 0, 0xffffffff, FALSE), - - /* General immediate operand relocations. */ -@@ -9013,7 +9013,8 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - || r_type == R_XTENSA_DIFF16 - || r_type == R_XTENSA_DIFF32) - { -- bfd_vma diff_value = 0, new_end_offset, diff_mask = 0; -+ bfd_signed_vma diff_value = 0; -+ bfd_vma new_end_offset, diff_mask = 0; - - if (bfd_get_section_limit (abfd, sec) < old_source_offset) - { -@@ -9027,15 +9028,15 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - { - case R_XTENSA_DIFF8: - diff_value = -- bfd_get_8 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_8 (abfd, &contents[old_source_offset]); - break; - case R_XTENSA_DIFF16: - diff_value = -- bfd_get_16 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_16 (abfd, &contents[old_source_offset]); - break; - case R_XTENSA_DIFF32: - diff_value = -- bfd_get_32 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_32 (abfd, &contents[old_source_offset]); - break; - } - -@@ -9047,24 +9048,25 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - switch (r_type) - { - case R_XTENSA_DIFF8: -- diff_mask = 0xff; -- bfd_put_8 (abfd, diff_value, -+ diff_mask = 0x7f; -+ bfd_put_signed_8 (abfd, diff_value, - &contents[old_source_offset]); - break; - case R_XTENSA_DIFF16: -- diff_mask = 0xffff; -- bfd_put_16 (abfd, diff_value, -+ diff_mask = 0x7fff; -+ bfd_put_signed_16 (abfd, diff_value, - &contents[old_source_offset]); - break; - case R_XTENSA_DIFF32: -- diff_mask = 0xffffffff; -- bfd_put_32 (abfd, diff_value, -+ diff_mask = 0x7fffffff; -+ bfd_put_signed_32 (abfd, diff_value, - &contents[old_source_offset]); - break; - } - -- /* Check for overflow. */ -- if ((diff_value & ~diff_mask) != 0) -+ /* Check for overflow. Sign bits must be all zeroes or all ones */ -+ if ((diff_value & ~diff_mask) != 0 && -+ (diff_value & ~diff_mask) != (-1 & ~diff_mask)) - { - (*link_info->callbacks->reloc_dangerous) - (link_info, _("overflow after relaxation"), -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 58ace38..7547c0a0 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5867,12 +5867,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) - { - case BFD_RELOC_8: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; -+ fixP->fx_signed = 1; - break; - case BFD_RELOC_16: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; -+ fixP->fx_signed = 1; - break; - case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; -+ fixP->fx_signed = 1; - break; - default: - break; --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch b/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch deleted file mode 100644 index 6a0846ef8e..0000000000 --- a/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch +++ /dev/null @@ -1,47 +0,0 @@ -From e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 10 Jul 2014 01:47:33 +0400 -Subject: [PATCH] Fix xtensa ld segfault when linking linux modules - -is_inconsistent_linkonce_section makes an assumption that section name -that starts with ".gnu.linkonce.prop." has one more dot in its suffix. -However gas generates such section name by insertion of "prop." right -after ".gnu.linkonce." part of the name of the original section. So, for -section named ".gnu.linkonce.this_module" corresponding property section -name does not satisfy the assumption. Such section names are common in -linux modules. This bug was exposed by the patch "a35d5e8 Fix alignment -for the first section frag on xtensa", that makes gas produce property -section for each section that has ".align" directive in it. - -Use suffix that immediately follows ".gnu.linkonce.prop." when there are -no more dots following it. - -2014-07-10 Max Filippov - -ld/ - * emultempl/xtensaelf.em (is_inconsistent_linkonce_section): - correctly handle missing dot in section name after - ".gnu.linkonce.prop.". ---- -Backported from: e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2 -Changes to ld/ChangeLog file are dropped. - - ld/emultempl/xtensaelf.em | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ld/emultempl/xtensaelf.em b/ld/emultempl/xtensaelf.em -index 151eea4..948d18d 100644 ---- a/ld/emultempl/xtensaelf.em -+++ b/ld/emultempl/xtensaelf.em -@@ -1310,7 +1310,7 @@ is_inconsistent_linkonce_section (asection *sec) - for Tensilica's XCC compiler. */ - name = sec_name + linkonce_len; - if (CONST_STRNEQ (name, "prop.")) -- name = strchr (name + 5, '.') + 1; -+ name = strchr (name + 5, '.') ? strchr (name + 5, '.') + 1 : name + 5; - else if (name[1] == '.' - && (name[0] == 'p' || name[0] == 'e' || name[0] == 'h')) - name += 2; --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch b/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch deleted file mode 100644 index dba7620b7e..0000000000 --- a/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 7fc39194f8fb48914c995f8ec3826d50086f1ec0 Mon Sep 17 00:00:00 2001 -From: Sterling Augustine -Date: Tue, 25 Jan 2011 13:59:13 -0800 -Subject: [PATCH] Fix 'call8: call target out of range' xtensa ld relaxation - bug - -During link-time relaxation distance between cross-section call site and -its target may grow, producing 'call target out of range' error for -relaxed calls. Be more conservative when calculating whether or not a -callx can be converted to a straight call. - -2014-09-23 Sterling Augustine - -bfd/ - * elf32-xtensa.c (is_resolvable_asm_expansion): for cross-section - call relaxation use furthermost addresses where call source and - destination can be to check whether it's in the range of a direct - call. - -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 41 +++++++++++++++++++++++++++++++++++++---- - 1 file changed, 37 insertions(+), 4 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 09862e3..e32496a 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -7124,10 +7124,43 @@ is_resolvable_asm_expansion (bfd *abfd, - || is_reloc_sym_weak (abfd, irel))) - return FALSE; - -- self_address = (sec->output_section->vma -- + sec->output_offset + irel->r_offset + 3); -- dest_address = (target_sec->output_section->vma -- + target_sec->output_offset + target_offset); -+ if (target_sec->output_section != sec->output_section) -+ { -+ /* If the two sections are sufficiently far away that relaxation -+ might take the call out of range, we can't simplify. For -+ example, a positive displacement call into another memory -+ could get moved to a lower address due to literal removal, -+ but the destination won't move, and so the displacment might -+ get larger. -+ -+ If the displacement is negative, assume the destination could -+ move as far back as the start of the output section. The -+ self_address will be at least as far into the output section -+ as it is prior to relaxation. -+ -+ If the displacement is postive, assume the destination will be in -+ it's pre-relaxed location (because relaxation only makes sections -+ smaller). The self_address could go all the way to the beginning -+ of the output section. */ -+ -+ dest_address = target_sec->output_section->vma; -+ self_address = sec->output_section->vma; -+ -+ if (sec->output_section->vma > target_sec->output_section->vma) -+ self_address += sec->output_offset + irel->r_offset + 3; -+ else -+ dest_address += bfd_get_section_limit (abfd, target_sec->output_section); -+ /* Call targets should be four-byte aligned. */ -+ dest_address = (dest_address + 3) & ~3; -+ } -+ else -+ { -+ -+ self_address = (sec->output_section->vma -+ + sec->output_offset + irel->r_offset + 3); -+ dest_address = (target_sec->output_section->vma -+ + target_sec->output_offset + target_offset); -+ } - - *is_reachable_p = pcrel_reloc_fits (direct_call_opcode, 0, - self_address, dest_address); --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch b/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch deleted file mode 100644 index 8aeb06428a..0000000000 --- a/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 415480d6471e67aef97c0241d451ef2423a1da9d Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 25 Nov 2014 21:33:21 +0300 -Subject: [PATCH] Fix trampolines search code for conditional branches - -For conditional branches that need more than one trampoline to reach its -target assembler couldn't always find suitable trampoline because -post-loop condition check was placed inside the loop, resulting in -premature loop termination. Move check outside the loop. - -This fixes the following build errors seen when assembling huge files -produced by gcc: - Error: jump target out of range; no usable trampoline found - Error: operand 1 of 'j' has out of range value '307307' - -2014-11-25 Max Filippov - -gas/ - * config/tc-xtensa.c (search_trampolines): Move post-loop - condition check outside the search loop. - -gas/testsuite/ - * gas/xtensa/trampoline.d: Add expected output for branches. - * gas/xtensa/trampoline.s: Add test case for branches. - -Signed-off-by: Max Filippov ---- -Backported from: d92b6eece424f0ad35d96fdd85bf207295e8c4c3 -Changes to ChangeLogs are dropped. - - gas/config/tc-xtensa.c | 8 ++++---- - gas/testsuite/gas/xtensa/trampoline.d | 9 +++++++++ - gas/testsuite/gas/xtensa/trampoline.s | 7 +++++++ - 3 files changed, 20 insertions(+), 4 deletions(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index d11b0c7..f23ccf8 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -9514,11 +9514,11 @@ search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only) - if (next_addr == 0 || addr - next_addr > J_RANGE) - break; - } -- if (abs (addr - this_addr) < J_RANGE) -- return tf; -- -- return NULL; - } -+ if (abs (addr - this_addr) < J_RANGE) -+ return tf; -+ -+ return NULL; - } - for ( ; tf; tf = tf->next) - { -diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d -index b4f65dc..5ae32a6 100644 ---- a/gas/testsuite/gas/xtensa/trampoline.d -+++ b/gas/testsuite/gas/xtensa/trampoline.d -@@ -24,3 +24,12 @@ - .*33462:.*j.0x49407 - #... - .*49407:.*j.0x49407 -+.*4940a:.*beqz.n.a2,.0x4940f -+.*4940c:.*j.0x693d1 -+#... -+.*693d1:.*j.0x7ddd4 -+#... -+.*7ddd4:.*j.0x927f5 -+#... -+.*927f5:.*j.0x927f5 -+#... -diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s -index 259a3bb..4465786 100644 ---- a/gas/testsuite/gas/xtensa/trampoline.s -+++ b/gas/testsuite/gas/xtensa/trampoline.s -@@ -19,3 +19,10 @@ - .endr - 3: - j 3b -+ bnez a2, 4f -+ .rep 50000 -+ and a2, a2, a3 -+ _ret -+ .endr -+4: -+ j 4b --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch b/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch deleted file mode 100644 index 9ad6b3be05..0000000000 --- a/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 8ec76b16f62d1bf386fb2c39af5f66c3afddc5cb Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 14 May 2015 05:22:55 +0300 -Subject: [PATCH] xtensa: fix localized symbol refcounting with --gc-sections - -elf_xtensa_gc_sweep_hook doesn't correctly unreference symbols that were -made local, that results in link failure with the following message: - - BFD (GNU Binutils) 2.24 internal error, aborting at elf32-xtensa.c line - 3372 in elf_xtensa_finish_dynamic_sections - -elf_xtensa_gc_sweep_hook determines symbol reference type (PLT or GOT) by -relocation type. Relocation types are not changed when symbol becomes -local, but its PLT references are added to GOT references and -plt.refcount is set to 0. Such symbol cannot be unreferences in the -elf_xtensa_gc_sweep_hook and its extra references make calculated GOT -relocations section size not match number of GOT relocations. - -Fix it by treating PLT reference as GOT reference when plt.refcount is -not positive. - -2015-05-14 Max Filippov -bfd/ - * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Treat PLT reference - as GOT reference when plt.refcount is not positive. - -Signed-off-by: Max Filippov ---- -Backported from: e6c9a083ec5ae7a45bd71682b26aae1939849388 -Changes to ChangeLog are dropped. - - bfd/elf32-xtensa.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 53af1c6..2523670 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -1360,10 +1360,14 @@ elf_xtensa_gc_sweep_hook (bfd *abfd, - { - if (is_plt) - { -+ /* If the symbol has been localized its plt.refcount got moved -+ to got.refcount. Handle it as GOT. */ - if (h->plt.refcount > 0) - h->plt.refcount--; -+ else -+ is_got = TRUE; - } -- else if (is_got) -+ if (is_got) - { - if (h->got.refcount > 0) - h->got.refcount--; --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch b/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch deleted file mode 100644 index 4a3de2c839..0000000000 --- a/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 2d0522e76e4afeeb2e104e0a4332d94fa0d2fbf6 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Sun, 17 May 2015 06:46:15 +0300 -Subject: [PATCH] xtensa: fix gas segfault with --text-section-literals - -When --text-section-literals is used and code in the .init or .fini -emits literal in the absence of .literal_position, xtensa_move_literals -segfaults. - -Check that search_frag is non-NULL in the xtensa_move_literals and -report error otherwise. - -2015-05-26 Max Filippov -gas/ - * config/tc-xtensa.c (xtensa_move_literals): Check that - search_frag is non-NULL. Report error if literal frag is not - found. - -Signed-off-by: Max Filippov ---- -Backported from: 4de0562a4c69fef4952aa7e19d7bda359f02e8b4 -Changes to ChangeLog are dropped. - - gas/config/tc-xtensa.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 31c0b6b..18307c1 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -10808,13 +10808,21 @@ xtensa_move_literals (void) - frchain_to = NULL; - frag_splice = &(frchain_from->frch_root); - -- while (!search_frag->tc_frag_data.literal_frag) -+ while (search_frag && !search_frag->tc_frag_data.literal_frag) - { - gas_assert (search_frag->fr_fix == 0 - || search_frag->fr_type == rs_align); - search_frag = search_frag->fr_next; - } - -+ if (!search_frag) -+ { -+ search_frag = frchain_from->frch_root; -+ as_bad_where (search_frag->fr_file, search_frag->fr_line, -+ _("literal pool location required for text-section-literals; specify with .literal_position")); -+ continue; -+ } -+ - gas_assert (search_frag->tc_frag_data.literal_frag->fr_subtype - == RELAX_LITERAL_POOL_BEGIN); - xtensa_switch_section_emit_state (&state, segment->seg, 0); --- -1.8.1.4 - diff --git a/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch deleted file mode 100644 index 2955e114e2..0000000000 --- a/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 2 Feb 2016 17:11:38 +0300 -Subject: [PATCH] xtensa: fix signedness of gas relocations - -Change 1058c7532d0b "Use signed data type for R_XTENSA_DIFF* relocation -offsets." changed signedness of BFD_RELOC_XTENSA_DIFF* relocations -substituted for BFD_RELOC_*. This made it impossible to encode arbitrary -8-, 16- and 32-bit values, which broke e.g. debug info encoding by .loc -directive. Revert this part and add test. - -gas/ -2016-02-03 Max Filippov - * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF* - substitutions for BFD_RELOC_* as unsigned. - -Signed-off-by: Max Filippov ---- - gas/config/tc-xtensa.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index a119871..36a06cc 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5961,15 +5961,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) - { - case BFD_RELOC_8: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - case BFD_RELOC_16: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - default: - break; --- -2.1.4 - diff --git a/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch deleted file mode 100644 index 4bdd8a0277..0000000000 --- a/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 16 Feb 2016 02:23:28 +0300 -Subject: [PATCH] xtensa: fix .init/.fini literals moving - -Despite the documentation and the comment in xtensa_move_literals, in -the presence of --text-section-literals and --auto-litpools literals are -moved from the separate literal sections into .init and .fini, because -the check in the xtensa_move_literals is incorrect. - -This moving was broken with introduction of auto litpools: some literals -now may be lost. This happens because literal frags emitted from .init -and .fini are not closed when new .literal_position marks new literal -pool. Then frag_align(2, 0, 0) changes type of the last literal frag to -rs_align. rs_align frags are skipped in the xtensa_move_literals. As a -result fixups against such literals are not moved out of .init.literal/ -.fini.literal sections producing the following assembler error: - - test.S: Warning: fixes not all moved from .init.literal - test.S: Internal error! - -Fix check for .init.literal/.fini.literal in the xtensa_move_literals -and don't let it move literals from there in the presence of ---text-section-literals or --auto-litpools. - -2016-02-17 Max Filippov -gas/ - * config/tc-xtensa.c (xtensa_move_literals): Fix check for - .init.literal/.fini.literal section name. - -Signed-off-by: Max Filippov ---- -Backported from: 4111950f363221c4641dc2f33bea61cc94f34906 - - gas/config/tc-xtensa.c | 12 ++++++++++-- - 1 file changed, 19 insertions(+), 2 deletions(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 36a06cc..5773634 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -10625,5 +10625,9 @@ xtensa_move_literals (void) - fixS *fix, *next_fix, **fix_splice; - sym_list *lit; -+ const char *init_name = INIT_SECTION_NAME; -+ const char *fini_name = FINI_SECTION_NAME; -+ int init_name_len = strlen(init_name); -+ int fini_name_len = strlen(fini_name); - - mark_literal_frags (literal_head->next); - -@@ -10632,9 +10636,13 @@ xtensa_move_literals (void) - - for (segment = literal_head->next; segment; segment = segment->next) - { -+ const char *seg_name = segment_name (segment->seg); -+ - /* Keep the literals for .init and .fini in separate sections. */ -- if (!strcmp (segment_name (segment->seg), INIT_SECTION_NAME) -- || !strcmp (segment_name (segment->seg), FINI_SECTION_NAME)) -+ if ((!memcmp (seg_name, init_name, init_name_len) && -+ !strcmp (seg_name + init_name_len, ".literal")) || -+ (!memcmp (seg_name, fini_name, fini_name_len) && -+ !strcmp (seg_name + fini_name_len, ".literal"))) - continue; - - frchain_from = seg_info (segment->seg)->frchainP; --- -2.1.4 - diff --git a/package/binutils/2.24/001-fix-enable-install-libiberty-flag.patch b/package/binutils/2.24/001-fix-enable-install-libiberty-flag.patch deleted file mode 100644 index e40840194d..0000000000 --- a/package/binutils/2.24/001-fix-enable-install-libiberty-flag.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 369be6981b26787b2685e3b8c6da779dae8ce35f Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Mon, 6 Jan 2014 18:15:31 +0000 -Subject: [PATCH] libiberty: fix --enable-install-libiberty flag [PR 56780] - -Commit 199570 fixed the --disable-install-libiberty behavior, but it also -added a bug where the enable path never works because the initial clear -of target_header_dir wasn't deleted. So we end up initializing properly -at the top only to reset it at the end all the time. - -[Arnout: adapt to match 2.24 tarball] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206367 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - libiberty/configure | 1 - - libiberty/configure.ac | 1 - - 3 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/libiberty/configure b/libiberty/configure -index 8ea54da..7bde9b3 100755 ---- a/libiberty/configure -+++ b/libiberty/configure -@@ -5507,7 +5507,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -diff --git a/libiberty/configure.ac b/libiberty/configure.ac -index 4ad88a9..d6180bc 100644 ---- a/libiberty/configure.ac -+++ b/libiberty/configure.ac -@@ -405,7 +405,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS --- -1.7.1 - diff --git a/package/binutils/2.24/002-dont-segv-on-initial-instructions-overflow.patch b/package/binutils/2.24/002-dont-segv-on-initial-instructions-overflow.patch deleted file mode 100644 index 7881646981..0000000000 --- a/package/binutils/2.24/002-dont-segv-on-initial-instructions-overflow.patch +++ /dev/null @@ -1,66 +0,0 @@ -From: Alan Modra -Date: Fri, 20 Dec 2013 13:27:52 +0000 (+1030) -Subject: Don't segv on cie.initial_instructions[] overflow. -X-Git-Tag: gdb-7.7-release~148 -X-Git-Url: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff_plain;h=99d190fac4d2aab238cfc798dc5c28ab41456882 - -Don't segv on cie.initial_instructions[] overflow. - -Don't attempt to merge CIEs with a larger number of insns than will -fit in the buffer. - - * elf-eh-frame.c (cie_eq): Return false when initial_insn_length - is too large. - (cie_compute_hash): Don't exceed bounds of initial_instructions. - (_bfd_elf_parse_eh_frame): Always set initial_insn_length, and - save as much of insns to initial_instructions[] as will fit. ---- - -diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c -index 832a991..4b6e8ea 100644 ---- a/bfd/elf-eh-frame.c -+++ b/bfd/elf-eh-frame.c -@@ -235,6 +235,7 @@ cie_eq (const void *e1, const void *e2) - && c1->lsda_encoding == c2->lsda_encoding - && c1->fde_encoding == c2->fde_encoding - && c1->initial_insn_length == c2->initial_insn_length -+ && c1->initial_insn_length <= sizeof (c1->initial_instructions) - && memcmp (c1->initial_instructions, - c2->initial_instructions, - c1->initial_insn_length) == 0) -@@ -254,6 +255,7 @@ static hashval_t - cie_compute_hash (struct cie *c) - { - hashval_t h = 0; -+ size_t len; - h = iterative_hash_object (c->length, h); - h = iterative_hash_object (c->version, h); - h = iterative_hash (c->augmentation, strlen (c->augmentation) + 1, h); -@@ -267,7 +269,10 @@ cie_compute_hash (struct cie *c) - h = iterative_hash_object (c->lsda_encoding, h); - h = iterative_hash_object (c->fde_encoding, h); - h = iterative_hash_object (c->initial_insn_length, h); -- h = iterative_hash (c->initial_instructions, c->initial_insn_length, h); -+ len = c->initial_insn_length; -+ if (len > sizeof (c->initial_instructions)) -+ len = sizeof (c->initial_instructions); -+ h = iterative_hash (c->initial_instructions, len, h); - c->hash = h; - return h; - } -@@ -762,11 +767,10 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info, - cie->fde_encoding = DW_EH_PE_absptr; - - initial_insn_length = end - buf; -- if (initial_insn_length <= sizeof (cie->initial_instructions)) -- { -- cie->initial_insn_length = initial_insn_length; -- memcpy (cie->initial_instructions, buf, initial_insn_length); -- } -+ cie->initial_insn_length = initial_insn_length; -+ memcpy (cie->initial_instructions, buf, -+ initial_insn_length <= sizeof (cie->initial_instructions) -+ ? initial_insn_length : sizeof (cie->initial_instructions)); - insns = buf; - buf += initial_insn_length; - ENSURE_NO_RELOCS (buf); diff --git a/package/binutils/2.24/120-sh-conf.patch b/package/binutils/2.24/120-sh-conf.patch deleted file mode 100644 index ea3d1b6068..0000000000 --- a/package/binutils/2.24/120-sh-conf.patch +++ /dev/null @@ -1,29 +0,0 @@ -r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines - -Likewise, binutils has no idea about any of these new targets either, so we -fix that up too.. now we're able to actually build a real toolchain for -sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more -inept targets than that one, really. Go look, I promise). - ---- a/configure -+++ b/configure -@@ -1495,7 +1495,7 @@ - mips*-*-*) - noconfigdirs="$noconfigdirs gprof" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${target}" in - sh*-*-elf) - ;; ---- a/configure.ac -+++ b/configure.ac -@@ -712,7 +712,7 @@ - mips*-*-*) - noconfigdirs="$noconfigdirs gprof" - ;; -- sh-*-* | sh64-*-*) -+ sh*-*-* | sh64-*-*) - case "${target}" in - sh*-*-elf) - ;; diff --git a/package/binutils/2.24/300-001_ld_makefile_patch.patch b/package/binutils/2.24/300-001_ld_makefile_patch.patch deleted file mode 100644 index 5cb0f614d8..0000000000 --- a/package/binutils/2.24/300-001_ld_makefile_patch.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.am binutils-2.17.50.0.17/ld/Makefile.am ---- binutils-2.17.50.0.17.oorig/ld/Makefile.am 2007-06-18 19:29:29.000000000 +0200 -+++ binutils-2.17.50.0.17/ld/Makefile.am 2007-06-25 10:00:36.000000000 +0200 -@@ -18,7 +18,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - - EMUL = @EMUL@ - EMULATION_OFILES = @EMULATION_OFILES@ -diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.in binutils-2.17.50.0.17/ld/Makefile.in ---- binutils-2.17.50.0.17.oorig/ld/Makefile.in 2007-06-18 19:29:29.000000000 +0200 -+++ binutils-2.17.50.0.17/ld/Makefile.in 2007-06-25 10:00:36.000000000 +0200 -@@ -287,7 +287,7 @@ - # We put the scripts in the directory $(scriptdir)/ldscripts. - # We can't put the scripts in $(datadir) because the SEARCH_DIR - # directives need to be different for native and cross linkers. --scriptdir = $(tooldir)/lib -+scriptdir = $(libdir) - BASEDIR = $(srcdir)/.. - BFDDIR = $(BASEDIR)/bfd - INCDIR = $(BASEDIR)/include diff --git a/package/binutils/2.24/300-012_check_ldrunpath_length.patch b/package/binutils/2.24/300-012_check_ldrunpath_length.patch deleted file mode 100644 index df783109bb..0000000000 --- a/package/binutils/2.24/300-012_check_ldrunpath_length.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em ---- binutils-2.21.orig/ld/emultempl/elf32.em 2010-10-29 09:10:36.000000000 -0300 -+++ binutils-2.21/ld/emultempl/elf32.em 2010-12-10 09:26:56.746102724 -0300 -@@ -1270,6 +1270,8 @@ - && command_line.rpath == NULL) - { - lib_path = (const char *) getenv ("LD_RUN_PATH"); -+ if ((lib_path) && (strlen (lib_path) == 0)) -+ lib_path = NULL; - if (gld${EMULATION_NAME}_search_needed (lib_path, &n, - force)) - break; -@@ -1497,6 +1499,8 @@ - rpath = command_line.rpath; - if (rpath == NULL) - rpath = (const char *) getenv ("LD_RUN_PATH"); -+ if ((rpath) && (strlen (rpath) == 0)) -+ rpath = NULL; - - for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next) - if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) diff --git a/package/binutils/2.24/900-xtensa-trampolines.patch b/package/binutils/2.24/900-xtensa-trampolines.patch deleted file mode 100644 index b5b934fcab..0000000000 --- a/package/binutils/2.24/900-xtensa-trampolines.patch +++ /dev/null @@ -1,846 +0,0 @@ -From a82c7d9030b67a6a76a5403d0e1641f9e42141ac Mon Sep 17 00:00:00 2001 -From: David Weatherford -Date: Fri, 21 Mar 2014 11:53:42 +0000 -Subject: [PATCH] Add support to the Xtensa target for creating trampolines for - out-of-range branches. - - * tc-xtensa.c (xtensa_check_frag_count, xtensa_create_trampoline_frag) - (xtensa_maybe_create_trampoline_frag, init_trampoline_frag) - (find_trampoline_seg, search_trampolines, get_best_trampoline) - (check_and_update_trampolines, add_jump_to_trampoline) - (dump_trampolines): New function. - (md_parse_option): Add cases for --[no-]trampolines options. - (md_assemble, finish_vinsn, xtensa_end): Add call to - xtensa_check_frag_count. - (xg_assemble_vliw_tokens): Add call to - xtensa_maybe_create_trampoline_frag. - (xtensa_relax_frag): Relax fragments with RELAX_TRAMPOLINE state. - (relax_frag_immed): Relax jump instructions that cannot reach its - target. - * tc-xtensa.h (xtensa_relax_statesE::RELAX_TRAMPOLINE): New relax - state. - - * as.texinfo: Document --[no-]trampolines command-line options. - * c-xtensa.texi: Document trampolines relaxation and command line - options. - - * frags.c (get_frag_count, clear_frag_count): New function. - (frag_alloc): Increment totalfrags counter. - * frags.h (get_frag_count, clear_frag_count): New function. - - * all.exp: Add test for trampoline relaxation. - * trampoline.d: Trampoline relaxation expected dump. - * trampoline.s: Trampoline relaxation test source. ---- -Backported from: a82c7d9030b67a6a76a5403d0e1641f9e42141ac -Changes to Changelog files are dropped. - - gas/config/tc-xtensa.c | 558 +++++++++++++++++++++++++++++++++- - gas/config/tc-xtensa.h | 5 + - gas/frags.c | 15 + - gas/frags.h | 3 + - gas/testsuite/gas/xtensa/all.exp | 1 + - gas/testsuite/gas/xtensa/trampoline.d | 26 ++ - gas/testsuite/gas/xtensa/trampoline.s | 21 ++ - 11 files changed, 753 insertions(+), 2 deletions(-) - create mode 100644 gas/testsuite/gas/xtensa/trampoline.d - create mode 100644 gas/testsuite/gas/xtensa/trampoline.s - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index fe8ec0f..ea23c96 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -468,6 +468,12 @@ static void xtensa_set_frag_assembly_state (fragS *); - static void finish_vinsn (vliw_insn *); - static bfd_boolean emit_single_op (TInsn *); - static int total_frag_text_expansion (fragS *); -+static bfd_boolean use_trampolines = TRUE; -+static void xtensa_check_frag_count (void); -+static void xtensa_create_trampoline_frag (bfd_boolean); -+static void xtensa_maybe_create_trampoline_frag (void); -+struct trampoline_frag; -+static int init_trampoline_frag (struct trampoline_frag *); - - /* Alignment Functions. */ - -@@ -520,6 +526,7 @@ static void tinsn_from_chars (TInsn *, char *, int); - static void tinsn_immed_from_frag (TInsn *, fragS *, int); - static int get_num_stack_text_bytes (IStack *); - static int get_num_stack_literal_bytes (IStack *); -+static bfd_boolean tinsn_to_slotbuf (xtensa_format, int, TInsn *, xtensa_insnbuf); - - /* vliw_insn functions. */ - -@@ -687,7 +694,10 @@ enum - option_prefer_l32r, - option_prefer_const16, - -- option_target_hardware -+ option_target_hardware, -+ -+ option_trampolines, -+ option_no_trampolines, - }; - - const char *md_shortopts = ""; -@@ -760,6 +770,9 @@ struct option md_longopts[] = - - { "target-hardware", required_argument, NULL, option_target_hardware }, - -+ { "trampolines", no_argument, NULL, option_trampolines }, -+ { "no-trampolines", no_argument, NULL, option_no_trampolines }, -+ - { NULL, no_argument, NULL, 0 } - }; - -@@ -940,6 +953,14 @@ md_parse_option (int c, char *arg) - directive_state[directive_transform] = FALSE; - return 1; - -+ case option_trampolines: -+ use_trampolines = TRUE; -+ return 1; -+ -+ case option_no_trampolines: -+ use_trampolines = FALSE; -+ return 1; -+ - default: - return 0; - } -@@ -963,7 +984,9 @@ Xtensa options:\n\ - flix bundles\n\ - --no-allow-flix neither allow hand-written nor generate\n\ - flix bundles\n\ -- --rename-section old=new Rename section 'old' to 'new'\n", stream); -+ --rename-section old=new Rename section 'old' to 'new'\n\ -+ --[no-]trampolines [Do not] generate trampolines (jumps to jumps)\n\ -+ when jumps do not reach their targets\n", stream); - } - - -@@ -5568,6 +5591,8 @@ md_assemble (char *str) - - /* We've just emitted a new instruction so clear the list of labels. */ - xtensa_clear_insn_labels (); -+ -+ xtensa_check_frag_count (); - } - - -@@ -6372,6 +6397,8 @@ finish_vinsn (vliw_insn *vinsn) - xg_assemble_vliw_tokens (vinsn); - - xg_clear_vinsn (vinsn); -+ -+ xtensa_check_frag_count (); - } - - -@@ -7140,6 +7167,7 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) - RELAX_UNREACHABLE, - frag_now->fr_symbol, frag_now->fr_offset, NULL); - xtensa_set_frag_assembly_state (frag_now); -+ xtensa_maybe_create_trampoline_frag (); - } - else if (is_branch && do_align_targets ()) - { -@@ -7222,9 +7250,164 @@ xtensa_end (void) - xtensa_sanity_check (); - - xtensa_add_config_info (); -+ -+ xtensa_check_frag_count (); -+} -+ -+ -+struct trampoline_frag -+{ -+ struct trampoline_frag *next; -+ bfd_boolean needs_jump_around; -+ fragS *fragP; -+ fixS *fixP; -+}; -+ -+struct trampoline_seg -+{ -+ struct trampoline_seg *next; -+ asection *seg; -+ struct trampoline_frag trampoline_list; -+}; -+ -+static struct trampoline_seg trampoline_seg_list; -+#define J_RANGE (128 * 1024) -+ -+static int unreachable_count = 0; -+ -+ -+static void -+xtensa_maybe_create_trampoline_frag (void) -+{ -+ if (!use_trampolines) -+ return; -+ -+ /* We create an area for possible trampolines every 10 unreachable frags. -+ These are preferred over the ones not preceded by an unreachable frag, -+ because we don't have to jump around them. This function is called after -+ each RELAX_UNREACHABLE frag is created. */ -+ -+ if (++unreachable_count > 10) -+ { -+ xtensa_create_trampoline_frag (FALSE); -+ clear_frag_count (); -+ unreachable_count = 0; -+ } -+} -+ -+static void -+xtensa_check_frag_count (void) -+{ -+ if (!use_trampolines || frag_now->tc_frag_data.is_no_transform) -+ return; -+ -+ /* We create an area for possible trampolines every 8000 frags or so. This -+ is an estimate based on the max range of a "j" insn (+/-128K) divided -+ by a typical frag byte count (16), minus a few for safety. This function -+ is called after each source line is processed. */ -+ -+ if (get_frag_count () > 8000) -+ { -+ xtensa_create_trampoline_frag (TRUE); -+ clear_frag_count (); -+ unreachable_count = 0; -+ } -+} -+ -+static xtensa_insnbuf trampoline_buf = NULL; -+static xtensa_insnbuf trampoline_slotbuf = NULL; -+ -+#define TRAMPOLINE_FRAG_SIZE 3000 -+ -+static void -+xtensa_create_trampoline_frag (bfd_boolean needs_jump_around) -+{ -+ /* Emit a frag where we can place intermediate jump instructions, -+ in case we need to jump farther than 128K bytes. -+ Each jump instruction takes three bytes. -+ We allocate enough for 1000 trampolines in each frag. -+ If that's not enough, oh well. */ -+ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ struct trampoline_frag *tf; -+ char *varP; -+ fragS *fragP; -+ int size = TRAMPOLINE_FRAG_SIZE; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ if (ts->seg == now_seg) -+ break; -+ } -+ -+ if (ts == NULL) -+ { -+ ts = (struct trampoline_seg *)xcalloc(sizeof (struct trampoline_seg), 1); -+ ts->next = trampoline_seg_list.next; -+ trampoline_seg_list.next = ts; -+ ts->seg = now_seg; -+ } -+ -+ frag_wane (frag_now); -+ frag_new (0); -+ xtensa_set_frag_assembly_state (frag_now); -+ varP = frag_var (rs_machine_dependent, size, size, RELAX_TRAMPOLINE, NULL, 0, NULL); -+ fragP = (fragS *)(varP - SIZEOF_STRUCT_FRAG); -+ if (trampoline_buf == NULL) -+ { -+ trampoline_buf = xtensa_insnbuf_alloc (xtensa_default_isa); -+ trampoline_slotbuf = xtensa_insnbuf_alloc (xtensa_default_isa); -+ } -+ tf = (struct trampoline_frag *)xmalloc(sizeof (struct trampoline_frag)); -+ tf->next = ts->trampoline_list.next; -+ ts->trampoline_list.next = tf; -+ tf->needs_jump_around = needs_jump_around; -+ tf->fragP = fragP; -+ tf->fixP = NULL; -+} -+ -+ -+static struct trampoline_seg * -+find_trampoline_seg (asection *seg) -+{ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ if (ts->seg == seg) -+ return ts; -+ } -+ -+ return NULL; - } - - -+void dump_trampolines (void); -+ -+void -+dump_trampolines (void) -+{ -+ struct trampoline_seg *ts = trampoline_seg_list.next; -+ -+ for ( ; ts; ts = ts->next) -+ { -+ asection *seg = ts->seg; -+ -+ if (seg == NULL) -+ continue; -+ fprintf(stderr, "SECTION %s\n", seg->name); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ for ( ; tf; tf = tf->next) -+ { -+ if (tf->fragP == NULL) -+ continue; -+ fprintf(stderr, " 0x%08x: fix=%d, jump_around=%s\n", -+ (int)tf->fragP->fr_address, (int)tf->fragP->fr_fix, -+ tf->needs_jump_around ? "T" : "F"); -+ } -+ } -+} -+ - static void - xtensa_cleanup_align_frags (void) - { -@@ -8708,6 +8891,149 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - new_stretch += relax_frag_for_align (fragP, stretch); - break; - -+ case RELAX_TRAMPOLINE: -+ if (fragP->tc_frag_data.relax_seen) -+ { -+ segment_info_type *seginfo = seg_info (now_seg); -+ fragS *fP; /* The out-of-range jump. */ -+ fixS *fixP; -+ -+ /* Scan for jumps that will not reach. */ -+ for (fixP = seginfo->fix_root; fixP ; fixP = fixP->fx_next) -+ { -+ symbolS *s = fixP->fx_addsy; -+ xtensa_opcode opcode; -+ int target; -+ int addr; -+ int delta; -+ -+ if (fixP->fx_r_type < BFD_RELOC_XTENSA_SLOT0_OP || -+ fixP->fx_r_type > BFD_RELOC_XTENSA_SLOT14_OP) -+ continue; -+ xtensa_insnbuf_from_chars (isa, trampoline_buf, -+ (unsigned char *) fixP->fx_frag->fr_literal + fixP->fx_where, -+ 0); -+ fmt = xtensa_format_decode (isa, trampoline_buf); -+ gas_assert (fmt != XTENSA_UNDEFINED); -+ slot = fixP->tc_fix_data.slot; -+ xtensa_format_get_slot (isa, fmt, slot, trampoline_buf, trampoline_slotbuf); -+ opcode = xtensa_opcode_decode (isa, fmt, slot, trampoline_slotbuf); -+ if (opcode != xtensa_j_opcode) -+ continue; -+ target = S_GET_VALUE (s); -+ addr = fixP->fx_frag->fr_address; -+ delta = target - addr + stretch; -+ if (delta > J_RANGE || delta < -1 * J_RANGE) -+ { /* Found an out-of-range jump; scan the list of trampolines for the best match. */ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ struct trampoline_frag *prev = &ts->trampoline_list; -+ int lower = (target < addr) ? target : addr; -+ int upper = (target > addr) ? target : addr; -+ int midpoint = lower + (upper - lower) / 2; -+ -+ if ((upper - lower) > 2 * J_RANGE) -+ { -+ /* One trampoline won't suffice; we need multiple jumps. -+ Jump to the trampoline that's farthest, but still in -+ range relative to the original "j" instruction. */ -+ for ( ; tf; prev = tf, tf = tf->next ) -+ { -+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0 ; -+ -+ if (addr == lower) -+ { -+ /* Forward jump. */ -+ if (this_addr - addr < J_RANGE) -+ break; -+ } -+ else -+ { -+ /* Backward jump. */ -+ if (next_addr == 0 || addr - next_addr > J_RANGE) -+ break; -+ } -+ } -+ } -+ else -+ { -+ struct trampoline_frag *best_tf = NULL; -+ int best_delta = 0; -+ -+ for ( ; tf; prev = tf, tf = tf->next ) -+ { -+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ int this_delta = abs (this_addr - midpoint); -+ -+ if (!best_tf || this_delta < best_delta) -+ { -+ best_tf = tf; -+ best_delta = this_delta; -+ } -+ } -+ tf = best_tf; -+ } -+ if (tf->fragP == fragP) -+ { -+ int trampaddr = fragP->fr_address + fragP->fr_fix; -+ -+ if (abs (addr - trampaddr) < J_RANGE) -+ { /* The trampoline is in range of original; fix it! */ -+ fixS *newfixP; -+ int offset; -+ TInsn insn; -+ symbolS *lsym; -+ -+ new_stretch += init_trampoline_frag (tf); -+ offset = fragP->fr_fix; /* Where to assemble the j insn. */ -+ lsym = fragP->fr_symbol; -+ fP = fixP->fx_frag; -+ /* Assemble a jump to the target label here. */ -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], lsym, offset); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fragP->fr_literal + offset, 3); -+ fragP->fr_fix += 3; -+ fragP->fr_var -= 3; -+ /* Add a fix-up for the original j insn. */ -+ newfixP = fix_new (fP, fixP->fx_where, fixP->fx_size, lsym, fragP->fr_fix - 3, TRUE, fixP->fx_r_type); -+ newfixP->fx_no_overflow = 1; -+ newfixP->tc_fix_data.X_add_symbol = lsym; -+ newfixP->tc_fix_data.X_add_number = offset; -+ newfixP->tc_fix_data.slot = slot; -+ /* Move the fix-up from the original j insn to this one. */ -+ fixP->fx_frag = fragP; -+ fixP->fx_where = fragP->fr_fix - 3; -+ fixP->tc_fix_data.slot = 0; -+ /* Adjust the jump around this trampoline (if present). */ -+ if (tf->fixP != NULL) -+ { -+ tf->fixP->fx_offset += 3; -+ } -+ new_stretch += 3; -+ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */ -+ /* Do we have room for more? */ -+ if (fragP->fr_var < 3) -+ { /* No, convert to fill. */ -+ frag_wane (fragP); -+ fragP->fr_subtype = 0; -+ /* Remove from the trampoline_list. */ -+ prev->next = tf->next; -+ break; -+ } -+ } -+ } -+ } -+ } -+ } -+ break; -+ - default: - as_bad (_("bad relaxation state")); - } -@@ -9146,6 +9472,200 @@ bytes_to_stretch (fragS *this_frag, - } - - -+static struct trampoline_frag * -+search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only) -+{ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = (ts) ? ts->trampoline_list.next : NULL; -+ struct trampoline_frag *best_tf = NULL; -+ int best_delta = 0; -+ int best_addr = 0; -+ symbolS *sym = tinsn->tok[0].X_add_symbol; -+ offsetT target = S_GET_VALUE (sym) + tinsn->tok[0].X_add_number; -+ offsetT addr = fragP->fr_address; -+ offsetT lower = (addr < target) ? addr : target; -+ offsetT upper = (addr > target) ? addr : target; -+ int delta = upper - lower; -+ offsetT midpoint = lower + delta / 2; -+ int this_delta = -1; -+ int this_addr = -1; -+ -+ if (delta > 2 * J_RANGE) -+ { -+ /* One trampoline won't do; we need multiple. -+ Choose the farthest trampoline that's still in range of the original -+ and let a later pass finish the job. */ -+ for ( ; tf; tf = tf->next) -+ { -+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0; -+ -+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ if (lower == addr) -+ { -+ /* Forward jump. */ -+ if (this_addr - addr < J_RANGE) -+ break; -+ } -+ else -+ { -+ /* Backward jump. */ -+ if (next_addr == 0 || addr - next_addr > J_RANGE) -+ break; -+ } -+ if (abs (addr - this_addr) < J_RANGE) -+ return tf; -+ -+ return NULL; -+ } -+ } -+ for ( ; tf; tf = tf->next) -+ { -+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix; -+ this_delta = abs (this_addr - midpoint); -+ if (unreachable_only && tf->needs_jump_around) -+ continue; -+ if (!best_tf || this_delta < best_delta) -+ { -+ best_tf = tf; -+ best_delta = this_delta; -+ best_addr = this_addr; -+ } -+ } -+ -+ if (best_tf && -+ best_delta < J_RANGE && -+ abs(best_addr - lower) < J_RANGE && -+ abs(best_addr - upper) < J_RANGE) -+ return best_tf; -+ -+ return NULL; /* No suitable trampoline found. */ -+} -+ -+ -+static struct trampoline_frag * -+get_best_trampoline (TInsn *tinsn, fragS *fragP) -+{ -+ struct trampoline_frag *tf = NULL; -+ -+ tf = search_trampolines (tinsn, fragP, TRUE); /* Try unreachable first. */ -+ -+ if (tf == NULL) -+ tf = search_trampolines (tinsn, fragP, FALSE); /* Try ones needing a jump-around, too. */ -+ -+ return tf; -+} -+ -+ -+static void -+check_and_update_trampolines (void) -+{ -+ struct trampoline_seg *ts = find_trampoline_seg (now_seg); -+ struct trampoline_frag *tf = ts->trampoline_list.next; -+ struct trampoline_frag *prev = &ts->trampoline_list; -+ -+ for ( ; tf; prev = tf, tf = tf->next) -+ { -+ if (tf->fragP->fr_var < 3) -+ { -+ frag_wane (tf->fragP); -+ prev->next = tf->next; -+ tf->fragP = NULL; -+ } -+ } -+} -+ -+ -+static int -+init_trampoline_frag (struct trampoline_frag *trampP) -+{ -+ fragS *fp = trampP->fragP; -+ int growth = 0; -+ -+ if (fp->fr_fix == 0) -+ { -+ symbolS *lsym; -+ char label[10 + 2 * sizeof(fp)]; -+ sprintf (label, ".L0_TR_%p", fp); -+ -+ lsym = (symbolS *)local_symbol_make (label, now_seg, 0, fp); -+ fp->fr_symbol = lsym; -+ if (trampP->needs_jump_around) -+ { -+ /* Add a jump around this block of jumps, in case -+ control flows into this block. */ -+ fixS *fixP; -+ TInsn insn; -+ xtensa_format fmt; -+ xtensa_isa isa = xtensa_default_isa; -+ -+ fp->tc_frag_data.is_insn = 1; -+ /* Assemble a jump insn. */ -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], lsym, 3); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fp->fr_literal, 3); -+ fp->fr_fix += 3; -+ fp->fr_var -= 3; -+ growth = 3; -+ fixP = fix_new (fp, 0, 3, lsym, 3, TRUE, BFD_RELOC_XTENSA_SLOT0_OP); -+ trampP->fixP = fixP; -+ } -+ } -+ return growth; -+} -+ -+ -+static int -+add_jump_to_trampoline (struct trampoline_frag *trampP, fragS *origfrag) -+{ -+ fragS *tramp = trampP->fragP; -+ fixS *fixP; -+ int offset = tramp->fr_fix; /* Where to assemble the j insn. */ -+ TInsn insn; -+ symbolS *lsym; -+ symbolS *tsym; -+ int toffset; -+ xtensa_format fmt; -+ xtensa_isa isa = xtensa_default_isa; -+ int growth = 0; -+ -+ lsym = tramp->fr_symbol; -+ /* Assemble a jump to the target label in the trampoline frag. */ -+ tsym = origfrag->tc_frag_data.slot_symbols[0]; -+ toffset = origfrag-> tc_frag_data.slot_offsets[0]; -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], tsym, toffset); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf); -+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)tramp->fr_literal + offset, 3); -+ tramp->fr_fix += 3; -+ tramp->fr_var -= 3; -+ growth = 3; -+ /* add a fix-up for the trampoline jump. */ -+ fixP = fix_new (tramp, tramp->fr_fix - 3, 3, tsym, toffset, TRUE, BFD_RELOC_XTENSA_SLOT0_OP); -+ /* Modify the jump at the start of this trampoline to point past the newly-added jump. */ -+ fixP = trampP->fixP; -+ if (fixP) -+ fixP->fx_offset += 3; -+ /* Modify the original j to point here. */ -+ origfrag->tc_frag_data.slot_symbols[0] = lsym; -+ origfrag->tc_frag_data.slot_offsets[0] = tramp->fr_fix - 3; -+ /* If trampoline is full, remove it from the list. */ -+ check_and_update_trampolines (); -+ -+ return growth; -+} -+ -+ - static long - relax_frag_immed (segT segP, - fragS *fragP, -@@ -9284,6 +9804,37 @@ relax_frag_immed (segT segP, - if (negatable_branch && istack.ninsn > 1) - update_next_frag_state (fragP); - -+ /* If last insn is a jump, and it cannot reach its target, try to find a trampoline. */ -+ if (istack.ninsn > 2 && -+ istack.insn[istack.ninsn - 1].insn_type == ITYPE_LABEL && -+ istack.insn[istack.ninsn - 2].insn_type == ITYPE_INSN && -+ istack.insn[istack.ninsn - 2].opcode == xtensa_j_opcode) -+ { -+ TInsn *jinsn = &istack.insn[istack.ninsn - 2]; -+ -+ if (!xg_symbolic_immeds_fit (jinsn, segP, fragP, fragP->fr_offset, total_text_diff)) -+ { -+ struct trampoline_frag *tf = get_best_trampoline (jinsn, fragP); -+ -+ if (tf) -+ { -+ this_text_diff += init_trampoline_frag (tf); -+ this_text_diff += add_jump_to_trampoline (tf, fragP); -+ } -+ else -+ { -+ /* If target symbol is undefined, assume it will reach once linked. */ -+ expressionS *exp = &istack.insn[istack.ninsn - 2].tok[0]; -+ -+ if (exp->X_op == O_symbol && S_IS_DEFINED (exp->X_add_symbol)) -+ { -+ as_bad_where (fragP->fr_file, fragP->fr_line, -+ _("jump target out of range; no usable trampoline found")); -+ } -+ } -+ } -+ } -+ - return this_text_diff; - } - -@@ -9404,6 +9955,9 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, segT sec, fragS *fragp) - else - as_bad (_("invalid relaxation fragment result")); - break; -+ -+ case RELAX_TRAMPOLINE: -+ break; - } - - fragp->fr_var = 0; -diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h -index 0bf1240..4672bc6 100644 ---- a/gas/config/tc-xtensa.h -+++ b/gas/config/tc-xtensa.h -@@ -180,6 +180,11 @@ enum xtensa_relax_statesE - prevent the linker from changing the size of any frag between the - section start and the org frag. */ - -+ RELAX_TRAMPOLINE, -+ /* Every few thousand frags, we insert one of these, just in case we may -+ need some space for a trampoline (jump to a jump) because the function -+ has gotten too big. If not needed, it disappears. */ -+ - RELAX_NONE - }; - -diff --git a/gas/frags.c b/gas/frags.c -index 5f68480..e14099d 100644 ---- a/gas/frags.c -+++ b/gas/frags.c -@@ -24,6 +24,20 @@ - - extern fragS zero_address_frag; - extern fragS predefined_address_frag; -+ -+static int totalfrags; -+ -+int -+get_frag_count (void) -+{ -+ return totalfrags; -+} -+ -+void -+clear_frag_count (void) -+{ -+ totalfrags = 0; -+} - - /* Initialization for frag routines. */ - -@@ -70,6 +84,7 @@ frag_alloc (struct obstack *ob) - ptr = (fragS *) obstack_alloc (ob, SIZEOF_STRUCT_FRAG); - obstack_alignment_mask (ob) = oalign; - memset (ptr, 0, SIZEOF_STRUCT_FRAG); -+ totalfrags++; - return ptr; - } - -diff --git a/gas/frags.h b/gas/frags.h -index 319898f..2f9e1b5 100644 ---- a/gas/frags.h -+++ b/gas/frags.h -@@ -155,4 +155,7 @@ char *frag_var (relax_stateT type, - - bfd_boolean frag_offset_fixed_p (const fragS *, const fragS *, offsetT *); - -+int get_frag_count (void); -+void clear_frag_count (void); -+ - #endif /* FRAGS_H */ -diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp -index 2b2c294..3683b78 100644 ---- a/gas/testsuite/gas/xtensa/all.exp -+++ b/gas/testsuite/gas/xtensa/all.exp -@@ -98,6 +98,7 @@ if [istarget xtensa*-*-*] then { - run_dump_test "pcrel" - run_dump_test "weak-call" - run_dump_test "jlong" -+ run_dump_test "trampoline" - } - - if [info exists errorInfo] then { -diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d -new file mode 100644 -index 0000000..b4f65dc ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/trampoline.d -@@ -0,0 +1,26 @@ -+#as: -+#objdump: -d -+#name: trampolines relaxation -+ -+.*: +file format .*xtensa.* -+#... -+.*0:.*j.0x1194c -+.*3:.*j.0x1194f -+.*6:.*j.0x11952 -+.*9:.*j.0x1d4e4 -+#... -+.*11949:.*j.0x11955 -+.*1194c:.*j.0x24a0e -+.*1194f:.*j.0x24a0e -+.*11952:.*j.0x24a11 -+#... -+.*1d4e1:.*j.0x1d4e7 -+.*1d4e4:.*j.0x33462 -+#... -+.*24a0e:.*j.0x24a0e -+.*24a11:.*j.0x24a11 -+#... -+.*3345f:.*ret -+.*33462:.*j.0x49407 -+#... -+.*49407:.*j.0x49407 -diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s -new file mode 100644 -index 0000000..259a3bb ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/trampoline.s -@@ -0,0 +1,21 @@ -+ .text -+ j 1f -+ j 1f -+ j 2f -+ j 3f -+ .rep 25000 -+99: -+ and a2, a2, a3 -+ bne a2, a3, 99b -+ .endr -+1: -+ j 1b -+2: -+ j 2b -+ -+ .rep 25000 -+ and a2, a2, a3 -+ _ret -+ .endr -+3: -+ j 3b --- -1.8.1.4 - diff --git a/package/binutils/2.24/901-xtensa-gas-first-frag-alignment.patch b/package/binutils/2.24/901-xtensa-gas-first-frag-alignment.patch deleted file mode 100644 index e1c2d85aa8..0000000000 --- a/package/binutils/2.24/901-xtensa-gas-first-frag-alignment.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 15 Apr 2014 19:12:46 +0400 -Subject: [PATCH] Fix alignment for the first section frag on xtensa - -Linking object files produced by partial linking with link-time -relaxation enabled sometimes fails with the following error message: - -dangerous relocation: call8: misaligned call target: (.text.unlikely+0x63) - -This happens because no basic block with an XTENSA_PROP_ALIGN flag in the -property table is generated for the first basic block, even if the -.align directive is present. -It was believed that the first frag alignment could be derived from the -section alignment, but this was not implemented for the partial linking -case: after partial linking first frag of a section may become not -first, but no additional alignment frag is inserted before it. -Basic block for such frag may be merged with previous basic block into -extended basic block during relaxation pass losing its alignment -restrictions. - -Fix this by always recording alignment for the first section frag. - -2014-04-22 Max Filippov - -gas/ - * config/tc-xtensa.c (xtensa_handle_align): record alignment for the - first section frag. - ---- -Backported from: a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1 -Changes to Changelog files and tests are dropped. - - gas/config/tc-xtensa.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index ea23c96..58ace38 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5609,7 +5609,6 @@ xtensa_handle_align (fragS *fragP) - && ! fragP->tc_frag_data.is_literal - && (fragP->fr_type == rs_align - || fragP->fr_type == rs_align_code) -- && fragP->fr_address + fragP->fr_fix > 0 - && fragP->fr_offset > 0 - && now_seg != bss_section) - { --- -1.8.1.4 - diff --git a/package/binutils/2.24/902-xtensa-gas-ld-diff-relocation-signed.patch b/package/binutils/2.24/902-xtensa-gas-ld-diff-relocation-signed.patch deleted file mode 100644 index ba24f4e4b0..0000000000 --- a/package/binutils/2.24/902-xtensa-gas-ld-diff-relocation-signed.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 6a17eba5358549d0d6d195bb22b34cdbc068def2 Mon Sep 17 00:00:00 2001 -From: Volodymyr Arbatov -Date: Mon, 6 May 2013 09:43:21 -0800 -Subject: [PATCH] Use signed data type for R_XTENSA_DIFF* relocation offsets. - -R_XTENSA_DIFF relocation offsets are in fact signed. Treat them as such. -Add testcase that examines ld behaviour on R_XTENSA_DIFF relocation -changing sign during relaxation. - -2014-05-02 Volodymyr Arbatov - David Weatherford - Max Filippov - -bfd/ - * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as - signed. - -gas/ - * config/tc-xtensa.c (md_apply_fix): mark BFD_RELOC_XTENSA_DIFF* - fixups as signed. ---- -Backported from: 1058c7532d0b012ac329219264ddad59049fb6e6 -Changes to Changelog files and tests are dropped. - - bfd/elf32-xtensa.c | 32 ++++++++++++----------- - gas/config/tc-xtensa.c | 3 +++ - 2 files changed, 20 insertions(+), 15 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index edb04b4..8818d67 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -222,11 +222,11 @@ static reloc_howto_type elf_howto_table[] = - FALSE, 0, 0, FALSE), - - /* Relocations for supporting difference of symbols. */ -- HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF8", FALSE, 0, 0xff, FALSE), -- HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF16", FALSE, 0, 0xffff, FALSE), -- HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_bitfield, -+ HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_signed, - bfd_elf_xtensa_reloc, "R_XTENSA_DIFF32", FALSE, 0, 0xffffffff, FALSE), - - /* General immediate operand relocations. */ -@@ -9013,7 +9013,8 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - || r_type == R_XTENSA_DIFF16 - || r_type == R_XTENSA_DIFF32) - { -- bfd_vma diff_value = 0, new_end_offset, diff_mask = 0; -+ bfd_signed_vma diff_value = 0; -+ bfd_vma new_end_offset, diff_mask = 0; - - if (bfd_get_section_limit (abfd, sec) < old_source_offset) - { -@@ -9027,15 +9028,15 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - { - case R_XTENSA_DIFF8: - diff_value = -- bfd_get_8 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_8 (abfd, &contents[old_source_offset]); - break; - case R_XTENSA_DIFF16: - diff_value = -- bfd_get_16 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_16 (abfd, &contents[old_source_offset]); - break; - case R_XTENSA_DIFF32: - diff_value = -- bfd_get_32 (abfd, &contents[old_source_offset]); -+ bfd_get_signed_32 (abfd, &contents[old_source_offset]); - break; - } - -@@ -9047,24 +9048,25 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - switch (r_type) - { - case R_XTENSA_DIFF8: -- diff_mask = 0xff; -- bfd_put_8 (abfd, diff_value, -+ diff_mask = 0x7f; -+ bfd_put_signed_8 (abfd, diff_value, - &contents[old_source_offset]); - break; - case R_XTENSA_DIFF16: -- diff_mask = 0xffff; -- bfd_put_16 (abfd, diff_value, -+ diff_mask = 0x7fff; -+ bfd_put_signed_16 (abfd, diff_value, - &contents[old_source_offset]); - break; - case R_XTENSA_DIFF32: -- diff_mask = 0xffffffff; -- bfd_put_32 (abfd, diff_value, -+ diff_mask = 0x7fffffff; -+ bfd_put_signed_32 (abfd, diff_value, - &contents[old_source_offset]); - break; - } - -- /* Check for overflow. */ -- if ((diff_value & ~diff_mask) != 0) -+ /* Check for overflow. Sign bits must be all zeroes or all ones */ -+ if ((diff_value & ~diff_mask) != 0 && -+ (diff_value & ~diff_mask) != (-1 & ~diff_mask)) - { - (*link_info->callbacks->reloc_dangerous) - (link_info, _("overflow after relaxation"), -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 58ace38..7547c0a0 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5867,12 +5867,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) - { - case BFD_RELOC_8: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; -+ fixP->fx_signed = 1; - break; - case BFD_RELOC_16: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; -+ fixP->fx_signed = 1; - break; - case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; -+ fixP->fx_signed = 1; - break; - default: - break; --- -1.8.1.4 - diff --git a/package/binutils/2.24/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch b/package/binutils/2.24/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch deleted file mode 100644 index 6a0846ef8e..0000000000 --- a/package/binutils/2.24/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch +++ /dev/null @@ -1,47 +0,0 @@ -From e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 10 Jul 2014 01:47:33 +0400 -Subject: [PATCH] Fix xtensa ld segfault when linking linux modules - -is_inconsistent_linkonce_section makes an assumption that section name -that starts with ".gnu.linkonce.prop." has one more dot in its suffix. -However gas generates such section name by insertion of "prop." right -after ".gnu.linkonce." part of the name of the original section. So, for -section named ".gnu.linkonce.this_module" corresponding property section -name does not satisfy the assumption. Such section names are common in -linux modules. This bug was exposed by the patch "a35d5e8 Fix alignment -for the first section frag on xtensa", that makes gas produce property -section for each section that has ".align" directive in it. - -Use suffix that immediately follows ".gnu.linkonce.prop." when there are -no more dots following it. - -2014-07-10 Max Filippov - -ld/ - * emultempl/xtensaelf.em (is_inconsistent_linkonce_section): - correctly handle missing dot in section name after - ".gnu.linkonce.prop.". ---- -Backported from: e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2 -Changes to ld/ChangeLog file are dropped. - - ld/emultempl/xtensaelf.em | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ld/emultempl/xtensaelf.em b/ld/emultempl/xtensaelf.em -index 151eea4..948d18d 100644 ---- a/ld/emultempl/xtensaelf.em -+++ b/ld/emultempl/xtensaelf.em -@@ -1310,7 +1310,7 @@ is_inconsistent_linkonce_section (asection *sec) - for Tensilica's XCC compiler. */ - name = sec_name + linkonce_len; - if (CONST_STRNEQ (name, "prop.")) -- name = strchr (name + 5, '.') + 1; -+ name = strchr (name + 5, '.') ? strchr (name + 5, '.') + 1 : name + 5; - else if (name[1] == '.' - && (name[0] == 'p' || name[0] == 'e' || name[0] == 'h')) - name += 2; --- -1.8.1.4 - diff --git a/package/binutils/2.24/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch b/package/binutils/2.24/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch deleted file mode 100644 index e4c600e542..0000000000 --- a/package/binutils/2.24/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 7fc39194f8fb48914c995f8ec3826d50086f1ec0 Mon Sep 17 00:00:00 2001 -From: Sterling Augustine -Date: Tue, 25 Jan 2011 13:59:13 -0800 -Subject: [PATCH] Fix 'call8: call target out of range' xtensa ld relaxation - bug - -During link-time relaxation distance between cross-section call site and -its target may grow, producing 'call target out of range' error for -relaxed calls. Be more conservative when calculating whether or not a -callx can be converted to a straight call. - -2014-09-23 Sterling Augustine - -bfd/ - * elf32-xtensa.c (is_resolvable_asm_expansion): for cross-section - call relaxation use furthermost addresses where call source and - destination can be to check whether it's in the range of a direct - call. - -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 41 +++++++++++++++++++++++++++++++++++++---- - 1 file changed, 37 insertions(+), 4 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 09862e3..e32496a 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -7124,10 +7124,43 @@ is_resolvable_asm_expansion (bfd *abfd, - || is_reloc_sym_weak (abfd, irel))) - return FALSE; - -- self_address = (sec->output_section->vma -- + sec->output_offset + irel->r_offset + 3); -- dest_address = (target_sec->output_section->vma -- + target_sec->output_offset + target_offset); -+ if (target_sec->output_section != sec->output_section) -+ { -+ /* If the two sections are sufficiently far away that relaxation -+ might take the call out of range, we can't simplify. For -+ example, a positive displacement call into another memory -+ could get moved to a lower address due to literal removal, -+ but the destination won't move, and so the displacment might -+ get larger. -+ -+ If the displacement is negative, assume the destination could -+ move as far back as the start of the output section. The -+ self_address will be at least as far into the output section -+ as it is prior to relaxation. -+ -+ If the displacement is postive, assume the destination will be in -+ it's pre-relaxed location (because relaxation only makes sections -+ smaller). The self_address could go all the way to the beginning -+ of the output section. */ -+ -+ dest_address = target_sec->output_section->vma; -+ self_address = sec->output_section->vma; -+ -+ if (sec->output_section->vma > target_sec->output_section->vma) -+ self_address += sec->output_offset + irel->r_offset + 3; -+ else -+ dest_address += bfd_get_section_limit (abfd, target_sec->output_section); -+ /* Call targets should be four-byte aligned. */ -+ dest_address = (dest_address + 3) & ~3; -+ } -+ else -+ { -+ -+ self_address = (sec->output_section->vma -+ + sec->output_offset + irel->r_offset + 3); -+ dest_address = (target_sec->output_section->vma -+ + target_sec->output_offset + target_offset); -+ } - - *is_reachable_p = pcrel_reloc_fits (direct_call_opcode, 0, - self_address, dest_address); --- -1.8.1.4 - diff --git a/package/binutils/2.24/905-Fix-trampolines-search-code-for-conditional-branches.patch b/package/binutils/2.24/905-Fix-trampolines-search-code-for-conditional-branches.patch deleted file mode 100644 index 8aeb06428a..0000000000 --- a/package/binutils/2.24/905-Fix-trampolines-search-code-for-conditional-branches.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 415480d6471e67aef97c0241d451ef2423a1da9d Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 25 Nov 2014 21:33:21 +0300 -Subject: [PATCH] Fix trampolines search code for conditional branches - -For conditional branches that need more than one trampoline to reach its -target assembler couldn't always find suitable trampoline because -post-loop condition check was placed inside the loop, resulting in -premature loop termination. Move check outside the loop. - -This fixes the following build errors seen when assembling huge files -produced by gcc: - Error: jump target out of range; no usable trampoline found - Error: operand 1 of 'j' has out of range value '307307' - -2014-11-25 Max Filippov - -gas/ - * config/tc-xtensa.c (search_trampolines): Move post-loop - condition check outside the search loop. - -gas/testsuite/ - * gas/xtensa/trampoline.d: Add expected output for branches. - * gas/xtensa/trampoline.s: Add test case for branches. - -Signed-off-by: Max Filippov ---- -Backported from: d92b6eece424f0ad35d96fdd85bf207295e8c4c3 -Changes to ChangeLogs are dropped. - - gas/config/tc-xtensa.c | 8 ++++---- - gas/testsuite/gas/xtensa/trampoline.d | 9 +++++++++ - gas/testsuite/gas/xtensa/trampoline.s | 7 +++++++ - 3 files changed, 20 insertions(+), 4 deletions(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index d11b0c7..f23ccf8 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -9514,11 +9514,11 @@ search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only) - if (next_addr == 0 || addr - next_addr > J_RANGE) - break; - } -- if (abs (addr - this_addr) < J_RANGE) -- return tf; -- -- return NULL; - } -+ if (abs (addr - this_addr) < J_RANGE) -+ return tf; -+ -+ return NULL; - } - for ( ; tf; tf = tf->next) - { -diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d -index b4f65dc..5ae32a6 100644 ---- a/gas/testsuite/gas/xtensa/trampoline.d -+++ b/gas/testsuite/gas/xtensa/trampoline.d -@@ -24,3 +24,12 @@ - .*33462:.*j.0x49407 - #... - .*49407:.*j.0x49407 -+.*4940a:.*beqz.n.a2,.0x4940f -+.*4940c:.*j.0x693d1 -+#... -+.*693d1:.*j.0x7ddd4 -+#... -+.*7ddd4:.*j.0x927f5 -+#... -+.*927f5:.*j.0x927f5 -+#... -diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s -index 259a3bb..4465786 100644 ---- a/gas/testsuite/gas/xtensa/trampoline.s -+++ b/gas/testsuite/gas/xtensa/trampoline.s -@@ -19,3 +19,10 @@ - .endr - 3: - j 3b -+ bnez a2, 4f -+ .rep 50000 -+ and a2, a2, a3 -+ _ret -+ .endr -+4: -+ j 4b --- -1.8.1.4 - diff --git a/package/binutils/2.24/906-xtensa-optimize-check_section_ebb_pcrels_fit.patch b/package/binutils/2.24/906-xtensa-optimize-check_section_ebb_pcrels_fit.patch deleted file mode 100644 index 8a211004f3..0000000000 --- a/package/binutils/2.24/906-xtensa-optimize-check_section_ebb_pcrels_fit.patch +++ /dev/null @@ -1,502 +0,0 @@ -From 20c79baf82273a0b368587f761f152c4d3a593a4 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 27 Mar 2015 07:13:55 +0300 -Subject: [PATCH 1/4] xtensa: optimize check_section_ebb_pcrels_fit - -The original check_section_ebb_pcrels_fit algorithm checks that text -actions proposed for current EBB are OK for every relocation in a -section. There's no need to check every relocation, because text actions -for EBB can only change size of that EBB, thus only affecting -relocations that in any way cross that EBB. In addition EBBs are -iterated in ascending order of their VMA, making it easier to track -relevant relocations. - -Introduce a structure that can track relocations that cross the range of -VMAs of EBB and use it to only check relocations relevant to current EBB -in check_section_ebb_pcrels_fit. -It takes O(N log N) operations to build it and O(N) operations to move -current EBB VMA window through its entire range, where N is the number -of relocations in a section. The resulting complexity of -compute_text_actions is thus reduced from O(N^2) to O(N log N + N * M), -where M is the average number of relocations crossing each EBB. - -Original profile: - -% time self children called name ------------------------------------------ - 44.26 71.53 6429/6429 compute_text_actions - 50.2 44.26 71.53 6429 check_section_ebb_pcrels_fit - 1.16 20.12 347506666/347576152 pcrel_reloc_fits - 2.95 16.52 347506666/348104944 get_relocation_opnd - 2.01 9.74 347575100/361252208 r_reloc_init - 0.55 7.53 347575100/363381467 r_reloc_get_section - 5.76 0.02 695013332/695013332 xlate_offset_with_removed_text - 0.68 3.89 347575100/363483827 bfd_octets_per_byte - 0.32 0.00 347506666/349910253 is_alt_relocation - 0.18 0.11 6391/6391 build_xlate_map - 0.00 0.00 6429/19417168 get_xtensa_relax_info - 0.00 0.00 6391/6391 free_xlate_map ------------------------------------------ - -Same data, after optimization: - -% time self children called name ------------------------------------------ - 2.56 3.08 6429/6429 compute_text_actions - 8.2 2.56 3.08 6429 check_section_ebb_pcrels_fit - 0.08 0.91 17721075/17790561 pcrel_reloc_fits - 0.17 0.47 17721075/31685977 r_reloc_init - 0.43 0.00 35442150/35442150 xlate_offset_with_removed_text - 0.02 0.37 17721075/33815236 r_reloc_get_section - 0.22 0.11 6391/6391 build_xlate_map - 0.05 0.22 17721075/33917596 bfd_octets_per_byte - 0.03 0.00 17721075/20405299 is_alt_relocation - 0.01 0.00 6429/6429 reloc_range_list_update_range - 0.00 0.00 6429/19417168 get_xtensa_relax_info - 0.00 0.00 6391/6391 free_xlate_map ------------------------------------------ - -2015-04-01 Max Filippov -bfd/ - * elf32-xtensa.c (reloc_range_list, reloc_range_list_entry, - reloc_range): new typedef. - (reloc_range_list_struct, reloc_range_list_entry_struct, - reloc_range_struct): new structures. - (reloc_range_compare, build_reloc_ranges, - reloc_range_list_append, reloc_range_list_remove, - reloc_range_list_update_range, free_reloc_range_list): new - functions. - (compute_text_actions): precompute relocation opcodes before the - loop. Add relevant_relocs variable, initialize it before the - loop, pass it to the check_section_ebb_pcrels_fit. - (check_section_ebb_pcrels_fit): add new parameter: - relevant_relocs. Update address range in the relevant_relocs if - it's non-NULL and iterate only over relevant relocations. - -Backported from: b2b326d246f839ee218192ac88da2384d929a072 -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 321 +++++++++++++++++++++++++++++++++++++++++++++++++---- - 1 file changed, 298 insertions(+), 23 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 0b6f584..872370b 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -6619,8 +6619,10 @@ static bfd_boolean compute_text_actions - (bfd *, asection *, struct bfd_link_info *); - static bfd_boolean compute_ebb_proposed_actions (ebb_constraint *); - static bfd_boolean compute_ebb_actions (ebb_constraint *); -+typedef struct reloc_range_list_struct reloc_range_list; - static bfd_boolean check_section_ebb_pcrels_fit -- (bfd *, asection *, bfd_byte *, Elf_Internal_Rela *, const ebb_constraint *, -+ (bfd *, asection *, bfd_byte *, Elf_Internal_Rela *, -+ reloc_range_list *, const ebb_constraint *, - const xtensa_opcode *); - static bfd_boolean check_section_ebb_reduces (const ebb_constraint *); - static void text_action_add_proposed -@@ -7219,6 +7221,221 @@ build_reloc_opcodes (bfd *abfd, - return reloc_opcodes; - } - -+struct reloc_range_struct -+{ -+ bfd_vma addr; -+ bfd_boolean add; /* TRUE if start of a range, FALSE otherwise. */ -+ /* Original irel index in the array of relocations for a section. */ -+ unsigned irel_index; -+}; -+typedef struct reloc_range_struct reloc_range; -+ -+typedef struct reloc_range_list_entry_struct reloc_range_list_entry; -+struct reloc_range_list_entry_struct -+{ -+ reloc_range_list_entry *next; -+ reloc_range_list_entry *prev; -+ Elf_Internal_Rela *irel; -+ xtensa_opcode opcode; -+ int opnum; -+}; -+ -+struct reloc_range_list_struct -+{ -+ /* The rest of the structure is only meaningful when ok is TRUE. */ -+ bfd_boolean ok; -+ -+ unsigned n_range; /* Number of range markers. */ -+ reloc_range *range; /* Sorted range markers. */ -+ -+ unsigned first; /* Index of a first range element in the list. */ -+ unsigned last; /* One past index of a last range element in the list. */ -+ -+ unsigned n_list; /* Number of list elements. */ -+ reloc_range_list_entry *reloc; /* */ -+ reloc_range_list_entry list_root; -+}; -+ -+static int -+reloc_range_compare (const void *a, const void *b) -+{ -+ const reloc_range *ra = a; -+ const reloc_range *rb = b; -+ -+ if (ra->addr != rb->addr) -+ return ra->addr < rb->addr ? -1 : 1; -+ if (ra->add != rb->add) -+ return ra->add ? -1 : 1; -+ return 0; -+} -+ -+static void -+build_reloc_ranges (bfd *abfd, asection *sec, -+ bfd_byte *contents, -+ Elf_Internal_Rela *internal_relocs, -+ xtensa_opcode *reloc_opcodes, -+ reloc_range_list *list) -+{ -+ unsigned i; -+ size_t n = 0; -+ size_t max_n = 0; -+ reloc_range *ranges = NULL; -+ reloc_range_list_entry *reloc = -+ bfd_malloc (sec->reloc_count * sizeof (*reloc)); -+ -+ memset (list, 0, sizeof (*list)); -+ list->ok = TRUE; -+ -+ for (i = 0; i < sec->reloc_count; i++) -+ { -+ Elf_Internal_Rela *irel = &internal_relocs[i]; -+ int r_type = ELF32_R_TYPE (irel->r_info); -+ reloc_howto_type *howto = &elf_howto_table[r_type]; -+ r_reloc r_rel; -+ -+ if (r_type == R_XTENSA_ASM_SIMPLIFY -+ || r_type == R_XTENSA_32_PCREL -+ || !howto->pc_relative) -+ continue; -+ -+ r_reloc_init (&r_rel, abfd, irel, contents, -+ bfd_get_section_limit (abfd, sec)); -+ -+ if (r_reloc_get_section (&r_rel) != sec) -+ continue; -+ -+ if (n + 2 > max_n) -+ { -+ max_n = (max_n + 2) * 2; -+ ranges = bfd_realloc (ranges, max_n * sizeof (*ranges)); -+ } -+ -+ ranges[n].addr = irel->r_offset; -+ ranges[n + 1].addr = r_rel.target_offset; -+ -+ ranges[n].add = ranges[n].addr < ranges[n + 1].addr; -+ ranges[n + 1].add = !ranges[n].add; -+ -+ ranges[n].irel_index = i; -+ ranges[n + 1].irel_index = i; -+ -+ n += 2; -+ -+ reloc[i].irel = irel; -+ -+ /* Every relocation won't possibly be checked in the optimized version of -+ check_section_ebb_pcrels_fit, so this needs to be done here. */ -+ if (is_alt_relocation (ELF32_R_TYPE (irel->r_info))) -+ { -+ /* None of the current alternate relocs are PC-relative, -+ and only PC-relative relocs matter here. */ -+ } -+ else -+ { -+ xtensa_opcode opcode; -+ int opnum; -+ -+ if (reloc_opcodes) -+ opcode = reloc_opcodes[i]; -+ else -+ opcode = get_relocation_opcode (abfd, sec, contents, irel); -+ -+ if (opcode == XTENSA_UNDEFINED) -+ { -+ list->ok = FALSE; -+ break; -+ } -+ -+ opnum = get_relocation_opnd (opcode, ELF32_R_TYPE (irel->r_info)); -+ if (opnum == XTENSA_UNDEFINED) -+ { -+ list->ok = FALSE; -+ break; -+ } -+ -+ /* Record relocation opcode and opnum as we've calculated them -+ anyway and they won't change. */ -+ reloc[i].opcode = opcode; -+ reloc[i].opnum = opnum; -+ } -+ } -+ -+ if (list->ok) -+ { -+ ranges = bfd_realloc (ranges, n * sizeof (*ranges)); -+ qsort (ranges, n, sizeof (*ranges), reloc_range_compare); -+ -+ list->n_range = n; -+ list->range = ranges; -+ list->reloc = reloc; -+ list->list_root.prev = &list->list_root; -+ list->list_root.next = &list->list_root; -+ } -+ else -+ { -+ free (ranges); -+ free (reloc); -+ } -+} -+ -+static void reloc_range_list_append (reloc_range_list *list, -+ unsigned irel_index) -+{ -+ reloc_range_list_entry *entry = list->reloc + irel_index; -+ -+ entry->prev = list->list_root.prev; -+ entry->next = &list->list_root; -+ entry->prev->next = entry; -+ entry->next->prev = entry; -+ ++list->n_list; -+} -+ -+static void reloc_range_list_remove (reloc_range_list *list, -+ unsigned irel_index) -+{ -+ reloc_range_list_entry *entry = list->reloc + irel_index; -+ -+ entry->next->prev = entry->prev; -+ entry->prev->next = entry->next; -+ --list->n_list; -+} -+ -+/* Update relocation list object so that it lists all relocations that cross -+ [first; last] range. Range bounds should not decrease with successive -+ invocations. */ -+static void reloc_range_list_update_range (reloc_range_list *list, -+ bfd_vma first, bfd_vma last) -+{ -+ /* This should not happen: EBBs are iterated from lower addresses to higher. -+ But even if that happens there's no need to break: just flush current list -+ and start from scratch. */ -+ if ((list->last > 0 && list->range[list->last - 1].addr > last) || -+ (list->first > 0 && list->range[list->first - 1].addr >= first)) -+ { -+ list->first = 0; -+ list->last = 0; -+ list->n_list = 0; -+ list->list_root.next = &list->list_root; -+ list->list_root.prev = &list->list_root; -+ fprintf (stderr, "%s: move backwards requested\n", __func__); -+ } -+ -+ for (; list->last < list->n_range && -+ list->range[list->last].addr <= last; ++list->last) -+ if (list->range[list->last].add) -+ reloc_range_list_append (list, list->range[list->last].irel_index); -+ -+ for (; list->first < list->n_range && -+ list->range[list->first].addr < first; ++list->first) -+ if (!list->range[list->first].add) -+ reloc_range_list_remove (list, list->range[list->first].irel_index); -+} -+ -+static void free_reloc_range_list (reloc_range_list *list) -+{ -+ free (list->range); -+ free (list->reloc); -+} - - /* The compute_text_actions function will build a list of potential - transformation actions for code in the extended basic block of each -@@ -7245,6 +7462,7 @@ compute_text_actions (bfd *abfd, - property_table_entry *prop_table = 0; - int ptblsize = 0; - bfd_size_type sec_size; -+ reloc_range_list relevant_relocs; - - relax_info = get_xtensa_relax_info (sec); - BFD_ASSERT (relax_info); -@@ -7277,6 +7495,12 @@ compute_text_actions (bfd *abfd, - goto error_return; - } - -+ /* Precompute the opcode for each relocation. */ -+ reloc_opcodes = build_reloc_opcodes (abfd, sec, contents, internal_relocs); -+ -+ build_reloc_ranges (abfd, sec, contents, internal_relocs, reloc_opcodes, -+ &relevant_relocs); -+ - for (i = 0; i < sec->reloc_count; i++) - { - Elf_Internal_Rela *irel = &internal_relocs[i]; -@@ -7340,17 +7564,13 @@ compute_text_actions (bfd *abfd, - ebb->start_reloc_idx = i; - ebb->end_reloc_idx = i; - -- /* Precompute the opcode for each relocation. */ -- if (reloc_opcodes == NULL) -- reloc_opcodes = build_reloc_opcodes (abfd, sec, contents, -- internal_relocs); -- - if (!extend_ebb_bounds (ebb) - || !compute_ebb_proposed_actions (&ebb_table) - || !compute_ebb_actions (&ebb_table) - || !check_section_ebb_pcrels_fit (abfd, sec, contents, -- internal_relocs, &ebb_table, -- reloc_opcodes) -+ internal_relocs, -+ &relevant_relocs, -+ &ebb_table, reloc_opcodes) - || !check_section_ebb_reduces (&ebb_table)) - { - /* If anything goes wrong or we get unlucky and something does -@@ -7372,6 +7592,8 @@ compute_text_actions (bfd *abfd, - free_ebb_constraint (&ebb_table); - } - -+ free_reloc_range_list (&relevant_relocs); -+ - #if DEBUG - if (relax_info->action_list.head) - print_action_list (stderr, &relax_info->action_list); -@@ -7974,14 +8196,17 @@ check_section_ebb_pcrels_fit (bfd *abfd, - asection *sec, - bfd_byte *contents, - Elf_Internal_Rela *internal_relocs, -+ reloc_range_list *relevant_relocs, - const ebb_constraint *constraint, - const xtensa_opcode *reloc_opcodes) - { - unsigned i, j; -+ unsigned n = sec->reloc_count; - Elf_Internal_Rela *irel; - xlate_map_t *xmap = NULL; - bfd_boolean ok = TRUE; - xtensa_relax_info *relax_info; -+ reloc_range_list_entry *entry = NULL; - - relax_info = get_xtensa_relax_info (sec); - -@@ -7992,7 +8217,40 @@ check_section_ebb_pcrels_fit (bfd *abfd, - can still be used. */ - } - -- for (i = 0; i < sec->reloc_count; i++) -+ if (relevant_relocs && constraint->action_count) -+ { -+ if (!relevant_relocs->ok) -+ { -+ ok = FALSE; -+ n = 0; -+ } -+ else -+ { -+ bfd_vma min_offset, max_offset; -+ min_offset = max_offset = constraint->actions[0].offset; -+ -+ for (i = 1; i < constraint->action_count; ++i) -+ { -+ proposed_action *action = &constraint->actions[i]; -+ bfd_vma offset = action->offset; -+ -+ if (offset < min_offset) -+ min_offset = offset; -+ if (offset > max_offset) -+ max_offset = offset; -+ } -+ reloc_range_list_update_range (relevant_relocs, min_offset, -+ max_offset); -+ n = relevant_relocs->n_list; -+ entry = &relevant_relocs->list_root; -+ } -+ } -+ else -+ { -+ relevant_relocs = NULL; -+ } -+ -+ for (i = 0; i < n; i++) - { - r_reloc r_rel; - bfd_vma orig_self_offset, orig_target_offset; -@@ -8001,7 +8259,15 @@ check_section_ebb_pcrels_fit (bfd *abfd, - reloc_howto_type *howto; - int self_removed_bytes, target_removed_bytes; - -- irel = &internal_relocs[i]; -+ if (relevant_relocs) -+ { -+ entry = entry->next; -+ irel = entry->irel; -+ } -+ else -+ { -+ irel = internal_relocs + i; -+ } - r_type = ELF32_R_TYPE (irel->r_info); - - howto = &elf_howto_table[r_type]; -@@ -8067,21 +8333,30 @@ check_section_ebb_pcrels_fit (bfd *abfd, - xtensa_opcode opcode; - int opnum; - -- if (reloc_opcodes) -- opcode = reloc_opcodes[i]; -- else -- opcode = get_relocation_opcode (abfd, sec, contents, irel); -- if (opcode == XTENSA_UNDEFINED) -+ if (relevant_relocs) - { -- ok = FALSE; -- break; -+ opcode = entry->opcode; -+ opnum = entry->opnum; - } -- -- opnum = get_relocation_opnd (opcode, ELF32_R_TYPE (irel->r_info)); -- if (opnum == XTENSA_UNDEFINED) -+ else - { -- ok = FALSE; -- break; -+ if (reloc_opcodes) -+ opcode = reloc_opcodes[relevant_relocs ? -+ (unsigned)(entry - relevant_relocs->reloc) : i]; -+ else -+ opcode = get_relocation_opcode (abfd, sec, contents, irel); -+ if (opcode == XTENSA_UNDEFINED) -+ { -+ ok = FALSE; -+ break; -+ } -+ -+ opnum = get_relocation_opnd (opcode, ELF32_R_TYPE (irel->r_info)); -+ if (opnum == XTENSA_UNDEFINED) -+ { -+ ok = FALSE; -+ break; -+ } - } - - if (!pcrel_reloc_fits (opcode, opnum, self_offset, target_offset)) -@@ -8778,7 +9053,7 @@ move_shared_literal (asection *sec, - /* Check all of the PC-relative relocations to make sure they still fit. */ - relocs_fit = check_section_ebb_pcrels_fit (target_sec->owner, target_sec, - target_sec_cache->contents, -- target_sec_cache->relocs, -+ target_sec_cache->relocs, NULL, - &ebb_table, NULL); - - if (!relocs_fit) --- -1.8.1.4 - diff --git a/package/binutils/2.24/907-xtensa-optimize-removed_by_actions.patch b/package/binutils/2.24/907-xtensa-optimize-removed_by_actions.patch deleted file mode 100644 index 9df8065307..0000000000 --- a/package/binutils/2.24/907-xtensa-optimize-removed_by_actions.patch +++ /dev/null @@ -1,356 +0,0 @@ -From 3e3f60207399ab29dd55af109e5ae9facc7d8e83 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Sat, 28 Mar 2015 08:46:28 +0300 -Subject: [PATCH 2/4] xtensa: optimize removed_by_actions - -The function removed_by_actions iterates through text actions to -calculate an offset applied by text actions to a given VMA. Although it -has a parameter p_start_action that allows for incremental offset -calculation, in many places it's used with p_start_action explicitly set -to the first action. After the first relaxation pass when the list of -text actions is finalized, an array of offsets sorted by VMA may be used -to speed up this function. - -Original profile: - -% time self children called name ------------------------------------------ - 0.35 0.00 33872/4808961 relax_section_symbols - 3.32 0.00 326022/4808961 relax_property_section - 12.83 0.00 1259379/4808961 offset_with_removed_text - 32.50 0.00 3189688/4808961 translate_reloc - 71.5 49.00 0.00 4808961 removed_by_actions ------------------------------------------ - -Same data, after optimization: - -% time self children called name ------------------------------------------ - 0.00 0.00 33872/4808537 relax_section_symbols - 0.01 0.00 326022/4808537 relax_property_section - 0.05 0.00 1258955/4808537 offset_with_removed_text_map - 0.13 0.00 3189688/4808537 translate_reloc - 1.0 0.20 0.00 4808537 removed_by_actions_map - 0.00 0.00 120/120 map_removal_by_action ------------------------------------------ - -2015-04-01 Max Filippov -bfd/ - * elf32-xtensa.c (removal_by_action_entry_struct, - removal_by_action_map_struct): new structures. - (removal_by_action_entry, removal_by_action_map): new typedefs. - (text_action_list_struct): add new field: map. - (map_removal_by_action, removed_by_actions_map, - offset_with_removed_text_map): new functions. - (relax_section): replace offset_with_removed_text with - offset_with_removed_text_map. - (translate_reloc, relax_property_section, relax_section_symbols): - replace removed_by_actions with removed_by_actions_map. - -Backported from: 071aa5c98a31c966f5fbfc573fcee61350fd1936 -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 181 +++++++++++++++++++++++++++++++++++++++++++++-------- - 1 file changed, 156 insertions(+), 25 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 872370b..21b2871 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -5420,11 +5420,28 @@ struct text_action_struct - text_action *next; - }; - -+struct removal_by_action_entry_struct -+{ -+ bfd_vma offset; -+ int removed; -+ int eq_removed; -+ int eq_removed_before_fill; -+}; -+typedef struct removal_by_action_entry_struct removal_by_action_entry; -+ -+struct removal_by_action_map_struct -+{ -+ unsigned n_entries; -+ removal_by_action_entry *entry; -+}; -+typedef struct removal_by_action_map_struct removal_by_action_map; -+ - - /* List of all of the actions taken on a text section. */ - struct text_action_list_struct - { - text_action *head; -+ removal_by_action_map map; - }; - - -@@ -5636,6 +5653,101 @@ action_list_count (text_action_list *action_list) - return count; - } - -+static void -+map_removal_by_action (text_action_list *action_list) -+{ -+ text_action *r; -+ int removed = 0; -+ removal_by_action_map map; -+ bfd_boolean eq_complete; -+ -+ map.n_entries = 0; -+ map.entry = bfd_malloc (action_list_count (action_list) * -+ sizeof (removal_by_action_entry)); -+ eq_complete = FALSE; -+ -+ for (r = action_list->head; r;) -+ { -+ removal_by_action_entry *ientry = map.entry + map.n_entries; -+ -+ if (map.n_entries && (ientry - 1)->offset == r->offset) -+ { -+ --ientry; -+ } -+ else -+ { -+ ++map.n_entries; -+ eq_complete = FALSE; -+ ientry->offset = r->offset; -+ ientry->eq_removed_before_fill = removed; -+ } -+ -+ if (!eq_complete) -+ { -+ if (r->action != ta_fill || r->removed_bytes >= 0) -+ { -+ ientry->eq_removed = removed; -+ eq_complete = TRUE; -+ } -+ else -+ ientry->eq_removed = removed + r->removed_bytes; -+ } -+ -+ removed += r->removed_bytes; -+ ientry->removed = removed; -+ r = r->next; -+ } -+ action_list->map = map; -+} -+ -+static int -+removed_by_actions_map (text_action_list *action_list, bfd_vma offset, -+ bfd_boolean before_fill) -+{ -+ unsigned a, b; -+ -+ if (!action_list->map.entry) -+ map_removal_by_action (action_list); -+ -+ if (!action_list->map.n_entries) -+ return 0; -+ -+ a = 0; -+ b = action_list->map.n_entries; -+ -+ while (b - a > 1) -+ { -+ unsigned c = (a + b) / 2; -+ -+ if (action_list->map.entry[c].offset <= offset) -+ a = c; -+ else -+ b = c; -+ } -+ -+ if (action_list->map.entry[a].offset < offset) -+ { -+ return action_list->map.entry[a].removed; -+ } -+ else if (action_list->map.entry[a].offset == offset) -+ { -+ return before_fill ? -+ action_list->map.entry[a].eq_removed_before_fill : -+ action_list->map.entry[a].eq_removed; -+ } -+ else -+ { -+ return 0; -+ } -+} -+ -+static bfd_vma -+offset_with_removed_text_map (text_action_list *action_list, bfd_vma offset) -+{ -+ int removed = removed_by_actions_map (action_list, offset, FALSE); -+ return offset - removed; -+} -+ - - /* The find_insn_action routine will only find non-fill actions. */ - -@@ -5909,6 +6021,9 @@ init_xtensa_relax_info (asection *sec) - - relax_info->action_list.head = NULL; - -+ relax_info->action_list.map.n_entries = 0; -+ relax_info->action_list.map.entry = NULL; -+ - relax_info->fix_list = NULL; - relax_info->fix_array = NULL; - relax_info->fix_array_count = 0; -@@ -9218,7 +9333,7 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - if (elf_hash_table (link_info)->dynamic_sections_created) - shrink_dynamic_reloc_sections (link_info, abfd, sec, irel); - irel->r_info = ELF32_R_INFO (0, R_XTENSA_NONE); -- irel->r_offset = offset_with_removed_text -+ irel->r_offset = offset_with_removed_text_map - (&relax_info->action_list, irel->r_offset); - continue; - } -@@ -9255,7 +9370,7 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - } - } - -- source_offset = offset_with_removed_text -+ source_offset = offset_with_removed_text_map - (&relax_info->action_list, irel->r_offset); - irel->r_offset = source_offset; - } -@@ -9352,7 +9467,7 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - break; - } - -- new_end_offset = offset_with_removed_text -+ new_end_offset = offset_with_removed_text_map - (&target_relax_info->action_list, - r_rel.target_offset + diff_value); - diff_value = new_end_offset - new_reloc.target_offset; -@@ -9750,7 +9865,6 @@ translate_reloc (const r_reloc *orig_rel, r_reloc *new_rel, asection *sec) - xtensa_relax_info *relax_info; - removed_literal *removed; - bfd_vma target_offset, base_offset; -- text_action *act; - - *new_rel = *orig_rel; - -@@ -9803,19 +9917,26 @@ translate_reloc (const r_reloc *orig_rel, r_reloc *new_rel, asection *sec) - offset. */ - - base_offset = r_reloc_get_target_offset (new_rel) - new_rel->rela.r_addend; -- act = relax_info->action_list.head; - if (base_offset <= target_offset) - { -- int base_removed = removed_by_actions (&act, base_offset, FALSE); -- int addend_removed = removed_by_actions (&act, target_offset, FALSE); -+ int base_removed = removed_by_actions_map (&relax_info->action_list, -+ base_offset, FALSE); -+ int addend_removed = removed_by_actions_map (&relax_info->action_list, -+ target_offset, FALSE) - -+ base_removed; -+ - new_rel->target_offset = target_offset - base_removed - addend_removed; - new_rel->rela.r_addend -= addend_removed; - } - else - { - /* Handle a negative addend. The base offset comes first. */ -- int tgt_removed = removed_by_actions (&act, target_offset, FALSE); -- int addend_removed = removed_by_actions (&act, base_offset, FALSE); -+ int tgt_removed = removed_by_actions_map (&relax_info->action_list, -+ target_offset, FALSE); -+ int addend_removed = removed_by_actions_map (&relax_info->action_list, -+ base_offset, FALSE) - -+ tgt_removed; -+ - new_rel->target_offset = target_offset - tgt_removed; - new_rel->rela.r_addend += addend_removed; - } -@@ -10138,9 +10259,10 @@ relax_property_section (bfd *abfd, - bfd_vma old_offset = val.r_rel.target_offset; - bfd_vma new_offset; - long old_size, new_size; -- text_action *act = target_relax_info->action_list.head; -- new_offset = old_offset - -- removed_by_actions (&act, old_offset, FALSE); -+ int removed_by_old_offset = -+ removed_by_actions_map (&target_relax_info->action_list, -+ old_offset, FALSE); -+ new_offset = old_offset - removed_by_old_offset; - - /* Assert that we are not out of bounds. */ - old_size = bfd_get_32 (abfd, size_p); -@@ -10164,9 +10286,10 @@ relax_property_section (bfd *abfd, - - /* Recompute the new_offset, but this time don't - include any fill inserted by relaxation. */ -- act = target_relax_info->action_list.head; -- new_offset = old_offset - -- removed_by_actions (&act, old_offset, TRUE); -+ removed_by_old_offset = -+ removed_by_actions_map (&target_relax_info->action_list, -+ old_offset, TRUE); -+ new_offset = old_offset - removed_by_old_offset; - - /* If it is not unreachable and we have not yet - seen an unreachable at this address, place it -@@ -10182,8 +10305,12 @@ relax_property_section (bfd *abfd, - } - } - else -- new_size -= -- removed_by_actions (&act, old_offset + old_size, TRUE); -+ { -+ int removed_by_old_offset_size = -+ removed_by_actions_map (&target_relax_info->action_list, -+ old_offset + old_size, TRUE); -+ new_size -= removed_by_old_offset_size - removed_by_old_offset; -+ } - - if (new_size != old_size) - { -@@ -10441,14 +10568,16 @@ relax_section_symbols (bfd *abfd, asection *sec) - - if (isym->st_shndx == sec_shndx) - { -- text_action *act = relax_info->action_list.head; - bfd_vma orig_addr = isym->st_value; -+ int removed = removed_by_actions_map (&relax_info->action_list, -+ orig_addr, FALSE); - -- isym->st_value -= removed_by_actions (&act, orig_addr, FALSE); -- -+ isym->st_value -= removed; - if (ELF32_ST_TYPE (isym->st_info) == STT_FUNC) - isym->st_size -= -- removed_by_actions (&act, orig_addr + isym->st_size, FALSE); -+ removed_by_actions_map (&relax_info->action_list, -+ orig_addr + isym->st_size, FALSE) - -+ removed; - } - } - -@@ -10466,15 +10595,17 @@ relax_section_symbols (bfd *abfd, asection *sec) - || sym_hash->root.type == bfd_link_hash_defweak) - && sym_hash->root.u.def.section == sec) - { -- text_action *act = relax_info->action_list.head; - bfd_vma orig_addr = sym_hash->root.u.def.value; -+ int removed = removed_by_actions_map (&relax_info->action_list, -+ orig_addr, FALSE); - -- sym_hash->root.u.def.value -= -- removed_by_actions (&act, orig_addr, FALSE); -+ sym_hash->root.u.def.value -= removed; - - if (sym_hash->type == STT_FUNC) - sym_hash->size -= -- removed_by_actions (&act, orig_addr + sym_hash->size, FALSE); -+ removed_by_actions_map (&relax_info->action_list, -+ orig_addr + sym_hash->size, FALSE) - -+ removed; - } - } - --- -1.8.1.4 - diff --git a/package/binutils/2.24/908-xtensa-optimize-find_removed_literal.patch b/package/binutils/2.24/908-xtensa-optimize-find_removed_literal.patch deleted file mode 100644 index 96d526fe30..0000000000 --- a/package/binutils/2.24/908-xtensa-optimize-find_removed_literal.patch +++ /dev/null @@ -1,146 +0,0 @@ -From 288c2b709e5e6841484e1a129eaccd299db36877 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Sat, 4 Apr 2015 14:49:42 +0300 -Subject: [PATCH 3/4] xtensa: optimize find_removed_literal - -find_removed_literal uses linear search to find removed literal by its -VMA. The list of literals is fixed at that point, build an ordered index -array and use binary search instead. - -Original profile: - -% time self children called name ------------------------------------------ - 56.72 0.00 297578/669392 translate_reloc - 70.86 0.00 371814/669392 relax_section - 67.9 127.58 0.00 669392 find_removed_literal ------------------------------------------ - -Same data, after optimization: - -% time self children called name ------------------------------------------ - 0.00 0.00 297578/669392 translate_reloc - 0.00 0.00 371814/669392 relax_section - 0.0 0.00 0.00 669392 find_removed_literal - 0.00 0.00 23838/23838 map_removed_literal ------------------------------------------ - -2015-04-03 Max Filippov -bfd/ - * elf32-xtensa.c (removed_literal_map_entry): new typedef. - (removed_literal_map_entry_struct): new structure. - (removed_literal_list_struct): add new fields: n_map and map. - (map_removed_literal, removed_literal_compare): new functions. - (find_removed_literal): build index array for literals ordered - by VMA, use binary search to find removed literal. - -Backported from: 3439c466273378021821473d3fc84990e089ae34 -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 64 +++++++++++++++++++++++++++++++++++++++++++++++++----- - 1 file changed, 58 insertions(+), 6 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 21b2871..51733ad 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -5832,6 +5832,7 @@ print_action_list (FILE *fp, text_action_list *action_list) - by the "from" offset field. */ - - typedef struct removed_literal_struct removed_literal; -+typedef struct removed_literal_map_entry_struct removed_literal_map_entry; - typedef struct removed_literal_list_struct removed_literal_list; - - struct removed_literal_struct -@@ -5841,10 +5842,19 @@ struct removed_literal_struct - removed_literal *next; - }; - -+struct removed_literal_map_entry_struct -+{ -+ bfd_vma addr; -+ removed_literal *literal; -+}; -+ - struct removed_literal_list_struct - { - removed_literal *head; - removed_literal *tail; -+ -+ unsigned n_map; -+ removed_literal_map_entry *map; - }; - - -@@ -5893,6 +5903,39 @@ add_removed_literal (removed_literal_list *removed_list, - } - } - -+static void -+map_removed_literal (removed_literal_list *removed_list) -+{ -+ unsigned n_map = 0; -+ unsigned i; -+ removed_literal_map_entry *map = NULL; -+ removed_literal *r = removed_list->head; -+ -+ for (i = 0; r; ++i, r = r->next) -+ { -+ if (i == n_map) -+ { -+ n_map = (n_map * 2) + 2; -+ map = bfd_realloc (map, n_map * sizeof (*map)); -+ } -+ map[i].addr = r->from.target_offset; -+ map[i].literal = r; -+ } -+ removed_list->map = map; -+ removed_list->n_map = i; -+} -+ -+static int -+removed_literal_compare (const void *a, const void *b) -+{ -+ const removed_literal_map_entry *pa = a; -+ const removed_literal_map_entry *pb = b; -+ -+ if (pa->addr == pb->addr) -+ return 0; -+ else -+ return pa->addr < pb->addr ? -1 : 1; -+} - - /* Check if the list of removed literals contains an entry for the - given address. Return the entry if found. */ -@@ -5900,12 +5943,21 @@ add_removed_literal (removed_literal_list *removed_list, - static removed_literal * - find_removed_literal (removed_literal_list *removed_list, bfd_vma addr) - { -- removed_literal *r = removed_list->head; -- while (r && r->from.target_offset < addr) -- r = r->next; -- if (r && r->from.target_offset == addr) -- return r; -- return NULL; -+ removed_literal_map_entry *p; -+ removed_literal *r = NULL; -+ -+ if (removed_list->map == NULL) -+ map_removed_literal (removed_list); -+ -+ p = bsearch (&addr, removed_list->map, removed_list->n_map, -+ sizeof (*removed_list->map), removed_literal_compare); -+ if (p) -+ { -+ while (p != removed_list->map && (p - 1)->addr == addr) -+ --p; -+ r = p->literal; -+ } -+ return r; - } - - --- -1.8.1.4 - diff --git a/package/binutils/2.24/909-xtensa-replace-action-list-with-splay-tree.patch b/package/binutils/2.24/909-xtensa-replace-action-list-with-splay-tree.patch deleted file mode 100644 index 3090cc21e5..0000000000 --- a/package/binutils/2.24/909-xtensa-replace-action-list-with-splay-tree.patch +++ /dev/null @@ -1,826 +0,0 @@ -From e5409aedd3ee2192855018a564650ffb75c26e60 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Sun, 5 Apr 2015 17:04:22 +0300 -Subject: [PATCH 4/4] xtensa: replace action list with splay tree - -text_action_add uses linear list search to order text actions list by -action VMA. The list is used at the first relaxation pass, when it's not -fixed yet. -Replace the list with splay tree from libiberty. - -Original profile: - -% time self children called name ------------------------------------------ - 0.00 0.00 14/158225 compute_text_actions - 3.62 0.00 25211/158225 remove_dead_literal - 8.42 0.00 58645/158225 coalesce_shared_literal - 10.68 0.00 74355/158225 text_action_add_proposed - 38.8 22.73 0.00 158225 text_action_add - 0.00 0.00 144527/293246 bfd_zmalloc ------------------------------------------ - -Same data, after optimization: - -% time self children called name ------------------------------------------ - 0.00 0.00 14/158225 compute_text_actions - 0.00 0.00 25211/158225 remove_dead_literal - 0.00 0.01 58645/158225 coalesce_shared_literal - 0.00 0.01 74355/158225 text_action_add_proposed - 0.1 0.00 0.02 158225 text_action_add - 0.01 0.00 144527/144527 splay_tree_insert - 0.00 0.00 144527/195130 splay_tree_lookup - 0.00 0.00 144527/293246 bfd_zmalloc ------------------------------------------ - -2015-04-03 Max Filippov -bfd/ - * elf32-xtensa.c (splay-tree.h): include header. - (text_action_struct): drop next pointer. - (text_action_list_struct): drop head pointer, add count and - tree fields. - (find_fill_action): instead of linear search in text_action_list - search in the tree. - (text_action_compare, action_first, action_next): new functions. - (text_action_add, text_action_add_literal): instead of linear - search and insertion insert new node into the tree. - (removed_by_actions): pass additional parameter: action_list, - use it to traverse the tree. - (offset_with_removed_text): pass additional action_list parameter - to removed_by_actions. - (map_action_fn_context): new typedef. - (map_action_fn_context_struct): new structure. - (map_action_fn): new function. - (map_removal_by_action): use splay_tree_foreach to build map. - (find_insn_action): replace linear search in text_action_list - with series of splay_tree_lookups. - (print_action, print_action_list_fn): new functions. - (print_action_list): use splay_tree_foreach. - (init_xtensa_relax_info): drop action_list.head initialization. - Initialize the tree. - (compute_text_actions): use non-zero action_list_count instead of - non-NULL action list. - (xlate_map_context): new typedef. - (xlate_map_context_struct): new structure. - (xlate_map_fn): new function. - (build_xlate_map): use splay_tree_foreach to build map. - (action_remove_bytes_fn): new function. - (relax_section): use zero action_list_count instead of NULL - action list. Use splay_tree_foreach to count final section size. - Drop unused variable 'removed'. - -Backported from: 4c2af04fe8b4452bf51d2debf1bb467fafcd0f08 -Signed-off-by: Max Filippov ---- - bfd/elf32-xtensa.c | 488 +++++++++++++++++++++++++++++++---------------------- - 1 file changed, 282 insertions(+), 206 deletions(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 51733ad..53af1c6 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -28,6 +28,7 @@ - #include "libbfd.h" - #include "elf-bfd.h" - #include "elf/xtensa.h" -+#include "splay-tree.h" - #include "xtensa-isa.h" - #include "xtensa-config.h" - -@@ -5416,8 +5417,6 @@ struct text_action_struct - bfd_vma virtual_offset; /* Zero except for adding literals. */ - int removed_bytes; - literal_value value; /* Only valid when adding literals. */ -- -- text_action *next; - }; - - struct removal_by_action_entry_struct -@@ -5440,7 +5439,8 @@ typedef struct removal_by_action_map_struct removal_by_action_map; - /* List of all of the actions taken on a text section. */ - struct text_action_list_struct - { -- text_action *head; -+ unsigned count; -+ splay_tree tree; - removal_by_action_map map; - }; - -@@ -5448,20 +5448,18 @@ struct text_action_list_struct - static text_action * - find_fill_action (text_action_list *l, asection *sec, bfd_vma offset) - { -- text_action **m_p; -+ text_action a; - - /* It is not necessary to fill at the end of a section. */ - if (sec->size == offset) - return NULL; - -- for (m_p = &l->head; *m_p && (*m_p)->offset <= offset; m_p = &(*m_p)->next) -- { -- text_action *t = *m_p; -- /* When the action is another fill at the same address, -- just increase the size. */ -- if (t->offset == offset && t->action == ta_fill) -- return t; -- } -+ a.offset = offset; -+ a.action = ta_fill; -+ -+ splay_tree_node node = splay_tree_lookup (l->tree, (splay_tree_key)&a); -+ if (node) -+ return (text_action *)node->value; - return NULL; - } - -@@ -5509,6 +5507,49 @@ adjust_fill_action (text_action *ta, int fill_diff) - } - - -+static int -+text_action_compare (splay_tree_key a, splay_tree_key b) -+{ -+ text_action *pa = (text_action *)a; -+ text_action *pb = (text_action *)b; -+ static const int action_priority[] = -+ { -+ [ta_fill] = 0, -+ [ta_none] = 1, -+ [ta_convert_longcall] = 2, -+ [ta_narrow_insn] = 3, -+ [ta_remove_insn] = 4, -+ [ta_remove_longcall] = 5, -+ [ta_remove_literal] = 6, -+ [ta_widen_insn] = 7, -+ [ta_add_literal] = 8, -+ }; -+ -+ if (pa->offset == pb->offset) -+ { -+ if (pa->action == pb->action) -+ return 0; -+ return action_priority[pa->action] - action_priority[pb->action]; -+ } -+ else -+ return pa->offset < pb->offset ? -1 : 1; -+} -+ -+static text_action * -+action_first (text_action_list *action_list) -+{ -+ splay_tree_node node = splay_tree_min (action_list->tree); -+ return node ? (text_action *)node->value : NULL; -+} -+ -+static text_action * -+action_next (text_action_list *action_list, text_action *action) -+{ -+ splay_tree_node node = splay_tree_successor (action_list->tree, -+ (splay_tree_key)action); -+ return node ? (text_action *)node->value : NULL; -+} -+ - /* Add a modification action to the text. For the case of adding or - removing space, modify any current fill and assume that - "unreachable_space" bytes can be freely contracted. Note that a -@@ -5521,8 +5562,8 @@ text_action_add (text_action_list *l, - bfd_vma offset, - int removed) - { -- text_action **m_p; - text_action *ta; -+ text_action a; - - /* It is not necessary to fill at the end of a section. */ - if (action == ta_fill && sec->size == offset) -@@ -5532,34 +5573,30 @@ text_action_add (text_action_list *l, - if (action == ta_fill && removed == 0) - return; - -- for (m_p = &l->head; *m_p && (*m_p)->offset <= offset; m_p = &(*m_p)->next) -+ a.action = action; -+ a.offset = offset; -+ -+ if (action == ta_fill) - { -- text_action *t = *m_p; -+ splay_tree_node node = splay_tree_lookup (l->tree, (splay_tree_key)&a); - -- if (action == ta_fill) -+ if (node) - { -- /* When the action is another fill at the same address, -- just increase the size. */ -- if (t->offset == offset && t->action == ta_fill) -- { -- t->removed_bytes += removed; -- return; -- } -- /* Fills need to happen before widens so that we don't -- insert fill bytes into the instruction stream. */ -- if (t->offset == offset && t->action == ta_widen_insn) -- break; -+ ta = (text_action *)node->value; -+ ta->removed_bytes += removed; -+ return; - } - } -+ else -+ BFD_ASSERT (splay_tree_lookup (l->tree, (splay_tree_key)&a) == NULL); - -- /* Create a new record and fill it up. */ - ta = (text_action *) bfd_zmalloc (sizeof (text_action)); - ta->action = action; - ta->sec = sec; - ta->offset = offset; - ta->removed_bytes = removed; -- ta->next = (*m_p); -- *m_p = ta; -+ splay_tree_insert (l->tree, (splay_tree_key)ta, (splay_tree_value)ta); -+ ++l->count; - } - - -@@ -5570,7 +5607,6 @@ text_action_add_literal (text_action_list *l, - const literal_value *value, - int removed) - { -- text_action **m_p; - text_action *ta; - asection *sec = r_reloc_get_section (loc); - bfd_vma offset = loc->target_offset; -@@ -5578,14 +5614,6 @@ text_action_add_literal (text_action_list *l, - - BFD_ASSERT (action == ta_add_literal); - -- for (m_p = &l->head; *m_p != NULL; m_p = &(*m_p)->next) -- { -- if ((*m_p)->offset > offset -- && ((*m_p)->offset != offset -- || (*m_p)->virtual_offset > virtual_offset)) -- break; -- } -- - /* Create a new record and fill it up. */ - ta = (text_action *) bfd_zmalloc (sizeof (text_action)); - ta->action = action; -@@ -5594,8 +5622,10 @@ text_action_add_literal (text_action_list *l, - ta->virtual_offset = virtual_offset; - ta->value = *value; - ta->removed_bytes = removed; -- ta->next = (*m_p); -- *m_p = ta; -+ -+ BFD_ASSERT (splay_tree_lookup (l->tree, (splay_tree_key)ta) == NULL); -+ splay_tree_insert (l->tree, (splay_tree_key)ta, (splay_tree_value)ta); -+ ++l->count; - } - - -@@ -5606,7 +5636,8 @@ text_action_add_literal (text_action_list *l, - so that each search may begin where the previous one left off. */ - - static int --removed_by_actions (text_action **p_start_action, -+removed_by_actions (text_action_list *action_list, -+ text_action **p_start_action, - bfd_vma offset, - bfd_boolean before_fill) - { -@@ -5614,6 +5645,13 @@ removed_by_actions (text_action **p_start_action, - int removed = 0; - - r = *p_start_action; -+ if (r) -+ { -+ splay_tree_node node = splay_tree_lookup (action_list->tree, -+ (splay_tree_key)r); -+ BFD_ASSERT (node != NULL && r == (text_action *)node->value); -+ } -+ - while (r) - { - if (r->offset > offset) -@@ -5625,7 +5663,7 @@ removed_by_actions (text_action **p_start_action, - - removed += r->removed_bytes; - -- r = r->next; -+ r = action_next (action_list, r); - } - - *p_start_action = r; -@@ -5636,68 +5674,74 @@ removed_by_actions (text_action **p_start_action, - static bfd_vma - offset_with_removed_text (text_action_list *action_list, bfd_vma offset) - { -- text_action *r = action_list->head; -- return offset - removed_by_actions (&r, offset, FALSE); -+ text_action *r = action_first (action_list); -+ -+ return offset - removed_by_actions (action_list, &r, offset, FALSE); - } - - - static unsigned - action_list_count (text_action_list *action_list) - { -- text_action *r = action_list->head; -- unsigned count = 0; -- for (r = action_list->head; r != NULL; r = r->next) -- { -- count++; -- } -- return count; -+ return action_list->count; - } - --static void --map_removal_by_action (text_action_list *action_list) -+typedef struct map_action_fn_context_struct map_action_fn_context; -+struct map_action_fn_context_struct - { -- text_action *r; -- int removed = 0; -+ int removed; - removal_by_action_map map; - bfd_boolean eq_complete; -+}; - -- map.n_entries = 0; -- map.entry = bfd_malloc (action_list_count (action_list) * -- sizeof (removal_by_action_entry)); -- eq_complete = FALSE; -+static int -+map_action_fn (splay_tree_node node, void *p) -+{ -+ map_action_fn_context *ctx = p; -+ text_action *r = (text_action *)node->value; -+ removal_by_action_entry *ientry = ctx->map.entry + ctx->map.n_entries; - -- for (r = action_list->head; r;) -+ if (ctx->map.n_entries && (ientry - 1)->offset == r->offset) - { -- removal_by_action_entry *ientry = map.entry + map.n_entries; -+ --ientry; -+ } -+ else -+ { -+ ++ctx->map.n_entries; -+ ctx->eq_complete = FALSE; -+ ientry->offset = r->offset; -+ ientry->eq_removed_before_fill = ctx->removed; -+ } - -- if (map.n_entries && (ientry - 1)->offset == r->offset) -+ if (!ctx->eq_complete) -+ { -+ if (r->action != ta_fill || r->removed_bytes >= 0) - { -- --ientry; -+ ientry->eq_removed = ctx->removed; -+ ctx->eq_complete = TRUE; - } - else -- { -- ++map.n_entries; -- eq_complete = FALSE; -- ientry->offset = r->offset; -- ientry->eq_removed_before_fill = removed; -- } -+ ientry->eq_removed = ctx->removed + r->removed_bytes; -+ } - -- if (!eq_complete) -- { -- if (r->action != ta_fill || r->removed_bytes >= 0) -- { -- ientry->eq_removed = removed; -- eq_complete = TRUE; -- } -- else -- ientry->eq_removed = removed + r->removed_bytes; -- } -+ ctx->removed += r->removed_bytes; -+ ientry->removed = ctx->removed; -+ return 0; -+} - -- removed += r->removed_bytes; -- ientry->removed = removed; -- r = r->next; -- } -- action_list->map = map; -+static void -+map_removal_by_action (text_action_list *action_list) -+{ -+ map_action_fn_context ctx; -+ -+ ctx.removed = 0; -+ ctx.map.n_entries = 0; -+ ctx.map.entry = bfd_malloc (action_list_count (action_list) * -+ sizeof (removal_by_action_entry)); -+ ctx.eq_complete = FALSE; -+ -+ splay_tree_foreach (action_list->tree, map_action_fn, &ctx); -+ action_list->map = ctx.map; - } - - static int -@@ -5754,28 +5798,26 @@ offset_with_removed_text_map (text_action_list *action_list, bfd_vma offset) - static text_action * - find_insn_action (text_action_list *action_list, bfd_vma offset) - { -- text_action *t; -- for (t = action_list->head; t; t = t->next) -+ static const text_action_t action[] = - { -- if (t->offset == offset) -- { -- switch (t->action) -- { -- case ta_none: -- case ta_fill: -- break; -- case ta_remove_insn: -- case ta_remove_longcall: -- case ta_convert_longcall: -- case ta_narrow_insn: -- case ta_widen_insn: -- return t; -- case ta_remove_literal: -- case ta_add_literal: -- BFD_ASSERT (0); -- break; -- } -- } -+ ta_convert_longcall, -+ ta_remove_longcall, -+ ta_widen_insn, -+ ta_narrow_insn, -+ ta_remove_insn, -+ }; -+ text_action a; -+ unsigned i; -+ -+ a.offset = offset; -+ for (i = 0; i < sizeof (action) / sizeof (*action); ++i) -+ { -+ splay_tree_node node; -+ -+ a.action = action[i]; -+ node = splay_tree_lookup (action_list->tree, (splay_tree_key)&a); -+ if (node) -+ return (text_action *)node->value; - } - return NULL; - } -@@ -5784,40 +5826,50 @@ find_insn_action (text_action_list *action_list, bfd_vma offset) - #if DEBUG - - static void --print_action_list (FILE *fp, text_action_list *action_list) -+print_action (FILE *fp, text_action *r) -+{ -+ const char *t = "unknown"; -+ switch (r->action) -+ { -+ case ta_remove_insn: -+ t = "remove_insn"; break; -+ case ta_remove_longcall: -+ t = "remove_longcall"; break; -+ case ta_convert_longcall: -+ t = "convert_longcall"; break; -+ case ta_narrow_insn: -+ t = "narrow_insn"; break; -+ case ta_widen_insn: -+ t = "widen_insn"; break; -+ case ta_fill: -+ t = "fill"; break; -+ case ta_none: -+ t = "none"; break; -+ case ta_remove_literal: -+ t = "remove_literal"; break; -+ case ta_add_literal: -+ t = "add_literal"; break; -+ } -+ -+ fprintf (fp, "%s: %s[0x%lx] \"%s\" %d\n", -+ r->sec->owner->filename, -+ r->sec->name, (unsigned long) r->offset, t, r->removed_bytes); -+} -+ -+static int -+print_action_list_fn (splay_tree_node node, void *p) - { -- text_action *r; -+ text_action *r = (text_action *)node->value; - -- fprintf (fp, "Text Action\n"); -- for (r = action_list->head; r != NULL; r = r->next) -- { -- const char *t = "unknown"; -- switch (r->action) -- { -- case ta_remove_insn: -- t = "remove_insn"; break; -- case ta_remove_longcall: -- t = "remove_longcall"; break; -- case ta_convert_longcall: -- t = "convert_longcall"; break; -- case ta_narrow_insn: -- t = "narrow_insn"; break; -- case ta_widen_insn: -- t = "widen_insn"; break; -- case ta_fill: -- t = "fill"; break; -- case ta_none: -- t = "none"; break; -- case ta_remove_literal: -- t = "remove_literal"; break; -- case ta_add_literal: -- t = "add_literal"; break; -- } -+ print_action (p, r); -+ return 0; -+} - -- fprintf (fp, "%s: %s[0x%lx] \"%s\" %d\n", -- r->sec->owner->filename, -- r->sec->name, (unsigned long) r->offset, t, r->removed_bytes); -- } -+static void -+print_action_list (FILE *fp, text_action_list *action_list) -+{ -+ fprintf (fp, "Text Action\n"); -+ splay_tree_foreach (action_list->tree, print_action_list_fn, fp); - } - - #endif /* DEBUG */ -@@ -6071,8 +6123,8 @@ init_xtensa_relax_info (asection *sec) - relax_info->removed_list.head = NULL; - relax_info->removed_list.tail = NULL; - -- relax_info->action_list.head = NULL; -- -+ relax_info->action_list.tree = splay_tree_new (text_action_compare, -+ NULL, NULL); - relax_info->action_list.map.n_entries = 0; - relax_info->action_list.map.entry = NULL; - -@@ -7762,7 +7814,7 @@ compute_text_actions (bfd *abfd, - free_reloc_range_list (&relevant_relocs); - - #if DEBUG -- if (relax_info->action_list.head) -+ if (action_list_count (&relax_info->action_list)) - print_action_list (stderr, &relax_info->action_list); - #endif - -@@ -8263,6 +8315,54 @@ xlate_offset_with_removed_text (const xlate_map_t *map, - return e->new_address - e->orig_address + offset; - } - -+typedef struct xlate_map_context_struct xlate_map_context; -+struct xlate_map_context_struct -+{ -+ xlate_map_t *map; -+ xlate_map_entry_t *current_entry; -+ int removed; -+}; -+ -+static int -+xlate_map_fn (splay_tree_node node, void *p) -+{ -+ text_action *r = (text_action *)node->value; -+ xlate_map_context *ctx = p; -+ unsigned orig_size = 0; -+ -+ switch (r->action) -+ { -+ case ta_none: -+ case ta_remove_insn: -+ case ta_convert_longcall: -+ case ta_remove_literal: -+ case ta_add_literal: -+ break; -+ case ta_remove_longcall: -+ orig_size = 6; -+ break; -+ case ta_narrow_insn: -+ orig_size = 3; -+ break; -+ case ta_widen_insn: -+ orig_size = 2; -+ break; -+ case ta_fill: -+ break; -+ } -+ ctx->current_entry->size = -+ r->offset + orig_size - ctx->current_entry->orig_address; -+ if (ctx->current_entry->size != 0) -+ { -+ ctx->current_entry++; -+ ctx->map->entry_count++; -+ } -+ ctx->current_entry->orig_address = r->offset + orig_size; -+ ctx->removed += r->removed_bytes; -+ ctx->current_entry->new_address = r->offset + orig_size - ctx->removed; -+ ctx->current_entry->size = 0; -+ return 0; -+} - - /* Build a binary searchable offset translation map from a section's - action list. */ -@@ -8270,75 +8370,40 @@ xlate_offset_with_removed_text (const xlate_map_t *map, - static xlate_map_t * - build_xlate_map (asection *sec, xtensa_relax_info *relax_info) - { -- xlate_map_t *map = (xlate_map_t *) bfd_malloc (sizeof (xlate_map_t)); - text_action_list *action_list = &relax_info->action_list; - unsigned num_actions = 0; -- text_action *r; -- int removed; -- xlate_map_entry_t *current_entry; -+ xlate_map_context ctx; - -- if (map == NULL) -+ ctx.map = (xlate_map_t *) bfd_malloc (sizeof (xlate_map_t)); -+ -+ if (ctx.map == NULL) - return NULL; - - num_actions = action_list_count (action_list); -- map->entry = (xlate_map_entry_t *) -+ ctx.map->entry = (xlate_map_entry_t *) - bfd_malloc (sizeof (xlate_map_entry_t) * (num_actions + 1)); -- if (map->entry == NULL) -+ if (ctx.map->entry == NULL) - { -- free (map); -+ free (ctx.map); - return NULL; - } -- map->entry_count = 0; -+ ctx.map->entry_count = 0; - -- removed = 0; -- current_entry = &map->entry[0]; -+ ctx.removed = 0; -+ ctx.current_entry = &ctx.map->entry[0]; - -- current_entry->orig_address = 0; -- current_entry->new_address = 0; -- current_entry->size = 0; -+ ctx.current_entry->orig_address = 0; -+ ctx.current_entry->new_address = 0; -+ ctx.current_entry->size = 0; - -- for (r = action_list->head; r != NULL; r = r->next) -- { -- unsigned orig_size = 0; -- switch (r->action) -- { -- case ta_none: -- case ta_remove_insn: -- case ta_convert_longcall: -- case ta_remove_literal: -- case ta_add_literal: -- break; -- case ta_remove_longcall: -- orig_size = 6; -- break; -- case ta_narrow_insn: -- orig_size = 3; -- break; -- case ta_widen_insn: -- orig_size = 2; -- break; -- case ta_fill: -- break; -- } -- current_entry->size = -- r->offset + orig_size - current_entry->orig_address; -- if (current_entry->size != 0) -- { -- current_entry++; -- map->entry_count++; -- } -- current_entry->orig_address = r->offset + orig_size; -- removed += r->removed_bytes; -- current_entry->new_address = r->offset + orig_size - removed; -- current_entry->size = 0; -- } -+ splay_tree_foreach (action_list->tree, xlate_map_fn, &ctx); - -- current_entry->size = (bfd_get_section_limit (sec->owner, sec) -- - current_entry->orig_address); -- if (current_entry->size != 0) -- map->entry_count++; -+ ctx.current_entry->size = (bfd_get_section_limit (sec->owner, sec) -+ - ctx.current_entry->orig_address); -+ if (ctx.current_entry->size != 0) -+ ctx.map->entry_count++; - -- return map; -+ return ctx.map; - } - - -@@ -9302,6 +9367,16 @@ move_shared_literal (asection *sec, - - /* Second relaxation pass. */ - -+static int -+action_remove_bytes_fn (splay_tree_node node, void *p) -+{ -+ bfd_size_type *final_size = p; -+ text_action *action = (text_action *)node->value; -+ -+ *final_size -= action->removed_bytes; -+ return 0; -+} -+ - /* Modify all of the relocations to point to the right spot, and if this - is a relaxable section, delete the unwanted literals and fix the - section size. */ -@@ -9334,7 +9409,7 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - - internal_relocs = retrieve_internal_relocs (abfd, sec, - link_info->keep_memory); -- if (!internal_relocs && !relax_info->action_list.head) -+ if (!internal_relocs && !action_list_count (&relax_info->action_list)) - return TRUE; - - contents = retrieve_contents (abfd, sec, link_info->keep_memory); -@@ -9412,6 +9487,12 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - } - /* Update the action so that the code that moves - the contents will do the right thing. */ -+ /* ta_remove_longcall and ta_remove_insn actions are -+ grouped together in the tree as well as -+ ta_convert_longcall and ta_none, so that changes below -+ can be done w/o removing and reinserting action into -+ the tree. */ -+ - if (action->action == ta_remove_longcall) - action->action = ta_remove_insn; - else -@@ -9584,13 +9665,12 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - - if ((relax_info->is_relaxable_literal_section - || relax_info->is_relaxable_asm_section) -- && relax_info->action_list.head) -+ && action_list_count (&relax_info->action_list)) - { - /* Walk through the planned actions and build up a table - of move, copy and fill records. Use the move, copy and - fill records to perform the actions once. */ - -- int removed = 0; - bfd_size_type final_size, copy_size, orig_insn_size; - bfd_byte *scratch = NULL; - bfd_byte *dup_contents = NULL; -@@ -9601,15 +9681,12 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - bfd_vma orig_dot_vo = 0; /* Virtual offset from orig_dot. */ - bfd_vma dup_dot = 0; - -- text_action *action = relax_info->action_list.head; -+ text_action *action; - - final_size = sec->size; -- for (action = relax_info->action_list.head; action; -- action = action->next) -- { -- final_size -= action->removed_bytes; -- } - -+ splay_tree_foreach (relax_info->action_list.tree, -+ action_remove_bytes_fn, &final_size); - scratch = (bfd_byte *) bfd_zmalloc (final_size); - dup_contents = (bfd_byte *) bfd_zmalloc (final_size); - -@@ -9618,8 +9695,8 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - print_action_list (stderr, &relax_info->action_list); - #endif - -- for (action = relax_info->action_list.head; action; -- action = action->next) -+ for (action = action_first (&relax_info->action_list); action; -+ action = action_next (&relax_info->action_list, action)) - { - virtual_action = FALSE; - if (action->offset > orig_dot) -@@ -9748,7 +9825,6 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info) - break; - } - -- removed += action->removed_bytes; - BFD_ASSERT (dup_dot <= final_size); - BFD_ASSERT (orig_dot <= orig_size); - } --- -1.8.1.4 - diff --git a/package/binutils/2.24/910-xtensa-optimize-trampolines-relaxation.patch b/package/binutils/2.24/910-xtensa-optimize-trampolines-relaxation.patch deleted file mode 100644 index 043ff4df1e..0000000000 --- a/package/binutils/2.24/910-xtensa-optimize-trampolines-relaxation.patch +++ /dev/null @@ -1,345 +0,0 @@ -From cbe53e134d4c3a656880a906738ce19fdcd38e8b Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 1 May 2015 11:39:12 +0300 -Subject: [PATCH] xtensa: optimize trampolines relaxation - -Currently every fixup in the current segment is checked when relaxing -trampoline frag. This is very expensive. Make a searchable array of -fixups pointing at potentially oversized jumps at the beginning of every -relaxation pass and only check subset of this cache in the reach of -single jump from the trampoline frag currently being relaxed. - -Original profile: - -% time self children called name ------------------------------------------ - 370.16 593.38 12283048/12283048 relax_segment - 98.4 370.16 593.38 12283048 xtensa_relax_frag - 58.91 269.26 2691463834/2699602236 xtensa_insnbuf_from_chars - 68.35 68.17 811266668/813338977 S_GET_VALUE - 36.85 29.51 2684369246/2685538060 xtensa_opcode_decode - 28.34 8.84 2684369246/2685538060 xtensa_format_get_slot - 12.39 5.94 2691463834/2699775044 xtensa_format_decode - 0.03 4.60 4101109/4101109 relax_frag_for_align - 0.18 1.76 994617/994617 relax_frag_immed - 0.07 0.09 24556277/24851220 new_logical_line - 0.06 0.00 12283048/14067410 as_where - 0.04 0.00 7094588/15460506 xtensa_format_num_slots - 0.00 0.00 1/712477 xtensa_insnbuf_alloc ------------------------------------------ - -Same data, after optimization: - -% time self children called name ------------------------------------------ - 0.51 7.47 12283048/12283048 relax_segment - 58.0 0.51 7.47 12283048 xtensa_relax_frag - 0.02 4.08 4101109/4101109 relax_frag_for_align - 0.18 1.39 994617/994617 relax_frag_immed - 0.01 0.98 555/555 xtensa_cache_relaxable_fixups - 0.21 0.25 7094588/16693271 xtensa_insnbuf_from_chars - 0.06 0.12 24556277/24851220 new_logical_line - 0.06 0.00 7094588/15460506 xtensa_format_num_slots - 0.02 0.04 7094588/16866079 xtensa_format_decode - 0.05 0.00 12283048/14067410 as_where - 0.00 0.00 1/712477 xtensa_insnbuf_alloc - 0.00 0.00 93808/93808 xtensa_find_first_cached_fixup ------------------------------------------ - -2015-05-02 Max Filippov -gas/ - * config/tc-xtensa.c (cached_fixupS, fixup_cacheS): New typedefs. - (struct cached_fixup, struct fixup_cache): New structures. - (fixup_order, xtensa_make_cached_fixup), - (xtensa_realloc_fixup_cache, xtensa_cache_relaxable_fixups), - (xtensa_find_first_cached_fixup, xtensa_delete_cached_fixup), - (xtensa_add_cached_fixup): New functions. - (xtensa_relax_frag): Cache fixups pointing at potentially - oversized jumps at the beginning of every relaxation pass. Only - check subset of this cache in the reach of single jump from the - trampoline frag currently being relaxed. - -Signed-off-by: Max Filippov ---- -Backported from: b76f99d702c3501ac320396ea06bc7f9237173c3 -Changes to ChangeLog are dropped. - - gas/config/tc-xtensa.c | 220 +++++++++++++++++++++++++++++++++++++++++++------ - 1 file changed, 194 insertions(+), 26 deletions(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 3e85b69..31c0b6b 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -8785,6 +8785,154 @@ static long relax_frag_for_align (fragS *, long); - static long relax_frag_immed - (segT, fragS *, long, int, xtensa_format, int, int *, bfd_boolean); - -+typedef struct cached_fixup cached_fixupS; -+struct cached_fixup -+{ -+ int addr; -+ int target; -+ int delta; -+ fixS *fixP; -+}; -+ -+typedef struct fixup_cache fixup_cacheS; -+struct fixup_cache -+{ -+ cached_fixupS *fixups; -+ unsigned n_fixups; -+ unsigned n_max; -+ -+ segT seg; -+ fragS *first_frag; -+}; -+ -+static int fixup_order (const void *a, const void *b) -+{ -+ const cached_fixupS *pa = a; -+ const cached_fixupS *pb = b; -+ -+ if (pa->addr == pb->addr) -+ { -+ if (pa->target == pb->target) -+ { -+ if (pa->fixP->fx_r_type == pb->fixP->fx_r_type) -+ return 0; -+ return pa->fixP->fx_r_type < pb->fixP->fx_r_type ? -1 : 1; -+ } -+ return pa->target - pb->target; -+ } -+ return pa->addr - pb->addr; -+} -+ -+static bfd_boolean xtensa_make_cached_fixup (cached_fixupS *o, fixS *fixP) -+{ -+ xtensa_isa isa = xtensa_default_isa; -+ int addr = fixP->fx_frag->fr_address; -+ int target; -+ int delta; -+ symbolS *s = fixP->fx_addsy; -+ int slot; -+ xtensa_format fmt; -+ xtensa_opcode opcode; -+ -+ if (fixP->fx_r_type < BFD_RELOC_XTENSA_SLOT0_OP || -+ fixP->fx_r_type > BFD_RELOC_XTENSA_SLOT14_OP) -+ return FALSE; -+ target = S_GET_VALUE (s); -+ delta = target - addr; -+ -+ if (abs(delta) < J_RANGE / 2) -+ return FALSE; -+ -+ xtensa_insnbuf_from_chars (isa, trampoline_buf, -+ (unsigned char *) fixP->fx_frag->fr_literal + -+ fixP->fx_where, 0); -+ fmt = xtensa_format_decode (isa, trampoline_buf); -+ gas_assert (fmt != XTENSA_UNDEFINED); -+ slot = fixP->tc_fix_data.slot; -+ xtensa_format_get_slot (isa, fmt, slot, trampoline_buf, trampoline_slotbuf); -+ opcode = xtensa_opcode_decode (isa, fmt, slot, trampoline_slotbuf); -+ if (opcode != xtensa_j_opcode) -+ return FALSE; -+ -+ o->addr = addr; -+ o->target = target; -+ o->delta = delta; -+ o->fixP = fixP; -+ -+ return TRUE; -+} -+ -+static void xtensa_realloc_fixup_cache (fixup_cacheS *cache, unsigned add) -+{ -+ if (cache->n_fixups + add > cache->n_max) -+ { -+ cache->n_max = (cache->n_fixups + add) * 2; -+ cache->fixups = xrealloc (cache->fixups, -+ sizeof (*cache->fixups) * cache->n_max); -+ } -+} -+ -+static void xtensa_cache_relaxable_fixups (fixup_cacheS *cache, -+ segment_info_type *seginfo) -+{ -+ fixS *fixP; -+ -+ cache->n_fixups = 0; -+ -+ for (fixP = seginfo->fix_root; fixP ; fixP = fixP->fx_next) -+ { -+ xtensa_realloc_fixup_cache (cache, 1); -+ -+ if (xtensa_make_cached_fixup (cache->fixups + cache->n_fixups, fixP)) -+ ++cache->n_fixups; -+ } -+ qsort (cache->fixups, cache->n_fixups, sizeof (*cache->fixups), fixup_order); -+} -+ -+static unsigned xtensa_find_first_cached_fixup (const fixup_cacheS *cache, -+ int addr) -+{ -+ unsigned a = 0; -+ unsigned b = cache->n_fixups; -+ -+ while (b - a > 1) -+ { -+ unsigned c = (a + b) / 2; -+ -+ if (cache->fixups[c].addr < addr) -+ a = c; -+ else -+ b = c; -+ } -+ return a; -+} -+ -+static void xtensa_delete_cached_fixup (fixup_cacheS *cache, unsigned i) -+{ -+ memmove (cache->fixups + i, cache->fixups + i + 1, -+ (cache->n_fixups - i - 1) * sizeof (*cache->fixups)); -+ --cache->n_fixups; -+} -+ -+static bfd_boolean xtensa_add_cached_fixup (fixup_cacheS *cache, fixS *fixP) -+{ -+ cached_fixupS o; -+ unsigned i; -+ -+ if (!xtensa_make_cached_fixup (&o, fixP)) -+ return FALSE; -+ xtensa_realloc_fixup_cache (cache, 1); -+ i = xtensa_find_first_cached_fixup (cache, o.addr); -+ if (i < cache->n_fixups) -+ { -+ ++i; -+ memmove (cache->fixups + i + 1, cache->fixups + i, -+ (cache->n_fixups - i) * sizeof (*cache->fixups)); -+ } -+ cache->fixups[i] = o; -+ ++cache->n_fixups; -+ return TRUE; -+} - - /* Return the number of bytes added to this fragment, given that the - input has been stretched already by "stretch". */ -@@ -8896,35 +9044,42 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - case RELAX_TRAMPOLINE: - if (fragP->tc_frag_data.relax_seen) - { -- segment_info_type *seginfo = seg_info (now_seg); -- fragS *fP; /* The out-of-range jump. */ -- fixS *fixP; -+ static fixup_cacheS fixup_cache; -+ segment_info_type *seginfo = seg_info (now_seg); -+ int trampaddr = fragP->fr_address + fragP->fr_fix; -+ int searchaddr = trampaddr < J_RANGE ? 0 : trampaddr - J_RANGE; -+ unsigned i; -+ -+ if (now_seg != fixup_cache.seg || -+ fragP == fixup_cache.first_frag || -+ fixup_cache.first_frag == NULL) -+ { -+ xtensa_cache_relaxable_fixups (&fixup_cache, seginfo); -+ fixup_cache.seg = now_seg; -+ fixup_cache.first_frag = fragP; -+ } - - /* Scan for jumps that will not reach. */ -- for (fixP = seginfo->fix_root; fixP ; fixP = fixP->fx_next) -+ for (i = xtensa_find_first_cached_fixup (&fixup_cache, searchaddr); -+ i < fixup_cache.n_fixups; ++i) -+ - { -- symbolS *s = fixP->fx_addsy; -- xtensa_opcode opcode; -- int target; -- int addr; -- int delta; -- -- if (fixP->fx_r_type < BFD_RELOC_XTENSA_SLOT0_OP || -- fixP->fx_r_type > BFD_RELOC_XTENSA_SLOT14_OP) -- continue; -- xtensa_insnbuf_from_chars (isa, trampoline_buf, -- (unsigned char *) fixP->fx_frag->fr_literal + fixP->fx_where, -- 0); -- fmt = xtensa_format_decode (isa, trampoline_buf); -- gas_assert (fmt != XTENSA_UNDEFINED); -- slot = fixP->tc_fix_data.slot; -- xtensa_format_get_slot (isa, fmt, slot, trampoline_buf, trampoline_slotbuf); -- opcode = xtensa_opcode_decode (isa, fmt, slot, trampoline_slotbuf); -- if (opcode != xtensa_j_opcode) -+ fixS *fixP = fixup_cache.fixups[i].fixP; -+ int target = fixup_cache.fixups[i].target; -+ int addr = fixup_cache.fixups[i].addr; -+ int delta = fixup_cache.fixups[i].delta + stretch; -+ -+ trampaddr = fragP->fr_address + fragP->fr_fix; -+ -+ if (addr + J_RANGE < trampaddr) - continue; -- target = S_GET_VALUE (s); -- addr = fixP->fx_frag->fr_address; -- delta = target - addr + stretch; -+ if (addr > trampaddr + J_RANGE) -+ break; -+ if (abs (delta) < J_RANGE) -+ continue; -+ -+ slot = fixP->tc_fix_data.slot; -+ - if (delta > J_RANGE || delta < -1 * J_RANGE) - { /* Found an out-of-range jump; scan the list of trampolines for the best match. */ - struct trampoline_seg *ts = find_trampoline_seg (now_seg); -@@ -8978,14 +9133,13 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - } - if (tf->fragP == fragP) - { -- int trampaddr = fragP->fr_address + fragP->fr_fix; -- - if (abs (addr - trampaddr) < J_RANGE) - { /* The trampoline is in range of original; fix it! */ - fixS *newfixP; - int offset; - TInsn insn; - symbolS *lsym; -+ fragS *fP; /* The out-of-range jump. */ - - new_stretch += init_trampoline_frag (tf); - offset = fragP->fr_fix; /* Where to assemble the j insn. */ -@@ -9009,10 +9163,20 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - newfixP->tc_fix_data.X_add_symbol = lsym; - newfixP->tc_fix_data.X_add_number = offset; - newfixP->tc_fix_data.slot = slot; -+ -+ xtensa_delete_cached_fixup (&fixup_cache, i); -+ xtensa_add_cached_fixup (&fixup_cache, newfixP); -+ - /* Move the fix-up from the original j insn to this one. */ - fixP->fx_frag = fragP; - fixP->fx_where = fragP->fr_fix - 3; - fixP->tc_fix_data.slot = 0; -+ -+ xtensa_add_cached_fixup (&fixup_cache, fixP); -+ -+ /* re-do current fixup */ -+ --i; -+ - /* Adjust the jump around this trampoline (if present). */ - if (tf->fixP != NULL) - { -@@ -9027,6 +9191,8 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - fragP->fr_subtype = 0; - /* Remove from the trampoline_list. */ - prev->next = tf->next; -+ if (fragP == fixup_cache.first_frag) -+ fixup_cache.first_frag = NULL; - break; - } - } --- -1.8.1.4 - diff --git a/package/binutils/2.24/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch b/package/binutils/2.24/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch deleted file mode 100644 index 9ad6b3be05..0000000000 --- a/package/binutils/2.24/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 8ec76b16f62d1bf386fb2c39af5f66c3afddc5cb Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 14 May 2015 05:22:55 +0300 -Subject: [PATCH] xtensa: fix localized symbol refcounting with --gc-sections - -elf_xtensa_gc_sweep_hook doesn't correctly unreference symbols that were -made local, that results in link failure with the following message: - - BFD (GNU Binutils) 2.24 internal error, aborting at elf32-xtensa.c line - 3372 in elf_xtensa_finish_dynamic_sections - -elf_xtensa_gc_sweep_hook determines symbol reference type (PLT or GOT) by -relocation type. Relocation types are not changed when symbol becomes -local, but its PLT references are added to GOT references and -plt.refcount is set to 0. Such symbol cannot be unreferences in the -elf_xtensa_gc_sweep_hook and its extra references make calculated GOT -relocations section size not match number of GOT relocations. - -Fix it by treating PLT reference as GOT reference when plt.refcount is -not positive. - -2015-05-14 Max Filippov -bfd/ - * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Treat PLT reference - as GOT reference when plt.refcount is not positive. - -Signed-off-by: Max Filippov ---- -Backported from: e6c9a083ec5ae7a45bd71682b26aae1939849388 -Changes to ChangeLog are dropped. - - bfd/elf32-xtensa.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c -index 53af1c6..2523670 100644 ---- a/bfd/elf32-xtensa.c -+++ b/bfd/elf32-xtensa.c -@@ -1360,10 +1360,14 @@ elf_xtensa_gc_sweep_hook (bfd *abfd, - { - if (is_plt) - { -+ /* If the symbol has been localized its plt.refcount got moved -+ to got.refcount. Handle it as GOT. */ - if (h->plt.refcount > 0) - h->plt.refcount--; -+ else -+ is_got = TRUE; - } -- else if (is_got) -+ if (is_got) - { - if (h->got.refcount > 0) - h->got.refcount--; --- -1.8.1.4 - diff --git a/package/binutils/2.24/912-xtensa-fix-gas-segfault-with-text-section-literals.patch b/package/binutils/2.24/912-xtensa-fix-gas-segfault-with-text-section-literals.patch deleted file mode 100644 index 4a3de2c839..0000000000 --- a/package/binutils/2.24/912-xtensa-fix-gas-segfault-with-text-section-literals.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 2d0522e76e4afeeb2e104e0a4332d94fa0d2fbf6 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Sun, 17 May 2015 06:46:15 +0300 -Subject: [PATCH] xtensa: fix gas segfault with --text-section-literals - -When --text-section-literals is used and code in the .init or .fini -emits literal in the absence of .literal_position, xtensa_move_literals -segfaults. - -Check that search_frag is non-NULL in the xtensa_move_literals and -report error otherwise. - -2015-05-26 Max Filippov -gas/ - * config/tc-xtensa.c (xtensa_move_literals): Check that - search_frag is non-NULL. Report error if literal frag is not - found. - -Signed-off-by: Max Filippov ---- -Backported from: 4de0562a4c69fef4952aa7e19d7bda359f02e8b4 -Changes to ChangeLog are dropped. - - gas/config/tc-xtensa.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 31c0b6b..18307c1 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -10808,13 +10808,21 @@ xtensa_move_literals (void) - frchain_to = NULL; - frag_splice = &(frchain_from->frch_root); - -- while (!search_frag->tc_frag_data.literal_frag) -+ while (search_frag && !search_frag->tc_frag_data.literal_frag) - { - gas_assert (search_frag->fr_fix == 0 - || search_frag->fr_type == rs_align); - search_frag = search_frag->fr_next; - } - -+ if (!search_frag) -+ { -+ search_frag = frchain_from->frch_root; -+ as_bad_where (search_frag->fr_file, search_frag->fr_line, -+ _("literal pool location required for text-section-literals; specify with .literal_position")); -+ continue; -+ } -+ - gas_assert (search_frag->tc_frag_data.literal_frag->fr_subtype - == RELAX_LITERAL_POOL_BEGIN); - xtensa_switch_section_emit_state (&state, segment->seg, 0); --- -1.8.1.4 - diff --git a/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch b/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch deleted file mode 100644 index f0199e1e2a..0000000000 --- a/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch +++ /dev/null @@ -1,698 +0,0 @@ -From 978adaaa4cd3921842e2be8a31c05f081fb17fcf Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Wed, 29 Jul 2015 17:42:54 +0300 -Subject: [PATCH] xtensa: add --auto-litpools option - -Auto-litpools is the automated version of text-section-literals: literal -pool candidate frags are planted every N frags and during relaxation -they are turned into actual literal pools where literals are moved to -become reachable for their first reference by L32R instruction. - -2015-08-12 David Weatherford -gas/ - * config/tc-xtensa.c (struct litpool_frag, struct litpool_seg): - New structures. - (xtensa_maybe_create_literal_pool_frag): New function. - (litpool_seg_list, auto_litpools, auto_litpool_limit) - (litpool_buf, litpool_slotbuf): New static variables. - (option_auto_litpools, option_no_auto_litpools) - (option_auto_litpool_limit): New enum identifiers. - (md_longopts): Add entries for auto-litpools, no-auto-litpools - and auto-litpool-limit. - (md_parse_option): Handle option_auto_litpools, - option_no_auto_litpools and option_auto_litpool_limit. - (md_show_usage): Add help for --[no-]auto-litpools and - --auto-litpool-limit. - (xtensa_mark_literal_pool_location): Record a place for literal - pool with a call to xtensa_maybe_create_literal_pool_frag. - (get_literal_pool_location): Find highest priority literal pool - or convert candidate to literal pool when auto-litpools are used. - (xg_assemble_vliw_tokens): Create literal pool after jump - instruction. - (xtensa_check_frag_count): Create candidate literal pool every - auto_litpool_limit frags. - (xtensa_relax_frag): Add jump around literals to non-empty - literal pool. - (xtensa_move_literals): Estimate literal pool addresses and move - unreachable literals closer to their users, converting candidate - to literal pool if needed. - (xtensa_switch_to_non_abs_literal_fragment): Only emit error - about missing .literal_position in case auto-litpools are not - used. - * config/tc-xtensa.h (xtensa_relax_statesE): New relaxation - state: RELAX_LITERAL_POOL_CANDIDATE_BEGIN. - -2015-08-12 Max Filippov -gas/testsuite/ - * gas/xtensa/all.exp: Add auto-litpools to the list of xtensa - tests. - * gas/xtensa/auto-litpools.s: New file: auto-litpools test. - * gas/xtensa/auto-litpools.s: New file: auto-litpools test - result pattern. - -Signed-off-by: Max Filippov ---- -Backported from: b46824bd49648c575372e6d9bc6a6defeabd6ed5 -Changes to ChangeLogs and documentation are dropped. - - gas/config/tc-xtensa.c | 432 ++++++++++++++++++++++++++++++- - gas/config/tc-xtensa.h | 1 + - gas/testsuite/gas/xtensa/all.exp | 1 + - gas/testsuite/gas/xtensa/auto-litpools.d | 12 + - gas/testsuite/gas/xtensa/auto-litpools.s | 13 + - 5 files changed, 454 insertions(+), 5 deletions(-) - create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.d - create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.s - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 7311a05..b8b1e7d 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -440,6 +440,29 @@ bfd_boolean directive_state[] = - #endif - }; - -+/* A circular list of all potential and actual literal pool locations -+ in a segment. */ -+struct litpool_frag -+{ -+ struct litpool_frag *next; -+ struct litpool_frag *prev; -+ fragS *fragP; -+ addressT addr; -+ short priority; /* 1, 2, or 3 -- 1 is highest */ -+ short original_priority; -+}; -+ -+/* Map a segment to its litpool_frag list. */ -+struct litpool_seg -+{ -+ struct litpool_seg *next; -+ asection *seg; -+ struct litpool_frag frag_list; -+ int frag_count; /* since last litpool location */ -+}; -+ -+static struct litpool_seg litpool_seg_list; -+ - - /* Directive functions. */ - -@@ -474,6 +497,9 @@ static void xtensa_create_trampoline_frag (bfd_boolean); - static void xtensa_maybe_create_trampoline_frag (void); - struct trampoline_frag; - static int init_trampoline_frag (struct trampoline_frag *); -+static void xtensa_maybe_create_literal_pool_frag (bfd_boolean, bfd_boolean); -+static bfd_boolean auto_litpools = FALSE; -+static int auto_litpool_limit = 10000; - - /* Alignment Functions. */ - -@@ -698,6 +724,10 @@ enum - - option_trampolines, - option_no_trampolines, -+ -+ option_auto_litpools, -+ option_no_auto_litpools, -+ option_auto_litpool_limit, - }; - - const char *md_shortopts = ""; -@@ -773,6 +803,10 @@ struct option md_longopts[] = - { "trampolines", no_argument, NULL, option_trampolines }, - { "no-trampolines", no_argument, NULL, option_no_trampolines }, - -+ { "auto-litpools", no_argument, NULL, option_auto_litpools }, -+ { "no-auto-litpools", no_argument, NULL, option_no_auto_litpools }, -+ { "auto-litpool-limit", required_argument, NULL, option_auto_litpool_limit }, -+ - { NULL, no_argument, NULL, 0 } - }; - -@@ -961,6 +995,34 @@ md_parse_option (int c, char *arg) - use_trampolines = FALSE; - return 1; - -+ case option_auto_litpools: -+ auto_litpools = TRUE; -+ use_literal_section = FALSE; -+ return 1; -+ -+ case option_no_auto_litpools: -+ auto_litpools = FALSE; -+ auto_litpool_limit = -1; -+ return 1; -+ -+ case option_auto_litpool_limit: -+ { -+ int value = 0; -+ if (auto_litpool_limit < 0) -+ as_fatal (_("no-auto-litpools is incompatible with auto-litpool-limit")); -+ if (*arg == 0 || *arg == '-') -+ as_fatal (_("invalid auto-litpool-limit argument")); -+ value = strtol (arg, &arg, 10); -+ if (*arg != 0) -+ as_fatal (_("invalid auto-litpool-limit argument")); -+ if (value < 100 || value > 10000) -+ as_fatal (_("invalid auto-litpool-limit argument (range is 100-10000)")); -+ auto_litpool_limit = value; -+ auto_litpools = TRUE; -+ use_literal_section = FALSE; -+ return 1; -+ } -+ - default: - return 0; - } -@@ -986,7 +1048,12 @@ Xtensa options:\n\ - flix bundles\n\ - --rename-section old=new Rename section 'old' to 'new'\n\ - --[no-]trampolines [Do not] generate trampolines (jumps to jumps)\n\ -- when jumps do not reach their targets\n", stream); -+ when jumps do not reach their targets\n\ -+ --[no-]auto-litpools [Do not] automatically create literal pools\n\ -+ --auto-litpool-limit=\n\ -+ (range 100-10000) Maximum number of blocks of\n\ -+ instructions to emit between literal pool\n\ -+ locations; implies --auto-litpools flag\n", stream); - } - - -@@ -4728,6 +4795,8 @@ xtensa_mark_literal_pool_location (void) - pool_location = frag_now; - frag_now->tc_frag_data.lit_frchain = frchain_now; - frag_now->tc_frag_data.literal_frag = frag_now; -+ /* Just record this frag. */ -+ xtensa_maybe_create_literal_pool_frag (FALSE, FALSE); - frag_variant (rs_machine_dependent, 0, 0, - RELAX_LITERAL_POOL_BEGIN, NULL, 0, NULL); - xtensa_set_frag_assembly_state (frag_now); -@@ -4832,6 +4901,31 @@ get_expanded_loop_offset (xtensa_opcode opcode) - static fragS * - get_literal_pool_location (segT seg) - { -+ struct litpool_seg *lps = litpool_seg_list.next; -+ struct litpool_frag *lpf; -+ for ( ; lps && lps->seg->id != seg->id; lps = lps->next) -+ ; -+ if (lps) -+ { -+ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) -+ { /* Skip "candidates" for now. */ -+ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN && -+ lpf->priority == 1) -+ return lpf->fragP; -+ } -+ /* Must convert a lower-priority pool. */ -+ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) -+ { -+ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) -+ return lpf->fragP; -+ } -+ /* Still no match -- try for a low priority pool. */ -+ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) -+ { -+ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN) -+ return lpf->fragP; -+ } -+ } - return seg_info (seg)->tc_segment_info_data.literal_pool_loc; - } - -@@ -7098,6 +7192,11 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) - frag_now->tc_frag_data.slot_symbols[slot] = tinsn->symbol; - frag_now->tc_frag_data.slot_offsets[slot] = tinsn->offset; - frag_now->tc_frag_data.literal_frags[slot] = tinsn->literal_frag; -+ if (tinsn->opcode == xtensa_l32r_opcode) -+ { -+ frag_now->tc_frag_data.literal_frags[slot] = -+ tinsn->tok[1].X_add_symbol->sy_frag; -+ } - if (tinsn->literal_space != 0) - xg_assemble_literal_space (tinsn->literal_space, slot); - frag_now->tc_frag_data.free_reg[slot] = tinsn->extra_arg; -@@ -7170,6 +7269,8 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) - frag_now->fr_symbol, frag_now->fr_offset, NULL); - xtensa_set_frag_assembly_state (frag_now); - xtensa_maybe_create_trampoline_frag (); -+ /* Always create one here. */ -+ xtensa_maybe_create_literal_pool_frag (TRUE, FALSE); - } - else if (is_branch && do_align_targets ()) - { -@@ -7314,11 +7415,18 @@ xtensa_check_frag_count (void) - clear_frag_count (); - unreachable_count = 0; - } -+ -+ /* We create an area for a possible literal pool every N (default 5000) -+ frags or so. */ -+ xtensa_maybe_create_literal_pool_frag (TRUE, TRUE); - } - - static xtensa_insnbuf trampoline_buf = NULL; - static xtensa_insnbuf trampoline_slotbuf = NULL; - -+static xtensa_insnbuf litpool_buf = NULL; -+static xtensa_insnbuf litpool_slotbuf = NULL; -+ - #define TRAMPOLINE_FRAG_SIZE 3000 - - static void -@@ -7410,6 +7518,135 @@ dump_trampolines (void) - } - } - -+static void dump_litpools (void) __attribute__ ((unused)); -+ -+static void -+dump_litpools (void) -+{ -+ struct litpool_seg *lps = litpool_seg_list.next; -+ struct litpool_frag *lpf; -+ -+ for ( ; lps ; lps = lps->next ) -+ { -+ printf("litpool seg %s\n", lps->seg->name); -+ for ( lpf = lps->frag_list.next; lpf->fragP; lpf = lpf->next ) -+ { -+ fragS *litfrag = lpf->fragP->fr_next; -+ int count = 0; -+ while (litfrag && litfrag->fr_subtype != RELAX_LITERAL_POOL_END) -+ { -+ if (litfrag->fr_fix == 4) -+ count++; -+ litfrag = litfrag->fr_next; -+ } -+ printf(" %ld <%d:%d> (%d) [%d]: ", -+ lpf->addr, lpf->priority, lpf->original_priority, -+ lpf->fragP->fr_line, count); -+ //dump_frag(lpf->fragP); -+ } -+ } -+} -+ -+static void -+xtensa_maybe_create_literal_pool_frag (bfd_boolean create, -+ bfd_boolean only_if_needed) -+{ -+ struct litpool_seg *lps = litpool_seg_list.next; -+ fragS *fragP; -+ struct litpool_frag *lpf; -+ bfd_boolean needed = FALSE; -+ -+ if (use_literal_section || !auto_litpools) -+ return; -+ -+ for ( ; lps ; lps = lps->next ) -+ { -+ if (lps->seg == now_seg) -+ break; -+ } -+ -+ if (lps == NULL) -+ { -+ lps = (struct litpool_seg *)xcalloc (sizeof (struct litpool_seg), 1); -+ lps->next = litpool_seg_list.next; -+ litpool_seg_list.next = lps; -+ lps->seg = now_seg; -+ lps->frag_list.next = &lps->frag_list; -+ lps->frag_list.prev = &lps->frag_list; -+ } -+ -+ lps->frag_count++; -+ -+ if (create) -+ { -+ if (only_if_needed) -+ { -+ if (past_xtensa_end || !use_transform() || -+ frag_now->tc_frag_data.is_no_transform) -+ { -+ return; -+ } -+ if (auto_litpool_limit <= 0) -+ { -+ /* Don't create a litpool based only on frag count. */ -+ return; -+ } -+ else if (lps->frag_count > auto_litpool_limit) -+ { -+ needed = TRUE; -+ } -+ else -+ { -+ return; -+ } -+ } -+ else -+ { -+ needed = TRUE; -+ } -+ } -+ -+ if (needed) -+ { -+ int size = (only_if_needed) ? 3 : 0; /* Space for a "j" insn. */ -+ /* Create a potential site for a literal pool. */ -+ frag_wane (frag_now); -+ frag_new (0); -+ xtensa_set_frag_assembly_state (frag_now); -+ fragP = frag_now; -+ fragP->tc_frag_data.lit_frchain = frchain_now; -+ fragP->tc_frag_data.literal_frag = fragP; -+ frag_var (rs_machine_dependent, size, size, -+ (only_if_needed) ? -+ RELAX_LITERAL_POOL_CANDIDATE_BEGIN : -+ RELAX_LITERAL_POOL_BEGIN, -+ NULL, 0, NULL); -+ frag_now->tc_frag_data.lit_seg = now_seg; -+ frag_variant (rs_machine_dependent, 0, 0, -+ RELAX_LITERAL_POOL_END, NULL, 0, NULL); -+ xtensa_set_frag_assembly_state (frag_now); -+ } -+ else -+ { -+ /* RELAX_LITERAL_POOL_BEGIN frag is being created; -+ just record it here. */ -+ fragP = frag_now; -+ } -+ -+ lpf = (struct litpool_frag *)xmalloc(sizeof (struct litpool_frag)); -+ /* Insert at tail of circular list. */ -+ lpf->addr = 0; -+ lps->frag_list.prev->next = lpf; -+ lpf->next = &lps->frag_list; -+ lpf->prev = lps->frag_list.prev; -+ lps->frag_list.prev = lpf; -+ lpf->fragP = fragP; -+ lpf->priority = (needed) ? (only_if_needed) ? 3 : 2 : 1; -+ lpf->original_priority = lpf->priority; -+ -+ lps->frag_count = 0; -+} -+ - static void - xtensa_cleanup_align_frags (void) - { -@@ -9029,7 +9266,41 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) - break; - - case RELAX_LITERAL_POOL_BEGIN: -+ if (fragP->fr_var != 0) -+ { -+ /* We have a converted "candidate" literal pool; -+ assemble a jump around it. */ -+ TInsn insn; -+ if (!litpool_slotbuf) -+ { -+ litpool_buf = xtensa_insnbuf_alloc (isa); -+ litpool_slotbuf = xtensa_insnbuf_alloc (isa); -+ } -+ new_stretch += 3; -+ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */ -+ fragP->tc_frag_data.is_insn = TRUE; -+ tinsn_init (&insn); -+ insn.insn_type = ITYPE_INSN; -+ insn.opcode = xtensa_j_opcode; -+ insn.ntok = 1; -+ set_expr_symbol_offset (&insn.tok[0], fragP->fr_symbol, -+ fragP->fr_fix); -+ fmt = xg_get_single_format (xtensa_j_opcode); -+ tinsn_to_slotbuf (fmt, 0, &insn, litpool_slotbuf); -+ xtensa_format_set_slot (isa, fmt, 0, litpool_buf, litpool_slotbuf); -+ xtensa_insnbuf_to_chars (isa, litpool_buf, -+ (unsigned char *)fragP->fr_literal + -+ fragP->fr_fix, 3); -+ fragP->fr_fix += 3; -+ fragP->fr_var -= 3; -+ /* Add a fix-up. */ -+ fix_new (fragP, 0, 3, fragP->fr_symbol, 0, TRUE, -+ BFD_RELOC_XTENSA_SLOT0_OP); -+ } -+ break; -+ - case RELAX_LITERAL_POOL_END: -+ case RELAX_LITERAL_POOL_CANDIDATE_BEGIN: - case RELAX_MAYBE_UNREACHABLE: - case RELAX_MAYBE_DESIRE_ALIGN: - /* No relaxation required. */ -@@ -10789,12 +11060,115 @@ xtensa_move_literals (void) - segT dest_seg; - fixS *fix, *next_fix, **fix_splice; - sym_list *lit; -+ struct litpool_seg *lps; - - mark_literal_frags (literal_head->next); - - if (use_literal_section) - return; - -+ /* Assign addresses (rough estimates) to the potential literal pool locations -+ and create new ones if the gaps are too large. */ -+ -+ for (lps = litpool_seg_list.next; lps; lps = lps->next) -+ { -+ frchainS *frchP = seg_info (lps->seg)->frchainP; -+ struct litpool_frag *lpf = lps->frag_list.next; -+ addressT addr = 0; -+ -+ for ( ; frchP; frchP = frchP->frch_next) -+ { -+ fragS *fragP; -+ for (fragP = frchP->frch_root; fragP; fragP = fragP->fr_next) -+ { -+ if (lpf && fragP == lpf->fragP) -+ { -+ gas_assert(fragP->fr_type == rs_machine_dependent && -+ (fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN || -+ fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN)); -+ /* Found a litpool location. */ -+ lpf->addr = addr; -+ lpf = lpf->next; -+ } -+ if (fragP->fr_type == rs_machine_dependent && -+ fragP->fr_subtype == RELAX_SLOTS) -+ { -+ int slot; -+ for (slot = 0; slot < MAX_SLOTS; slot++) -+ { -+ if (fragP->tc_frag_data.literal_frags[slot]) -+ { -+ /* L32R; point its literal to the nearest litpool -+ preferring non-"candidate" positions to avoid -+ the jump-around. */ -+ fragS *litfrag = fragP->tc_frag_data.literal_frags[slot]; -+ struct litpool_frag *lp = lpf->prev; -+ if (!lp->fragP) -+ { -+ break; -+ } -+ while (lp->fragP->fr_subtype == -+ RELAX_LITERAL_POOL_CANDIDATE_BEGIN) -+ { -+ lp = lp->prev; -+ if (lp->fragP == NULL) -+ { -+ /* End of list; have to bite the bullet. -+ Take the nearest. */ -+ lp = lpf->prev; -+ break; -+ } -+ /* Does it (conservatively) reach? */ -+ if (addr - lp->addr <= 128 * 1024) -+ { -+ if (lp->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) -+ { -+ /* Found a good one. */ -+ break; -+ } -+ else if (lp->prev->fragP && -+ addr - lp->prev->addr > 128 * 1024) -+ { -+ /* This is still a "candidate" but the next one -+ will be too far away, so revert to the nearest -+ one, convert it and add the jump around. */ -+ fragS *poolbeg; -+ fragS *poolend; -+ symbolS *lsym; -+ char label[10 + 2 * sizeof (fragS *)]; -+ lp = lpf->prev; -+ poolbeg = lp->fragP; -+ lp->priority = 1; -+ poolbeg->fr_subtype = RELAX_LITERAL_POOL_BEGIN; -+ poolend = poolbeg->fr_next; -+ gas_assert (poolend->fr_type == rs_machine_dependent && -+ poolend->fr_subtype == RELAX_LITERAL_POOL_END); -+ /* Create a local symbol pointing to the -+ end of the pool. */ -+ sprintf (label, ".L0_LT_%p", poolbeg); -+ lsym = (symbolS *)local_symbol_make (label, lps->seg, -+ 0, poolend); -+ poolbeg->fr_symbol = lsym; -+ /* Rest is done in xtensa_relax_frag. */ -+ } -+ } -+ } -+ if (! litfrag->tc_frag_data.literal_frag) -+ { -+ /* Take earliest use of this literal to avoid -+ forward refs. */ -+ litfrag->tc_frag_data.literal_frag = lp->fragP; -+ } -+ } -+ } -+ } -+ addr += fragP->fr_fix; -+ if (fragP->fr_type == rs_fill) -+ addr += fragP->fr_offset; -+ } -+ } -+ } -+ - for (segment = literal_head->next; segment; segment = segment->next) - { - /* Keep the literals for .init and .fini in separate sections. */ -@@ -10839,9 +11213,6 @@ xtensa_move_literals (void) - while (search_frag != frag_now) - { - next_frag = search_frag->fr_next; -- -- /* First, move the frag out of the literal section and -- to the appropriate place. */ - if (search_frag->tc_frag_data.literal_frag) - { - literal_pool = search_frag->tc_frag_data.literal_frag; -@@ -10849,8 +11220,56 @@ xtensa_move_literals (void) - frchain_to = literal_pool->tc_frag_data.lit_frchain; - gas_assert (frchain_to); - } -+ -+ if (search_frag->fr_type == rs_fill && search_frag->fr_fix == 0) -+ { -+ /* Skip empty fill frags. */ -+ *frag_splice = next_frag; -+ search_frag = next_frag; -+ continue; -+ } -+ -+ if (search_frag->fr_type == rs_align) -+ { -+ /* Skip alignment frags, because the pool as a whole will be -+ aligned if used, and we don't want to force alignment if the -+ pool is unused. */ -+ *frag_splice = next_frag; -+ search_frag = next_frag; -+ continue; -+ } -+ -+ /* First, move the frag out of the literal section and -+ to the appropriate place. */ -+ -+ /* Insert an aligmnent frag at start of pool. */ -+ if (literal_pool->fr_next->fr_type == rs_machine_dependent && -+ literal_pool->fr_next->fr_subtype == RELAX_LITERAL_POOL_END) -+ { -+ segT pool_seg = literal_pool->fr_next->tc_frag_data.lit_seg; -+ emit_state prev_state; -+ fragS *prev_frag; -+ fragS *align_frag; -+ xtensa_switch_section_emit_state (&prev_state, pool_seg, 0); -+ prev_frag = frag_now; -+ frag_variant (rs_fill, 0, 0, 0, NULL, 0, NULL); -+ align_frag = frag_now; -+ frag_align (2, 0, 0); -+ /* Splice it into the right place. */ -+ prev_frag->fr_next = align_frag->fr_next; -+ align_frag->fr_next = literal_pool->fr_next; -+ literal_pool->fr_next = align_frag; -+ /* Insert after this one. */ -+ literal_pool->tc_frag_data.literal_frag = align_frag; -+ xtensa_restore_emit_state (&prev_state); -+ } - insert_after = literal_pool->tc_frag_data.literal_frag; - dest_seg = insert_after->fr_next->tc_frag_data.lit_seg; -+ /* Skip align frag. */ -+ if (insert_after->fr_next->fr_type == rs_align) -+ { -+ insert_after = insert_after->fr_next; -+ } - - *frag_splice = next_frag; - search_frag->fr_next = insert_after->fr_next; -@@ -11014,7 +11433,10 @@ xtensa_switch_to_non_abs_literal_fragment (emit_state *result) - && !recursive - && !is_init && ! is_fini) - { -- as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); -+ if (!auto_litpools) -+ { -+ as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); -+ } - - /* When we mark a literal pool location, we want to put a frag in - the literal pool that points to it. But to do that, we want to -diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h -index b2e43fa..290d902 100644 ---- a/gas/config/tc-xtensa.h -+++ b/gas/config/tc-xtensa.h -@@ -124,6 +124,7 @@ enum xtensa_relax_statesE - - RELAX_LITERAL_POOL_BEGIN, - RELAX_LITERAL_POOL_END, -+ RELAX_LITERAL_POOL_CANDIDATE_BEGIN, - /* Technically these are not relaxations at all but mark a location - to store literals later. Note that fr_var stores the frchain for - BEGIN frags and fr_var stores now_seg for END frags. */ -diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp -index d197ec8..db39629 100644 ---- a/gas/testsuite/gas/xtensa/all.exp -+++ b/gas/testsuite/gas/xtensa/all.exp -@@ -100,5 +100,6 @@ if [istarget xtensa*-*-*] then { - run_dump_test "jlong" - run_dump_test "trampoline" -+ run_dump_test "auto-litpools" - } - - if [info exists errorInfo] then { -diff --git a/gas/testsuite/gas/xtensa/auto-litpools.d b/gas/testsuite/gas/xtensa/auto-litpools.d -new file mode 100644 -index 0000000..4d1a690 ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/auto-litpools.d -@@ -0,0 +1,12 @@ -+#as: --auto-litpools -+#objdump: -d -+#name: auto literal pool placement -+ -+.*: +file format .*xtensa.* -+#... -+.*4:.*l32r.a2, 0 .* -+#... -+.*3e437:.*j.3e440 .* -+#... -+.*40750:.*l32r.a2, 3e43c .* -+#... -diff --git a/gas/testsuite/gas/xtensa/auto-litpools.s b/gas/testsuite/gas/xtensa/auto-litpools.s -new file mode 100644 -index 0000000..9a5b26b ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/auto-litpools.s -@@ -0,0 +1,13 @@ -+ .text -+ .align 4 -+ .literal .L0, 0x12345 -+ .literal .L1, 0x12345 -+ -+f: -+ l32r a2, .L0 -+ .rep 44000 -+ _nop -+ _nop -+ .endr -+ l32r a2, .L1 -+ ret --- -1.8.1.4 - diff --git a/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch deleted file mode 100644 index bd751661b8..0000000000 --- a/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 2 Feb 2016 17:11:38 +0300 -Subject: [PATCH] xtensa: fix signedness of gas relocations - -Change 1058c7532d0b "Use signed data type for R_XTENSA_DIFF* relocation -offsets." changed signedness of BFD_RELOC_XTENSA_DIFF* relocations -substituted for BFD_RELOC_*. This made it impossible to encode arbitrary -8-, 16- and 32-bit values, which broke e.g. debug info encoding by .loc -directive. Revert this part and add test. - -gas/ -2016-02-03 Max Filippov - * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF* - substitutions for BFD_RELOC_* as unsigned. - -gas/testsuite/ -2016-02-03 Max Filippov - * gas/xtensa/all.exp: Add loc to list of xtensa tests. - * gas/xtensa/loc.d: New file: loc test result patterns. - * gas/xtensa/loc.s: New file: loc test. - -Signed-off-by: Max Filippov ---- - gas/config/tc-xtensa.c | 6 +++--- - gas/testsuite/gas/xtensa/all.exp | 1 + - gas/testsuite/gas/xtensa/loc.d | 10 ++++++++++ - gas/testsuite/gas/xtensa/loc.s | 7 +++++++ - 4 files changed, 21 insertions(+), 3 deletions(-) - create mode 100644 gas/testsuite/gas/xtensa/loc.d - create mode 100644 gas/testsuite/gas/xtensa/loc.s - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index a119871..36a06cc 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -5961,15 +5961,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) - { - case BFD_RELOC_8: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - case BFD_RELOC_16: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; -- fixP->fx_signed = 1; -+ fixP->fx_signed = 0; - break; - default: - break; -diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp -index 31b725b..7ff7bd7 100644 ---- a/gas/testsuite/gas/xtensa/all.exp -+++ b/gas/testsuite/gas/xtensa/all.exp -@@ -101,6 +101,7 @@ if [istarget xtensa*-*-*] then { - run_dump_test "trampoline" - run_dump_test "first_frag_align" - run_dump_test "auto-litpools" -+ run_dump_test "loc" - } - - if [info exists errorInfo] then { -diff --git a/gas/testsuite/gas/xtensa/loc.d b/gas/testsuite/gas/xtensa/loc.d -new file mode 100644 -index 0000000..71983cc ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/loc.d -@@ -0,0 +1,10 @@ -+#as: -+#objdump: -r -+#name: .loc directive relocs -+ -+.*: +file format .*xtensa.* -+ -+RELOCATION RECORDS FOR \[\.debug_line\]: -+#... -+.*R_XTENSA_DIFF16.*\.text\+0x00009c42 -+#... -diff --git a/gas/testsuite/gas/xtensa/loc.s b/gas/testsuite/gas/xtensa/loc.s -new file mode 100644 -index 0000000..029e14e ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/loc.s -@@ -0,0 +1,7 @@ -+ .text -+ .file 1 "loc.s" -+ .loc 1 3 -+ nop -+ .space 40000 -+ .loc 1 5 -+ nop --- -2.1.4 - diff --git a/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch deleted file mode 100644 index ead3e42b75..0000000000 --- a/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch +++ /dev/null @@ -1,149 +0,0 @@ -From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 16 Feb 2016 02:23:28 +0300 -Subject: [PATCH] xtensa: fix .init/.fini literals moving - -Despite the documentation and the comment in xtensa_move_literals, in -the presence of --text-section-literals and --auto-litpools literals are -moved from the separate literal sections into .init and .fini, because -the check in the xtensa_move_literals is incorrect. - -This moving was broken with introduction of auto litpools: some literals -now may be lost. This happens because literal frags emitted from .init -and .fini are not closed when new .literal_position marks new literal -pool. Then frag_align(2, 0, 0) changes type of the last literal frag to -rs_align. rs_align frags are skipped in the xtensa_move_literals. As a -result fixups against such literals are not moved out of .init.literal/ -.fini.literal sections producing the following assembler error: - - test.S: Warning: fixes not all moved from .init.literal - test.S: Internal error! - -Fix check for .init.literal/.fini.literal in the xtensa_move_literals -and don't let it move literals from there in the presence of ---text-section-literals or --auto-litpools. - -2016-02-17 Max Filippov -gas/ - * config/tc-xtensa.c (xtensa_move_literals): Fix check for - .init.literal/.fini.literal section name. - * testsuite/gas/xtensa/all.exp: Add init-fini-literals to the - list of xtensa tests. - * testsuite/gas/xtensa/init-fini-literals.d: New file: - init-fini-literals test result patterns. - * testsuite/gas/xtensa/init-fini-literals.s: New file: - init-fini-literals test. - -Signed-off-by: Max Filippov ---- -Backported from: 4111950f363221c4641dc2f33bea61cc94f34906 - - gas/config/tc-xtensa.c | 12 ++++++++++-- - gas/testsuite/gas/xtensa/all.exp | 1 + - gas/testsuite/gas/xtensa/init-fini-literals.d | 24 ++++++++++++++++++++++++ - gas/testsuite/gas/xtensa/init-fini-literals.s | 19 +++++++++++++++++++ - 4 files changed, 54 insertions(+), 2 deletions(-) - create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.d - create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.s - -diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c -index 36a06cc..5773634 100644 ---- a/gas/config/tc-xtensa.c -+++ b/gas/config/tc-xtensa.c -@@ -11061,6 +11061,10 @@ xtensa_move_literals (void) - fixS *fix, *next_fix, **fix_splice; - sym_list *lit; - struct litpool_seg *lps; -+ const char *init_name = INIT_SECTION_NAME; -+ const char *fini_name = FINI_SECTION_NAME; -+ int init_name_len = strlen(init_name); -+ int fini_name_len = strlen(fini_name); - - mark_literal_frags (literal_head->next); - -@@ -11171,9 +11175,13 @@ xtensa_move_literals (void) - - for (segment = literal_head->next; segment; segment = segment->next) - { -+ const char *seg_name = segment_name (segment->seg); -+ - /* Keep the literals for .init and .fini in separate sections. */ -- if (!strcmp (segment_name (segment->seg), INIT_SECTION_NAME) -- || !strcmp (segment_name (segment->seg), FINI_SECTION_NAME)) -+ if ((!memcmp (seg_name, init_name, init_name_len) && -+ !strcmp (seg_name + init_name_len, ".literal")) || -+ (!memcmp (seg_name, fini_name, fini_name_len) && -+ !strcmp (seg_name + fini_name_len, ".literal"))) - continue; - - frchain_from = seg_info (segment->seg)->frchainP; -diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp -index 7ff7bd7..6b67320 100644 ---- a/gas/testsuite/gas/xtensa/all.exp -+++ b/gas/testsuite/gas/xtensa/all.exp -@@ -102,6 +102,7 @@ if [istarget xtensa*-*-*] then { - run_dump_test "first_frag_align" - run_dump_test "auto-litpools" - run_dump_test "loc" -+ run_dump_test "init-fini-literals" - } - - if [info exists errorInfo] then { -diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.d b/gas/testsuite/gas/xtensa/init-fini-literals.d -new file mode 100644 -index 0000000..19ed121 ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/init-fini-literals.d -@@ -0,0 +1,24 @@ -+#as: --text-section-literals -+#objdump: -r -+#name: check that literals for .init and .fini always go to separate sections -+ -+.*: +file format .*xtensa.* -+#... -+RELOCATION RECORDS FOR \[\.init\.literal\]: -+#... -+00000000 R_XTENSA_PLT init -+#... -+RELOCATION RECORDS FOR \[\.fini\.literal\]: -+#... -+00000000 R_XTENSA_PLT fini -+#... -+RELOCATION RECORDS FOR \[\.init\]: -+#... -+.* R_XTENSA_SLOT0_OP \.init\.literal -+.* R_XTENSA_SLOT0_OP \.init\.literal\+0x00000004 -+#... -+RELOCATION RECORDS FOR \[\.fini\]: -+#... -+.* R_XTENSA_SLOT0_OP \.fini\.literal -+.* R_XTENSA_SLOT0_OP \.fini\.literal\+0x00000004 -+#... -diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.s b/gas/testsuite/gas/xtensa/init-fini-literals.s -new file mode 100644 -index 0000000..7c9ec17 ---- /dev/null -+++ b/gas/testsuite/gas/xtensa/init-fini-literals.s -@@ -0,0 +1,19 @@ -+ .section .init,"ax",@progbits -+ .literal_position -+ .literal .LC0, init@PLT -+ .literal_position -+ .literal .LC1, 1 -+ .align 4 -+ -+ l32r a2, .LC0 -+ l32r a2, .LC1 -+ -+ .section .fini,"ax",@progbits -+ .literal_position -+ .literal .LC2, fini@PLT -+ .literal_position -+ .literal .LC3, 1 -+ .align 4 -+ -+ l32r a2, .LC2 -+ l32r a2, .LC3 --- -2.1.4 - diff --git a/package/binutils/2.25.1/800-microblaze-musl.patch b/package/binutils/2.25.1/800-microblaze-musl.patch new file mode 100644 index 0000000000..34e69fd548 --- /dev/null +++ b/package/binutils/2.25.1/800-microblaze-musl.patch @@ -0,0 +1,22 @@ +Fix the genetation of GOT entries for the Microblaze target. + +PR target/19516 +* elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): +Always produce a RELATIVE reloc for a local symbol. + +[Taken from https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=47993b4af18c6ef1cad300f6393bf896d3cb5e5c.] +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.25.1.orig/bfd/elf32-microblaze.c binutils-2.25.1/bfd/elf32-microblaze.c +--- binutils-2.25.1.orig/bfd/elf32-microblaze.c 2015-07-21 10:20:58.000000000 +0200 ++++ binutils-2.25.1/bfd/elf32-microblaze.c 2016-02-14 11:38:45.822387506 +0100 +@@ -3293,8 +3293,7 @@ + The entry in the global offset table will already have been + initialized in the relocate_section function. */ + if (info->shared +- && (info->symbolic || h->dynindx == -1) +- && h->def_regular) ++ && ((info->symbolic && h->def_regular) || h->dynindx == -1)) + { + asection *sec = h->root.u.def.section; + microblaze_elf_output_dynamic_relocation (output_bfd, diff --git a/package/binutils/2.26/0120-sh-conf.patch b/package/binutils/2.26.1/0120-sh-conf.patch similarity index 100% rename from package/binutils/2.26/0120-sh-conf.patch rename to package/binutils/2.26.1/0120-sh-conf.patch diff --git a/package/binutils/2.26/0300-ld-makefile.patch b/package/binutils/2.26.1/0300-ld-makefile.patch similarity index 100% rename from package/binutils/2.26/0300-ld-makefile.patch rename to package/binutils/2.26.1/0300-ld-makefile.patch diff --git a/package/binutils/2.26/0301-check-ldrunpath-length.patch b/package/binutils/2.26.1/0301-check-ldrunpath-length.patch similarity index 100% rename from package/binutils/2.26/0301-check-ldrunpath-length.patch rename to package/binutils/2.26.1/0301-check-ldrunpath-length.patch diff --git a/package/binutils/2.26/0500-add-sysroot-fix-from-bug-3049.patch b/package/binutils/2.26.1/0500-add-sysroot-fix-from-bug-3049.patch similarity index 100% rename from package/binutils/2.26/0500-add-sysroot-fix-from-bug-3049.patch rename to package/binutils/2.26.1/0500-add-sysroot-fix-from-bug-3049.patch diff --git a/package/binutils/2.26/0600-poison-system-directories.patch b/package/binutils/2.26.1/0600-poison-system-directories.patch similarity index 100% rename from package/binutils/2.26/0600-poison-system-directories.patch rename to package/binutils/2.26.1/0600-poison-system-directories.patch diff --git a/package/binutils/2.26.1/0800-microblaze-musl.patch b/package/binutils/2.26.1/0800-microblaze-musl.patch new file mode 100644 index 0000000000..5e45058f6c --- /dev/null +++ b/package/binutils/2.26.1/0800-microblaze-musl.patch @@ -0,0 +1,23 @@ +Fix the genetation of GOT entries for the Microblaze target. + +PR target/19516 +* elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): +Always produce a RELATIVE reloc for a local symbol. + +[Taken from https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=47993b4af18c6ef1cad300f6393bf896d3cb5e5c.] +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.26.1.orig/bfd/elf32-microblaze.c binutils-2.26.1/bfd/elf32-microblaze.c +--- binutils-2.26.1.orig/bfd/elf32-microblaze.c 2015-11-13 09:27:40.000000000 +0100 ++++ binutils-2.26.1/bfd/elf32-microblaze.c 2016-10-20 19:06:58.655565765 +0200 +@@ -3296,8 +3296,8 @@ + The entry in the global offset table will already have been + initialized in the relocate_section function. */ + if (bfd_link_pic (info) +- && (info->symbolic || h->dynindx == -1) +- && h->def_regular) ++ && ((info->symbolic && h->def_regular) ++ || h->dynindx == -1)) + { + asection *sec = h->root.u.def.section; + microblaze_elf_output_dynamic_relocation (output_bfd, diff --git a/package/binutils/2.26/0900-Correct-nios2-_gp-address-computation.patch b/package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch similarity index 100% rename from package/binutils/2.26/0900-Correct-nios2-_gp-address-computation.patch rename to package/binutils/2.26.1/0900-Correct-nios2-_gp-address-computation.patch diff --git a/package/binutils/2.26/0901-Fix-assertion-reduce-number-of-messages-about-FDE-en.patch b/package/binutils/2.26.1/0901-Fix-assertion-reduce-number-of-messages-about-FDE-en.patch similarity index 100% rename from package/binutils/2.26/0901-Fix-assertion-reduce-number-of-messages-about-FDE-en.patch rename to package/binutils/2.26.1/0901-Fix-assertion-reduce-number-of-messages-about-FDE-en.patch diff --git a/package/binutils/2.26/0902-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.26.1/0902-xtensa-fix-signedness-of-gas-relocations.patch similarity index 100% rename from package/binutils/2.26/0902-xtensa-fix-signedness-of-gas-relocations.patch rename to package/binutils/2.26.1/0902-xtensa-fix-signedness-of-gas-relocations.patch diff --git a/package/binutils/2.26/0903-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.26.1/0903-xtensa-fix-.init-.fini-literals-moving.patch similarity index 100% rename from package/binutils/2.26/0903-xtensa-fix-.init-.fini-literals-moving.patch rename to package/binutils/2.26.1/0903-xtensa-fix-.init-.fini-literals-moving.patch diff --git a/package/binutils/2.26.1/0904-bfin-fdpic-upstream.patch b/package/binutils/2.26.1/0904-bfin-fdpic-upstream.patch new file mode 100644 index 0000000000..ffbacc4c0e --- /dev/null +++ b/package/binutils/2.26.1/0904-bfin-fdpic-upstream.patch @@ -0,0 +1,30 @@ +From ed3056ebdb9795446157af03d3e08fbb93c1b01d Mon Sep 17 00:00:00 2001 +From: Nick Clifton +Date: Tue, 29 Mar 2016 10:24:16 +0100 +Subject: [PATCH] Relax assertion in BFIN linker to allow for discard GOT relocs. + + PR 17334 + * elf32-bfin.c (elf32_bfinfdpic_finish_dynamic_sections): Relax + assertion on the size of the got section to allow it to be bigger + than the number of relocs. +diff --git a/bfd/elf32-bfin.c b/bfd/elf32-bfin.c +index 7cc8b6d..b2fcf38 100644 +--- a/bfd/elf32-bfin.c ++++ b/bfd/elf32-bfin.c +@@ -4457,7 +4457,13 @@ elf32_bfinfdpic_finish_dynamic_sections (bfd *output_bfd, + if (bfinfdpic_got_section (info)) + { + BFD_ASSERT (bfinfdpic_gotrel_section (info)->size +- == (bfinfdpic_gotrel_section (info)->reloc_count ++ /* PR 17334: It appears that the GOT section can end up ++ being bigger than the number of relocs. Presumably ++ because some relocs have been deleted. A test case has ++ yet to be generated for verify this, but in the meantime ++ the test below has been changed from == to >= so that ++ applications can continue to be built. */ ++ >= (bfinfdpic_gotrel_section (info)->reloc_count + * sizeof (Elf32_External_Rel))); + + if (bfinfdpic_gotfixup_section (info)) +-- +1.7.1 diff --git a/package/binutils/2.26.1/0905-bfin-rofixup-bug.patch b/package/binutils/2.26.1/0905-bfin-rofixup-bug.patch new file mode 100644 index 0000000000..da9d586551 --- /dev/null +++ b/package/binutils/2.26.1/0905-bfin-rofixup-bug.patch @@ -0,0 +1,21 @@ +Fixes: LINKER BUG: .rofixup section size mismatch + +Workaround from adi-toolchain commit: +af414ec1fb628ddb1562f062f3db49823ca14ca2 +[#6798] binutils-2.21/bfd: temp workaround for rofixup mismatch errors. + +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.26.1.orig/bfd/elf32-bfin.c binutils-2.26.1/bfd/elf32-bfin.c +--- binutils-2.26.1.orig/bfd/elf32-bfin.c 2015-11-13 09:27:40.000000000 +0100 ++++ binutils-2.26.1/bfd/elf32-bfin.c 2016-07-31 00:50:48.357995132 +0200 +@@ -4879,7 +4879,8 @@ + + case R_BFIN_FUNCDESC: + picrel->fd++; +- picrel->relocsfd++; ++ if (bfd_get_section_flags (abfd, sec) & SEC_ALLOC) ++ picrel->relocsfd++; + break; + + /* This relocation describes the C++ object vtable hierarchy. diff --git a/package/binutils/2.27/0100-elf32-arm-no-data-fix.patch b/package/binutils/2.27/0100-elf32-arm-no-data-fix.patch new file mode 100644 index 0000000000..c6b0e7efe8 --- /dev/null +++ b/package/binutils/2.27/0100-elf32-arm-no-data-fix.patch @@ -0,0 +1,22 @@ +bfd/ChangeLog +2016-08-23 Nick Clifton + + * elf32-arm.c (elf32_arm_count_additional_relocs): Return zero if + there is no arm data associated with the section. + +[Thomas: taken from https://lists.gnu.org/archive/html/bug-binutils/2016-08/msg00165.html.] +Signed-off-by: Thomas Petazzoni + +diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c +index 1eba21b..4478238 100644 +--- a/bfd/elf32-arm.c ++++ b/bfd/elf32-arm.c +@@ -18688,7 +18688,7 @@ elf32_arm_count_additional_relocs (asection *sec) + { + struct _arm_elf_section_data *arm_data; + arm_data = get_arm_elf_section_data (sec); +- return arm_data->additional_reloc_count; ++ return arm_data == NULL ? 0 : arm_data->additional_reloc_count; + } + + /* Called to set the sh_flags, sh_link and sh_info fields of OSECTION which diff --git a/package/binutils/2.27/0120-sh-conf.patch b/package/binutils/2.27/0120-sh-conf.patch new file mode 100644 index 0000000000..cc14ef4029 --- /dev/null +++ b/package/binutils/2.27/0120-sh-conf.patch @@ -0,0 +1,46 @@ +From 1ceee199e9a32034c6def7700fdbb26335ca76a3 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:38:13 +0100 +Subject: [PATCH] sh-conf + +Likewise, binutils has no idea about any of these new targets either, so we +fix that up too.. now we're able to actually build a real toolchain for +sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more +inept targets than that one, really. Go look, I promise). + +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + configure | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 34b66f7..905bc7b 100755 +--- a/configure ++++ b/configure +@@ -3939,7 +3939,7 @@ case "${target}" in + or1k*-*-*) + noconfigdirs="$noconfigdirs gdb" + ;; +- sh-*-* | sh64-*-*) ++ sh*-*-* | sh64-*-*) + case "${target}" in + sh*-*-elf) + ;; +diff --git a/configure.ac b/configure.ac +index 4977d97..1e69ee2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1276,7 +1276,7 @@ case "${target}" in + or1k*-*-*) + noconfigdirs="$noconfigdirs gdb" + ;; +- sh-*-* | sh64-*-*) ++ sh*-*-* | sh64-*-*) + case "${target}" in + sh*-*-elf) + ;; +-- +2.4.3 + diff --git a/package/binutils/2.27/0130-tc-xtensa.c-fixup-xg_reverse_shift_count-typo.patch b/package/binutils/2.27/0130-tc-xtensa.c-fixup-xg_reverse_shift_count-typo.patch new file mode 100644 index 0000000000..7973607884 --- /dev/null +++ b/package/binutils/2.27/0130-tc-xtensa.c-fixup-xg_reverse_shift_count-typo.patch @@ -0,0 +1,33 @@ +From 78fb7e37eb8bb08ae537d6c487996ff17c810332 Mon Sep 17 00:00:00 2001 +From: Trevor Saunders +Date: Mon, 26 Sep 2016 12:42:11 -0400 +Subject: [PATCH] tc-xtensa.c: fixup xg_reverse_shift_count typo + +gas/ChangeLog: + +2016-09-26 Trevor Saunders + + * config/tc-xtensa.c (xg_reverse_shift_count): Pass cnt_arg instead of + cnt_argp to concat. + +Signed-off-by: Max Filippov +--- + gas/config/tc-xtensa.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index d062044..ca261ae 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -2228,7 +2228,7 @@ xg_reverse_shift_count (char **cnt_argp) + cnt_arg = *cnt_argp; + + /* replace the argument with "31-(argument)" */ +- new_arg = concat ("31-(", cnt_argp, ")", (char *) NULL); ++ new_arg = concat ("31-(", cnt_arg, ")", (char *) NULL); + + free (cnt_arg); + *cnt_argp = new_arg; +-- +2.1.4 + diff --git a/package/binutils/2.27/0300-ld-makefile.patch b/package/binutils/2.27/0300-ld-makefile.patch new file mode 100644 index 0000000000..73cc098024 --- /dev/null +++ b/package/binutils/2.27/0300-ld-makefile.patch @@ -0,0 +1,41 @@ +From d76a7549b43974fe8564971a3f40459bc495a8a7 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:40:53 +0100 +Subject: [PATCH] ld-makefile + +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/Makefile.am | 2 +- + ld/Makefile.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/ld/Makefile.am b/ld/Makefile.am +index 0b3b049..3871c74 100644 +--- a/ld/Makefile.am ++++ b/ld/Makefile.am +@@ -57,7 +57,7 @@ endif + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) + + EMUL = @EMUL@ + EMULATION_OFILES = @EMULATION_OFILES@ +diff --git a/ld/Makefile.in b/ld/Makefile.in +index ed98f87..530e4c9 100644 +--- a/ld/Makefile.in ++++ b/ld/Makefile.in +@@ -413,7 +413,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) + BASEDIR = $(srcdir)/.. + BFDDIR = $(BASEDIR)/bfd + INCDIR = $(BASEDIR)/include +-- +2.4.3 + diff --git a/package/binutils/2.27/0301-check-ldrunpath-length.patch b/package/binutils/2.27/0301-check-ldrunpath-length.patch new file mode 100644 index 0000000000..3b4c204c7f --- /dev/null +++ b/package/binutils/2.27/0301-check-ldrunpath-length.patch @@ -0,0 +1,36 @@ +From ebe1cba46df52d7bf86def3d681271fd05fb453b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:41:47 +0100 +Subject: [PATCH] check-ldrunpath-length + +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/emultempl/elf32.em | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em +index 0405d4f..efd3300 100644 +--- a/ld/emultempl/elf32.em ++++ b/ld/emultempl/elf32.em +@@ -1242,6 +1242,8 @@ fragment <link.next) + if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) +-- +2.4.3 + diff --git a/package/binutils/2.24/500-sysroot.patch b/package/binutils/2.27/0500-add-sysroot-fix-from-bug-3049.patch similarity index 69% rename from package/binutils/2.24/500-sysroot.patch rename to package/binutils/2.27/0500-add-sysroot-fix-from-bug-3049.patch index e49c795332..f67a43efdf 100644 --- a/package/binutils/2.24/500-sysroot.patch +++ b/package/binutils/2.27/0500-add-sysroot-fix-from-bug-3049.patch @@ -1,13 +1,25 @@ -Signed-off-by: Sven Rebhan +From 30628870e583375f8927c04398c7219c6e9f703c Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:42:48 +0100 +Subject: [PATCH] add sysroot fix from bug #3049 Always try to prepend the sysroot prefix to absolute filenames first. http://bugs.gentoo.org/275666 http://sourceware.org/bugzilla/show_bug.cgi?id=10340 +Signed-off-by: Sven Rebhan +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/ldfile.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/ld/ldfile.c b/ld/ldfile.c +index 96f9ecc..1439309 100644 --- a/ld/ldfile.c +++ b/ld/ldfile.c -@@ -308,18 +308,25 @@ +@@ -335,18 +335,25 @@ ldfile_open_file_search (const char *arch, directory first. */ if (! entry->flags.maybe_archive) { @@ -35,3 +47,6 @@ http://sourceware.org/bugzilla/show_bug.cgi?id=10340 return TRUE; if (IS_ABSOLUTE_PATH (entry->filename)) +-- +2.4.3 + diff --git a/package/binutils/2.24/600-poison-system-directories.patch b/package/binutils/2.27/0600-poison-system-directories.patch similarity index 70% rename from package/binutils/2.24/600-poison-system-directories.patch rename to package/binutils/2.27/0600-poison-system-directories.patch index 6a3bf6be87..d16994ec0c 100644 --- a/package/binutils/2.24/600-poison-system-directories.patch +++ b/package/binutils/2.27/0600-poison-system-directories.patch @@ -1,7 +1,16 @@ +From be366461dd49e760440fb28eaee5164eb281adcc Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:45:38 +0100 +Subject: [PATCH] poison-system-directories + Patch adapted to binutils 2.23.2 and extended to use BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +[Gustavo: adapt to binutils 2.25] Signed-off-by: Thomas Petazzoni +Signed-off-by: Gustavo Zacarias Upstream-Status: Inappropriate [distribution: codesourcery] @@ -48,7 +57,7 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 2007-03-20 Joseph Myers Based on patch by Mark Hatle . ld/ - * configure.in (--enable-poison-system-directories): New option. + * configure.ac (--enable-poison-system-directories): New option. * configure, config.in: Regenerate. * ldfile.c (ldfile_add_library_path): If ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, @@ -56,12 +65,23 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 Signed-off-by: Mark Hatle Signed-off-by: Scott Garman +--- + ld/config.in | 3 +++ + ld/configure | 14 ++++++++++++++ + ld/configure.ac | 10 ++++++++++ + ld/ld.h | 8 ++++++++ + ld/ld.texinfo | 12 ++++++++++++ + ld/ldfile.c | 17 +++++++++++++++++ + ld/ldlex.h | 2 ++ + ld/ldmain.c | 2 ++ + ld/lexsup.c | 21 +++++++++++++++++++++ + 9 files changed, 89 insertions(+) -Index: b/ld/config.in -=================================================================== +diff --git a/ld/config.in b/ld/config.in +index 276fb77..35c58eb 100644 --- a/ld/config.in +++ b/ld/config.in -@@ -11,6 +11,9 @@ +@@ -14,6 +14,9 @@ language is requested. */ #undef ENABLE_NLS @@ -71,20 +91,20 @@ Index: b/ld/config.in /* Additional extension a shared object might have. */ #undef EXTRA_SHLIB_EXTENSION -Index: b/ld/configure -=================================================================== +diff --git a/ld/configure b/ld/configure +index a446283..d1f9504 100755 --- a/ld/configure +++ b/ld/configure -@@ -774,6 +774,7 @@ +@@ -786,6 +786,7 @@ with_lib_path enable_targets enable_64_bit_bfd with_sysroot +enable_poison_system_directories enable_gold enable_got - enable_werror -@@ -1429,6 +1430,8 @@ - (and sometimes confusing) to the casual installer + enable_compressed_debug_sections +@@ -1442,6 +1443,8 @@ Optional Features: + --disable-largefile omit support for large files --enable-targets alternative target configurations --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes) + --enable-poison-system-directories @@ -92,7 +112,7 @@ Index: b/ld/configure --enable-gold[=ARG] build gold [ARG={default,yes,no}] --enable-got= GOT handling scheme (target, single, negative, multigot) -@@ -4339,7 +4342,18 @@ +@@ -15491,7 +15494,18 @@ else fi @@ -111,11 +131,11 @@ Index: b/ld/configure # Check whether --enable-got was given. if test "${enable_got+set}" = set; then : -Index: b/ld/configure.in -=================================================================== ---- a/ld/configure.in -+++ b/ld/configure.in -@@ -87,6 +87,16 @@ +diff --git a/ld/configure.ac b/ld/configure.ac +index 188172d..2cd8443 100644 +--- a/ld/configure.ac ++++ b/ld/configure.ac +@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot) AC_SUBST(TARGET_SYSTEM_ROOT) AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) @@ -132,11 +152,53 @@ Index: b/ld/configure.in dnl Use --enable-gold to decide if this linker should be the default. dnl "install_as_default" is set to false if gold is the default linker. dnl "installed_linker" is the installed BFD linker name. -Index: b/ld/ldfile.c -=================================================================== +diff --git a/ld/ld.h b/ld/ld.h +index d84ec4e..3476b26 100644 +--- a/ld/ld.h ++++ b/ld/ld.h +@@ -164,6 +164,14 @@ typedef struct { + /* If set, display the target memory usage (per memory region). */ + bfd_boolean print_memory_usage; + ++ /* If TRUE (the default) warn for uses of system directories when ++ cross linking. */ ++ bfd_boolean poison_system_directories; ++ ++ /* If TRUE (default FALSE) give an error for uses of system ++ directories when cross linking instead of a warning. */ ++ bfd_boolean error_poison_system_directories; ++ + /* Big or little endian as set on command line. */ + enum endian_enum endian; + +diff --git a/ld/ld.texinfo b/ld/ld.texinfo +index 1dd7492..fb1438e 100644 +--- a/ld/ld.texinfo ++++ b/ld/ld.texinfo +@@ -2332,6 +2332,18 @@ string identifying the original linked file does not change. + + Passing @code{none} for @var{style} disables the setting from any + @code{--build-id} options earlier on the command line. ++ ++@kindex --no-poison-system-directories ++@item --no-poison-system-directories ++Do not warn for @option{-L} options using system directories such as ++@file{/usr/lib} when cross linking. This option is intended for use ++in chroot environments when such directories contain the correct ++libraries for the target system rather than the host. ++ ++@kindex --error-poison-system-directories ++@item --error-poison-system-directories ++Give an error instead of a warning for @option{-L} options using ++system directories when cross linking. + @end table + + @c man end +diff --git a/ld/ldfile.c b/ld/ldfile.c +index 1439309..086b354 100644 --- a/ld/ldfile.c +++ b/ld/ldfile.c -@@ -116,6 +116,23 @@ +@@ -114,6 +114,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline) new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL); else new_dirs->name = xstrdup (name); @@ -160,30 +222,24 @@ Index: b/ld/ldfile.c } /* Try to open a BFD for a lang_input_statement. */ -Index: b/ld/ld.h -=================================================================== ---- a/ld/ld.h -+++ b/ld/ld.h -@@ -180,6 +180,14 @@ - /* If TRUE we'll just print the default output on stdout. */ - bfd_boolean print_output_format; +diff --git a/ld/ldlex.h b/ld/ldlex.h +index 6f11e7b..0ca3110 100644 +--- a/ld/ldlex.h ++++ b/ld/ldlex.h +@@ -144,6 +144,8 @@ enum option_values + OPTION_PRINT_MEMORY_USAGE, + OPTION_REQUIRE_DEFINED_SYMBOL, + OPTION_ORPHAN_HANDLING, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, + }; -+ /* If TRUE (the default) warn for uses of system directories when -+ cross linking. */ -+ bfd_boolean poison_system_directories; -+ -+ /* If TRUE (default FALSE) give an error for uses of system -+ directories when cross linking instead of a warning. */ -+ bfd_boolean error_poison_system_directories; -+ - /* Big or little endian as set on command line. */ - enum endian_enum endian; - -Index: b/ld/ldmain.c -=================================================================== + /* The initial parser states. */ +diff --git a/ld/ldmain.c b/ld/ldmain.c +index bb0b9cc..a23c56c 100644 --- a/ld/ldmain.c +++ b/ld/ldmain.c -@@ -266,6 +266,8 @@ +@@ -257,6 +257,8 @@ main (int argc, char **argv) command_line.warn_mismatch = TRUE; command_line.warn_search_mismatch = TRUE; command_line.check_section_addresses = -1; @@ -192,49 +248,26 @@ Index: b/ld/ldmain.c /* We initialize DEMANGLING based on the environment variable COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -Index: b/ld/ld.texinfo -=================================================================== ---- a/ld/ld.texinfo -+++ b/ld/ld.texinfo -@@ -2175,6 +2175,18 @@ - - Passing @code{none} for @var{style} disables the setting from any - @code{--build-id} options earlier on the command line. -+ -+@kindex --no-poison-system-directories -+@item --no-poison-system-directories -+Do not warn for @option{-L} options using system directories such as -+@file{/usr/lib} when cross linking. This option is intended for use -+in chroot environments when such directories contain the correct -+libraries for the target system rather than the host. -+ -+@kindex --error-poison-system-directories -+@item --error-poison-system-directories -+Give an error instead of a warning for @option{-L} options using -+system directories when cross linking. - @end table - - @c man end -Index: b/ld/lexsup.c -=================================================================== +diff --git a/ld/lexsup.c b/ld/lexsup.c +index 4cad209..be7d584 100644 --- a/ld/lexsup.c +++ b/ld/lexsup.c -@@ -507,6 +507,14 @@ - OPTION_IGNORE_UNRESOLVED_SYMBOL}, - '\0', N_("SYMBOL"), - N_("Unresolved SYMBOL will not cause an error or warning"), TWO_DASHES }, +@@ -530,6 +530,14 @@ static const struct ld_option ld_options[] = + { {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING}, + '\0', N_("=MODE"), N_("Control how orphan sections are handled."), + TWO_DASHES }, + { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, + '\0', NULL, N_("Do not warn for -L options using system directories"), + TWO_DASHES }, + { {"error-poison-system-directories", no_argument, NULL, -+ + OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, + '\0', NULL, N_("Give an error for -L options using system directories"), + TWO_DASHES }, }; #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -519,6 +527,7 @@ +@@ -542,6 +550,7 @@ parse_args (unsigned argc, char **argv) int ingroup = 0; char *default_dirlist = NULL; char *shortopts; @@ -242,19 +275,23 @@ Index: b/ld/lexsup.c struct option *longopts; struct option *really_longopts; int last_optind; -@@ -1442,9 +1451,21 @@ - einfo (_("%P%X: --hash-size needs a numeric argument\n")); +@@ -1516,6 +1525,14 @@ parse_args (unsigned argc, char **argv) } break; + ++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: ++ command_line.poison_system_directories = FALSE; ++ break; + -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = FALSE; -+ break; ++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: ++ command_line.error_poison_system_directories = TRUE; ++ break; + -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = TRUE; -+ break; - } + case OPTION_PUSH_STATE: + input_flags.pushed = xmemdup (&input_flags, + sizeof (input_flags), +@@ -1559,6 +1576,10 @@ parse_args (unsigned argc, char **argv) + command_line.soname = NULL; } + BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); @@ -264,16 +301,6 @@ Index: b/ld/lexsup.c while (ingroup) { lang_leave_group (); -Index: b/ld/ldlex.h -=================================================================== ---- a/ld/ldlex.h -+++ b/ld/ldlex.h -@@ -138,6 +138,8 @@ - OPTION_DEFAULT_SCRIPT, - OPTION_PRINT_OUTPUT_FORMAT, - OPTION_IGNORE_UNRESOLVED_SYMBOL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, - }; - - /* The initial parser states. */ +-- +2.4.3 + diff --git a/package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch b/package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch new file mode 100644 index 0000000000..f1ec259988 --- /dev/null +++ b/package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch @@ -0,0 +1,36 @@ +From c646b02fdcae5f37bd88f33a0c4683ef13ad5c82 Mon Sep 17 00:00:00 2001 +From: Alan Modra +Date: Mon, 31 Oct 2016 12:46:38 +1030 +Subject: [PATCH] Revert part "Set dynamic tag VMA and size from dynamic + section when possible" + + PR 20748 + * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Revert + 2016-05-13 change. + +Signed-off-by: Alan Modra +Signed-off-by: Waldemar Brodkorb + +diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c +index 477e7b3..5c66808 100644 +--- a/bfd/elf32-microblaze.c ++++ b/bfd/elf32-microblaze.c +@@ -3396,13 +3396,13 @@ microblaze_elf_finish_dynamic_sections (bfd *output_bfd, + { + asection *s; + +- s = bfd_get_linker_section (dynobj, name); ++ s = bfd_get_section_by_name (output_bfd, name); + if (s == NULL) + dyn.d_un.d_val = 0; + else + { + if (! size) +- dyn.d_un.d_ptr = s->output_section->vma + s->output_offset; ++ dyn.d_un.d_ptr = s->vma; + else + dyn.d_un.d_val = s->size; + } +-- +2.1.4 + diff --git a/package/binutils/2.27/0905-bfin-rofixup-bug.patch b/package/binutils/2.27/0905-bfin-rofixup-bug.patch new file mode 100644 index 0000000000..da9d586551 --- /dev/null +++ b/package/binutils/2.27/0905-bfin-rofixup-bug.patch @@ -0,0 +1,21 @@ +Fixes: LINKER BUG: .rofixup section size mismatch + +Workaround from adi-toolchain commit: +af414ec1fb628ddb1562f062f3db49823ca14ca2 +[#6798] binutils-2.21/bfd: temp workaround for rofixup mismatch errors. + +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.26.1.orig/bfd/elf32-bfin.c binutils-2.26.1/bfd/elf32-bfin.c +--- binutils-2.26.1.orig/bfd/elf32-bfin.c 2015-11-13 09:27:40.000000000 +0100 ++++ binutils-2.26.1/bfd/elf32-bfin.c 2016-07-31 00:50:48.357995132 +0200 +@@ -4879,7 +4879,8 @@ + + case R_BFIN_FUNCDESC: + picrel->fd++; +- picrel->relocsfd++; ++ if (bfd_get_section_flags (abfd, sec) & SEC_ALLOC) ++ picrel->relocsfd++; + break; + + /* This relocation describes the C++ object vtable hierarchy. diff --git a/package/binutils/Config.in b/package/binutils/Config.in index 64d0a09c10..fdfdfe9052 100644 --- a/package/binutils/Config.in +++ b/package/binutils/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_BINUTILS bool "binutils" select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE - depends on !BR2_aarch64 && !BR2_nios2 + depends on !BR2_nios2 depends on BR2_USE_WCHAR help Install binutils on the target @@ -22,5 +22,5 @@ config BR2_PACKAGE_BINUTILS_TARGET endif comment "binutils needs a toolchain w/ wchar" - depends on !BR2_aarch64 && !BR2_nios2 + depends on !BR2_nios2 depends on !BR2_USE_WCHAR diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index e42918e9fa..99a4a9650b 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -3,43 +3,29 @@ comment "Binutils Options" choice prompt "Binutils Version" depends on !BR2_arc - default BR2_BINUTILS_VERSION_2_25_X + default BR2_BINUTILS_VERSION_2_26_X help Select the version of binutils you wish to use. - config BR2_BINUTILS_VERSION_2_23_X - depends on !BR2_aarch64 && !BR2_microblaze && \ - !BR2_powerpc64le && !BR2_nios2 - # Unsupported for MIPS R6 - depends on !BR2_mips_32r6 && !BR2_mips_64r6 - # Unsupported ARM cores - depends on !BR2_cortex_a17 - bool "binutils 2.23.2" - - config BR2_BINUTILS_VERSION_2_24_X - # supported, but broken on Nios-II and powerpc64le - depends on !BR2_nios2 && !BR2_powerpc64le - # Unsupported for MIPS R6 - depends on !BR2_mips_32r6 && !BR2_mips_64r6 - # Unsupported ARM cores - depends on !BR2_cortex_a17 - bool "binutils 2.24" - config BR2_BINUTILS_VERSION_2_25_X bool "binutils 2.25.1" + # supported but broken on Blackfin + depends on !BR2_bfin config BR2_BINUTILS_VERSION_2_26_X - bool "binutils 2.26" + bool "binutils 2.26.1" + + config BR2_BINUTILS_VERSION_2_27_X + bool "binutils 2.27" endchoice config BR2_BINUTILS_VERSION string - default "arc-2015.12" if BR2_arc - default "2.23.2" if BR2_BINUTILS_VERSION_2_23_X - default "2.24" if BR2_BINUTILS_VERSION_2_24_X + default "arc-2016.09-release" if BR2_arc default "2.25.1" if BR2_BINUTILS_VERSION_2_25_X - default "2.26" if BR2_BINUTILS_VERSION_2_26_X + default "2.26.1" if BR2_BINUTILS_VERSION_2_26_X + default "2.27" if BR2_BINUTILS_VERSION_2_27_X config BR2_BINUTILS_ENABLE_LTO bool diff --git a/package/binutils/arc-2015.12/0001-PR-other-56780.patch b/package/binutils/arc-2015.12/0001-PR-other-56780.patch deleted file mode 100644 index b418a2f4a9..0000000000 --- a/package/binutils/arc-2015.12/0001-PR-other-56780.patch +++ /dev/null @@ -1,236 +0,0 @@ -From 7827cdf59a1894abe18aa20043a63c8c875c3fce Mon Sep 17 00:00:00 2001 -From: DJ Delorie -Date: Sat, 1 Jun 2013 01:01:44 +0000 -Subject: [PATCH] PR other/56780 merge from gcc - -binutils-gdb upstream a4818a052efb4cea976a03a2f7cb0b38b23d12d0 - -libiberty: fix --enable-install-libiberty flag [PR 56780] - -Commit 199570 fixed the --disable-install-libiberty behavior, but it also -added a bug where the enable path never works because the initial clear -of target_header_dir wasn't deleted. So we end up initializing properly -at the top only to reset it at the end all the time. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206367 138bc75d-0d04-0410-961f-82ee72b054a4 - -[Romain - rename patch name - squash the two upstream commits - Remove the ChangeLog] -Signed-off-by: Romain Naour ---- - libiberty/Makefile.in | 24 ++++++++++----------- - libiberty/configure | 57 +++++++++++++++++++++++++++----------------------- - libiberty/configure.ac | 47 ++++++++++++++++++++++------------------- - 3 files changed, 68 insertions(+), 60 deletions(-) - -diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in -index 0a5da31..4f40c72 100644 ---- a/libiberty/Makefile.in -+++ b/libiberty/Makefile.in -@@ -354,19 +354,19 @@ install-strip: install - # since it will be passed the multilib flags. - MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory` - install_to_libdir: all -- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR) -- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n -- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ) -- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB) - if test -n "${target_header_dir}"; then \ -- case "${target_header_dir}" in \ -- /*) thd=${target_header_dir};; \ -- *) thd=${includedir}/${target_header_dir};; \ -- esac; \ -- ${mkinstalldirs} $(DESTDIR)$${thd}; \ -- for h in ${INSTALLED_HEADERS}; do \ -- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -- done; \ -+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \ -+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \ -+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \ -+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \ -+ case "${target_header_dir}" in \ -+ /*) thd=${target_header_dir};; \ -+ *) thd=${includedir}/${target_header_dir};; \ -+ esac; \ -+ ${mkinstalldirs} $(DESTDIR)$${thd}; \ -+ for h in ${INSTALLED_HEADERS}; do \ -+ ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -+ done; \ - fi - @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install - -diff --git a/libiberty/configure b/libiberty/configure -index 6e98352..44d1f78 100755 ---- a/libiberty/configure -+++ b/libiberty/configure -@@ -675,8 +675,8 @@ with_cross_host - with_newlib - enable_maintainer_mode - enable_multilib --enable_largefile - enable_install_libiberty -+enable_largefile - ' - ac_precious_vars='build_alias - host_alias -@@ -1303,8 +1303,8 @@ Optional Features: - enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --enable-multilib build many library versions (default) -+ --enable-install-libiberty Install headers and library for end users - --disable-largefile omit support for large files -- --enable-install-libiberty Install headers for end users - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -2784,6 +2784,35 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to install libiberty headers and static library" >&5 -+$as_echo_n "checking whether to install libiberty headers and static library... " >&6; } -+ -+# Check whether --enable-install-libiberty was given. -+if test "${enable_install_libiberty+set}" = set; then : -+ enableval=$enable_install_libiberty; enable_install_libiberty=$enableval -+else -+ enable_install_libiberty=no -+fi -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_install_libiberty" >&5 -+$as_echo "$enable_install_libiberty" >&6; } -+{ $as_echo "$as_me:${as_lineno-$LINENO}: target_header_dir = $target_header_dir" >&5 -+$as_echo "$as_me: target_header_dir = $target_header_dir" >&6;} -+ - - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -5475,7 +5504,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -5752,29 +5780,6 @@ _ACEOF - - esac - -- # We may wish to install the target headers somewhere. -- # Check whether --enable-install-libiberty was given. --if test "${enable_install_libiberty+set}" = set; then : -- enableval=$enable_install_libiberty; enable_install_libiberty=$enableval --else -- enable_install_libiberty=no --fi -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. -diff --git a/libiberty/configure.ac b/libiberty/configure.ac -index 754b66a..04260ec 100644 ---- a/libiberty/configure.ac -+++ b/libiberty/configure.ac -@@ -128,6 +128,31 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+AC_MSG_CHECKING([whether to install libiberty headers and static library]) -+dnl install-libiberty is disabled by default -+ -+AC_ARG_ENABLE(install-libiberty, -+[ --enable-install-libiberty Install headers and library for end users], -+enable_install_libiberty=$enableval, -+enable_install_libiberty=no)dnl -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+AC_MSG_RESULT($enable_install_libiberty) -+AC_MSG_NOTICE([target_header_dir = $target_header_dir]) -+ - GCC_NO_EXECUTABLES - AC_PROG_CC - AC_SYS_LARGEFILE -@@ -379,7 +404,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -490,27 +514,6 @@ if test -n "${with_target_subdir}"; then - - esac - -- # We may wish to install the target headers somewhere. -- AC_ARG_ENABLE(install-libiberty, -- [ --enable-install-libiberty Install headers for end users], -- enable_install_libiberty=$enableval, -- enable_install_libiberty=no)dnl -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. --- -1.9.3 - diff --git a/package/binutils/arc-2015.12/600-poison-system-directories.patch b/package/binutils/arc-2015.12/600-poison-system-directories.patch deleted file mode 100644 index 8a3bdc647c..0000000000 --- a/package/binutils/arc-2015.12/600-poison-system-directories.patch +++ /dev/null @@ -1,279 +0,0 @@ -Patch adapted to binutils arc-4.8-R3 and extended to use -BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. - -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] - -Patch originally created by Mark Hatle, forward-ported to -binutils 2.21 by Scott Garman. - -purpose: warn for uses of system directories when cross linking - -Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 - -2008-07-02 Joseph Myers - - ld/ - * ld.h (args_type): Add error_poison_system_directories. - * ld.texinfo (--error-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.error_poison_system_directories. - * ldmain.c (main): Initialize - command_line.error_poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --error-poison-system-directories. - (parse_args): Handle new option. - -2007-06-13 Joseph Myers - - ld/ - * config.in: Regenerate. - * ld.h (args_type): Add poison_system_directories. - * ld.texinfo (--no-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.poison_system_directories. - * ldmain.c (main): Initialize - command_line.poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_NO_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --no-poison-system-directories. - (parse_args): Handle new option. - -2007-04-20 Joseph Myers - - Merge from Sourcery G++ binutils 2.17: - - 2007-03-20 Joseph Myers - Based on patch by Mark Hatle . - ld/ - * configure.in (--enable-poison-system-directories): New option. - * configure, config.in: Regenerate. - * ldfile.c (ldfile_add_library_path): If - ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, - /usr/lib, /usr/local/lib or /usr/X11R6/lib. - -Signed-off-by: Mark Hatle -Signed-off-by: Scott Garman - -Index: b/ld/config.in -=================================================================== ---- a/ld/config.in -+++ b/ld/config.in -@@ -11,6 +11,9 @@ - language is requested. */ - #undef ENABLE_NLS - -+/* Define to warn for use of native system library directories */ -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+ - /* Additional extension a shared object might have. */ - #undef EXTRA_SHLIB_EXTENSION - -Index: b/ld/configure -=================================================================== ---- a/ld/configure -+++ b/ld/configure -@@ -773,6 +773,7 @@ - enable_targets - enable_64_bit_bfd - with_sysroot -+enable_poison_system_directories - enable_gold - enable_got - enable_werror -@@ -1428,6 +1429,8 @@ - (and sometimes confusing) to the casual installer - --enable-targets alternative target configurations - --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes) -+ --enable-poison-system-directories -+ warn for use of native system library directories - --enable-gold[=ARG] build gold [ARG={default,yes,no}] - --enable-got= GOT handling scheme (target, single, negative, - multigot) -@@ -4338,7 +4341,18 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then - -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi - - # Check whether --enable-got was given. - if test "${enable_got+set}" = set; then : -Index: b/ld/configure.in -=================================================================== ---- a/ld/configure.in -+++ b/ld/configure.in -@@ -70,6 +70,16 @@ - AC_SUBST(TARGET_SYSTEM_ROOT) - AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system library directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system library directories]) -+fi -+ - dnl Use --enable-gold to decide if this linker should be the default. - dnl "install_as_default" is set to false if gold is the default linker. - dnl "installed_linker" is the installed BFD linker name. -Index: b/ld/ldfile.c -=================================================================== ---- a/ld/ldfile.c -+++ b/ld/ldfile.c -@@ -116,6 +116,23 @@ - new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL); - else - new_dirs->name = xstrdup (name); -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (command_line.poison_system_directories -+ && ((!strncmp (name, "/lib", 4)) -+ || (!strncmp (name, "/usr/lib", 8)) -+ || (!strncmp (name, "/usr/local/lib", 14)) -+ || (!strncmp (name, "/usr/X11R6/lib", 14)))) -+ { -+ if (command_line.error_poison_system_directories) -+ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ else -+ einfo (_("%P: warning: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ } -+#endif -+ - } - - /* Try to open a BFD for a lang_input_statement. */ -Index: b/ld/ld.h -=================================================================== ---- a/ld/ld.h -+++ b/ld/ld.h -@@ -203,6 +203,14 @@ - /* If TRUE we'll just print the default output on stdout. */ - bfd_boolean print_output_format; - -+ /* If TRUE (the default) warn for uses of system directories when -+ cross linking. */ -+ bfd_boolean poison_system_directories; -+ -+ /* If TRUE (default FALSE) give an error for uses of system -+ directories when cross linking instead of a warning. */ -+ bfd_boolean error_poison_system_directories; -+ - /* Big or little endian as set on command line. */ - enum endian_enum endian; - -Index: b/ld/ldmain.c -=================================================================== ---- a/ld/ldmain.c -+++ b/ld/ldmain.c -@@ -265,6 +265,8 @@ - command_line.warn_search_mismatch = TRUE; - command_line.check_section_addresses = -1; - command_line.disable_target_specific_optimizations = -1; -+ command_line.poison_system_directories = TRUE; -+ command_line.error_poison_system_directories = FALSE; - - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -Index: b/ld/ld.texinfo -=================================================================== ---- a/ld/ld.texinfo -+++ b/ld/ld.texinfo -@@ -2156,6 +2156,18 @@ - - Passing @code{none} for @var{style} disables the setting from any - @code{--build-id} options earlier on the command line. -+ -+@kindex --no-poison-system-directories -+@item --no-poison-system-directories -+Do not warn for @option{-L} options using system directories such as -+@file{/usr/lib} when cross linking. This option is intended for use -+in chroot environments when such directories contain the correct -+libraries for the target system rather than the host. -+ -+@kindex --error-poison-system-directories -+@item --error-poison-system-directories -+Give an error instead of a warning for @option{-L} options using -+system directories when cross linking. - @end table - - @c man end -Index: b/ld/lexsup.c -=================================================================== ---- a/ld/lexsup.c -+++ b/ld/lexsup.c -@@ -498,6 +498,14 @@ - TWO_DASHES }, - { {"wrap", required_argument, NULL, OPTION_WRAP}, - '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES }, -+ { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Do not warn for -L options using system directories"), -+ TWO_DASHES }, -+ { {"error-poison-system-directories", no_argument, NULL, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Give an error for -L options using system directories"), -+ TWO_DASHES }, - }; - - #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -510,6 +518,7 @@ - int ingroup = 0; - char *default_dirlist = NULL; - char *shortopts; -+ char *BR_paranoid_env; - struct option *longopts; - struct option *really_longopts; - int last_optind; -@@ -1427,9 +1436,21 @@ - einfo (_("%P%X: --hash-size needs a numeric argument\n")); - } - break; -+ -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = FALSE; -+ break; -+ -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = TRUE; -+ break; - } - } - -+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) -+ command_line.error_poison_system_directories = TRUE; -+ - while (ingroup) - { - lang_leave_group (); -Index: b/ld/ldlex.h -=================================================================== ---- a/ld/ldlex.h -+++ b/ld/ldlex.h -@@ -136,6 +136,8 @@ - #endif /* ENABLE_PLUGINS */ - OPTION_DEFAULT_SCRIPT, - OPTION_PRINT_OUTPUT_FORMAT, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, - }; - - /* The initial parser states. */ diff --git a/package/binutils/arc-2016.09-release/0300-ld-makefile.patch b/package/binutils/arc-2016.09-release/0300-ld-makefile.patch new file mode 100644 index 0000000000..73cc098024 --- /dev/null +++ b/package/binutils/arc-2016.09-release/0300-ld-makefile.patch @@ -0,0 +1,41 @@ +From d76a7549b43974fe8564971a3f40459bc495a8a7 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:40:53 +0100 +Subject: [PATCH] ld-makefile + +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/Makefile.am | 2 +- + ld/Makefile.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/ld/Makefile.am b/ld/Makefile.am +index 0b3b049..3871c74 100644 +--- a/ld/Makefile.am ++++ b/ld/Makefile.am +@@ -57,7 +57,7 @@ endif + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) + + EMUL = @EMUL@ + EMULATION_OFILES = @EMULATION_OFILES@ +diff --git a/ld/Makefile.in b/ld/Makefile.in +index ed98f87..530e4c9 100644 +--- a/ld/Makefile.in ++++ b/ld/Makefile.in +@@ -413,7 +413,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS) + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) + BASEDIR = $(srcdir)/.. + BFDDIR = $(BASEDIR)/bfd + INCDIR = $(BASEDIR)/include +-- +2.4.3 + diff --git a/package/binutils/arc-2016.09-release/0301-check-ldrunpath-length.patch b/package/binutils/arc-2016.09-release/0301-check-ldrunpath-length.patch new file mode 100644 index 0000000000..3b4c204c7f --- /dev/null +++ b/package/binutils/arc-2016.09-release/0301-check-ldrunpath-length.patch @@ -0,0 +1,36 @@ +From ebe1cba46df52d7bf86def3d681271fd05fb453b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:41:47 +0100 +Subject: [PATCH] check-ldrunpath-length + +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/emultempl/elf32.em | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em +index 0405d4f..efd3300 100644 +--- a/ld/emultempl/elf32.em ++++ b/ld/emultempl/elf32.em +@@ -1242,6 +1242,8 @@ fragment <link.next) + if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) +-- +2.4.3 + diff --git a/package/binutils/2.23.2/500-sysroot.patch b/package/binutils/arc-2016.09-release/0500-add-sysroot-fix-from-bug-3049.patch similarity index 69% rename from package/binutils/2.23.2/500-sysroot.patch rename to package/binutils/arc-2016.09-release/0500-add-sysroot-fix-from-bug-3049.patch index e49c795332..f67a43efdf 100644 --- a/package/binutils/2.23.2/500-sysroot.patch +++ b/package/binutils/arc-2016.09-release/0500-add-sysroot-fix-from-bug-3049.patch @@ -1,13 +1,25 @@ -Signed-off-by: Sven Rebhan +From 30628870e583375f8927c04398c7219c6e9f703c Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:42:48 +0100 +Subject: [PATCH] add sysroot fix from bug #3049 Always try to prepend the sysroot prefix to absolute filenames first. http://bugs.gentoo.org/275666 http://sourceware.org/bugzilla/show_bug.cgi?id=10340 +Signed-off-by: Sven Rebhan +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +--- + ld/ldfile.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/ld/ldfile.c b/ld/ldfile.c +index 96f9ecc..1439309 100644 --- a/ld/ldfile.c +++ b/ld/ldfile.c -@@ -308,18 +308,25 @@ +@@ -335,18 +335,25 @@ ldfile_open_file_search (const char *arch, directory first. */ if (! entry->flags.maybe_archive) { @@ -35,3 +47,6 @@ http://sourceware.org/bugzilla/show_bug.cgi?id=10340 return TRUE; if (IS_ABSOLUTE_PATH (entry->filename)) +-- +2.4.3 + diff --git a/package/binutils/2.23.2/600-poison-system-directories.patch b/package/binutils/arc-2016.09-release/0600-poison-system-directories.patch similarity index 70% rename from package/binutils/2.23.2/600-poison-system-directories.patch rename to package/binutils/arc-2016.09-release/0600-poison-system-directories.patch index 780e48e801..d16994ec0c 100644 --- a/package/binutils/2.23.2/600-poison-system-directories.patch +++ b/package/binutils/arc-2016.09-release/0600-poison-system-directories.patch @@ -1,7 +1,16 @@ +From be366461dd49e760440fb28eaee5164eb281adcc Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:45:38 +0100 +Subject: [PATCH] poison-system-directories + Patch adapted to binutils 2.23.2 and extended to use BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. +[Romain: rebase on top of 2.26] +Signed-off-by: Romain Naour +[Gustavo: adapt to binutils 2.25] Signed-off-by: Thomas Petazzoni +Signed-off-by: Gustavo Zacarias Upstream-Status: Inappropriate [distribution: codesourcery] @@ -48,7 +57,7 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 2007-03-20 Joseph Myers Based on patch by Mark Hatle . ld/ - * configure.in (--enable-poison-system-directories): New option. + * configure.ac (--enable-poison-system-directories): New option. * configure, config.in: Regenerate. * ldfile.c (ldfile_add_library_path): If ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, @@ -56,12 +65,23 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 Signed-off-by: Mark Hatle Signed-off-by: Scott Garman +--- + ld/config.in | 3 +++ + ld/configure | 14 ++++++++++++++ + ld/configure.ac | 10 ++++++++++ + ld/ld.h | 8 ++++++++ + ld/ld.texinfo | 12 ++++++++++++ + ld/ldfile.c | 17 +++++++++++++++++ + ld/ldlex.h | 2 ++ + ld/ldmain.c | 2 ++ + ld/lexsup.c | 21 +++++++++++++++++++++ + 9 files changed, 89 insertions(+) -Index: b/ld/config.in -=================================================================== +diff --git a/ld/config.in b/ld/config.in +index 276fb77..35c58eb 100644 --- a/ld/config.in +++ b/ld/config.in -@@ -11,6 +11,9 @@ +@@ -14,6 +14,9 @@ language is requested. */ #undef ENABLE_NLS @@ -71,20 +91,20 @@ Index: b/ld/config.in /* Additional extension a shared object might have. */ #undef EXTRA_SHLIB_EXTENSION -Index: b/ld/configure -=================================================================== +diff --git a/ld/configure b/ld/configure +index a446283..d1f9504 100755 --- a/ld/configure +++ b/ld/configure -@@ -773,6 +773,7 @@ +@@ -786,6 +786,7 @@ with_lib_path enable_targets enable_64_bit_bfd with_sysroot +enable_poison_system_directories enable_gold enable_got - enable_werror -@@ -1428,6 +1429,8 @@ - (and sometimes confusing) to the casual installer + enable_compressed_debug_sections +@@ -1442,6 +1443,8 @@ Optional Features: + --disable-largefile omit support for large files --enable-targets alternative target configurations --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes) + --enable-poison-system-directories @@ -92,7 +112,7 @@ Index: b/ld/configure --enable-gold[=ARG] build gold [ARG={default,yes,no}] --enable-got= GOT handling scheme (target, single, negative, multigot) -@@ -4338,7 +4341,18 @@ +@@ -15491,7 +15494,18 @@ else fi @@ -111,11 +131,11 @@ Index: b/ld/configure # Check whether --enable-got was given. if test "${enable_got+set}" = set; then : -Index: b/ld/configure.in -=================================================================== ---- a/ld/configure.in -+++ b/ld/configure.in -@@ -70,6 +70,16 @@ +diff --git a/ld/configure.ac b/ld/configure.ac +index 188172d..2cd8443 100644 +--- a/ld/configure.ac ++++ b/ld/configure.ac +@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot) AC_SUBST(TARGET_SYSTEM_ROOT) AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) @@ -132,11 +152,53 @@ Index: b/ld/configure.in dnl Use --enable-gold to decide if this linker should be the default. dnl "install_as_default" is set to false if gold is the default linker. dnl "installed_linker" is the installed BFD linker name. -Index: b/ld/ldfile.c -=================================================================== +diff --git a/ld/ld.h b/ld/ld.h +index d84ec4e..3476b26 100644 +--- a/ld/ld.h ++++ b/ld/ld.h +@@ -164,6 +164,14 @@ typedef struct { + /* If set, display the target memory usage (per memory region). */ + bfd_boolean print_memory_usage; + ++ /* If TRUE (the default) warn for uses of system directories when ++ cross linking. */ ++ bfd_boolean poison_system_directories; ++ ++ /* If TRUE (default FALSE) give an error for uses of system ++ directories when cross linking instead of a warning. */ ++ bfd_boolean error_poison_system_directories; ++ + /* Big or little endian as set on command line. */ + enum endian_enum endian; + +diff --git a/ld/ld.texinfo b/ld/ld.texinfo +index 1dd7492..fb1438e 100644 +--- a/ld/ld.texinfo ++++ b/ld/ld.texinfo +@@ -2332,6 +2332,18 @@ string identifying the original linked file does not change. + + Passing @code{none} for @var{style} disables the setting from any + @code{--build-id} options earlier on the command line. ++ ++@kindex --no-poison-system-directories ++@item --no-poison-system-directories ++Do not warn for @option{-L} options using system directories such as ++@file{/usr/lib} when cross linking. This option is intended for use ++in chroot environments when such directories contain the correct ++libraries for the target system rather than the host. ++ ++@kindex --error-poison-system-directories ++@item --error-poison-system-directories ++Give an error instead of a warning for @option{-L} options using ++system directories when cross linking. + @end table + + @c man end +diff --git a/ld/ldfile.c b/ld/ldfile.c +index 1439309..086b354 100644 --- a/ld/ldfile.c +++ b/ld/ldfile.c -@@ -116,6 +116,23 @@ +@@ -114,6 +114,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline) new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL); else new_dirs->name = xstrdup (name); @@ -160,81 +222,52 @@ Index: b/ld/ldfile.c } /* Try to open a BFD for a lang_input_statement. */ -Index: b/ld/ld.h -=================================================================== ---- a/ld/ld.h -+++ b/ld/ld.h -@@ -203,6 +203,14 @@ - /* If TRUE we'll just print the default output on stdout. */ - bfd_boolean print_output_format; +diff --git a/ld/ldlex.h b/ld/ldlex.h +index 6f11e7b..0ca3110 100644 +--- a/ld/ldlex.h ++++ b/ld/ldlex.h +@@ -144,6 +144,8 @@ enum option_values + OPTION_PRINT_MEMORY_USAGE, + OPTION_REQUIRE_DEFINED_SYMBOL, + OPTION_ORPHAN_HANDLING, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, + }; -+ /* If TRUE (the default) warn for uses of system directories when -+ cross linking. */ -+ bfd_boolean poison_system_directories; -+ -+ /* If TRUE (default FALSE) give an error for uses of system -+ directories when cross linking instead of a warning. */ -+ bfd_boolean error_poison_system_directories; -+ - /* Big or little endian as set on command line. */ - enum endian_enum endian; - -Index: b/ld/ldmain.c -=================================================================== + /* The initial parser states. */ +diff --git a/ld/ldmain.c b/ld/ldmain.c +index bb0b9cc..a23c56c 100644 --- a/ld/ldmain.c +++ b/ld/ldmain.c -@@ -265,6 +265,8 @@ +@@ -257,6 +257,8 @@ main (int argc, char **argv) + command_line.warn_mismatch = TRUE; command_line.warn_search_mismatch = TRUE; command_line.check_section_addresses = -1; - command_line.disable_target_specific_optimizations = -1; + command_line.poison_system_directories = TRUE; + command_line.error_poison_system_directories = FALSE; /* We initialize DEMANGLING based on the environment variable COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -Index: b/ld/ld.texinfo -=================================================================== ---- a/ld/ld.texinfo -+++ b/ld/ld.texinfo -@@ -2154,6 +2154,18 @@ - - Passing @code{none} for @var{style} disables the setting from any - @code{--build-id} options earlier on the command line. -+ -+@kindex --no-poison-system-directories -+@item --no-poison-system-directories -+Do not warn for @option{-L} options using system directories such as -+@file{/usr/lib} when cross linking. This option is intended for use -+in chroot environments when such directories contain the correct -+libraries for the target system rather than the host. -+ -+@kindex --error-poison-system-directories -+@item --error-poison-system-directories -+Give an error instead of a warning for @option{-L} options using -+system directories when cross linking. - @end table - - @c man end -Index: b/ld/lexsup.c -=================================================================== +diff --git a/ld/lexsup.c b/ld/lexsup.c +index 4cad209..be7d584 100644 --- a/ld/lexsup.c +++ b/ld/lexsup.c -@@ -498,6 +498,14 @@ +@@ -530,6 +530,14 @@ static const struct ld_option ld_options[] = + { {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING}, + '\0', N_("=MODE"), N_("Control how orphan sections are handled."), TWO_DASHES }, - { {"wrap", required_argument, NULL, OPTION_WRAP}, - '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES }, + { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, + '\0', NULL, N_("Do not warn for -L options using system directories"), + TWO_DASHES }, + { {"error-poison-system-directories", no_argument, NULL, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, + '\0', NULL, N_("Give an error for -L options using system directories"), + TWO_DASHES }, }; #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -510,6 +518,7 @@ +@@ -542,6 +550,7 @@ parse_args (unsigned argc, char **argv) int ingroup = 0; char *default_dirlist = NULL; char *shortopts; @@ -242,19 +275,23 @@ Index: b/ld/lexsup.c struct option *longopts; struct option *really_longopts; int last_optind; -@@ -1427,9 +1436,21 @@ - einfo (_("%P%X: --hash-size needs a numeric argument\n")); +@@ -1516,6 +1525,14 @@ parse_args (unsigned argc, char **argv) } break; + ++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: ++ command_line.poison_system_directories = FALSE; ++ break; + -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = FALSE; -+ break; ++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: ++ command_line.error_poison_system_directories = TRUE; ++ break; + -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = TRUE; -+ break; - } + case OPTION_PUSH_STATE: + input_flags.pushed = xmemdup (&input_flags, + sizeof (input_flags), +@@ -1559,6 +1576,10 @@ parse_args (unsigned argc, char **argv) + command_line.soname = NULL; } + BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); @@ -264,16 +301,6 @@ Index: b/ld/lexsup.c while (ingroup) { lang_leave_group (); -Index: b/ld/ldlex.h -=================================================================== ---- a/ld/ldlex.h -+++ b/ld/ldlex.h -@@ -136,6 +136,8 @@ - #endif /* ENABLE_PLUGINS */ - OPTION_DEFAULT_SCRIPT, - OPTION_PRINT_OUTPUT_FORMAT, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, - }; - - /* The initial parser states. */ +-- +2.4.3 + diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash index 916b68c1c1..cf56b1ab59 100644 --- a/package/binutils/binutils.hash +++ b/package/binutils/binutils.hash @@ -1,7 +1,8 @@ # From ftp://gcc.gnu.org/pub/binutils/releases/sha512.sum -sha512 dec753bbba008f1526b89cf1bd85feba78f362f5333ffdf93953fd131eb755976dec82a0a4ba38c43d2434da007137780cfe674de5414be5cf7ce7fbc6af6d16 binutils-2.23.2.tar.bz2 sha512 5ec95ad47d49b12c4558a8db0ca2109d3ee1955e3776057f3330c4506f8f4d1cf5e505fbf8a16b98403a0fcdeaaf986fe0a22be6456247dbdace63ce1f776b12 binutils-2.24.tar.bz2 sha512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d binutils-2.25.1.tar.bz2 -sha512 e77e1b8dbbcbaf9ac2fae95c4403615808af3be03b2e1d32448cd3a7d32c43273f8bcace3f2de84ec120a982879295673029da306e2885dbf5f990584932cfc7 binutils-2.26.tar.bz2 -# No hash for the ARC variant, comes from the github-helper: -none xxx binutils-arc-2015.12.tar.gz +sha512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 binutils-2.26.1.tar.bz2 +sha512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb binutils-2.27.tar.bz2 + +# Locally calculated (fetched from Github) +sha512 b94f43bd084aef1cbe75da947775c7d9ad1873fb27f7b0b99244813c97bb44cd7fd4c11855418d74b731aa889bff615694777f41f4cd68429d8136d9bac2a239 binutils-arc-2016.09-release.tar.gz diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk index ca39f0b146..d8ca5d6660 100644 --- a/package/binutils/binutils.mk +++ b/package/binutils/binutils.mk @@ -9,7 +9,7 @@ BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION)) ifeq ($(BINUTILS_VERSION),) ifeq ($(BR2_arc),y) -BINUTILS_VERSION = arc-2015.12 +BINUTILS_VERSION = arc-2016.09-release else BINUTILS_VERSION = 2.25.1 endif @@ -25,7 +25,6 @@ BINUTILS_SOURCE ?= binutils-$(BINUTILS_VERSION).tar.bz2 BINUTILS_EXTRA_CONFIG_OPTIONS = $(call qstrip,$(BR2_BINUTILS_EXTRA_CONFIG_OPTIONS)) BINUTILS_INSTALL_STAGING = YES BINUTILS_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) -HOST_BINUTILS_DEPENDENCIES = BINUTILS_LICENSE = GPLv3+, libiberty LGPLv2.1+ BINUTILS_LICENSE_FILES = COPYING3 COPYING.LIB @@ -48,6 +47,7 @@ BINUTILS_CONF_OPTS = \ --host=$(GNU_TARGET_NAME) \ --target=$(GNU_TARGET_NAME) \ --enable-install-libiberty \ + --enable-build-warnings=no \ $(BINUTILS_DISABLE_GDB_CONF_OPTS) \ $(BINUTILS_EXTRA_CONFIG_OPTIONS) @@ -57,8 +57,25 @@ endif # Don't build documentation. It takes up extra space / build time, # and sometimes needs specific makeinfo versions to work -BINUTILS_CONF_ENV += ac_cv_prog_MAKEINFO=missing -HOST_BINUTILS_CONF_ENV += ac_cv_prog_MAKEINFO=missing +BINUTILS_CONF_ENV += MAKEINFO=true +BINUTILS_MAKE_OPTS += MAKEINFO=true +BINUTILS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) MAKEINFO=true install +HOST_BINUTILS_CONF_ENV += MAKEINFO=true +HOST_BINUTILS_MAKE_OPTS += MAKEINFO=true +HOST_BINUTILS_INSTALL_OPTS += MAKEINFO=true install + +# gcc bug with Os/O2/O3, PR77311 +# error: unable to find a register to spill in class 'CCREGS' +ifeq ($(BR2_bfin),y) +BINUTILS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O1" +endif + +# Workaround a build issue with -Os for ARM Cortex-M cpus. +# (Binutils 2.25.1 and 2.26.1) +# https://sourceware.org/bugzilla/show_bug.cgi?id=20552 +ifeq ($(BR2_ARM_CPU_ARMV7M)$(BR2_OPTIMIZE_S),yy) +BINUTILS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O2" +endif # Install binutils after busybox to prefer full-blown utilities ifeq ($(BR2_PACKAGE_BUSYBOX),y) @@ -85,22 +102,22 @@ HOST_BINUTILS_CONF_OPTS = \ # binutils run configure script of subdirs at make time, so ensure # our TARGET_CONFIGURE_ARGS are taken into consideration for those define BINUTILS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_ARGS) $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_ARGS) $(MAKE) $(BINUTILS_MAKE_OPTS) -C $(@D) endef # We just want libbfd, libiberty and libopcodes, # not the full-blown binutils in staging define BINUTILS_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D)/bfd DESTDIR=$(STAGING_DIR) install - $(MAKE) -C $(@D)/opcodes DESTDIR=$(STAGING_DIR) install - $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/opcodes DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install endef # If we don't want full binutils on target ifneq ($(BR2_PACKAGE_BINUTILS_TARGET),y) define BINUTILS_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR=$(TARGET_DIR) install - $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install endef endif diff --git a/package/bitstream/bitstream.mk b/package/bitstream/bitstream.mk index a76c3c44b5..9c8c6f5ca2 100644 --- a/package/bitstream/bitstream.mk +++ b/package/bitstream/bitstream.mk @@ -15,7 +15,7 @@ BITSTREAM_INSTALL_STAGING = YES BITSTREAM_INSTALL_TARGET = NO define BITSTREAM_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install endef $(eval $(generic-package)) diff --git a/package/blktrace/0001-iowatcher-link-with-lrt.patch b/package/blktrace/0001-iowatcher-link-with-lrt.patch new file mode 100644 index 0000000000..689a67814a --- /dev/null +++ b/package/blktrace/0001-iowatcher-link-with-lrt.patch @@ -0,0 +1,31 @@ +From 80d87b99d72034441ea4fbab81f5c80c1ef3b067 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 23 Aug 2016 16:36:14 +0200 +Subject: [PATCH] iowatcher: link with -lrt + +Some C libraries (notably uClibc) have the posix_spawn*() functions in +librt, so let's link iowatcher with -lrt. + +Signed-off-by: Thomas Petazzoni +Upstream-status: merged + (http://git.kernel.org/cgit/linux/kernel/git/axboe/blktrace.git/commit/?id=d1ab783430f5a832e973ed9a293da146c04c6702) +--- + iowatcher/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/iowatcher/Makefile b/iowatcher/Makefile +index 7b5101c..502476d 100644 +--- a/iowatcher/Makefile ++++ b/iowatcher/Makefile +@@ -19,7 +19,7 @@ all: $(ALL) + $(CC) -o $*.o -c $(ALL_CFLAGS) $< + + iowatcher: blkparse.o plot.o main.o tracers.o mpstat.o fio.o +- $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) -lm ++ $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) -lm -lrt + + depend: + @$(CC) -MM $(ALL_CFLAGS) *.c 1> .depend +-- +2.7.4 + diff --git a/package/blktrace/Config.in b/package/blktrace/Config.in index ed5d78a542..dedfa03f03 100644 --- a/package/blktrace/Config.in +++ b/package/blktrace/Config.in @@ -1,8 +1,8 @@ config BR2_PACKAGE_BLKTRACE bool "blktrace" - # Uses posix_spawn() - depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # clock_nanosleep() + depends on BR2_USE_MMU # system() select BR2_PACKAGE_LIBAIO help blktrace is a block layer IO tracing mechanism which provides @@ -11,5 +11,7 @@ config BR2_PACKAGE_BLKTRACE http://git.kernel.dk/?p=blktrace.git;a=summary -comment "blktrace needs a (e)glibc or musl toolchain" - depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) +comment "blktrace needs a toolchain w/ NPTL" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/blktrace/blktrace.mk b/package/blktrace/blktrace.mk index c193375bf8..de583cf844 100644 --- a/package/blktrace/blktrace.mk +++ b/package/blktrace/blktrace.mk @@ -11,11 +11,11 @@ BLKTRACE_LICENSE = GPLv2+ BLKTRACE_LICENSE_FILES = COPYING define BLKTRACE_BUILD_CMDS - $(MAKE1) -C $(@D) $(TARGET_CONFIGURE_OPTS) + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) $(TARGET_CONFIGURE_OPTS) endef define BLKTRACE_INSTALL_TARGET_CMDS - $(MAKE1) -C $(@D) $(TARGET_CONFIGURE_OPTS) install \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) $(TARGET_CONFIGURE_OPTS) install \ DESTDIR=$(TARGET_DIR) prefix=/usr endef diff --git a/package/bluez5_utils/Config.in b/package/bluez5_utils/Config.in index 18b7bbf0e0..a7c0ee4ba4 100644 --- a/package/bluez5_utils/Config.in +++ b/package/bluez5_utils/Config.in @@ -6,8 +6,6 @@ config BR2_PACKAGE_BLUEZ5_UTILS depends on !BR2_STATIC_LIBS # uses dlfcn depends on !BR2_PACKAGE_BLUEZ_UTILS # conflicts with 4.x version depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 - # wordexp support not in our uClibc configuration - depends on !BR2_TOOLCHAIN_USES_UCLIBC depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_DBUS select BR2_PACKAGE_LIBGLIB2 @@ -41,10 +39,15 @@ comment "OBEX support needs a toolchain w/ C++" config BR2_PACKAGE_BLUEZ5_UTILS_CLIENT bool "build CLI client" + # wordexp support not in our uClibc configuration + depends on !BR2_TOOLCHAIN_USES_UCLIBC select BR2_PACKAGE_READLINE help Enable the Bluez 5.x command line client. +comment "bluez5-utils client needs a glibc or musl toolchain" + depends on BR2_TOOLCHAIN_USES_UCLIBC + config BR2_PACKAGE_BLUEZ5_UTILS_GATTTOOL bool "install GATT tool" depends on BR2_PACKAGE_BLUEZ5_UTILS_CLIENT @@ -77,10 +80,9 @@ config BR2_PACKAGE_BLUEZ5_UTILS_TEST endif -comment "bluez5-utils needs a glibc or musl toolchain w/ wchar, threads, headers >= 3.4, dynamic library" +comment "bluez5-utils needs a toolchain w/ wchar, threads, headers >= 3.4, dynamic library" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ - !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || BR2_STATIC_LIBS || \ - !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_USE_MMU diff --git a/package/bluez5_utils/bluez5_utils.hash b/package/bluez5_utils/bluez5_utils.hash index cbb3aa3cad..b030f1a08a 100644 --- a/package/bluez5_utils/bluez5_utils.hash +++ b/package/bluez5_utils/bluez5_utils.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc: -sha256 21d1bc9150d3576296595217efb98a746b592389d25d5637e8bee5da7272593b bluez-5.39.tar.xz +sha256 16c9c05d2a1da644ce3570d975ada3643d2e60c007a955bac09c0a0efeb58d15 bluez-5.43.tar.xz diff --git a/package/bluez5_utils/bluez5_utils.mk b/package/bluez5_utils/bluez5_utils.mk index ddc8c452ee..66c3eab1e9 100644 --- a/package/bluez5_utils/bluez5_utils.mk +++ b/package/bluez5_utils/bluez5_utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -BLUEZ5_UTILS_VERSION = 5.39 +BLUEZ5_UTILS_VERSION = 5.43 BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_INSTALL_STAGING = YES @@ -77,9 +77,11 @@ BLUEZ5_UTILS_CONF_OPTS += --disable-systemd endif define BLUEZ5_UTILS_INSTALL_INIT_SYSTEMD - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/ + mkdir -p $(TARGET_DIR)/etc/systemd/system/bluetooth.target.wants ln -fs ../../../../usr/lib/systemd/system/bluetooth.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/bluetooth.service + $(TARGET_DIR)/etc/systemd/system/bluetooth.target.wants/bluetooth.service + ln -fs ../../../../usr/lib/systemd/system/bluetooth.service \ + $(TARGET_DIR)/etc/systemd/system/dbus-org.bluez.service endef $(eval $(autotools-package)) diff --git a/package/bluez_utils/bluez_utils.mk b/package/bluez_utils/bluez_utils.mk index c2e8295154..1c93f2e5f5 100644 --- a/package/bluez_utils/bluez_utils.mk +++ b/package/bluez_utils/bluez_utils.mk @@ -54,4 +54,8 @@ BLUEZ_UTILS_CONF_OPTS += \ --disable-usb endif +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) +BLUEZ_UTILS_CONF_OPTS += --disable-pie +endif + $(eval $(autotools-package)) diff --git a/package/bmon/Config.in b/package/bmon/Config.in index 09ae9cb993..bb796936cc 100644 --- a/package/bmon/Config.in +++ b/package/bmon/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_BMON various input modules. It provides various output methods including a curses based interface. - http://www.infradead.org/~tgr/bmon/ + https://github.com/tgraf/bmon/ comment "bmon needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/bmon/bmon.hash b/package/bmon/bmon.hash index 810a0b9b64..dec0c7d81a 100644 --- a/package/bmon/bmon.hash +++ b/package/bmon/bmon.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 a9f3d7010074a3190038a8d95df5d47aaf2046b47d872590336b5f93be084685 bmon-3.7.tar.gz +sha256 02fdc312b8ceeb5786b28bf905f54328f414040ff42f45c83007f24b76cc9f7a bmon-4.0.tar.gz diff --git a/package/bmon/bmon.mk b/package/bmon/bmon.mk index 0939609317..32889a69f3 100644 --- a/package/bmon/bmon.mk +++ b/package/bmon/bmon.mk @@ -4,7 +4,7 @@ # ################################################################################ -BMON_VERSION = 3.7 +BMON_VERSION = 4.0 BMON_SITE = https://github.com/tgraf/bmon/releases/download/v$(BMON_VERSION) BMON_DEPENDENCIES = host-pkgconf libconfuse libnl ncurses BMON_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' diff --git a/package/boa/boa.conf b/package/boa/boa.conf index f51c237316..e94029665f 100644 --- a/package/boa/boa.conf +++ b/package/boa/boa.conf @@ -46,7 +46,7 @@ Port 80 # Group: The group name or GID the server should run as. User nobody -Group nobody +Group nogroup # ServerAdmin: The email address where server problems should be sent. # Note: this is not currently used, except as an environment variable diff --git a/package/boost/0006-fenv.patch b/package/boost/0003-fenv.patch similarity index 100% rename from package/boost/0006-fenv.patch rename to package/boost/0003-fenv.patch diff --git a/package/boost/0003-fix-libquadmath-issue.patch b/package/boost/0003-fix-libquadmath-issue.patch deleted file mode 100644 index 49772e828e..0000000000 --- a/package/boost/0003-fix-libquadmath-issue.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 74ff2db959c5fa75bec770c41ed2951a740fe936 Mon Sep 17 00:00:00 2001 -From: jzmaddock -Date: Fri, 1 Jan 2016 16:49:48 +0000 -Subject: [PATCH] Change config to not use it at all if we don't - have __has_include as GCC may be configured with --disable-libquadmath but - still signal that it supports __float128 - -Backported from: 74ff2db959c5fa75bec770c41ed2951a740fe936 - -[Jörg Krause: adjust pathes to match sourceforge release tarball] -Signed-off-by: Jörg Krause - ---- - boost/math/special_functions/fpclassify.hpp | 16 +++++++++++++--- - boost/math/tools/config.hpp | 12 ------------ - 2 files changed, 13 insertions(+), 15 deletions(-) - -diff --git a/boost/math/special_functions/fpclassify.hpp b/boost/math/special_functions/fpclassify.hpp -index 0a4e1ac..58fad13 100644 ---- a/boost/math/special_functions/fpclassify.hpp -+++ b/boost/math/special_functions/fpclassify.hpp -@@ -81,7 +81,12 @@ is used. - #include - #endif - #ifdef BOOST_MATH_USE_FLOAT128 -+#ifdef __has_include -+#if __has_include("quadmath.h") - #include "quadmath.h" -+#define BOOST_MATH_HAS_QUADMATH_H -+#endif -+#endif - #endif - - #ifdef BOOST_NO_STDC_NAMESPACE -@@ -124,9 +129,14 @@ inline bool is_nan_helper(T, const boost::false_type&) - { - return false; - } --#ifdef BOOST_MATH_USE_FLOAT128 -+#if defined(BOOST_MATH_USE_FLOAT128) -+#if defined(BOOST_MATH_HAS_QUADMATH_H) - inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnanq(f); } - inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnanq(f); } -+#else -+inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnan(static_cast(f)); } -+inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnan(static_cast(f)); } -+#endif - #endif - } - -@@ -519,7 +529,7 @@ inline bool (isinf)(long double x) - return detail::isinf_impl(static_cast(x), method()); - } - #endif --#ifdef BOOST_MATH_USE_FLOAT128 -+#if defined(BOOST_MATH_USE_FLOAT128) && defined(BOOST_MATH_HAS_QUADMATH_H) - template<> - inline bool (isinf)(__float128 x) - { -@@ -611,7 +621,7 @@ inline bool (isnan)(long double x) - return detail::isnan_impl(x, method()); - } - #endif --#ifdef BOOST_MATH_USE_FLOAT128 -+#if defined(BOOST_MATH_USE_FLOAT128) && defined(BOOST_MATH_HAS_QUADMATH_H) - template<> - inline bool (isnan)(__float128 x) - { -diff --git a/boost/math/tools/config.hpp b/boost/math/tools/config.hpp -index ffd0ab4..75d29b6 100644 ---- a/boost/math/tools/config.hpp -+++ b/boost/math/tools/config.hpp -@@ -265,18 +265,6 @@ - # define BOOST_MATH_INT_VALUE_SUFFIX(RV, SUF) RV##SUF - #endif - // --// Test whether to support __float128, if we don't have quadmath.h then this can't currently work: --// --#ifndef BOOST_MATH_USE_FLOAT128 --#ifdef __has_include --#if ! __has_include("quadmath.h") --#define BOOST_MATH_DISABLE_FLOAT128 --#endif --#elif !defined(BOOST_ARCH_X86) --#define BOOST_MATH_DISABLE_FLOAT128 --#endif --#endif --// - // And then the actual configuration: - // - #if defined(_GLIBCXX_USE_FLOAT128) && defined(BOOST_GCC) && !defined(__STRICT_ANSI__) \ diff --git a/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch b/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch deleted file mode 100644 index 073ec041dc..0000000000 --- a/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch +++ /dev/null @@ -1,50 +0,0 @@ -From a4e9686f8a0258bc30f9da2abab65673d6b9bd50 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jupp=20M=C3=BCller?= -Date: Wed, 23 Dec 2015 09:18:51 +0100 -Subject: [PATCH] Fix declaration changes meaning error with GCC 4.4.7 (#11856) - -Backported from a4e9686f8a0258bc30f9da2abab65673d6b9bd50 - -[Jörg Krause: adjust pathes to match sourceforge release tarball] -Signed-off-by: Jörg Krause - ---- - libs/container/src/pool_resource.cpp | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libs/container/src/pool_resource.cpp b/libs/container/src/pool_resource.cpp -index 4df7ee2..45f1564 100644 ---- a/libs/container/src/pool_resource.cpp -+++ b/libs/container/src/pool_resource.cpp -@@ -32,11 +32,11 @@ namespace pmr { - class pool_data_t - : public block_slist_base<> - { -- typedef block_slist_base<> block_slist_base; -+ typedef block_slist_base<> block_slist_base_t; - - public: - explicit pool_data_t(std::size_t initial_blocks_per_chunk) -- : block_slist_base(), next_blocks_per_chunk(initial_blocks_per_chunk) -+ : block_slist_base_t(), next_blocks_per_chunk(initial_blocks_per_chunk) - { slist_algo::init_header(&free_slist); } - - void *allocate_block() BOOST_NOEXCEPT -@@ -59,7 +59,7 @@ class pool_data_t - void release(memory_resource &upstream) - { - slist_algo::init_header(&free_slist); -- this->block_slist_base::release(upstream); -+ this->block_slist_base_t::release(upstream); - next_blocks_per_chunk = pool_options_minimum_max_blocks_per_chunk; - } - -@@ -72,7 +72,7 @@ class pool_data_t - - //Minimum block size is at least max_align, so all pools allocate sizes that are multiple of max_align, - //meaning that all blocks are max_align-aligned. -- char *p = static_cast(block_slist_base::allocate(blocks_per_chunk*pool_block, mr)); -+ char *p = static_cast(block_slist_base_t::allocate(blocks_per_chunk*pool_block, mr)); - - //Create header types. This is no-throw - for(std::size_t i = 0, max = blocks_per_chunk; i != max; ++i){ diff --git a/package/boost/0007-fix-getchar-with-uclibc-and-gcc-bug-58952.patch b/package/boost/0004-fix-getchar-with-uclibc-and-gcc-bug-58952.patch similarity index 100% rename from package/boost/0007-fix-getchar-with-uclibc-and-gcc-bug-58952.patch rename to package/boost/0004-fix-getchar-with-uclibc-and-gcc-bug-58952.patch diff --git a/package/boost/0005-fix-undeclared-isnan.patch b/package/boost/0005-fix-undeclared-isnan.patch deleted file mode 100644 index 95d8fedc78..0000000000 --- a/package/boost/0005-fix-undeclared-isnan.patch +++ /dev/null @@ -1,32 +0,0 @@ -From fbd1393858719c7bda7d251f742950c1bc691ea8 Mon Sep 17 00:00:00 2001 -From: Kohei Takahashi -Date: Wed, 6 Jan 2016 19:39:55 +0900 -Subject: [PATCH] Qualify std:: for isnan in some situation. - -Because isnan is implemented as a macro and libstdc++ undef it within - (at least FreeBSD 10). - -Backported from fbd1393858719c7bda7d251f742950c1bc691ea8 - -[Jörg Krause: adjust pathes to match sourceforge release tarball] -Signed-off-by: Jörg Krause - ---- - boost/math/special_functions/fpclassify.hpp | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/boost/math/special_functions/fpclassify.hpp b/boost/math/special_functions/fpclassify.hpp -index 58fad13..d83e111 100644 ---- a/boost/math/special_functions/fpclassify.hpp -+++ b/boost/math/special_functions/fpclassify.hpp -@@ -133,6 +133,10 @@ inline bool is_nan_helper(T, const boost::false_type&) - #if defined(BOOST_MATH_HAS_QUADMATH_H) - inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnanq(f); } - inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnanq(f); } -+#elif defined(BOOST_GNU_STDLIB) && BOOST_GNU_STDLIB && \ -+ _GLIBCXX_USE_C99_MATH && !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC -+inline bool is_nan_helper(__float128 f, const boost::true_type&) { return std::isnan(static_cast(f)); } -+inline bool is_nan_helper(__float128 f, const boost::false_type&) { return std::isnan(static_cast(f)); } - #else - inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnan(static_cast(f)); } - inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnan(static_cast(f)); } diff --git a/package/boost/Config.in b/package/boost/Config.in index ed67285a58..403bbf3100 100644 --- a/package/boost/Config.in +++ b/package/boost/Config.in @@ -1,14 +1,9 @@ comment "boost needs a toolchain w/ C++, threads, wchar" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR -config BR2_PACKAGE_BOOST_ARCH_SUPPORTS - bool - default y if !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII - config BR2_PACKAGE_BOOST bool "boost" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS # Boost could theorically be built with threading=single, but # that unfortunately doesn't work. Until someone fixes that, # let's depend on threads. @@ -70,8 +65,8 @@ config BR2_PACKAGE_BOOST_CONTAINER # supported, but it doesn't build. config BR2_PACKAGE_BOOST_CONTEXT bool "boost-context" - depends on (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel \ - || BR2_powerpc || BR2_x86_64) + depends on ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM) || \ + BR2_i386 || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_x86_64 config BR2_PACKAGE_BOOST_COROUTINE bool "boost-coroutine" @@ -119,6 +114,11 @@ comment "boost-log needs a toolchain w/ NPTL" config BR2_PACKAGE_BOOST_MATH bool "boost-math" +config BR2_PACKAGE_BOOST_METAPARSE + depends on BR2_USE_MMU # boost-test + select BR2_PACKAGE_BOOST_TEST + bool "boost-metaparse" + config BR2_PACKAGE_BOOST_MPI bool "boost-mpi" @@ -154,7 +154,13 @@ config BR2_PACKAGE_BOOST_THREAD config BR2_PACKAGE_BOOST_TIMER bool "boost-timer" +config BR2_PACKAGE_BOOST_TYPE_ERASURE + bool "boost-type_erasure" + config BR2_PACKAGE_BOOST_WAVE bool "boost-wave" + # limitation of assembler for coldfire + # error: Tried to convert PC relative branch to absolute jump + depends on !BR2_m68k_cf endif diff --git a/package/boost/boost.hash b/package/boost/boost.hash index 294282a6fd..c4af22e57f 100644 --- a/package/boost/boost.hash +++ b/package/boost/boost.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/boost/files/boost/1.60.0/ -md5 65a840e1a0b13a558ff19eeb2c4f0cbe boost_1_60_0.tar.bz2 -sha1 7f56ab507d3258610391b47fef6b11635861175a boost_1_60_0.tar.bz2 +# From http://sourceforge.net/projects/boost/files/boost/1.61.0/ +md5 6095876341956f65f9d35939ccea1a9f boost_1_61_0.tar.bz2 +sha1 f84b1a1ce764108ec3c2b7bd7704cf8dfd3c9d01 boost_1_61_0.tar.bz2 diff --git a/package/boost/boost.mk b/package/boost/boost.mk index 15f0b77a94..bb8d799c48 100644 --- a/package/boost/boost.mk +++ b/package/boost/boost.mk @@ -4,21 +4,20 @@ # ################################################################################ -BOOST_VERSION = 1.60.0 +BOOST_VERSION = 1.61.0 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2 BOOST_SITE = http://downloads.sourceforge.net/project/boost/boost/$(BOOST_VERSION) BOOST_INSTALL_STAGING = YES BOOST_LICENSE = Boost Software License 1.0 BOOST_LICENSE_FILES = LICENSE_1_0.txt -HOST_BOOST_DEPENDENCIES = - # keep host variant as minimal as possible HOST_BOOST_FLAGS = --without-icu \ --without-libraries=$(subst $(space),$(comma),atomic chrono context \ coroutine coroutine2 date_time exception filesystem graph \ graph_parallel iostreams locale log math mpi program_options python \ - random regex serialization signals system test thread timer wave) + random regex serialization signals system test thread timer type_erasure \ + wave) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono) @@ -35,6 +34,7 @@ BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_IOSTREAMS),,iostreams) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_LOCALE),,locale) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_LOG),,log) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_MATH),,math) +BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_METAPARSE),,metaparse) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_MPI),,mpi) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_PROGRAM_OPTIONS),,program_options) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_PYTHON),,python) @@ -46,6 +46,7 @@ BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_SYSTEM),,system) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TEST),,test) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_THREAD),,thread) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TIMER),,timer) +BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TYPE_ERASURE),,type_erasure) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_WAVE),,wave) BOOST_TARGET_CXXFLAGS = $(TARGET_CXXFLAGS) @@ -130,7 +131,7 @@ define BOOST_CONFIGURE_CMDS endef define BOOST_BUILD_CMDS - (cd $(@D) && ./bjam -j$(PARALLEL_JOBS) -q \ + (cd $(@D) && $(TARGET_MAKE_ENV) ./bjam -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(BOOST_OPTS) \ --ignore-site-config \ @@ -138,7 +139,7 @@ define BOOST_BUILD_CMDS endef define BOOST_INSTALL_TARGET_CMDS - (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q \ + (cd $(@D) && $(TARGET_MAKE_ENV) ./b2 -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(BOOST_OPTS) \ --prefix=$(TARGET_DIR)/usr \ @@ -147,7 +148,7 @@ define BOOST_INSTALL_TARGET_CMDS endef define BOOST_INSTALL_STAGING_CMDS - (cd $(@D) && ./bjam -j$(PARALLEL_JOBS) -q \ + (cd $(@D) && $(TARGET_MAKE_ENV) ./bjam -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(BOOST_OPTS) \ --prefix=$(STAGING_DIR)/usr \ diff --git a/package/bootutils/Config.in b/package/bootutils/Config.in index 370da0d1eb..af4a170ca3 100644 --- a/package/bootutils/Config.in +++ b/package/bootutils/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_BOOTUTILS bool "bootutils" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help BootUtils is a collection of utilities to facilitate booting of Linux 2.6-based systems. The process of finding the root volume diff --git a/package/botan/botan.hash b/package/botan/botan.hash index ab8788eb32..3da5f690ce 100644 --- a/package/botan/botan.hash +++ b/package/botan/botan.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 c2cdb47a8b1ac2368de5b9c51a8fab2a72a5641fbc1afd1abe81d5c6e4197420 Botan-1.10.8.tgz +sha256 23ec973d4b4a4fe04f490d409e08ac5638afe3aa09acd7f520daaff38ba19b90 Botan-1.10.13.tgz diff --git a/package/botan/botan.mk b/package/botan/botan.mk index 6ac3ce7ee4..94f1edd2c8 100644 --- a/package/botan/botan.mk +++ b/package/botan/botan.mk @@ -4,9 +4,9 @@ # ################################################################################ -BOTAN_VERSION = 1.10.8 +BOTAN_VERSION = 1.10.13 BOTAN_SOURCE = Botan-$(BOTAN_VERSION).tgz -BOTAN_SITE = http://files.randombit.net/botan +BOTAN_SITE = http://botan.randombit.net/releases BOTAN_LICENSE = BSD-2c BOTAN_LICENSE_FILES = doc/license.txt @@ -44,19 +44,19 @@ BOTAN_CONF_OPTS += --with-zlib endif define BOTAN_CONFIGURE_CMDS - (cd $(@D); ./configure.py $(BOTAN_CONF_OPTS)) + (cd $(@D); $(TARGET_MAKE_ENV) ./configure.py $(BOTAN_CONF_OPTS)) endef define BOTAN_BUILD_CMDS - $(MAKE) -C $(@D) AR="$(TARGET_AR) crs" + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) AR="$(TARGET_AR) crs" endef define BOTAN_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)/usr" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)/usr" install endef define BOTAN_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)/usr" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)/usr" install endef $(eval $(generic-package)) diff --git a/package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch b/package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch deleted file mode 100644 index 0455a9085c..0000000000 --- a/package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch +++ /dev/null @@ -1,30 +0,0 @@ -commit 5eebb7f9288b7881ffb929b1fd494fe3ac3be27d -Author: Russell Senior -Date: Wed Mar 6 12:49:42 2013 -0800 - - bridge-utils: Fix compile against linux-3.8.x - - Linux 3.8 has a header, include/uapi/linux/if_bridge.h that uses a - struct in6_addr but doesn't define it. The trivial seeming fix of - including the header that does define it causes more problems. The - problem was discussed on mailing lists in January 2013. The final - suggestion I found was here: - - http://www.redhat.com/archives/libvir-list/2013-January/msg01253.html - - This is intended to implement that suggestion. - - Signed-off-by: Russell Senior - -diff --git a/libbridge/libbridge.h b/libbridge/libbridge.h -index 39964f2..dd14bae 100644 ---- a/libbridge/libbridge.h -+++ b/libbridge/libbridge.h -@@ -20,6 +20,7 @@ - #define _LIBBRIDGE_H - - #include -+#include - #include - #include - diff --git a/package/bridge-utils/0003-sysfs-write-fixes.patch b/package/bridge-utils/0003-sysfs-write-fixes.patch deleted file mode 100644 index a7ff1979f5..0000000000 --- a/package/bridge-utils/0003-sysfs-write-fixes.patch +++ /dev/null @@ -1,81 +0,0 @@ -commit bb9970a9df95837e39d680021b1f73d231e85406 -Author: Stephen Hemminger -Date: Tue May 3 09:52:43 2011 -0700 - - Check error returns from write to sysfs - - Add helper function to check write to sysfs files. - - Fix incorrect sysfs path in br_set. - -[Thomas De Schampheleire: update commit message only] -Signed-off-by: Thomas De Schampheleire - -diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c -index aa8bc36..1e83925 100644 ---- a/libbridge/libbridge_devif.c -+++ b/libbridge/libbridge_devif.c -@@ -280,25 +280,38 @@ fallback: - return old_get_port_info(brname, port, info); - } - -+static int set_sysfs(const char *path, unsigned long value) -+{ -+ int fd, ret = 0, cc; -+ char buf[32]; -+ -+ fd = open(path, O_WRONLY); -+ if (fd < 0) -+ return -1; -+ -+ cc = snprintf(buf, sizeof(buf), "%lu\n", value); -+ if (write(fd, buf, cc) < 0) -+ ret = -1; -+ close(fd); -+ -+ return ret; -+} -+ - - static int br_set(const char *bridge, const char *name, - unsigned long value, unsigned long oldcode) - { - int ret; - char path[SYSFS_PATH_MAX]; -- FILE *f; - -- snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/%s", bridge, name); -+ snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/bridge/%s", -+ bridge, name); - -- f = fopen(path, "w"); -- if (f) { -- ret = fprintf(f, "%ld\n", value); -- fclose(f); -- } else { -+ if ((ret = set_sysfs(path, value)) < 0) { - /* fallback to old ioctl */ - struct ifreq ifr; - unsigned long args[4] = { oldcode, value, 0, 0 }; -- -+ - strncpy(ifr.ifr_name, bridge, IFNAMSIZ); - ifr.ifr_data = (char *) &args; - ret = ioctl(br_socket_fd, SIOCDEVPRIVATE, &ifr); -@@ -348,14 +361,10 @@ static int port_set(const char *bridge, const char *ifname, - { - int ret; - char path[SYSFS_PATH_MAX]; -- FILE *f; - - snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/brport/%s", ifname, name); -- f = fopen(path, "w"); -- if (f) { -- ret = fprintf(f, "%ld\n", value); -- fclose(f); -- } else { -+ -+ if ((ret = set_sysfs(path, value)) < 0) { - int index = get_portno(bridge, ifname); - - if (index < 0) diff --git a/package/bridge-utils/Config.in b/package/bridge-utils/Config.in index 537eb1f59f..fb9c7df427 100644 --- a/package/bridge-utils/Config.in +++ b/package/bridge-utils/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_BRIDGE_UTILS Manage ethernet bridging; a way to connect networks together to form a larger network. - http://linux-net.osdl.org/index.php/Bridge + https://git.kernel.org/cgit/linux/kernel/git/shemminger/bridge-utils.git/ diff --git a/package/bridge-utils/bridge-utils.hash b/package/bridge-utils/bridge-utils.hash index c85fd04154..e699b24a63 100644 --- a/package/bridge-utils/bridge-utils.hash +++ b/package/bridge-utils/bridge-utils.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/bridge/files/bridge/ -md5 ec7b381160b340648dede58c31bb2238 bridge-utils-1.5.tar.gz -sha1 19d2a58cd3a70f971aa931b40256174a847e60d6 bridge-utils-1.5.tar.gz +# From https://www.kernel.org/pub/linux/utils/net/bridge-utils/sha256sums.asc +sha256 cc67efb5d5fb8928a6569b3fade2b4042ec17da04678dab127d96b46489e26c8 bridge-utils-1.6.tar.xz diff --git a/package/bridge-utils/bridge-utils.mk b/package/bridge-utils/bridge-utils.mk index ae4c4197c7..efe57cd979 100644 --- a/package/bridge-utils/bridge-utils.mk +++ b/package/bridge-utils/bridge-utils.mk @@ -4,8 +4,9 @@ # ################################################################################ -BRIDGE_UTILS_VERSION = 1.5 -BRIDGE_UTILS_SITE = http://downloads.sourceforge.net/project/bridge/bridge +BRIDGE_UTILS_VERSION = 1.6 +BRIDGE_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/net/bridge-utils +BRIDGE_UTILS_SOURCE = bridge-utils-1.6.tar.xz BRIDGE_UTILS_AUTORECONF = YES BRIDGE_UTILS_CONF_OPTS = --with-linux-headers=$(LINUX_HEADERS_DIR) BRIDGE_UTILS_LICENSE = GPLv2+ diff --git a/package/bsdiff/bsdiff.mk b/package/bsdiff/bsdiff.mk index 7d2b2969db..eb903e053f 100644 --- a/package/bsdiff/bsdiff.mk +++ b/package/bsdiff/bsdiff.mk @@ -11,9 +11,9 @@ BSDIFF_LICENSE = BSD-2c BSDIFF_LICENSE_FILES = bsdiff.c define BSDIFF_BUILD_CMDS - $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \ + $(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \ $(@D)/bsdiff.c -lbz2 -o $(@D)/bsdiff - $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \ + $(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \ $(@D)/bspatch.c -lbz2 -o $(@D)/bspatch endef diff --git a/package/btrfs-progs/0001-Makefile.in-install-static-library-and-headers-in-in.patch b/package/btrfs-progs/0001-Makefile.in-install-static-library-and-headers-in-in.patch new file mode 100644 index 0000000000..d861dfc80a --- /dev/null +++ b/package/btrfs-progs/0001-Makefile.in-install-static-library-and-headers-in-in.patch @@ -0,0 +1,47 @@ +From 2c2c2d992c3b298793983317588f73cf41675652 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 27 Jul 2016 22:49:58 +0200 +Subject: [PATCH] Makefile.in: install static library and headers in + install-static + +Currently, the install-static target only installs the statically +compiled tools. However, some programs outside of btrfs-progs (for +example docker) link with the btrfs libraries. If such programs want +to link statically against the btrfs-progs library, then this library +should be installed by "install-static". Indeed, "make install" cannot +be used if the support for shared library is not enabled. + +Signed-off-by: Thomas Petazzoni +[Gustavo: Rebase for btrfs-progs 4.7.2] +Signed-off-by: Gustavo Zacarias +--- + Makefile.in | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index 19697ff..5870a58 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -219,7 +219,7 @@ test: test-fsck test-mkfs test-convert test-misc test-fuzz + # NOTE: For static compiles, you need to have all the required libs + # static equivalent available + # +-static: $(progs_static) ++static: $(progs_static) $(libs_static) + + version.h: version.sh version.h.in configure.ac + @echo " [SH] $@" +@@ -384,6 +384,10 @@ install-static: $(progs_static) $(INSTALLDIRS) + done + # btrfsck is a link to btrfs in the src tree, make it so for installed file as well + $(LN_S) -f btrfs.static $(DESTDIR)$(bindir)/btrfsck.static ++ $(INSTALL) -m755 -d $(DESTDIR)$(libdir) ++ $(INSTALL) $(libs_static) $(DESTDIR)$(libdir) ++ $(INSTALL) -m755 -d $(DESTDIR)$(incdir) ++ $(INSTALL) -m644 $(headers) $(DESTDIR)$(incdir) + + $(INSTALLDIRS): + @echo "Making install in $(patsubst install-%,%,$@)" +-- +2.7.3 + diff --git a/package/btrfs-progs/0001-configure-refactor-backtrace-detection.patch b/package/btrfs-progs/0001-configure-refactor-backtrace-detection.patch deleted file mode 100644 index 0f834ded94..0000000000 --- a/package/btrfs-progs/0001-configure-refactor-backtrace-detection.patch +++ /dev/null @@ -1,132 +0,0 @@ -From 9bef473d17ec01efe760462271791dfaaea280c0 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Wed, 29 Jul 2015 22:35:19 +0200 -Subject: [PATCH 1/3] configure: refactor backtrace() detection - -The current code assumes that if __GLIBC__ is not defined, backtrace -support is not available, and defines BTRFS_DISABLE_BACKTRACE. - -However, this macro is already defined by the configure.ac script when ---disable-backtrace is passed. This means that if you are using a C -library like musl which does not define __GLIBC__, and you pass ---disable-backtrace, you get a macro redefinition. - -Instead of relying on __GLIBC__, this commit implements a proper -configure.ac based detection of backtrace support: - - * If the user passes --enable-backtrace, we check if the backtrace() - function is available. If not, we abort the configure process with - an error. Otherwise we enable backtrace support by defining - HAVE_BACKTRACE. - - * If the user passes --disable-backtrace, then we don't enable - backtrace support. - - * If the user passes nothing special, we auto-detect: if backtrace() - is available, we use it, otherwise we simply warn at configure time - but not fail. - -Upstream-status: pending -Signed-off-by: Thomas Petazzoni -Signed-off-by: Brendan Heading ---- - configure.ac | 32 ++++++++++++++++++++++---------- - kerncompat.h | 9 ++++----- - 2 files changed, 26 insertions(+), 15 deletions(-) - -diff --git a/configure.ac b/configure.ac -index c3a22d1..e936a10 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -63,22 +63,34 @@ AC_DEFUN([PKG_STATIC], [ - fi - ]) - -- -+# Provide a --{enable,disable}-backtrace option. If not passed, set -+# enable_backtrace to 'auto' so that we try to enable backtrace -+# support if available, but if not available, we gracefully fallback -+# without backtrace support. - AC_ARG_ENABLE([backtrace], - AS_HELP_STRING([--disable-backtrace], [disable btrfs backtrace]), -- [], [enable_backtrace=yes] -+ [enable_backtrace=${enableval}], [enable_backtrace=auto] - ) - --AS_IF([test "x$enable_backtrace" = xno], [ -- AC_DEFINE([BTRFS_DISABLE_BACKTRACE], [1], [disable backtrace stuff in kerncompat.h ]) --]) -- --if test "x$enable_backtrace" = xyes; then -- AC_CHECK_HEADERS([execinfo.h]) -- AC_CHECK_FUNCS([backtrace backtrace_symbols_fd], [], -- AC_MSG_ERROR([standard library does not have backtrace support])) -+# Backtrace support requested (enable_backtrace is either 'yes' or -+# 'auto'), so check for needed headers and functions. -+if test "x$enable_backtrace" != xno; then -+ AC_CHECK_HEADERS([execinfo.h]) -+ AC_CHECK_FUNCS([backtrace backtrace_symbols_fd]) - fi - -+if test "x$ac_cv_func_backtrace" = xno; then -+ # If backtrace support was requested but not available, we fail if -+ # --enable-backtrace was passed, or we simply warn if we're -+ # auto-detecting. -+ if test "x$enable_backtrace" = xyes ; then -+ AC_MSG_ERROR([standard library does not have backtrace support]) -+ elif test "x$enable_backtrace" = xauto ; then -+ AC_MSG_WARN([standard library does not have backtrace support, disabled]) -+ fi -+else -+ AC_DEFINE([HAVE_BACKTRACE], [1], [Enable backtrace support]) -+fi - - AC_ARG_ENABLE([documentation], - AS_HELP_STRING([--disable-documentation], [do not build domumentation]), -diff --git a/kerncompat.h b/kerncompat.h -index 5d92856..8318665 100644 ---- a/kerncompat.h -+++ b/kerncompat.h -@@ -33,11 +33,10 @@ - #include - - #ifndef __GLIBC__ --#define BTRFS_DISABLE_BACKTRACE - #define __always_inline __inline __attribute__ ((__always_inline__)) - #endif - --#ifndef BTRFS_DISABLE_BACKTRACE -+#ifdef HAVE_BACKTRACE - #include - #endif - -@@ -65,7 +64,7 @@ - #define ULONG_MAX (~0UL) - #endif - --#ifndef BTRFS_DISABLE_BACKTRACE -+#ifdef HAVE_BACKTRACE - #define MAX_BACKTRACE 16 - static inline void print_trace(void) - { -@@ -285,7 +284,7 @@ static inline long IS_ERR(const void *ptr) - #define vmalloc(x) malloc(x) - #define vfree(x) free(x) - --#ifndef BTRFS_DISABLE_BACKTRACE -+#ifdef HAVE_BACKTRACE - #define BUG_ON(c) assert_trace(#c, __FILE__, __func__, __LINE__, !(c)) - #else - #define BUG_ON(c) assert(!(c)) -@@ -293,7 +292,7 @@ static inline long IS_ERR(const void *ptr) - - #define WARN_ON(c) BUG_ON(c) - --#ifndef BTRFS_DISABLE_BACKTRACE -+#ifdef HAVE_BACKTRACE - #define ASSERT(c) assert_trace(#c, __FILE__, __func__, __LINE__, (c)) - #else - #define ASSERT(c) assert(c) --- -2.4.3 - diff --git a/package/btrfs-progs/0002-configure-refactor-always_inline-detection.patch b/package/btrfs-progs/0002-configure-refactor-always_inline-detection.patch deleted file mode 100644 index f54d2501a2..0000000000 --- a/package/btrfs-progs/0002-configure-refactor-always_inline-detection.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 1d99ae25bb1bd4879c6f20f607faf3040018ee84 Mon Sep 17 00:00:00 2001 -From: Brendan Heading -Date: Thu, 30 Jul 2015 15:44:52 +0100 -Subject: [PATCH 2/3] configure: refactor always_inline detection - -Use configure.ac to detect the availability of the always_inline glibc -macro, and define it only if it does not exist. - -Signed-off-by: Brendan Heading ---- - configure.ac | 1 + - kerncompat.h | 2 +- - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index e936a10..d3d81a1 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -41,6 +41,7 @@ AC_PATH_PROG([RMDIR], [rmdir], [rmdir]) - - AC_CHECK_FUNCS([openat], [], - [AC_MSG_ERROR([cannot find openat() function])]) -+AC_CHECK_DECLS([__always_inline]) - - m4_ifndef([PKG_PROG_PKG_CONFIG], - [m4_fatal([Could not locate the pkg-config autoconf -diff --git a/kerncompat.h b/kerncompat.h -index 8318665..757b9b4 100644 ---- a/kerncompat.h -+++ b/kerncompat.h -@@ -32,7 +32,7 @@ - - #include - --#ifndef __GLIBC__ -+#ifndef HAVE_DECL___ALWAYS_INLINE - #define __always_inline __inline __attribute__ ((__always_inline__)) - #endif - --- -2.4.3 - diff --git a/package/btrfs-progs/0003-compile-fix-undefined-PATH_MAX-under-musl.patch b/package/btrfs-progs/0003-compile-fix-undefined-PATH_MAX-under-musl.patch deleted file mode 100644 index 35260148b2..0000000000 --- a/package/btrfs-progs/0003-compile-fix-undefined-PATH_MAX-under-musl.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 3197a4b058615d81aa4623fb5a52e57d7fbc3af2 Mon Sep 17 00:00:00 2001 -From: Brendan Heading -Date: Thu, 30 Jul 2015 15:47:16 +0100 -Subject: [PATCH 3/3] compile: fix undefined PATH_MAX under musl - -musl's strict implementation requires #include for PATH_MAX. - -Upstream-status: submitted -Signed-off-by: Brendan Heading ---- - cmds-inspect.c | 1 + - cmds-receive.c | 1 + - cmds-scrub.c | 1 + - cmds-send.c | 1 + - 4 files changed, 4 insertions(+) - -diff --git a/cmds-inspect.c b/cmds-inspect.c -index 71451fe..9712581 100644 ---- a/cmds-inspect.c -+++ b/cmds-inspect.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - #include "kerncompat.h" - #include "ioctl.h" -diff --git a/cmds-receive.c b/cmds-receive.c -index 071bea9..d4b3103 100644 ---- a/cmds-receive.c -+++ b/cmds-receive.c -@@ -28,6 +28,7 @@ - #include - #include - #include -+#include - - #include - #include -diff --git a/cmds-scrub.c b/cmds-scrub.c -index b7aa809..5a85dc4 100644 ---- a/cmds-scrub.c -+++ b/cmds-scrub.c -@@ -34,6 +34,7 @@ - #include - #include - #include -+#include - - #include "ctree.h" - #include "ioctl.h" -diff --git a/cmds-send.c b/cmds-send.c -index 20bba18..a0b7f95 100644 ---- a/cmds-send.c -+++ b/cmds-send.c -@@ -33,6 +33,7 @@ - #include - #include - #include -+#include - - #include "ctree.h" - #include "ioctl.h" --- -2.4.3 - diff --git a/package/btrfs-progs/Config.in b/package/btrfs-progs/Config.in index dc0fa811b1..ad86bab580 100644 --- a/package/btrfs-progs/Config.in +++ b/package/btrfs-progs/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_BTRFS_PROGS bool "btrfs-progs" - depends on BR2_USE_WCHAR # util-linux depends on BR2_USE_MMU # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_E2FSPROGS @@ -14,6 +13,6 @@ config BR2_PACKAGE_BTRFS_PROGS https://btrfs.wiki.kernel.org/index.php/Main_Page -comment "btrfs-progs needs a toolchain w/ wchar, threads" +comment "btrfs-progs needs a toolchain w/ threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/btrfs-progs/btrfs-progs.hash b/package/btrfs-progs/btrfs-progs.hash index 799c878f0c..f9809289b0 100644 --- a/package/btrfs-progs/btrfs-progs.hash +++ b/package/btrfs-progs/btrfs-progs.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs/sha256sums.asc -sha256 62db60c6a0868afb6302112cea54c756873bc30b826696b167ec03ecd61b2f12 btrfs-progs-v4.1.2.tar.xz +sha256 464a9bfd2b5eda76b0246ee0a4043f4de8d17c10312bc8b84abc5fbf9317fede btrfs-progs-v4.9.1.tar.xz diff --git a/package/btrfs-progs/btrfs-progs.mk b/package/btrfs-progs/btrfs-progs.mk index 2c3dc50d45..f73397ca8e 100644 --- a/package/btrfs-progs/btrfs-progs.mk +++ b/package/btrfs-progs/btrfs-progs.mk @@ -4,18 +4,20 @@ # ################################################################################ -BTRFS_PROGS_VERSION = 4.1.2 +BTRFS_PROGS_VERSION = 4.9.1 BTRFS_PROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/kdave/btrfs-progs BTRFS_PROGS_SOURCE = btrfs-progs-v$(BTRFS_PROGS_VERSION).tar.xz BTRFS_PROGS_DEPENDENCIES = host-pkgconf e2fsprogs lzo util-linux zlib BTRFS_PROGS_CONF_OPTS = --disable-backtrace BTRFS_PROGS_LICENSE = GPLv2 BTRFS_PROGS_LICENSE_FILES = COPYING +BTRFS_PROGS_INSTALL_STAGING = YES # Doesn't autodetect static-only and tries to build both ifeq ($(BR2_STATIC_LIBS),y) BTRFS_PROGS_MAKE_OPTS = static BTRFS_PROGS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-static +BTRFS_PROGS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-static endif $(eval $(autotools-package)) diff --git a/package/bullet/bullet.hash b/package/bullet/bullet.hash new file mode 100644 index 0000000000..cccc42580e --- /dev/null +++ b/package/bullet/bullet.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6e157c0b50373bc0e860de27f06397827bb28a4205bc568ae79d76a0f919ed62 bullet-2.85.1.tar.gz diff --git a/package/bullet/bullet.mk b/package/bullet/bullet.mk index 3ec97b4326..99ff423632 100644 --- a/package/bullet/bullet.mk +++ b/package/bullet/bullet.mk @@ -4,15 +4,16 @@ # ################################################################################ -# This is the git id of the 2.82 release. -BULLET_VERSION = 19f999ac087e68ffc2551ffb73e35e60271a0d27 +BULLET_VERSION = 2.85.1 BULLET_SITE = $(call github,bulletphysics,bullet3,$(BULLET_VERSION)) BULLET_INSTALL_STAGING = YES BULLET_LICENSE = zlib license -BULLET_LICENSE_FILES = BulletLicense.txt COPYING +BULLET_LICENSE_FILES = LICENSE.txt -# Disable GLUT support since there is no freeglut or OpenGLUT package and we -# don't build the demos apps. -BULLET_CONF_OPTS = -DUSE_GLUT=OFF -DBUILD_DEMOS=OFF +# Disable demos apps and unit tests. +# Disable Bullet3 library. +BULLET_CONF_OPTS = -DBUILD_UNIT_TESTS=OFF \ + -DBUILD_BULLET2_DEMOS=OFF \ + -DBUILD_BULLET3=OFF $(eval $(cmake-package)) diff --git a/package/busybox/0003-ash-recursive-heredocs.patch b/package/busybox/0003-ash-recursive-heredocs.patch deleted file mode 100644 index f054a90375..0000000000 --- a/package/busybox/0003-ash-recursive-heredocs.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 4194c2875310c13ee3ca2bb0e1aea6a2ae67c55a Mon Sep 17 00:00:00 2001 -From: Ron Yorston -Date: Thu, 29 Oct 2015 16:44:56 +0000 -Subject: [PATCH] ash: fix error during recursive processing of here document - -Save the value of the checkkwd flag to prevent it being clobbered -during recursion. - -Based on commit ec2c84d from git://git.kernel.org/pub/scm/utils/dash/dash.git -by Herbert Xu. - -function old new delta -readtoken 190 203 +13 ------------------------------------------------------------------------------- -(add/remove: 0/0 grow/shrink: 1/0 up/down: 13/0) Total: 13 bytes - -Signed-off-by: Ron Yorston -Signed-off-by: Denys Vlasenko -Signed-off-by: Mike Frysinger -(cherry picked from commit 713f07d906d9171953be0c12e2369869855b6ca6) -Signed-off-by: Gustavo Zacarias ---- - shell/ash.c | 5 +++-- - shell/ash_test/ash-heredoc/heredoc3.right | 1 + - shell/ash_test/ash-heredoc/heredoc3.tests | 9 +++++++++ - 3 files changed, 13 insertions(+), 2 deletions(-) - create mode 100644 shell/ash_test/ash-heredoc/heredoc3.right - create mode 100755 shell/ash_test/ash-heredoc/heredoc3.tests - -diff --git a/shell/ash.c b/shell/ash.c -index 8a1628e..256e933 100644 ---- a/shell/ash.c -+++ b/shell/ash.c -@@ -11893,6 +11893,7 @@ static int - readtoken(void) - { - int t; -+ int kwd = checkkwd; - #if DEBUG - smallint alreadyseen = tokpushback; - #endif -@@ -11906,7 +11907,7 @@ readtoken(void) - /* - * eat newlines - */ -- if (checkkwd & CHKNL) { -+ if (kwd & CHKNL) { - while (t == TNL) { - parseheredoc(); - t = xxreadtoken(); -@@ -11920,7 +11921,7 @@ readtoken(void) - /* - * check for keywords - */ -- if (checkkwd & CHKKWD) { -+ if (kwd & CHKKWD) { - const char *const *pp; - - pp = findkwd(wordtext); -diff --git a/shell/ash_test/ash-heredoc/heredoc3.right b/shell/ash_test/ash-heredoc/heredoc3.right -new file mode 100644 -index 0000000..ce01362 ---- /dev/null -+++ b/shell/ash_test/ash-heredoc/heredoc3.right -@@ -0,0 +1 @@ -+hello -diff --git a/shell/ash_test/ash-heredoc/heredoc3.tests b/shell/ash_test/ash-heredoc/heredoc3.tests -new file mode 100755 -index 0000000..96c227c ---- /dev/null -+++ b/shell/ash_test/ash-heredoc/heredoc3.tests -@@ -0,0 +1,9 @@ -+echo hello >greeting -+cat </dev/null -+rm greeting --- -2.7.4 - diff --git a/package/busybox/0004-fix-CVE-2016-2147.patch b/package/busybox/0004-fix-CVE-2016-2147.patch deleted file mode 100644 index bd1e47ecf4..0000000000 --- a/package/busybox/0004-fix-CVE-2016-2147.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 3c4de6e36c4d387a648622e7b828a05f2b1b47e6 Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko -Date: Fri, 26 Feb 2016 15:54:56 +0100 -Subject: [PATCH] udhcpc: fix OPTION_6RD parsing (could overflow its malloced - buffer) - -Signed-off-by: Denys Vlasenko -Signed-off-by: Mike Frysinger -(cherry picked from commit 352f79acbd759c14399e39baef21fc4ffe180ac2) -Signed-off-by: Gustavo Zacarias ---- - networking/udhcp/common.c | 15 +++++++++++++-- - networking/udhcp/dhcpc.c | 4 ++-- - 2 files changed, 15 insertions(+), 4 deletions(-) - -diff --git a/networking/udhcp/common.c b/networking/udhcp/common.c -index bc41c8d..680852c 100644 ---- a/networking/udhcp/common.c -+++ b/networking/udhcp/common.c -@@ -142,7 +142,7 @@ const char dhcp_option_strings[] ALIGN1 = - * udhcp_str2optset: to determine how many bytes to allocate. - * xmalloc_optname_optval: to estimate string length - * from binary option length: (option[LEN] / dhcp_option_lengths[opt_type]) -- * is the number of elements, multiply in by one element's string width -+ * is the number of elements, multiply it by one element's string width - * (len_of_option_as_string[opt_type]) and you know how wide string you need. - */ - const uint8_t dhcp_option_lengths[] ALIGN1 = { -@@ -162,7 +162,18 @@ const uint8_t dhcp_option_lengths[] ALIGN1 = { - [OPTION_S32] = 4, - /* Just like OPTION_STRING, we use minimum length here */ - [OPTION_STATIC_ROUTES] = 5, -- [OPTION_6RD] = 22, /* ignored by udhcp_str2optset */ -+ [OPTION_6RD] = 12, /* ignored by udhcp_str2optset */ -+ /* The above value was chosen as follows: -+ * len_of_option_as_string[] for this option is >60: it's a string of the form -+ * "32 128 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff 255.255.255.255 ". -+ * Each additional ipv4 address takes 4 bytes in binary option and appends -+ * another "255.255.255.255 " 16-byte string. We can set [OPTION_6RD] = 4 -+ * but this severely overestimates string length: instead of 16 bytes, -+ * it adds >60 for every 4 bytes in binary option. -+ * We cheat and declare here that option is in units of 12 bytes. -+ * This adds more than 60 bytes for every three ipv4 addresses - more than enough. -+ * (Even 16 instead of 12 should work, but let's be paranoid). -+ */ - }; - - -diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c -index 915f659..2332b57 100644 ---- a/networking/udhcp/dhcpc.c -+++ b/networking/udhcp/dhcpc.c -@@ -113,7 +113,7 @@ static const uint8_t len_of_option_as_string[] = { - [OPTION_IP ] = sizeof("255.255.255.255 "), - [OPTION_IP_PAIR ] = sizeof("255.255.255.255 ") * 2, - [OPTION_STATIC_ROUTES ] = sizeof("255.255.255.255/32 255.255.255.255 "), -- [OPTION_6RD ] = sizeof("32 128 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff 255.255.255.255 "), -+ [OPTION_6RD ] = sizeof("132 128 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff 255.255.255.255 "), - [OPTION_STRING ] = 1, - [OPTION_STRING_HOST ] = 1, - #if ENABLE_FEATURE_UDHCP_RFC3397 -@@ -220,7 +220,7 @@ static NOINLINE char *xmalloc_optname_optval(uint8_t *option, const struct dhcp_ - type = optflag->flags & OPTION_TYPE_MASK; - optlen = dhcp_option_lengths[type]; - upper_length = len_of_option_as_string[type] -- * ((unsigned)(len + optlen - 1) / (unsigned)optlen); -+ * ((unsigned)(len + optlen) / (unsigned)optlen); - - dest = ret = xmalloc(upper_length + strlen(opt_name) + 2); - dest += sprintf(ret, "%s=", opt_name); --- -2.7.4 - diff --git a/package/busybox/0005-fix-CVE-2016-2148.patch b/package/busybox/0005-fix-CVE-2016-2148.patch deleted file mode 100644 index 93eff484d4..0000000000 --- a/package/busybox/0005-fix-CVE-2016-2148.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 3a76bb5136d05f94ee62e377aa723e63444912c7 Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko -Date: Thu, 10 Mar 2016 11:47:58 +0100 -Subject: [PATCH] udhcp: fix a SEGV on malformed RFC1035-encoded domain name - -Signed-off-by: Denys Vlasenko -Signed-off-by: Mike Frysinger -(cherry picked from commit d474ffc68290e0a83651c4432eeabfa62cd51e87) -Signed-off-by: Gustavo Zacarias ---- - networking/udhcp/domain_codec.c | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - -diff --git a/networking/udhcp/domain_codec.c b/networking/udhcp/domain_codec.c -index c1325d8..8429367 100644 ---- a/networking/udhcp/domain_codec.c -+++ b/networking/udhcp/domain_codec.c -@@ -63,11 +63,10 @@ char* FAST_FUNC dname_dec(const uint8_t *cstr, int clen, const char *pre) - if (crtpos + *c + 1 > clen) /* label too long? abort */ - return NULL; - if (dst) -- memcpy(dst + len, c + 1, *c); -+ /* \3com ---> "com." */ -+ ((char*)mempcpy(dst + len, c + 1, *c))[0] = '.'; - len += *c + 1; - crtpos += *c + 1; -- if (dst) -- dst[len - 1] = '.'; - } else { - /* NUL: end of current domain name */ - if (retpos == 0) { -@@ -78,7 +77,10 @@ char* FAST_FUNC dname_dec(const uint8_t *cstr, int clen, const char *pre) - crtpos = retpos; - retpos = depth = 0; - } -- if (dst) -+ if (dst && len != 0) -+ /* \4host\3com\0\4host and we are at \0: -+ * \3com was converted to "com.", change dot to space. -+ */ - dst[len - 1] = ' '; - } - -@@ -228,6 +230,9 @@ int main(int argc, char **argv) - int len; - uint8_t *encoded; - -+ uint8_t str[6] = { 0x00, 0x00, 0x02, 0x65, 0x65, 0x00 }; -+ printf("NUL:'%s'\n", dname_dec(str, 6, "")); -+ - #define DNAME_DEC(encoded,pre) dname_dec((uint8_t*)(encoded), sizeof(encoded), (pre)) - printf("'%s'\n", DNAME_DEC("\4host\3com\0", "test1:")); - printf("test2:'%s'\n", DNAME_DEC("\4host\3com\0\4host\3com\0", "")); --- -2.7.4 - diff --git a/package/busybox/Config.in b/package/busybox/Config.in index a3a328d484..504cd8a65a 100644 --- a/package/busybox/Config.in +++ b/package/busybox/Config.in @@ -26,6 +26,8 @@ config BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES A space-separated list of configuration fragment files, that will be merged to the main BusyBox configuration file. +# This option is not an option of Busybox, it can be selected even +# if Busybox is not enabled. config BR2_PACKAGE_BUSYBOX_SHOW_OTHERS bool "Show packages that are also provided by busybox" help @@ -36,6 +38,7 @@ config BR2_PACKAGE_BUSYBOX_SELINUX select BR2_PACKAGE_LIBSELINUX depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_arc bool "Enable SELinux support" help @@ -74,8 +77,13 @@ endif if !BR2_PACKAGE_BUSYBOX # kconfig doesn't support else -# add dummy config so the stuff with busybox alternatives are shown -# when busybox is disabled +comment "You may need to enable other packages to get a working system" +comment "You better know what you're doing!" + +# This option is not an option of Busybox, it can be selected even if +# Busybox is not enabled. This dummy option ensures that packages that +# depend on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS are visible when Busybox +# is disabled. config BR2_PACKAGE_BUSYBOX_SHOW_OTHERS default y endif diff --git a/package/busybox/S10mdev b/package/busybox/S10mdev index 4cb31de42d..63ca955b1c 100644 --- a/package/busybox/S10mdev +++ b/package/busybox/S10mdev @@ -9,7 +9,7 @@ case "$1" in echo /sbin/mdev >/proc/sys/kernel/hotplug /sbin/mdev -s # coldplug modules - find /sys/ -name modalias | xargs sort -u | xargs modprobe -abq + find /sys/ -name modalias -print0 | xargs -0 sort -u -z | xargs -0 modprobe -abq ;; stop) ;; diff --git a/package/busybox/S50telnet b/package/busybox/S50telnet index 47e2b63e19..82952b8cb8 100755 --- a/package/busybox/S50telnet +++ b/package/busybox/S50telnet @@ -3,10 +3,13 @@ # Start telnet.... # +TELNETD_ARGS=-F +[ -r /etc/default/telnet ] && . /etc/default/telnet + start() { printf "Starting telnetd: " start-stop-daemon -S -q -m -b -p /var/run/telnetd.pid \ - -x /usr/sbin/telnetd -- -F + -x /usr/sbin/telnetd -- $TELNETD_ARGS [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/busybox/busybox-minimal.config b/package/busybox/busybox-minimal.config index 368ce8ed69..2abf458b78 100644 --- a/package/busybox/busybox-minimal.config +++ b/package/busybox/busybox-minimal.config @@ -1,43 +1,25 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.24.2 -# Mon May 9 18:42:38 2016 +# Busybox version: 1.26.0 +# Thu Dec 29 21:13:55 2016 # CONFIG_HAVE_DOT_CONFIG=y # # Busybox Settings # - -# -# General Configuration -# # CONFIG_DESKTOP is not set # CONFIG_EXTRA_COMPAT is not set CONFIG_INCLUDE_SUSv2=y # CONFIG_USE_PORTABLE_CODE is not set CONFIG_PLATFORM_LINUX=y -CONFIG_FEATURE_BUFFERS_USE_MALLOC=y -# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set -# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set # CONFIG_SHOW_USAGE is not set # CONFIG_FEATURE_VERBOSE_USAGE is not set # CONFIG_FEATURE_COMPRESS_USAGE is not set +CONFIG_BUSYBOX=y CONFIG_FEATURE_INSTALLER=y # CONFIG_INSTALL_NO_USR is not set -# CONFIG_LOCALE_SUPPORT is not set -# CONFIG_UNICODE_SUPPORT is not set -# CONFIG_UNICODE_USING_LOCALE is not set -# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -CONFIG_SUBST_WCHAR=0 -CONFIG_LAST_SUPPORTED_WCHAR=0 -# CONFIG_UNICODE_COMBINING_WCHARS is not set -# CONFIG_UNICODE_WIDE_WCHARS is not set -# CONFIG_UNICODE_BIDI_SUPPORT is not set -# CONFIG_UNICODE_NEUTRAL_TABLE is not set -# CONFIG_UNICODE_PRESERVE_BROKEN is not set # CONFIG_PAM is not set -CONFIG_FEATURE_USE_SENDFILE=y CONFIG_LONG_OPTS=y CONFIG_FEATURE_DEVPTS=y CONFIG_FEATURE_CLEAN_UP=y @@ -70,17 +52,6 @@ CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" -# -# Debugging Options -# -# CONFIG_DEBUG is not set -# CONFIG_DEBUG_PESSIMIZE is not set -# CONFIG_UNIT_TEST is not set -# CONFIG_WERROR is not set -CONFIG_NO_DEBUG_LIB=y -# CONFIG_DMALLOC is not set -# CONFIG_EFENCE is not set - # # Installation Options ("make install" behavior) # @@ -93,11 +64,26 @@ CONFIG_INSTALL_APPLET_SYMLINKS=y # CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set CONFIG_PREFIX="./_install" +# +# Debugging Options +# +# CONFIG_DEBUG is not set +# CONFIG_DEBUG_PESSIMIZE is not set +# CONFIG_DEBUG_SANITIZE is not set +# CONFIG_UNIT_TEST is not set +# CONFIG_WERROR is not set +CONFIG_NO_DEBUG_LIB=y +# CONFIG_DMALLOC is not set +# CONFIG_EFENCE is not set + # # Busybox Library Tuning # -# CONFIG_FEATURE_SYSTEMD is not set +# CONFIG_FEATURE_USE_BSS_TAIL is not set CONFIG_FEATURE_RTMINMAX=y +CONFIG_FEATURE_BUFFERS_USE_MALLOC=y +# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set +# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set CONFIG_PASSWORD_MINLEN=6 CONFIG_MD5_SMALL=1 CONFIG_SHA3_SMALL=1 @@ -115,8 +101,20 @@ CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set CONFIG_FEATURE_EDITING_FANCY_PROMPT=y # CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set +# CONFIG_LOCALE_SUPPORT is not set +# CONFIG_UNICODE_SUPPORT is not set +# CONFIG_UNICODE_USING_LOCALE is not set +# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set +CONFIG_SUBST_WCHAR=0 +CONFIG_LAST_SUPPORTED_WCHAR=0 +# CONFIG_UNICODE_COMBINING_WCHARS is not set +# CONFIG_UNICODE_WIDE_WCHARS is not set +# CONFIG_UNICODE_BIDI_SUPPORT is not set +# CONFIG_UNICODE_NEUTRAL_TABLE is not set +# CONFIG_UNICODE_PRESERVE_BROKEN is not set CONFIG_FEATURE_NON_POSIX_CP=y # CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +CONFIG_FEATURE_USE_SENDFILE=y CONFIG_FEATURE_COPYBUF_KB=4 CONFIG_FEATURE_SKIP_ROOTFS=y CONFIG_MONOTONIC_SYSCALL=y @@ -140,11 +138,16 @@ CONFIG_FEATURE_HWIB=y # CONFIG_FEATURE_AR_CREATE is not set # CONFIG_UNCOMPRESS is not set # CONFIG_GUNZIP is not set +CONFIG_ZCAT=y +# CONFIG_FEATURE_GUNZIP_LONG_OPTIONS is not set # CONFIG_BUNZIP2 is not set +CONFIG_BZCAT=y # CONFIG_UNLZMA is not set -# CONFIG_FEATURE_LZMA_FAST is not set +CONFIG_LZCAT=y # CONFIG_LZMA is not set +# CONFIG_FEATURE_LZMA_FAST is not set # CONFIG_UNXZ is not set +CONFIG_XZCAT=y # CONFIG_XZ is not set # CONFIG_BZIP2 is not set # CONFIG_CPIO is not set @@ -152,15 +155,16 @@ CONFIG_FEATURE_HWIB=y # CONFIG_FEATURE_CPIO_P is not set # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set -# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set # CONFIG_GZIP is not set # CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set CONFIG_GZIP_FAST=0 # CONFIG_FEATURE_GZIP_LEVELS is not set # CONFIG_LZOP is not set +CONFIG_UNLZOP=y +CONFIG_LZOPCAT=y # CONFIG_LZOP_COMPR_HIGH is not set -# CONFIG_RPM is not set # CONFIG_RPM2CPIO is not set +# CONFIG_RPM is not set # CONFIG_TAR is not set # CONFIG_FEATURE_TAR_CREATE is not set # CONFIG_FEATURE_TAR_AUTODETECT is not set @@ -179,36 +183,8 @@ CONFIG_GZIP_FAST=0 # Coreutils # CONFIG_BASENAME=y -CONFIG_CAT=y -CONFIG_DATE=y -CONFIG_FEATURE_DATE_ISOFMT=y -# CONFIG_FEATURE_DATE_NANO is not set -CONFIG_FEATURE_DATE_COMPAT=y -CONFIG_DD=y -CONFIG_FEATURE_DD_SIGNAL_HANDLING=y -# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set -CONFIG_FEATURE_DD_IBS_OBS=y -CONFIG_FEATURE_DD_STATUS=y -CONFIG_HOSTID=y -CONFIG_ID=y -# CONFIG_GROUPS is not set -# CONFIG_SHUF is not set -CONFIG_SYNC=y -# CONFIG_FEATURE_SYNC_FANCY is not set -CONFIG_TEST=y -CONFIG_FEATURE_TEST_64=y -CONFIG_TOUCH=y -# CONFIG_FEATURE_TOUCH_NODEREF is not set -CONFIG_FEATURE_TOUCH_SUSV3=y -CONFIG_TR=y -CONFIG_FEATURE_TR_CLASSES=y -CONFIG_FEATURE_TR_EQUIV=y -CONFIG_TRUNCATE=y -CONFIG_UNLINK=y -# CONFIG_BASE64 is not set -CONFIG_WHO=y -# CONFIG_USERS is not set # CONFIG_CAL is not set +CONFIG_CAT=y CONFIG_CATV=y CONFIG_CHGRP=y CONFIG_CHMOD=y @@ -220,6 +196,15 @@ CONFIG_CKSUM=y CONFIG_CP=y # CONFIG_FEATURE_CP_LONG_OPTIONS is not set CONFIG_CUT=y +CONFIG_DATE=y +CONFIG_FEATURE_DATE_ISOFMT=y +# CONFIG_FEATURE_DATE_NANO is not set +CONFIG_FEATURE_DATE_COMPAT=y +CONFIG_DD=y +CONFIG_FEATURE_DD_SIGNAL_HANDLING=y +# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set +CONFIG_FEATURE_DD_IBS_OBS=y +CONFIG_FEATURE_DD_STATUS=y CONFIG_DF=y # CONFIG_FEATURE_DF_FANCY is not set CONFIG_DIRNAME=y @@ -233,6 +218,8 @@ CONFIG_ENV=y # CONFIG_FEATURE_ENV_LONG_OPTIONS is not set # CONFIG_EXPAND is not set # CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set +# CONFIG_UNEXPAND is not set +# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set CONFIG_EXPR=y CONFIG_EXPR_MATH_SUPPORT_64=y CONFIG_FALSE=y @@ -240,6 +227,9 @@ CONFIG_FOLD=y # CONFIG_FSYNC is not set CONFIG_HEAD=y CONFIG_FEATURE_FANCY_HEAD=y +CONFIG_HOSTID=y +CONFIG_ID=y +# CONFIG_GROUPS is not set CONFIG_INSTALL=y CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y CONFIG_LN=y @@ -254,6 +244,15 @@ CONFIG_FEATURE_LS_USERNAME=y CONFIG_FEATURE_LS_COLOR=y CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y CONFIG_MD5SUM=y +CONFIG_SHA1SUM=y +CONFIG_SHA256SUM=y +CONFIG_SHA512SUM=y +CONFIG_SHA3SUM=y + +# +# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum +# +CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y CONFIG_MKDIR=y CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y CONFIG_MKFIFO=y @@ -273,10 +272,7 @@ CONFIG_RM=y CONFIG_RMDIR=y # CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set CONFIG_SEQ=y -CONFIG_SHA1SUM=y -CONFIG_SHA256SUM=y -CONFIG_SHA512SUM=y -CONFIG_SHA3SUM=y +# CONFIG_SHUF is not set CONFIG_SLEEP=y CONFIG_FEATURE_FANCY_SLEEP=y CONFIG_FEATURE_FLOAT_SLEEP=y @@ -286,26 +282,42 @@ CONFIG_FEATURE_SORT_BIG=y # CONFIG_FEATURE_SPLIT_FANCY is not set # CONFIG_STAT is not set # CONFIG_FEATURE_STAT_FORMAT is not set +# CONFIG_FEATURE_STAT_FILESYSTEM is not set CONFIG_STTY=y # CONFIG_SUM is not set +CONFIG_SYNC=y +# CONFIG_FEATURE_SYNC_FANCY is not set # CONFIG_TAC is not set CONFIG_TAIL=y CONFIG_FEATURE_FANCY_TAIL=y CONFIG_TEE=y CONFIG_FEATURE_TEE_USE_BLOCK_IO=y +CONFIG_TEST=y +CONFIG_TEST1=y +CONFIG_TEST2=y +CONFIG_FEATURE_TEST_64=y +CONFIG_TOUCH=y +# CONFIG_FEATURE_TOUCH_NODEREF is not set +CONFIG_FEATURE_TOUCH_SUSV3=y +CONFIG_TR=y +CONFIG_FEATURE_TR_CLASSES=y +CONFIG_FEATURE_TR_EQUIV=y CONFIG_TRUE=y +CONFIG_TRUNCATE=y CONFIG_TTY=y CONFIG_UNAME=y CONFIG_UNAME_OSNAME="GNU/Linux" -# CONFIG_UNEXPAND is not set -# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set CONFIG_UNIQ=y +CONFIG_UNLINK=y CONFIG_USLEEP=y CONFIG_UUDECODE=y +# CONFIG_BASE64 is not set CONFIG_UUENCODE=y CONFIG_WC=y # CONFIG_FEATURE_WC_LARGE is not set CONFIG_WHOAMI=y +CONFIG_WHO=y +# CONFIG_USERS is not set CONFIG_YES=y # @@ -328,21 +340,21 @@ CONFIG_FEATURE_AUTOWIDTH=y # CONFIG_FEATURE_HUMAN_READABLE=y -# -# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum -# -CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y - # # Console Utilities # # CONFIG_CHVT is not set -# CONFIG_FGCONSOLE is not set # CONFIG_CLEAR is not set # CONFIG_DEALLOCVT is not set # CONFIG_DUMPKMAP is not set +# CONFIG_FGCONSOLE is not set # CONFIG_KBD_MODE is not set # CONFIG_LOADFONT is not set +# CONFIG_SETFONT is not set +# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set +CONFIG_DEFAULT_SETFONT_DIR="" +# CONFIG_FEATURE_LOADFONT_PSF2 is not set +# CONFIG_FEATURE_LOADFONT_RAW is not set # CONFIG_LOADKMAP is not set # CONFIG_OPENVT is not set # CONFIG_RESET is not set @@ -350,14 +362,9 @@ CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y # CONFIG_FEATURE_RESIZE_PRINT is not set # CONFIG_SETCONSOLE is not set # CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set -# CONFIG_SETFONT is not set -# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set -CONFIG_DEFAULT_SETFONT_DIR="" # CONFIG_SETKEYCODES is not set # CONFIG_SETLOGCONS is not set # CONFIG_SHOWKEY is not set -# CONFIG_FEATURE_LOADFONT_PSF2 is not set -# CONFIG_FEATURE_LOADFONT_RAW is not set # # Debian Utilities @@ -432,8 +439,8 @@ CONFIG_FEATURE_VI_UNDO_QUEUE_MAX=0 # CONFIG_FEATURE_FIND_CONTEXT is not set # CONFIG_FEATURE_FIND_LINKS is not set CONFIG_GREP=y -CONFIG_FEATURE_GREP_EGREP_ALIAS=y -CONFIG_FEATURE_GREP_FGREP_ALIAS=y +CONFIG_EGREP=y +CONFIG_FGREP=y CONFIG_FEATURE_GREP_CONTEXT=y CONFIG_XARGS=y # CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set @@ -449,9 +456,12 @@ CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y # CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set # CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set CONFIG_HALT=y +CONFIG_POWEROFF=y +CONFIG_REBOOT=y # CONFIG_FEATURE_CALL_TELINIT is not set CONFIG_TELINIT_PATH="" CONFIG_INIT=y +CONFIG_LINUXRC=y CONFIG_FEATURE_USE_INITTAB=y CONFIG_FEATURE_KILL_REMOVED=y CONFIG_FEATURE_KILL_DELAY=0 @@ -459,30 +469,34 @@ CONFIG_FEATURE_INIT_SCTTY=y CONFIG_FEATURE_INIT_SYSLOG=y CONFIG_FEATURE_EXTRA_QUIET=y # CONFIG_FEATURE_INIT_COREDUMPS is not set -CONFIG_FEATURE_INITRD=y CONFIG_INIT_TERMINAL_TYPE="linux" +CONFIG_FEATURE_INIT_MODIFY_CMDLINE=y CONFIG_MESG=y CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y # # Login/Password Management Utilities # -# CONFIG_ADD_SHELL is not set -# CONFIG_REMOVE_SHELL is not set CONFIG_FEATURE_SHADOWPASSWDS=y # CONFIG_USE_BB_PWD_GRP is not set # CONFIG_USE_BB_SHADOW is not set CONFIG_USE_BB_CRYPT=y # CONFIG_USE_BB_CRYPT_SHA is not set +# CONFIG_ADDGROUP is not set +# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set +# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_ADD_SHELL is not set +# CONFIG_REMOVE_SHELL is not set CONFIG_ADDUSER=y # CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set # CONFIG_FEATURE_CHECK_NAMES is not set CONFIG_LAST_ID=60000 CONFIG_FIRST_SYSTEM_ID=100 CONFIG_LAST_SYSTEM_ID=999 -# CONFIG_ADDGROUP is not set -# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set -# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_CHPASSWD is not set +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des" +# CONFIG_CRYPTPW is not set +# CONFIG_MKPASSWD is not set # CONFIG_DELUSER is not set # CONFIG_DELGROUP is not set # CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set @@ -494,9 +508,6 @@ CONFIG_FEATURE_NOLOGIN=y CONFIG_FEATURE_SECURETTY=y CONFIG_PASSWD=y CONFIG_FEATURE_PASSWD_WEAK_CHECK=y -# CONFIG_CRYPTPW is not set -# CONFIG_CHPASSWD is not set -CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des" # CONFIG_SU is not set # CONFIG_FEATURE_SU_SYSLOG is not set # CONFIG_FEATURE_SU_CHECKS_SHELLS is not set @@ -514,17 +525,17 @@ CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="des" # # Linux Module Utilities # +# CONFIG_DEPMOD is not set +# CONFIG_INSMOD is not set +# CONFIG_LSMOD is not set +# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set # CONFIG_MODINFO is not set +# CONFIG_MODPROBE is not set +# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set # CONFIG_MODPROBE_SMALL is not set # CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set # CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set -# CONFIG_INSMOD is not set # CONFIG_RMMOD is not set -# CONFIG_LSMOD is not set -# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set -# CONFIG_MODPROBE is not set -# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set -# CONFIG_DEPMOD is not set # # Options common to multiple modutils @@ -545,37 +556,18 @@ CONFIG_DEFAULT_DEPMOD_FILE="" # # Linux System Utilities # -# CONFIG_BLOCKDEV is not set -# CONFIG_FATATTR is not set -# CONFIG_FSTRIM is not set -# CONFIG_MDEV is not set -# CONFIG_FEATURE_MDEV_CONF is not set -# CONFIG_FEATURE_MDEV_RENAME is not set -# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set -# CONFIG_FEATURE_MDEV_EXEC is not set -# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set -CONFIG_MOUNT=y -# CONFIG_FEATURE_MOUNT_FAKE is not set -# CONFIG_FEATURE_MOUNT_VERBOSE is not set -# CONFIG_FEATURE_MOUNT_HELPERS is not set -# CONFIG_FEATURE_MOUNT_LABEL is not set -# CONFIG_FEATURE_MOUNT_NFS is not set -CONFIG_FEATURE_MOUNT_CIFS=y -CONFIG_FEATURE_MOUNT_FLAGS=y -CONFIG_FEATURE_MOUNT_FSTAB=y -CONFIG_FEATURE_MOUNT_OTHERTAB=y -# CONFIG_REV is not set -# CONFIG_UEVENT is not set # CONFIG_ACPID is not set # CONFIG_FEATURE_ACPID_COMPAT is not set +# CONFIG_BLKDISCARD is not set # CONFIG_BLKID is not set # CONFIG_FEATURE_BLKID_TYPE is not set +# CONFIG_BLOCKDEV is not set CONFIG_DMESG=y CONFIG_FEATURE_DMESG_PRETTY=y +# CONFIG_FATATTR is not set # CONFIG_FBSET is not set # CONFIG_FEATURE_FBSET_FANCY is not set # CONFIG_FEATURE_FBSET_READMODE is not set -# CONFIG_FDFLUSH is not set # CONFIG_FDFORMAT is not set # CONFIG_FDISK is not set # CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set @@ -588,13 +580,10 @@ CONFIG_FEATURE_DMESG_PRETTY=y # CONFIG_FEATURE_FDISK_ADVANCED is not set # CONFIG_FINDFS is not set # CONFIG_FLOCK is not set +# CONFIG_FDFLUSH is not set CONFIG_FREERAMDISK=y # CONFIG_FSCK_MINIX is not set -# CONFIG_MKFS_EXT2 is not set -# CONFIG_MKFS_MINIX is not set -# CONFIG_FEATURE_MINIX2 is not set -# CONFIG_MKFS_REISER is not set -# CONFIG_MKFS_VFAT is not set +# CONFIG_FSTRIM is not set CONFIG_GETOPT=y CONFIG_FEATURE_GETOPT_LONG=y # CONFIG_HEXDUMP is not set @@ -608,23 +597,54 @@ CONFIG_FEATURE_GETOPT_LONG=y # CONFIG_LOSETUP is not set # CONFIG_LSPCI is not set # CONFIG_LSUSB is not set +# CONFIG_MDEV is not set +# CONFIG_FEATURE_MDEV_CONF is not set +# CONFIG_FEATURE_MDEV_RENAME is not set +# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set +# CONFIG_FEATURE_MDEV_EXEC is not set +# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +CONFIG_MKE2FS=y +# CONFIG_MKFS_EXT2 is not set +# CONFIG_MKFS_MINIX is not set +# CONFIG_FEATURE_MINIX2 is not set +# CONFIG_MKFS_REISER is not set +CONFIG_MKDOSFS=y +# CONFIG_MKFS_VFAT is not set # CONFIG_MKSWAP is not set # CONFIG_FEATURE_MKSWAP_UUID is not set CONFIG_MORE=y +CONFIG_MOUNT=y +# CONFIG_FEATURE_MOUNT_FAKE is not set +# CONFIG_FEATURE_MOUNT_VERBOSE is not set +# CONFIG_FEATURE_MOUNT_HELPERS is not set +# CONFIG_FEATURE_MOUNT_LABEL is not set +# CONFIG_FEATURE_MOUNT_NFS is not set +CONFIG_FEATURE_MOUNT_CIFS=y +CONFIG_FEATURE_MOUNT_FLAGS=y +CONFIG_FEATURE_MOUNT_FSTAB=y +CONFIG_FEATURE_MOUNT_OTHERTAB=y +# CONFIG_NSENTER is not set +# CONFIG_FEATURE_NSENTER_LONG_OPTS is not set # CONFIG_PIVOT_ROOT is not set # CONFIG_RDATE is not set # CONFIG_RDEV is not set # CONFIG_READPROFILE is not set +# CONFIG_REV is not set # CONFIG_RTCWAKE is not set # CONFIG_SCRIPT is not set # CONFIG_SCRIPTREPLAY is not set # CONFIG_SETARCH is not set -# CONFIG_SWAPONOFF is not set +CONFIG_LINUX32=y +CONFIG_LINUX64=y +CONFIG_SWAPON=y # CONFIG_FEATURE_SWAPON_DISCARD is not set # CONFIG_FEATURE_SWAPON_PRI is not set +CONFIG_SWAPOFF=y # CONFIG_SWITCH_ROOT is not set +# CONFIG_UEVENT is not set CONFIG_UMOUNT=y CONFIG_FEATURE_UMOUNT_ALL=y +# CONFIG_UNSHARE is not set # # Common options for mount/umount @@ -633,6 +653,7 @@ CONFIG_FEATURE_MOUNT_LOOP=y CONFIG_FEATURE_MOUNT_LOOP_CREATE=y # CONFIG_FEATURE_MTAB_SUPPORT is not set # CONFIG_VOLUMEID is not set +# CONFIG_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_FEATURE_VOLUMEID_CRAMFS is not set # CONFIG_FEATURE_VOLUMEID_EXFAT is not set @@ -652,45 +673,13 @@ CONFIG_FEATURE_MOUNT_LOOP_CREATE=y # CONFIG_FEATURE_VOLUMEID_ROMFS is not set # CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set # CONFIG_FEATURE_VOLUMEID_SYSV is not set +# CONFIG_FEATURE_VOLUMEID_UBIFS is not set # CONFIG_FEATURE_VOLUMEID_UDF is not set # CONFIG_FEATURE_VOLUMEID_XFS is not set # # Miscellaneous Utilities # -# CONFIG_CONSPY is not set -# CONFIG_CROND is not set -# CONFIG_FEATURE_CROND_D is not set -# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set -CONFIG_FEATURE_CROND_DIR="" -# CONFIG_I2CGET is not set -# CONFIG_I2CSET is not set -# CONFIG_I2CDUMP is not set -# CONFIG_I2CDETECT is not set -# CONFIG_LESS is not set -CONFIG_FEATURE_LESS_MAXLINES=0 -# CONFIG_FEATURE_LESS_BRACKETS is not set -# CONFIG_FEATURE_LESS_FLAGS is not set -# CONFIG_FEATURE_LESS_TRUNCATE is not set -# CONFIG_FEATURE_LESS_MARKS is not set -# CONFIG_FEATURE_LESS_REGEXP is not set -# CONFIG_FEATURE_LESS_WINCH is not set -# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set -# CONFIG_FEATURE_LESS_DASHCMD is not set -# CONFIG_FEATURE_LESS_LINENUMS is not set -# CONFIG_NANDWRITE is not set -# CONFIG_NANDDUMP is not set -# CONFIG_RFKILL is not set -CONFIG_SETSERIAL=y -# CONFIG_TASKSET is not set -# CONFIG_FEATURE_TASKSET_FANCY is not set -# CONFIG_UBIATTACH is not set -# CONFIG_UBIDETACH is not set -# CONFIG_UBIMKVOL is not set -# CONFIG_UBIRMVOL is not set -# CONFIG_UBIRSVOL is not set -# CONFIG_UBIUPDATEVOL is not set -# CONFIG_WALL is not set # CONFIG_ADJTIMEX is not set # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set @@ -706,6 +695,11 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set # CONFIG_FEATURE_CHAT_CLR_ABORT is not set # CONFIG_CHRT is not set +# CONFIG_CONSPY is not set +# CONFIG_CROND is not set +# CONFIG_FEATURE_CROND_D is not set +# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set +CONFIG_FEATURE_CROND_DIR="" # CONFIG_CRONTAB is not set # CONFIG_DC is not set # CONFIG_FEATURE_DC_LIBM is not set @@ -719,14 +713,9 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_FEATURE_EJECT_SCSI is not set # CONFIG_FBSPLASH is not set # CONFIG_FLASHCP is not set +# CONFIG_FLASH_ERASEALL is not set # CONFIG_FLASH_LOCK is not set # CONFIG_FLASH_UNLOCK is not set -# CONFIG_FLASH_ERASEALL is not set -# CONFIG_IONICE is not set -# CONFIG_INOTIFYD is not set -# CONFIG_LAST is not set -# CONFIG_FEATURE_LAST_SMALL is not set -# CONFIG_FEATURE_LAST_FANCY is not set # CONFIG_HDPARM is not set # CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set @@ -734,6 +723,25 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set # CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set # CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set +# CONFIG_I2CGET is not set +# CONFIG_I2CSET is not set +# CONFIG_I2CDUMP is not set +# CONFIG_I2CDETECT is not set +# CONFIG_INOTIFYD is not set +# CONFIG_IONICE is not set +# CONFIG_LAST is not set +# CONFIG_FEATURE_LAST_FANCY is not set +# CONFIG_LESS is not set +CONFIG_FEATURE_LESS_MAXLINES=0 +# CONFIG_FEATURE_LESS_BRACKETS is not set +# CONFIG_FEATURE_LESS_FLAGS is not set +# CONFIG_FEATURE_LESS_TRUNCATE is not set +# CONFIG_FEATURE_LESS_MARKS is not set +# CONFIG_FEATURE_LESS_REGEXP is not set +# CONFIG_FEATURE_LESS_WINCH is not set +# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set +# CONFIG_FEATURE_LESS_DASHCMD is not set +# CONFIG_FEATURE_LESS_LINENUMS is not set # CONFIG_MAKEDEVS is not set # CONFIG_FEATURE_MAKEDEVS_LEAF is not set # CONFIG_FEATURE_MAKEDEVS_TABLE is not set @@ -741,39 +749,35 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_MICROCOM is not set # CONFIG_MOUNTPOINT is not set # CONFIG_MT is not set +# CONFIG_NANDWRITE is not set +# CONFIG_NANDDUMP is not set # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set +# CONFIG_RFKILL is not set # CONFIG_RUNLEVEL is not set # CONFIG_RX is not set +CONFIG_SETSERIAL=y # CONFIG_SETSID is not set # CONFIG_STRINGS is not set +# CONFIG_TASKSET is not set +# CONFIG_FEATURE_TASKSET_FANCY is not set # CONFIG_TIME is not set # CONFIG_TIMEOUT is not set # CONFIG_TTYSIZE is not set +# CONFIG_UBIRENAME is not set +# CONFIG_UBIATTACH is not set +# CONFIG_UBIDETACH is not set +# CONFIG_UBIMKVOL is not set +# CONFIG_UBIRMVOL is not set +# CONFIG_UBIRSVOL is not set +# CONFIG_UBIUPDATEVOL is not set # CONFIG_VOLNAME is not set +# CONFIG_WALL is not set # CONFIG_WATCHDOG is not set # # Networking Utilities # -# CONFIG_NAMEIF is not set -# CONFIG_FEATURE_NAMEIF_EXTENDED is not set -# CONFIG_NBDCLIENT is not set -CONFIG_NC=y -CONFIG_NC_SERVER=y -# CONFIG_NC_EXTRA is not set -# CONFIG_NC_110_COMPAT is not set -CONFIG_PING=y -# CONFIG_PING6 is not set -# CONFIG_FEATURE_FANCY_PING is not set -CONFIG_WGET=y -# CONFIG_FEATURE_WGET_STATUSBAR is not set -# CONFIG_FEATURE_WGET_AUTHENTICATION is not set -# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set -# CONFIG_FEATURE_WGET_TIMEOUT is not set -# CONFIG_FEATURE_WGET_OPENSSL is not set -# CONFIG_FEATURE_WGET_SSL_HELPER is not set -# CONFIG_WHOIS is not set # CONFIG_FEATURE_IPV6 is not set # CONFIG_FEATURE_UNIX_LOCAL is not set # CONFIG_FEATURE_PREFER_IPV4_ADDRESS is not set @@ -785,15 +789,15 @@ CONFIG_WGET=y # CONFIG_FEATURE_BRCTL_SHOW is not set # CONFIG_DNSD is not set # CONFIG_ETHER_WAKE is not set -# CONFIG_FAKEIDENTD is not set # CONFIG_FTPD is not set -# CONFIG_FEATURE_FTP_WRITE is not set +# CONFIG_FEATURE_FTPD_WRITE is not set # CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set -# CONFIG_FEATURE_FTP_AUTHENTICATION is not set +# CONFIG_FEATURE_FTPD_AUTHENTICATION is not set # CONFIG_FTPGET is not set # CONFIG_FTPPUT is not set # CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set CONFIG_HOSTNAME=y +CONFIG_DNSDOMAINNAME=y # CONFIG_HTTPD is not set # CONFIG_FEATURE_HTTPD_RANGES is not set # CONFIG_FEATURE_HTTPD_SETUID is not set @@ -814,7 +818,8 @@ CONFIG_FEATURE_IFCONFIG_HW=y CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y # CONFIG_IFENSLAVE is not set # CONFIG_IFPLUGD is not set -CONFIG_IFUPDOWN=y +CONFIG_IFUP=y +CONFIG_IFDOWN=y CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate" CONFIG_FEATURE_IFUPDOWN_IP=y CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y @@ -837,6 +842,7 @@ CONFIG_FEATURE_IP_ROUTE=y CONFIG_FEATURE_IP_ROUTE_DIR="/etc/iproute2" # CONFIG_FEATURE_IP_TUNNEL is not set # CONFIG_FEATURE_IP_RULE is not set +# CONFIG_FEATURE_IP_NEIGH is not set CONFIG_FEATURE_IP_SHORT_FORMS=y # CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set CONFIG_IPADDR=y @@ -844,9 +850,18 @@ CONFIG_IPLINK=y CONFIG_IPROUTE=y # CONFIG_IPTUNNEL is not set # CONFIG_IPRULE is not set +# CONFIG_IPNEIGH is not set # CONFIG_IPCALC is not set # CONFIG_FEATURE_IPCALC_FANCY is not set # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set +# CONFIG_FAKEIDENTD is not set +# CONFIG_NAMEIF is not set +# CONFIG_FEATURE_NAMEIF_EXTENDED is not set +# CONFIG_NBDCLIENT is not set +CONFIG_NC=y +CONFIG_NC_SERVER=y +# CONFIG_NC_EXTRA is not set +# CONFIG_NC_110_COMPAT is not set CONFIG_NETSTAT=y # CONFIG_FEATURE_NETSTAT_WIDE is not set CONFIG_FEATURE_NETSTAT_PRG=y @@ -854,10 +869,14 @@ CONFIG_FEATURE_NETSTAT_PRG=y # CONFIG_NTPD is not set # CONFIG_FEATURE_NTPD_SERVER is not set # CONFIG_FEATURE_NTPD_CONF is not set +CONFIG_PING=y +# CONFIG_PING6 is not set +# CONFIG_FEATURE_FANCY_PING is not set # CONFIG_PSCAN is not set CONFIG_ROUTE=y # CONFIG_SLATTACH is not set # CONFIG_TCPSVD is not set +# CONFIG_UDPSVD is not set CONFIG_TELNET=y CONFIG_FEATURE_TELNET_TTYPE=y CONFIG_FEATURE_TELNET_AUTOLOGIN=y @@ -874,10 +893,19 @@ CONFIG_FEATURE_TELNET_AUTOLOGIN=y # CONFIG_TRACEROUTE is not set # CONFIG_TRACEROUTE6 is not set # CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set -# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set # CONFIG_TUNCTL is not set # CONFIG_FEATURE_TUNCTL_UG is not set +# CONFIG_VCONFIG is not set +CONFIG_WGET=y +# CONFIG_FEATURE_WGET_STATUSBAR is not set +# CONFIG_FEATURE_WGET_AUTHENTICATION is not set +# CONFIG_FEATURE_WGET_LONG_OPTIONS is not set +# CONFIG_FEATURE_WGET_TIMEOUT is not set +# CONFIG_FEATURE_WGET_OPENSSL is not set +# CONFIG_FEATURE_WGET_SSL_HELPER is not set +# CONFIG_WHOIS is not set +# CONFIG_ZCIP is not set # CONFIG_UDHCPC6 is not set # CONFIG_UDHCPD is not set # CONFIG_DHCPRELAY is not set @@ -895,9 +923,6 @@ CONFIG_UDHCP_DEBUG=9 CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" -# CONFIG_UDPSVD is not set -# CONFIG_VCONFIG is not set -# CONFIG_ZCIP is not set # # Print Utilities @@ -910,25 +935,43 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" # Mail Utilities # # CONFIG_MAKEMIME is not set -CONFIG_FEATURE_MIME_CHARSET="" # CONFIG_POPMAILDIR is not set # CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set # CONFIG_REFORMIME is not set # CONFIG_FEATURE_REFORMIME_COMPAT is not set # CONFIG_SENDMAIL is not set +CONFIG_FEATURE_MIME_CHARSET="" # # Process Utilities # +# CONFIG_FREE is not set +# CONFIG_FUSER is not set # CONFIG_IOSTAT is not set +CONFIG_KILL=y +CONFIG_KILLALL=y +CONFIG_KILLALL5=y # CONFIG_LSOF is not set # CONFIG_MPSTAT is not set # CONFIG_NMETER is not set +# CONFIG_PGREP is not set +# CONFIG_PKILL is not set +# CONFIG_PIDOF is not set +# CONFIG_FEATURE_PIDOF_SINGLE is not set +# CONFIG_FEATURE_PIDOF_OMIT is not set # CONFIG_PMAP is not set # CONFIG_POWERTOP is not set +CONFIG_PS=y +CONFIG_FEATURE_PS_WIDE=y +CONFIG_FEATURE_PS_LONG=y +# CONFIG_FEATURE_PS_TIME is not set +# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set +# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set # CONFIG_PSTREE is not set # CONFIG_PWDX is not set +# CONFIG_RENICE is not set # CONFIG_SMEMCAP is not set +# CONFIG_BB_SYSCTL is not set # CONFIG_TOP is not set # CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set # CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS is not set @@ -938,61 +981,48 @@ CONFIG_FEATURE_MIME_CHARSET="" # CONFIG_FEATURE_TOPMEM is not set # CONFIG_UPTIME is not set # CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set -# CONFIG_FREE is not set -# CONFIG_FUSER is not set -CONFIG_KILL=y -CONFIG_KILLALL=y -CONFIG_KILLALL5=y -# CONFIG_PGREP is not set -# CONFIG_PIDOF is not set -# CONFIG_FEATURE_PIDOF_SINGLE is not set -# CONFIG_FEATURE_PIDOF_OMIT is not set -# CONFIG_PKILL is not set -CONFIG_PS=y -CONFIG_FEATURE_PS_WIDE=y -CONFIG_FEATURE_PS_LONG=y -# CONFIG_FEATURE_PS_TIME is not set -# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set -# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set -# CONFIG_RENICE is not set -# CONFIG_BB_SYSCTL is not set -# CONFIG_FEATURE_SHOW_THREADS is not set # CONFIG_WATCH is not set +# CONFIG_FEATURE_SHOW_THREADS is not set # # Runit Utilities # -# CONFIG_RUNSV is not set -# CONFIG_RUNSVDIR is not set -# CONFIG_FEATURE_RUNSVDIR_LOG is not set -# CONFIG_SV is not set -CONFIG_SV_DEFAULT_SERVICE_DIR="" -# CONFIG_SVLOGD is not set # CONFIG_CHPST is not set # CONFIG_SETUIDGID is not set # CONFIG_ENVUIDGID is not set # CONFIG_ENVDIR is not set # CONFIG_SOFTLIMIT is not set +# CONFIG_RUNSV is not set +# CONFIG_RUNSVDIR is not set +# CONFIG_FEATURE_RUNSVDIR_LOG is not set +# CONFIG_SV is not set +CONFIG_SV_DEFAULT_SERVICE_DIR="" +CONFIG_SVC=y +# CONFIG_SVLOGD is not set # CONFIG_CHCON is not set # CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set # CONFIG_GETENFORCE is not set # CONFIG_GETSEBOOL is not set # CONFIG_LOAD_POLICY is not set # CONFIG_MATCHPATHCON is not set -# CONFIG_RESTORECON is not set # CONFIG_RUNCON is not set # CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set # CONFIG_SELINUXENABLED is not set +# CONFIG_SESTATUS is not set # CONFIG_SETENFORCE is not set # CONFIG_SETFILES is not set # CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_RESTORECON is not set # CONFIG_SETSEBOOL is not set -# CONFIG_SESTATUS is not set # # Shells # # CONFIG_ASH is not set +# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set +# CONFIG_ASH_INTERNAL_GLOB is not set +# CONFIG_ASH_RANDOM_SUPPORT is not set +# CONFIG_ASH_EXPAND_PRMT is not set # CONFIG_ASH_BASH_COMPAT is not set # CONFIG_ASH_IDLE_TIMEOUT is not set # CONFIG_ASH_JOB_CONTROL is not set @@ -1004,9 +1034,6 @@ CONFIG_SV_DEFAULT_SERVICE_DIR="" # CONFIG_ASH_HELP is not set # CONFIG_ASH_CMDCMD is not set # CONFIG_ASH_MAIL is not set -# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set -# CONFIG_ASH_RANDOM_SUPPORT is not set -# CONFIG_ASH_EXPAND_PRMT is not set # CONFIG_CTTYHACK is not set CONFIG_HUSH=y CONFIG_HUSH_BASH_COMPAT=y @@ -1041,6 +1068,11 @@ CONFIG_FEATURE_SH_EXTRA_QUIET=y # # System Logging Utilities # +# CONFIG_KLOGD is not set +# CONFIG_FEATURE_KLOGD_KLOGCTL is not set +# CONFIG_LOGGER is not set +# CONFIG_LOGREAD is not set +# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set # CONFIG_SYSLOGD is not set # CONFIG_FEATURE_ROTATE_LOGFILE is not set # CONFIG_FEATURE_REMOTE_LOG is not set @@ -1049,9 +1081,4 @@ CONFIG_FEATURE_SH_EXTRA_QUIET=y CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=0 # CONFIG_FEATURE_IPC_SYSLOG is not set CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0 -# CONFIG_LOGREAD is not set -# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set # CONFIG_FEATURE_KMSG_SYSLOG is not set -# CONFIG_KLOGD is not set -# CONFIG_FEATURE_KLOGD_KLOGCTL is not set -# CONFIG_LOGGER is not set diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 693b9d24ff..c45de21808 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -1,43 +1,25 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.23.0 -# Sun Dec 28 21:14:57 2014 +# Busybox version: 1.26.0 +# Thu Dec 29 21:01:56 2016 # CONFIG_HAVE_DOT_CONFIG=y # # Busybox Settings # - -# -# General Configuration -# CONFIG_DESKTOP=y # CONFIG_EXTRA_COMPAT is not set CONFIG_INCLUDE_SUSv2=y # CONFIG_USE_PORTABLE_CODE is not set CONFIG_PLATFORM_LINUX=y -CONFIG_FEATURE_BUFFERS_USE_MALLOC=y -# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set -# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set CONFIG_SHOW_USAGE=y CONFIG_FEATURE_VERBOSE_USAGE=y # CONFIG_FEATURE_COMPRESS_USAGE is not set +CONFIG_BUSYBOX=y CONFIG_FEATURE_INSTALLER=y # CONFIG_INSTALL_NO_USR is not set -# CONFIG_LOCALE_SUPPORT is not set -# CONFIG_UNICODE_SUPPORT is not set -# CONFIG_UNICODE_USING_LOCALE is not set -# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -CONFIG_SUBST_WCHAR=0 -CONFIG_LAST_SUPPORTED_WCHAR=0 -# CONFIG_UNICODE_COMBINING_WCHARS is not set -# CONFIG_UNICODE_WIDE_WCHARS is not set -# CONFIG_UNICODE_BIDI_SUPPORT is not set -# CONFIG_UNICODE_NEUTRAL_TABLE is not set -# CONFIG_UNICODE_PRESERVE_BROKEN is not set # CONFIG_PAM is not set -CONFIG_FEATURE_USE_SENDFILE=y CONFIG_LONG_OPTS=y CONFIG_FEATURE_DEVPTS=y CONFIG_FEATURE_CLEAN_UP=y @@ -70,17 +52,6 @@ CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" -# -# Debugging Options -# -# CONFIG_DEBUG is not set -# CONFIG_DEBUG_PESSIMIZE is not set -# CONFIG_UNIT_TEST is not set -# CONFIG_WERROR is not set -CONFIG_NO_DEBUG_LIB=y -# CONFIG_DMALLOC is not set -# CONFIG_EFENCE is not set - # # Installation Options ("make install" behavior) # @@ -93,11 +64,26 @@ CONFIG_INSTALL_APPLET_SYMLINKS=y # CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set CONFIG_PREFIX="./_install" +# +# Debugging Options +# +# CONFIG_DEBUG is not set +# CONFIG_DEBUG_PESSIMIZE is not set +# CONFIG_DEBUG_SANITIZE is not set +# CONFIG_UNIT_TEST is not set +# CONFIG_WERROR is not set +CONFIG_NO_DEBUG_LIB=y +# CONFIG_DMALLOC is not set +# CONFIG_EFENCE is not set + # # Busybox Library Tuning # -# CONFIG_FEATURE_SYSTEMD is not set +# CONFIG_FEATURE_USE_BSS_TAIL is not set CONFIG_FEATURE_RTMINMAX=y +CONFIG_FEATURE_BUFFERS_USE_MALLOC=y +# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set +# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set CONFIG_PASSWORD_MINLEN=6 CONFIG_MD5_SMALL=1 CONFIG_SHA3_SMALL=1 @@ -115,8 +101,20 @@ CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set CONFIG_FEATURE_EDITING_FANCY_PROMPT=y # CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set +# CONFIG_LOCALE_SUPPORT is not set +# CONFIG_UNICODE_SUPPORT is not set +# CONFIG_UNICODE_USING_LOCALE is not set +# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set +CONFIG_SUBST_WCHAR=0 +CONFIG_LAST_SUPPORTED_WCHAR=0 +# CONFIG_UNICODE_COMBINING_WCHARS is not set +# CONFIG_UNICODE_WIDE_WCHARS is not set +# CONFIG_UNICODE_BIDI_SUPPORT is not set +# CONFIG_UNICODE_NEUTRAL_TABLE is not set +# CONFIG_UNICODE_PRESERVE_BROKEN is not set CONFIG_FEATURE_NON_POSIX_CP=y # CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set +CONFIG_FEATURE_USE_SENDFILE=y CONFIG_FEATURE_COPYBUF_KB=4 CONFIG_FEATURE_SKIP_ROOTFS=y CONFIG_MONOTONIC_SYSCALL=y @@ -140,11 +138,16 @@ CONFIG_AR=y CONFIG_FEATURE_AR_CREATE=y # CONFIG_UNCOMPRESS is not set CONFIG_GUNZIP=y +CONFIG_ZCAT=y +CONFIG_FEATURE_GUNZIP_LONG_OPTIONS=y CONFIG_BUNZIP2=y +CONFIG_BZCAT=y CONFIG_UNLZMA=y -# CONFIG_FEATURE_LZMA_FAST is not set +CONFIG_LZCAT=y CONFIG_LZMA=y +# CONFIG_FEATURE_LZMA_FAST is not set CONFIG_UNXZ=y +CONFIG_XZCAT=y CONFIG_XZ=y # CONFIG_BZIP2 is not set CONFIG_CPIO=y @@ -152,11 +155,13 @@ CONFIG_CPIO=y # CONFIG_FEATURE_CPIO_P is not set # CONFIG_DPKG is not set # CONFIG_DPKG_DEB is not set -# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set CONFIG_GZIP=y # CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set CONFIG_GZIP_FAST=0 +# CONFIG_FEATURE_GZIP_LEVELS is not set # CONFIG_LZOP is not set +CONFIG_UNLZOP=y +CONFIG_LZOPCAT=y # CONFIG_LZOP_COMPR_HIGH is not set # CONFIG_RPM2CPIO is not set # CONFIG_RPM is not set @@ -178,28 +183,8 @@ CONFIG_UNZIP=y # Coreutils # CONFIG_BASENAME=y -CONFIG_CAT=y -CONFIG_DATE=y -CONFIG_FEATURE_DATE_ISOFMT=y -# CONFIG_FEATURE_DATE_NANO is not set -CONFIG_FEATURE_DATE_COMPAT=y -CONFIG_HOSTID=y -CONFIG_ID=y -# CONFIG_GROUPS is not set -# CONFIG_SHUF is not set -CONFIG_TEST=y -CONFIG_FEATURE_TEST_64=y -CONFIG_TOUCH=y -# CONFIG_FEATURE_TOUCH_NODEREF is not set -CONFIG_FEATURE_TOUCH_SUSV3=y -CONFIG_TR=y -CONFIG_FEATURE_TR_CLASSES=y -CONFIG_FEATURE_TR_EQUIV=y -CONFIG_UNLINK=y -# CONFIG_BASE64 is not set -CONFIG_WHO=y -# CONFIG_USERS is not set # CONFIG_CAL is not set +CONFIG_CAT=y CONFIG_CATV=y CONFIG_CHGRP=y CONFIG_CHMOD=y @@ -211,10 +196,15 @@ CONFIG_CKSUM=y CONFIG_CP=y # CONFIG_FEATURE_CP_LONG_OPTIONS is not set CONFIG_CUT=y +CONFIG_DATE=y +CONFIG_FEATURE_DATE_ISOFMT=y +# CONFIG_FEATURE_DATE_NANO is not set +CONFIG_FEATURE_DATE_COMPAT=y CONFIG_DD=y CONFIG_FEATURE_DD_SIGNAL_HANDLING=y # CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set CONFIG_FEATURE_DD_IBS_OBS=y +CONFIG_FEATURE_DD_STATUS=y CONFIG_DF=y # CONFIG_FEATURE_DF_FANCY is not set CONFIG_DIRNAME=y @@ -228,6 +218,8 @@ CONFIG_ENV=y # CONFIG_FEATURE_ENV_LONG_OPTIONS is not set # CONFIG_EXPAND is not set # CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set +# CONFIG_UNEXPAND is not set +# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set CONFIG_EXPR=y CONFIG_EXPR_MATH_SUPPORT_64=y CONFIG_FALSE=y @@ -235,6 +227,9 @@ CONFIG_FOLD=y # CONFIG_FSYNC is not set CONFIG_HEAD=y CONFIG_FEATURE_FANCY_HEAD=y +CONFIG_HOSTID=y +CONFIG_ID=y +# CONFIG_GROUPS is not set CONFIG_INSTALL=y CONFIG_FEATURE_INSTALL_LONG_OPTIONS=y CONFIG_LN=y @@ -249,6 +244,15 @@ CONFIG_FEATURE_LS_USERNAME=y CONFIG_FEATURE_LS_COLOR=y CONFIG_FEATURE_LS_COLOR_IS_DEFAULT=y CONFIG_MD5SUM=y +CONFIG_SHA1SUM=y +CONFIG_SHA256SUM=y +CONFIG_SHA512SUM=y +CONFIG_SHA3SUM=y + +# +# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum +# +CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y CONFIG_MKDIR=y CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y CONFIG_MKFIFO=y @@ -268,10 +272,7 @@ CONFIG_RM=y CONFIG_RMDIR=y # CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set CONFIG_SEQ=y -CONFIG_SHA1SUM=y -CONFIG_SHA256SUM=y -CONFIG_SHA512SUM=y -CONFIG_SHA3SUM=y +# CONFIG_SHUF is not set CONFIG_SLEEP=y CONFIG_FEATURE_FANCY_SLEEP=y CONFIG_FEATURE_FLOAT_SLEEP=y @@ -281,6 +282,7 @@ CONFIG_FEATURE_SORT_BIG=y # CONFIG_FEATURE_SPLIT_FANCY is not set # CONFIG_STAT is not set # CONFIG_FEATURE_STAT_FORMAT is not set +# CONFIG_FEATURE_STAT_FILESYSTEM is not set CONFIG_STTY=y # CONFIG_SUM is not set CONFIG_SYNC=y @@ -290,18 +292,32 @@ CONFIG_TAIL=y CONFIG_FEATURE_FANCY_TAIL=y CONFIG_TEE=y CONFIG_FEATURE_TEE_USE_BLOCK_IO=y +CONFIG_TEST=y +CONFIG_TEST1=y +CONFIG_TEST2=y +CONFIG_FEATURE_TEST_64=y +CONFIG_TOUCH=y +# CONFIG_FEATURE_TOUCH_NODEREF is not set +CONFIG_FEATURE_TOUCH_SUSV3=y +CONFIG_TR=y +CONFIG_FEATURE_TR_CLASSES=y +CONFIG_FEATURE_TR_EQUIV=y CONFIG_TRUE=y +CONFIG_TRUNCATE=y CONFIG_TTY=y CONFIG_UNAME=y -# CONFIG_UNEXPAND is not set -# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set +CONFIG_UNAME_OSNAME="GNU/Linux" CONFIG_UNIQ=y +CONFIG_UNLINK=y CONFIG_USLEEP=y CONFIG_UUDECODE=y +# CONFIG_BASE64 is not set CONFIG_UUENCODE=y CONFIG_WC=y # CONFIG_FEATURE_WC_LARGE is not set CONFIG_WHOAMI=y +CONFIG_WHO=y +# CONFIG_USERS is not set CONFIG_YES=y # @@ -324,21 +340,25 @@ CONFIG_FEATURE_AUTOWIDTH=y # CONFIG_FEATURE_HUMAN_READABLE=y -# -# Common options for md5sum, sha1sum, sha256sum, sha512sum, sha3sum -# -CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y - # # Console Utilities # CONFIG_CHVT=y -# CONFIG_FGCONSOLE is not set CONFIG_CLEAR=y CONFIG_DEALLOCVT=y CONFIG_DUMPKMAP=y +# CONFIG_FGCONSOLE is not set # CONFIG_KBD_MODE is not set CONFIG_LOADFONT=y +# CONFIG_SETFONT is not set +# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set +CONFIG_DEFAULT_SETFONT_DIR="" + +# +# Common options for loadfont and setfont +# +CONFIG_FEATURE_LOADFONT_PSF2=y +CONFIG_FEATURE_LOADFONT_RAW=y CONFIG_LOADKMAP=y CONFIG_OPENVT=y CONFIG_RESET=y @@ -346,19 +366,10 @@ CONFIG_RESIZE=y CONFIG_FEATURE_RESIZE_PRINT=y CONFIG_SETCONSOLE=y # CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set -# CONFIG_SETFONT is not set -# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set -CONFIG_DEFAULT_SETFONT_DIR="" CONFIG_SETKEYCODES=y CONFIG_SETLOGCONS=y # CONFIG_SHOWKEY is not set -# -# Common options for loadfont and setfont -# -CONFIG_FEATURE_LOADFONT_PSF2=y -CONFIG_FEATURE_LOADFONT_RAW=y - # # Debian Utilities # @@ -432,8 +443,8 @@ CONFIG_FEATURE_FIND_REGEX=y # CONFIG_FEATURE_FIND_CONTEXT is not set # CONFIG_FEATURE_FIND_LINKS is not set CONFIG_GREP=y -CONFIG_FEATURE_GREP_EGREP_ALIAS=y -CONFIG_FEATURE_GREP_FGREP_ALIAS=y +CONFIG_EGREP=y +CONFIG_FGREP=y CONFIG_FEATURE_GREP_CONTEXT=y CONFIG_XARGS=y # CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set @@ -449,9 +460,12 @@ CONFIG_FEATURE_XARGS_SUPPORT_REPL_STR=y # CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set # CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set CONFIG_HALT=y +CONFIG_POWEROFF=y +CONFIG_REBOOT=y # CONFIG_FEATURE_CALL_TELINIT is not set CONFIG_TELINIT_PATH="" CONFIG_INIT=y +CONFIG_LINUXRC=y CONFIG_FEATURE_USE_INITTAB=y CONFIG_FEATURE_KILL_REMOVED=y CONFIG_FEATURE_KILL_DELAY=0 @@ -459,30 +473,34 @@ CONFIG_FEATURE_INIT_SCTTY=y CONFIG_FEATURE_INIT_SYSLOG=y CONFIG_FEATURE_EXTRA_QUIET=y # CONFIG_FEATURE_INIT_COREDUMPS is not set -CONFIG_FEATURE_INITRD=y CONFIG_INIT_TERMINAL_TYPE="linux" +CONFIG_FEATURE_INIT_MODIFY_CMDLINE=y CONFIG_MESG=y CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y # # Login/Password Management Utilities # -# CONFIG_ADD_SHELL is not set -# CONFIG_REMOVE_SHELL is not set CONFIG_FEATURE_SHADOWPASSWDS=y # CONFIG_USE_BB_PWD_GRP is not set # CONFIG_USE_BB_SHADOW is not set CONFIG_USE_BB_CRYPT=y # CONFIG_USE_BB_CRYPT_SHA is not set +CONFIG_ADDGROUP=y +# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set +# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_ADD_SHELL is not set +# CONFIG_REMOVE_SHELL is not set CONFIG_ADDUSER=y # CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set # CONFIG_FEATURE_CHECK_NAMES is not set CONFIG_LAST_ID=60000 CONFIG_FIRST_SYSTEM_ID=100 CONFIG_LAST_SYSTEM_ID=999 -CONFIG_ADDGROUP=y -# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set -# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set +# CONFIG_CHPASSWD is not set +CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="md5" +# CONFIG_CRYPTPW is not set +CONFIG_MKPASSWD=y CONFIG_DELUSER=y CONFIG_DELGROUP=y # CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set @@ -494,9 +512,6 @@ CONFIG_FEATURE_NOLOGIN=y CONFIG_FEATURE_SECURETTY=y CONFIG_PASSWD=y CONFIG_FEATURE_PASSWD_WEAK_CHECK=y -# CONFIG_CRYPTPW is not set -# CONFIG_CHPASSWD is not set -CONFIG_FEATURE_DEFAULT_PASSWD_ALGO="md5" CONFIG_SU=y CONFIG_FEATURE_SU_SYSLOG=y CONFIG_FEATURE_SU_CHECKS_SHELLS=y @@ -514,17 +529,17 @@ CONFIG_LSATTR=y # # Linux Module Utilities # +# CONFIG_DEPMOD is not set +CONFIG_INSMOD=y +CONFIG_LSMOD=y +CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y # CONFIG_MODINFO is not set +CONFIG_MODPROBE=y +# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set # CONFIG_MODPROBE_SMALL is not set # CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set # CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set -CONFIG_INSMOD=y CONFIG_RMMOD=y -CONFIG_LSMOD=y -CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y -CONFIG_MODPROBE=y -# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set -# CONFIG_DEPMOD is not set # # Options common to multiple modutils @@ -545,29 +560,21 @@ CONFIG_DEFAULT_DEPMOD_FILE="modules.dep" # # Linux System Utilities # -# CONFIG_BLOCKDEV is not set -# CONFIG_FATATTR is not set -CONFIG_FSTRIM=y -CONFIG_MDEV=y -CONFIG_FEATURE_MDEV_CONF=y -CONFIG_FEATURE_MDEV_RENAME=y -# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set -CONFIG_FEATURE_MDEV_EXEC=y -# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set -# CONFIG_REV is not set # CONFIG_ACPID is not set # CONFIG_FEATURE_ACPID_COMPAT is not set +# CONFIG_BLKDISCARD is not set CONFIG_BLKID=y # CONFIG_FEATURE_BLKID_TYPE is not set +# CONFIG_BLOCKDEV is not set CONFIG_DMESG=y CONFIG_FEATURE_DMESG_PRETTY=y +# CONFIG_FATATTR is not set CONFIG_FBSET=y CONFIG_FEATURE_FBSET_FANCY=y CONFIG_FEATURE_FBSET_READMODE=y -CONFIG_FDFLUSH=y CONFIG_FDFORMAT=y CONFIG_FDISK=y -CONFIG_FDISK_SUPPORT_LARGE_DISKS=y +# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set CONFIG_FEATURE_FDISK_WRITABLE=y # CONFIG_FEATURE_AIX_LABEL is not set # CONFIG_FEATURE_SGI_LABEL is not set @@ -577,13 +584,10 @@ CONFIG_FEATURE_GPT_LABEL=y CONFIG_FEATURE_FDISK_ADVANCED=y # CONFIG_FINDFS is not set CONFIG_FLOCK=y +CONFIG_FDFLUSH=y CONFIG_FREERAMDISK=y # CONFIG_FSCK_MINIX is not set -# CONFIG_MKFS_EXT2 is not set -# CONFIG_MKFS_MINIX is not set -# CONFIG_FEATURE_MINIX2 is not set -# CONFIG_MKFS_REISER is not set -# CONFIG_MKFS_VFAT is not set +CONFIG_FSTRIM=y CONFIG_GETOPT=y CONFIG_FEATURE_GETOPT_LONG=y CONFIG_HEXDUMP=y @@ -597,6 +601,19 @@ CONFIG_IPCS=y CONFIG_LOSETUP=y CONFIG_LSPCI=y CONFIG_LSUSB=y +CONFIG_MDEV=y +CONFIG_FEATURE_MDEV_CONF=y +CONFIG_FEATURE_MDEV_RENAME=y +# CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set +CONFIG_FEATURE_MDEV_EXEC=y +# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +CONFIG_MKE2FS=y +# CONFIG_MKFS_EXT2 is not set +# CONFIG_MKFS_MINIX is not set +# CONFIG_FEATURE_MINIX2 is not set +# CONFIG_MKFS_REISER is not set +CONFIG_MKDOSFS=y +# CONFIG_MKFS_VFAT is not set CONFIG_MKSWAP=y # CONFIG_FEATURE_MKSWAP_UUID is not set CONFIG_MORE=y @@ -609,20 +626,29 @@ CONFIG_MOUNT=y CONFIG_FEATURE_MOUNT_CIFS=y CONFIG_FEATURE_MOUNT_FLAGS=y CONFIG_FEATURE_MOUNT_FSTAB=y +CONFIG_FEATURE_MOUNT_OTHERTAB=y +# CONFIG_NSENTER is not set +# CONFIG_FEATURE_NSENTER_LONG_OPTS is not set CONFIG_PIVOT_ROOT=y CONFIG_RDATE=y # CONFIG_RDEV is not set CONFIG_READPROFILE=y +# CONFIG_REV is not set # CONFIG_RTCWAKE is not set # CONFIG_SCRIPT is not set # CONFIG_SCRIPTREPLAY is not set CONFIG_SETARCH=y -CONFIG_SWAPONOFF=y +CONFIG_LINUX32=y +CONFIG_LINUX64=y +CONFIG_SWAPON=y # CONFIG_FEATURE_SWAPON_DISCARD is not set # CONFIG_FEATURE_SWAPON_PRI is not set +CONFIG_SWAPOFF=y CONFIG_SWITCH_ROOT=y +CONFIG_UEVENT=y CONFIG_UMOUNT=y CONFIG_FEATURE_UMOUNT_ALL=y +# CONFIG_UNSHARE is not set # # Common options for mount/umount @@ -635,6 +661,7 @@ CONFIG_VOLUMEID=y # # Filesystem/Volume identification # +# CONFIG_FEATURE_VOLUMEID_BCACHE is not set # CONFIG_FEATURE_VOLUMEID_BTRFS is not set # CONFIG_FEATURE_VOLUMEID_CRAMFS is not set CONFIG_FEATURE_VOLUMEID_EXFAT=y @@ -654,40 +681,13 @@ CONFIG_FEATURE_VOLUMEID_FAT=y # CONFIG_FEATURE_VOLUMEID_ROMFS is not set # CONFIG_FEATURE_VOLUMEID_SQUASHFS is not set # CONFIG_FEATURE_VOLUMEID_SYSV is not set +CONFIG_FEATURE_VOLUMEID_UBIFS=y # CONFIG_FEATURE_VOLUMEID_UDF is not set # CONFIG_FEATURE_VOLUMEID_XFS is not set # # Miscellaneous Utilities # -# CONFIG_CONSPY is not set -CONFIG_CROND=y -# CONFIG_FEATURE_CROND_D is not set -# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set -CONFIG_FEATURE_CROND_DIR="/var/spool/cron" -CONFIG_LESS=y -CONFIG_FEATURE_LESS_MAXLINES=9999999 -CONFIG_FEATURE_LESS_BRACKETS=y -CONFIG_FEATURE_LESS_FLAGS=y -# CONFIG_FEATURE_LESS_MARKS is not set -CONFIG_FEATURE_LESS_REGEXP=y -# CONFIG_FEATURE_LESS_WINCH is not set -# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set -# CONFIG_FEATURE_LESS_DASHCMD is not set -# CONFIG_FEATURE_LESS_LINENUMS is not set -# CONFIG_NANDWRITE is not set -# CONFIG_NANDDUMP is not set -# CONFIG_RFKILL is not set -CONFIG_SETSERIAL=y -# CONFIG_TASKSET is not set -# CONFIG_FEATURE_TASKSET_FANCY is not set -# CONFIG_UBIATTACH is not set -# CONFIG_UBIDETACH is not set -# CONFIG_UBIMKVOL is not set -# CONFIG_UBIRMVOL is not set -# CONFIG_UBIRSVOL is not set -# CONFIG_UBIUPDATEVOL is not set -# CONFIG_WALL is not set # CONFIG_ADJTIMEX is not set # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set @@ -703,6 +703,11 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0 # CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set # CONFIG_FEATURE_CHAT_CLR_ABORT is not set CONFIG_CHRT=y +# CONFIG_CONSPY is not set +CONFIG_CROND=y +# CONFIG_FEATURE_CROND_D is not set +# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set +CONFIG_FEATURE_CROND_DIR="/var/spool/cron" CONFIG_CRONTAB=y CONFIG_DC=y # CONFIG_FEATURE_DC_LIBM is not set @@ -716,14 +721,9 @@ CONFIG_EJECT=y # CONFIG_FEATURE_EJECT_SCSI is not set # CONFIG_FBSPLASH is not set # CONFIG_FLASHCP is not set +# CONFIG_FLASH_ERASEALL is not set # CONFIG_FLASH_LOCK is not set # CONFIG_FLASH_UNLOCK is not set -# CONFIG_FLASH_ERASEALL is not set -# CONFIG_IONICE is not set -# CONFIG_INOTIFYD is not set -CONFIG_LAST=y -CONFIG_FEATURE_LAST_SMALL=y -# CONFIG_FEATURE_LAST_FANCY is not set CONFIG_HDPARM=y CONFIG_FEATURE_HDPARM_GET_IDENTITY=y # CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set @@ -731,6 +731,25 @@ CONFIG_FEATURE_HDPARM_GET_IDENTITY=y # CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set # CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set # CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set +CONFIG_I2CGET=y +CONFIG_I2CSET=y +CONFIG_I2CDUMP=y +CONFIG_I2CDETECT=y +# CONFIG_INOTIFYD is not set +# CONFIG_IONICE is not set +CONFIG_LAST=y +# CONFIG_FEATURE_LAST_FANCY is not set +CONFIG_LESS=y +CONFIG_FEATURE_LESS_MAXLINES=9999999 +CONFIG_FEATURE_LESS_BRACKETS=y +CONFIG_FEATURE_LESS_FLAGS=y +CONFIG_FEATURE_LESS_TRUNCATE=y +# CONFIG_FEATURE_LESS_MARKS is not set +CONFIG_FEATURE_LESS_REGEXP=y +# CONFIG_FEATURE_LESS_WINCH is not set +# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set +# CONFIG_FEATURE_LESS_DASHCMD is not set +# CONFIG_FEATURE_LESS_LINENUMS is not set CONFIG_MAKEDEVS=y # CONFIG_FEATURE_MAKEDEVS_LEAF is not set CONFIG_FEATURE_MAKEDEVS_TABLE=y @@ -738,32 +757,35 @@ CONFIG_FEATURE_MAKEDEVS_TABLE=y CONFIG_MICROCOM=y CONFIG_MOUNTPOINT=y CONFIG_MT=y +# CONFIG_NANDWRITE is not set +# CONFIG_NANDDUMP is not set # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set +# CONFIG_RFKILL is not set CONFIG_RUNLEVEL=y # CONFIG_RX is not set +CONFIG_SETSERIAL=y CONFIG_SETSID=y CONFIG_STRINGS=y +# CONFIG_TASKSET is not set +# CONFIG_FEATURE_TASKSET_FANCY is not set CONFIG_TIME=y # CONFIG_TIMEOUT is not set # CONFIG_TTYSIZE is not set +CONFIG_UBIRENAME=y +# CONFIG_UBIATTACH is not set +# CONFIG_UBIDETACH is not set +# CONFIG_UBIMKVOL is not set +# CONFIG_UBIRMVOL is not set +# CONFIG_UBIRSVOL is not set +# CONFIG_UBIUPDATEVOL is not set # CONFIG_VOLNAME is not set +# CONFIG_WALL is not set CONFIG_WATCHDOG=y # # Networking Utilities # -CONFIG_NAMEIF=y -# CONFIG_FEATURE_NAMEIF_EXTENDED is not set -# CONFIG_NBDCLIENT is not set -# CONFIG_NC is not set -# CONFIG_NC_SERVER is not set -# CONFIG_NC_EXTRA is not set -# CONFIG_NC_110_COMPAT is not set -CONFIG_PING=y -# CONFIG_PING6 is not set -CONFIG_FEATURE_FANCY_PING=y -# CONFIG_WHOIS is not set CONFIG_FEATURE_IPV6=y # CONFIG_FEATURE_UNIX_LOCAL is not set CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y @@ -775,15 +797,15 @@ CONFIG_ARPING=y # CONFIG_FEATURE_BRCTL_SHOW is not set CONFIG_DNSD=y CONFIG_ETHER_WAKE=y -# CONFIG_FAKEIDENTD is not set # CONFIG_FTPD is not set -# CONFIG_FEATURE_FTP_WRITE is not set +# CONFIG_FEATURE_FTPD_WRITE is not set # CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set -# CONFIG_FEATURE_FTP_AUTHENTICATION is not set +# CONFIG_FEATURE_FTPD_AUTHENTICATION is not set # CONFIG_FTPGET is not set # CONFIG_FTPPUT is not set # CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set CONFIG_HOSTNAME=y +CONFIG_DNSDOMAINNAME=y # CONFIG_HTTPD is not set # CONFIG_FEATURE_HTTPD_RANGES is not set # CONFIG_FEATURE_HTTPD_SETUID is not set @@ -804,7 +826,8 @@ CONFIG_FEATURE_IFCONFIG_HW=y # CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set # CONFIG_IFENSLAVE is not set # CONFIG_IFPLUGD is not set -CONFIG_IFUPDOWN=y +CONFIG_IFUP=y +CONFIG_IFDOWN=y CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate" CONFIG_FEATURE_IFUPDOWN_IP=y # CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set @@ -824,8 +847,10 @@ CONFIG_IP=y CONFIG_FEATURE_IP_ADDRESS=y CONFIG_FEATURE_IP_LINK=y CONFIG_FEATURE_IP_ROUTE=y +CONFIG_FEATURE_IP_ROUTE_DIR="/etc/iproute2" CONFIG_FEATURE_IP_TUNNEL=y CONFIG_FEATURE_IP_RULE=y +CONFIG_FEATURE_IP_NEIGH=y CONFIG_FEATURE_IP_SHORT_FORMS=y # CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set CONFIG_IPADDR=y @@ -833,9 +858,18 @@ CONFIG_IPLINK=y CONFIG_IPROUTE=y CONFIG_IPTUNNEL=y CONFIG_IPRULE=y +CONFIG_IPNEIGH=y # CONFIG_IPCALC is not set # CONFIG_FEATURE_IPCALC_FANCY is not set # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set +# CONFIG_FAKEIDENTD is not set +CONFIG_NAMEIF=y +# CONFIG_FEATURE_NAMEIF_EXTENDED is not set +# CONFIG_NBDCLIENT is not set +# CONFIG_NC is not set +# CONFIG_NC_SERVER is not set +# CONFIG_NC_EXTRA is not set +# CONFIG_NC_110_COMPAT is not set CONFIG_NETSTAT=y # CONFIG_FEATURE_NETSTAT_WIDE is not set # CONFIG_FEATURE_NETSTAT_PRG is not set @@ -843,10 +877,14 @@ CONFIG_NSLOOKUP=y # CONFIG_NTPD is not set # CONFIG_FEATURE_NTPD_SERVER is not set # CONFIG_FEATURE_NTPD_CONF is not set +CONFIG_PING=y +# CONFIG_PING6 is not set +CONFIG_FEATURE_FANCY_PING=y # CONFIG_PSCAN is not set CONFIG_ROUTE=y # CONFIG_SLATTACH is not set # CONFIG_TCPSVD is not set +# CONFIG_UDPSVD is not set CONFIG_TELNET=y CONFIG_FEATURE_TELNET_TTYPE=y CONFIG_FEATURE_TELNET_AUTOLOGIN=y @@ -867,10 +905,19 @@ CONFIG_FEATURE_TFTP_BLOCKSIZE=y CONFIG_TRACEROUTE=y # CONFIG_TRACEROUTE6 is not set # CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set -# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set # CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set # CONFIG_TUNCTL is not set # CONFIG_FEATURE_TUNCTL_UG is not set +CONFIG_VCONFIG=y +CONFIG_WGET=y +CONFIG_FEATURE_WGET_STATUSBAR=y +CONFIG_FEATURE_WGET_AUTHENTICATION=y +CONFIG_FEATURE_WGET_LONG_OPTIONS=y +CONFIG_FEATURE_WGET_TIMEOUT=y +# CONFIG_FEATURE_WGET_OPENSSL is not set +# CONFIG_FEATURE_WGET_SSL_HELPER is not set +# CONFIG_WHOIS is not set +# CONFIG_ZCIP is not set # CONFIG_UDHCPC6 is not set # CONFIG_UDHCPD is not set # CONFIG_DHCPRELAY is not set @@ -888,14 +935,6 @@ CONFIG_FEATURE_UDHCP_8021Q=y CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80 CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n" -# CONFIG_UDPSVD is not set -CONFIG_VCONFIG=y -CONFIG_WGET=y -CONFIG_FEATURE_WGET_STATUSBAR=y -CONFIG_FEATURE_WGET_AUTHENTICATION=y -CONFIG_FEATURE_WGET_LONG_OPTIONS=y -CONFIG_FEATURE_WGET_TIMEOUT=y -# CONFIG_ZCIP is not set # # Print Utilities @@ -908,25 +947,43 @@ CONFIG_FEATURE_WGET_TIMEOUT=y # Mail Utilities # # CONFIG_MAKEMIME is not set -CONFIG_FEATURE_MIME_CHARSET="" # CONFIG_POPMAILDIR is not set # CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set # CONFIG_REFORMIME is not set # CONFIG_FEATURE_REFORMIME_COMPAT is not set # CONFIG_SENDMAIL is not set +CONFIG_FEATURE_MIME_CHARSET="" # # Process Utilities # +CONFIG_FREE=y +CONFIG_FUSER=y # CONFIG_IOSTAT is not set +CONFIG_KILL=y +CONFIG_KILLALL=y +CONFIG_KILLALL5=y CONFIG_LSOF=y # CONFIG_MPSTAT is not set # CONFIG_NMETER is not set +# CONFIG_PGREP is not set +# CONFIG_PKILL is not set +CONFIG_PIDOF=y +CONFIG_FEATURE_PIDOF_SINGLE=y +CONFIG_FEATURE_PIDOF_OMIT=y # CONFIG_PMAP is not set # CONFIG_POWERTOP is not set +CONFIG_PS=y +# CONFIG_FEATURE_PS_WIDE is not set +# CONFIG_FEATURE_PS_LONG is not set +# CONFIG_FEATURE_PS_TIME is not set +# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set +# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set # CONFIG_PSTREE is not set # CONFIG_PWDX is not set +CONFIG_RENICE=y # CONFIG_SMEMCAP is not set +CONFIG_BB_SYSCTL=y CONFIG_TOP=y CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE=y CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y @@ -936,61 +993,48 @@ CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS=y # CONFIG_FEATURE_TOPMEM is not set CONFIG_UPTIME=y # CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set -CONFIG_FREE=y -CONFIG_FUSER=y -CONFIG_KILL=y -CONFIG_KILLALL=y -CONFIG_KILLALL5=y -# CONFIG_PGREP is not set -CONFIG_PIDOF=y -CONFIG_FEATURE_PIDOF_SINGLE=y -CONFIG_FEATURE_PIDOF_OMIT=y -# CONFIG_PKILL is not set -CONFIG_PS=y -# CONFIG_FEATURE_PS_WIDE is not set -# CONFIG_FEATURE_PS_LONG is not set -# CONFIG_FEATURE_PS_TIME is not set -# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set -# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set -CONFIG_RENICE=y -CONFIG_BB_SYSCTL=y -# CONFIG_FEATURE_SHOW_THREADS is not set CONFIG_WATCH=y +# CONFIG_FEATURE_SHOW_THREADS is not set # # Runit Utilities # -# CONFIG_RUNSV is not set -# CONFIG_RUNSVDIR is not set -# CONFIG_FEATURE_RUNSVDIR_LOG is not set -# CONFIG_SV is not set -CONFIG_SV_DEFAULT_SERVICE_DIR="" -# CONFIG_SVLOGD is not set # CONFIG_CHPST is not set # CONFIG_SETUIDGID is not set # CONFIG_ENVUIDGID is not set # CONFIG_ENVDIR is not set # CONFIG_SOFTLIMIT is not set +# CONFIG_RUNSV is not set +# CONFIG_RUNSVDIR is not set +# CONFIG_FEATURE_RUNSVDIR_LOG is not set +# CONFIG_SV is not set +CONFIG_SV_DEFAULT_SERVICE_DIR="" +CONFIG_SVC=y +# CONFIG_SVLOGD is not set # CONFIG_CHCON is not set # CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set # CONFIG_GETENFORCE is not set # CONFIG_GETSEBOOL is not set # CONFIG_LOAD_POLICY is not set # CONFIG_MATCHPATHCON is not set -# CONFIG_RESTORECON is not set # CONFIG_RUNCON is not set # CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set # CONFIG_SELINUXENABLED is not set +# CONFIG_SESTATUS is not set # CONFIG_SETENFORCE is not set # CONFIG_SETFILES is not set # CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set +# CONFIG_RESTORECON is not set # CONFIG_SETSEBOOL is not set -# CONFIG_SESTATUS is not set # # Shells # CONFIG_ASH=y +CONFIG_ASH_OPTIMIZE_FOR_SIZE=y +CONFIG_ASH_INTERNAL_GLOB=y +CONFIG_ASH_RANDOM_SUPPORT=y +CONFIG_ASH_EXPAND_PRMT=y CONFIG_ASH_BASH_COMPAT=y CONFIG_ASH_IDLE_TIMEOUT=y CONFIG_ASH_JOB_CONTROL=y @@ -1002,9 +1046,6 @@ CONFIG_ASH_BUILTIN_TEST=y CONFIG_ASH_HELP=y CONFIG_ASH_CMDCMD=y # CONFIG_ASH_MAIL is not set -CONFIG_ASH_OPTIMIZE_FOR_SIZE=y -CONFIG_ASH_RANDOM_SUPPORT=y -CONFIG_ASH_EXPAND_PRMT=y # CONFIG_CTTYHACK is not set # CONFIG_HUSH is not set # CONFIG_HUSH_BASH_COMPAT is not set @@ -1039,6 +1080,11 @@ CONFIG_FEATURE_SH_EXTRA_QUIET=y # # System Logging Utilities # +CONFIG_KLOGD=y +CONFIG_FEATURE_KLOGD_KLOGCTL=y +CONFIG_LOGGER=y +# CONFIG_LOGREAD is not set +# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set CONFIG_SYSLOGD=y CONFIG_FEATURE_ROTATE_LOGFILE=y CONFIG_FEATURE_REMOTE_LOG=y @@ -1047,9 +1093,4 @@ CONFIG_FEATURE_REMOTE_LOG=y CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256 # CONFIG_FEATURE_IPC_SYSLOG is not set CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=0 -# CONFIG_LOGREAD is not set -# CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING is not set # CONFIG_FEATURE_KMSG_SYSLOG is not set -CONFIG_KLOGD=y -CONFIG_FEATURE_KLOGD_KLOGCTL=y -CONFIG_LOGGER=y diff --git a/package/busybox/busybox.hash b/package/busybox/busybox.hash index 7486aeb94b..d73f8d546b 100644 --- a/package/busybox/busybox.hash +++ b/package/busybox/busybox.hash @@ -1,3 +1,3 @@ -# From http://busybox.net/downloads/busybox-1.24.2.tar.bz2.sign -md5 2eaae519cac1143bcf583636a745381f busybox-1.24.2.tar.bz2 -sha1 03e6cfc8ddb2f709f308719a9b9f4818bc0a28d0 busybox-1.24.2.tar.bz2 +# From https://busybox.net/downloads/busybox-1.26.2.tar.bz2.sign +md5 bb59d25ee2643db20f212eec539429f1 busybox-1.26.2.tar.bz2 +sha1 0b3e3cd49d6d9e30f66e364bf842663348b23dc9 busybox-1.26.2.tar.bz2 diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index c7fb8b41e6..577f2f2470 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -4,12 +4,16 @@ # ################################################################################ -BUSYBOX_VERSION = 1.24.2 +BUSYBOX_VERSION = 1.26.2 BUSYBOX_SITE = http://www.busybox.net/downloads BUSYBOX_SOURCE = busybox-$(BUSYBOX_VERSION).tar.bz2 BUSYBOX_LICENSE = GPLv2 BUSYBOX_LICENSE_FILES = LICENSE +define BUSYBOX_HELP_CMDS + @echo ' busybox-menuconfig - Run BusyBox menuconfig' +endef + BUSYBOX_CFLAGS = \ $(TARGET_CFLAGS) @@ -32,6 +36,12 @@ BUSYBOX_MAKE_ENV = \ $(TARGET_MAKE_ENV) \ CFLAGS="$(BUSYBOX_CFLAGS)" \ CFLAGS_busybox="$(BUSYBOX_CFLAGS_busybox)" + +ifeq ($(BR2_REPRODUCIBLE),y) +BUSYBOX_MAKE_ENV += \ + KCONFIG_NOTIMESTAMP=1 +endif + BUSYBOX_MAKE_OPTS = \ CC="$(TARGET_CC)" \ ARCH=$(KERNEL_ARCH) \ @@ -86,7 +96,8 @@ endef else define BUSYBOX_SET_MMU $(call KCONFIG_ENABLE_OPT,CONFIG_NOMMU,$(BUSYBOX_BUILD_CONFIG)) - $(call KCONFIG_DISABLE_OPT,CONFIG_SWAPONOFF,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_DISABLE_OPT,CONFIG_SWAPON,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_DISABLE_OPT,CONFIG_SWAPOFF,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_DISABLE_OPT,CONFIG_ASH,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_BASH_COMPAT,$(BUSYBOX_BUILD_CONFIG)) diff --git a/package/busybox/mdev.conf b/package/busybox/mdev.conf index 4fafe63f0c..241c1c27df 100644 --- a/package/busybox/mdev.conf +++ b/package/busybox/mdev.conf @@ -20,6 +20,7 @@ tty root:tty 666 tty[0-9]* root:tty 660 vcsa*[0-9]* root:tty 660 ttyS[0-9]* root:root 660 +ttyUSB[0-9]* root:root 660 # alsa sound devices pcm.* root:audio 660 =snd/ diff --git a/package/bzip2/Config.in b/package/bzip2/Config.in index e8e03cf08e..dbc82496df 100644 --- a/package/bzip2/Config.in +++ b/package/bzip2/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_BZIP2 available techniques, while being around twice as fast at compression and six times faster at decompression. - http://sources.redhat.com/bzip2/ + http://www.bzip.org diff --git a/package/c-ares/c-ares.hash b/package/c-ares/c-ares.hash index f24cc3624a..f46ef02aba 100644 --- a/package/c-ares/c-ares.hash +++ b/package/c-ares/c-ares.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b3612e6617d9682928a1d50c1040de4db6519f977f0b25d40cf1b632900b3efd c-ares-1.11.0.tar.gz +sha256 8692f9403cdcdf936130e045c84021665118ee9bfea905d1a76f04d4e6f365fb c-ares-1.12.0.tar.gz diff --git a/package/c-ares/c-ares.mk b/package/c-ares/c-ares.mk index 298fe41671..e817d4add5 100644 --- a/package/c-ares/c-ares.mk +++ b/package/c-ares/c-ares.mk @@ -4,7 +4,7 @@ # ################################################################################ -C_ARES_VERSION = 1.11.0 +C_ARES_VERSION = 1.12.0 C_ARES_SITE = http://c-ares.haxx.se/download C_ARES_INSTALL_STAGING = YES C_ARES_CONF_OPTS = --with-random=/dev/urandom diff --git a/package/c-periphery/c-periphery.hash b/package/c-periphery/c-periphery.hash new file mode 100644 index 0000000000..516d340d96 --- /dev/null +++ b/package/c-periphery/c-periphery.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 5ae4c3f9de0e64d8153ee58b85c4a5defb9f755c6ae215f11b46719bbbac1335 c-periphery-v1.0.3.tar.gz diff --git a/package/ca-certificates/ca-certificates.hash b/package/ca-certificates/ca-certificates.hash index b467316872..ecedba4f63 100644 --- a/package/ca-certificates/ca-certificates.hash +++ b/package/ca-certificates/ca-certificates.hash @@ -1,3 +1,3 @@ # hashes from: $(CA_CERTIFICATES_SITE)/ca-certificates_$(CA_CERTIFICATES_VERSION).dsc : -sha1 4525a194736c6691dbd59fa87281b722837b4768 ca-certificates_20160104.tar.xz -sha256 09eb770122e23260316120c0cbbddc8a1d33e7147210ce44e146084d5d5abcdd ca-certificates_20160104.tar.xz +sha1 b190ca8849697e842e69401b28d4ee27130d8c4d ca-certificates_20161130.tar.xz +sha256 04bca9e142a90a834aca0311f7ced237368d71fee7bd5c9f68ef7f4611aee471 ca-certificates_20161130.tar.xz diff --git a/package/ca-certificates/ca-certificates.mk b/package/ca-certificates/ca-certificates.mk index 393c8cdd83..d077a1963a 100644 --- a/package/ca-certificates/ca-certificates.mk +++ b/package/ca-certificates/ca-certificates.mk @@ -4,9 +4,9 @@ # ################################################################################ -CA_CERTIFICATES_VERSION = 20160104 +CA_CERTIFICATES_VERSION = 20161130 CA_CERTIFICATES_SOURCE = ca-certificates_$(CA_CERTIFICATES_VERSION).tar.xz -CA_CERTIFICATES_SITE = http://snapshot.debian.org/archive/debian/20160104T220912Z/pool/main/c/ca-certificates +CA_CERTIFICATES_SITE = http://snapshot.debian.org/archive/debian/20161205T153846Z/pool/main/c/ca-certificates CA_CERTIFICATES_DEPENDENCIES = host-openssl # ca-certificates can be built with either python 2 or python 3 # but it must be at least python 2.7 @@ -22,7 +22,7 @@ endef define CA_CERTIFICATES_INSTALL_TARGET_CMDS $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/ca-certificates $(INSTALL) -d -m 0755 $(TARGET_DIR)/etc/ssl/certs - $(MAKE) -C $(@D) install DESTDIR=$(TARGET_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install DESTDIR=$(TARGET_DIR) rm -f $(TARGET_DIR)/usr/sbin/update-ca-certificates # Remove any existing certificates under /etc/ssl/certs diff --git a/package/cairo/cairo.hash b/package/cairo/cairo.hash index 225850f359..dd5365ba7e 100644 --- a/package/cairo/cairo.hash +++ b/package/cairo/cairo.hash @@ -1,4 +1,4 @@ -# From http://cairographics.org/releases/cairo-1.14.6.tar.xz.sha1 -sha1 0a59324e6cbe031b5b898ff8b9e2ffceb9d114f5 cairo-1.14.6.tar.xz +# From http://cairographics.org/releases/cairo-1.14.8.tar.xz.sha1 +sha1 c6f7b99986f93c9df78653c3e6a3b5043f65145e cairo-1.14.8.tar.xz # Calculated based on the hash above -sha256 613cb38447b76a93ff7235e17acd55a78b52ea84a9df128c3f2257f8eaa7b252 cairo-1.14.6.tar.xz +sha256 d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20 cairo-1.14.8.tar.xz diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk index b79899565b..761c6f4df2 100644 --- a/package/cairo/cairo.mk +++ b/package/cairo/cairo.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAIRO_VERSION = 1.14.6 +CAIRO_VERSION = 1.14.8 CAIRO_SOURCE = cairo-$(CAIRO_VERSION).tar.xz CAIRO_LICENSE = LGPLv2.1+ CAIRO_LICENSE_FILES = COPYING @@ -12,6 +12,11 @@ CAIRO_SITE = http://cairographics.org/releases CAIRO_INSTALL_STAGING = YES CAIRO_AUTORECONF = YES +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +CAIRO_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mxgot" +endif + ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) CAIRO_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -DCAIRO_NO_MUTEX=1" endif diff --git a/package/can-utils/Config.in b/package/can-utils/Config.in index 307f069ddf..bfa522d989 100644 --- a/package/can-utils/Config.in +++ b/package/can-utils/Config.in @@ -1,9 +1,14 @@ config BR2_PACKAGE_CAN_UTILS bool "can-utils" depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # clock_nanosleep() help SocketCAN is a set of open source CAN drivers and a networking stack. This package provides various tools for this stack. http://elinux.org/Can-utils + +comment "can-utils needs a toolchain w/ NPTL" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_USE_MMU diff --git a/package/can-utils/can-utils.hash b/package/can-utils/can-utils.hash new file mode 100644 index 0000000000..64c4cf6692 --- /dev/null +++ b/package/can-utils/can-utils.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 c4b6b347c1c165a64c1156bb8816bce557945dd770f61b8bdc8fdb7c0744af27 can-utils-c3305fdd515464153d20199db232b6124bc962c0.tar.gz diff --git a/package/can-utils/can-utils.mk b/package/can-utils/can-utils.mk index 8e8ed4e51a..6be41a62b0 100644 --- a/package/can-utils/can-utils.mk +++ b/package/can-utils/can-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAN_UTILS_VERSION = f0abaaacb0a3f620f73dd6fd716d7daa3c36a8e3 +CAN_UTILS_VERSION = c3305fdd515464153d20199db232b6124bc962c0 CAN_UTILS_SITE = $(call github,linux-can,can-utils,$(CAN_UTILS_VERSION)) CAN_UTILS_AUTORECONF = YES diff --git a/package/canfestival/Config.in b/package/canfestival/Config.in index 4e734964aa..ca949565f5 100644 --- a/package/canfestival/Config.in +++ b/package/canfestival/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS bool default y if BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_arm -comment "canfestival needs a (e)glibc or uClibc toolchain w/ threads and dynamic library" +comment "canfestival needs a glibc or uClibc toolchain w/ threads and dynamic library" depends on BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_MUSL || \ !BR2_TOOLCHAIN_HAS_THREADS || \ @@ -11,7 +11,7 @@ comment "canfestival needs a (e)glibc or uClibc toolchain w/ threads and dynamic config BR2_PACKAGE_CANFESTIVAL bool "canfestival" depends on BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_USES_MUSL + depends on !BR2_TOOLCHAIN_USES_MUSL # sigval_t depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS help diff --git a/package/cantarell/cantarell.hash b/package/cantarell/cantarell.hash index e2cc00eda4..330e7869d1 100644 --- a/package/cantarell/cantarell.hash +++ b/package/cantarell/cantarell.hash @@ -1,2 +1,2 @@ -# From http://ftp.acc.umu.se/pub/gnome/sources/cantarell-fonts/0.0/cantarell-fonts-0.0.24.sha256sum -sha256 9cad649ae84f7e4ca1be637c27e2fa19e1fbf00d4bf6480171ccfad405b39264 cantarell-fonts-0.0.24.tar.xz +# From http://ftp.acc.umu.se/pub/gnome/sources/cantarell-fonts/0.0/cantarell-fonts-0.0.25.sha256sum +sha256 14a228aa0b516dfc367b434a850f955a00c57fc549cbb05348e2b150196a737f cantarell-fonts-0.0.25.tar.xz diff --git a/package/cantarell/cantarell.mk b/package/cantarell/cantarell.mk index b4133ecdbd..3cdf600dd2 100644 --- a/package/cantarell/cantarell.mk +++ b/package/cantarell/cantarell.mk @@ -5,7 +5,7 @@ ################################################################################ CANTARELL_VERSION_MAJOR = 0.0 -CANTARELL_VERSION = $(CANTARELL_VERSION_MAJOR).24 +CANTARELL_VERSION = $(CANTARELL_VERSION_MAJOR).25 CANTARELL_SITE = http://ftp.gnome.org/pub/gnome/sources/cantarell-fonts/$(CANTARELL_VERSION_MAJOR) CANTARELL_SOURCE = cantarell-fonts-$(CANTARELL_VERSION).tar.xz CANTARELL_DEPENDENCIES = host-pkgconf diff --git a/package/cbootimage/0001-bct_dump-don-t-crash-on-devices-without-RSA-support.patch b/package/cbootimage/0001-bct_dump-don-t-crash-on-devices-without-RSA-support.patch new file mode 100644 index 0000000000..587d67fc47 --- /dev/null +++ b/package/cbootimage/0001-bct_dump-don-t-crash-on-devices-without-RSA-support.patch @@ -0,0 +1,43 @@ +From 64045f993c2cd8989838aeaad3d22107d96d5596 Mon Sep 17 00:00:00 2001 +From: Stephen Warren +Date: Thu, 28 Jul 2016 11:37:45 -0600 +Subject: [PATCH] bct_dump: don't crash on devices without RSA support + +format_rsa_param() currently crashes on chips that don't implement +soc_config->get_value_size(); that is, on all chips before T124. Fix the +function not to crash. Better might be to avoid even dumping RSA +parameters on chips which don't support RSA, but that's a larger change +that needs much more work. + +Fixes: 3c3b992a6814 ("Add support to dump rsa related fields for t210") +Cc: Jimmy Zhang +Signed-off-by: Stephen Warren +Signed-off-by: Misha Komarovskiy +--- + src/bct_dump.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/src/bct_dump.c b/src/bct_dump.c +index 4f50fa2..b4ca9fc 100644 +--- a/src/bct_dump.c ++++ b/src/bct_dump.c +@@ -133,10 +133,14 @@ static void format_rsa_param(parse_token id, char const * message, void * data) + { + #define MAX_BYTE_NUMBER_PER_LINE 16 + u_int8_t *rsa = (u_int8_t *)data; +- int size = g_soc_config->get_value_size(id); +- int byte_index; ++ int size, byte_index; + + printf("%s", message); ++ ++ if (!g_soc_config->get_value_size) ++ return; ++ ++ size = g_soc_config->get_value_size(id); + for (byte_index = 0; byte_index < size; ++byte_index) { + printf(" %02x", *rsa++); + +-- +2.1.4 + diff --git a/package/cbootimage/Config.in b/package/cbootimage/Config.in new file mode 100644 index 0000000000..1a7fef0b39 --- /dev/null +++ b/package/cbootimage/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_CBOOTIMAGE + bool "cbootimage" + depends on BR2_arm || BR2_armeb + help + This project provides a tool which compiles BCT (Boot + Configuration Table) images to place into the boot flash of + a Tegra-based device. + + https://github.com/NVIDIA/cbootimage diff --git a/package/cbootimage/cbootimage.mk b/package/cbootimage/cbootimage.mk index 20b17dde59..1b5672dbd4 100644 --- a/package/cbootimage/cbootimage.mk +++ b/package/cbootimage/cbootimage.mk @@ -10,4 +10,6 @@ CBOOTIMAGE_LICENSE = GPLv2 CBOOTIMAGE_LICENSE_FILES = COPYING CBOOTIMAGE_AUTORECONF = YES +$(eval $(autotools-package)) $(eval $(host-autotools-package)) + diff --git a/package/cc-tool/Config.in b/package/cc-tool/Config.in index f8e4531e26..b2cf97969b 100644 --- a/package/cc-tool/Config.in +++ b/package/cc-tool/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_CC_TOOL bool "cc-tool" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on BR2_USE_WCHAR # boost-filesystem select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_BOOST @@ -19,5 +18,4 @@ config BR2_PACKAGE_CC_TOOL http://sourceforge.net/projects/cctool/ comment "cc-tool needs a toolchain w/ C++, threads, wchar" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/ccache/0001-Convert-argument-to-sysroot-option-to-relative-path.patch b/package/ccache/0001-Convert-argument-to-sysroot-option-to-relative-path.patch new file mode 100644 index 0000000000..33db7d480f --- /dev/null +++ b/package/ccache/0001-Convert-argument-to-sysroot-option-to-relative-path.patch @@ -0,0 +1,43 @@ +From fe42d6f7b739e8d42811bf46bcccfafa728847a2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mathias=20De=20Mar=C3=A9?= +Date: Mon, 19 Sep 2016 10:38:13 +0200 +Subject: [PATCH] Convert argument to '--sysroot' option to relative path + +Previously, only the argument to '--sysroot=' was converted. +This changeset adds support for '--sysroot'. + +Signed-off-by: Brandon Maier +Signed-off-by: Matt Weber +--- + ccache.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/ccache.c b/ccache.c +index 8ffadcc..76139b9 100644 +--- a/ccache.c ++++ b/ccache.c +@@ -2407,6 +2407,21 @@ cc_process_args(struct args *args, struct args **preprocessor_args, + free(option); + continue; + } ++ // Alternate form of specifying sysroot without = ++ if (str_eq(argv[i], "--sysroot")) { ++ if (i == argc-1) { ++ cc_log("Missing argument to %s", argv[i]); ++ stats_update(STATS_ARGS); ++ result = false; ++ goto out; ++ } ++ args_add(stripped_args, argv[i]); ++ char *relpath = make_relative_path(x_strdup(argv[i+1])); ++ args_add(stripped_args, relpath); ++ i++; ++ free(relpath); ++ continue; ++ } + if (str_startswith(argv[i], "-Wp,")) { + if (str_eq(argv[i], "-Wp,-P") + || strstr(argv[i], ",-P,") +-- +2.8.3 + diff --git a/package/ccache/ccache.hash b/package/ccache/ccache.hash index 7e616cece7..bde53f794d 100644 --- a/package/ccache/ccache.hash +++ b/package/ccache/ccache.hash @@ -1,2 +1,2 @@ -# Verified key https://samba.org/ftp/ccache/ccache-3.2.5.tar.xz.asc - sha256 computed locally -sha256 117011534b199dbe290b08acae1591c81525536a1e140da22e0fbc04c20bab85 ccache-3.2.5.tar.xz +# Verified key https://samba.org/ftp/ccache/ccache-3.3.3.tar.xz.asc - sha256 computed locally +sha256 3b02a745da1cfa9eb438af7147e0fd3545e2f6163de9e5b07da86f58859f04ec ccache-3.3.3.tar.xz diff --git a/package/ccache/ccache.mk b/package/ccache/ccache.mk index c4f0310486..f174a5d01c 100644 --- a/package/ccache/ccache.mk +++ b/package/ccache/ccache.mk @@ -4,7 +4,7 @@ # ################################################################################ -CCACHE_VERSION = 3.2.5 +CCACHE_VERSION = 3.3.3 CCACHE_SITE = https://samba.org/ftp/ccache CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.xz CCACHE_LICENSE = GPLv3+, others diff --git a/package/cdrkit/cdrkit.mk b/package/cdrkit/cdrkit.mk index 2e4bb1fafe..10d118c46a 100644 --- a/package/cdrkit/cdrkit.mk +++ b/package/cdrkit/cdrkit.mk @@ -8,6 +8,7 @@ CDRKIT_VERSION = 1.1.11 CDRKIT_SOURCE = cdrkit_$(CDRKIT_VERSION).orig.tar.gz CDRKIT_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/c/cdrkit CDRKIT_DEPENDENCIES = libcap bzip2 zlib +HOST_CDRKIT_DEPENDENCIES = host-libcap host-bzip2 host-zlib CDRKIT_LICENSE = GPLv2 CDRKIT_LICENSE_FILES = COPYING diff --git a/package/checkpolicy/checkpolicy.hash b/package/checkpolicy/checkpolicy.hash index 32b5ff620c..6208d7749c 100644 --- a/package/checkpolicy/checkpolicy.hash +++ b/package/checkpolicy/checkpolicy.hash @@ -1,2 +1,2 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 e6a0ac539b74859b4262b317eb90d9914deb15e7aa509659f47724d50fe2ecc6 checkpolicy-2.1.12.tar.gz +sha256 0bebd18688ca8027b1b3b4ff1532c0626f1fe49883ae6cb74d9d385940e74157 checkpolicy-2.6.tar.gz diff --git a/package/checkpolicy/checkpolicy.mk b/package/checkpolicy/checkpolicy.mk index 4b7b2f3424..8328b39ad0 100644 --- a/package/checkpolicy/checkpolicy.mk +++ b/package/checkpolicy/checkpolicy.mk @@ -4,8 +4,8 @@ # ################################################################################ -CHECKPOLICY_VERSION = 2.1.12 -CHECKPOLICY_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423 +CHECKPOLICY_VERSION = 2.6 +CHECKPOLICY_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 CHECKPOLICY_LICENSE = GPLv2 CHECKPOLICY_LICENSE_FILES = COPYING @@ -17,11 +17,11 @@ HOST_CHECKPOLICY_MAKE_OPTS = $(HOST_CONFIGURE_OPTS) \ # DESTDIR is used at build time to find host-libselinux define HOST_CHECKPOLICY_BUILD_CMDS - $(MAKE) -C $(@D) $(HOST_CHECKPOLICY_MAKE_OPTS) DESTDIR=$(HOST_DIR) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CHECKPOLICY_MAKE_OPTS) DESTDIR=$(HOST_DIR) endef define HOST_CHECKPOLICY_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_CHECKPOLICY_MAKE_OPTS) DESTDIR=$(HOST_DIR) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CHECKPOLICY_MAKE_OPTS) DESTDIR=$(HOST_DIR) install endef $(eval $(host-generic-package)) diff --git a/package/chrony/chrony.hash b/package/chrony/chrony.hash index f39d31631e..66ec0603f7 100644 --- a/package/chrony/chrony.hash +++ b/package/chrony/chrony.hash @@ -1,3 +1,3 @@ -# From https://listengine.tuxfamily.org/chrony.tuxfamily.org/chrony-announce/2016/02/msg00001.html -md5 db6d46afea66f75dcc362f44623c1af4 chrony-2.3.tar.gz -sha1 c5e2aac4e4ad904bf73663ed63964bec91482a8a chrony-2.3.tar.gz +# From https://listengine.tuxfamily.org/chrony.tuxfamily.org/chrony-announce/2016/11/msg00000.html +md5 d08dd5a7d79a89891d119adcccb4397d chrony-2.4.1.tar.gz +sha1 b412375ca90dbef653ad00534f8b73b825e396d4 chrony-2.4.1.tar.gz diff --git a/package/chrony/chrony.mk b/package/chrony/chrony.mk index 6416b83c4b..0dca2eef55 100644 --- a/package/chrony/chrony.mk +++ b/package/chrony/chrony.mk @@ -4,7 +4,7 @@ # ################################################################################ -CHRONY_VERSION = 2.3 +CHRONY_VERSION = 2.4.1 CHRONY_SITE = http://download.tuxfamily.org/chrony CHRONY_LICENSE = GPLv2 CHRONY_LICENSE_FILES = COPYING @@ -34,6 +34,12 @@ else CHRONY_CONF_OPTS += --disable-readline endif +# If pps-tools is available, build it before so the package can use it +# (HAVE_SYS_TIMEPPS_H). +ifeq ($(BR2_PACKAGE_PPS_TOOLS),y) +CHRONY_DEPENDENCIES += pps-tools +endif + define CHRONY_CONFIGURE_CMDS cd $(@D) && $(TARGET_CONFIGURE_OPTS) ./configure $(CHRONY_CONF_OPTS) endef diff --git a/package/chrony/chrony.service b/package/chrony/chrony.service index 6000fce40c..325b63c492 100644 --- a/package/chrony/chrony.service +++ b/package/chrony/chrony.service @@ -4,7 +4,7 @@ After=syslog.target network.target Conflicts=systemd-timesyncd.service [Service] -ExecStart=/usr/bin/chronyd -n +ExecStart=/usr/sbin/chronyd -n Restart=always [Install] diff --git a/package/cifs-utils/cifs-utils.hash b/package/cifs-utils/cifs-utils.hash index c49ced4428..61ffbd9efb 100644 --- a/package/cifs-utils/cifs-utils.hash +++ b/package/cifs-utils/cifs-utils.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 e2776578b8267c6dc0862897f5e10f87f10f8337fca9ca6a9118f5eb30cf49f7 cifs-utils-6.5.tar.bz2 +sha256 d07152a807de6840566bbcc69a97ff6fa17fca4e09ceb4641d74882a83e67125 cifs-utils-6.6.tar.bz2 diff --git a/package/cifs-utils/cifs-utils.mk b/package/cifs-utils/cifs-utils.mk index 9d4e22374b..fdb17790cf 100644 --- a/package/cifs-utils/cifs-utils.mk +++ b/package/cifs-utils/cifs-utils.mk @@ -4,13 +4,13 @@ # ################################################################################ -CIFS_UTILS_VERSION = 6.5 +CIFS_UTILS_VERSION = 6.6 CIFS_UTILS_SOURCE = cifs-utils-$(CIFS_UTILS_VERSION).tar.bz2 CIFS_UTILS_SITE = http://ftp.samba.org/pub/linux-cifs/cifs-utils CIFS_UTILS_LICENSE = GPLv3+ CIFS_UTILS_LICENSE_FILES = COPYING -ifeq ($(BR2_STATIC_LIBS),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) CIFS_UTILS_CONF_OPTS += --disable-pie endif diff --git a/package/circus/Config.in b/package/circus/Config.in new file mode 100644 index 0000000000..5276513076 --- /dev/null +++ b/package/circus/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_CIRCUS + bool "circus" + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 + depends on BR2_INSTALL_LIBSTDCPP # pyzmq -> zeromq + depends on BR2_TOOLCHAIN_HAS_THREADS # pyzmq -> zeromq + depends on !BR2_TOOLCHAIN_USES_MUSL # python-psutil + select BR2_PACKAGE_PYTHON_IOWAIT # runtime + select BR2_PACKAGE_PYTHON_PSUTIL # runtime + select BR2_PACKAGE_PYTHON_PYZMQ # runtime + select BR2_PACKAGE_PYTHON_TORNADO # runtime + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime + help + Circus is a program that will let you run and watch multiple + processes and sockets. + + https://circus.readthedocs.org/en/latest/ + +comment "circus needs Python and a uClibc or glibc toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_TOOLCHAIN_USES_MUSL || \ + !(BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3) diff --git a/package/circus/circus.hash b/package/circus/circus.hash new file mode 100644 index 0000000000..728cad5239 --- /dev/null +++ b/package/circus/circus.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/circus/json, sha256 locally computed +md5 cddd4a8844907d8b6b402ca9c713d176 circus-0.13.0.tar.gz +sha256 6201800a5fb05144b5e6c5ac9eb901b914305e8beaeb01f8edf54ab6ab1a295a circus-0.13.0.tar.gz diff --git a/package/circus/circus.mk b/package/circus/circus.mk new file mode 100644 index 0000000000..35051c4734 --- /dev/null +++ b/package/circus/circus.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# circus +# +################################################################################ + +CIRCUS_VERSION = 0.13.0 +CIRCUS_SITE = https://pypi.python.org/packages/source/c/circus +CIRCUS_SETUP_TYPE = setuptools +CIRCUS_LICENSE = Apache-2.0 +CIRCUS_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/civetweb/civetweb.hash b/package/civetweb/civetweb.hash new file mode 100644 index 0000000000..745f4a8ce6 --- /dev/null +++ b/package/civetweb/civetweb.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 79a852a26068eb6d2f8de5ee72e021f0d2c8bd176eb81f41909a876b736815d9 civetweb-v1.5.tar.gz diff --git a/package/cjson/Config.in b/package/cjson/Config.in index bbe4c4a968..04eff4ca88 100644 --- a/package/cjson/Config.in +++ b/package/cjson/Config.in @@ -1,9 +1,7 @@ config BR2_PACKAGE_CJSON bool "cJSON" - # For static build with cJSON.c directly see README - depends on !BR2_STATIC_LIBS help An ultra-lightweight, portable, single-file, simple-as-can-be ANSI-C compliant JSON parser, under MIT license. - http://cjson.sourceforge.net/ + https://github.com/DaveGamble/cJSON diff --git a/package/cjson/cjson.hash b/package/cjson/cjson.hash new file mode 100644 index 0000000000..903880f7c5 --- /dev/null +++ b/package/cjson/cjson.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 1d976ca423d714b7e836cfbc1980b56f49962d0dfe654edb3c2ffa5c713af242 cjson-v1.2.1.tar.gz diff --git a/package/cjson/cjson.mk b/package/cjson/cjson.mk index 8f21ef8a10..11c34c5d78 100644 --- a/package/cjson/cjson.mk +++ b/package/cjson/cjson.mk @@ -4,26 +4,10 @@ # ################################################################################ -CJSON_VERSION = 58 -CJSON_SITE_METHOD = svn -CJSON_SITE = http://svn.code.sf.net/p/cjson/code +CJSON_VERSION = v1.2.1 +CJSON_SITE = $(call github,DaveGamble,cjson,$(CJSON_VERSION)) CJSON_INSTALL_STAGING = YES CJSON_LICENSE = MIT CJSON_LICENSE_FILES = LICENSE -define CJSON_BUILD_CMDS - cd $(@D) && $(TARGET_CC) $(TARGET_CFLAGS) -shared -fPIC -lm \ - cJSON.c -o libcJSON.so -endef - -define CJSON_INSTALL_STAGING_CMDS - $(INSTALL) -D $(@D)/cJSON.h $(STAGING_DIR)/usr/include/cJSON.h - $(INSTALL) -D $(@D)/libcJSON.so $(STAGING_DIR)/usr/lib/libcJSON.so -endef - -define CJSON_INSTALL_TARGET_CMDS - $(INSTALL) -D $(@D)/cJSON.h $(TARGET_DIR)/usr/include/cJSON.h - $(INSTALL) -D $(@D)/libcJSON.so $(TARGET_DIR)/usr/lib/libcJSON.so -endef - -$(eval $(generic-package)) +$(eval $(cmake-package)) diff --git a/package/clamav/clamav.mk b/package/clamav/clamav.mk index 6a82d66ca9..36ab8be0e9 100644 --- a/package/clamav/clamav.mk +++ b/package/clamav/clamav.mk @@ -26,6 +26,7 @@ CLAMAV_CONF_OPTS = \ --with-dbdir=/var/lib/clamav \ --with-openssl=$(STAGING_DIR)/usr \ --with-zlib=$(STAGING_DIR)/usr \ + --disable-zlib-vcheck \ --disable-rpath \ --disable-clamav \ --disable-fanotify \ diff --git a/package/clapack/Config.in b/package/clapack/Config.in index 2257524ecd..7d1f9401ae 100644 --- a/package/clapack/Config.in +++ b/package/clapack/Config.in @@ -1,4 +1,4 @@ -comment "clapack needs an (e)glibc toolchain" +comment "clapack needs a glibc toolchain" depends on BR2_powerpc depends on !BR2_TOOLCHAIN_USES_GLIBC @@ -12,6 +12,8 @@ config BR2_PACKAGE_CLAPACK # because of the "_" symbol prefix: # http://autobuild.buildroot.net/results/a28df0ba10803e6e54c2f8160bbd8190cba4d690/ depends on !BR2_bfin + # assembler: Error: value out of range + depends on !BR2_m68k_cf help BLAS and LAPACK C implementation (f2c'ed version of). diff --git a/package/cloog/cloog.mk b/package/cloog/cloog.mk index 4c8b4c11e7..ef666d0cac 100644 --- a/package/cloog/cloog.mk +++ b/package/cloog/cloog.mk @@ -7,7 +7,7 @@ CLOOG_VERSION = 0.18.4 CLOOG_SITE = http://www.bastoul.net/cloog/pages/download CLOOG_LICENSE = LGPLv2.1+ -CLOOG_DEPENDENCIES = gmp isl +HOST_CLOOG_DEPENDENCIES = host-gmp host-isl # Our libtool patch doesn't apply, and since this package is only # built for the host, we don't really care about it. CLOOG_LIBTOOL_PATCH = NO diff --git a/package/cmake/0001-rename_cmake_rootfile.patch b/package/cmake/0001-rename_cmake_rootfile.patch index 915b7e32bb..8c168c15a8 100644 --- a/package/cmake/0001-rename_cmake_rootfile.patch +++ b/package/cmake/0001-rename_cmake_rootfile.patch @@ -5,19 +5,25 @@ files are removed at build time via the target-finalize rule. This buildroot-specific patch makes sure ctest looks also for "Modules/CMake.cmake.ctest" before complaining -Signed-off-by: Davide Viti +[Vincent: tweak patch for 3.6.3] ---- cmake-3.0.2/Source/cmake.cxx~ 2014-09-11 15:24:01.000000000 +0200 -+++ cmake-3.0.2/Source/cmake.cxx 2014-11-25 15:48:04.461033690 +0100 -@@ -957,7 +957,10 @@ - "Path to cpack program executable.", cmCacheManager::INTERNAL); +Signed-off-by: Davide Viti +Signed-off-by: Vicente Olivert Riera + +diff -rup a/Source/cmake.cxx b/Source/cmake.cxx +--- a/Source/cmake.cxx 2016-07-07 15:47:27.000000000 +0100 ++++ b/Source/cmake.cxx 2016-07-14 10:14:59.914265515 +0100 +@@ -771,7 +771,12 @@ int cmake::AddCMakePaths() + "Path to cpack program executable.", cmState::INTERNAL); #endif - if(!cmSystemTools::FileExists( -- (cmSystemTools::GetCMakeRoot()+"/Modules/CMake.cmake").c_str())) -+ (cmSystemTools::GetCMakeRoot()+"/Modules/CMake.cmake").c_str()) && -+ !cmSystemTools::FileExists( -+ (cmSystemTools::GetCMakeRoot()+"/Modules/CMake.cmake.ctest").c_str()) + if (!cmSystemTools::FileExists( +- (cmSystemTools::GetCMakeRoot() + "/Modules/CMake.cmake").c_str())) { ++ (cmSystemTools::GetCMakeRoot() + "/Modules/CMake.cmake").c_str()) && ++ !cmSystemTools::FileExists( ++ (cmSystemTools::GetCMakeRoot()+"/Modules/CMake.cmake.ctest").c_str() ++ ) + ) - { ++ { // couldn't find modules - cmSystemTools::Error("Could not find CMAKE_ROOT !!!\n" + cmSystemTools::Error( + "Could not find CMAKE_ROOT !!!\n" diff --git a/package/cmake/Config.in b/package/cmake/Config.in index 6f04a4ad39..2706db51fa 100644 --- a/package/cmake/Config.in +++ b/package/cmake/Config.in @@ -20,11 +20,14 @@ config BR2_PACKAGE_CMAKE_CTEST select BR2_PACKAGE_EXPAT select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_XZ + select BR2_PACKAGE_LIBUV depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # from jsoncpp depends on BR2_USE_WCHAR # libarchive depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_USE_MMU # libuv help CTest is a testing tool distributed as a part of CMake. It can be used to automate updating (using CVS for example), @@ -34,7 +37,9 @@ config BR2_PACKAGE_CMAKE_CTEST http://www.cmake.org/ -comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7" +comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7, NPTL" depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS + depends on BR2_USE_MMU depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/cmake/cmake.hash b/package/cmake/cmake.hash index e40d4ea39a..13c0237594 100644 --- a/package/cmake/cmake.hash +++ b/package/cmake/cmake.hash @@ -1,2 +1,2 @@ -# From http://www.cmake.org/files/v3.5/cmake-3.5.2-SHA-256.txt -sha256 92d8410d3d981bb881dfff2aed466da55a58d34c7390d50449aa59b32bb5e62a cmake-3.5.2.tar.gz +# From http://www.cmake.org/files/v3.7/cmake-3.7.2-SHA-256.txt +sha256 dc1246c4e6d168ea4d6e042cfba577c1acd65feea27e56f5ff37df920c30cae0 cmake-3.7.2.tar.gz diff --git a/package/cmake/cmake.mk b/package/cmake/cmake.mk index a776b147e0..0fd71391fa 100644 --- a/package/cmake/cmake.mk +++ b/package/cmake/cmake.mk @@ -4,14 +4,25 @@ # ################################################################################ -CMAKE_VERSION_MAJOR = 3.5 +CMAKE_VERSION_MAJOR = 3.7 CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).2 CMAKE_SITE = https://cmake.org/files/v$(CMAKE_VERSION_MAJOR) CMAKE_LICENSE = BSD-3c CMAKE_LICENSE_FILES = Copyright.txt -HOST_CMAKE_DEPENDENCIES = host-pkgconf -CMAKE_DEPENDENCIES = zlib jsoncpp libcurl libarchive expat bzip2 xz +# CMake is a particular package: +# * CMake can be built using the generic infrastructure or the cmake one. +# Since Buildroot has no requirement regarding the host system cmake +# program presence, it uses the generic infrastructure to build the +# host-cmake package, then the (target-)cmake package can be built +# using the cmake infrastructure; +# * CMake bundles its dependencies within its sources. This is the +# reason why the host-cmake package has no dependencies:, whereas +# the (target-)cmake package has a lot of dependencies, using only +# the system-wide libraries instead of rebuilding and statically +# linking with the ones bundled into the CMake sources. + +CMAKE_DEPENDENCIES = zlib jsoncpp libcurl libarchive expat bzip2 xz libuv CMAKE_CONF_OPTS = \ -DKWSYS_LFS_WORKS=TRUE \ @@ -28,7 +39,7 @@ HOST_CMAKE_CXXFLAGS = $(shell echo $(HOST_CXXFLAGS) | sed -r "s%$(HOST_CPPFLAGS) define HOST_CMAKE_CONFIGURE_CMDS (cd $(@D); \ - LDFLAGS="$(HOST_LDFLAGS)" \ + $(HOST_CONFIGURE_OPTS) \ CFLAGS="$(HOST_CMAKE_CFLAGS)" \ ./bootstrap --prefix=$(HOST_DIR)/usr \ --parallel=$(PARALLEL_JOBS) -- \ diff --git a/package/collectd/Config.in b/package/collectd/Config.in index 71301ec18b..683141b120 100644 --- a/package/collectd/Config.in +++ b/package/collectd/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_COLLECTD +menuconfig BR2_PACKAGE_COLLECTD bool "collectd" # Uses fork() depends on BR2_USE_MMU @@ -39,6 +39,7 @@ config BR2_PACKAGE_COLLECTD_VALUE bool "value" help Select values by their data sources' values. + endmenu menu "misc plugins" @@ -74,6 +75,11 @@ config BR2_PACKAGE_COLLECTD_NOTIFY_EMAIL comment "notify_email needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS +config BR2_PACKAGE_COLLECTD_NOTIFY_NAGIOS + bool "notify_nagios" + help + Sends notifications to Nagios as a passive check result. + config BR2_PACKAGE_COLLECTD_SYSLOG bool "syslog" default y @@ -121,6 +127,11 @@ config BR2_PACKAGE_COLLECTD_CEPH help Statistics from the Ceph distributed storage system. +config BR2_PACKAGE_COLLECTD_CHRONY + bool "chrony" + help + Collects NTP data from the chrony NTP server. + config BR2_PACKAGE_COLLECTD_CGROUPS bool "cgroups" help @@ -146,6 +157,11 @@ config BR2_PACKAGE_COLLECTD_CPUFREQ help Collects the current CPU's frequency. +config BR2_PACKAGE_COLLECTD_CPUSLEEP + bool "cpusleep" + help + Measures time spent by CPU in deep sleep mode. + config BR2_PACKAGE_COLLECTD_CURL bool "curl" select BR2_PACKAGE_LIBCURL @@ -221,6 +237,18 @@ config BR2_PACKAGE_COLLECTD_FSCACHE Collects information about the file-system based caching infrastructure for network file-systems and other slow media. +config BR2_PACKAGE_COLLECTD_GPS + bool "gps" + select BR2_PACKAGE_GPSD + help + Reports the number of sattelites seen by and precision + of a GPS receiver. + +config BR2_PACKAGE_COLLECTD_HUGEPAGES + bool "hugepages" + help + Reports the number of used and free hugepages on Linux. + config BR2_PACKAGE_COLLECTD_INTERFACE bool "interface" help @@ -496,6 +524,12 @@ config BR2_PACKAGE_COLLECTD_GRAPHITE Writes data collected to Carbon (Graphite's) storage API. http://graphite.wikidot.com/start +config BR2_PACKAGE_COLLECTD_MQTT + bool "mqtt" + select BR2_PACKAGE_MOSQUITTO + help + Sends metrics to and/or receives metrics from an MQTT broker. + config BR2_PACKAGE_COLLECTD_NETWORK bool "network" help @@ -516,7 +550,7 @@ config BR2_PACKAGE_COLLECTD_RIEMANN depends on BR2_INSTALL_LIBSTDCPP # protobuf # protobuf-c -> host-protobuf depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - select BR2_PACKAGE_PROTOBUF_C + select BR2_PACKAGE_RIEMANN_C_CLIENT select BR2_PACKAGE_LIBTOOL help Sends data to Riemann, a stream processing and monitoring system. @@ -538,6 +572,20 @@ config BR2_PACKAGE_COLLECTD_WRITELOG help Writes data to the log. +config BR2_PACKAGE_COLLECTD_WRITEPROMETHEUS + bool "write_prometheus" + depends on BR2_INSTALL_LIBSTDCPP # protobuf-c + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" # protobuf-c + select BR2_PACKAGE_LIBMICROHTTPD + select BR2_PACKAGE_PROTOBUF_C + help + Publishes values using an embedded HTTP server, in a format + compatible with Prometheus' collectd_exporter. + +comment "write_prometheus needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + config BR2_PACKAGE_COLLECTD_WRITESENSU bool "write_sensu" help diff --git a/package/collectd/collectd.hash b/package/collectd/collectd.hash index 3d982fec8b..be2f646c9c 100644 --- a/package/collectd/collectd.hash +++ b/package/collectd/collectd.hash @@ -1,2 +1,2 @@ # From https://collectd.org/files/SHA256SUM -sha256 f9c5d526e1f0429a7db1ccd90bdf9e23923a2fd43b7285cfda8f0341e5c0bc3f collectd-5.5.1.tar.bz2 +sha256 7edd3643c0842215553b2421d5456f4e9a8a58b07e216b40a7e8e91026d8e501 collectd-5.7.1.tar.bz2 diff --git a/package/collectd/collectd.mk b/package/collectd/collectd.mk index 78e24b8a0f..38354ac0b4 100644 --- a/package/collectd/collectd.mk +++ b/package/collectd/collectd.mk @@ -4,7 +4,7 @@ # ################################################################################ -COLLECTD_VERSION = 5.5.1 +COLLECTD_VERSION = 5.7.1 COLLECTD_SITE = http://collectd.org/files COLLECTD_SOURCE = collectd-$(COLLECTD_VERSION).tar.bz2 COLLECTD_CONF_ENV = ac_cv_lib_yajl_yajl_alloc=yes @@ -14,13 +14,13 @@ COLLECTD_LICENSE_FILES = COPYING # These require unmet dependencies, are fringe, pointless or deprecated COLLECTD_PLUGINS_DISABLE = \ - amqp apple_sensors aquaero ascent barometer dbi email \ - gmond hddtemp ipmi java libvirt lpar lvm madwifi mbmon \ - mic multimeter netapp notify_desktop notify_email numa \ + amqp apple_sensors aquaero ascent barometer dbi dpdkstat email \ + gmond grpc hddtemp intel_rdt ipmi java libvirt lpar lvm \ + madwifi mbmon mic multimeter netapp notify_desktop numa \ nut onewire oracle perl pf pinba powerdns python redis routeros \ rrdcached sigrok tape target_v5upgrade teamspeak2 ted \ tokyotyrant turbostat uuid varnish virt vserver write_kafka \ - write_mongodb write_redis xmms zfs_arc + write_mongodb write_redis xencpu xmms zfs_arc zone COLLECTD_CONF_ENV += LIBS="-lm" @@ -35,11 +35,13 @@ COLLECTD_CONF_OPTS += \ $(if $(BR2_PACKAGE_COLLECTD_BATTERY),--enable-battery,--disable-battery) \ $(if $(BR2_PACKAGE_COLLECTD_BIND),--enable-bind,--disable-bind) \ $(if $(BR2_PACKAGE_COLLECTD_CEPH),--enable-ceph,--disable-ceph) \ + $(if $(BR2_PACKAGE_COLLECTD_CHRONY),--enable-chrony,--disable-chrony) \ $(if $(BR2_PACKAGE_COLLECTD_CGROUPS),--enable-cgroups,--disable-cgroups) \ $(if $(BR2_PACKAGE_COLLECTD_CONNTRACK),--enable-conntrack,--disable-conntrack) \ $(if $(BR2_PACKAGE_COLLECTD_CONTEXTSWITCH),--enable-contextswitch,--disable-contextswitch) \ $(if $(BR2_PACKAGE_COLLECTD_CPU),--enable-cpu,--disable-cpu) \ $(if $(BR2_PACKAGE_COLLECTD_CPUFREQ),--enable-cpufreq,--disable-cpufreq) \ + $(if $(BR2_PACKAGE_COLLECTD_CPUSLEEP),--enable-cpusleep,--disable-cpusleep) \ $(if $(BR2_PACKAGE_COLLECTD_CSV),--enable-csv,--disable-csv) \ $(if $(BR2_PACKAGE_COLLECTD_CURL),--enable-curl,--disable-curl) \ $(if $(BR2_PACKAGE_COLLECTD_CURL_JSON),--enable-curl_json,--disable-curl_json) \ @@ -55,8 +57,10 @@ COLLECTD_CONF_OPTS += \ $(if $(BR2_PACKAGE_COLLECTD_FHCOUNT),--enable-fhcount,--disable-fhcount) \ $(if $(BR2_PACKAGE_COLLECTD_FILECOUNT),--enable-filecount,--disable-filecount) \ $(if $(BR2_PACKAGE_COLLECTD_FSCACHE),--enable-fscache,--disable-fscache) \ + $(if $(BR2_PACKAGE_COLLECTD_GPS),--enable-gps,--disable-gps) \ $(if $(BR2_PACKAGE_COLLECTD_GRAPHITE),--enable-write_graphite,--disable-write_graphite) \ $(if $(BR2_PACKAGE_COLLECTD_HASHED),--enable-match_hashed,--disable-match_hashed) \ + $(if $(BR2_PACKAGE_COLLECTD_HUGEPAGES),--enable-hugepages,--disable-hugepages) \ $(if $(BR2_PACKAGE_COLLECTD_INTERFACE),--enable-interface,--disable-interface) \ $(if $(BR2_PACKAGE_COLLECTD_IPC),--enable-ipc,--disable-ipc) \ $(if $(BR2_PACKAGE_COLLECTD_IPTABLES),--enable-iptables,--disable-iptables) \ @@ -70,6 +74,7 @@ COLLECTD_CONF_OPTS += \ $(if $(BR2_PACKAGE_COLLECTD_MEMCACHED),--enable-memcached,--disable-memcached) \ $(if $(BR2_PACKAGE_COLLECTD_MEMORY),--enable-memory,--disable-memory) \ $(if $(BR2_PACKAGE_COLLECTD_MODBUS),--enable-modbus,--disable-modbus) \ + $(if $(BR2_PACKAGE_COLLECTD_MQTT),--enable-mqtt,--disable-mqtt) \ $(if $(BR2_PACKAGE_COLLECTD_MYSQL),--enable-mysql,--disable-mysql) \ $(if $(BR2_PACKAGE_COLLECTD_NETLINK),--enable-netlink,--disable-netlink) \ $(if $(BR2_PACKAGE_COLLECTD_NETWORK),--enable-network,--disable-network) \ @@ -77,6 +82,7 @@ COLLECTD_CONF_OPTS += \ $(if $(BR2_PACKAGE_COLLECTD_NGINX),--enable-nginx,--disable-nginx) \ $(if $(BR2_PACKAGE_COLLECTD_NOTIFICATION),--enable-target_notification,--disable-target_notification) \ $(if $(BR2_PACKAGE_COLLECTD_NOTIFY_EMAIL),--enable-notify_email,--disable-notify_email) \ + $(if $(BR2_PACKAGE_COLLECTD_NOTIFY_NAGIOS),--enable-notify_nagios,--disable-notify_nagios) \ $(if $(BR2_PACKAGE_COLLECTD_NTPD),--enable-ntpd,--disable-ntpd) \ $(if $(BR2_PACKAGE_COLLECTD_OLSRD),--enable-olsrd,--disable-olsrd) \ $(if $(BR2_PACKAGE_COLLECTD_OPENLDAP),--enable-openldap,--disable-openldap) \ @@ -113,6 +119,7 @@ COLLECTD_CONF_OPTS += \ $(if $(BR2_PACKAGE_COLLECTD_WIRELESS),--enable-wireless,--disable-wireless) \ $(if $(BR2_PACKAGE_COLLECTD_WRITEHTTP),--enable-write_http,--disable-write_http) \ $(if $(BR2_PACKAGE_COLLECTD_WRITELOG),--enable-write_log,--disable-write_log) \ + $(if $(BR2_PACKAGE_COLLECTD_WRITEPROMETHEUS),--enable-write_prometheus,--disable-write_prometheus) \ $(if $(BR2_PACKAGE_COLLECTD_WRITESENSU),--enable-write_sensu,--disable-write_sensu) \ $(if $(BR2_PACKAGE_COLLECTD_WRITETSDB),--enable-write_tsdb,--disable-write_tsdb) \ $(if $(BR2_PACKAGE_COLLECTD_ZOOKEEPER),--enable-zookeeper,--disable-zookeeper) @@ -126,10 +133,12 @@ COLLECTD_DEPENDENCIES = \ $(if $(BR2_PACKAGE_COLLECTD_CURL_JSON),libcurl yajl) \ $(if $(BR2_PACKAGE_COLLECTD_CURL_XML),libcurl libxml2) \ $(if $(BR2_PACKAGE_COLLECTD_DNS),libpcap) \ + $(if $(BR2_PACKAGE_COLLECTD_GPS),gpsd) \ $(if $(BR2_PACKAGE_COLLECTD_IPTABLES),iptables) \ $(if $(BR2_PACKAGE_COLLECTD_LOGSTASH),yajl) \ $(if $(BR2_PACKAGE_COLLECTD_MEMCACHEC),libmemcached) \ $(if $(BR2_PACKAGE_COLLECTD_MODBUS),libmodbus) \ + $(if $(BR2_PACKAGE_COLLECTD_MQTT),mosquitto) \ $(if $(BR2_PACKAGE_COLLECTD_MYSQL),mysql) \ $(if $(BR2_PACKAGE_COLLECTD_NETLINK),libmnl) \ $(if $(BR2_PACKAGE_COLLECTD_NGINX),libcurl) \ @@ -137,12 +146,13 @@ COLLECTD_DEPENDENCIES = \ $(if $(BR2_PACKAGE_COLLECTD_OPENLDAP),openldap) \ $(if $(BR2_PACKAGE_COLLECTD_PING),liboping) \ $(if $(BR2_PACKAGE_COLLECTD_POSTGRESQL),postgresql) \ - $(if $(BR2_PACKAGE_COLLECTD_RIEMANN),libtool protobuf-c) \ + $(if $(BR2_PACKAGE_COLLECTD_RIEMANN),libtool riemann-c-client) \ $(if $(BR2_PACKAGE_COLLECTD_RRDTOOL),rrdtool) \ $(if $(BR2_PACKAGE_COLLECTD_SENSORS),lm-sensors) \ $(if $(BR2_PACKAGE_COLLECTD_SMART),libatasmart) \ $(if $(BR2_PACKAGE_COLLECTD_SNMP),netsnmp) \ - $(if $(BR2_PACKAGE_COLLECTD_WRITEHTTP),libcurl) + $(if $(BR2_PACKAGE_COLLECTD_WRITEHTTP),libcurl) \ + $(if $(BR2_PACKAGE_COLLECTD_WRITEPROMETHEUS),libmicrohttpd protobuf-c) # include/library fixups ifeq ($(BR2_PACKAGE_LIBCURL),y) @@ -152,7 +162,7 @@ ifeq ($(BR2_PACKAGE_MYSQL),y) COLLECTD_CONF_OPTS += --with-libmysql=$(STAGING_DIR)/usr endif ifeq ($(BR2_PACKAGE_NETSNMP),y) -COLLECTD_CONF_OPTS += --with-libnetsnmp=$(STAGING_DIR)/usr/bin/net-snmp-config +COLLECTD_CONF_OPTS += --with-libnetsnmp=$(STAGING_DIR)/usr endif ifeq ($(BR2_PACKAGE_POSTGRESQL),y) COLLECTD_CONF_OPTS += --with-libpq=$(STAGING_DIR)/usr/bin/pg_config @@ -165,8 +175,7 @@ endif # network can use libgcrypt ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) COLLECTD_DEPENDENCIES += libgcrypt -COLLECTD_CONF_OPTS += --with-libgcrypt=$(STAGING_DIR)/usr -COLLECTD_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +COLLECTD_CONF_OPTS += --with-libgcrypt=$(STAGING_DIR)/usr/bin/libgcrypt-config else COLLECTD_CONF_OPTS += --with-libgcrypt=no endif @@ -180,7 +189,7 @@ endef COLLECTD_POST_PATCH_HOOKS += COLLECTD_DROP_WERROR define COLLECTD_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install rm -f $(TARGET_DIR)/usr/bin/collectd-nagios rm -f $(TARGET_DIR)/usr/share/collectd/postgresql_default.conf endef diff --git a/package/connman-gtk/Config.in b/package/connman-gtk/Config.in index c7857d0efa..467bf7ec88 100644 --- a/package/connman-gtk/Config.in +++ b/package/connman-gtk/Config.in @@ -1,8 +1,9 @@ -comment "connman-gtk needs libgtk3 and a toolchain w/ wchar, threads, resolver, dynamic library" +comment "connman-gtk needs libgtk3 and a glibc or uClibc toolchain w/ wchar, threads, resolver, dynamic library" 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_PACKAGE_LIBGTK3 + BR2_STATIC_LIBS || !BR2_PACKAGE_LIBGTK3 || \ + BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_CONNMAN_GTK bool "connman-gtk" @@ -11,6 +12,7 @@ config BR2_PACKAGE_CONNMAN_GTK depends on BR2_USE_MMU # libglib2 depends on !BR2_STATIC_LIBS # connman depends on BR2_TOOLCHAIN_HAS_SYNC_4 # connman + depends on !BR2_TOOLCHAIN_USES_MUSL # connman depends on BR2_PACKAGE_LIBGTK3 select BR2_PACKAGE_CONNMAN select BR2_PACKAGE_LIBGLIB2 diff --git a/package/connman/Config.in b/package/connman/Config.in index f723a31aa8..6ed40beab1 100644 --- a/package/connman/Config.in +++ b/package/connman/Config.in @@ -8,6 +8,7 @@ config BR2_PACKAGE_CONNMAN depends on BR2_USE_MMU # dbus, libglib2 depends on !BR2_STATIC_LIBS # needs dlopen() depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_USES_MUSL # mixes userspace and kernel headers help The Connection Manager (ConnMan) project provides a daemon for managing internet connections within embedded devices @@ -66,7 +67,8 @@ config BR2_PACKAGE_CONNMAN_CLIENT endif # BR2_PACKAGE_CONNMAN -comment "connman needs a toolchain w/ wchar, threads, resolver, dynamic library" +comment "connman needs a glibc or uClibc toolchain w/ wchar, threads, resolver, dynamic library" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/connman/connman.hash b/package/connman/connman.hash index e0bb483d27..f27af3deac 100644 --- a/package/connman/connman.hash +++ b/package/connman/connman.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/network/connman/sha256sums.asc -sha256 3185864c73206a6033d12e9f583689dcd03f714a40a58333709d3f74a4e0934c connman-1.32.tar.xz +sha256 bc8946036fa70124d663136f9f6b6238d897ca482782df907b07a428b09df5a0 connman-1.33.tar.xz diff --git a/package/connman/connman.mk b/package/connman/connman.mk index d21284b479..f7c9f2318f 100644 --- a/package/connman/connman.mk +++ b/package/connman/connman.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONNMAN_VERSION = 1.32 +CONNMAN_VERSION = 1.33 CONNMAN_SOURCE = connman-$(CONNMAN_VERSION).tar.xz CONNMAN_SITE = $(BR2_KERNEL_MIRROR)/linux/network/connman CONNMAN_DEPENDENCIES = libglib2 dbus iptables diff --git a/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch b/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch deleted file mode 100644 index 5881f98721..0000000000 --- a/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch +++ /dev/null @@ -1,37 +0,0 @@ -From d7b20d9bbed23a7a7e40af2f5e78f37ff67e8d93 Mon Sep 17 00:00:00 2001 -From: Rodrigo Rebello -Date: Mon, 23 Nov 2015 02:12:48 -0200 -Subject: [PATCH] src: fix build with musl libc - -The GNU version of 'struct tcphdr' is not exposed by musl libc headers -unless _GNU_SOURCE is defined. Without this definition, the build fails -with: - - rpc.c: In function 'rpc_helper_cb': - rpc.c:351:15: error: 'struct tcphdr' has no member named 'doff' - offset += th->doff * 4; - ^ - -Upstream status: sent -http://patchwork.ozlabs.org/patch/547376/ - -Signed-off-by: Rodrigo Rebello ---- - src/helpers/rpc.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/helpers/rpc.c b/src/helpers/rpc.c -index 82493c2..3a7b337 100644 ---- a/src/helpers/rpc.c -+++ b/src/helpers/rpc.c -@@ -28,6 +28,7 @@ - - #include - #include -+#define _GNU_SOURCE - #include - #include - --- -2.1.4 - diff --git a/package/conntrack-tools/conntrack-tools.hash b/package/conntrack-tools/conntrack-tools.hash index 7ff1cf7a4b..9d6817721d 100644 --- a/package/conntrack-tools/conntrack-tools.hash +++ b/package/conntrack-tools/conntrack-tools.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/conntrack-tools/conntrack-tools-1.4.3.tar.bz2.{md5sum,sha1sum} -md5 966a5d8f846ddf5304bcd12685c0707f conntrack-tools-1.4.3.tar.bz2 -sha1 509db30f34b283f4a74a7e638ba0ca713d3fe98c conntrack-tools-1.4.3.tar.bz2 +# From ftp://ftp.netfilter.org/pub/conntrack-tools/conntrack-tools-1.4.4.tar.bz2.{md5sum,sha1sum} +md5 acd9e0b27cf16ae3092ba900e4d7560e conntrack-tools-1.4.4.tar.bz2 +sha1 25b36fb6832373ef899bade3b82adf5382b9a05b conntrack-tools-1.4.4.tar.bz2 diff --git a/package/conntrack-tools/conntrack-tools.mk b/package/conntrack-tools/conntrack-tools.mk index 728758789c..b73aa7f4db 100644 --- a/package/conntrack-tools/conntrack-tools.mk +++ b/package/conntrack-tools/conntrack-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONNTRACK_TOOLS_VERSION = 1.4.3 +CONNTRACK_TOOLS_VERSION = 1.4.4 CONNTRACK_TOOLS_SOURCE = conntrack-tools-$(CONNTRACK_TOOLS_VERSION).tar.bz2 CONNTRACK_TOOLS_SITE = http://www.netfilter.org/projects/conntrack-tools/files CONNTRACK_TOOLS_DEPENDENCIES = host-pkgconf \ diff --git a/package/coreutils/Config.in b/package/coreutils/Config.in index d9f614a004..11a6019e82 100644 --- a/package/coreutils/Config.in +++ b/package/coreutils/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_COREUTILS bool "coreutils" depends on BR2_USE_WCHAR depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help All of the basic file/text/shell utilities. These are the core utilities which are expected to exist on every system. @@ -17,3 +18,4 @@ config BR2_PACKAGE_COREUTILS comment "coreutils 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/coreutils/coreutils.hash b/package/coreutils/coreutils.hash index 38d3bb1eeb..37d630bba9 100644 --- a/package/coreutils/coreutils.hash +++ b/package/coreutils/coreutils.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 31e67c057a5b32a582f26408c789e11c2e8d676593324849dcf5779296cdce87 coreutils-8.25.tar.xz +sha256 155e94d748f8e2bc327c66e0cbebdb8d6ab265d2f37c3c928f7bf6c3beba9a8e coreutils-8.26.tar.xz diff --git a/package/coreutils/coreutils.mk b/package/coreutils/coreutils.mk index 0d7b7821a2..409089c332 100644 --- a/package/coreutils/coreutils.mk +++ b/package/coreutils/coreutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -COREUTILS_VERSION = 8.25 +COREUTILS_VERSION = 8.26 COREUTILS_SITE = $(BR2_GNU_MIRROR)/coreutils COREUTILS_SOURCE = coreutils-$(COREUTILS_VERSION).tar.xz COREUTILS_LICENSE = GPLv3+ @@ -52,7 +52,8 @@ COREUTILS_CONF_ENV = ac_cv_c_restrict=no \ gl_cv_have_proc_uptime=yes \ utils_cv_localtime_cache=no \ PERL=missing \ - MAKEINFO=true + MAKEINFO=true \ + INSTALL_PROGRAM=$(INSTALL) COREUTILS_BIN_PROGS = cat chgrp chmod chown cp date dd df dir echo false \ ln ls mkdir mknod mv pwd rm rmdir vdir sleep stty sync touch true \ diff --git a/package/cosmo/cosmo.hash b/package/cosmo/cosmo.hash new file mode 100644 index 0000000000..ff88576469 --- /dev/null +++ b/package/cosmo/cosmo.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 4e81c1bba7ab3b4633c8d6dadfc8332c59c818829436435b4d5a2ec76adfbb87 cosmo-14.03.04-1.src.rock diff --git a/package/cpio/cpio.mk b/package/cpio/cpio.mk index 1576127968..b0b8fa6f7b 100644 --- a/package/cpio/cpio.mk +++ b/package/cpio/cpio.mk @@ -5,7 +5,7 @@ ################################################################################ CPIO_VERSION = 2.12 -CPIO_SITE = http://ftp.gnu.org/gnu/cpio +CPIO_SITE = $(BR2_GNU_MIRROR)/cpio CPIO_CONF_OPTS = --bindir=/bin CPIO_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) CPIO_LICENSE = GPLv3+ diff --git a/package/cppcms/Config.in b/package/cppcms/Config.in index 79f54741ba..2cf70052f8 100644 --- a/package/cppcms/Config.in +++ b/package/cppcms/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_CPPCMS select BR2_PACKAGE_PCRE select BR2_PACKAGE_LIBGCRYPT depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on !BR2_STATIC_LIBS # dlopen() depends on BR2_USE_WCHAR diff --git a/package/cppzmq/Config.in b/package/cppzmq/Config.in index 788fd0b59d..c984c15c96 100644 --- a/package/cppzmq/Config.in +++ b/package/cppzmq/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_CPPZMQ bool "cppzmq" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq select BR2_PACKAGE_ZEROMQ help @@ -9,6 +8,5 @@ config BR2_PACKAGE_CPPZMQ http://github.com/zeromq/cppzmq -comment "cppzmq needs a toolchain w/ C++, wchar, threads" - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) +comment "cppzmq needs a toolchain w/ C++, threads" + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/cppzmq/cppzmq.hash b/package/cppzmq/cppzmq.hash new file mode 100644 index 0000000000..792fb17b2f --- /dev/null +++ b/package/cppzmq/cppzmq.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 812b47f76c609e194b2607a186ff0d1b03b6a0c8ea13b20faa47570ddf38ef2c cppzmq-68a7b09cfce01c4c279fba2cf91686fcfc566848.tar.gz diff --git a/package/cpuload/cpuload.hash b/package/cpuload/cpuload.hash new file mode 100644 index 0000000000..02861ffa95 --- /dev/null +++ b/package/cpuload/cpuload.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1d61f4776dc3e2746343d68b2ea2faf138e54666b630a6060df4f3945badbcae cpuload-v0.3.tar.gz diff --git a/package/cramfs/cramfs.mk b/package/cramfs/cramfs.mk index 72860b6b7a..3cbe2744e6 100644 --- a/package/cramfs/cramfs.mk +++ b/package/cramfs/cramfs.mk @@ -10,6 +10,7 @@ CRAMFS_LICENSE = GPLv2+ CRAMFS_LICENSE_FILES = COPYING CRAMFS_DEPENDENCIES = zlib +HOST_CRAMFS_DEPENDENCIES = host-zlib define CRAMFS_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) diff --git a/package/crda/Config.in b/package/crda/Config.in index 2b9332fc07..2cb040372f 100644 --- a/package/crda/Config.in +++ b/package/crda/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_CRDA bool "crda" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt depends on BR2_TOOLCHAIN_HAS_THREADS # libnl depends on !BR2_STATIC_LIBS select BR2_PACKAGE_LIBGCRYPT diff --git a/package/crudini/crudini.hash b/package/crudini/crudini.hash index b9aaecf7b8..2796e7a8c6 100644 --- a/package/crudini/crudini.hash +++ b/package/crudini/crudini.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=7d1313f1bb9800db9cbceaa518bcf212, sha256 locally computed -md5 7d1313f1bb9800db9cbceaa518bcf212 crudini-0.7.tar.gz -sha256 5d493ae6600e54f9e0296b12d3adba99b88a439d8c4b2ebf9bc6f9c0613a03d7 crudini-0.7.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0664fa2f9d36e411e839b5394d8c2951, sha256 locally computed +md5 0664fa2f9d36e411e839b5394d8c2951 crudini-0.8.tar.gz +sha256 effdf8feb7efe252af87143c8756bbc69e2679afb6173083d38be02284385e5f crudini-0.8.tar.gz diff --git a/package/crudini/crudini.mk b/package/crudini/crudini.mk index d797efcdc0..501c9e01fb 100644 --- a/package/crudini/crudini.mk +++ b/package/crudini/crudini.mk @@ -4,9 +4,8 @@ # ################################################################################ -CRUDINI_VERSION = 0.7 -CRUDINI_SOURCE = crudini-$(CRUDINI_VERSION).tar.gz -CRUDINI_SITE = https://pypi.python.org/packages/source/c/crudini +CRUDINI_VERSION = 0.8 +CRUDINI_SITE = https://pypi.python.org/packages/23/4a/934b05bbe5af4fd390207c5e935efbae6439809aad65ab0702e236c1b5f5 CRUDINI_SETUP_TYPE = setuptools CRUDINI_LICENSE = GPLv2 CRUDINI_LICENSE_FILES = COPYING diff --git a/package/cryptodev-linux/cryptodev-linux.hash b/package/cryptodev-linux/cryptodev-linux.hash index d7195ac6f8..6d9efcae91 100644 --- a/package/cryptodev-linux/cryptodev-linux.hash +++ b/package/cryptodev-linux/cryptodev-linux.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking php signature -sha256 67fabde9fb67b286a96c4f45b594b0eccd0f761b495705c18f2ae9461b831376 cryptodev-linux-1.8.tar.gz +# Locally calculated +sha256 a87e354e1218e6a2e3083f7be6a3e351c42ec55515f1aff1b50bd301cee7d8dd cryptodev-linux-2b29be8ac41414ed19cb4f5d5626d9bd0d7b11a8.tar.gz diff --git a/package/cryptodev-linux/cryptodev-linux.mk b/package/cryptodev-linux/cryptodev-linux.mk index c3f5355345..709c6ed021 100644 --- a/package/cryptodev-linux/cryptodev-linux.mk +++ b/package/cryptodev-linux/cryptodev-linux.mk @@ -4,14 +4,16 @@ # ################################################################################ -CRYPTODEV_LINUX_VERSION = 1.8 -CRYPTODEV_LINUX_SITE = http://download.gna.org/cryptodev-linux +CRYPTODEV_LINUX_VERSION = 2b29be8ac41414ed19cb4f5d5626d9bd0d7b11a8 +CRYPTODEV_LINUX_SITE = $(call github,cryptodev-linux,cryptodev-linux,$(CRYPTODEV_LINUX_VERSION)) CRYPTODEV_LINUX_INSTALL_STAGING = YES CRYPTODEV_LINUX_LICENSE = GPLv2+ CRYPTODEV_LINUX_LICENSE_FILES = COPYING +CRYPTODEV_LINUX_PROVIDES = cryptodev + define CRYPTODEV_LINUX_MODULE_GEN_VERSION_H - $(MAKE) -C $(@D) version.h + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) version.h endef CRYPTODEV_LINUX_PRE_BUILD_HOOKS += CRYPTODEV_LINUX_MODULE_GEN_VERSION_H diff --git a/package/cryptopp/0001-Fix-possible-DoS-in-ASN.1-decoders-CVE-2016-9939.patch b/package/cryptopp/0001-Fix-possible-DoS-in-ASN.1-decoders-CVE-2016-9939.patch new file mode 100644 index 0000000000..2d0f1d91da --- /dev/null +++ b/package/cryptopp/0001-Fix-possible-DoS-in-ASN.1-decoders-CVE-2016-9939.patch @@ -0,0 +1,69 @@ +From 3d9181d7bdd8e491f745dbc9e34bd20b6f6da069 Mon Sep 17 00:00:00 2001 +From: Gergely Nagy +Date: Wed, 14 Dec 2016 13:19:01 +0100 +Subject: [PATCH] Fix possible DoS in ASN.1 decoders (CVE-2016-9939) + +Signed-off-by: Peter Korsgaard +--- + asn.cpp | 10 ++++++++++ + asn.h | 2 ++ + 2 files changed, 12 insertions(+) + +diff --git a/asn.cpp b/asn.cpp +index 297ff01..2e923ef 100644 +--- a/asn.cpp ++++ b/asn.cpp +@@ -123,6 +123,8 @@ size_t BERDecodeOctetString(BufferedTransformation &bt, SecByteBlock &str) + size_t bc; + if (!BERLengthDecode(bt, bc)) + BERDecodeError(); ++ if (bc > bt.MaxRetrievable()) ++ BERDecodeError(); + + str.New(bc); + if (bc != bt.Get(str, bc)) +@@ -139,6 +141,8 @@ size_t BERDecodeOctetString(BufferedTransformation &bt, BufferedTransformation & + size_t bc; + if (!BERLengthDecode(bt, bc)) + BERDecodeError(); ++ if (bc > bt.MaxRetrievable()) ++ BERDecodeError(); + + bt.TransferTo(str, bc); + return bc; +@@ -161,6 +165,8 @@ size_t BERDecodeTextString(BufferedTransformation &bt, std::string &str, byte as + size_t bc; + if (!BERLengthDecode(bt, bc)) + BERDecodeError(); ++ if (bc > bt.MaxRetrievable()) ++ BERDecodeError(); + + SecByteBlock temp(bc); + if (bc != bt.Get(temp, bc)) +@@ -188,6 +194,10 @@ size_t BERDecodeBitString(BufferedTransformation &bt, SecByteBlock &str, unsigne + size_t bc; + if (!BERLengthDecode(bt, bc)) + BERDecodeError(); ++ if (bc == 0) ++ BERDecodeError(); ++ if (bc > bt.MaxRetrievable()) ++ BERDecodeError(); + + byte unused; + if (!bt.Get(unused)) +diff --git a/asn.h b/asn.h +index ed9de52..33f0dd0 100644 +--- a/asn.h ++++ b/asn.h +@@ -498,6 +498,8 @@ void BERDecodeUnsigned(BufferedTransformation &in, T &w, byte asnTag = INTEGER, + bool definite = BERLengthDecode(in, bc); + if (!definite) + BERDecodeError(); ++ if (bc > in.MaxRetrievable()) ++ BERDecodeError(); + + SecByteBlock buf(bc); + +-- +2.10.2 + diff --git a/package/cryptopp/cryptopp.hash b/package/cryptopp/cryptopp.hash index bf59c0451d..577638c1c9 100644 --- a/package/cryptopp/cryptopp.hash +++ b/package/cryptopp/cryptopp.hash @@ -1,3 +1,2 @@ # Locally computed -sha256 9390670a14170dd0f48a6b6b06f74269ef4b056d4718a1a329f6f6069dc957c9 cryptopp563.zip -sha256 74b88c2caf7cf843bdc74d3331adaf83e516167cc8eebe66a79612189549cfa4 f707b9ef1688d4429ca6239cf2dc236440974681.patch +sha256 a75ef486fe3128008bbb201efee3dcdcffbe791120952910883b26337ec32c34 cryptopp565.zip diff --git a/package/cryptopp/cryptopp.mk b/package/cryptopp/cryptopp.mk index df07cf607f..456876c4ee 100644 --- a/package/cryptopp/cryptopp.mk +++ b/package/cryptopp/cryptopp.mk @@ -4,11 +4,9 @@ # ################################################################################ -CRYPTOPP_VERSION = 5.6.3 +CRYPTOPP_VERSION = 5.6.5 CRYPTOPP_SOURCE = cryptopp$(subst .,,$(CRYPTOPP_VERSION)).zip CRYPTOPP_SITE = http://cryptopp.com/ -# Upstream patch needed to fix the build with gcc < 4.5 -CRYPTOPP_PATCH = https://github.com/weidai11/cryptopp/commit/f707b9ef1688d4429ca6239cf2dc236440974681.patch CRYPTOPP_LICENSE = Boost-v1.0 CRYPTOPP_LICENSE_FILES = License.txt CRYPTOPP_INSTALL_STAGING = YES @@ -22,11 +20,11 @@ HOST_CRYPTOPP_MAKE_OPTS = \ CXXFLAGS="$(HOST_CXXFLAGS) -fPIC" define HOST_CRYPTOPP_BUILD_CMDS - $(MAKE) -C $(@D) $(HOST_CRYPTOPP_MAKE_OPTS) shared + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CRYPTOPP_MAKE_OPTS) shared endef define HOST_CRYPTOPP_INSTALL_CMDS - $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install endef $(eval $(host-generic-package)) diff --git a/package/cryptsetup/Config.in b/package/cryptsetup/Config.in index 80671ee8ca..3ca23ba721 100644 --- a/package/cryptsetup/Config.in +++ b/package/cryptsetup/Config.in @@ -1,20 +1,21 @@ config BR2_PACKAGE_CRYPTSETUP bool "cryptsetup" + depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2 + depends on BR2_USE_MMU # lvm2 + depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 select BR2_PACKAGE_POPT select BR2_PACKAGE_LVM2 select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE - depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2 - depends on BR2_USE_MMU # lvm2 - depends on !BR2_STATIC_LIBS # lvm2 - depends on BR2_USE_WCHAR # util-linux help This tool helps manipulate dm-crypt and luks partitions for on-disk encryption. https://gitlab.com/cryptsetup/cryptsetup -comment "cryptsetup needs a toolchain w/ wchar, threads, dynamic library" +comment "cryptsetup needs a glibc or uClibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/cryptsetup/cryptsetup.hash b/package/cryptsetup/cryptsetup.hash index 0928627ad9..b8c0d2b4e6 100644 --- a/package/cryptsetup/cryptsetup.hash +++ b/package/cryptsetup/cryptsetup.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/sha256sums.asc -sha256 73dc8a63cc984b56aa6a3c99f355262471bcfe78b3240b8b9d0caa8002911fec cryptsetup-1.7.1.tar.xz +sha256 af2b04e8475cf40b8d9ffd97a1acfa73aa787c890430afd89804fb544d6adc02 cryptsetup-1.7.3.tar.xz diff --git a/package/cryptsetup/cryptsetup.mk b/package/cryptsetup/cryptsetup.mk index 4d377099c3..50bf5f2aaf 100644 --- a/package/cryptsetup/cryptsetup.mk +++ b/package/cryptsetup/cryptsetup.mk @@ -5,7 +5,7 @@ ################################################################################ CRYPTSETUP_VERSION_MAJOR = 1.7 -CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).1 +CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).3 CRYPTSETUP_SOURCE = cryptsetup-$(CRYPTSETUP_VERSION).tar.xz CRYPTSETUP_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/cryptsetup/v$(CRYPTSETUP_VERSION_MAJOR) CRYPTSETUP_DEPENDENCIES = lvm2 popt util-linux host-pkgconf \ diff --git a/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch b/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch index c0e87a4e5c..30002d3c8f 100644 --- a/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch +++ b/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch @@ -1,21 +1,18 @@ -From a77bb18a5584bb23687ed3c522dbd91a9987d5a7 Mon Sep 17 00:00:00 2001 -From: Olivier Schonken -Date: Wed, 20 Jan 2016 22:13:11 +0200 +From 6bc1d15250841cf17d307cfb4f35c960c23d8797 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 29 May 2016 19:31:50 +0200 Subject: [PATCH] Remove man from BUILDDIRS in configure -Since cups doesn't autoreconf properly, we directly patch the -configure script. - -Signed-off-by: Olivier Schonken +Signed-off-by: Bernd Kuhls --- - configure | 2 +- + config-scripts/cups-common.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/configure b/configure -index 4170ff3..3879a75 100755 ---- a/configure -+++ b/configure -@@ -5921,7 +5921,7 @@ fi +diff --git a/config-scripts/cups-common.m4 b/config-scripts/cups-common.m4 +index fbba715..77d0f5c 100644 +--- a/config-scripts/cups-common.m4 ++++ b/config-scripts/cups-common.m4 +@@ -446,7 +446,7 @@ AC_ARG_WITH(components, [ --with-components set components to build: case "$COMPONENTS" in all) @@ -25,5 +22,5 @@ index 4170ff3..3879a75 100755 core) -- -2.5.0 +2.8.1 diff --git a/package/cups/0003-Sanitize-the-installation-process.patch b/package/cups/0003-Sanitize-the-installation-process.patch index 25bfa42a30..bf81f682df 100644 --- a/package/cups/0003-Sanitize-the-installation-process.patch +++ b/package/cups/0003-Sanitize-the-installation-process.patch @@ -18,13 +18,16 @@ cross-compiling: prevent overwriting those files/directories, which meant calling "make install" twice was failing. +[Vincent: tweak the patch for 2.2.2 release] + Signed-off-by: Thomas Petazzoni +Signed-off-by: Vicente Olivert Riera --- Makedefs.in | 12 ++++++------ conf/Makefile | 6 +++--- notifier/Makefile | 2 +- - scheduler/Makefile | 17 ++++++++--------- - 4 files changed, 18 insertions(+), 19 deletions(-) + scheduler/Makefile | 15 +++++++-------- + 4 files changed, 17 insertions(+), 18 deletions(-) diff --git a/Makedefs.in b/Makedefs.in index 3afef0a..3e4f1bd 100644 @@ -84,18 +87,15 @@ index 3206dd0..c34a4d7 100644 # diff --git a/scheduler/Makefile b/scheduler/Makefile -index c7d244d..a96a528 100644 +index 251f017..25f2f5f 100644 --- a/scheduler/Makefile +++ b/scheduler/Makefile -@@ -148,30 +148,29 @@ install-data: +@@ -146,28 +146,27 @@ install-data: echo Creating $(SERVERBIN)/driver... $(INSTALL_DIR) -m 755 $(SERVERBIN)/driver echo Creating $(SERVERROOT)... - $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT) + $(INSTALL_DIR) -m 755 $(SERVERROOT) - echo Creating $(SERVERROOT)/interfaces... -- $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT)/interfaces -+ $(INSTALL_DIR) -m 755 $(SERVERROOT)/interfaces echo Creating $(SERVERROOT)/ppd... - $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT)/ppd + $(INSTALL_DIR) -m 755 $(SERVERROOT)/ppd diff --git a/package/cups/0004-remove-pie.patch b/package/cups/0004-Remove-PIE-flags-from-the-build.patch similarity index 59% rename from package/cups/0004-remove-pie.patch rename to package/cups/0004-Remove-PIE-flags-from-the-build.patch index 3d81941ef4..492418f70d 100644 --- a/package/cups/0004-remove-pie.patch +++ b/package/cups/0004-Remove-PIE-flags-from-the-build.patch @@ -1,16 +1,22 @@ -Remove PIE flags from the build +From b341a1e1fce48012fc5bcf39337488fd33210616 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 3 Jul 2016 12:20:21 +0200 +Subject: [PATCH] Remove PIE flags from the build Generating a statically linked binary built with PIE requires the Scrt1.o file, which isn't part of Buildroot uClibc toolchains. To solve this, we simply disable the PIE flags. Signed-off-by: Thomas Petazzoni +--- + Makedefs.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) -Index: b/Makedefs.in -=================================================================== +diff --git a/Makedefs.in b/Makedefs.in +index 3afef0a..299b297 100644 --- a/Makedefs.in +++ b/Makedefs.in -@@ -142,7 +142,7 @@ +@@ -142,7 +142,7 @@ IPPFIND_BIN = @IPPFIND_BIN@ IPPFIND_MAN = @IPPFIND_MAN@ LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \ -L../scheduler @LDARCHFLAGS@ \ @@ -19,3 +25,6 @@ Index: b/Makedefs.in LINKCUPS = @LINKCUPS@ $(LIBGSSAPI) $(DNSSDLIBS) $(LIBZ) LINKCUPSIMAGE = @LINKCUPSIMAGE@ LIBS = $(LINKCUPS) $(COMMONLIBS) +-- +2.7.4 + diff --git a/package/cups/0005-Fix-static-linking-with-GnuTLS.patch b/package/cups/0005-Fix-static-linking-with-GnuTLS.patch new file mode 100644 index 0000000000..5702caae97 --- /dev/null +++ b/package/cups/0005-Fix-static-linking-with-GnuTLS.patch @@ -0,0 +1,39 @@ +From 79a2389f590f4d16885bdd0715f3f04fd9fa6cc5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Sun, 28 Feb 2016 16:35:56 +0100 +Subject: [PATCH] Fix static linking with GnuTLS +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +cups forgets to link against the libs found by pkg-config if it is build with +GnuTLS support. + +Otherwise, static build fails with: +../cups/libcups.a(tls.o): In function `http_gnutls_create_credential': +cups-2.1.2/cups/tls-gnutls.c:762: undefined reference to `gnutls_x509_crt_init' +[..] + +Status upstream: Pending + +Signed-off-by: Jörg Krause +--- + Makedefs.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makedefs.in b/Makedefs.in +index 299b297..ce9d535 100644 +--- a/Makedefs.in ++++ b/Makedefs.in +@@ -143,7 +143,7 @@ IPPFIND_MAN = @IPPFIND_MAN@ + LDFLAGS = -L../cgi-bin -L../cups -L../filter -L../ppdc \ + -L../scheduler @LDARCHFLAGS@ \ + @LDFLAGS@ @RELROFLAGS@ $(OPTIM) +-LINKCUPS = @LINKCUPS@ $(LIBGSSAPI) $(DNSSDLIBS) $(LIBZ) ++LINKCUPS = @LINKCUPS@ $(SSLLIBS) $(LIBGSSAPI) $(DNSSDLIBS) $(LIBZ) + LINKCUPSIMAGE = @LINKCUPSIMAGE@ + LIBS = $(LINKCUPS) $(COMMONLIBS) + ONDEMANDFLAGS = @ONDEMANDFLAGS@ +-- +2.7.4 + diff --git a/package/cups/cups.hash b/package/cups/cups.hash index f38399f0e7..08c8c3c234 100644 --- a/package/cups/cups.hash +++ b/package/cups/cups.hash @@ -1,2 +1,2 @@ # Locally calculated: -sha256 bab0ca3ba80eae48319b3a6b19a5b14fad5ce230f30151a0cfa4c0271df281ad cups-2.1.2-source.tar.bz2 +sha256 f589bb7d5d1dc3aa0915d7cf2b808571ef2e1530cd1a6ebe76ae8f9f4994e4f6 cups-2.2.2-source.tar.gz diff --git a/package/cups/cups.mk b/package/cups/cups.mk index c07dcb4640..05737767f8 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -4,15 +4,21 @@ # ################################################################################ -CUPS_VERSION = 2.1.2 -CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.bz2 -CUPS_SITE = http://www.cups.org/software/$(CUPS_VERSION) +CUPS_VERSION = 2.2.2 +CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz +CUPS_SITE = https://github.com/apple/cups/releases/download/v$(CUPS_VERSION) CUPS_LICENSE = GPLv2 LGPLv2 CUPS_LICENSE_FILES = LICENSE.txt CUPS_INSTALL_STAGING = YES CUPS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) DSTROOT=$(STAGING_DIR) install CUPS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) DSTROOT=$(TARGET_DIR) install +# Using autoconf, not autoheader, so we cannot use AUTORECONF = YES. +define CUPS_RUN_AUTOCONF + cd $(@D); $(HOST_DIR)/usr/bin/autoconf -f +endef +CUPS_PRE_CONFIGURE_HOOKS += CUPS_RUN_AUTOCONF + CUPS_CONF_OPTS = \ --without-perl \ --without-java \ @@ -21,6 +27,7 @@ CUPS_CONF_OPTS = \ --libdir=/usr/lib CUPS_CONFIG_SCRIPTS = cups-config CUPS_DEPENDENCIES = \ + host-autoconf \ $(if $(BR2_PACKAGE_ZLIB),zlib) ifeq ($(BR2_PACKAGE_SYSTEMD),y) diff --git a/package/czmq/0001-configure.ac-remove-Werror.patch b/package/czmq/0001-configure.ac-remove-Werror.patch new file mode 100644 index 0000000000..7f2dae2c2b --- /dev/null +++ b/package/czmq/0001-configure.ac-remove-Werror.patch @@ -0,0 +1,30 @@ +From 9a195dc573f4eed130773e6ef67efd5f71693e97 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 5 Nov 2016 15:33:57 +0100 +Subject: [PATCH] configure.ac: remove -Werror + +-Werror shouldn't be used in releases, as it can break the build with +newer versions of the compiler or the C library, when new warnings +are introduced. + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index e92970a..2fd551a 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -344,7 +344,7 @@ AC_C_BIGENDIAN + + # These options are GNU compiler specific. + if test "x$GCC" = "xyes"; then +- CPPFLAGS="-pedantic -Werror -Wall -Wc++-compat ${CPPFLAGS}" ++ CPPFLAGS="-pedantic -Wall -Wc++-compat ${CPPFLAGS}" + fi + + AM_CONDITIONAL(ENABLE_SHARED, test "x$enable_shared" = "xyes") +-- +2.7.4 + diff --git a/package/czmq/Config.in b/package/czmq/Config.in index 6a99336b3b..cfa5152958 100644 --- a/package/czmq/Config.in +++ b/package/czmq/Config.in @@ -3,14 +3,12 @@ config BR2_PACKAGE_CZMQ select BR2_PACKAGE_ZEROMQ depends on BR2_USE_MMU # fork() depends on BR2_INSTALL_LIBSTDCPP # zeromq - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq help High-level C Binding for 0MQ http://czmq.zeromq.org/ -comment "czmq needs a toolchain w/ C++, wchar, threads" +comment "czmq needs a toolchain w/ C++, threads" depends on BR2_USE_MMU - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/czmq/czmq.hash b/package/czmq/czmq.hash index 20ed7b611d..526ea594b9 100644 --- a/package/czmq/czmq.hash +++ b/package/czmq/czmq.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 e56f8498daf70310b31c42669b2f9b753c5e747eafaff6d4fdac26d72a474b27 czmq-v3.0.2.tar.gz -sha256 74e003c05ab1391502dff2eaad96a5361b19583cd1ee0ad681c929721c8e1e3a bcf583633e8b27a9bfbed1e4a717b9373f7446be.patch +sha256 5c76de41f736f0c059e0b26174ef99200f2aba2fa38333683dbe4944b2f80555 czmq-5205ec201e97c3a652c17eb86b18b70350b54512.tar.gz diff --git a/package/czmq/czmq.mk b/package/czmq/czmq.mk index 2b73b6135a..8c4de7186b 100644 --- a/package/czmq/czmq.mk +++ b/package/czmq/czmq.mk @@ -4,9 +4,8 @@ # ################################################################################ -CZMQ_VERSION = v3.0.2 +CZMQ_VERSION = 5205ec201e97c3a652c17eb86b18b70350b54512 CZMQ_SITE = $(call github,zeromq,czmq,$(CZMQ_VERSION)) -CZMQ_PATCH = https://github.com/zeromq/czmq/commit/bcf583633e8b27a9bfbed1e4a717b9373f7446be.patch # Autoreconf required as we use the git tree CZMQ_AUTORECONF = YES diff --git a/package/dante/0001-fix-sparc-compile.patch b/package/dante/0001-fix-sparc-compile.patch new file mode 100644 index 0000000000..a23e2e228e --- /dev/null +++ b/package/dante/0001-fix-sparc-compile.patch @@ -0,0 +1,24 @@ +Signal handling for sparc is broken, fix it. + +Signed-off-by: Waldemar Brodkorb + +--- dante-1.4.1.orig/lib/tostring.c 2014-08-21 18:21:50.000000000 +0200 ++++ dante-1.4.1/lib/tostring.c 2016-07-10 10:08:39.785662622 +0200 +@@ -1526,7 +1526,7 @@ signal2string(sig) + return "SIGKILL"; + #endif /* SIGKILL */ + +-#if (defined SIGLOST) && (!defined SIGABRT || SIGLOST != SIGABRT) ++#if (defined SIGLOST) && (!defined SIGABRT || SIGLOST != SIGABRT || SIGLOST != SIGPWR) + case SIGLOST: + return "SIGLOST"; + #endif /* SIGLOST */ +@@ -1551,7 +1551,7 @@ signal2string(sig) + return "SIGPROF"; + #endif /* SIGPROF */ + +-#ifdef SIGPWR ++#if (defined SIGPWR) && SIGPWR != SIGLOST + case SIGPWR: + return "SIGPWR"; + #endif /* SIGPWR */ diff --git a/package/dante/0002-compiler.m4-do-not-remove-g-flag.patch b/package/dante/0002-compiler.m4-do-not-remove-g-flag.patch new file mode 100644 index 0000000000..0b41de6192 --- /dev/null +++ b/package/dante/0002-compiler.m4-do-not-remove-g-flag.patch @@ -0,0 +1,42 @@ +From c00e284dd2baa5ecdb0c9586044399cd7cacce3e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 8 Aug 2016 12:31:40 +0200 +Subject: [PATCH] compiler.m4: do not remove -g flag + +A sed expression such as 's/-g//' not only removes the -g +debugging-related flag, but also turns more specific flags such as +-mfloat-gprs=double into -mfloatprs=double, which is no longer a valid +flag. + +However, it turns out that removing -g is not necessary: having -g0 +after -g negates the -g, and having -ggdb after -g is enough to produce +debugging information for GDB. + +Signed-off-by: Thomas Petazzoni +--- + compiler.m4 | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/compiler.m4 b/compiler.m4 +index 3a23406..621372c 100644 +--- a/compiler.m4 ++++ b/compiler.m4 +@@ -378,15 +378,9 @@ else + gcc) + if test x"$aixldbug" != x; then + #disable debug info +- if echo $CFLAGS | grep -- "-g" >/dev/null; then +- CFLAGS="`echo $CFLAGS | sed -e 's/-g//g'`" +- fi + CFLAGS="$CFLAGS${CFLAGS:+ }-g0" + else + #use -ggdb also when not debugging +- if echo $CFLAGS | grep -- "-g" >/dev/null; then +- CFLAGS="`echo $CFLAGS | sed -e 's/-g//g'`" +- fi + CFLAGS="$CFLAGS${CFLAGS:+ }-ggdb" + fi + ;; +-- +2.7.4 + diff --git a/package/dante/Config.in b/package/dante/Config.in new file mode 100644 index 0000000000..41a89990d2 --- /dev/null +++ b/package/dante/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_DANTE + bool "dante" + depends on BR2_USE_MMU # fork() + help + Dante is a product developed by Inferno Nettverk A/S. It + consists of a SOCKS server and a SOCKS client, implementing + RFC 1928 and related standards. It is a flexible product + that can be used to provide convenient and secure network + connectivity. + + http://www.inet.no/dante/ diff --git a/package/dante/S50dante b/package/dante/S50dante new file mode 100644 index 0000000000..ed51a8410b --- /dev/null +++ b/package/dante/S50dante @@ -0,0 +1,40 @@ +#!/bin/sh +# +# Starts dante +# + +# Allow a few customizations from a config file +test -r /etc/default/dante && . /etc/default/dante + +start() { + printf "Starting dante: " + start-stop-daemon -S -q -p /var/run/dante.pid \ + --exec /usr/sbin/sockd -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping dante: " + start-stop-daemon -K -q -p /var/run/dante.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/dante/dante.hash b/package/dante/dante.hash new file mode 100644 index 0000000000..38dea61b0a --- /dev/null +++ b/package/dante/dante.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 b6d232bd6fefc87d14bf97e447e4fcdeef4b28b16b048d804b50b48f261c4f53 dante-1.4.1.tar.gz diff --git a/package/dante/dante.mk b/package/dante/dante.mk new file mode 100644 index 0000000000..1bab648bbf --- /dev/null +++ b/package/dante/dante.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# dante +# +################################################################################ + +DANTE_VERSION = 1.4.1 +DANTE_SITE = http://www.inet.no/dante/files +DANTE_LICENSE = BSD-3c +DANTE_LICENSE_FILES = LICENSE + +# Dante uses a *VERY* old configure.ac +DANTE_LIBTOOL_PATCH = NO + +DANTE_CONF_OPTS += --disable-client --disable-preload + +define DANTE_INSTALL_CONFIG_FILE + $(INSTALL) -D -m 644 $(@D)/example/sockd.conf \ + $(TARGET_DIR)/etc/sockd.conf +endef + +DANTE_POST_INSTALL_TARGET_HOOKS += DANTE_INSTALL_CONFIG_FILE + +define DANTE_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/dante/dante.service \ + $(TARGET_DIR)/usr/lib/systemd/system/dante.service +endef + +define DANTE_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/dante/S50dante \ + $(TARGET_DIR)/etc/init.d/S50dante +endef + +$(eval $(autotools-package)) diff --git a/package/dante/dante.service b/package/dante/dante.service new file mode 100644 index 0000000000..b783cee383 --- /dev/null +++ b/package/dante/dante.service @@ -0,0 +1,15 @@ +[Unit] +Description=SOCKS v4 and v5 compatible proxy server and client +Requires=network.target +After=network.target + +[Service] +Type=forking +EnvironmentFile=-/etc/default/dante +PIDFile=/run/dante.pid +ExecStart=/usr/sbin/sockd -D -p /run/dante.pid $DAEMON_ARGS +ExecReload=/bin/kill -HUP $MAINPID +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/darkhttpd/Config.in b/package/darkhttpd/Config.in new file mode 100644 index 0000000000..a5ab41ae22 --- /dev/null +++ b/package/darkhttpd/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_DARKHTTPD + bool "darkhttpd" + depends on BR2_USE_MMU # fork() + help + Darkhttpd is a simple, fast HTTP 1.1 web server which only + serves static content. It does not support PHP or CGI. + + The behavior of darkhttpd can be altered by setting some + variables in /etc/default/darkhttpd: + + - DARKHTTPD_ROOT: path to the server document root. + - DARKHTTPD_FLAGS: options to pass to darkhttpd. + + https://unix4lyfe.org/darkhttpd/ diff --git a/package/darkhttpd/S50darkhttpd b/package/darkhttpd/S50darkhttpd new file mode 100755 index 0000000000..913439f5a5 --- /dev/null +++ b/package/darkhttpd/S50darkhttpd @@ -0,0 +1,45 @@ +#!/bin/sh +# +# Starts darkhttpd. +# + +# Allow a few customizations from a config file +test -r /etc/default/darkhttpd && . /etc/default/darkhttpd + +DARKHTTPD_PROG=/usr/sbin/darkhttpd +DARKHTTPD_PIDFILE=/var/run/darkhttpd.pid +DARKHTTPD_ARGS="${DARKHTTPD_ROOT:-/var/www} --log /var/log/darkhttpd.log $DARKHTTPD_FLAGS --chroot --uid nobody --gid www-data" + +start() { + printf "Starting darkhttpd: " + start-stop-daemon -S -q -b -p $DARKHTTPD_PIDFILE -m --exec $DARKHTTPD_PROG -- $DARKHTTPD_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping darkhttpd: " + start-stop-daemon -K -q -p $DARKHTTPD_PIDFILE + [ $? = 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/darkhttpd/darkhttpd.hash b/package/darkhttpd/darkhttpd.hash new file mode 100644 index 0000000000..39152e3cb9 --- /dev/null +++ b/package/darkhttpd/darkhttpd.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 a50417b622b32b5f421b3132cb94ebeff04f02c5fb87fba2e31147d23de50505 darkhttpd-1.12.tar.bz2 diff --git a/package/darkhttpd/darkhttpd.mk b/package/darkhttpd/darkhttpd.mk new file mode 100644 index 0000000000..df80899371 --- /dev/null +++ b/package/darkhttpd/darkhttpd.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# darkhttpd +# +################################################################################ + +DARKHTTPD_VERSION = 1.12 +DARKHTTPD_SITE = https://unix4lyfe.org/darkhttpd +DARKHTTPD_SOURCE = darkhttpd-$(DARKHTTPD_VERSION).tar.bz2 +DARKHTTPD_LICENSE = MIT + +define DARKHTTPD_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define DARKHTTPD_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/darkhttpd \ + $(TARGET_DIR)/usr/sbin/darkhttpd +endef + +define DARKHTTPD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/darkhttpd/darkhttpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/darkhttpd.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/darkhttpd.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/darkhttpd.service +endef + +define DARKHTTPD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/darkhttpd/S50darkhttpd \ + $(TARGET_DIR)/etc/init.d/S50darkhttpd +endef + +$(eval $(generic-package)) diff --git a/package/darkhttpd/darkhttpd.service b/package/darkhttpd/darkhttpd.service new file mode 100644 index 0000000000..17abd98ce7 --- /dev/null +++ b/package/darkhttpd/darkhttpd.service @@ -0,0 +1,11 @@ +[Unit] +Description=Darkhttpd Web Server +After=syslog.target network.target auditd.service + +[Service] +Environment="DARKHTTPD_ROOT=/var/www" +EnvironmentFile=-/etc/default/darkhttpd +ExecStart=/usr/sbin/darkhttpd $DARKHTTPD_ROOT $DARKHTTPD_FLAGS --chroot --uid nobody --gid www-data + +[Install] +WantedBy=multi-user.target diff --git a/package/dash/Config.in b/package/dash/Config.in index e06087e117..af8fba4018 100644 --- a/package/dash/Config.in +++ b/package/dash/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DASH bool "dash" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help The Debian/Linux port of the NetBSD version of ash (the Almquist SHell). diff --git a/package/dawgdic/dawgdic.hash b/package/dawgdic/dawgdic.hash new file mode 100644 index 0000000000..da03f0b860 --- /dev/null +++ b/package/dawgdic/dawgdic.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 54622a3e79ff3ad2c01a830ec52b997b42ead468b18af5acebab3a4ff32a5ad6 dawgdic-16ac537ba9883ff01b63b6d1fdc3072150c68fee.tar.gz diff --git a/package/dbus-cpp/Config.in b/package/dbus-cpp/Config.in index 8e9ed662a5..e90b211490 100644 --- a/package/dbus-cpp/Config.in +++ b/package/dbus-cpp/Config.in @@ -13,7 +13,7 @@ config BR2_PACKAGE_DBUS_CPP http://sourceforge.net/projects/dbus-cplusplus/ -comment "dbus-c++ needs a uClibc or (e)glibc toolchain w/ C++, threads" +comment "dbus-c++ needs a uClibc or glibc toolchain w/ C++, threads" depends on BR2_USE_MMU depends on BR2_PACKAGE_DBUS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ diff --git a/package/dbus-glib/dbus-glib.hash b/package/dbus-glib/dbus-glib.hash index e5a2ebc309..732ae97c86 100644 --- a/package/dbus-glib/dbus-glib.hash +++ b/package/dbus-glib/dbus-glib.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b38952706dcf68bad9c302999ef0f420b8cf1a2428227123f0ac4764b689c046 dbus-glib-0.106.tar.gz +sha256 9f340c7e2352e9cdf113893ca77ca9075d9f8d5e81476bf2bf361099383c602c dbus-glib-0.108.tar.gz diff --git a/package/dbus-glib/dbus-glib.mk b/package/dbus-glib/dbus-glib.mk index e191507c63..4a1e4b40b7 100644 --- a/package/dbus-glib/dbus-glib.mk +++ b/package/dbus-glib/dbus-glib.mk @@ -4,7 +4,7 @@ # ################################################################################ -DBUS_GLIB_VERSION = 0.106 +DBUS_GLIB_VERSION = 0.108 DBUS_GLIB_SITE = http://dbus.freedesktop.org/releases/dbus-glib DBUS_GLIB_INSTALL_STAGING = YES DBUS_GLIB_LICENSE = AFLv2.1, GPLv2+ diff --git a/package/dbus-python/dbus-python.hash b/package/dbus-python/dbus-python.hash index 94af72e234..080aada081 100644 --- a/package/dbus-python/dbus-python.hash +++ b/package/dbus-python/dbus-python.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 e12c6c8b2bf3a9302f75166952cbe41d6b38c3441bbc6767dbd498942316c6df dbus-python-1.2.0.tar.gz +sha256 e2f1d6871f74fba23652e51d10873e54f71adab0525833c19bad9e99b1b2f9cc dbus-python-1.2.4.tar.gz diff --git a/package/dbus-python/dbus-python.mk b/package/dbus-python/dbus-python.mk index 40799678f8..599d019857 100644 --- a/package/dbus-python/dbus-python.mk +++ b/package/dbus-python/dbus-python.mk @@ -4,7 +4,7 @@ # ################################################################################ -DBUS_PYTHON_VERSION = 1.2.0 +DBUS_PYTHON_VERSION = 1.2.4 DBUS_PYTHON_SITE = http://dbus.freedesktop.org/releases/dbus-python DBUS_PYTHON_INSTALL_STAGING = YES DBUS_PYTHON_LICENSE = MIT diff --git a/package/dbus/Config.in b/package/dbus/Config.in index 7d49ce5047..653f7482f6 100644 --- a/package/dbus/Config.in +++ b/package/dbus/Config.in @@ -4,7 +4,6 @@ config BR2_PACKAGE_DBUS # uses fork() depends on BR2_USE_MMU select BR2_PACKAGE_EXPAT - select BR2_PACKAGE_SYSTEMD_COMPAT if BR2_INIT_SYSTEMD help The D-Bus message bus system. diff --git a/package/dbus/S30dbus b/package/dbus/S30dbus index 4427b5c72c..b4bcf9c7aa 100644 --- a/package/dbus/S30dbus +++ b/package/dbus/S30dbus @@ -53,10 +53,6 @@ case "$1" in stop) stop ;; - status) - status $processname - RETVAL=$? - ;; restart) stop start @@ -72,7 +68,7 @@ case "$1" in RETVAL=$? ;; *) - echo "Usage: $0 {start|stop|status|restart|condrestart|reload}" + echo "Usage: $0 {start|stop|restart|condrestart|reload}" ;; esac exit $RETVAL diff --git a/package/dbus/dbus.hash b/package/dbus/dbus.hash index d38b298067..14bee20455 100644 --- a/package/dbus/dbus.hash +++ b/package/dbus/dbus.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 baf3d22baa26d3bdd9edc587736cd5562196ce67996d65b82103bedbe1f0c014 dbus-1.10.8.tar.gz +sha256 23238f70353e38ce5ca183ebc9525c0d97ac00ef640ad29cf794782af6e6a083 dbus-1.10.14.tar.gz diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk index fbdceb3c2d..c765e0ae26 100644 --- a/package/dbus/dbus.mk +++ b/package/dbus/dbus.mk @@ -4,9 +4,9 @@ # ################################################################################ -DBUS_VERSION = 1.10.8 +DBUS_VERSION = 1.10.14 DBUS_SITE = http://dbus.freedesktop.org/releases/dbus -DBUS_LICENSE = AFLv2.1, GPLv2+ +DBUS_LICENSE = AFLv2.1 or GPLv2+ (library, tools), GPLv2+ (tools) DBUS_LICENSE_FILES = COPYING DBUS_INSTALL_STAGING = YES @@ -32,7 +32,8 @@ DBUS_CONF_OPTS = \ --disable-dnotify \ --with-xml=expat \ --with-system-socket=/var/run/dbus/system_bus_socket \ - --with-system-pid-file=/var/run/messagebus.pid + --with-system-pid-file=/var/run/messagebus.pid \ + --with-init-scripts=none ifeq ($(BR2_STATIC_LIBS),y) DBUS_CONF_OPTS += LIBS='-pthread' diff --git a/package/dcron/Config.in b/package/dcron/Config.in index 0f4ffc9af8..d7f66bdb7d 100644 --- a/package/dcron/Config.in +++ b/package/dcron/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DCRON bool "dcron" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help dcron is a time-based job scheduler with anacron-like features. It works as a background daemon that parses diff --git a/package/ddrescue/Config.in b/package/ddrescue/Config.in new file mode 100644 index 0000000000..2ec3e7e303 --- /dev/null +++ b/package/ddrescue/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_DDRESCUE + bool "ddrescue" + depends on BR2_INSTALL_LIBSTDCPP + help + GNU ddrescue is a data recovery tool. It copies data from one file + or block device (hard disc, cdrom, etc) to another, trying to + rescue the good parts first in case of read errors. + + http://www.gnu.org/software/ddrescue/ddrescue.html + +comment "ddrescue needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/ddrescue/ddrescue.hash b/package/ddrescue/ddrescue.hash new file mode 100644 index 0000000000..bffa6153fe --- /dev/null +++ b/package/ddrescue/ddrescue.hash @@ -0,0 +1,2 @@ +# From http://lists.gnu.org/archive/html/info-gnu/2017-02/msg00003.html +sha1 df981672a612639ad0934e3fa6546a41d2feb99e ddrescue-1.22.tar.lz diff --git a/package/ddrescue/ddrescue.mk b/package/ddrescue/ddrescue.mk new file mode 100644 index 0000000000..145d0520d6 --- /dev/null +++ b/package/ddrescue/ddrescue.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# ddrescue +# +################################################################################ + +DDRESCUE_VERSION = 1.22 +DDRESCUE_SOURCE = ddrescue-$(DDRESCUE_VERSION).tar.lz +DDRESCUE_SITE = http://download.savannah.gnu.org/releases/ddrescue +DDRESCUE_LICENSE = GPLv2+ +DDRESCUE_LICENSE_FILES = COPYING +DDRESCUE_DEPENDENCIES = host-lzip + +define DDRESCUE_EXTRACT_CMDS + $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(DDRESCUE_SOURCE) | \ + tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - +endef + +define DDRESCUE_CONFIGURE_CMDS + (cd $(@D); \ + $(TARGET_MAKE_ENV) ./configure \ + --prefix=/usr \ + $(TARGET_CONFIGURE_OPTS) \ + ) +endef + +define DDRESCUE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define DDRESCUE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install +endef + +$(eval $(generic-package)) diff --git a/package/debianutils/Config.in b/package/debianutils/Config.in index c4f2fcf2b3..c43f330026 100644 --- a/package/debianutils/Config.in +++ b/package/debianutils/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DEBIANUTILS bool "debianutils" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Miscellaneous utilities specific to Debian. diff --git a/package/debianutils/debianutils.hash b/package/debianutils/debianutils.hash index 4d1b57403f..cd54e0b8b7 100644 --- a/package/debianutils/debianutils.hash +++ b/package/debianutils/debianutils.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/d/debianutils/debianutils_4.7.dsc -sha256 a269cacd40f52f2fa5d5636357714a49e8538459c16d77772efaa23711fe53d9 debianutils_4.7.tar.xz +# From http://ftp.de.debian.org/debian/pool/main/d/debianutils/debianutils_4.8.1.dsc +sha256 2c395c0bdcfe89de30828b1d25cc5549ded5225a6d3625fbcb2cc0881ef5f026 debianutils_4.8.1.tar.xz diff --git a/package/debianutils/debianutils.mk b/package/debianutils/debianutils.mk index 17f0240e84..83cf744413 100644 --- a/package/debianutils/debianutils.mk +++ b/package/debianutils/debianutils.mk @@ -4,9 +4,9 @@ # ################################################################################ -DEBIANUTILS_VERSION = 4.7 +DEBIANUTILS_VERSION = 4.8.1 DEBIANUTILS_SOURCE = debianutils_$(DEBIANUTILS_VERSION).tar.xz -DEBIANUTILS_SITE = http://snapshot.debian.org/archive/debian/20160126T220153Z/pool/main/d/debianutils +DEBIANUTILS_SITE = http://snapshot.debian.org/archive/debian/20161118T033019Z/pool/main/d/debianutils DEBIANUTILS_CONF_OPTS = --exec-prefix=/ # Make sure we override the busybox tools, such as which DEBIANUTILS_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) diff --git a/package/devmem2/Config.in b/package/devmem2/Config.in index cb00a51632..64d6400bd8 100644 --- a/package/devmem2/Config.in +++ b/package/devmem2/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_DEVMEM2 bool "devmem2" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Simple program to read/write from/to any location in memory. diff --git a/package/dhcp/0001-dhcp-cross-compile.patch b/package/dhcp/0001-dhcp-cross-compile.patch deleted file mode 100644 index 95b468915f..0000000000 --- a/package/dhcp/0001-dhcp-cross-compile.patch +++ /dev/null @@ -1,34 +0,0 @@ -dhcp cross compile support integration - -Allow BINDCONFIG to be initialized in environment passed to configure. - -Allow archiver to be determined during configure. - -This patch is submitted upstream as part of a cross compiling enhancement -suggestion to dhcp-suggest@isc.org. Reference ISC-Bugs #41502. - -Signed-off-by: Doug Kehn - -Index: dhcp-4.3.3-P1/configure.ac -=================================================================== ---- dhcp-4.3.3-P1.orig/configure.ac -+++ dhcp-4.3.3-P1/configure.ac -@@ -33,7 +33,7 @@ if test "$GCC" = "yes"; then - fi - - # We can have some flags to pass to bind configure --BINDCONFIG= -+BINDCONFIG="$BINDCONFIG" - AC_SUBST(BINDCONFIG) - - # POSIX doesn't include the IPv6 Advanced Socket API and glibc hides -@@ -43,6 +43,9 @@ AC_SUBST(BINDCONFIG) - # Use this to define _GNU_SOURCE to pull in the IPv6 Advanced Socket API. - AC_USE_SYSTEM_EXTENSIONS - -+AC_CHECK_TOOL(AR,ar) -+AC_SUBST(AR) -+ - AC_PROG_RANLIB - AC_CONFIG_HEADERS([includes/config.h]) - diff --git a/package/dhcp/0003-bind-host-cc.patch b/package/dhcp/0003-bind-host-cc.patch deleted file mode 100644 index 96c144fffb..0000000000 --- a/package/dhcp/0003-bind-host-cc.patch +++ /dev/null @@ -1,40 +0,0 @@ -ensure host compiler is used - -dns/Makefile.in patch is derived from: -http://wiki.beyondlogic.org/patches/dhcp-4.3.0b1.bind_arm-linux-gnueabi.patch - -This patch is already accepted upstream and will be included in the next -release: ---[snip]-- -From Francis Dupont via RT -To rdkehn@yahoo.com - -Message body -It was fixed on the master branch sometimes ago. -Quoting master RELNOTES: - -- Made the embedded bind libraries able to be cross compiled - (please refer to the bind9 documentation to learn how to cross - compile DHCP and its bind library dependency). - [ISC-Bugs #38836] - -This is in the Changes since 4.3.3 so for the next release. ---[snip]-- - -Signed-off-by: Doug Kehn - -Index: dhcp-4.3.3-P1/bind/bind-9.9.7-P3/lib/export/dns/Makefile.in -=================================================================== ---- dhcp-4.3.3-P1.orig/bind/bind-9.9.7-P3/lib/export/dns/Makefile.in -+++ dhcp-4.3.3-P1/bind/bind-9.9.7-P3/lib/export/dns/Makefile.in -@@ -168,7 +168,9 @@ code.h: gen - ./gen -s ${srcdir} > code.h - - gen: ${srcdir}/gen.c -- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o $@ ${srcdir}/gen.c ${LIBS} -+ ${BUILD_CC} ${BUILD_CFLAGS} -I${top_srcdir}/lib/isc/include \ -+ ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} -o $@ ${srcdir}/gen.c \ -+ ${BUILD_LIBS} - - #We don't need rbtdb64 for this library - #rbtdb64.@O@: rbtdb.c diff --git a/package/dhcp/Config.in b/package/dhcp/Config.in index 99b4eec331..4a3049584d 100644 --- a/package/dhcp/Config.in +++ b/package/dhcp/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_DHCP bool "dhcp (ISC)" # fork() depends on BR2_USE_MMU + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help DHCP relay agent from the ISC DHCP distribution. diff --git a/package/dhcp/dhcp.hash b/package/dhcp/dhcp.hash index fd9b24ad6d..7898aa45d3 100644 --- a/package/dhcp/dhcp.hash +++ b/package/dhcp/dhcp.hash @@ -1,2 +1,2 @@ -# Verified from https://ftp.isc.org/isc/dhcp/4.3.3-P1/dhcp-4.3.3-P1.tar.gz.sha256.asc -sha256 c11e896dffa1bfbc49462965d3f6dec45534e34068603546d9a236f2aa669921 dhcp-4.3.3-P1.tar.gz +# Verified from https://ftp.isc.org/isc/dhcp/4.3.5/dhcp-4.3.5.tar.gz.sha256.asc +sha256 eb95936bf15d2393c55dd505bc527d1d4408289cec5a9fa8abb99f7577e7f954 dhcp-4.3.5.tar.gz diff --git a/package/dhcp/dhcp.mk b/package/dhcp/dhcp.mk index 5cb6043e7b..4d2cb06352 100644 --- a/package/dhcp/dhcp.mk +++ b/package/dhcp/dhcp.mk @@ -4,17 +4,16 @@ # ################################################################################ -DHCP_VERSION = 4.3.3-P1 +DHCP_VERSION = 4.3.5 DHCP_SITE = http://ftp.isc.org/isc/dhcp/$(DHCP_VERSION) DHCP_INSTALL_STAGING = YES DHCP_LICENSE = ISC DHCP_LICENSE_FILES = LICENSE DHCP_CONF_ENV = \ CPPFLAGS='-D_PATH_DHCPD_CONF=\"/etc/dhcp/dhcpd.conf\" \ - -D_PATH_DHCLIENT_CONF=\"/etc/dhcp/dhclient.conf\"' \ - ac_cv_file__dev_random=yes \ - BINDCONFIG='--with-randomdev=/dev/random' + -D_PATH_DHCLIENT_CONF=\"/etc/dhcp/dhclient.conf\"' DHCP_CONF_OPTS = \ + --with-randomdev=/dev/random \ --with-srv-lease-file=/var/lib/dhcp/dhcpd.leases \ --with-srv6-lease-file=/var/lib/dhcp/dhcpd6.leases \ --with-cli-lease-file=/var/lib/dhcp/dhclient.leases \ diff --git a/package/dhcpcd/dhcpcd.hash b/package/dhcpcd/dhcpcd.hash index ea05f86812..3be3f7ff51 100644 --- a/package/dhcpcd/dhcpcd.hash +++ b/package/dhcpcd/dhcpcd.hash @@ -1,2 +1,2 @@ # Locally calculated from download (no sig, hash) -sha256 284abf8c3be0580bbac5eaca95359346ab0d78d4072317b6ce87cc68f2e8ae7b dhcpcd-6.10.1.tar.xz +sha256 6f9674dc7e27e936cc787175404a6171618675ecfb6903ab9887b1b66a87d69e dhcpcd-6.11.5.tar.xz diff --git a/package/dhcpcd/dhcpcd.mk b/package/dhcpcd/dhcpcd.mk index 5d1388d5a7..2d446fb7f1 100644 --- a/package/dhcpcd/dhcpcd.mk +++ b/package/dhcpcd/dhcpcd.mk @@ -4,7 +4,7 @@ # ################################################################################ -DHCPCD_VERSION = 6.10.1 +DHCPCD_VERSION = 6.11.5 DHCPCD_SOURCE = dhcpcd-$(DHCPCD_VERSION).tar.xz DHCPCD_SITE = http://roy.marples.name/downloads/dhcpcd DHCPCD_DEPENDENCIES = host-pkgconf diff --git a/package/diffutils/Config.in b/package/diffutils/Config.in index f483c75417..97cb38b8f8 100644 --- a/package/diffutils/Config.in +++ b/package/diffutils/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DIFFUTILS bool "diffutils" depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help GNU diff. Compare files per line. @@ -9,3 +10,4 @@ config BR2_PACKAGE_DIFFUTILS comment "diffutils needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/diffutils/diffutils.hash b/package/diffutils/diffutils.hash index 27eace2844..7e99f1fc65 100644 --- a/package/diffutils/diffutils.hash +++ b/package/diffutils/diffutils.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 a25e89a8ab65fded1731e4186be1bb25cda967834b6df973599cdcd5abdfc19c diffutils-3.3.tar.xz +sha256 dad398ccd5b9faca6b0ab219a036453f62a602a56203ac659b43e889bec35533 diffutils-3.5.tar.xz diff --git a/package/diffutils/diffutils.mk b/package/diffutils/diffutils.mk index 191fd2e172..d3e608ce05 100644 --- a/package/diffutils/diffutils.mk +++ b/package/diffutils/diffutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -DIFFUTILS_VERSION = 3.3 +DIFFUTILS_VERSION = 3.5 DIFFUTILS_SOURCE = diffutils-$(DIFFUTILS_VERSION).tar.xz DIFFUTILS_SITE = $(BR2_GNU_MIRROR)/diffutils DIFFUTILS_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) diff --git a/package/directfb/Config.in b/package/directfb/Config.in index 2aed63f1e8..b552164777 100644 --- a/package/directfb/Config.in +++ b/package/directfb/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_DIRECTFB bool "directfb" - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 depends on !BR2_TOOLCHAIN_USES_MUSL # sigval_t issue @@ -161,7 +161,7 @@ config BR2_PACKAGE_DIRECTFB_TESTS endif # BR2_PACKAGE_DIRECTFB -comment "directfb needs a (e)glibc or uClibc toolchain w/ C++, threads, gcc >= 4.5" +comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5" depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/directfb/directfb.mk b/package/directfb/directfb.mk index d51094f850..595d5906c1 100644 --- a/package/directfb/directfb.mk +++ b/package/directfb/directfb.mk @@ -161,7 +161,7 @@ HOST_DIRECTFB_CONF_OPTS = \ --with-inputdrivers=none HOST_DIRECTFB_BUILD_CMDS = \ - $(MAKE) -C $(@D)/tools directfb-csource + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/tools directfb-csource HOST_DIRECTFB_INSTALL_CMDS = \ $(INSTALL) -m 0755 $(@D)/tools/directfb-csource $(HOST_DIR)/usr/bin diff --git a/package/dmalloc/dmalloc.mk b/package/dmalloc/dmalloc.mk index f87ae1709a..6ebb44c5c0 100644 --- a/package/dmalloc/dmalloc.mk +++ b/package/dmalloc/dmalloc.mk @@ -48,7 +48,7 @@ DMALLOC_POST_PATCH_HOOKS += DMALLOC_POST_PATCH # both DESTDIR and PREFIX are ignored.. define DMALLOC_INSTALL_STAGING_CMDS - $(MAKE) includedir="$(STAGING_DIR)/usr/include" \ + $(TARGET_MAKE_ENV) $(MAKE) includedir="$(STAGING_DIR)/usr/include" \ bindir="$(STAGING_DIR)/usr/bin" \ libdir="$(STAGING_DIR)/usr/lib" \ shlibdir="$(STAGING_DIR)/usr/lib" \ @@ -56,8 +56,14 @@ define DMALLOC_INSTALL_STAGING_CMDS -C $(@D) install endef -define DMALLOC_INSTALL_TARGET_CMDS +ifeq ($(BR2_STATIC_LIBS),) +define DMALLOC_INSTALL_SHARED_LIB cp -dpf $(STAGING_DIR)/usr/lib/libdmalloc*.so $(TARGET_DIR)/usr/lib +endef +endif + +define DMALLOC_INSTALL_TARGET_CMDS + $(DMALLOC_INSTALL_SHARED_LIB) cp -dpf $(STAGING_DIR)/usr/bin/dmalloc $(TARGET_DIR)/usr/bin/dmalloc endef diff --git a/package/dmidecode/0001-build-system-fixes.patch b/package/dmidecode/0001-build-system-fixes.patch index 275f9df7f1..00897f82ad 100644 --- a/package/dmidecode/0001-build-system-fixes.patch +++ b/package/dmidecode/0001-build-system-fixes.patch @@ -21,10 +21,10 @@ Index: b/Makefile +override CFLAGS += \ + -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \ + -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef - #CFLAGS += -DBIGENDIAN - #CFLAGS += -DALIGNMENT_WORKAROUND -@@ -23,7 +24,7 @@ + # Let lseek and mmap support 64-bit wide offsets + CFLAGS += -D_FILE_OFFSET_BITS=64 +@@ -27,7 +28,7 @@ CFLAGS += -O2 #CFLAGS += -g # Pass linker flags here diff --git a/package/dmidecode/dmidecode.hash b/package/dmidecode/dmidecode.hash index 7098ed0ace..307c306ad7 100644 --- a/package/dmidecode/dmidecode.hash +++ b/package/dmidecode/dmidecode.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 5a8214b99c1762f4510bd92baa279336e5fed6e5cd2e418d46d95a4ecc783922 dmidecode-2.12.tar.gz +# http://http.debian.net/debian/pool/main/d/dmidecode/dmidecode_3.0-2.dsc +sha256 7ec35bb193729c1d593a1460b59d82d24b89102ab23fd0416e6cf4325d077e45 dmidecode-3.0.tar.xz diff --git a/package/dmidecode/dmidecode.mk b/package/dmidecode/dmidecode.mk index 06ac19bda2..cd30aa7df5 100644 --- a/package/dmidecode/dmidecode.mk +++ b/package/dmidecode/dmidecode.mk @@ -4,17 +4,18 @@ # ################################################################################ -DMIDECODE_VERSION = 2.12 +DMIDECODE_VERSION = 3.0 +DMIDECODE_SOURCE = dmidecode-$(DMIDECODE_VERSION).tar.xz DMIDECODE_SITE = http://download.savannah.gnu.org/releases/dmidecode DMIDECODE_LICENSE = GPLv2+ DMIDECODE_LICENSE_FILES = LICENSE define DMIDECODE_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) endef define DMIDECODE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) prefix=/usr DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) prefix=/usr DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/dmraid/Config.in b/package/dmraid/Config.in index 4a8cf61686..583f3f272c 100644 --- a/package/dmraid/Config.in +++ b/package/dmraid/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_DMRAID depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2 depends on BR2_USE_MMU # lvm2 depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 select BR2_PACKAGE_LVM2 help dmraid discovers, activates, deactivates and displays properties @@ -11,6 +12,7 @@ config BR2_PACKAGE_DMRAID dmraid uses the Linux device-mapper to create devices with respective mappings for the ATARAID sets discovered. -comment "dmraid needs a toolchain w/ threads, dynamic library" +comment "dmraid needs a glibc or uClibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/dnsmasq/dnsmasq.hash b/package/dnsmasq/dnsmasq.hash index 57dc4b175c..a73e911a26 100644 --- a/package/dnsmasq/dnsmasq.hash +++ b/package/dnsmasq/dnsmasq.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 640c4e1d4c298e42458419cd78cfc26acc549401b1a34d271cd3e0e4226941f1 dnsmasq-2.75.tar.xz +sha256 4b92698dee19ca0cb2a8f2e48f1d2dffd01a21eb15d1fbed4cf085630c8c9f96 dnsmasq-2.76.tar.xz diff --git a/package/dnsmasq/dnsmasq.mk b/package/dnsmasq/dnsmasq.mk index 7fb120003c..e8240b9003 100644 --- a/package/dnsmasq/dnsmasq.mk +++ b/package/dnsmasq/dnsmasq.mk @@ -4,7 +4,7 @@ # ################################################################################ -DNSMASQ_VERSION = 2.75 +DNSMASQ_VERSION = 2.76 DNSMASQ_SOURCE = dnsmasq-$(DNSMASQ_VERSION).tar.xz DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq DNSMASQ_MAKE_ENV = $(TARGET_MAKE_ENV) CC="$(TARGET_CC)" diff --git a/package/doc-asciidoc.mk b/package/doc-asciidoc.mk index 6ab5ad27e4..cb6e616603 100644 --- a/package/doc-asciidoc.mk +++ b/package/doc-asciidoc.mk @@ -117,7 +117,8 @@ $$(O)/docs/$(1)/$(1).$(6): $$($(2)_SOURCES) \ $$(Q)$$(call MESSAGE,"Generating $(7) $(1)...") $$(Q)mkdir -p $$(@D) $$(Q)a2x $(8) -f $(4) -d book -L \ - $$(foreach r,$$($(2)_RESOURCES),-r $$(r)) -r $$(@D) \ + $$(foreach r,$$($(2)_RESOURCES) $$(@D), \ + --resource="$$(abspath $$(r))") \ $$($(2)_$(4)_A2X_OPTS) \ --asciidoc-opts="$$($(2)_$(4)_ASCIIDOC_OPTS)" \ $$(BUILD_DIR)/docs/$(1)/$(1).txt @@ -140,7 +141,7 @@ endef ################################################################################ define ASCIIDOC # Single line, because splitting a foreach is not easy... -$(1)-check-dependencies: asciidoc-check-dependencies +$(1)-check-dependencies: asciidoc-check-dependencies $$($(2)_DEPENDENCIES) $$(Q)$$(foreach hook,$$($(2)_CHECK_DEPENDENCIES_HOOKS),$$(call $$(hook))$$(sep)) # Single line, because splitting a foreach is not easy... diff --git a/package/docker-containerd/Config.in b/package/docker-containerd/Config.in new file mode 100644 index 0000000000..2f7bf71af1 --- /dev/null +++ b/package/docker-containerd/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_DOCKER_CONTAINERD + bool "docker-containerd" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # util-linux + select BR2_PACKAGE_RUNC # runtime dependency + select BR2_PACKAGE_UTIL_LINUX # runtime dependency + select BR2_PACKAGE_UTIL_LINUX_BINARIES + select BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT + select BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT + select BR2_PACKAGE_UTIL_LINUX_MOUNT + help + containerd is a daemon to control runC. + + https://github.com/docker/containerd + +comment "docker-containerd needs a toolchain w/ threads" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/docker-containerd/docker-containerd.hash b/package/docker-containerd/docker-containerd.hash new file mode 100644 index 0000000000..f27e38ed23 --- /dev/null +++ b/package/docker-containerd/docker-containerd.hash @@ -0,0 +1,2 @@ +# Computed locally +sha256 88e099af66b50abe7f2159f13bdab793fa5199d8d5b9a9ef7a68171abb4359be docker-containerd-v0.2.5.tar.gz diff --git a/package/docker-containerd/docker-containerd.mk b/package/docker-containerd/docker-containerd.mk new file mode 100644 index 0000000000..c04552a68e --- /dev/null +++ b/package/docker-containerd/docker-containerd.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# docker-containerd +# +################################################################################ + +DOCKER_CONTAINERD_VERSION = v0.2.5 +DOCKER_CONTAINERD_SITE = $(call github,docker,containerd,$(DOCKER_CONTAINERD_VERSION)) +DOCKER_CONTAINERD_LICENSE = Apache-2.0 +DOCKER_CONTAINERD_LICENSE_FILES = LICENSE.code + +DOCKER_CONTAINERD_DEPENDENCIES = host-go + +DOCKER_CONTAINERD_GOPATH = "$(@D)/vendor" +DOCKER_CONTAINERD_MAKE_ENV = $(HOST_GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GOBIN="$(@D)/bin" \ + GOPATH="$(DOCKER_CONTAINERD_GOPATH)" + +DOCKER_CONTAINERD_GLDFLAGS = \ + -X github.com/docker/containerd.GitCommit=$(DOCKER_CONTAINERD_VERSION) + +ifeq ($(BR2_STATIC_LIBS),y) +DOCKER_CONTAINERD_GLDFLAGS += -extldflags '-static' +endif + +define DOCKER_CONTAINERD_CONFIGURE_CMDS + mkdir -p $(DOCKER_CONTAINERD_GOPATH)/src/github.com/docker + ln -s $(@D) $(DOCKER_CONTAINERD_GOPATH)/src/github.com/docker/containerd + mkdir -p $(DOCKER_CONTAINERD_GOPATH)/src/github.com/opencontainers + ln -s $(RUNC_SRCDIR) $(DOCKER_CONTAINERD_GOPATH)/src/github.com/opencontainers/runc +endef + +define DOCKER_CONTAINERD_BUILD_CMDS + $(foreach d,ctr containerd containerd-shim,\ + cd $(@D); $(DOCKER_CONTAINERD_MAKE_ENV) $(HOST_DIR)/usr/bin/go build \ + -v -o $(@D)/bin/$(d) -ldflags "$(DOCKER_CONTAINERD_GLDFLAGS)" ./$(d)$(sep)) +endef + +define DOCKER_CONTAINERD_INSTALL_TARGET_CMDS + ln -fs runc $(TARGET_DIR)/usr/bin/docker-runc + $(INSTALL) -D -m 0755 $(@D)/bin/containerd $(TARGET_DIR)/usr/bin/docker-containerd + $(INSTALL) -D -m 0755 $(@D)/bin/containerd-shim $(TARGET_DIR)/usr/bin/containerd-shim + ln -fs containerd-shim $(TARGET_DIR)/usr/bin/docker-containerd-shim +endef + +$(eval $(generic-package)) diff --git a/package/docker-engine/0001-Fix-issues-with-tailing-rotated-jsonlog-file.patch b/package/docker-engine/0001-Fix-issues-with-tailing-rotated-jsonlog-file.patch new file mode 100644 index 0000000000..413cfd6f7b --- /dev/null +++ b/package/docker-engine/0001-Fix-issues-with-tailing-rotated-jsonlog-file.patch @@ -0,0 +1,297 @@ +From 8d6f2e3fe8851b581309da25fc4c32f8be675932 Mon Sep 17 00:00:00 2001 +From: Brian Goff +Date: Mon, 11 Jul 2016 16:31:42 -0400 +Subject: [PATCH] Fix issues with tailing rotated jsonlog file + +Fixes a race where the log reader would get events for both an actual +rotation as we from fsnotify (`fsnotify.Rename`). +This issue becomes extremely apparent when rotations are fast, for +example: + +``` +$ docker run -d --name test --log-opt max-size=1 --log-opt max-file=2 +busybox sh -c 'while true; do echo hello; usleep 100000; done' +``` + +With this change the log reader for jsonlogs can handle rotations that +happen as above. + +Instead of listening for both fs events AND rotation events +simultaneously, potentially meaning we see 2 rotations for only a single +rotation due to channel buffering, only listen for fs events (like +`Rename`) and then wait to be notified about rotation by the logger. +This makes sure that we don't see 2 rotations for 1, and that we don't +start trying to read until the logger is actually ready for us to. + +Signed-off-by: Brian Goff + +This commit is pending upstream commit fixing broken log tailing. The +original commit can be found in the PR here: + + - https://github.com/docker/docker/pull/24514 + +Signed-off-by: Christian Stewart +--- + daemon/logger/jsonfilelog/read.go | 180 +++++++++++++++++++++++++------------- + 1 file changed, 119 insertions(+), 61 deletions(-) + +diff --git a/daemon/logger/jsonfilelog/read.go b/daemon/logger/jsonfilelog/read.go +index bea83dd..0cb44af 100644 +--- a/daemon/logger/jsonfilelog/read.go ++++ b/daemon/logger/jsonfilelog/read.go +@@ -3,11 +3,14 @@ package jsonfilelog + import ( + "bytes" + "encoding/json" ++ "errors" + "fmt" + "io" + "os" + "time" + ++ "gopkg.in/fsnotify.v1" ++ + "github.com/Sirupsen/logrus" + "github.com/docker/docker/daemon/logger" + "github.com/docker/docker/pkg/filenotify" +@@ -44,6 +47,10 @@ func (l *JSONFileLogger) ReadLogs(config logger.ReadConfig) *logger.LogWatcher { + func (l *JSONFileLogger) readLogs(logWatcher *logger.LogWatcher, config logger.ReadConfig) { + defer close(logWatcher.Msg) + ++ // lock so the read stream doesn't get corrupted do to rotations or other log data written while we read ++ // This will block writes!!! ++ l.mu.Lock() ++ + pth := l.writer.LogPath() + var files []io.ReadSeeker + for i := l.writer.MaxFiles(); i > 1; i-- { +@@ -61,6 +68,7 @@ func (l *JSONFileLogger) readLogs(logWatcher *logger.LogWatcher, config logger.R + latestFile, err := os.Open(pth) + if err != nil { + logWatcher.Err <- err ++ l.mu.Unlock() + return + } + +@@ -80,6 +88,7 @@ func (l *JSONFileLogger) readLogs(logWatcher *logger.LogWatcher, config logger.R + if err := latestFile.Close(); err != nil { + logrus.Errorf("Error closing file: %v", err) + } ++ l.mu.Unlock() + return + } + +@@ -87,7 +96,6 @@ func (l *JSONFileLogger) readLogs(logWatcher *logger.LogWatcher, config logger.R + latestFile.Seek(0, os.SEEK_END) + } + +- l.mu.Lock() + l.readers[logWatcher] = struct{}{} + l.mu.Unlock() + +@@ -128,92 +136,142 @@ func tailFile(f io.ReadSeeker, logWatcher *logger.LogWatcher, tail int, since ti + } + } + ++func watchFile(name string) (filenotify.FileWatcher, error) { ++ fileWatcher, err := filenotify.New() ++ if err != nil { ++ return nil, err ++ } ++ ++ if err := fileWatcher.Add(name); err != nil { ++ logrus.WithField("logger", "json-file").Warnf("falling back to file poller due to error: %v", err) ++ fileWatcher.Close() ++ fileWatcher = filenotify.NewPollingWatcher() ++ ++ if err := fileWatcher.Add(name); err != nil { ++ fileWatcher.Close() ++ logrus.Debugf("error watching log file for modifications: %v", err) ++ return nil, err ++ } ++ } ++ return fileWatcher, nil ++} ++ + func followLogs(f *os.File, logWatcher *logger.LogWatcher, notifyRotate chan interface{}, since time.Time) { + dec := json.NewDecoder(f) + l := &jsonlog.JSONLog{} + +- fileWatcher, err := filenotify.New() ++ name := f.Name() ++ fileWatcher, err := watchFile(name) + if err != nil { + logWatcher.Err <- err ++ return + } + defer func() { + f.Close() + fileWatcher.Close() + }() +- name := f.Name() + +- if err := fileWatcher.Add(name); err != nil { +- logrus.WithField("logger", "json-file").Warnf("falling back to file poller due to error: %v", err) +- fileWatcher.Close() +- fileWatcher = filenotify.NewPollingWatcher() ++ var retries int ++ handleRotate := func() error { ++ f.Close() ++ fileWatcher.Remove(name) + ++ // retry when the file doesn't exist ++ for retries := 0; retries <= 5; retries++ { ++ f, err = os.Open(name) ++ if err == nil || !os.IsNotExist(err) { ++ break ++ } ++ } ++ if err != nil { ++ return err ++ } + if err := fileWatcher.Add(name); err != nil { +- logrus.Debugf("error watching log file for modifications: %v", err) +- logWatcher.Err <- err +- return ++ return err + } ++ dec = json.NewDecoder(f) ++ return nil + } + +- var retries int +- for { +- msg, err := decodeLogLine(dec, l) +- if err != nil { +- if err != io.EOF { +- // try again because this shouldn't happen +- if _, ok := err.(*json.SyntaxError); ok && retries <= maxJSONDecodeRetry { +- dec = json.NewDecoder(f) +- retries++ +- continue ++ errRetry := errors.New("retry") ++ errDone := errors.New("done") ++ waitRead := func() error { ++ select { ++ case e := <-fileWatcher.Events(): ++ switch e.Op { ++ case fsnotify.Write: ++ dec = json.NewDecoder(f) ++ return nil ++ case fsnotify.Rename, fsnotify.Remove: ++ <-notifyRotate ++ if err := handleRotate(); err != nil { ++ return err + } +- +- // io.ErrUnexpectedEOF is returned from json.Decoder when there is +- // remaining data in the parser's buffer while an io.EOF occurs. +- // If the json logger writes a partial json log entry to the disk +- // while at the same time the decoder tries to decode it, the race condition happens. +- if err == io.ErrUnexpectedEOF && retries <= maxJSONDecodeRetry { +- reader := io.MultiReader(dec.Buffered(), f) +- dec = json.NewDecoder(reader) +- retries++ +- continue ++ return nil ++ } ++ return errRetry ++ case err := <-fileWatcher.Errors(): ++ logrus.Debug("logger got error watching file: %v", err) ++ // Something happened, let's try and stay alive and create a new watcher ++ if retries <= 5 { ++ fileWatcher, err = watchFile(name) ++ if err != nil { ++ return err + } +- +- return ++ retries++ ++ return errRetry + } ++ return err ++ case <-logWatcher.WatchClose(): ++ fileWatcher.Remove(name) ++ return errDone ++ } ++ } + +- select { +- case <-fileWatcher.Events(): +- dec = json.NewDecoder(f) +- continue +- case <-fileWatcher.Errors(): +- logWatcher.Err <- err +- return +- case <-logWatcher.WatchClose(): +- fileWatcher.Remove(name) +- return +- case <-notifyRotate: +- f.Close() +- fileWatcher.Remove(name) +- +- // retry when the file doesn't exist +- for retries := 0; retries <= 5; retries++ { +- f, err = os.Open(name) +- if err == nil || !os.IsNotExist(err) { +- break +- } ++ handleDecodeErr := func(err error) error { ++ if err == io.EOF { ++ for err := waitRead(); err != nil; { ++ if err == errRetry { ++ // retry the waitRead ++ continue + } ++ return err ++ } ++ return nil ++ } ++ // try again because this shouldn't happen ++ if _, ok := err.(*json.SyntaxError); ok && retries <= maxJSONDecodeRetry { ++ dec = json.NewDecoder(f) ++ retries++ ++ return nil ++ } ++ // io.ErrUnexpectedEOF is returned from json.Decoder when there is ++ // remaining data in the parser's buffer while an io.EOF occurs. ++ // If the json logger writes a partial json log entry to the disk ++ // while at the same time the decoder tries to decode it, the race condition happens. ++ if err == io.ErrUnexpectedEOF && retries <= maxJSONDecodeRetry { ++ reader := io.MultiReader(dec.Buffered(), f) ++ dec = json.NewDecoder(reader) ++ retries++ ++ return nil ++ } ++ return err ++ } + +- if err = fileWatcher.Add(name); err != nil { +- logWatcher.Err <- err +- return +- } +- if err != nil { +- logWatcher.Err <- err ++ // main loop ++ for { ++ msg, err := decodeLogLine(dec, l) ++ if err != nil { ++ if err := handleDecodeErr(err); err != nil { ++ if err == errDone { + return + } +- +- dec = json.NewDecoder(f) +- continue ++ // we got an unrecoverable error, so return ++ logWatcher.Err <- err ++ return + } ++ // ready to try again ++ continue + } + + retries = 0 // reset retries since we've succeeded +-- +2.7.3 + diff --git a/package/docker-engine/Config.in b/package/docker-engine/Config.in new file mode 100644 index 0000000000..1879a56fdd --- /dev/null +++ b/package/docker-engine/Config.in @@ -0,0 +1,65 @@ +config BR2_PACKAGE_DOCKER_ENGINE + bool "docker-engine" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Docker is a platform to build, ship, + and run applications as lightweight containers. + + https://github.com/docker/docker + +if BR2_PACKAGE_DOCKER_ENGINE + +config BR2_PACKAGE_DOCKER_ENGINE_DAEMON + bool "docker daemon" + depends on BR2_USE_MMU # docker-containerd + select BR2_PACKAGE_DOCKER_CONTAINERD # runtime dependency + select BR2_PACKAGE_IPTABLES # runtime dependency + select BR2_PACKAGE_SQLITE # runtime dependency + default y + help + Build the Docker system daemon. + If not selected, will build client only. + +config BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL + bool "build experimental features" + +if BR2_PACKAGE_DOCKER_ENGINE_DAEMON + +config BR2_PACKAGE_DOCKER_ENGINE_DRIVER_BTRFS + bool "btrfs filesystem driver" + depends on BR2_USE_MMU # btrfs-progs + depends on BR2_TOOLCHAIN_HAS_THREADS # btrfs-progs + select BR2_PACKAGE_BTRFS_PROGS + help + Build the btrfs filesystem driver for Docker. + +config BR2_PACKAGE_DOCKER_ENGINE_DRIVER_DEVICEMAPPER + bool "devicemapper filesystem driver" + depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2 + depends on BR2_USE_MMU # lvm2 + depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 + select BR2_PACKAGE_LVM2 + select BR2_PACKAGE_LVM2_APP_LIBRARY + help + Build the devicemapper filesystem driver for Docker. + +config BR2_PACKAGE_DOCKER_ENGINE_DRIVER_VFS + bool "vfs filesystem driver" + depends on BR2_USE_WCHAR # gvfs + depends on BR2_USE_MMU # gvfs + depends on BR2_TOOLCHAIN_HAS_THREADS # gvfs + select BR2_PACKAGE_GVFS + help + Build the vfs filesystem driver for Docker. + +endif + +endif + +comment "docker-engine needs a toolchain w/ threads" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/docker-engine/docker-engine.hash b/package/docker-engine/docker-engine.hash new file mode 100644 index 0000000000..5e09453e49 --- /dev/null +++ b/package/docker-engine/docker-engine.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 0413f3513c2a6842ed9cf837154c8a722e9b34cb36b33430348489baa183707e docker-engine-v1.12.6.tar.gz diff --git a/package/docker-engine/docker-engine.mk b/package/docker-engine/docker-engine.mk new file mode 100644 index 0000000000..d575662dde --- /dev/null +++ b/package/docker-engine/docker-engine.mk @@ -0,0 +1,113 @@ +################################################################################ +# +# docker-engine +# +################################################################################ + +DOCKER_ENGINE_VERSION = v1.12.6 +DOCKER_ENGINE_COMMIT = 78d18021ecba00c00730dec9d56de6896f9e708d +DOCKER_ENGINE_SITE = $(call github,docker,docker,$(DOCKER_ENGINE_VERSION)) + +DOCKER_ENGINE_LICENSE = Apache-2.0 +DOCKER_ENGINE_LICENSE_FILES = LICENSE + +DOCKER_ENGINE_DEPENDENCIES = host-go host-pkgconf + +DOCKER_ENGINE_GOPATH = "$(@D)/vendor" +DOCKER_ENGINE_MAKE_ENV = $(HOST_GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + CGO_NO_EMULATION=1 \ + GOBIN="$(@D)/bin" \ + GOPATH="$(DOCKER_ENGINE_GOPATH)" \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + $(TARGET_MAKE_ENV) + +DOCKER_ENGINE_GLDFLAGS = \ + -X main.GitCommit=$(DOCKER_ENGINE_VERSION) \ + -X main.Version=$(DOCKER_ENGINE_VERSION) + +ifeq ($(BR2_STATIC_LIBS),y) +DOCKER_ENGINE_GLDFLAGS += -extldflags '-static' +endif + +DOCKER_ENGINE_BUILD_TAGS = cgo exclude_graphdriver_zfs autogen +DOCKER_ENGINE_BUILD_TARGETS = docker + +ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +DOCKER_ENGINE_BUILD_TAGS += seccomp +DOCKER_ENGINE_DEPENDENCIES += libseccomp +endif + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) +DOCKER_ENGINE_BUILD_TAGS += daemon +DOCKER_ENGINE_BUILD_TARGETS += dockerd +endif + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL),y) +DOCKER_ENGINE_BUILD_TAGS += experimental +endif + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_BTRFS),y) +DOCKER_ENGINE_DEPENDENCIES += btrfs-progs +else +DOCKER_ENGINE_BUILD_TAGS += exclude_graphdriver_btrfs +endif + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_DEVICEMAPPER),y) +DOCKER_ENGINE_DEPENDENCIES += lvm2 +else +DOCKER_ENGINE_BUILD_TAGS += exclude_graphdriver_devicemapper +endif + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_VFS),y) +DOCKER_ENGINE_DEPENDENCIES += gvfs +else +DOCKER_ENGINE_BUILD_TAGS += exclude_graphdriver_vfs +endif + +define DOCKER_ENGINE_CONFIGURE_CMDS + ln -fs $(@D) $(DOCKER_ENGINE_GOPATH)/src/github.com/docker/docker + cd $(@D) && \ + GITCOMMIT="$$(echo $(DOCKER_ENGINE_COMMIT) | head -c7)" \ + BUILDTIME="$$(date)" \ + VERSION="$(patsubst v%,%,$(DOCKER_ENGINE_VERSION))" \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" $(TARGET_MAKE_ENV) \ + bash ./hack/make/.go-autogen +endef + +ifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DAEMON),y) + +define DOCKER_ENGINE_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.service \ + $(TARGET_DIR)/usr/lib/systemd/system/docker.service + $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/docker.socket + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/ + ln -fs ../../../../usr/lib/systemd/system/docker.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/docker.service +endef + +define DOCKER_ENGINE_USERS + - - docker -1 * - - - Docker Application Container Framework +endef + +endif + +define DOCKER_ENGINE_BUILD_CMDS + $(foreach target,$(DOCKER_ENGINE_BUILD_TARGETS), \ + cd $(@D); $(DOCKER_ENGINE_MAKE_ENV) \ + $(HOST_DIR)/usr/bin/go build -v \ + -o $(@D)/bin/$(target) \ + -tags "$(DOCKER_ENGINE_BUILD_TAGS)" \ + -ldflags "$(DOCKER_ENGINE_GLDFLAGS)" \ + ./cmd/$(target) + ) +endef + +define DOCKER_ENGINE_INSTALL_TARGET_CMDS + $(foreach target,$(DOCKER_ENGINE_BUILD_TARGETS), \ + $(INSTALL) -D -m 0755 $(@D)/bin/$(target) $(TARGET_DIR)/usr/bin/$(target) + ) +endef + +$(eval $(generic-package)) diff --git a/package/domoticz/Config.in b/package/domoticz/Config.in new file mode 100644 index 0000000000..f128e6f88c --- /dev/null +++ b/package/domoticz/Config.in @@ -0,0 +1,34 @@ +config BR2_PACKAGE_DOMOTICZ + bool "domoticz" + depends on BR2_USE_MMU # mosquitto + depends on !BR2_STATIC_LIBS # mosquitto + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3 + # These result in internal compiler error + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_DATE_TIME + select BR2_PACKAGE_BOOST_SYSTEM + select BR2_PACKAGE_BOOST_THREAD + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_MOSQUITTO + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_SQLITE + select BR2_PACKAGE_ZLIB + help + Domoticz is a Home Automation System that lets you monitor + and configure various devices like: Lights, Switches, + various sensors/meters like Temperature, Rain, Wind, UV, + Electra, Gas, Water and much more. Notifications/Alerts can + be sent to any mobile device. + + http://domoticz.com + +comment "domoticz needs lua >= 5.2 and a toolchain w/ C++, threads, wchar, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ + !(BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3) diff --git a/package/domoticz/S99domoticz b/package/domoticz/S99domoticz new file mode 100644 index 0000000000..a16cacadde --- /dev/null +++ b/package/domoticz/S99domoticz @@ -0,0 +1,38 @@ +#!/bin/sh + +NAME=domoticz +PIDFILE=/var/run/$NAME.pid +DAEMON=/opt/domoticz/$NAME +DAEMON_ARGS="-daemon -www 8080 -sslwww 443" + +start() { + printf "Starting $NAME: " + start-stop-daemon -S -q -m -b -p $PIDFILE --exec $DAEMON -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping $NAME: " + start-stop-daemon -K -q -p $PIDFILE + [ $? = 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/domoticz/domoticz.hash b/package/domoticz/domoticz.hash new file mode 100644 index 0000000000..7feab8fbca --- /dev/null +++ b/package/domoticz/domoticz.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 fb88edbe428851a7a337a85faa93f6da00713b3ad086ff6957031dc9b3b58bba domoticz-3.5877.tar.gz diff --git a/package/domoticz/domoticz.mk b/package/domoticz/domoticz.mk new file mode 100644 index 0000000000..f43dbda49e --- /dev/null +++ b/package/domoticz/domoticz.mk @@ -0,0 +1,77 @@ +################################################################################ +# +# domoticz +# +################################################################################ + +DOMOTICZ_VERSION = 3.5877 +DOMOTICZ_SITE = $(call github,domoticz,domoticz,$(DOMOTICZ_VERSION)) +DOMOTICZ_LICENSE = GPLv3 +DOMOTICZ_LICENSE_FILES = License.txt +DOMOTICZ_DEPENDENCIES = \ + boost \ + host-pkgconf \ + libcurl \ + lua \ + mosquitto \ + openssl \ + sqlite \ + zlib + +# Due to the dependency on mosquitto, domoticz depends on +# !BR2_STATIC_LIBS so set USE_STATIC_BOOST to OFF +DOMOTICZ_CONF_OPTS += -DUSE_STATIC_BOOST=OFF + +# Do not use any built-in libraries which are enabled by default for +# lua, sqlite and mqtt +DOMOTICZ_CONF_OPTS += \ + -DUSE_BUILTIN_LUA=OFF \ + -DUSE_BUILTIN_SQLITE=OFF \ + -DUSE_BUILTIN_MQTT=OFF + +ifeq ($(BR2_PACKAGE_LIBUSB),y) +DOMOTICZ_DEPENDENCIES += libusb +endif + +ifeq ($(BR2_PACKAGE_OPENZWAVE),y) +DOMOTICZ_DEPENDENCIES += openzwave + +# Due to the dependency on mosquitto, domoticz depends on +# !BR2_STATIC_LIBS so set USE_STATIC_OPENZWAVE to OFF otherwise +# domoticz will not find the openzwave library as it searches by +# default a static library. +DOMOTICZ_CONF_OPTS += -DUSE_STATIC_OPENZWAVE=OFF +endif + +# Install domoticz in a dedicated directory (/opt/domoticz) as +# domoticz expects by default that all its subdirectories (www, +# Config, scripts, ...) are in the binary directory. +DOMOTICZ_TARGET_DIR = /opt/domoticz +DOMOTICZ_CONF_OPTS += -DCMAKE_INSTALL_PREFIX=$(DOMOTICZ_TARGET_DIR) + +# Delete License.txt and updatedomo files installed by domoticz in target +# directory +# Do not delete History.txt as it is used in source code +define DOMOTICZ_REMOVE_UNNEEDED_FILES + $(RM) $(TARGET_DIR)/$(DOMOTICZ_TARGET_DIR)/License.txt + $(RM) $(TARGET_DIR)/$(DOMOTICZ_TARGET_DIR)/updatedomo +endef + +DOMOTICZ_POST_INSTALL_TARGET_HOOKS += DOMOTICZ_REMOVE_UNNEEDED_FILES + +# Use dedicated init scripts for systemV and systemd instead of using +# domoticz.sh as it is not compatible with buildroot init system +define DOMOTICZ_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/domoticz/S99domoticz \ + $(TARGET_DIR)/etc/init.d/S99domoticz +endef + +define DOMOTICZ_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/domoticz/domoticz.service \ + $(TARGET_DIR)/usr/lib/systemd/system/domoticz.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/domoticz.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/domoticz.service +endef + +$(eval $(cmake-package)) diff --git a/package/domoticz/domoticz.service b/package/domoticz/domoticz.service new file mode 100644 index 0000000000..446b41a51b --- /dev/null +++ b/package/domoticz/domoticz.service @@ -0,0 +1,10 @@ +[Unit] +Description=Domoticz Home Automation System +After=network.target + +[Service] +ExecStart=/opt/domoticz/domoticz -daemon -www 8080 -sslwww 443 +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/dos2unix/Config.in b/package/dos2unix/Config.in index ead1a8ffac..0a4f5e2fff 100644 --- a/package/dos2unix/Config.in +++ b/package/dos2unix/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DOS2UNIX select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE bool "dos2unix" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help dos2unix converts text file line endings between CRLF and LF diff --git a/package/dos2unix/dos2unix.hash b/package/dos2unix/dos2unix.hash index 7e1a120028..1169592fce 100644 --- a/package/dos2unix/dos2unix.hash +++ b/package/dos2unix/dos2unix.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 f4d5df24d181c2efecf7631aab6e894489012396092cf206829f1f9a98556b94 dos2unix-7.3.1.tar.gz +sha256 8ccda7bbc5a2f903dafd95900abb5bf5e77a769b572ef25150fde4056c5f30c5 dos2unix-7.3.4.tar.gz diff --git a/package/dos2unix/dos2unix.mk b/package/dos2unix/dos2unix.mk index 21e03aecb0..df2094e4a5 100644 --- a/package/dos2unix/dos2unix.mk +++ b/package/dos2unix/dos2unix.mk @@ -4,12 +4,11 @@ # ################################################################################ -DOS2UNIX_VERSION = 7.3.1 +DOS2UNIX_VERSION = 7.3.4 DOS2UNIX_SITE = http://waterlan.home.xs4all.nl/dos2unix DOS2UNIX_LICENSE = BSD-2c DOS2UNIX_LICENSE_FILES = COPYING.txt DOS2UNIX_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) -HOST_DOS2UNIX_DEPENDENCIES = ifeq ($(BR2_ENABLE_LOCALE),y) DOS2UNIX_DEPENDENCIES += host-gettext diff --git a/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch b/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch new file mode 100644 index 0000000000..ff3c3ffa44 --- /dev/null +++ b/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch @@ -0,0 +1,42 @@ +From 1e76e5778a1885452939a79d9145b80634a5b023 Mon Sep 17 00:00:00 2001 +From: Andreas Bombe +Date: Wed, 11 May 2016 03:44:58 +0200 +Subject: [PATCH] mkfs: Default to 64/32 heads/sectors for targets smaller than + 512 MB + +This may put defaults in certain use cases a little bit more in line +with the old defaults in versions up to 3.0.28. It has mostly aesthetic +value in most cases. + +Signed-off-by: Andreas Bombe +Signed-off-by: Gustavo Zacarias +--- +Patch status: upstream + + src/mkfs.fat.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c +index 8a320fd..bad492b 100644 +--- a/src/mkfs.fat.c ++++ b/src/mkfs.fat.c +@@ -519,6 +519,16 @@ static void establish_params(struct device_info *info) + unsigned int cluster_size = 4; /* starting point for FAT12 and FAT16 */ + int def_root_dir_entries = 512; + ++ if (info->size < 512 * 1024 * 1024) { ++ /* ++ * These values are more or less meaningless, but we can at least ++ * use less extreme values for smaller filesystems where the large ++ * dummy values signifying LBA only access are not needed. ++ */ ++ sec_per_track = 32; ++ heads = 64; ++ } ++ + if (info->type != TYPE_FIXED) { + /* enter default parameters for floppy disks if the size matches */ + switch (info->size / 1024) { +-- +2.7.3 + diff --git a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch deleted file mode 100644 index 34ebc240b5..0000000000 --- a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 7a589ef6dab52ad32a296939f0ed2acb4d76b2a7 Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Sun, 16 Aug 2015 15:55:43 +0200 -Subject: [PATCH] mkfs.fat: fix incorrect int type - -u_int32_t is not a stanard type, while uint32_t is. This fixes builds -with the musl C library, which only defines so-called "clean" headers; -build failures are like (back-quotes and elision manually added for -readability): - - http://autobuild.buildroot.org/results/a09/a0923d7f6d4dbae02eba4c5024bbdae3a52aa85a/build-end.log - - /home/peko/autobuild/instance-1/output/host/usr/bin/x86_64-linux-gcc -D_LARGEFILE_SOURCE \ - -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_GNU_SOURCE -D_LARGEFILE_SOURCE \ - -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o mkfs.fat.o src/mkfs.fat.c - src/mkfs.fat.c: In function 'main': - src/mkfs.fat.c:1415:18: error: 'u_int32_t' undeclared (first use in this function) - volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); [...] - ^ - src/mkfs.fat.c:1415:18: note: each undeclared identifier is reported only once for each - function it appears in - -Signed-off-by: "Yann E. MORIN" ---- -Upstream status: applied: https://github.com/dosfstools/dosfstools/pull/9 ---- - src/mkfs.fat.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c -index b38d116..dddbe24 100644 ---- a/src/mkfs.fat.c -+++ b/src/mkfs.fat.c -@@ -1412,7 +1412,7 @@ int main(int argc, char **argv) - - gettimeofday(&create_timeval, NULL); - create_time = create_timeval.tv_sec; -- volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */ -+ volume_id = (uint32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */ - check_atari(); - - printf("mkfs.fat " VERSION " (" VERSION_DATE ")\n"); --- -1.9.1 - diff --git a/package/dosfstools/0002-src-device_info.c-Fix-undefined-PATH_MAX-under-musl.patch b/package/dosfstools/0002-src-device_info.c-Fix-undefined-PATH_MAX-under-musl.patch new file mode 100644 index 0000000000..9740304603 --- /dev/null +++ b/package/dosfstools/0002-src-device_info.c-Fix-undefined-PATH_MAX-under-musl.patch @@ -0,0 +1,31 @@ +From 06ce096dabd8a29c72dc0bc5110d2c4867baa490 Mon Sep 17 00:00:00 2001 +From: Alessio Sergi +Date: Fri, 6 May 2016 18:18:18 +0200 +Subject: [PATCH] src/device_info.c: Fix undefined PATH_MAX under musl + +In musl libc, PATH_MAX is defined in . + +Status: pending +https://github.com/dosfstools/dosfstools/pull/27 + +[Romain: add patch status] +Signed-off-by: Romain Naour +--- + src/device_info.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/device_info.c b/src/device_info.c +index f5d11ac..cd57388 100644 +--- a/src/device_info.c ++++ b/src/device_info.c +@@ -17,6 +17,7 @@ + */ + + ++#include + #include + #include + #include +-- +2.5.5 + diff --git a/package/dosfstools/Config.in.host b/package/dosfstools/Config.in.host index 6156c5a3cf..fc488c0c6f 100644 --- a/package/dosfstools/Config.in.host +++ b/package/dosfstools/Config.in.host @@ -3,4 +3,4 @@ config BR2_PACKAGE_HOST_DOSFSTOOLS help Tools for creating and checking DOS FAT filesystems. - http://www.daniel-baumann.ch/software/dosfstools/ + https://github.com/dosfstools/dosfstools diff --git a/package/dosfstools/dosfstools.hash b/package/dosfstools/dosfstools.hash index f852195868..777b8d9e3f 100644 --- a/package/dosfstools/dosfstools.hash +++ b/package/dosfstools/dosfstools.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 ee95913044ecf2719b63ea11212917649709a6e53209a72d622135aaa8517ee2 dosfstools-3.0.28.tar.xz +sha256 9037738953559d1efe04fc5408b6846216cc0138f7f9d32de80b6ec3c35e7daf dosfstools-4.0.tar.xz diff --git a/package/dosfstools/dosfstools.mk b/package/dosfstools/dosfstools.mk index b7f7d96b85..67c6f73103 100644 --- a/package/dosfstools/dosfstools.mk +++ b/package/dosfstools/dosfstools.mk @@ -4,65 +4,46 @@ # ################################################################################ -DOSFSTOOLS_VERSION = 3.0.28 +DOSFSTOOLS_VERSION = 4.0 DOSFSTOOLS_SOURCE = dosfstools-$(DOSFSTOOLS_VERSION).tar.xz DOSFSTOOLS_SITE = https://github.com/dosfstools/dosfstools/releases/download/v$(DOSFSTOOLS_VERSION) DOSFSTOOLS_LICENSE = GPLv3+ DOSFSTOOLS_LICENSE_FILES = COPYING +DOSFSTOOLS_CONF_OPTS = --enable-compat-symlinks --exec-prefix=/ +HOST_DOSFSTOOLS_CONF_OPTS = --enable-compat-symlinks -# Avoid target dosfstools dependencies, no host-libiconv -HOST_DOSFSTOOLS_DEPENDENCIES = - -DOSFSTOOLS_CFLAGS = $(TARGET_CFLAGS) -D_GNU_SOURCE +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +DOSFSTOOLS_CONF_OPTS += --with-udev +DOSFSTOOLS_DEPENDENCIES += udev +else +DOSFSTOOLS_CONF_OPTS += --without-udev +endif ifneq ($(BR2_ENABLE_LOCALE),y) +DOSFSTOOLS_CONF_OPTS += LIBS="-liconv" DOSFSTOOLS_DEPENDENCIES += libiconv -DOSFSTOOLS_LDLIBS += -liconv endif -define DOSFSTOOLS_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(DOSFSTOOLS_CFLAGS)" LDLIBS="$(DOSFSTOOLS_LDLIBS)" -C $(@D) -endef - -ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FATLABEL),y) -define DOSFSTOOLS_INSTALL_FATLABEL - $(INSTALL) -D -m 755 $(@D)/fatlabel $(TARGET_DIR)/sbin/fatlabel - ln -sf fatlabel $(TARGET_DIR)/sbin/dosfslabel +ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FATLABEL),) +define DOSFSTOOLS_REMOVE_FATLABEL + rm -f $(addprefix $(TARGET_DIR)/sbin/,dosfslabel fatlabel) endef +DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_FATLABEL endif -ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT),y) -define DOSFSTOOLS_INSTALL_FSCK_FAT - $(INSTALL) -D -m 755 $(@D)/fsck.fat $(TARGET_DIR)/sbin/fsck.fat - ln -fs fsck.fat $(TARGET_DIR)/sbin/dosfsck - ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.msdos - ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.vfat +ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT),) +define DOSFSTOOLS_REMOVE_FSCK_FAT + rm -f $(addprefix $(TARGET_DIR)/sbin/,fsck.fat dosfsck fsck.msdos fsck.vfat) endef +DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_FSCK_FAT endif -ifeq ($(BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT),y) -define DOSFSTOOLS_INSTALL_MKFS_FAT - $(INSTALL) -D -m 755 $(@D)/mkfs.fat $(TARGET_DIR)/sbin/mkfs.fat - ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkdosfs - ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.msdos - ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.vfat +ifeq ($(BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT),) +define DOSFSTOOLS_REMOVE_MKFS_FAT + rm -f $(addprefix $(TARGET_DIR)/sbin/,mkfs.fat mkdosfs mkfs.msdos mkfs.vfat) endef +DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_MKFS_FAT endif -define DOSFSTOOLS_INSTALL_TARGET_CMDS - $(DOSFSTOOLS_INSTALL_FATLABEL) - $(DOSFSTOOLS_INSTALL_FSCK_FAT) - $(DOSFSTOOLS_INSTALL_MKFS_FAT) -endef - -define HOST_DOSFSTOOLS_BUILD_CMDS - $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) -endef - -define HOST_DOSFSTOOLS_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr install -endef - -$(eval $(generic-package)) -$(eval $(host-generic-package)) +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash index 2ef063ec29..95325a95de 100644 --- a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash +++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 dff30a636c1516158f3e159c669a254569c9dabaa6ecfa3669379101ea5b3300 dovecot-2.2-pigeonhole-0.4.14.tar.gz +# Locally computed after checking signature +sha256 8f0b98f18062d6e241eef74ebe16cc167cd246361cbe6657d94f0ecc5d7d3234 dovecot-2.2-pigeonhole-0.4.16.tar.gz diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk index 132bef4997..846e7f97dd 100644 --- a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk +++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk @@ -4,7 +4,7 @@ # ################################################################################ -DOVECOT_PIGEONHOLE_VERSION = 0.4.14 +DOVECOT_PIGEONHOLE_VERSION = 0.4.16 DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.2-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz DOVECOT_PIGEONHOLE_SITE = http://pigeonhole.dovecot.org/releases/2.2 DOVECOT_PIGEONHOLE_LICENSE = LGPLv2.1 diff --git a/package/dovecot/Config.in b/package/dovecot/Config.in index 194efb6bc3..d1ff7bce91 100644 --- a/package/dovecot/Config.in +++ b/package/dovecot/Config.in @@ -2,6 +2,8 @@ config BR2_PACKAGE_DOVECOT bool "dovecot" depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB help Dovecot is an open source IMAP and POP3 email server for Linux/UNIX- like systems, written with security primarily in mind. Dovecot is an @@ -24,13 +26,6 @@ config BR2_PACKAGE_DOVECOT_MYSQL comment "mysql support needs a toolchain w/ C++, threads" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS -config BR2_PACKAGE_DOVECOT_OPENSSL - bool "openssl support" - select BR2_PACKAGE_OPENSSL - select BR2_PACKAGE_ZLIB - help - Enable OpenSSL support. - config BR2_PACKAGE_DOVECOT_SQLITE bool "sqlite support" select BR2_PACKAGE_SQLITE diff --git a/package/dovecot/dovecot.hash b/package/dovecot/dovecot.hash index 33de82dfe4..e7b9c3375e 100644 --- a/package/dovecot/dovecot.hash +++ b/package/dovecot/dovecot.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 71c86891ea8deb5703d3dbbc3ea31ce2cbf7638f1aa395d9e8794d3ff7aebeb7 dovecot-2.2.24.tar.gz +# Locally computed after checking signature +sha256 897f92a87cda4b27b243f8149ce0ba7b7e71a2be8fb7994eb0a025e54cde18e9 dovecot-2.2.27.tar.gz diff --git a/package/dovecot/dovecot.mk b/package/dovecot/dovecot.mk index a9c0769cdb..fe0afa5064 100644 --- a/package/dovecot/dovecot.mk +++ b/package/dovecot/dovecot.mk @@ -5,12 +5,15 @@ ################################################################################ DOVECOT_VERSION_MAJOR = 2.2 -DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).24 +DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).27 DOVECOT_SITE = http://www.dovecot.org/releases/$(DOVECOT_VERSION_MAJOR) DOVECOT_INSTALL_STAGING = YES DOVECOT_LICENSE = LGPLv2.1 DOVECOT_LICENSE_FILES = COPYING COPYING.LGPL COPYING.MIT -DOVECOT_DEPENDENCIES = host-pkgconf $(if $(BR2_PACKAGE_LIBICONV),libiconv) +DOVECOT_DEPENDENCIES = \ + host-pkgconf \ + $(if $(BR2_PACKAGE_LIBICONV),libiconv) \ + openssl DOVECOT_CONF_ENV = \ RPCGEN=__disable_RPCGEN_rquota \ @@ -27,7 +30,7 @@ DOVECOT_CONF_ENV = \ lib_cv___va_copy=yes \ lib_cv_va_val_copy=yes -DOVECOT_CONF_OPTS = --without-docs +DOVECOT_CONF_OPTS = --without-docs --with-ssl=openssl ifeq ($(BR2_PACKAGE_DOVECOT_MYSQL)$(BR2_PACKAGE_DOVECOT_SQLITE),) DOVECOT_CONF_OPTS += --without-sql @@ -62,13 +65,6 @@ else DOVECOT_CONF_OPTS += --without-mysql endif -ifeq ($(BR2_PACKAGE_DOVECOT_OPENSSL),y) -DOVECOT_CONF_OPTS += --with-ssl=openssl -DOVECOT_DEPENDENCIES += openssl -else -DOVECOT_CONF_OPTS += --with-ssl=no -endif - ifeq ($(BR2_PACKAGE_DOVECOT_SQLITE),y) DOVECOT_CONF_OPTS += --with-sqlite DOVECOT_DEPENDENCIES += sqlite diff --git a/package/doxygen/doxygen.mk b/package/doxygen/doxygen.mk index 14dd090596..cf7dfee2a5 100644 --- a/package/doxygen/doxygen.mk +++ b/package/doxygen/doxygen.mk @@ -9,7 +9,7 @@ DOXYGEN_SOURCE = doxygen-$(DOXYGEN_VERSION).src.tar.gz DOXYGEN_SITE = http://ftp.stack.nl/pub/users/dimitri DOXYGEN_LICENSE = GPLv2 DOXYGEN_LICENSE_FILES = LICENSE -DOXYGEN_DEPENDENCIES = host-flex host-bison +HOST_DOXYGEN_DEPENDENCIES = host-flex host-bison define HOST_DOXYGEN_CONFIGURE_CMDS (cd $(@D); $(HOST_MAKE_ENV) ./configure --shared --prefix=$(HOST_DIR)/usr) diff --git a/package/drbd-utils/drbd-utils.mk b/package/drbd-utils/drbd-utils.mk index 88d272952e..eb6042d2b6 100644 --- a/package/drbd-utils/drbd-utils.mk +++ b/package/drbd-utils/drbd-utils.mk @@ -14,14 +14,14 @@ DRBD_UTILS_CONF_OPTS = --with-distro=generic --without-manual ifeq ($(BR2_INIT_SYSTEMD),y) DRBD_UTILS_CONF_OPTS += --with-initscripttype=systemd -DRDB_UTILS_DEPENDENCIES += systemd +DRBD_UTILS_DEPENDENCIES += systemd else DRBD_UTILS_CONF_OPTS += --with-initscripttype=sysv endif ifeq ($(BR2_PACKAGE_HAS_UDEV),y) DRBD_UTILS_CONF_OPTS += --with-udev=yes -DRDB_UTILS_DEPENDENCIES += udev +DRBD_UTILS_DEPENDENCIES += udev else DRBD_UTILS_CONF_OPTS += --with-udev=no endif diff --git a/package/dropbear/dropbear.hash b/package/dropbear/dropbear.hash index 2692889327..88f3e6ed5d 100644 --- a/package/dropbear/dropbear.hash +++ b/package/dropbear/dropbear.hash @@ -1,2 +1,2 @@ # From https://matt.ucc.asn.au/dropbear/releases/SHA256SUM.asc -sha256 5c61a4f69b093b688629cd365be38701485ff63cfb23642dab7a05ad250aefd7 dropbear-2016.73.tar.bz2 +sha256 2720ea54ed009af812701bcc290a2a601d5c107d12993e5d92c0f5f81f718891 dropbear-2016.74.tar.bz2 diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk index 32e2167771..743d52479e 100644 --- a/package/dropbear/dropbear.mk +++ b/package/dropbear/dropbear.mk @@ -4,7 +4,7 @@ # ################################################################################ -DROPBEAR_VERSION = 2016.73 +DROPBEAR_VERSION = 2016.74 DROPBEAR_SITE = http://matt.ucc.asn.au/dropbear/releases DROPBEAR_SOURCE = dropbear-$(DROPBEAR_VERSION).tar.bz2 DROPBEAR_LICENSE = MIT, BSD-2c-like, BSD-2c diff --git a/package/dropwatch/Config.in b/package/dropwatch/Config.in index d331e5e816..6f04c85dd6 100644 --- a/package/dropwatch/Config.in +++ b/package/dropwatch/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_DROPWATCH bool "dropwatch" select BR2_PACKAGE_BINUTILS - depends on !BR2_aarch64 && !BR2_nios2 # binutils + depends on !BR2_nios2 # binutils depends on BR2_USE_WCHAR # binutils select BR2_PACKAGE_READLINE select BR2_PACKAGE_LIBNL @@ -13,5 +13,5 @@ config BR2_PACKAGE_DROPWATCH https://fedorahosted.org/dropwatch/ comment "dropwatch needs a toolchain w/ threads, wchar" - depends on !BR2_aarch64 && !BR2_nios2 + depends on !BR2_nios2 depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/dstat/dstat.mk b/package/dstat/dstat.mk index f02e908123..180031f20a 100644 --- a/package/dstat/dstat.mk +++ b/package/dstat/dstat.mk @@ -11,7 +11,7 @@ DSTAT_LICENSE = GPLv2 DSTAT_LICENSE_FILES = COPYING define DSTAT_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/dt/Config.in b/package/dt/Config.in index 848e251b60..826a66ebd5 100644 --- a/package/dt/Config.in +++ b/package/dt/Config.in @@ -1,4 +1,4 @@ -comment "dt needs a (e)glibc or uclibc toolchain w/ threads" +comment "dt needs a glibc or uClibc toolchain w/ threads" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/dtach/dtach.hash b/package/dtach/dtach.hash index c9b7a4c5a8..c643264f84 100644 --- a/package/dtach/dtach.hash +++ b/package/dtach/dtach.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 16614ebddf8ab2811d3dc0e7f329c7de88929ac6a9632d4cb4aef7fe11b8f2a9 dtach-0.8.tar.gz +sha256 5f7e8c835ee49a9e6dcf89f4e8ccbe724b061c0fc8565b504dd8b3e67ab79f82 dtach-v0.9.tar.gz diff --git a/package/dtach/dtach.mk b/package/dtach/dtach.mk index 5f5a90321e..75c443470e 100644 --- a/package/dtach/dtach.mk +++ b/package/dtach/dtach.mk @@ -4,8 +4,8 @@ # ################################################################################ -DTACH_VERSION = 0.8 -DTACH_SITE = http://downloads.sourceforge.net/project/dtach/dtach/$(DTACH_VERSION) +DTACH_VERSION = v0.9 +DTACH_SITE = $(call github,crigler,dtach,$(DTACH_VERSION)) DTACH_LICENSE = GPLv2+ DTACH_LICENSE_FILES = COPYING diff --git a/package/dtc/dtc.mk b/package/dtc/dtc.mk index f3b6f3b543..f6800f36b3 100644 --- a/package/dtc/dtc.mk +++ b/package/dtc/dtc.mk @@ -7,10 +7,11 @@ DTC_VERSION = 1.4.1 DTC_SOURCE = dtc-$(DTC_VERSION).tar.xz DTC_SITE = https://www.kernel.org/pub/software/utils/dtc -DTC_LICENSE = GPLv2+/BSD-2c +DTC_LICENSE = GPLv2+ or BSD-2c (library) DTC_LICENSE_FILES = README.license GPL DTC_INSTALL_STAGING = YES DTC_DEPENDENCIES = host-bison host-flex +HOST_DTC_DEPENDENCIES = host-bison host-flex define DTC_POST_INSTALL_TARGET_RM_DTDIFF rm -f $(TARGET_DIR)/usr/bin/dtdiff @@ -18,7 +19,7 @@ endef ifeq ($(BR2_PACKAGE_DTC_PROGRAMS),y) -DTC_LICENSE += (for the library), GPLv2+ (for the executables) +DTC_LICENSE := $(DTC_LICENSE), GPLv2+ (programs) DTC_INSTALL_GOAL = install ifeq ($(BR2_PACKAGE_BASH),) DTC_POST_INSTALL_TARGET_HOOKS += DTC_POST_INSTALL_TARGET_RM_DTDIFF @@ -36,12 +37,12 @@ endef # For staging, only the library is needed define DTC_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install-lib \ + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install-lib \ install-includes endef define DTC_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr $(DTC_INSTALL_GOAL) + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr $(DTC_INSTALL_GOAL) endef # host build @@ -50,7 +51,7 @@ define HOST_DTC_BUILD_CMDS endef define HOST_DTC_INSTALL_CMDS - $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install-bin + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install-bin endef $(eval $(generic-package)) diff --git a/package/dtv-scan-tables/dtv-scan-tables.mk b/package/dtv-scan-tables/dtv-scan-tables.mk index d78dd82cfb..8a782cb404 100644 --- a/package/dtv-scan-tables/dtv-scan-tables.mk +++ b/package/dtv-scan-tables/dtv-scan-tables.mk @@ -4,7 +4,7 @@ # ################################################################################ -DTV_SCAN_TABLES_VERSION = 61c8339d686b2d98d5604c26a777cb3c1f3d84a1 +DTV_SCAN_TABLES_VERSION = ceb11833b35f05813b1f0397a60e0f3b99430aab DTV_SCAN_TABLES_SITE = http://git.linuxtv.org/cgit.cgi/dtv-scan-tables.git DTV_SCAN_TABLES_SITE_METHOD = git @@ -17,6 +17,15 @@ DTV_SCAN_TABLES_SITE_METHOD = git DTV_SCAN_TABLES_LICENSE = GPLv2, LGPLv2.1 DTV_SCAN_TABLES_LICENSE_FILES = COPYING COPYING.LGPL +# In order to avoid issues with file name encodings, we rename the +# only dtv-scan-tables file that has non-ASCII characters to have a +# name using only ASCII characters (pl-Krosno_Sucha_Gora) +define DTV_SCAN_TABLES_FIX_NONASCII_FILENAMES + mv $(@D)/dvb-t/pl-Krosno_Sucha* $(@D)/dvb-t/pl-Krosno_Sucha_Gora +endef + +DTV_SCAN_TABLES_POST_PATCH_HOOKS += DTV_SCAN_TABLES_FIX_NONASCII_FILENAMES + define DTV_SCAN_TABLES_INSTALL_TARGET_CMDS for f in atsc dvb-c dvb-s dvb-t; do \ $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/dvb/$$f; \ diff --git a/package/duma/0003-fix-C++14.patch b/package/duma/0003-fix-C++14.patch new file mode 100644 index 0000000000..d19213ca7a --- /dev/null +++ b/package/duma/0003-fix-C++14.patch @@ -0,0 +1,65 @@ +dumapp: fix for C++14 + +With C++14, the way exceptions are specified has changed (somehow, don't +ask me), thus causing build failures: + + dumapp.cpp: In function ‘void* operator new(std::size_t)’: + dumapp.cpp:192:19: error: declaration of ‘void* operator new(std::size_t) throw (std::bad_alloc)’ has a different exception specifier + void * DUMA_CDECL operator new( DUMA_SIZE_T size ) + ^~~~~~~~ + In file included from dumapp.cpp:39:0: + dumapp.h:91:23: note: from previous declaration ‘void* operator new(std::size_t)’ + void * DUMA_CDECL operator new(DUMA_SIZE_T) throw(std::bad_alloc); + ^~~~~~~~ + +This is most evident with gcc-6.x, since the default C++ standard has +changed from C++11 to C++14, thus exposing these new failures. + +Fix that by guarding the exception handling, a bit like was done +with GRASS GIS (thanks DuckDuckGo): + + https://trac.osgeo.org/grass/changeset?old_path=%2F&old=68817&new_path=%2F&new=68818&sfp_email=&sfph_mail= + +Signed-off-by: "Yann E. MORIN" + +--- +Note: The last commit in DUMA's CVS repo was more than 7 years ago. +I doubt it is still active, so the patch was not sent upstream. :-/ + +diff -durN duma-2.5.15.orig/dumapp.cpp duma-2.5.15/dumapp.cpp +--- duma-2.5.15.orig/dumapp.cpp 2008-08-03 22:46:06.000000000 +0200 ++++ duma-2.5.15/dumapp.cpp 2016-07-10 21:55:22.670386099 +0200 +@@ -190,7 +190,9 @@ + * (11) = (a) ; ASW + */ + void * DUMA_CDECL operator new( DUMA_SIZE_T size ) ++#ifdef DUMA_EXCEPTION_SPECS + throw(std::bad_alloc) ++#endif + { + return duma_new_operator(size, EFA_NEW_ELEM, true DUMA_PARAMS_UK); + } +@@ -254,7 +256,9 @@ + * (21) = (a) ; AAW + */ + void * DUMA_CDECL operator new[]( DUMA_SIZE_T size ) ++#ifdef DUMA_EXCEPTION_SPECS + throw(std::bad_alloc) ++#endif + { + return duma_new_operator(size, EFA_NEW_ARRAY, true DUMA_PARAMS_UK); + } +diff -durN duma-2.5.15.orig/dumapp.h duma-2.5.15/dumapp.h +--- duma-2.5.15.orig/dumapp.h 2009-04-11 14:41:44.000000000 +0200 ++++ duma-2.5.15/dumapp.h 2016-07-10 21:55:22.670386099 +0200 +@@ -35,6 +35,10 @@ + + #include "duma.h" + ++#if __cplusplus < 201103L ++ #define DUMA_EXCEPTION_SPECS 1 ++#endif ++ + /* remove previous macro definitions */ + #include "noduma.h" + diff --git a/package/duma/duma.mk b/package/duma/duma.mk index 5e862ab25e..a8348b95a2 100644 --- a/package/duma/duma.mk +++ b/package/duma/duma.mk @@ -18,18 +18,18 @@ DUMA_OPTIONS = \ # The dependency of some source files in duma_config.h, which is generated at # build time, is not specified in the Makefile. Force non-parallel build. define DUMA_BUILD_CMDS - $(MAKE1) $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_MAKE_ENV) $(MAKE1) $(TARGET_CONFIGURE_OPTS) \ OS=linux \ DUMA_OPTIONS="$(DUMA_OPTIONS)" \ $(DUMA_CPP) -C $(@D) endef define DUMA_INSTALL_STAGING_CMDS - $(MAKE) OS=linux prefix=$(STAGING_DIR)/usr install -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) OS=linux prefix=$(STAGING_DIR)/usr install -C $(@D) endef define DUMA_INSTALL_TARGET_CMDS - $(MAKE) OS=linux prefix=$(TARGET_DIR)/usr install -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) OS=linux prefix=$(TARGET_DIR)/usr install -C $(@D) endef $(eval $(generic-package)) diff --git a/package/dvb-apps/dvb-apps.mk b/package/dvb-apps/dvb-apps.mk index b5b8a1f09c..c52252c816 100644 --- a/package/dvb-apps/dvb-apps.mk +++ b/package/dvb-apps/dvb-apps.mk @@ -30,11 +30,13 @@ define DVB_APPS_BUILD_CMDS endef define DVB_APPS_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) $(DVB_APPS_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(DVB_APPS_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install endef define DVB_APPS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(DVB_APPS_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(DVB_APPS_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/dvblast/Config.in b/package/dvblast/Config.in index 1ea8f93416..b7f0c065bf 100644 --- a/package/dvblast/Config.in +++ b/package/dvblast/Config.in @@ -4,13 +4,13 @@ config BR2_PACKAGE_DVBLAST select BR2_PACKAGE_LIBEV select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE depends on !BR2_bfin # libev - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # clock_nanosleep() help DVBlast is a simple and powerful MPEG-2/TS demux and streaming application. http://www.videolan.org/projects/dvblast.html -comment 'dvblast needs a toolchain w/ threads' +comment "dvblast needs a toolchain w/ NPTL" depends on !BR2_bfin # libev - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/dvdauthor/Config.in b/package/dvdauthor/Config.in index 6f8e2e4380..8b2bcb3d6f 100644 --- a/package/dvdauthor/Config.in +++ b/package/dvdauthor/Config.in @@ -17,13 +17,8 @@ if BR2_PACKAGE_DVDAUTHOR config BR2_PACKAGE_DVDAUTHOR_DVDUNAUTHOR bool "dvdunauthor" select BR2_PACKAGE_LIBDVDREAD - depends on !BR2_STATIC_LIBS # libdvdread help This option enables the dvdunauthor program, which requires libdvdread. -comment "dvdunauthor needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS - endif - diff --git a/package/dvdauthor/dvdauthor.mk b/package/dvdauthor/dvdauthor.mk index 6b90c43c3e..e982a40e40 100644 --- a/package/dvdauthor/dvdauthor.mk +++ b/package/dvdauthor/dvdauthor.mk @@ -40,6 +40,10 @@ endif ifeq ($(BR2_PACKAGE_DVDAUTHOR_DVDUNAUTHOR),y) DVDAUTHOR_DEPENDENCIES += libdvdread +# dvdauthor configure does not use pkg-config to detect libdvdread +ifeq ($(BR2_PACKAGE_LIBDVDCSS)$(BR2_STATIC_LIBS),yy) +DVDAUTHOR_CONF_ENV += LIBS="-ldvdcss" +endif DVDAUTHOR_CONF_OPTS += --enable-dvdunauthor else DVDAUTHOR_CONF_OPTS += --disable-dvdunauthor diff --git a/package/e2fsprogs/0002-MCONFIG.in-handle-CLOCK_GETTIME_LIB.patch b/package/e2fsprogs/0002-MCONFIG.in-handle-CLOCK_GETTIME_LIB.patch new file mode 100644 index 0000000000..bd86c4e21a --- /dev/null +++ b/package/e2fsprogs/0002-MCONFIG.in-handle-CLOCK_GETTIME_LIB.patch @@ -0,0 +1,35 @@ +From b5baf15b36107925186d89af9097b4b8e2d7cad6 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 21 Sep 2016 08:38:21 +0200 +Subject: [PATCH] MCONFIG.in: handle CLOCK_GETTIME_LIB + +Commit 62bc243f1bfe623312a350e4cd0d2e17a69aac45 ("fuse2fs: might need +librt") added a check for the clock_gettime() to verify whether linking +with the librt library is needed or not to use this function. + +However, this commit forgot the change in MCONFIG.in that allows to +define the make variable CLOCK_GETTIME_LIB from the CLOCK_GETTIME_LIB +variable substituted by the configure script. Due to this, from a make +perspective $(CLOCK_GETTIME_LIB) is always empty, and we get link +failure on platforms where clock_gettime() is available in librt. + +Signed-off-by: Thomas Petazzoni +--- + MCONFIG.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/MCONFIG.in b/MCONFIG.in +index e82963d..9ba9ce2 100644 +--- a/MCONFIG.in ++++ b/MCONFIG.in +@@ -125,6 +125,7 @@ LIBSUPPORT = $(LIBINTL) $(LIB)/libsupport@STATIC_LIB_EXT@ + LIBBLKID = @LIBBLKID@ @PRIVATE_LIBS_CMT@ $(LIBUUID) + LIBINTL = @LIBINTL@ + SYSLIBS = @LIBS@ ++CLOCK_GETTIME_LIB = @CLOCK_GETTIME_LIB@ + DEPLIBSS = $(LIB)/libss@LIB_EXT@ + DEPLIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ + DEPLIBUUID = @DEPLIBUUID@ +-- +2.7.4 + diff --git a/package/e2fsprogs/Config.in b/package/e2fsprogs/Config.in index e540337d7f..d1914a9953 100644 --- a/package/e2fsprogs/Config.in +++ b/package/e2fsprogs/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_E2FSPROGS bool "e2fsprogs" - depends on BR2_USE_WCHAR # util-linux depends on BR2_USE_MMU # util-linux/libblkid select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBBLKID @@ -51,7 +50,7 @@ config BR2_PACKAGE_E2FSPROGS_E4DEFRAG depends on !BR2_nios2 # fallocate not implemented depends on !BR2_TOOLCHAIN_USES_UCLIBC # sync_file_range not impl -comment "e4defrag needs an (e)glibc or musl toolchain" +comment "e4defrag needs a glibc or musl toolchain" depends on BR2_TOOLCHAIN_USES_UCLIBC config BR2_PACKAGE_E2FSPROGS_FILEFRAG @@ -62,6 +61,15 @@ config BR2_PACKAGE_E2FSPROGS_FSCK bool "fsck" default y +config BR2_PACKAGE_E2FSPROGS_FUSE2FS + bool "fuse2fs" + depends on !BR2_STATIC_LIBS # libfuse + depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse + select BR2_PACKAGE_LIBFUSE + +comment "fuse2fs needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + config BR2_PACKAGE_E2FSPROGS_LOGSAVE bool "logsave" default y @@ -91,7 +99,3 @@ config BR2_PACKAGE_E2FSPROGS_UUIDGEN default y endif - -comment "e2fsprogs needs a toolchain w/ wchar" - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR diff --git a/package/e2fsprogs/e2fsprogs.hash b/package/e2fsprogs/e2fsprogs.hash index 1585037750..5fd9f3d6b4 100644 --- a/package/e2fsprogs/e2fsprogs.hash +++ b/package/e2fsprogs/e2fsprogs.hash @@ -1,2 +1,2 @@ -# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.13/sha256sums.asc -sha256 e16474b5a3a30f9197160c4b91bd48d5a463583049c0fcc405b6f0f7075aa0c7 e2fsprogs-1.42.13.tar.xz +# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.43.3/sha256sums.asc +sha256 744ca4e9a8e6c943601b2744d1ae658e5f37d35b5ea5b1dea86985320bd87f37 e2fsprogs-1.43.3.tar.xz diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk index 3de4cd4872..0253510bf7 100644 --- a/package/e2fsprogs/e2fsprogs.mk +++ b/package/e2fsprogs/e2fsprogs.mk @@ -4,17 +4,20 @@ # ################################################################################ -E2FSPROGS_VERSION = 1.42.13 +E2FSPROGS_VERSION = 1.43.3 E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION) E2FSPROGS_LICENSE = GPLv2, libuuid BSD-3c, libss and libet MIT-like with advertising clause -E2FSPROGS_LICENSE_FILES = COPYING lib/uuid/COPYING lib/ss/mit-sipb-copyright.h lib/et/internal.h +E2FSPROGS_LICENSE_FILES = NOTICE lib/uuid/COPYING lib/ss/mit-sipb-copyright.h lib/et/internal.h E2FSPROGS_INSTALL_STAGING = YES -E2FSPROGS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-libs +E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux +# we don't have a host-util-linux +HOST_E2FSPROGS_DEPENDENCIES = host-pkgconf # e4defrag doesn't build on older systems like RHEL5.x, and we don't # need it on the host anyway. -HOST_E2FSPROGS_CONF_OPTS += --disable-defrag +# Disable fuse2fs as well to avoid carrying over deps, and it's unused +HOST_E2FSPROGS_CONF_OPTS += --disable-defrag --disable-fuse2fs E2FSPROGS_CONF_OPTS = \ $(if $(BR2_STATIC_LIBS),,--enable-elf-shlibs) \ @@ -30,26 +33,48 @@ E2FSPROGS_CONF_OPTS = \ --disable-testio-debug \ --disable-rpath +ifeq ($(BR2_PACKAGE_E2FSPROGS_FUSE2FS),y) +E2FSPROGS_CONF_OPTS += --enable-fuse2fs +E2FSPROGS_DEPENDENCIES += libfuse +else +E2FSPROGS_CONF_OPTS += --disable-fuse2fs +endif + ifeq ($(BR2_nios2),y) E2FSPROGS_CONF_ENV += ac_cv_func_fallocate=no endif +# Some programs are built for the host, but use definitions guessed by +# the configure script (i.e with the cross-compiler). Help them by +# saying that is available on the host, which is needed +# for util/subst.c to build properly. +E2FSPROGS_CONF_ENV += BUILD_CFLAGS="-DHAVE_SYS_STAT_H" + +# Disable use of the host magic.h, as on older hosts (e.g. RHEL 5) +# it doesn't provide definitions expected by e2fsprogs support lib. +HOST_E2FSPROGS_CONF_ENV += \ + ac_cv_header_magic_h=no \ + ac_cv_lib_magic_magic_file=no + ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) # util-linux libuuid pulls in libintl if needed, so ensure we also # link against it, otherwise static linking fails E2FSPROGS_CONF_ENV += LIBS=-lintl endif -E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux - -E2FSPROGS_MAKE_OPTS = \ - LDCONFIG=true +E2FSPROGS_MAKE_OPTS = LDCONFIG=true +E2FSPROGS_INSTALL_STAGING_OPTS = \ + DESTDIR=$(STAGING_DIR) \ + LDCONFIG=true \ + install-libs +E2FSPROGS_INSTALL_TARGET_OPTS = \ + DESTDIR=$(TARGET_DIR) \ + LDCONFIG=true \ + install define HOST_E2FSPROGS_INSTALL_CMDS $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install install-libs endef -# we don't have a host-util-linux -HOST_E2FSPROGS_DEPENDENCIES = host-pkgconf # binaries to keep or remove E2FSPROGS_BINTARGETS_$(BR2_PACKAGE_E2FSPROGS_BADBLOCKS) += usr/sbin/badblocks @@ -136,14 +161,5 @@ ifeq ($(BR2_PACKAGE_E2FSPROGS_TUNE2FS),y) E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_TUNE2FS_SYMLINK endif -# systemd really wants to have fsck in /sbin -define E2FSPROGS_TARGET_FSCK_SYMLINK - ln -sf ../usr/sbin/fsck $(TARGET_DIR)/sbin/fsck -endef - -ifeq ($(BR2_PACKAGE_E2FSPROGS_FSCK),y) -E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FSCK_SYMLINK -endif - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/e2tools/Config.in b/package/e2tools/Config.in index 5fc55a686e..75029f74aa 100644 --- a/package/e2tools/Config.in +++ b/package/e2tools/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_E2TOOLS bool "e2tools" select BR2_PACKAGE_E2FSPROGS depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_USE_WCHAR # e2fsprogs + depends on BR2_USE_WCHAR # uses wchar_t depends on BR2_USE_MMU # e2fsprogs help E2tools is a simple set of GPL'ed utilities to read, write, diff --git a/package/e2tools/e2tools.hash b/package/e2tools/e2tools.hash new file mode 100644 index 0000000000..4cec81e942 --- /dev/null +++ b/package/e2tools/e2tools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 37bbd705170dff80720d68916f8d90803d71987e1b60f7149a285a7fcd539214 e2tools-3158ef18a903ca4a98b8fa220c9fc5c133d8bdf6.tar.gz diff --git a/package/e2tools/e2tools.mk b/package/e2tools/e2tools.mk index 789519fe8d..1f3bb5cfb6 100644 --- a/package/e2tools/e2tools.mk +++ b/package/e2tools/e2tools.mk @@ -13,6 +13,7 @@ E2TOOLS_LICENSE = GPLv2 E2TOOLS_LICENSE_FILES = COPYING E2TOOLS_DEPENDENCIES = e2fsprogs E2TOOLS_CONF_ENV = LIBS="-lpthread" +HOST_E2TOOLS_DEPENDENCIES = host-e2fsprogs HOST_E2TOOLS_CONF_ENV = LIBS="-lpthread" $(eval $(autotools-package)) diff --git a/package/easydbus/Config.in b/package/easydbus/Config.in new file mode 100644 index 0000000000..51519d61d2 --- /dev/null +++ b/package/easydbus/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_EASYDBUS + bool "easydbus" + select BR2_PACKAGE_LIBGLIB2 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + help + Easy to use DBus library for Lua. + + https://github.com/mniestroj/easydbus + +comment "easydbus needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/easydbus/easydbus.hash b/package/easydbus/easydbus.hash new file mode 100644 index 0000000000..0ef73f23f9 --- /dev/null +++ b/package/easydbus/easydbus.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3e5907664f5dfebbc0e652faf87564fd58dbd639742f442c100ef2db8be46e52 easydbus-59c340f2cd2c92ded82f9d4436866847f295faab.tar.gz diff --git a/package/easydbus/easydbus.mk b/package/easydbus/easydbus.mk new file mode 100644 index 0000000000..376b09bfca --- /dev/null +++ b/package/easydbus/easydbus.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# easydbus +# +################################################################################ + +EASYDBUS_VERSION = 59c340f2cd2c92ded82f9d4436866847f295faab +EASYDBUS_SITE = $(call github,mniestroj,easydbus,$(EASYDBUS_VERSION)) +EASYDBUS_DEPENDENCIES = luainterpreter libglib2 +EASYDBUS_LICENSE = MIT +EASYDBUS_LICENSE_FILES = LICENSE + +$(eval $(cmake-package)) diff --git a/package/ed/ed.hash b/package/ed/ed.hash index 7871fb11bf..22c1e671dc 100644 --- a/package/ed/ed.hash +++ b/package/ed/ed.hash @@ -1,2 +1,4 @@ -# From http://lists.gnu.org/archive/html/bug-ed/2013-06/msg00001.html -md5 565b6d1d5a9a8816b9b304fc4ed9405d ed-1.9.tar.gz +# From http://lists.gnu.org/archive/html/bug-ed/2017-01/msg00002.html +sha1 a91f785f7e16dc68e1c9c86d532ebd9698171ba0 ed-1.14.1.tar.lz +# Locally computed +sha256 ffb97eb8f2a2b5a71a9b97e3872adce953aa1b8958e04c5b7bf11d556f32552a ed-1.14.1.tar.lz diff --git a/package/ed/ed.mk b/package/ed/ed.mk index f3bcb749b6..50adeb4ec5 100644 --- a/package/ed/ed.mk +++ b/package/ed/ed.mk @@ -4,28 +4,35 @@ # ################################################################################ -ED_VERSION = 1.9 +ED_VERSION = 1.14.1 ED_SITE = $(BR2_GNU_MIRROR)/ed +ED_SOURCE = ed-$(ED_VERSION).tar.lz ED_CONF_OPTS = \ CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" +ED_DEPENDENCIES = host-lzip ED_LICENSE = GPLv3+ ED_LICENSE_FILES = COPYING +define ED_EXTRACT_CMDS + $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(ED_SOURCE) | \ + tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - +endef + define ED_CONFIGURE_CMDS (cd $(@D); \ - ./configure \ + $(TARGET_MAKE_ENV) ./configure \ --prefix=/usr \ $(TARGET_CONFIGURE_OPTS) \ ) endef define ED_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define ED_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install endef $(eval $(generic-package)) diff --git a/package/efibootmgr/0001-Allow-build-with-uClibc.patch b/package/efibootmgr/0001-Allow-build-with-uClibc.patch new file mode 100644 index 0000000000..fd29233dc3 --- /dev/null +++ b/package/efibootmgr/0001-Allow-build-with-uClibc.patch @@ -0,0 +1,40 @@ +From bbfcc60497c326576bb23cb01d90115ef3cf6947 Mon Sep 17 00:00:00 2001 +From: Andy Shevchenko +Date: Fri, 25 Nov 2016 20:26:52 +0200 +Subject: [PATCH] Remove unneeded include + +This fixes the build with uClibc. + +Signed-off-by: Andy Shevchenko +--- + src/efibootdump.c | 1 - + src/eficonman.c | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/src/efibootdump.c b/src/efibootdump.c +index 6ff8360..7c5a1c5 100644 +--- a/src/efibootdump.c ++++ b/src/efibootdump.c +@@ -19,7 +19,6 @@ + #include + #include + #include +-#include + #include + + #include "error.h" +diff --git a/src/eficonman.c b/src/eficonman.c +index 2c2be38..9bfae79 100644 +--- a/src/eficonman.c ++++ b/src/eficonman.c +@@ -17,7 +17,6 @@ + #include + #include + #include +-#include + #include + + #define _(String) gettext (String) +-- +2.10.2 + diff --git a/package/efibootmgr/Config.in b/package/efibootmgr/Config.in new file mode 100644 index 0000000000..57874fc426 --- /dev/null +++ b/package/efibootmgr/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_EFIBOOTMGR + bool "efibootmgr" + depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS # efivar + depends on !BR2_STATIC_LIBS # efivar + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # efivar + depends on !BR2_TOOLCHAIN_USES_MUSL # efivar + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # efivar + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + depends on BR2_USE_WCHAR # gettext + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT + select BR2_PACKAGE_EFIVAR + help + A Linux user-space application to modify the Intel Extensible + Firmware Interface (EFI) Boot Manager. This application can create + and destroy boot entries, change the boot order, change the next + running boot option, and more. + + https://github.com/rhinstaller/efibootmgr + +comment "efibootmgr needs a glibc or uClibc toolchain w/ wchar, dynamic library, headers >= 3.12, gcc >= 4.9" + depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \ + BR2_TOOLCHAIN_USES_MUSL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + !BR2_USE_WCHAR + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS diff --git a/package/efibootmgr/efibootmgr.hash b/package/efibootmgr/efibootmgr.hash new file mode 100644 index 0000000000..f71dced53f --- /dev/null +++ b/package/efibootmgr/efibootmgr.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 3f260491e2c62e93cb6347ea6f21aaa5f93152e9e7f0269d314623769d82e473 efibootmgr-14.tar.gz diff --git a/package/efibootmgr/efibootmgr.mk b/package/efibootmgr/efibootmgr.mk new file mode 100644 index 0000000000..487c8ca666 --- /dev/null +++ b/package/efibootmgr/efibootmgr.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# efibootmgr +# +################################################################################ + +EFIBOOTMGR_VERSION = 14 +EFIBOOTMGR_SITE = $(call github,rhinstaller,efibootmgr,$(EFIBOOTMGR_VERSION)) +EFIBOOTMGR_LICENSE = GPLv2+ +EFIBOOTMGR_LICENSE_FILES = COPYING +EFIBOOTMGR_DEPENDENCIES = efivar $(if $(BR2_NEEDS_GETTEXT),gettext) +EFIBOOTMGR_LDFLAGS = $(TARGET_LDFLAGS) $(if $(BR2_NEEDS_GETTEXT),-lintl) + +define EFIBOOTMSR_PATCH_HEADER_PATH + $(SED) 's,-I/,-I$(STAGING_DIR)/,' $(@D)/Makefile +endef + +EFIBOOTMGR_POST_PATCH_HOOKS += EFIBOOTMSR_PATCH_HEADER_PATH + +define EFIBOOTMGR_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) \ + LDFLAGS="$(EFIBOOTMGR_LDFLAGS)" $(MAKE1) -C $(@D) +endef + +define EFIBOOTMGR_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/efivar/0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch b/package/efivar/0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch new file mode 100644 index 0000000000..2bc3ff243f --- /dev/null +++ b/package/efivar/0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch @@ -0,0 +1,29 @@ +From 314eb67b239e60c2ed3700e2baf9cd0e590465f3 Mon Sep 17 00:00:00 2001 +From: Peter Jones +Date: Thu, 27 Oct 2016 09:19:18 -0400 +Subject: [PATCH] Use -z muldefs to avoid the multiple definitions bug + without -flto + +This fixes github issue #64 + +Signed-off-by: Peter Jones +Signed-off-by: Andy Shevchenko +--- + Make.defaults | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Make.defaults b/Make.defaults +index aa974d9..c9d599f 100644 +--- a/Make.defaults ++++ b/Make.defaults +@@ -32,6 +32,7 @@ cflags = $(CFLAGS) -I${TOPDIR}/src/include/efivar/ \ + clang_ccldflags = + gcc_ccldflags = + ccldflags = $(cflags) -L. $(CCLDFLAGS) $(LDFLAGS) \ ++ -Wl,-z,muldefs \ + $(if $(findstring clang,$(CCLD)),$(clang_ccldflags),) \ + $(if $(findstring gcc,$(CCLD)),$(gcc_ccldflags),) \ + $(call pkg-config-ccldflags) +-- +2.10.2 + diff --git a/package/efivar/0002-Allow-build-with-uClibc.patch b/package/efivar/0002-Allow-build-with-uClibc.patch new file mode 100644 index 0000000000..7c195872b0 --- /dev/null +++ b/package/efivar/0002-Allow-build-with-uClibc.patch @@ -0,0 +1,38 @@ +From 2255601757a8a58baddad2d37d0bcc6b003a3732 Mon Sep 17 00:00:00 2001 +From: Andy Shevchenko +Date: Fri, 25 Nov 2016 19:42:27 +0200 +Subject: [PATCH] Allow build with uClibc + +Basically this replaces type definitions in . + +Signed-off-by: Andy Shevchenko +--- + src/export.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/export.c b/src/export.c +index 7f2d4dd..72c02d1 100644 +--- a/src/export.c ++++ b/src/export.c +@@ -21,11 +21,17 @@ + #include + #include + #include +-#include + + #include + #include "lib.h" + ++#ifdef __UCLIBC__ ++typedef int_least16_t char16_t; ++typedef int_least32_t char32_t; ++#else ++#include ++#endif ++ + #define EFIVAR_MAGIC 0xf3df1597 + + #define ATTRS_UNSET 0xa5a5a5a5a5a5a5a5 +-- +2.10.2 + diff --git a/package/efivar/Config.in b/package/efivar/Config.in new file mode 100644 index 0000000000..0ec836007b --- /dev/null +++ b/package/efivar/Config.in @@ -0,0 +1,34 @@ +config BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS + bool + depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 \ + || BR2_powerpc64le || BR2_mipsel || BR2_mips64el + default y + +config BR2_PACKAGE_EFIVAR + bool "efivar" + depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # linux/nvme.h + # linux/nvme.h has been renamed to linux/nvme_ioctl.h since 4.4, + # and the efivar source handles that situation. However, some + # Sourcery CodeBench toolchains use 4.4 kernel headers but they + # don't have that header file renamed, and that is causing build + # failures. So, prevent this package to be built using those + # toolchains. + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + # doesn't build with musl due to lack of __bswap_constant_16 + depends on !BR2_TOOLCHAIN_USES_MUSL + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + select BR2_PACKAGE_POPT + help + Tools and libraries to manipulate EFI variables + + https://github.com/rhinstaller/efivar + +comment "efivar needs a glibc or uClibc toolchain w/ dynamic library, headers >= 3.12, gcc >= 4.9" + depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \ + BR2_TOOLCHAIN_USES_MUSL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS diff --git a/package/efivar/efivar.hash b/package/efivar/efivar.hash new file mode 100644 index 0000000000..e337b96450 --- /dev/null +++ b/package/efivar/efivar.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 20709c76311f8eb8be92977b7ac008ce62501fa9f7fe885a784321540fc352f9 efivar-30.tar.gz diff --git a/package/efivar/efivar.mk b/package/efivar/efivar.mk new file mode 100644 index 0000000000..c31d87b840 --- /dev/null +++ b/package/efivar/efivar.mk @@ -0,0 +1,51 @@ +################################################################################ +# +# efivar +# +################################################################################ + +EFIVAR_VERSION = 30 +EFIVAR_SITE = $(call github,rhinstaller,efivar,$(EFIVAR_VERSION)) +EFIVAR_LICENSE = LGPLv2.1 +EFIVAR_LICENSE_FILES = COPYING +EFIVAR_DEPENDENCIES = popt +EFIVAR_INSTALL_STAGING = YES + +# BINTARGETS is set to skip efivar-static which requires static popt, +# and since we depend on dynamic libraries, efivar will never be built +# in a static-only environment. +# -fPIC is needed at least on MIPS, otherwise fails to build shared +# -library. +EFIVAR_MAKE_OPTS = \ + libdir=/usr/lib \ + BINTARGETS=efivar \ + LDFLAGS="$(TARGET_LDFLAGS) -fPIC" + +define EFIVAR_BUILD_CMDS + # makeguids is an internal host tool and must be built separately with + # $(HOST_CC), otherwise it gets cross-built. + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) \ + CFLAGS="$(HOST_CFLAGS) -std=gnu99" \ + $(MAKE) -C $(@D)/src gcc_cflags= makeguids + + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D) \ + AR=$(TARGET_AR) NM=$(TARGET_NM) RANLIB=$(TARGET_RANLIB) \ + $(EFIVAR_MAKE_OPTS) \ + all +endef + +define EFIVAR_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D) \ + $(EFIVAR_MAKE_OPTS) \ + DESTDIR="$(STAGING_DIR)" \ + install +endef + +define EFIVAR_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D) \ + $(EFIVAR_MAKE_OPTS) \ + DESTDIR="$(TARGET_DIR)" \ + install +endef + +$(eval $(generic-package)) diff --git a/package/efl/Config.in b/package/efl/Config.in index 88e2c360f7..5e89af602c 100644 --- a/package/efl/Config.in +++ b/package/efl/Config.in @@ -1,9 +1,10 @@ config BR2_PACKAGE_EFL bool "efl" + # g++ issue with 4.4.5, tested with g++ 4.7.2 + depends on BR2_HOST_GCC_AT_LEAST_4_7 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_PACKAGE_HAS_UDEV # libudev - # https://phab.enlightenment.org/T2728 - depends on BR2_PACKAGE_LUA_5_1 # needs lua 5.1, broken with 5.2+ + depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS # luajit depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads depends on BR2_USE_MMU depends on BR2_USE_WCHAR # use wchar_t @@ -12,10 +13,10 @@ config BR2_PACKAGE_EFL select BR2_PACKAGE_FREETYPE select BR2_PACKAGE_JPEG # Emile needs libjpeg select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency - select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND - select BR2_PACKAGE_UTIL_LINUX - # libblkid is part of required tools, see EFL's README. - select BR2_PACKAGE_UTIL_LINUX_LIBBLKID + # https://phab.enlightenment.org/T2728 + select BR2_PACKAGE_LUAJIT # Lua support broken + select BR2_PACKAGE_LZ4 + select BR2_PACKAGE_ZLIB help Enlightenment Foundation Libraries @@ -35,6 +36,19 @@ config BR2_PACKAGE_EFL_BULLET simply not tested so you are on your own in terms of ensuring everything works if you do this. +config BR2_PACKAGE_EFL_EEZE + bool "Enable eeze (udev) support (recommended)" + depends on BR2_PACKAGE_HAS_UDEV # libudev + default y + help + Eeze is EFL's hardware abstraction layer on top of udev. + Having it off will disable some hardware detection, such as + 'drm' graphics engine or 'elput', as well as mounting + removable media. + +comment "eeze needs udev /dev management" + depends on !BR2_PACKAGE_HAS_UDEV + config BR2_PACKAGE_EFL_FONTCONFIG bool "Enable fontconfig support (recommended)" select BR2_PACKAGE_FONTCONFIG @@ -96,16 +110,24 @@ config BR2_PACKAGE_EFL_PULSEAUDIO config BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT bool "Enable libmount support (recommended)" + depends on BR2_PACKAGE_EFL_EEZE + select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + # libblkid is part of required tools, see EFL's README. + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID default y help Libmount is used heavily inside Eeze for support of removable devices etc... and disabling this will hurt support for Enlightenment and its filemanager. +comment "efl's libmount support needs udev /dev management (eeze)" + depends on !BR2_PACKAGE_EFL_EEZE + config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG bool default y if BR2_PACKAGE_EFL_BULLET && \ + BR2_PACKAGE_EFL_EEZE && \ BR2_PACKAGE_EFL_FONTCONFIG && \ BR2_PACKAGE_EFL_GSTREAMER1 && \ BR2_PACKAGE_EFL_LIBFRIBIDI && \ @@ -117,6 +139,18 @@ config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG comment "Warning: one of the recommended option for EFL is not enabled" depends on !BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG +config BR2_PACKAGE_EFL_EOLIAN_CPP + bool "Enable Eolian C++ bindings" + depends on BR2_HOST_GCC_AT_LEAST_4_8 # Eolian (host) needs C++11 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # Eolian needs C++11 + help + Eolian is an EO object parser and code generator. + With this option enabled Eolian will handle automatic generation + of EFL bindings for the C++11 language. + +comment "Eolian needs host and target gcc >= 4.8" + depends on !BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + comment "libecore video support" config BR2_PACKAGE_EFL_FB @@ -138,6 +172,77 @@ config BR2_PACKAGE_EFL_X_XLIB select BR2_PACKAGE_XLIB_LIBXTST select BR2_PACKAGE_XPROTO_GLPROTO +config BR2_PACKAGE_EFL_WAYLAND + bool "Wayland support" + depends on BR2_PACKAGE_WAYLAND + depends on BR2_TOOLCHAIN_HAS_THREADS # Evas DRM Engine -> libdrm + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # Evas DRM Engine + depends on BR2_PACKAGE_EFL_EEZE # efl drm + depends on BR2_PACKAGE_EFL_OPENGLES # OpenGL ES with EGL support only + select BR2_PACKAGE_EFL_DRM + +comment "Wayland support needs udev /dev management (eeze) and OpenGL ES w/ EGL, threads" + depends on BR2_PACKAGE_WAYLAND + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \ + || !BR2_PACKAGE_EFL_OPENGLES || !BR2_PACKAGE_EFL_EEZE + +choice + bool "OpenGL support" + help + libevas can be configured to use HW acceleration with OpenGL or + OpenGL ES. + +config BR2_PACKAGE_EFL_OPENGL + bool "OpenGL" + depends on BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_EFL_X_XLIB + +comment "OpenGL support needs X11 and an OpenGL provider" + depends on !BR2_PACKAGE_HAS_LIBGL || !BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_EFL_OPENGLES + bool "OpenGL ES (w/ EGL)" + depends on BR2_PACKAGE_HAS_LIBEGL + depends on BR2_PACKAGE_HAS_LIBGLES + +comment "OpenGL ES support needs an OpenGL ES w/ EGL provider" + depends on !BR2_PACKAGE_HAS_LIBGLES || !BR2_PACKAGE_HAS_LIBEGL + +config BR2_PACKAGE_EFL_OPENGL_NONE + bool "none" + +endchoice # OpenGL support + +config BR2_PACKAGE_EFL_ELPUT + bool "Elput" + depends on BR2_PACKAGE_EFL_EEZE + select BR2_PACKAGE_LIBINPUT + select BR2_PACKAGE_LIBXKBCOMMON + help + The elput library is an efl abstraction for the libinput library + which can be used by various other subsystems (ecore_fb, + ecore_drm, etc) to handle interfacing with libinput without + having to duplicate the code in each subsystem. + +comment "Elput support needs udev /dev management (eeze)" + depends on !BR2_PACKAGE_EFL_EEZE + +config BR2_PACKAGE_EFL_DRM + bool "Evas DRM Engine" + depends on BR2_PACKAGE_EFL_EEZE + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # require libgbm from mesa3d + select BR2_PACKAGE_EFL_ELPUT + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBXKBCOMMON + help + This option enable building support for the Evas DRM Engine. + +comment "Evas DRM Engine needs udev /dev management (eeze) and mesa3d w/ EGL support, threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \ + || !BR2_PACKAGE_EFL_EEZE + comment "libevas loaders" config BR2_PACKAGE_EFL_PNG @@ -147,9 +252,12 @@ config BR2_PACKAGE_EFL_PNG This enables the loader code that loads png files using libpng. +# JP2K support require openjpeg 1.x (libopenjpeg1.pc) which is not +# available in Buildroot anymore. config BR2_PACKAGE_EFL_JP2K bool "libevas jp2k loader" select BR2_PACKAGE_OPENJPEG + depends on BROKEN # require openjpeg 1.x help This enables the loader code that loads jp2k files using openjpeg. @@ -179,13 +287,25 @@ config BR2_PACKAGE_EFL_WEBP help This enables the loader code that loads images using WebP. +config BR2_PACKAGE_EFL_LIBRAW + bool "libraw loader" + select BR2_PACKAGE_LIBRAW + help + This option enables the Evas generic Libraw loader + +config BR2_PACKAGE_EFL_SVG + bool "SVG loader" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz + select BR2_PACKAGE_LIBRSVG + select BR2_PACKAGE_CAIRO + help + This option enables the Evas generic SVG loader + endif # BR2_PACKAGE_EFL -comment "efl needs udev /dev management and a toolchain w/ C++, dynamic library, threads, wchar" - depends on !BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP \ +comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.7, threads, wchar" + depends on !BR2_INSTALL_LIBSTDCPP \ + || !BR2_HOST_GCC_AT_LEAST_4_7 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \ || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR - depends on BR2_USE_MMU - -comment "efl needs lua 5.1" - depends on !BR2_PACKAGE_LUA_5_1 + depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS depends on BR2_USE_MMU diff --git a/package/efl/efl.hash b/package/efl/efl.hash index 6673bb51d6..5d7a90d680 100644 --- a/package/efl/efl.hash +++ b/package/efl/efl.hash @@ -1,2 +1,2 @@ -# From https://download.enlightenment.org/rel/libs/efl/efl-1.15.3.tar.xz.sha256 -sha256 3bac40e6294288034bd7f8902088bf1169cf376f6fd25b7a49854ab561630642 efl-1.15.3.tar.xz +# From https://download.enlightenment.org/rel/libs/efl/efl-1.18.4.tar.xz.sha256 +sha256 39ebc07e37437d6ecdeb0f645783484e28a882b38f7e619ad12c2bf9b5548025 efl-1.18.4.tar.xz diff --git a/package/efl/efl.mk b/package/efl/efl.mk index 2ea2592115..1e54f72810 100644 --- a/package/efl/efl.mk +++ b/package/efl/efl.mk @@ -4,7 +4,7 @@ # ################################################################################ -EFL_VERSION = 1.15.3 +EFL_VERSION = 1.18.4 EFL_SOURCE = efl-$(EFL_VERSION).tar.xz EFL_SITE = http://download.enlightenment.org/rel/libs/efl EFL_LICENSE = BSD-2c, LGPLv2.1+, GPLv2+ @@ -19,43 +19,67 @@ EFL_LICENSE_FILES = \ EFL_INSTALL_STAGING = YES -EFL_DEPENDENCIES = host-pkgconf host-efl dbus freetype jpeg lua udev \ - util-linux zlib - -# Regenerate the autotools: -# - to fix an issue in eldbus-codegen: https://phab.enlightenment.org/T2718 -EFL_AUTORECONF = YES -EFL_GETTEXTIZE = YES +EFL_DEPENDENCIES = host-pkgconf host-efl host-luajit dbus freetype \ + jpeg luajit lz4 zlib # Configure options: -# --disable-cxx-bindings: disable C++11 bindings. +# --disable-lua-old: build elua for the target. +# --disable-poppler: disable poppler image loader. # --disable-sdl: disable sdl2 support. -# --disable-systemd: disable systemd support. +# --disable-spectre: disable spectre image loader. # --disable-xinput22: disable X11 XInput v2.2+ support. -# --enable-lua-old: disable Elua and remove luajit dependency. -# --with-opengl=none: disable opengl support. +# --enable-liblz4: use liblz4 from lz4 package. +# --with-doxygen: disable doxygen documentation EFL_CONF_OPTS = \ --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ + --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ + --with-eldbus_codegen=$(HOST_DIR)/usr/bin/eldbus-codegen \ + --with-elementary-codegen=$(HOST_DIR)/usr/bin/elementary_codegen \ + --with-elm-prefs-cc=$(HOST_DIR)/usr/bin/elm_prefs_cc \ + --with-elua=$(HOST_DIR)/usr/bin/elua \ --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ - --disable-cxx-bindings \ + --disable-lua-old \ + --disable-poppler \ --disable-sdl \ - --disable-systemd \ + --disable-spectre \ --disable-xinput22 \ - --enable-lua-old \ - --with-opengl=none + --disable-wayland \ + --enable-liblz4 \ + --with-doxygen=no # Disable untested configuration warning. ifeq ($(BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG),) -EFL_CONF_OPTS += --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba +EFL_CONF_OPTS += --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-abb endif -ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y) +ifeq ($(BR2_PACKAGE_EFL_EOLIAN_CPP),y) +EFL_CONF_OPTS += --enable-cxx-bindings \ + --with-eolian-cxx=$(HOST_DIR)/usr/bin/eolian_cxx +else +EFL_CONF_OPTS += --disable-cxx-bindings +endif + +ifeq ($(BR2_PACKAGE_EFL_EEZE),y) +EFL_DEPENDENCIES += udev +EFL_CONF_OPTS += --enable-libeeze +else +EFL_CONF_OPTS += --disable-libeeze +endif + +ifeq ($(BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT),y) EFL_DEPENDENCIES += util-linux EFL_CONF_OPTS += --enable-libmount else EFL_CONF_OPTS += --disable-libmount endif +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +EFL_CONF_OPTS += --enable-systemd +EFL_DEPENDENCIES += systemd +else +EFL_CONF_OPTS += --disable-systemd +endif + ifeq ($(BR2_PACKAGE_FONTCONFIG),y) EFL_CONF_OPTS += --enable-fontconfig EFL_DEPENDENCIES += fontconfig @@ -131,11 +155,11 @@ else EFL_CONF_OPTS += --with-crypto=none endif # BR2_PACKAGE_OPENSSL -ifeq ($(BR2_PACKAGE_WAYLAND),y) -EFL_DEPENDENCIES += wayland libxkbcommon -EFL_CONF_OPTS += --enable-wayland +ifeq ($(BR2_PACKAGE_EFL_ELPUT),y) +EFL_CONF_OPTS += --enable-elput +EFL_DEPENDENCIES += libinput else -EFL_CONF_OPTS += --disable-wayland +EFL_CONF_OPTS += --disable-elput endif ifeq ($(BR2_PACKAGE_EFL_FB),y) @@ -166,6 +190,36 @@ else EFL_CONF_OPTS += --with-x11=none endif +ifeq ($(BR2_PACKAGE_EFL_OPENGL),y) +EFL_CONF_OPTS += --with-opengl=full +EFL_DEPENDENCIES += libgl +# OpenGL ES requires EGL +else ifeq ($(BR2_PACKAGE_EFL_OPENGLES),y) +EFL_CONF_OPTS += --with-opengl=es --enable-egl +EFL_DEPENDENCIES += libegl libgles +else ifeq ($(BR2_PACKAGE_EFL_OPENGL_NONE),y) +EFL_CONF_OPTS += --with-opengl=none +endif + +ifeq ($(BR2_PACKAGE_EFL_DRM),y) +EFL_CONF_OPTS += --enable-drm +EFL_DEPENDENCIES += libdrm libegl mesa3d +else +EFL_CONF_OPTS += --disable-drm +endif + +# The EFL Wayland support requires Evas GLES DRM engine support +# which depends on wayland-client to build. +# So enable gl_drm only when wayland support is selected. +ifeq ($(BR2_PACKAGE_EFL_WAYLAND),y) +EFL_DEPENDENCIES += wayland +EFL_CONF_OPTS += --enable-wayland --enable-gl-drm +else +EFL_CONF_OPTS += --disable-wayland --disable-gl-drm +endif + +EFL_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBXKBCOMMON),libxkbcommon) + # Loaders that need external dependencies needs to be --enable-XXX=yes # otherwise the default is '=static'. # All other loaders are statically built-in @@ -211,6 +265,32 @@ else EFL_CONF_OPTS += --disable-image-loader-webp endif +ifeq ($(BR2_PACKAGE_EFL_LIBRAW),y) +EFL_DEPENDENCIES += libraw +EFL_CONF_OPTS += --enable-libraw +else +EFL_CONF_OPTS += --disable-libraw +endif + +ifeq ($(BR2_PACKAGE_EFL_SVG),y) +EFL_DEPENDENCIES += librsvg cairo +EFL_CONF_OPTS += --enable-librsvg +else +EFL_CONF_OPTS += --disable-librsvg +endif + +ifeq ($(BR2_PACKAGE_UPOWER),) +# upower ecore system module is only useful if upower +# dbus service is available. +# It's not essential, only used to notify applications +# of power state, such as low battery or AC power, so +# they can adapt their power consumption. +define EFL_HOOK_REMOVE_UPOWER + rm -fr $(TARGET_DIR)/usr/lib/ecore/system/upower +endef +EFL_POST_INSTALL_TARGET_HOOKS = EFL_HOOK_REMOVE_UPOWER +endif + $(eval $(autotools-package)) ################################################################################ @@ -220,14 +300,15 @@ $(eval $(autotools-package)) ################################################################################ # We want to build only some host tools used later in the build. -# Actually we want: edje_cc, embryo_cc and eet. +# Actually we want: edje_cc, eet and embryo_cc. eolian_cxx is built only +# if selected for the target. # Host dependencies: # * host-dbus: for Eldbus # * host-freetype: for libevas # * host-libglib2: for libecore # * host-libjpeg, host-libpng: for libevas image loader -# * host-lua: disable luajit dependency +# * host-luajit for Elua tool for the host HOST_EFL_DEPENDENCIES = \ host-pkgconf \ host-dbus \ @@ -235,43 +316,68 @@ HOST_EFL_DEPENDENCIES = \ host-libglib2 \ host-libjpeg \ host-libpng \ - host-lua \ + host-luajit \ host-zlib # Configure options: # --disable-audio, --disable-multisense remove libsndfile dependency. -# --disable-cxx-bindings: disable C++11 bindings. # --disable-fontconfig: remove dependency on fontconfig. # --disable-fribidi: remove dependency on libfribidi. # --disable-gstreamer1: remove dependency on gtreamer 1.0. # --disable-libeeze: remove libudev dependency. # --disable-libmount: remove dependency on host-util-linux libmount. +# --disable-lua-old: build elua for the host. # --disable-physics: remove Bullet dependency. +# --disable-poppler: disable poppler image loader. +# --disable-spectre: disable spectre image loader. # --enable-image-loader-gif=no: disable Gif dependency. # --enable-image-loader-tiff=no: disable Tiff dependency. -# --enable-lua-old: disable Elua and remove luajit dependency. # --with-crypto=none: remove dependencies on openssl or gnutls. +# --with-doxygen: disable doxygen documentation # --with-x11=none: remove dependency on X.org. # Yes I really know what I am doing. HOST_EFL_CONF_OPTS += \ --disable-audio \ - --disable-cxx-bindings \ --disable-fontconfig \ --disable-fribidi \ --disable-gstreamer1 \ --disable-libeeze \ --disable-libmount \ + --disable-libraw \ + --disable-librsvg \ + --disable-lua-old \ --disable-multisense \ --disable-physics \ + --disable-poppler \ + --disable-spectre \ + --disable-xcf \ --enable-image-loader-gif=no \ --enable-image-loader-jpeg=yes \ --enable-image-loader-png=yes \ --enable-image-loader-tiff=no \ - --enable-lua-old \ --with-crypto=none \ + --with-doxygen=no \ --with-glib=yes \ --with-opengl=none \ --with-x11=none \ - --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba + --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-abb + +# Enable Eolian language bindings to provide eolian_cxx tool for the +# host which is required to build Eolian language bindings for the +# target. +ifeq ($(BR2_PACKAGE_EFL_EOLIAN_CPP),y) +HOST_EFL_CONF_OPTS += --enable-cxx-bindings +else +HOST_EFL_CONF_OPTS += --disable-cxx-bindings +endif + +# Always disable upower system module from host as it's +# not useful and would try to use the output/host/var +# system bus which is non-existent and does not contain +# any upower service in it. +define HOST_EFL_HOOK_REMOVE_UPOWER + rm -fr $(HOST_DIR)/usr/lib/ecore/system/upower +endef +HOST_EFL_POST_INSTALL_HOOKS = HOST_EFL_HOOK_REMOVE_UPOWER $(eval $(host-autotools-package)) diff --git a/package/ejabberd/ejabberd.hash b/package/ejabberd/ejabberd.hash index ea85d1cf4a..4284eec8fb 100644 --- a/package/ejabberd/ejabberd.hash +++ b/package/ejabberd/ejabberd.hash @@ -1,4 +1,4 @@ -# From https://www.process-one.net/downloads/ejabberd/15.11/ejabberd-16.01.tgz.md5 +# From https://www.process-one.net/downloads/ejabberd/16.01/ejabberd-16.01.tgz.md5 md5 5e525c25c8f04287217b8a9522d7c942 ejabberd-16.01.tgz # Locally computed sha256 e2cc479d5870539b2e6756690b227969c88a541d464d1fc6e1cbf7270ad7d681 ejabberd-16.01.tgz diff --git a/package/elementary/Config.in b/package/elementary/Config.in deleted file mode 100644 index f356784731..0000000000 --- a/package/elementary/Config.in +++ /dev/null @@ -1,15 +0,0 @@ -config BR2_PACKAGE_ELEMENTARY - bool "elementary" - depends on BR2_PACKAGE_EFL - depends on BR2_TOOLCHAIN_HAS_THREADS # elm_store.c - depends on !BR2_STATIC_LIBS - help - Elementary is a widget toolkit and EFL wrapper and convenience - library to make it easy to build applications and tools with UIs - with less code. - - https://enlightenment.org - -comment "elementary needs a toolchain w/ threads, dynamic library" - depends on BR2_PACKAGE_EFL - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/elementary/elementary.hash b/package/elementary/elementary.hash deleted file mode 100644 index ecdbc8e5bd..0000000000 --- a/package/elementary/elementary.hash +++ /dev/null @@ -1,2 +0,0 @@ -# From https://download.enlightenment.org/rel/libs/elementary/elementary-1.15.3.tar.xz.sha256 -sha256 474a9175061021ce8cbcfdbde6162316fc0d927b21118d1ab549377ebc802a93 elementary-1.15.3.tar.xz diff --git a/package/elementary/elementary.mk b/package/elementary/elementary.mk deleted file mode 100644 index 7de0c7b343..0000000000 --- a/package/elementary/elementary.mk +++ /dev/null @@ -1,37 +0,0 @@ -################################################################################ -# -# elementary -# -################################################################################ - -ELEMENTARY_VERSION = 1.15.3 -ELEMENTARY_SOURCE = elementary-$(ELEMENTARY_VERSION).tar.xz -ELEMENTARY_SITE = http://download.enlightenment.org/rel/libs/elementary -ELEMENTARY_LICENSE = LGPLv2.1 -ELEMENTARY_LICENSE_FILES = COPYING - -ELEMENTARY_INSTALL_STAGING = YES - -ELEMENTARY_DEPENDENCIES = host-pkgconf host-efl host-elementary efl - -ELEMENTARY_CONF_OPTS = \ - --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ - --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ - --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ - --with-eldbus_codegen=$(HOST_DIR)/usr/bin/eldbus-codegen \ - --with-elm-prefs-cc=$(HOST_DIR)/usr/bin/elm_prefs_cc \ - --with-doxygen=no \ - --disable-elementary-test - -# We need a host package in order to provide elm_prefs_cc and -# elementary_codegen. -HOST_ELEMENTARY_DEPENDENCIES = host-pkgconf host-efl -HOST_ELEMENTARY_CONF_OPTS = \ - --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ - --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ - --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ - --with-doxygen=no \ - --disable-elementary-test - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch b/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch new file mode 100644 index 0000000000..b9615ab34e --- /dev/null +++ b/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch @@ -0,0 +1,34 @@ +From dedce8765d203c1c162a57e6259375e0b457173f Mon Sep 17 00:00:00 2001 +From: Greg Ungerer +Date: Fri, 19 Aug 2016 23:49:51 +1000 +Subject: [PATCH] elf2flt: fix relocation support for R_ARM_TARGET types + +R_ARM_TARGET1 (and I think R_ARM_TARGET2) relocation types should be +treated in the same way as R_ARM_ABS32. Fix them to write out the addend +to the flat binary in network byte order. + +Signed-off-by: Greg Ungerer +Tested-by: Waldemar Brodkorb + +--- + elf2flt.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/elf2flt.c b/elf2flt.c +index 5ae7dd9..3f31569 100644 +--- a/elf2flt.c ++++ b/elf2flt.c +@@ -1505,7 +1505,9 @@ DIS29_RELOCATION: + (((*p)->howto->type != R_ARM_PC24) && + ((*p)->howto->type != R_ARM_PLT32))) + tmp.c[i3] = (hl >> 24) & 0xff; +- if ((*p)->howto->type == R_ARM_ABS32) ++ if (((*p)->howto->type == R_ARM_ABS32) || ++ ((*p)->howto->type == R_ARM_TARGET1) || ++ ((*p)->howto->type == R_ARM_TARGET2)) + *(uint32_t *)r_mem = htonl(hl); + else + *(uint32_t *)r_mem = tmp.l; +-- +1.9.1 + diff --git a/package/elfutils/0001-argp-support.patch b/package/elfutils/0001-argp-support.patch deleted file mode 100644 index 1a74b35ffd..0000000000 --- a/package/elfutils/0001-argp-support.patch +++ /dev/null @@ -1,93 +0,0 @@ -Allow the usage of an external implementation of the argp functions - -uClibc lack the argp family of functions that glibc has. Therefore, we -add a check in the configure script to see if argp_parse is available -in the C library. If not, we look if it is available in the additional -'argp' library. If so, we link against that library. If not, we error -out. - -This allows to build elfutils against uClibc with an external argp -library. - -Based on the former patch by Thomas Petazzoni. - -Signed-off-by: Thomas Petazzoni -Signed-off-by: Vicente Olivert Riera - -diff -rup a/configure.ac b/configure.ac ---- a/configure.ac 2015-01-06 11:30:02.170052875 +0000 -+++ b/configure.ac 2015-01-06 11:31:10.122219826 +0000 -@@ -253,6 +253,13 @@ AC_SUBST([LIBEBL_SUBDIR]) - AC_DEFINE_UNQUOTED(LIBEBL_SUBDIR, "$LIBEBL_SUBDIR") - AH_TEMPLATE([LIBEBL_SUBDIR], [$libdir subdirectory containing libebl modules.]) - -+AC_CHECK_FUNC([argp_parse]) -+if test "$ac_cv_func_argp_parse" != yes; then -+ AC_CHECK_LIB([argp],[argp_parse],ARGP_LIBS=-largp, -+ AC_MSG_ERROR([No argp_parse function available.])) -+fi -+AC_SUBST(ARGP_LIBS) -+ - dnl Test for zlib and bzlib, gives ZLIB/BZLIB .am - dnl conditional and config.h USE_ZLIB/USE_BZLIB #define. - save_LIBS="$LIBS" -diff -rup a/libdw/Makefile.am b/libdw/Makefile.am ---- a/libdw/Makefile.am 2014-12-19 20:43:11.000000000 +0000 -+++ b/libdw/Makefile.am 2015-01-06 11:32:21.075438524 +0000 -@@ -112,7 +112,7 @@ libdw.so$(EXEEXT): $(srcdir)/libdw.map l - -Wl,--enable-new-dtags,-rpath,$(pkglibdir) \ - -Wl,--version-script,$<,--no-undefined \ - -Wl,--whole-archive $(filter-out $<,$^) -Wl,--no-whole-archive\ -- -ldl $(zip_LIBS) -+ -ldl $(zip_LIBS) $(ARGP_LIBS) - @$(textrel_check) - ln -fs $@ $@.$(VERSION) - -diff -rup a/src/Makefile.am b/src/Makefile.am ---- a/src/Makefile.am 2015-01-06 11:30:02.430057339 +0000 -+++ b/src/Makefile.am 2015-01-06 11:34:53.061049752 +0000 -@@ -94,27 +94,29 @@ readelf_no_Werror = yes - strings_no_Werror = yes - addr2line_no_Wformat = yes - --readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl -+readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl $(ARGP_LIBS) - nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ -- $(demanglelib) --size_LDADD = $(libelf) $(libeu) --strip_LDADD = $(libebl) $(libelf) $(libeu) -ldl --ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl -+ $(demanglelib) $(ARGP_LIBS) -+size_LDADD = $(libelf) $(libeu) $(ARGP_LIBS) -+strip_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(ARGP_LIBS) -+ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(ARGP_LIBS) - if NATIVE_LD - # -ldl is always needed for libebl. - ld_LDADD += libld_elf.a - endif - ld_LDFLAGS = -rdynamic --elflint_LDADD = $(libebl) $(libelf) $(libeu) -ldl --findtextrel_LDADD = $(libdw) $(libelf) --addr2line_LDADD = $(libdw) $(libelf) --elfcmp_LDADD = $(libebl) $(libelf) -ldl --objdump_LDADD = $(libasm) $(libebl) $(libelf) $(libeu) -ldl --ranlib_LDADD = libar.a $(libelf) $(libeu) --strings_LDADD = $(libelf) $(libeu) --ar_LDADD = libar.a $(libelf) $(libeu) --unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) -ldl --stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) -ldl $(demanglelib) -+elflint_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(ARGP_LIBS) -+findtextrel_LDADD = $(libdw) $(libelf) $(ARGP_LIBS) -+addr2line_LDADD = $(libdw) $(libelf) $(ARGP_LIBS) -+elfcmp_LDADD = $(libebl) $(libelf) -ldl $(ARGP_LIBS) -+objdump_LDADD = $(libasm) $(libebl) $(libelf) $(libeu) -ldl \ -+ $(ARGP_LIBS) -+ranlib_LDADD = libar.a $(libelf) $(libeu) $(ARGP_LIBS) -+strings_LDADD = $(libelf) $(libeu) $(ARGP_LIBS) -+ar_LDADD = libar.a $(libelf) $(libeu) $(ARGP_LIBS) -+unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) -ldl $(ARGP_LIBS) -+stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) -ldl \ -+ $(demanglelib) $(ARGP_LIBS) - - ldlex.o: ldscript.c - ldlex_no_Werror = yes diff --git a/package/elfutils/0002-disable-progs.patch b/package/elfutils/0002-disable-progs.patch index 3e37bb82ef..ea6b934dfc 100644 --- a/package/elfutils/0002-disable-progs.patch +++ b/package/elfutils/0002-disable-progs.patch @@ -9,15 +9,17 @@ obstack_printf() in uClibc for example). Based on the former patch by Thomas Petazzoni. +[Vincent: tweak patch for 0.166] + Signed-off-by: Thomas Petazzoni Signed-off-by: Vicente Olivert Riera diff -rup a/configure.ac b/configure.ac ---- a/configure.ac 2015-01-06 11:31:10.122219826 +0000 -+++ b/configure.ac 2015-01-06 11:37:38.397891424 +0000 -@@ -260,6 +260,12 @@ if test "$ac_cv_func_argp_parse" != yes; - fi - AC_SUBST(ARGP_LIBS) +--- a/configure.ac 2016-03-31 09:48:08.000000000 +0100 ++++ b/configure.ac 2016-06-17 14:47:03.561704498 +0100 +@@ -253,6 +253,12 @@ AC_SUBST([LIBEBL_SUBDIR]) + AC_DEFINE_UNQUOTED(LIBEBL_SUBDIR, "$LIBEBL_SUBDIR") + AH_TEMPLATE([LIBEBL_SUBDIR], [$libdir subdirectory containing libebl modules.]) +AC_ARG_ENABLE([progs], + AS_HELP_STRING([--enable-progs], [enable progs]), @@ -25,13 +27,13 @@ diff -rup a/configure.ac b/configure.ac + enable_progs=yes) +AM_CONDITIONAL(ENABLE_PROGS, test "$enable_progs" = yes) + - dnl Test for zlib and bzlib, gives ZLIB/BZLIB .am - dnl conditional and config.h USE_ZLIB/USE_BZLIB #define. + dnl zlib is mandatory. save_LIBS="$LIBS" + LIBS= diff -rup a/Makefile.am b/Makefile.am ---- a/Makefile.am 2014-06-17 19:51:09.000000000 +0100 -+++ b/Makefile.am 2015-01-06 11:38:42.846999410 +0000 -@@ -22,9 +22,13 @@ ACLOCAL_AMFLAGS = -I m4 +--- a/Makefile.am 2016-01-12 12:49:19.000000000 +0000 ++++ b/Makefile.am 2016-06-17 14:48:02.585861468 +0100 +@@ -26,9 +26,13 @@ AM_MAKEFLAGS = --no-print-directory pkginclude_HEADERS = version.h diff --git a/package/elfutils/0003-fts.patch b/package/elfutils/0003-fts.patch index 99e8794195..0131b750f8 100644 --- a/package/elfutils/0003-fts.patch +++ b/package/elfutils/0003-fts.patch @@ -24,13 +24,15 @@ already provided by the C library. Based on the former patch by Thomas Petazzoni. +[Vincent: tweak patch for 0.166] + Signed-off-by: Thomas Petazzoni Signed-off-by: Vicente Olivert Riera diff -Nrup a/configure.ac b/configure.ac ---- a/configure.ac 2015-01-06 11:37:38.397891424 +0000 -+++ b/configure.ac 2015-01-06 11:40:53.568258759 +0000 -@@ -266,6 +266,10 @@ AC_ARG_ENABLE([progs], +--- a/configure.ac 2016-06-17 14:47:03.561704498 +0100 ++++ b/configure.ac 2016-06-17 14:52:35.038200412 +0100 +@@ -259,6 +259,10 @@ AC_ARG_ENABLE([progs], enable_progs=yes) AM_CONDITIONAL(ENABLE_PROGS, test "$enable_progs" = yes) @@ -38,12 +40,12 @@ diff -Nrup a/configure.ac b/configure.ac + AC_DEFINE([HAVE_FTS_H], [], [Define if is available in C library])) +AM_CONDITIONAL(HAVE_FTS, test "$ac_cv_header_fts_h" = yes) + - dnl Test for zlib and bzlib, gives ZLIB/BZLIB .am - dnl conditional and config.h USE_ZLIB/USE_BZLIB #define. + dnl zlib is mandatory. save_LIBS="$LIBS" + LIBS= diff -Nrup a/libdwfl/fts.c b/libdwfl/fts.c --- a/libdwfl/fts.c 1970-01-01 01:00:00.000000000 +0100 -+++ b/libdwfl/fts.c 2015-01-06 11:42:13.481640322 +0000 ++++ b/libdwfl/fts.c 2016-06-17 14:57:26.649912084 +0100 @@ -0,0 +1,1095 @@ +/*- + * Copyright (c) 1990, 1993, 1994 @@ -1142,7 +1144,7 @@ diff -Nrup a/libdwfl/fts.c b/libdwfl/fts.c +} diff -Nrup a/libdwfl/fts_.h b/libdwfl/fts_.h --- a/libdwfl/fts_.h 1970-01-01 01:00:00.000000000 +0100 -+++ b/libdwfl/fts_.h 2015-01-06 11:42:13.481640322 +0000 ++++ b/libdwfl/fts_.h 2016-06-17 14:58:42.003387566 +0100 @@ -0,0 +1,131 @@ +/* + * Copyright (c) 1989, 1993 @@ -1276,8 +1278,8 @@ diff -Nrup a/libdwfl/fts_.h b/libdwfl/fts_.h + +#endif /* fts.h */ diff -Nrup a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c ---- a/libdwfl/linux-kernel-modules.c 2014-11-22 22:43:52.000000000 +0000 -+++ b/libdwfl/linux-kernel-modules.c 2015-01-06 11:44:25.610924805 +0000 +--- a/libdwfl/linux-kernel-modules.c 2016-03-02 16:25:38.000000000 +0000 ++++ b/libdwfl/linux-kernel-modules.c 2016-06-17 14:59:50.267724089 +0100 @@ -29,7 +29,11 @@ /* We include this before config.h because it can't handle _FILE_OFFSET_BITS. Everything we need here is fine if its declarations just come first. */ @@ -1291,9 +1293,9 @@ diff -Nrup a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c #include diff -Nrup a/libdwfl/Makefile.am b/libdwfl/Makefile.am ---- a/libdwfl/Makefile.am 2014-06-17 19:51:09.000000000 +0100 -+++ b/libdwfl/Makefile.am 2015-01-06 11:45:25.442959369 +0000 -@@ -79,6 +79,9 @@ endif +--- a/libdwfl/Makefile.am 2016-01-12 12:49:19.000000000 +0000 ++++ b/libdwfl/Makefile.am 2016-06-17 15:01:03.492157569 +0100 +@@ -77,6 +77,9 @@ endif if LZMA libdwfl_a_SOURCES += lzma.c endif diff --git a/package/elfutils/0005-really-make-werror-conditional-to-build-werror.patch b/package/elfutils/0005-really-make-werror-conditional-to-build-werror.patch index 59aae5e8b6..aa4d12d6a2 100644 --- a/package/elfutils/0005-really-make-werror-conditional-to-build-werror.patch +++ b/package/elfutils/0005-really-make-werror-conditional-to-build-werror.patch @@ -8,17 +8,19 @@ function [-Werror=maybe-uninitialized] ^ cc1: all warnings being treated as errors +[Vincent: tweak patch for 0.166] + Signed-off-by: "Yann E. MORIN" Signed-off-by: Vicente Olivert Riera diff -rup a/config/eu.am b/config/eu.am ---- a/config/eu.am 2014-11-10 16:19:14.356031479 +0000 -+++ b/config/eu.am 2014-11-10 16:21:11.702072011 +0000 -@@ -35,7 +35,6 @@ LD_AS_NEEDED = @LD_AS_NEEDED@ - DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. - AM_CFLAGS = -std=gnu99 -Wall -Wshadow \ +--- a/config/eu.am 2016-03-02 16:25:38.000000000 +0000 ++++ b/config/eu.am 2016-06-17 15:05:08.270974835 +0100 +@@ -65,7 +65,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -W + -Wold-style-definition -Wstrict-prototypes \ + $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ + $(NULL_DEREFERENCE_WARNING) \ - $(if $($(*F)_no_Werror),,-Werror) \ - $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ - $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \ + $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ + $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ $($(*F)_CFLAGS) diff --git a/package/elfutils/0007-Allow-disabling-symbol-versioning-at-configure-time.patch b/package/elfutils/0007-Allow-disabling-symbol-versioning-at-configure-time.patch deleted file mode 100644 index 7378f26a01..0000000000 --- a/package/elfutils/0007-Allow-disabling-symbol-versioning-at-configure-time.patch +++ /dev/null @@ -1,139 +0,0 @@ -From bafacacaf7659a4933604662daba26a480b29a8d Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 23 Apr 2015 20:46:59 +0200 -Subject: [PATCH] Allow disabling symbol versioning at configure time - -Due to missing symbol versioning support in uClibc calls to versioned -functions that internally call different version of themselves results -in infinite recursion. - -Introduce macro SYMBOL_VERSIONING and use it instead of plain SHARED to -decide whether symbol versioning is needed. Control this macro -definition with new configure option --disable-symbol-versioning. - -Signed-off-by: Max Filippov -Signed-off-by: Mark Wielaard ---- -Backported from: bafacacaf7659a4933604662daba26a480b29a8d -Changes to ChangeLogs are dropped. - - config/eu.am | 10 ++++++++-- - configure.ac | 7 +++++++ - lib/eu-config.h | 6 +++--- - libdwfl/core-file.c | 2 +- - libdwfl/dwfl_module_build_id.c | 2 +- - libdwfl/dwfl_report_elf.c | 2 +- - -diff --git a/config/eu.am b/config/eu.am -index faf8add..6103a3e 100644 ---- a/config/eu.am -+++ b/config/eu.am -@@ -38,16 +38,22 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ - - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - -+DEFS.os = -DPIC -DSHARED -+if SYMBOL_VERSIONING -+DEFS.os += -DSYMBOL_VERSIONING -+else -+endif -+ - %.os: %.c %.o - if AMDEP -- if $(COMPILE.os) -c -o $@ -fpic -DPIC -DSHARED -MT $@ -MD -MP \ -+ if $(COMPILE.os) -c -o $@ -fpic $(DEFS.os) -MT $@ -MD -MP \ - -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ - then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ - rm -f "$(DEPDIR)/$*.Tpo"; \ - else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ - fi - else -- $(COMPILE.os) -c -o $@ -fpic -DPIC -DSHARED $< -+ $(COMPILE.os) -c -o $@ -fpic $(DEFS.os) $< - endif - - CLEANFILES = *.gcno *.gcda -diff --git a/configure.ac b/configure.ac -index ed2c964..be01573 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -241,6 +241,13 @@ AS_HELP_STRING([--disable-textrelcheck], - [Disable textrelcheck being a fatal error])) - AM_CONDITIONAL(FATAL_TEXTREL, [test "x$enable_textrelcheck" != "xno"]) - -+AC_ARG_ENABLE([symbol-versioning], -+AS_HELP_STRING([--disable-symbol-versioning], -+ [Disable symbol versioning in shared objects])) -+AM_CONDITIONAL(SYMBOL_VERSIONING, [test "x$enable_symbol_versioning" != "xno"]) -+AS_IF([test "x$enable_symbol_versioning" = "xno"], -+ [AC_MSG_WARN([Disabling symbol versioning breaks ABI compatibility.])]) -+ - dnl The directories with content. - - dnl Documentation. -diff --git a/lib/eu-config.h b/lib/eu-config.h -index 3afff26..5bb21c1 100644 ---- a/lib/eu-config.h -+++ b/lib/eu-config.h -@@ -163,7 +163,7 @@ asm (".section predict_data, \"aw\"; .previous\n" - #define ELFUTILS_HEADER(name) - - --#ifdef SHARED -+#ifdef SYMBOL_VERSIONING - # define OLD_VERSION(name, version) \ - asm (".globl _compat." #version "." #name "\n" \ - "_compat." #version "." #name " = " #name "\n" \ -@@ -181,8 +181,8 @@ asm (".section predict_data, \"aw\"; .previous\n" - # define OLD_VERSION(name, version) /* Nothing for static linking. */ - # define NEW_VERSION(name, version) /* Nothing for static linking. */ - # define COMPAT_VERSION_NEWPROTO(name, version, prefix) \ -- error "should use #ifdef SHARED" --# define COMPAT_VERSION(name, version, prefix) error "should use #ifdef SHARED" -+ error "should use #ifdef SYMBOL_VERSIONING" -+# define COMPAT_VERSION(name, version, prefix) error "should use #ifdef SYMBOL_VERSIONING" - #endif - - -diff --git a/libdwfl/core-file.c b/libdwfl/core-file.c -index 324e9d2..bbe0899 100644 ---- a/libdwfl/core-file.c -+++ b/libdwfl/core-file.c -@@ -588,7 +588,7 @@ dwfl_core_file_report (Dwfl *dwfl, Elf *elf, const char *executable) - INTDEF (dwfl_core_file_report) - NEW_VERSION (dwfl_core_file_report, ELFUTILS_0.158) - --#ifdef SHARED -+#ifdef SYMBOL_VERSIONING - int _compat_without_executable_dwfl_core_file_report (Dwfl *dwfl, Elf *elf); - COMPAT_VERSION_NEWPROTO (dwfl_core_file_report, ELFUTILS_0.146, - without_executable) -diff --git a/libdwfl/dwfl_module_build_id.c b/libdwfl/dwfl_module_build_id.c -index 350bbf8..c9a42ca 100644 ---- a/libdwfl/dwfl_module_build_id.c -+++ b/libdwfl/dwfl_module_build_id.c -@@ -101,7 +101,7 @@ dwfl_module_build_id (Dwfl_Module *mod, - INTDEF (dwfl_module_build_id) - NEW_VERSION (dwfl_module_build_id, ELFUTILS_0.138) - --#ifdef SHARED -+#ifdef SYMBOL_VERSIONING - COMPAT_VERSION (dwfl_module_build_id, ELFUTILS_0.130, vaddr_at_end) - - int -diff --git a/libdwfl/dwfl_report_elf.c b/libdwfl/dwfl_report_elf.c -index 3a4ae2e..624284c 100644 ---- a/libdwfl/dwfl_report_elf.c -+++ b/libdwfl/dwfl_report_elf.c -@@ -321,7 +321,7 @@ dwfl_report_elf (Dwfl *dwfl, const char *name, const char *file_name, int fd, - INTDEF (dwfl_report_elf) - NEW_VERSION (dwfl_report_elf, ELFUTILS_0.156) - --#ifdef SHARED -+#ifdef SYMBOL_VERSIONING - Dwfl_Module * - _compat_without_add_p_vaddr_dwfl_report_elf (Dwfl *dwfl, const char *name, - const char *file_name, int fd, --- -1.8.1.4 - diff --git a/package/elfutils/Config.in b/package/elfutils/Config.in index ca93770bfb..0419e27902 100644 --- a/package/elfutils/Config.in +++ b/package/elfutils/Config.in @@ -1,10 +1,11 @@ -comment "elfutils needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library" +comment "elfutils needs a uClibc or glibc toolchain w/ wchar, dynamic library" depends on !BR2_bfin depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) config BR2_PACKAGE_ELFUTILS bool "elfutils" + select BR2_PACKAGE_ZLIB select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT depends on BR2_USE_WCHAR diff --git a/package/elfutils/elfutils.hash b/package/elfutils/elfutils.hash index 123b7a2728..9fa9403f3f 100644 --- a/package/elfutils/elfutils.hash +++ b/package/elfutils/elfutils.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 570c91a1783fa5386aaa2dfdd08dda1de777c2b63bf3b9c1437d635ffdd7a070 elfutils-0.161.tar.bz2 -sha256 bf0363d03e1e4668778eb4e7ddd10e405a22f753b3ad813a537fc01164d1e3fe elfutils-portability-0.161.patch +sha256 3c056914c8a438b210be0d790463b960fc79d234c3f05ce707cbff80e94cba30 elfutils-0.166.tar.bz2 diff --git a/package/elfutils/elfutils.mk b/package/elfutils/elfutils.mk index cc056182cb..566e0bf840 100644 --- a/package/elfutils/elfutils.mk +++ b/package/elfutils/elfutils.mk @@ -4,29 +4,43 @@ # ################################################################################ -ELFUTILS_VERSION = 0.161 +ELFUTILS_VERSION = 0.166 ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2 ELFUTILS_SITE = https://fedorahosted.org/releases/e/l/elfutils/$(ELFUTILS_VERSION) ELFUTILS_INSTALL_STAGING = YES -ELFUTILS_LICENSE = GPLv3, GPLv2, LGPLv3 -ELFUTILS_LICENSE_FILES = COPYING COPYING-GPLV2 COPYING-LGPLV3 -ELFUTILS_PATCH = elfutils-portability-0.161.patch +ELFUTILS_LICENSE = GPLv2+ or LGPLv3+ (library) +ELFUTILS_LICENSE_FILES = COPYING-GPLV2 COPYING-LGPLV3 +ELFUTILS_DEPENDENCIES = zlib +HOST_ELFUTILS_DEPENDENCIES = host-zlib host-bzip2 host-xz -# The tarball does not have a generated configure script +# We patch configure.ac ELFUTILS_AUTORECONF = YES -ELFUTILS_CONF_OPTS += --disable-werror +HOST_ELFUTILS_AUTORECONF = YES +# Pass a custom program prefix to avoid a naming conflict between +# elfutils binaries and binutils binaries. +ELFUTILS_CONF_OPTS += \ + --disable-werror \ + --program-prefix="eu-" + +HOST_ELFUTILS_CONF_OPTS = \ + --disable-werror \ + --with-bzlib \ + --with-lzma \ + --disable-progs + +# elfutils gets confused when lfs mode is forced, so don't ELFUTILS_CFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS)) +ELFUTILS_CPPFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS)) # sparc64 needs -fPIC instead of -fpic ifeq ($(BR2_sparc64),y) ELFUTILS_CFLAGS += -fPIC endif -# elfutils gets confused when lfs mode is forced, so don't ELFUTILS_CONF_ENV += \ CFLAGS="$(ELFUTILS_CFLAGS)" \ - CPPFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS))" + CPPFLAGS="$(ELFUTILS_CPPFLAGS)" ELFUTILS_LDFLAGS = $(TARGET_LDFLAGS) @@ -44,13 +58,6 @@ ELFUTILS_DEPENDENCIES += argp-standalone ELFUTILS_CONF_OPTS += --disable-symbol-versioning endif -ifeq ($(BR2_PACKAGE_ZLIB),y) -ELFUTILS_DEPENDENCIES += zlib -ELFUTILS_CONF_OPTS += --with-zlib -else -ELFUTILS_CONF_OPTS += --without-zlib -endif - ifeq ($(BR2_PACKAGE_BZIP2),y) ELFUTILS_DEPENDENCIES += bzip2 ELFUTILS_CONF_OPTS += --with-bzlib @@ -67,8 +74,11 @@ endif ifeq ($(BR2_PACKAGE_ELFUTILS_PROGS),y) ELFUTILS_CONF_OPTS += --enable-progs +ELFUTILS_LICENSE := $(ELFUTILS_LICENSE), GPLv3+ (programs) +ELFUTILS_LICENSE_FILES += COPYING else ELFUTILS_CONF_OPTS += --disable-progs endif $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/emlog/0001-Fix-access-to-the-dentry.patch b/package/emlog/0001-Fix-access-to-the-dentry.patch deleted file mode 100644 index 07dd5ec92f..0000000000 --- a/package/emlog/0001-Fix-access-to-the-dentry.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 33d34a10fdc01c5716aebdb93c34fdfd7557adc0 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Tue, 22 Dec 2015 17:39:35 +0100 -Subject: [PATCH] Fix access to the dentry - -Since Linux 2.6.20, the dentry pointer is no longer stored in -file->f_dentry, but in file->f_path.dentry. Until Linux 3.19, there -was a compatibility macro which made the change transparent, but this -macro has now been removed. - -Since we probably don't care about compatibility with kernels older -than 2.6.20, this commit takes the simple approach of using -file->f_path.dentry. This will work with any kernel >= 2.6.20. - -Submitted upstream at https://github.com/nicupavel/emlog/pull/3. - -Signed-off-by: Thomas Petazzoni ---- - emlog.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/emlog.c b/emlog.c -index 41a67e2..1ef3d80 100644 ---- a/emlog.c -+++ b/emlog.c -@@ -292,8 +292,8 @@ static ssize_t emlog_read(struct file *file, char __user *buffer, /* The bu - struct emlog_info *einfo; - - /* get the metadata about this emlog */ -- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) { -- pr_err("can not fetch einfo for inode %ld.\n", (long)(file->f_dentry->d_inode->i_ino)); -+ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) { -+ pr_err("can not fetch einfo for inode %ld.\n", (long)(file->f_path.dentry->d_inode->i_ino)); - return -EIO; - } - -@@ -368,7 +368,7 @@ static ssize_t emlog_write(struct file *file, - struct emlog_info *einfo; - - /* get the metadata about this emlog */ -- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) -+ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) - return -EIO; - - /* if the message is longer than the buffer, just take the beginning -@@ -403,7 +403,7 @@ static unsigned int emlog_poll(struct file *file, struct poll_table_struct * wai - struct emlog_info *einfo; - - /* get the metadata about this emlog */ -- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) -+ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) - return -EIO; - - poll_wait(file, EMLOG_READQ(einfo), wait); --- -2.6.4 - diff --git a/package/emlog/emlog.hash b/package/emlog/emlog.hash index 625fb01b90..e94691758a 100644 --- a/package/emlog/emlog.hash +++ b/package/emlog/emlog.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9bab81e75ef2a1b1b7024a397308356a52463d8ac4b42682ed5a134d46387d1f emlog-bd32494ad757c3d37469877aaf99ced3ee6ca3f8.tar.gz +sha256 0d82f06301b8486c54e5e36f304d5a83c2347c23b93c1344eacb0b5b3044485a emlog-576a6c0fcf76dfeff48124b2f5fc0b4207d88ca1.tar.gz diff --git a/package/emlog/emlog.mk b/package/emlog/emlog.mk index f79b1cf8f5..bf0bcf77cc 100644 --- a/package/emlog/emlog.mk +++ b/package/emlog/emlog.mk @@ -4,7 +4,7 @@ # ################################################################################ -EMLOG_VERSION = bd32494ad757c3d37469877aaf99ced3ee6ca3f8 +EMLOG_VERSION = 576a6c0fcf76dfeff48124b2f5fc0b4207d88ca1 EMLOG_SITE = $(call github,nicupavel,emlog,$(EMLOG_VERSION)) EMLOG_LICENSE = GPLv2 EMLOG_LICENSE_FILES = COPYING diff --git a/package/enlightenment/Config.in b/package/enlightenment/Config.in index 05ee6fc619..d1dee25f86 100644 --- a/package/enlightenment/Config.in +++ b/package/enlightenment/Config.in @@ -9,15 +9,15 @@ config BR2_PACKAGE_ENLIGHTENMENT # libedbus -> dbus, efl libraries depends on BR2_USE_MMU depends on BR2_PACKAGE_EFL + depends on BR2_PACKAGE_HAS_UDEV # efl (eeze) -> libudev depends on BR2_PACKAGE_XORG7 # libevas-generic-loaders-svg -> librsvg -> pango -> harfbuzz depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_EFL_X_XLIB + select BR2_PACKAGE_EFL_EEZE select BR2_PACKAGE_EFL_JPEG # needed at runtime by enlightenment_start select BR2_PACKAGE_EFL_PNG # needed at runtime by enlightenment_start - select BR2_PACKAGE_ELEMENTARY - select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS - select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG + select BR2_PACKAGE_EFL_SVG select BR2_PACKAGE_XCB_UTIL_KEYSYMS help Enlightenment, also known simply as E, is a stacking window @@ -28,7 +28,8 @@ config BR2_PACKAGE_ENLIGHTENMENT http://www.enlightenment.org/ -comment "enlightenment needs a toolchain w/ wchar, C++, threads" +comment "enlightenment needs udev /dev management and a toolchain w/ wchar, C++, threads" depends on BR2_PACKAGE_EFL && BR2_PACKAGE_XORG7 && BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_PACKAGE_HAS_UDEV depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/enlightenment/enlightenment.hash b/package/enlightenment/enlightenment.hash index 66bdb492a4..1548f200b2 100644 --- a/package/enlightenment/enlightenment.hash +++ b/package/enlightenment/enlightenment.hash @@ -1,2 +1,2 @@ -# From https://phab.enlightenment.org/phame/live/3/post/e19_14_release/ -sha256 8906e762f0d953752bfe002663280a855da9bb74acf613424c517b78a8dde407 enlightenment-0.19.14.tar.xz +# From https://www.enlightenment.org/news/e-0.21.5-release +sha256 f0745a660f70851c4ada9866b2a525185bfc5cd1685aa86e4cdb68f2c1c154bb enlightenment-0.21.5.tar.xz diff --git a/package/enlightenment/enlightenment.mk b/package/enlightenment/enlightenment.mk index a756361342..7037afe11c 100644 --- a/package/enlightenment/enlightenment.mk +++ b/package/enlightenment/enlightenment.mk @@ -4,7 +4,7 @@ # ################################################################################ -ENLIGHTENMENT_VERSION = 0.19.14 +ENLIGHTENMENT_VERSION = 0.21.5 ENLIGHTENMENT_SOURCE = enlightenment-$(ENLIGHTENMENT_VERSION).tar.xz ENLIGHTENMENT_SITE = http://download.enlightenment.org/rel/apps/enlightenment ENLIGHTENMENT_LICENSE = BSD-2c @@ -14,20 +14,20 @@ ENLIGHTENMENT_DEPENDENCIES = \ host-pkgconf \ host-efl \ efl \ - elementary \ - libevas-generic-loaders \ xcb-util-keysyms ENLIGHTENMENT_CONF_OPTS = \ --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ + --with-eldbus_codegen=$(HOST_DIR)/usr/bin/eldbus-codegen \ --disable-pam \ - --disable-rpath \ - --disable-systemd + --disable-rpath -# uClibc has an old incomplete sys/ptrace.h for powerpc & sparc -ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC)$(BR2_powerpc)$(BR2_sparc),yy) -ENLIGHTENMENT_CONF_ENV += ac_cv_header_sys_ptrace_h=no +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +ENLIGHTENMENT_CONF_OPTS += --enable-systemd +ENLIGHTENMENT_DEPENDENCIES += systemd +else +ENLIGHTENMENT_CONF_OPTS += --disable-systemd endif # alsa backend needs mixer support diff --git a/package/erlang-goldrush/erlang-goldrush.hash b/package/erlang-goldrush/erlang-goldrush.hash new file mode 100644 index 0000000000..00ccb43ca6 --- /dev/null +++ b/package/erlang-goldrush/erlang-goldrush.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 739d8ce15049c54f7e00528edbf536f63a24fdb9dfa053d176e6f97a9832b834 erlang-goldrush-0.1.8.tar.gz diff --git a/package/erlang-lager/erlang-lager.hash b/package/erlang-lager/erlang-lager.hash new file mode 100644 index 0000000000..e436fdc7d5 --- /dev/null +++ b/package/erlang-lager/erlang-lager.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 168a8e48646b04bcee1ab0c97c1ff63563bd7fd25638f1504b8d8f674d2ddd1b erlang-lager-2.2.0.tar.gz diff --git a/package/erlang-lager/erlang-lager.mk b/package/erlang-lager/erlang-lager.mk index 19940a9751..b55b6f7b78 100644 --- a/package/erlang-lager/erlang-lager.mk +++ b/package/erlang-lager/erlang-lager.mk @@ -9,6 +9,7 @@ ERLANG_LAGER_SITE = $(call github,basho,lager,$(ERLANG_LAGER_VERSION)) ERLANG_LAGER_LICENSE = Apache-2.0 ERLANG_LAGER_LICENSE_FILES = LICENSE ERLANG_LAGER_DEPENDENCIES = erlang-goldrush +HOST_ERLANG_LAGER_DEPENDENCIES = host-erlang-goldrush $(eval $(rebar-package)) $(eval $(host-rebar-package)) diff --git a/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash new file mode 100644 index 0000000000..d8b09f95a0 --- /dev/null +++ b/package/erlang-p1-cache-tab/erlang-p1-cache-tab.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 752b649f695e9f2777efd6b2d8dfdcc1f435104b4e363f5f0454b99fd009015c erlang-p1-cache-tab-1.0.1.tar.gz diff --git a/package/erlang-p1-iconv/erlang-p1-iconv.hash b/package/erlang-p1-iconv/erlang-p1-iconv.hash new file mode 100644 index 0000000000..a284189a32 --- /dev/null +++ b/package/erlang-p1-iconv/erlang-p1-iconv.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3ef1fb814fdf23e8ad8a210efb66681fa67cd42753be536521bf9686158880d3 erlang-p1-iconv-0.9.0.tar.gz diff --git a/package/erlang-p1-sip/erlang-p1-sip.hash b/package/erlang-p1-sip/erlang-p1-sip.hash new file mode 100644 index 0000000000..74382cca9a --- /dev/null +++ b/package/erlang-p1-sip/erlang-p1-sip.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2d6dfad997931668eb83a0cb127ccca8c51f8a383d76f9dea393c0b3a4eabae7 erlang-p1-sip-1.0.0.tar.gz diff --git a/package/erlang-p1-stringprep/erlang-p1-stringprep.hash b/package/erlang-p1-stringprep/erlang-p1-stringprep.hash new file mode 100644 index 0000000000..23bc6fbdce --- /dev/null +++ b/package/erlang-p1-stringprep/erlang-p1-stringprep.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 5a74277e7bfb18b8f35838fa78fcde83f0acdb5b2a5b90c4b6d2470a33f7911e erlang-p1-stringprep-1.0.0.tar.gz diff --git a/package/erlang-p1-stun/erlang-p1-stun.hash b/package/erlang-p1-stun/erlang-p1-stun.hash new file mode 100644 index 0000000000..be56608097 --- /dev/null +++ b/package/erlang-p1-stun/erlang-p1-stun.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ca33833f4b6ef70a7628e6f3697d15cb4e26d32ef4e5a31bbddee86cabe19c50 erlang-p1-stun-0.9.0.tar.gz diff --git a/package/erlang-p1-tls/erlang-p1-tls.hash b/package/erlang-p1-tls/erlang-p1-tls.hash new file mode 100644 index 0000000000..fd8d801f90 --- /dev/null +++ b/package/erlang-p1-tls/erlang-p1-tls.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 8e8b848a112ff6bf146df34b4f6bc50160a8858a18499a7a6124193b37237a40 erlang-p1-tls-1.0.0.tar.gz diff --git a/package/erlang-p1-utils/erlang-p1-utils.hash b/package/erlang-p1-utils/erlang-p1-utils.hash new file mode 100644 index 0000000000..c41e5ef525 --- /dev/null +++ b/package/erlang-p1-utils/erlang-p1-utils.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9c7e9fa2990edd419953a6ae609ffed0b90e671b57c468d97c0d85d866d80210 erlang-p1-utils-1.0.3.tar.gz diff --git a/package/erlang-p1-xml/erlang-p1-xml.hash b/package/erlang-p1-xml/erlang-p1-xml.hash new file mode 100644 index 0000000000..8e4a79fee1 --- /dev/null +++ b/package/erlang-p1-xml/erlang-p1-xml.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 4c163c5b9572baa93eb97e03544db57dc751c7995a5279081a0d56f5fdaa2521 erlang-p1-xml-1.1.1.tar.gz diff --git a/package/erlang-p1-yaml/erlang-p1-yaml.hash b/package/erlang-p1-yaml/erlang-p1-yaml.hash new file mode 100644 index 0000000000..0e11e45003 --- /dev/null +++ b/package/erlang-p1-yaml/erlang-p1-yaml.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 8eaaddda056f1ebb515a5456ba2be855e5b71b9b6eb35788527f39c6600ac6b4 erlang-p1-yaml-1.0.0.tar.gz diff --git a/package/erlang-p1-zlib/erlang-p1-zlib.hash b/package/erlang-p1-zlib/erlang-p1-zlib.hash new file mode 100644 index 0000000000..488e75294c --- /dev/null +++ b/package/erlang-p1-zlib/erlang-p1-zlib.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 cb534ee8d8746e38027ada0ccd7e910daa025c74461286ded60ffaa933e3cf7b erlang-p1-zlib-1.0.0.tar.gz diff --git a/package/erlang-rebar/erlang-rebar.hash b/package/erlang-rebar/erlang-rebar.hash new file mode 100644 index 0000000000..27cc91affc --- /dev/null +++ b/package/erlang-rebar/erlang-rebar.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 577246bafa2eb2b2c3f1d0c157408650446884555bf87901508ce71d5cc0bd07 erlang-rebar-2.6.4.tar.gz diff --git a/package/erlang-rebar/erlang-rebar.mk b/package/erlang-rebar/erlang-rebar.mk index 61904cc9e1..031ff47460 100644 --- a/package/erlang-rebar/erlang-rebar.mk +++ b/package/erlang-rebar/erlang-rebar.mk @@ -4,7 +4,7 @@ # ################################################################################ -ERLANG_REBAR_VERSION = 2.6.1 +ERLANG_REBAR_VERSION = 2.6.4 # Upstream publishes a release, but we can not use it as it is a release of # a generated rebar script, when we want the sources. So we have to use the diff --git a/package/erlang/Config.in b/package/erlang/Config.in index 5fa20288c2..11407db129 100644 --- a/package/erlang/Config.in +++ b/package/erlang/Config.in @@ -1,14 +1,20 @@ +config BR2_PACKAGE_ERLANG_ARCH_SUPPORTS + bool + # see HOWTO/INSTALL.md for Erlang's supported platforms + # when using its native atomic ops implementation + default y if BR2_i386 || BR2_x86_64 || BR2_powerpc || \ + BR2_sparc_v9 || BR2_arm || BR2_aarch64 || BR2_mipsel + comment "erlang needs a toolchain w/ dynamic library" depends on BR2_USE_MMU # fork() - depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS + depends on BR2_PACKAGE_ERLANG_ARCH_SUPPORTS depends on BR2_STATIC_LIBS config BR2_PACKAGE_ERLANG bool "erlang" depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS - depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS - select BR2_PACKAGE_LIBATOMIC_OPS + depends on BR2_PACKAGE_ERLANG_ARCH_SUPPORTS help Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. diff --git a/package/erlang/erlang.mk b/package/erlang/erlang.mk index ff4452f68d..3200c388fd 100644 --- a/package/erlang/erlang.mk +++ b/package/erlang/erlang.mk @@ -30,9 +30,6 @@ ERLANG_CONF_ENV += erl_xcomp_sysroot=$(STAGING_DIR) ERLANG_CONF_OPTS = --without-javac -ERLANG_DEPENDENCIES += libatomic_ops -ERLANG_CONF_OPTS += --with-libatomic_ops=$(STAGING_DIR)/usr LIBS=-latomic_ops - # erlang uses openssl for all things crypto. Since the host tools (such as # rebar) uses crypto, we need to build host-erlang with support for openssl. HOST_ERLANG_DEPENDENCIES = host-openssl @@ -58,6 +55,14 @@ else ERLANG_CONF_OPTS += --without-ssl endif +# ODBC support in erlang requires threads +ifeq ($(BR2_PACKAGE_UNIXODBC)$(BR2_TOOLCHAIN_HAS_THREADS),yy) +ERLANG_DEPENDENCIES += unixodbc +ERLANG_CONF_OPTS += --with-odbc +else +ERLANG_CONF_OPTS += --without-odbc +endif + ifeq ($(BR2_PACKAGE_ZLIB),y) ERLANG_CONF_OPTS += --enable-shared-zlib ERLANG_DEPENDENCIES += zlib diff --git a/package/espeak/0002-tr_languages-cast-string_ordinal-init-values.patch b/package/espeak/0002-tr_languages-cast-string_ordinal-init-values.patch new file mode 100644 index 0000000000..d37e64c6ea --- /dev/null +++ b/package/espeak/0002-tr_languages-cast-string_ordinal-init-values.patch @@ -0,0 +1,33 @@ +From 451330d09a6a3500b40bc4f5896ba790ab46cd6c Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 15 Jan 2017 19:37:31 +0100 +Subject: [PATCH 2/2] tr_languages: cast string_ordinal init values + +On some architecture, "char" is signed (x86_64, nios2...) so the +compiler try to convert int 0xc2 and 0xba to a signed char. +This is an error since gcc6 (Wnarrowing). + +Fixes: +http://autobuild.buildroot.net/results/bae/baef9888b1979d18171668a675985e3f3b45fda6 + +Signed-off-by: Romain Naour +--- + src/tr_languages.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tr_languages.cpp b/src/tr_languages.cpp +index 5c80286..dbc6e36 100644 +--- a/src/tr_languages.cpp ++++ b/src/tr_languages.cpp +@@ -200,7 +200,7 @@ static const unsigned short chars_ignore_zwnj_hyphen[] = { + 0x200d, 1, // zero width joiner + 0, 0 }; + +-const char string_ordinal[] = {0xc2,0xba,0}; // masculine ordinal character, UTF-8 ++const char string_ordinal[] = {(char)0xc2,(char)0xba,0}; // masculine ordinal character, UTF-8 + + + static Translator* NewTranslator(void) +-- +2.9.3 + diff --git a/package/espeak/espeak.mk b/package/espeak/espeak.mk index 0aa049ef07..734ec30e54 100644 --- a/package/espeak/espeak.mk +++ b/package/espeak/espeak.mk @@ -32,12 +32,12 @@ define ESPEAK_CONFIGURE_CMDS endef define ESPEAK_BUILD_CMDS - $(MAKE) -C $(@D)/src $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src $(TARGET_CONFIGURE_OPTS) \ AUDIO="$(ESPEAK_AUDIO_BACKEND)" all endef define ESPEAK_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D)/src DESTDIR="$(TARGET_DIR)" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src DESTDIR="$(TARGET_DIR)" install endef $(eval $(generic-package)) diff --git a/package/ethtool/ethtool.hash b/package/ethtool/ethtool.hash index 04022a5823..7deb92adae 100644 --- a/package/ethtool/ethtool.hash +++ b/package/ethtool/ethtool.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/ethtool/sha256sums.asc -sha256 bb2834332c5ac7f5bbe1c9f78f4fa851e4a3fe6397b124d58467c9ccee9fca3b ethtool-4.5.tar.xz +sha256 403dfe288e2d8031eab0be3f5d0ca9128e120d61c52c3dc434474fa026eb4a43 ethtool-4.8.tar.xz diff --git a/package/ethtool/ethtool.mk b/package/ethtool/ethtool.mk index f6f4263d9b..bb3ed926a7 100644 --- a/package/ethtool/ethtool.mk +++ b/package/ethtool/ethtool.mk @@ -4,7 +4,7 @@ # ################################################################################ -ETHTOOL_VERSION = 4.5 +ETHTOOL_VERSION = 4.8 ETHTOOL_SOURCE = ethtool-$(ETHTOOL_VERSION).tar.xz ETHTOOL_SITE = $(BR2_KERNEL_MIRROR)/software/network/ethtool ETHTOOL_LICENSE = GPLv2 diff --git a/package/eudev/0002-missing-defines-for-old-kernels.patch b/package/eudev/0002-missing-defines-for-old-kernels.patch new file mode 100644 index 0000000000..6966b07fe4 --- /dev/null +++ b/package/eudev/0002-missing-defines-for-old-kernels.patch @@ -0,0 +1,44 @@ +From c0f63850ad29ec978d070a08b816dc2bfca337e3 Mon Sep 17 00:00:00 2001 +From: Gustavo Sverzut Barbieri +Date: Fri, 30 Dec 2016 11:28:41 -0200 +Subject: [PATCH] udev-builtin-input_id.c: add missing kernel header defines. + +Add missing defines so eudev builds for older kernels such as 2.6 + +Signed-off-by: Gustavo Sverzut Barbieri +--- + src/shared/missing.h | 8 ++++++++ + src/udev/udev-builtin-input_id.c | 1 + + 2 files changed, 9 insertions(+) + +diff --git a/src/shared/missing.h b/src/shared/missing.h +index 5ad599795..bebbb42be 100644 +--- a/src/shared/missing.h ++++ b/src/shared/missing.h +@@ -171,3 +171,11 @@ static inline int name_to_handle_at(int fd, const char *name, struct file_handle + (char *)memcpy(__new, __old, __len); \ + }) + #endif ++ ++#ifndef BTN_TRIGGER_HAPPY ++#define BTN_TRIGGER_HAPPY 0x2c0 ++#endif ++ ++#ifndef INPUT_PROP_MAX ++#define INPUT_PROP_MAX 0x1f ++#endif +diff --git a/src/udev/udev-builtin-input_id.c b/src/udev/udev-builtin-input_id.c +index b14190e42..ca545be5d 100644 +--- a/src/udev/udev-builtin-input_id.c ++++ b/src/udev/udev-builtin-input_id.c +@@ -32,6 +32,7 @@ + + #include "udev.h" + #include "util.h" ++#include "missing.h" + + /* we must use this kernel-compatible implementation */ + #define BITS_PER_LONG (sizeof(unsigned long) * 8) +-- +2.11.0 + diff --git a/package/eudev/Config.in b/package/eudev/Config.in index cda06e7678..02fcc7e14b 100644 --- a/package/eudev/Config.in +++ b/package/eudev/Config.in @@ -2,18 +2,17 @@ config BR2_PACKAGE_EUDEV bool "eudev" depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV depends on BR2_USE_MMU # uses fork() - depends on BR2_USE_WCHAR # util-linux + depends on BR2_USE_WCHAR # needs C99 compiler depends on !BR2_STATIC_LIBS # kmod select BR2_PACKAGE_HAS_UDEV select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBBLKID select BR2_PACKAGE_KMOD help - Userspace device daemon. This is a standalone version, - independent of systemd. It is a fork maintained by Gentoo. - - eudev requires a Linux kernel >= 2.6.34: it relies on devtmpfs - and inotify. + eudev is a fork of systemd-udev with the goal of obtaining better + compatibility with existing software such as OpenRC and Upstart, + older kernels, various toolchains and anything else required by + users and various distributions. https://wiki.gentoo.org/wiki/Project:Eudev diff --git a/package/eudev/eudev.hash b/package/eudev/eudev.hash index e7c331ca9b..108b0c6e50 100644 --- a/package/eudev/eudev.hash +++ b/package/eudev/eudev.hash @@ -1,4 +1,4 @@ # From http://dev.gentoo.org/~blueness/eudev/ -md5 c4dace42deecede102b6c01904042acc eudev-3.1.5.tar.gz +md5 49f71f6c271ffa95b3c20d757d45c2e5 eudev-3.2.1.tar.gz # Locally calculated -sha256 f75885a430cd50fe4b31732f808ba7f9b2adf0f26b53b8ba2957b0c1d84b6f2a eudev-3.1.5.tar.gz +sha256 57e3d9e51cfefbdad431848ea0ad8ae1cde04928da42474f44bd200b12f5fe19 eudev-3.2.1.tar.gz diff --git a/package/eudev/eudev.mk b/package/eudev/eudev.mk index 942770c4d9..2f5bd6cf19 100644 --- a/package/eudev/eudev.mk +++ b/package/eudev/eudev.mk @@ -4,8 +4,7 @@ # ################################################################################ -EUDEV_VERSION = 3.1.5 -EUDEV_SOURCE = eudev-$(EUDEV_VERSION).tar.gz +EUDEV_VERSION = 3.2.1 EUDEV_SITE = http://dev.gentoo.org/~blueness/eudev EUDEV_LICENSE = GPLv2+ (programs), LGPLv2.1+ (libraries) EUDEV_LICENSE_FILES = COPYING @@ -14,13 +13,13 @@ EUDEV_INSTALL_STAGING = YES # mq_getattr is in librt EUDEV_CONF_ENV += LIBS=-lrt -EUDEV_CONF_OPTS = \ - --disable-manpages \ - --sbindir=/sbin \ - --libexecdir=/lib \ - --with-firmware-path=/lib/firmware \ - --disable-introspection \ - --enable-libkmod +EUDEV_CONF_OPTS = \ + --disable-manpages \ + --sbindir=/sbin \ + --libexecdir=/lib \ + --disable-introspection \ + --enable-kmod \ + --enable-blkid EUDEV_DEPENDENCIES = host-gperf host-pkgconf util-linux kmod EUDEV_PROVIDES = udev @@ -31,6 +30,8 @@ endif ifeq ($(BR2_PACKAGE_EUDEV_RULES_GEN),y) EUDEV_CONF_OPTS += --enable-rule-generator +else +EUDEV_CONF_OPTS += --disable-rule-generator endif ifeq ($(BR2_PACKAGE_EUDEV_ENABLE_HWDB),y) @@ -39,13 +40,6 @@ else EUDEV_CONF_OPTS += --disable-hwdb endif -ifeq ($(BR2_PACKAGE_LIBGLIB2),y) -EUDEV_CONF_OPTS += --enable-gudev -EUDEV_DEPENDENCIES += libglib2 -else -EUDEV_CONF_OPTS += --disable-gudev -endif - ifeq ($(BR2_PACKAGE_LIBSELINUX),y) EUDEV_CONF_OPTS += --enable-selinux EUDEV_DEPENDENCIES += libselinux diff --git a/package/ev3dev-linux-drivers/Config.in b/package/ev3dev-linux-drivers/Config.in new file mode 100644 index 0000000000..9be2f282e9 --- /dev/null +++ b/package/ev3dev-linux-drivers/Config.in @@ -0,0 +1,12 @@ +# Prompt-less option, because this package is not doing anything except +# downloading the ev3dev driver sources. The real work is done by a Linux +# extension. +config BR2_PACKAGE_EV3DEV_LINUX_DRIVERS + bool + depends on BR2_LINUX_KERNEL + help + Linux drivers for LEGO MINDSTORMS EV3 + + This is only the download helper for the kernel patch. + + https://github.com/ev3dev/lego-linux-drivers diff --git a/package/ev3dev-linux-drivers/ev3dev-linux-drivers.mk b/package/ev3dev-linux-drivers/ev3dev-linux-drivers.mk new file mode 100644 index 0000000000..55e26f0411 --- /dev/null +++ b/package/ev3dev-linux-drivers/ev3dev-linux-drivers.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# ev3dev Linux drivers +# +################################################################################ + +EV3DEV_LINUX_DRIVERS_VERSION = 0e551eb25ae8600c1f178814781bfb42dc835496 +EV3DEV_LINUX_DRIVERS_SITE = $(call github,ev3dev,lego-linux-drivers,$(EV3DEV_LINUX_DRIVERS_VERSION)) +EV3DEV_LINUX_DRIVERS_LICENSE = GPLv2 + +$(eval $(generic-package)) diff --git a/package/ev3dev-linux-drivers/lego-linux-drivers.hash b/package/ev3dev-linux-drivers/lego-linux-drivers.hash new file mode 100644 index 0000000000..cc48f65395 --- /dev/null +++ b/package/ev3dev-linux-drivers/lego-linux-drivers.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9d2740b348c8d43e7e15fedc4cec99bf351a3a2ba8691f2a07c439a9c034bc04 lego-linux-drivers-0e551eb25ae8600c1f178814781bfb42dc835496.tar.gz diff --git a/package/evemu/evemu.hash b/package/evemu/evemu.hash index 1264bedcf3..5e653f7d59 100644 --- a/package/evemu/evemu.hash +++ b/package/evemu/evemu.hash @@ -1,2 +1,2 @@ -# Hash from https://lists.freedesktop.org/archives/input-tools/2016-April/001274.html -sha256 0706ea5a830203f9cdb30c0e10c8c41d2427128ba9041543a5ae157fa3b4a30e evemu-2.4.0.tar.xz +# Hash from https://lists.freedesktop.org/archives/input-tools/2016-September/001330.html +sha256 541cc138f0215b7d0cd4ad5e6bb1402518ffc5e31294c36bb67b4ff1791bb27f evemu-2.5.0.tar.xz diff --git a/package/evemu/evemu.mk b/package/evemu/evemu.mk index 992a1f72d7..4f59789a08 100644 --- a/package/evemu/evemu.mk +++ b/package/evemu/evemu.mk @@ -4,7 +4,7 @@ # ################################################################################ -EVEMU_VERSION = 2.4.0 +EVEMU_VERSION = 2.5.0 EVEMU_SITE = http://www.freedesktop.org/software/evemu EVEMU_SOURCE = evemu-$(EVEMU_VERSION).tar.xz EVEMU_LICENSE = LGPLv3 (library), GPLv3 (tools) diff --git a/package/evtest/evtest.hash b/package/evtest/evtest.hash new file mode 100644 index 0000000000..e131318f47 --- /dev/null +++ b/package/evtest/evtest.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9fb68236a6871c163e52433ba8f2cce142c0f4208163a2962768c13f262d549f evtest-1.33.tar.gz diff --git a/package/evtest/evtest.mk b/package/evtest/evtest.mk index 3e02f7c87f..5ff2bf3dd2 100644 --- a/package/evtest/evtest.mk +++ b/package/evtest/evtest.mk @@ -5,7 +5,6 @@ ################################################################################ EVTEST_VERSION = 1.33 -EVTEST_SOURCE = evtest-$(EVTEST_VERSION).tar.gz EVTEST_SITE = http://cgit.freedesktop.org/evtest/snapshot EVTEST_LICENSE = GPLv2+ EVTEST_LICENSE_FILES = COPYING diff --git a/package/exfat-utils/exfat-utils.hash b/package/exfat-utils/exfat-utils.hash index 7bcaa3315c..b40e632a5a 100644 --- a/package/exfat-utils/exfat-utils.hash +++ b/package/exfat-utils/exfat-utils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 80d3b3f21242d60d36a38a4ddb05cb7cc3a7d4eef5793e8314814937b938fcea exfat-utils-1.2.3.tar.gz +sha256 6aa51926416b9d0977b456902f4c4cd10bcce4b2d160859a7a2fc9ca6bcbbb11 exfat-utils-1.2.4.tar.gz diff --git a/package/exfat-utils/exfat-utils.mk b/package/exfat-utils/exfat-utils.mk index e6359bca1f..259c2dabf7 100644 --- a/package/exfat-utils/exfat-utils.mk +++ b/package/exfat-utils/exfat-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -EXFAT_UTILS_VERSION = 1.2.3 +EXFAT_UTILS_VERSION = 1.2.4 EXFAT_UTILS_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT_UTILS_VERSION) EXFAT_UTILS_LICENSE = GPLv3+ EXFAT_UTILS_LICENSE_FILES = COPYING diff --git a/package/exfat/exfat.hash b/package/exfat/exfat.hash index a6dbdac9d8..cf3aab19f7 100644 --- a/package/exfat/exfat.hash +++ b/package/exfat/exfat.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 f2e06eba5a21c621aac1d6da21b12a5a324fdd1e20f9c8acd357dd463c2355d9 fuse-exfat-1.2.3.tar.gz +sha256 9312d23a5d82543ad2e9ab7f0a0b471aea53eeb8eae664451c881b46d849756e fuse-exfat-1.2.4.tar.gz diff --git a/package/exfat/exfat.mk b/package/exfat/exfat.mk index c7904ba23e..84b6001db4 100644 --- a/package/exfat/exfat.mk +++ b/package/exfat/exfat.mk @@ -4,7 +4,7 @@ # ################################################################################ -EXFAT_VERSION = 1.2.3 +EXFAT_VERSION = 1.2.4 EXFAT_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT_VERSION) EXFAT_SOURCE = fuse-exfat-$(EXFAT_VERSION).tar.gz EXFAT_DEPENDENCIES = libfuse host-pkgconf diff --git a/package/exim/exim.hash b/package/exim/exim.hash index 83be731988..ef2d03ba21 100644 --- a/package/exim/exim.hash +++ b/package/exim/exim.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 74691e0dff4d1b5d387e9c33c86f96a8f6d2adbc781c0dec9d2061a847b07dc9 exim-4.87.tar.bz2 +sha256 d4b7994c89240d2f9a9fcd7a2dffa4b72f14379001a24266f4dbb0fbe5131514 exim-4.87.1.tar.bz2 diff --git a/package/exim/exim.mk b/package/exim/exim.mk index 2cc706c71b..a9f4685eb9 100644 --- a/package/exim/exim.mk +++ b/package/exim/exim.mk @@ -4,9 +4,9 @@ # ################################################################################ -EXIM_VERSION = 4.87 +EXIM_VERSION = 4.87.1 EXIM_SOURCE = exim-$(EXIM_VERSION).tar.bz2 -EXIM_SITE = ftp://ftp.exim.org/pub/exim/exim4 +EXIM_SITE = ftp://ftp.exim.org/pub/exim/exim4/old EXIM_LICENSE = GPLv2+ EXIM_LICENSE_FILES = LICENCE EXIM_DEPENDENCIES = pcre berkeleydb host-pkgconf @@ -72,7 +72,7 @@ define EXIM_USE_DEFAULT_CONFIG_FILE_OPENSSL endef endif -# only (e)glibc provides libnsl, remove -lnsl for all other toolchains +# only glibc provides libnsl, remove -lnsl for all other toolchains # http://bugs.exim.org/show_bug.cgi?id=1564 ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),) define EXIM_REMOVE_LIBNSL_FROM_MAKEFILE diff --git a/package/expat/0001-fix-CVE-2016-0718.patch b/package/expat/0001-fix-CVE-2016-0718.patch deleted file mode 100644 index 8530a0e5a1..0000000000 --- a/package/expat/0001-fix-CVE-2016-0718.patch +++ /dev/null @@ -1,757 +0,0 @@ -From cdfcb1b5c95e93b00ae9e9d25708b4a3bee72c15 Mon Sep 17 00:00:00 2001 -From: Sebastian Pipping -Date: Mon, 2 May 2016 00:02:44 +0200 -Subject: [PATCH] Address CVE-2016-0718 (/patch/ version 2.2.1) - -* Out of bounds memory access when doing text conversion on malformed input -* Integer overflow related to memory allocation - -Reported by Gustavo Grieco - -Patch credits go to -* Christian Heimes -* Karl Waclawek -* Gustavo Grieco -* Sebastian Pipping -* Pascal Cuoq - -Signed-off-by: Gustavo Zacarias ---- - lib/xmlparse.c | 34 +++++++++----- - lib/xmltok.c | 115 +++++++++++++++++++++++++++++++++++------------- - lib/xmltok.h | 10 ++++- - lib/xmltok_impl.c | 62 +++++++++++++------------- - 4 files changed, 146 insertions(+), 75 deletions(-) - -diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c -index e308c79..13e080d 100644 ---- a/lib/xmlparse.c -+++ b/lib/xmlparse.c -@@ -2426,11 +2426,11 @@ doContent(XML_Parser parser, - for (;;) { - int bufSize; - int convLen; -- XmlConvert(enc, -+ const enum XML_Convert_Result convert_res = XmlConvert(enc, - &fromPtr, rawNameEnd, - (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1); - convLen = (int)(toPtr - (XML_Char *)tag->buf); -- if (fromPtr == rawNameEnd) { -+ if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { - tag->name.strLen = convLen; - break; - } -@@ -2651,11 +2651,11 @@ doContent(XML_Parser parser, - if (MUST_CONVERT(enc, s)) { - for (;;) { - ICHAR *dataPtr = (ICHAR *)dataBuf; -- XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd); -+ const enum XML_Convert_Result convert_res = XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd); - *eventEndPP = s; - charDataHandler(handlerArg, dataBuf, - (int)(dataPtr - (ICHAR *)dataBuf)); -- if (s == next) -+ if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) - break; - *eventPP = s; - } -@@ -3261,11 +3261,11 @@ doCdataSection(XML_Parser parser, - if (MUST_CONVERT(enc, s)) { - for (;;) { - ICHAR *dataPtr = (ICHAR *)dataBuf; -- XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd); -+ const enum XML_Convert_Result convert_res = XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd); - *eventEndPP = next; - charDataHandler(handlerArg, dataBuf, - (int)(dataPtr - (ICHAR *)dataBuf)); -- if (s == next) -+ if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) - break; - *eventPP = s; - } -@@ -5342,6 +5342,7 @@ reportDefault(XML_Parser parser, const ENCODING *enc, - const char *s, const char *end) - { - if (MUST_CONVERT(enc, s)) { -+ enum XML_Convert_Result convert_res; - const char **eventPP; - const char **eventEndPP; - if (enc == encoding) { -@@ -5354,11 +5355,11 @@ reportDefault(XML_Parser parser, const ENCODING *enc, - } - do { - ICHAR *dataPtr = (ICHAR *)dataBuf; -- XmlConvert(enc, &s, end, &dataPtr, (ICHAR *)dataBufEnd); -+ convert_res = XmlConvert(enc, &s, end, &dataPtr, (ICHAR *)dataBufEnd); - *eventEndPP = s; - defaultHandler(handlerArg, dataBuf, (int)(dataPtr - (ICHAR *)dataBuf)); - *eventPP = s; -- } while (s != end); -+ } while ((convert_res != XML_CONVERT_COMPLETED) && (convert_res != XML_CONVERT_INPUT_INCOMPLETE)); - } - else - defaultHandler(handlerArg, (XML_Char *)s, (int)((XML_Char *)end - (XML_Char *)s)); -@@ -6163,8 +6164,8 @@ poolAppend(STRING_POOL *pool, const ENCODING *enc, - if (!pool->ptr && !poolGrow(pool)) - return NULL; - for (;;) { -- XmlConvert(enc, &ptr, end, (ICHAR **)&(pool->ptr), (ICHAR *)pool->end); -- if (ptr == end) -+ const enum XML_Convert_Result convert_res = XmlConvert(enc, &ptr, end, (ICHAR **)&(pool->ptr), (ICHAR *)pool->end); -+ if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) - break; - if (!poolGrow(pool)) - return NULL; -@@ -6248,8 +6249,13 @@ poolGrow(STRING_POOL *pool) - } - } - if (pool->blocks && pool->start == pool->blocks->s) { -- int blockSize = (int)(pool->end - pool->start)*2; -- BLOCK *temp = (BLOCK *) -+ BLOCK *temp; -+ int blockSize = (int)((unsigned)(pool->end - pool->start)*2U); -+ -+ if (blockSize < 0) -+ return XML_FALSE; -+ -+ temp = (BLOCK *) - pool->mem->realloc_fcn(pool->blocks, - (offsetof(BLOCK, s) - + blockSize * sizeof(XML_Char))); -@@ -6264,6 +6270,10 @@ poolGrow(STRING_POOL *pool) - else { - BLOCK *tem; - int blockSize = (int)(pool->end - pool->start); -+ -+ if (blockSize < 0) -+ return XML_FALSE; -+ - if (blockSize < INIT_BLOCK_SIZE) - blockSize = INIT_BLOCK_SIZE; - else -diff --git a/expat/lib/xmltok.c b/expat/lib/xmltok.c -index bf09dfc..cb98ce1 100644 ---- a/lib/xmltok.c -+++ b/lib/xmltok.c -@@ -318,39 +318,55 @@ enum { /* UTF8_cvalN is value of masked first byte of N byte sequence */ - UTF8_cval4 = 0xf0 - }; - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - utf8_toUtf8(const ENCODING *enc, - const char **fromP, const char *fromLim, - char **toP, const char *toLim) - { -+ enum XML_Convert_Result res = XML_CONVERT_COMPLETED; - char *to; - const char *from; - if (fromLim - *fromP > toLim - *toP) { - /* Avoid copying partial characters. */ -+ res = XML_CONVERT_OUTPUT_EXHAUSTED; - for (fromLim = *fromP + (toLim - *toP); fromLim > *fromP; fromLim--) - if (((unsigned char)fromLim[-1] & 0xc0) != 0x80) - break; - } -- for (to = *toP, from = *fromP; from != fromLim; from++, to++) -+ for (to = *toP, from = *fromP; (from < fromLim) && (to < toLim); from++, to++) - *to = *from; - *fromP = from; - *toP = to; -+ -+ if ((to == toLim) && (from < fromLim)) -+ return XML_CONVERT_OUTPUT_EXHAUSTED; -+ else -+ return res; - } - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - utf8_toUtf16(const ENCODING *enc, - const char **fromP, const char *fromLim, - unsigned short **toP, const unsigned short *toLim) - { -+ enum XML_Convert_Result res = XML_CONVERT_COMPLETED; - unsigned short *to = *toP; - const char *from = *fromP; -- while (from != fromLim && to != toLim) { -+ while (from < fromLim && to < toLim) { - switch (((struct normal_encoding *)enc)->type[(unsigned char)*from]) { - case BT_LEAD2: -+ if (fromLim - from < 2) { -+ res = XML_CONVERT_INPUT_INCOMPLETE; -+ break; -+ } - *to++ = (unsigned short)(((from[0] & 0x1f) << 6) | (from[1] & 0x3f)); - from += 2; - break; - case BT_LEAD3: -+ if (fromLim - from < 3) { -+ res = XML_CONVERT_INPUT_INCOMPLETE; -+ break; -+ } - *to++ = (unsigned short)(((from[0] & 0xf) << 12) - | ((from[1] & 0x3f) << 6) | (from[2] & 0x3f)); - from += 3; -@@ -358,8 +374,14 @@ utf8_toUtf16(const ENCODING *enc, - case BT_LEAD4: - { - unsigned long n; -- if (to + 1 == toLim) -+ if (toLim - to < 2) { -+ res = XML_CONVERT_OUTPUT_EXHAUSTED; - goto after; -+ } -+ if (fromLim - from < 4) { -+ res = XML_CONVERT_INPUT_INCOMPLETE; -+ goto after; -+ } - n = ((from[0] & 0x7) << 18) | ((from[1] & 0x3f) << 12) - | ((from[2] & 0x3f) << 6) | (from[3] & 0x3f); - n -= 0x10000; -@@ -377,6 +399,7 @@ utf8_toUtf16(const ENCODING *enc, - after: - *fromP = from; - *toP = to; -+ return res; - } - - #ifdef XML_NS -@@ -425,7 +448,7 @@ static const struct normal_encoding internal_utf8_encoding = { - STANDARD_VTABLE(sb_) NORMAL_VTABLE(utf8_) - }; - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - latin1_toUtf8(const ENCODING *enc, - const char **fromP, const char *fromLim, - char **toP, const char *toLim) -@@ -433,30 +456,35 @@ latin1_toUtf8(const ENCODING *enc, - for (;;) { - unsigned char c; - if (*fromP == fromLim) -- break; -+ return XML_CONVERT_COMPLETED; - c = (unsigned char)**fromP; - if (c & 0x80) { - if (toLim - *toP < 2) -- break; -+ return XML_CONVERT_OUTPUT_EXHAUSTED; - *(*toP)++ = (char)((c >> 6) | UTF8_cval2); - *(*toP)++ = (char)((c & 0x3f) | 0x80); - (*fromP)++; - } - else { - if (*toP == toLim) -- break; -+ return XML_CONVERT_OUTPUT_EXHAUSTED; - *(*toP)++ = *(*fromP)++; - } - } - } - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - latin1_toUtf16(const ENCODING *enc, - const char **fromP, const char *fromLim, - unsigned short **toP, const unsigned short *toLim) - { -- while (*fromP != fromLim && *toP != toLim) -+ while (*fromP < fromLim && *toP < toLim) - *(*toP)++ = (unsigned char)*(*fromP)++; -+ -+ if ((*toP == toLim) && (*fromP < fromLim)) -+ return XML_CONVERT_OUTPUT_EXHAUSTED; -+ else -+ return XML_CONVERT_COMPLETED; - } - - #ifdef XML_NS -@@ -483,13 +511,18 @@ static const struct normal_encoding latin1_encoding = { - STANDARD_VTABLE(sb_) - }; - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - ascii_toUtf8(const ENCODING *enc, - const char **fromP, const char *fromLim, - char **toP, const char *toLim) - { -- while (*fromP != fromLim && *toP != toLim) -+ while (*fromP < fromLim && *toP < toLim) - *(*toP)++ = *(*fromP)++; -+ -+ if ((*toP == toLim) && (*fromP < fromLim)) -+ return XML_CONVERT_OUTPUT_EXHAUSTED; -+ else -+ return XML_CONVERT_COMPLETED; - } - - #ifdef XML_NS -@@ -536,13 +569,14 @@ unicode_byte_type(char hi, char lo) - } - - #define DEFINE_UTF16_TO_UTF8(E) \ --static void PTRCALL \ -+static enum XML_Convert_Result PTRCALL \ - E ## toUtf8(const ENCODING *enc, \ - const char **fromP, const char *fromLim, \ - char **toP, const char *toLim) \ - { \ -- const char *from; \ -- for (from = *fromP; from != fromLim; from += 2) { \ -+ const char *from = *fromP; \ -+ fromLim = from + (((fromLim - from) >> 1) << 1); /* shrink to even */ \ -+ for (; from < fromLim; from += 2) { \ - int plane; \ - unsigned char lo2; \ - unsigned char lo = GET_LO(from); \ -@@ -552,7 +586,7 @@ E ## toUtf8(const ENCODING *enc, \ - if (lo < 0x80) { \ - if (*toP == toLim) { \ - *fromP = from; \ -- return; \ -+ return XML_CONVERT_OUTPUT_EXHAUSTED; \ - } \ - *(*toP)++ = lo; \ - break; \ -@@ -562,7 +596,7 @@ E ## toUtf8(const ENCODING *enc, \ - case 0x4: case 0x5: case 0x6: case 0x7: \ - if (toLim - *toP < 2) { \ - *fromP = from; \ -- return; \ -+ return XML_CONVERT_OUTPUT_EXHAUSTED; \ - } \ - *(*toP)++ = ((lo >> 6) | (hi << 2) | UTF8_cval2); \ - *(*toP)++ = ((lo & 0x3f) | 0x80); \ -@@ -570,7 +604,7 @@ E ## toUtf8(const ENCODING *enc, \ - default: \ - if (toLim - *toP < 3) { \ - *fromP = from; \ -- return; \ -+ return XML_CONVERT_OUTPUT_EXHAUSTED; \ - } \ - /* 16 bits divided 4, 6, 6 amongst 3 bytes */ \ - *(*toP)++ = ((hi >> 4) | UTF8_cval3); \ -@@ -580,7 +614,11 @@ E ## toUtf8(const ENCODING *enc, \ - case 0xD8: case 0xD9: case 0xDA: case 0xDB: \ - if (toLim - *toP < 4) { \ - *fromP = from; \ -- return; \ -+ return XML_CONVERT_OUTPUT_EXHAUSTED; \ -+ } \ -+ if (fromLim - from < 4) { \ -+ *fromP = from; \ -+ return XML_CONVERT_INPUT_INCOMPLETE; \ - } \ - plane = (((hi & 0x3) << 2) | ((lo >> 6) & 0x3)) + 1; \ - *(*toP)++ = ((plane >> 2) | UTF8_cval4); \ -@@ -596,20 +634,32 @@ E ## toUtf8(const ENCODING *enc, \ - } \ - } \ - *fromP = from; \ -+ if (from < fromLim) \ -+ return XML_CONVERT_INPUT_INCOMPLETE; \ -+ else \ -+ return XML_CONVERT_COMPLETED; \ - } - - #define DEFINE_UTF16_TO_UTF16(E) \ --static void PTRCALL \ -+static enum XML_Convert_Result PTRCALL \ - E ## toUtf16(const ENCODING *enc, \ - const char **fromP, const char *fromLim, \ - unsigned short **toP, const unsigned short *toLim) \ - { \ -+ enum XML_Convert_Result res = XML_CONVERT_COMPLETED; \ -+ fromLim = *fromP + (((fromLim - *fromP) >> 1) << 1); /* shrink to even */ \ - /* Avoid copying first half only of surrogate */ \ - if (fromLim - *fromP > ((toLim - *toP) << 1) \ -- && (GET_HI(fromLim - 2) & 0xF8) == 0xD8) \ -+ && (GET_HI(fromLim - 2) & 0xF8) == 0xD8) { \ - fromLim -= 2; \ -- for (; *fromP != fromLim && *toP != toLim; *fromP += 2) \ -+ res = XML_CONVERT_INPUT_INCOMPLETE; \ -+ } \ -+ for (; *fromP < fromLim && *toP < toLim; *fromP += 2) \ - *(*toP)++ = (GET_HI(*fromP) << 8) | GET_LO(*fromP); \ -+ if ((*toP == toLim) && (*fromP < fromLim)) \ -+ return XML_CONVERT_OUTPUT_EXHAUSTED; \ -+ else \ -+ return res; \ - } - - #define SET2(ptr, ch) \ -@@ -1288,7 +1338,7 @@ unknown_isInvalid(const ENCODING *enc, const char *p) - return (c & ~0xFFFF) || checkCharRefNumber(c) < 0; - } - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - unknown_toUtf8(const ENCODING *enc, - const char **fromP, const char *fromLim, - char **toP, const char *toLim) -@@ -1299,21 +1349,21 @@ unknown_toUtf8(const ENCODING *enc, - const char *utf8; - int n; - if (*fromP == fromLim) -- break; -+ return XML_CONVERT_COMPLETED; - utf8 = uenc->utf8[(unsigned char)**fromP]; - n = *utf8++; - if (n == 0) { - int c = uenc->convert(uenc->userData, *fromP); - n = XmlUtf8Encode(c, buf); - if (n > toLim - *toP) -- break; -+ return XML_CONVERT_OUTPUT_EXHAUSTED; - utf8 = buf; - *fromP += (AS_NORMAL_ENCODING(enc)->type[(unsigned char)**fromP] - - (BT_LEAD2 - 2)); - } - else { - if (n > toLim - *toP) -- break; -+ return XML_CONVERT_OUTPUT_EXHAUSTED; - (*fromP)++; - } - do { -@@ -1322,13 +1372,13 @@ unknown_toUtf8(const ENCODING *enc, - } - } - --static void PTRCALL -+static enum XML_Convert_Result PTRCALL - unknown_toUtf16(const ENCODING *enc, - const char **fromP, const char *fromLim, - unsigned short **toP, const unsigned short *toLim) - { - const struct unknown_encoding *uenc = AS_UNKNOWN_ENCODING(enc); -- while (*fromP != fromLim && *toP != toLim) { -+ while (*fromP < fromLim && *toP < toLim) { - unsigned short c = uenc->utf16[(unsigned char)**fromP]; - if (c == 0) { - c = (unsigned short) -@@ -1340,6 +1390,11 @@ unknown_toUtf16(const ENCODING *enc, - (*fromP)++; - *(*toP)++ = c; - } -+ -+ if ((*toP == toLim) && (*fromP < fromLim)) -+ return XML_CONVERT_OUTPUT_EXHAUSTED; -+ else -+ return XML_CONVERT_COMPLETED; - } - - ENCODING * -@@ -1503,7 +1558,7 @@ initScan(const ENCODING * const *encodingTable, - { - const ENCODING **encPtr; - -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - encPtr = enc->encPtr; - if (ptr + 1 == end) { -diff --git a/expat/lib/xmltok.h b/expat/lib/xmltok.h -index ca867aa..752007e 100644 ---- a/lib/xmltok.h -+++ b/lib/xmltok.h -@@ -130,6 +130,12 @@ typedef int (PTRCALL *SCANNER)(const ENCODING *, - const char *, - const char **); - -+enum XML_Convert_Result { -+ XML_CONVERT_COMPLETED = 0, -+ XML_CONVERT_INPUT_INCOMPLETE = 1, -+ XML_CONVERT_OUTPUT_EXHAUSTED = 2 /* and therefore potentially input remaining as well */ -+}; -+ - struct encoding { - SCANNER scanners[XML_N_STATES]; - SCANNER literalScanners[XML_N_LITERAL_TYPES]; -@@ -158,12 +164,12 @@ struct encoding { - const char *ptr, - const char *end, - const char **badPtr); -- void (PTRCALL *utf8Convert)(const ENCODING *enc, -+ enum XML_Convert_Result (PTRCALL *utf8Convert)(const ENCODING *enc, - const char **fromP, - const char *fromLim, - char **toP, - const char *toLim); -- void (PTRCALL *utf16Convert)(const ENCODING *enc, -+ enum XML_Convert_Result (PTRCALL *utf16Convert)(const ENCODING *enc, - const char **fromP, - const char *fromLim, - unsigned short **toP, -diff --git a/expat/lib/xmltok_impl.c b/expat/lib/xmltok_impl.c -index 9c2895b..6c5a3ba 100644 ---- a/lib/xmltok_impl.c -+++ b/lib/xmltok_impl.c -@@ -93,13 +93,13 @@ static int PTRCALL - PREFIX(scanComment)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { -- if (ptr != end) { -+ if (ptr < end) { - if (!CHAR_MATCHES(enc, ptr, ASCII_MINUS)) { - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } - ptr += MINBPC(enc); -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - INVALID_CASES(ptr, nextTokPtr) - case BT_MINUS: -@@ -147,7 +147,7 @@ PREFIX(scanDecl)(const ENCODING *enc, const char *ptr, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_PERCNT: - if (ptr + MINBPC(enc) == end) -@@ -233,7 +233,7 @@ PREFIX(scanPi)(const ENCODING *enc, const char *ptr, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_S: case BT_CR: case BT_LF: -@@ -242,7 +242,7 @@ PREFIX(scanPi)(const ENCODING *enc, const char *ptr, - return XML_TOK_INVALID; - } - ptr += MINBPC(enc); -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - INVALID_CASES(ptr, nextTokPtr) - case BT_QUEST: -@@ -305,7 +305,7 @@ static int PTRCALL - PREFIX(cdataSectionTok)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - if (MINBPC(enc) > 1) { - size_t n = end - ptr; -@@ -348,7 +348,7 @@ PREFIX(cdataSectionTok)(const ENCODING *enc, const char *ptr, - ptr += MINBPC(enc); - break; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - #define LEAD_CASE(n) \ - case BT_LEAD ## n: \ -@@ -391,11 +391,11 @@ PREFIX(scanEndTag)(const ENCODING *enc, const char *ptr, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_S: case BT_CR: case BT_LF: -- for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) { -+ for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_S: case BT_CR: case BT_LF: - break; -@@ -432,7 +432,7 @@ static int PTRCALL - PREFIX(scanHexCharRef)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { -- if (ptr != end) { -+ if (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_DIGIT: - case BT_HEX: -@@ -441,7 +441,7 @@ PREFIX(scanHexCharRef)(const ENCODING *enc, const char *ptr, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) { -+ for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_DIGIT: - case BT_HEX: -@@ -464,7 +464,7 @@ static int PTRCALL - PREFIX(scanCharRef)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { -- if (ptr != end) { -+ if (ptr < end) { - if (CHAR_MATCHES(enc, ptr, ASCII_x)) - return PREFIX(scanHexCharRef)(enc, ptr + MINBPC(enc), end, nextTokPtr); - switch (BYTE_TYPE(enc, ptr)) { -@@ -474,7 +474,7 @@ PREFIX(scanCharRef)(const ENCODING *enc, const char *ptr, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) { -+ for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_DIGIT: - break; -@@ -506,7 +506,7 @@ PREFIX(scanRef)(const ENCODING *enc, const char *ptr, const char *end, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_SEMI: -@@ -529,7 +529,7 @@ PREFIX(scanAtts)(const ENCODING *enc, const char *ptr, const char *end, - #ifdef XML_NS - int hadColon = 0; - #endif -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - #ifdef XML_NS -@@ -716,7 +716,7 @@ PREFIX(scanLt)(const ENCODING *enc, const char *ptr, const char *end, - hadColon = 0; - #endif - /* we have a start-tag */ -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - #ifdef XML_NS -@@ -740,7 +740,7 @@ PREFIX(scanLt)(const ENCODING *enc, const char *ptr, const char *end, - case BT_S: case BT_CR: case BT_LF: - { - ptr += MINBPC(enc); -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr) - case BT_GT: -@@ -785,7 +785,7 @@ static int PTRCALL - PREFIX(contentTok)(const ENCODING *enc, const char *ptr, const char *end, - const char **nextTokPtr) - { -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - if (MINBPC(enc) > 1) { - size_t n = end - ptr; -@@ -832,7 +832,7 @@ PREFIX(contentTok)(const ENCODING *enc, const char *ptr, const char *end, - ptr += MINBPC(enc); - break; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - #define LEAD_CASE(n) \ - case BT_LEAD ## n: \ -@@ -895,7 +895,7 @@ PREFIX(scanPercent)(const ENCODING *enc, const char *ptr, const char *end, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_SEMI: -@@ -921,7 +921,7 @@ PREFIX(scanPoundName)(const ENCODING *enc, const char *ptr, const char *end, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_CR: case BT_LF: case BT_S: -@@ -941,7 +941,7 @@ PREFIX(scanLit)(int open, const ENCODING *enc, - const char *ptr, const char *end, - const char **nextTokPtr) - { -- while (ptr != end) { -+ while (ptr < end) { - int t = BYTE_TYPE(enc, ptr); - switch (t) { - INVALID_CASES(ptr, nextTokPtr) -@@ -973,7 +973,7 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end, - const char **nextTokPtr) - { - int tok; -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - if (MINBPC(enc) > 1) { - size_t n = end - ptr; -@@ -1141,7 +1141,7 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end, - *nextTokPtr = ptr; - return XML_TOK_INVALID; - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - CHECK_NAME_CASES(enc, ptr, end, nextTokPtr) - case BT_GT: case BT_RPAR: case BT_COMMA: -@@ -1204,10 +1204,10 @@ PREFIX(attributeValueTok)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { - const char *start; -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - start = ptr; -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - #define LEAD_CASE(n) \ - case BT_LEAD ## n: ptr += n; break; -@@ -1262,10 +1262,10 @@ PREFIX(entityValueTok)(const ENCODING *enc, const char *ptr, - const char *end, const char **nextTokPtr) - { - const char *start; -- if (ptr == end) -+ if (ptr >= end) - return XML_TOK_NONE; - start = ptr; -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - #define LEAD_CASE(n) \ - case BT_LEAD ## n: ptr += n; break; -@@ -1326,7 +1326,7 @@ PREFIX(ignoreSectionTok)(const ENCODING *enc, const char *ptr, - end = ptr + n; - } - } -- while (ptr != end) { -+ while (ptr < end) { - switch (BYTE_TYPE(enc, ptr)) { - INVALID_CASES(ptr, nextTokPtr) - case BT_LT: -@@ -1373,7 +1373,7 @@ PREFIX(isPublicId)(const ENCODING *enc, const char *ptr, const char *end, - { - ptr += MINBPC(enc); - end -= MINBPC(enc); -- for (; ptr != end; ptr += MINBPC(enc)) { -+ for (; ptr < end; ptr += MINBPC(enc)) { - switch (BYTE_TYPE(enc, ptr)) { - case BT_DIGIT: - case BT_HEX: -@@ -1760,7 +1760,7 @@ PREFIX(updatePosition)(const ENCODING *enc, - case BT_CR: - pos->lineNumber++; - ptr += MINBPC(enc); -- if (ptr != end && BYTE_TYPE(enc, ptr) == BT_LF) -+ if (ptr < end && BYTE_TYPE(enc, ptr) == BT_LF) - ptr += MINBPC(enc); - pos->columnNumber = (XML_Size)-1; - break; --- -2.8.2 - diff --git a/package/expat/expat.hash b/package/expat/expat.hash index cfb3a6cad3..371abdec91 100644 --- a/package/expat/expat.hash +++ b/package/expat/expat.hash @@ -1,5 +1,5 @@ -# From https://sourceforge.net/projects/expat/files/expat/2.1.1/ -md5 7380a64a8e3a9d66a9887b01d0d7ea81 expat-2.1.1.tar.bz2 -sha1 ff91419882ac52151050dad0ee8190645fbeee08 expat-2.1.1.tar.bz2 +# From https://sourceforge.net/projects/expat/files/expat/2.2.0/ +md5 2f47841c829facb346eb6e3fab5212e2 expat-2.2.0.tar.bz2 +sha1 8453bc52324be4c796fd38742ec48470eef358b3 expat-2.2.0.tar.bz2 # Calculated based on the hashes above -sha256 aff584e5a2f759dcfc6d48671e9529f6afe1e30b0cd6a4cec200cbe3f793de67 expat-2.1.1.tar.bz2 +sha256 d9e50ff2d19b3538bd2127902a89987474e1a4db8e43a66a4d1a712ab9a504ff expat-2.2.0.tar.bz2 diff --git a/package/expat/expat.mk b/package/expat/expat.mk index f00cbdc874..e7bb74a966 100644 --- a/package/expat/expat.mk +++ b/package/expat/expat.mk @@ -4,13 +4,14 @@ # ################################################################################ -EXPAT_VERSION = 2.1.1 +EXPAT_VERSION = 2.2.0 EXPAT_SITE = http://downloads.sourceforge.net/project/expat/expat/$(EXPAT_VERSION) EXPAT_SOURCE = expat-$(EXPAT_VERSION).tar.bz2 EXPAT_INSTALL_STAGING = YES EXPAT_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) installlib EXPAT_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) installlib EXPAT_DEPENDENCIES = host-pkgconf +HOST_EXPAT_DEPENDENCIES = host-pkgconf EXPAT_LICENSE = MIT EXPAT_LICENSE_FILES = COPYING diff --git a/package/expedite/expedite.hash b/package/expedite/expedite.hash new file mode 100644 index 0000000000..85c4444eb6 --- /dev/null +++ b/package/expedite/expedite.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 a8690a714c16d6b67e7fd6d70973e9805c3569a9131900b1feaf183220496831 expedite-ffa005ea3de26b4219f32c285cb1665bb1366163.tar.gz diff --git a/package/expedite/expedite.mk b/package/expedite/expedite.mk index 8754dc0da7..0b2901d80d 100644 --- a/package/expedite/expedite.mk +++ b/package/expedite/expedite.mk @@ -4,8 +4,7 @@ # ################################################################################ -# efl-1.15 branch -EXPEDITE_VERSION = 3ce8b3f1451700f9a2da60c2e717c644220e2449 +EXPEDITE_VERSION = ffa005ea3de26b4219f32c285cb1665bb1366163 EXPEDITE_SITE = http://git.enlightenment.org/tools/expedite.git EXPEDITE_SITE_METHOD = git EXPEDITE_LICENSE = BSD-2c diff --git a/package/explorercanvas/explorercanvas.hash b/package/explorercanvas/explorercanvas.hash new file mode 100644 index 0000000000..59e8c7a0e3 --- /dev/null +++ b/package/explorercanvas/explorercanvas.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 7b8f597b5d3a2f71e87aac413e12e03d852df3dd3ac39f70e1615c9c850217ec explorercanvas-aa989ea9d9bac748638f7c66b0fc88e619715da6.tar.gz diff --git a/package/ezxml/ezxml.mk b/package/ezxml/ezxml.mk index 769346605d..f1e18aa680 100644 --- a/package/ezxml/ezxml.mk +++ b/package/ezxml/ezxml.mk @@ -10,9 +10,16 @@ EZXML_INSTALL_STAGING = YES EZXML_LICENSE = MIT EZXML_LICENSE_FILES = license.txt +EZXML_CFLAGS = $(TARGET_CFLAGS) + +# mmap code uses madvise which isn't available on nommu uClibc +ifeq ($(BR2_USE_MMU),) +EZXML_CFLAGS += -D EZXML_NOMMAP +endif + define EZXML_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" AR=$(TARGET_AR) \ - -f GNUmakefile -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f GNUmakefile \ + CC="$(TARGET_CC)" CFLAGS="$(EZXML_CFLAGS)" AR=$(TARGET_AR) endef define EZXML_INSTALL_STAGING_CMDS diff --git a/package/f2fs-tools/0001-configure-add-check-for-fallocate.patch b/package/f2fs-tools/0001-configure-add-check-for-fallocate.patch deleted file mode 100644 index b7ead76cff..0000000000 --- a/package/f2fs-tools/0001-configure-add-check-for-fallocate.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 265d97d02e8ef373653c76a339869985eb3ba27a Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 10 Mar 2015 15:10:35 -0300 -Subject: [PATCH] configure: add check for fallocate - -We need to check for fallocate() rather than just linux/falloc.h + -FALLOC_FL_PUNCH_HOLE since in uClibc we've got both but still not -fallocate() itself since it's only implemented in newer unreleased -versions. - -Status: sent upstream. - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 1 + - mkfs/f2fs_format_utils.c | 2 +- - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index ae451b8..900b84a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -68,6 +68,7 @@ AC_TYPE_SIZE_T - # Checks for library functions. - AC_FUNC_GETMNTENT - AC_CHECK_FUNCS_ONCE([ -+ fallocate - getmntent - memset - ]) -diff --git a/mkfs/f2fs_format_utils.c b/mkfs/f2fs_format_utils.c -index a0f85f5..ddeafeb 100644 ---- a/mkfs/f2fs_format_utils.c -+++ b/mkfs/f2fs_format_utils.c -@@ -46,7 +46,7 @@ int f2fs_trim_device() - #if defined(WITH_BLKDISCARD) && defined(BLKDISCARD) - MSG(0, "Info: Discarding device\n"); - if (S_ISREG(stat_buf.st_mode)) { --#ifdef FALLOC_FL_PUNCH_HOLE -+#if defined(HAVE_FALLOCATE) && defined(FALLOC_FL_PUNCH_HOLE) - if (fallocate(config.fd, FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE, - range[0], range[1]) < 0) { - MSG(0, "Info: fallocate(PUNCH_HOLE|KEEP_SIZE) is failed\n"); --- -2.0.5 - diff --git a/package/f2fs-tools/Config.in b/package/f2fs-tools/Config.in index 6a98e79cd7..ab81734de2 100644 --- a/package/f2fs-tools/Config.in +++ b/package/f2fs-tools/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_F2FS_TOOLS bool "f2fs-tools" select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID - depends on BR2_USE_WCHAR # util-linux + depends on BR2_USE_WCHAR # uses wchar_t help Tools for Flash-Friendly File System (F2FS) diff --git a/package/f2fs-tools/f2fs-tools.mk b/package/f2fs-tools/f2fs-tools.mk index e5c4a540cb..d3956c448d 100644 --- a/package/f2fs-tools/f2fs-tools.mk +++ b/package/f2fs-tools/f2fs-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -F2FS_TOOLS_VERSION = fd32210229d4ad7d1c916c74a0dfc150aae4c89e +F2FS_TOOLS_VERSION = v1.6.1 F2FS_TOOLS_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git F2FS_TOOLS_SITE_METHOD = git F2FS_TOOLS_CONF_ENV = ac_cv_file__git=no diff --git a/package/faifa/faifa.hash b/package/faifa/faifa.hash new file mode 100644 index 0000000000..b4c27418f7 --- /dev/null +++ b/package/faifa/faifa.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 6eada81f3d21f80b5848338b627784981064d728f8e377e5cf973d31640d4489 faifa-v0.1.tar.gz diff --git a/package/fakedate/fakedate b/package/fakedate/fakedate new file mode 100755 index 0000000000..4a9b9b5e64 --- /dev/null +++ b/package/fakedate/fakedate @@ -0,0 +1,57 @@ +#!/bin/sh +# vim: set sw=4 expandtab: +# +# 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 +# +# Copyright (C) 2016 Jérôme Pouiller +# + +# Sanity check +if ! readlink -f "$0" | grep -q fakedate; then + echo "fakedate: Please name this script \`fakedate'" + exit 1 +fi + +DATE_BIN=false +# Do not call `date' directly since it will produce an infinite recursion. +# Instead, find path of true `date' binary. +for P in `echo $PATH | tr ':' ' '`; do + if [ -x "$P/date" ]; then + if readlink -f "$P/date" | grep -qv fakedate; then + DATE_BIN="$P/date" + break; + fi + fi +done + +if [ -n "$SOURCE_DATE_EPOCH" ]; then + FORCE_EPOCH=1 + for i in "$@"; do + # Use of --date, --file and --reference (and their short option counter + # parts) is incompatible with SOURCE_DATE_EPOCH. + # -u and -R are the only short options without argument. So they could + # appear between '-' and option we want to match. + if echo "$i" | grep -qE '^-([uR]*d|-date|[uR]*f|-file|[uR]*r|--reference)'; then + FORCE_EPOCH=0 + break; + fi + done + if [ $FORCE_EPOCH -eq 1 ]; then + echo "date: Warning: using \$SOURCE_DATE_EPOCH instead of true time" >&2 + exec $DATE_BIN -d "@$SOURCE_DATE_EPOCH" "$@" + fi +fi + +exec $DATE_BIN "$@" diff --git a/package/fakedate/fakedate.mk b/package/fakedate/fakedate.mk new file mode 100644 index 0000000000..61d4bd702e --- /dev/null +++ b/package/fakedate/fakedate.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# fakedate +# +################################################################################ + +# source included in buildroot +HOST_FAKEDATE_LICENSE = GPLv2+ + +define HOST_FAKEDATE_INSTALL_CMDS + $(INSTALL) -D -m 755 package/fakedate/fakedate $(HOST_DIR)/usr/bin/fakedate + ln -sfn fakedate $(HOST_DIR)/usr/bin/date +endef + +$(eval $(host-generic-package)) diff --git a/package/fakeroot/0001-hide-dlsym-error.patch b/package/fakeroot/0001-hide-dlsym-error.patch new file mode 100644 index 0000000000..2c61fab248 --- /dev/null +++ b/package/fakeroot/0001-hide-dlsym-error.patch @@ -0,0 +1,34 @@ +Description: Hide error from dlsym() + dlsym(), starting in glibc 2.24 actually reports errors. In our case, + we try to get ACL functions which are not in the glibc. This causes + failures in test suites, so hide those messages for non-debugging + purposes for now. It also makes the build logs annoying to read. +Author: Julian Andres Klode +Origin: vendor +Bug-Debian: https://bugs.debian.org/830912 +Forwarded: no +Last-Update: 2016-08-12 + +Signed-off-by: Maxime Hadjinlian + +--- a/libfakeroot.c ++++ b/libfakeroot.c +@@ -256,10 +256,16 @@ void load_library_symbols(void){ + /* clear dlerror() just in case dlsym() legitimately returns NULL */ + msg = dlerror(); + *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name); ++ + if ( (msg = dlerror()) != NULL){ +- fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); +-/* abort ();*/ ++#ifdef LIBFAKEROOT_DEBUGGING ++ if (fakeroot_debug) { ++ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); ++/* abort ();*/ ++ } ++#endif + } ++ + } + } + diff --git a/package/faketime/faketime.hash b/package/faketime/faketime.hash new file mode 100644 index 0000000000..a17ef8526b --- /dev/null +++ b/package/faketime/faketime.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 56bc32006f4c5b021ff648cc1fd458c5316f40aadfd2031879229a234189b031 faketime-v0.9.6.tar.gz diff --git a/package/fb-test-app/fb-test-app.hash b/package/fb-test-app/fb-test-app.hash new file mode 100644 index 0000000000..7f7375316c --- /dev/null +++ b/package/fb-test-app/fb-test-app.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6baf6b45968d0bb9a5527c6c4bf18661e9f9eb9be973a6d1952c38168c90d58f fb-test-app-rosetta-1.1.0.tar.gz diff --git a/package/fbset/0001-Fix-musl-compile.patch b/package/fbset/0001-Fix-musl-compile.patch new file mode 100644 index 0000000000..65d84c5777 --- /dev/null +++ b/package/fbset/0001-Fix-musl-compile.patch @@ -0,0 +1,33 @@ +From 6d42be24b62b94df8e2f01956842b7ee4b640e97 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 11 Jul 2016 22:07:42 +0200 +Subject: [PATCH] Fix musl compile. + +Unconditional include for __u32 type. + +Fixes: + + error: unknown type name '__u32' + +Signed-off-by: Peter Seiderer +--- + fbset.h | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/fbset.h b/fbset.h +index 9b1d2ac..3c511e1 100644 +--- a/fbset.h ++++ b/fbset.h +@@ -15,9 +15,7 @@ + #include + #include + +-#ifdef __GLIBC__ + #include +-#endif + + #define VERSION "Linux Frame Buffer Device Configuration " \ + "Version 2.1 (23/06/1999)\n" \ +-- +2.8.1 + diff --git a/package/fbset/Config.in b/package/fbset/Config.in index 96d090ecf8..c3f8d0ba7f 100644 --- a/package/fbset/Config.in +++ b/package/fbset/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_FBSET bool "fbset" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Fbset is a system utility to show or change the settings of the frame buffer device. The frame buffer device provides a simple and unique diff --git a/package/fbterm/0003-C++11-compliance.patch b/package/fbterm/0003-C++11-compliance.patch new file mode 100644 index 0000000000..1a06da3d16 --- /dev/null +++ b/package/fbterm/0003-C++11-compliance.patch @@ -0,0 +1,93 @@ +lib/vterm_states: fix C++11 compliance + +In C++11, narrowing a type is no longer allowed in structure +initializers: + + struct foo { u16 u; }; + foo f[] = { {0}, {-1} }; + +results in the gcc-6 to whine out loudly, and fail: + + error: narrowing conversion of ‘-1’ from ‘int’ to ‘u16 {aka short unsigned int}’ inside { } [-Wnarrowing] + }; + ^ + +Signed-off-by: "Yann E. MORIN" + +diff -durN fbterm-1.7.0.orig/src/lib/vterm_states.cpp fbterm-1.7.0/src/lib/vterm_states.cpp +--- fbterm-1.7.0.orig/src/lib/vterm_states.cpp 2010-10-06 06:23:08.000000000 +0200 ++++ fbterm-1.7.0/src/lib/vterm_states.cpp 2016-08-13 16:54:29.495451127 +0200 +@@ -22,6 +22,7 @@ + #include "vterm.h" + + #define ADDSAME(len) ((len) << 8) ++#define ENDSEQ { ((u16)-1) } + + const VTerm::Sequence VTerm::control_sequences[] = { + { 0, 0, ESkeep }, +@@ -39,14 +40,14 @@ + { 0x1B, 0, ESesc }, + { 0x7F, 0, ESkeep }, + { 0x9B, 0, ESsquare }, +- { -1} ++ ENDSEQ + }; + + const VTerm::Sequence VTerm::escape_sequences[] = { + { 0, 0, ESnormal }, + + // ESnormal +- { -1 }, ++ ENDSEQ, + + // ESesc + { '[', &VTerm::clear_param, ESsquare }, +@@ -65,7 +66,7 @@ + { '8', &VTerm::restore_cursor, ESnormal }, + { '>', &VTerm::keypad_numeric, ESnormal }, + { '=', &VTerm::keypad_application, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // ESsquare + { '[', 0, ESfunckey }, +@@ -104,7 +105,7 @@ + { '`', &VTerm::cursor_position_col, ESnormal }, + { ']', &VTerm::linux_specific, ESnormal }, + { '}', &VTerm::fbterm_specific, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // ESnonstd + { '0' | ADDSAME(9), &VTerm::set_palette, ESkeep }, +@@ -112,25 +113,25 @@ + { 'a' | ADDSAME(5), &VTerm::set_palette, ESkeep }, + { 'P', &VTerm::begin_set_palette, ESkeep }, + { 'R', &VTerm::reset_palette, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // ESpercent + { '@', &VTerm::clear_utf8, ESnormal }, + { 'G', &VTerm::set_utf8, ESnormal }, + { '8', &VTerm::set_utf8, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // EScharset + { '0', &VTerm::set_charset, ESnormal }, + { 'B', &VTerm::set_charset, ESnormal }, + { 'U', &VTerm::set_charset, ESnormal }, + { 'K', &VTerm::set_charset, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // EShash + { '8', &VTerm::screen_align, ESnormal }, +- { -1 }, ++ ENDSEQ, + + // ESfunckey +- { -1 }, ++ ENDSEQ, + }; diff --git a/package/fbterm/0004-iconv.patch b/package/fbterm/0004-iconv.patch new file mode 100644 index 0000000000..39c9182e4e --- /dev/null +++ b/package/fbterm/0004-iconv.patch @@ -0,0 +1,41 @@ +Fix building against libiconv + +Downloaded from +https://github.com/kyak/openwrt-packages/blob/master/fbterm/patches/001-iconv.patch + +Signed-off-by: Bernd Kuhls + +--- a/src/lib/io.cpp ++++ b/src/lib/io.cpp +@@ -119,10 +119,10 @@ void IoPipe::setCodec(const s8 *up, cons + if (!strcasecmp(up, down)) return; + + mCodecRead = iconv_open(up, down); +- if (mCodecRead == (void*)-1) mCodecRead = 0; ++ if (mCodecRead == (iconv_t)(-1)) mCodecRead = 0; + + mCodecWrite = iconv_open(down, up); +- if (mCodecWrite == (void*)-1) mCodecWrite = 0; ++ if (mCodecWrite == (iconv_t)(-1)) mCodecWrite = 0; + } + + #define BUF_SIZE 10240 +--- a/src/lib/io.h ++++ b/src/lib/io.h +@@ -23,6 +23,7 @@ + + #include "type.h" + #include "instance.h" ++#include + + class IoPipe { + public: +@@ -47,7 +48,7 @@ private: + void writeIo(s8 *buf, u32 len); + + s32 mFd; +- void *mCodecRead, *mCodecWrite; ++ iconv_t mCodecRead, mCodecWrite; + s8 mBufRead[16], mBufWrite[16]; + u32 mBufLenRead, mBufLenWrite; + }; diff --git a/package/fbterm/Config.in b/package/fbterm/Config.in index 2c9d6d4573..3ab8bdb4d4 100644 --- a/package/fbterm/Config.in +++ b/package/fbterm/Config.in @@ -1,6 +1,9 @@ config BR2_PACKAGE_FBTERM bool "fbterm" - depends on (BR2_INSTALL_LIBSTDCPP && BR2_ENABLE_LOCALE && BR2_USE_WCHAR) + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_ENABLE_LOCALE + depends on BR2_USE_WCHAR + depends on BR2_USE_MMU # fork() select BR2_PACKAGE_FONTCONFIG select BR2_PACKAGE_LIBERATION help @@ -10,4 +13,5 @@ config BR2_PACKAGE_FBTERM http://code.google.com/p/fbterm/ comment "fbterm needs a toolchain w/ C++, wchar, locale" + depends on BR2_USE_MMU depends on !(BR2_INSTALL_LIBSTDCPP && BR2_ENABLE_LOCALE && BR2_USE_WCHAR) diff --git a/package/fbterm/fbterm.mk b/package/fbterm/fbterm.mk index 7a424a5e9b..be3cbe24fd 100644 --- a/package/fbterm/fbterm.mk +++ b/package/fbterm/fbterm.mk @@ -5,7 +5,7 @@ ################################################################################ FBTERM_VERSION = 1.7.0 -FBTERM_SITE = http://fbterm.googlecode.com/files +FBTERM_SITE = https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/fbterm FBTERM_LICENSE = GPLv2+ FBTERM_LICENSE_FILES = COPYING FBTERM_DEPENDENCIES = fontconfig liberation diff --git a/package/fbtft/fbtft.hash b/package/fbtft/fbtft.hash new file mode 100644 index 0000000000..894d9794a9 --- /dev/null +++ b/package/fbtft/fbtft.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 0e81de89fdd7ab810716fc0549e767527f342e829309dee5c2cca1e9d1728770 fbtft-274035404701245e7491c0c6471c5b72ade4d491.tar.gz diff --git a/package/fcgiwrap/0002-link-with-libsystemd-instead-of-libsystemd-daemon.patch b/package/fcgiwrap/0002-link-with-libsystemd-instead-of-libsystemd-daemon.patch new file mode 100644 index 0000000000..e88706f8ba --- /dev/null +++ b/package/fcgiwrap/0002-link-with-libsystemd-instead-of-libsystemd-daemon.patch @@ -0,0 +1,20 @@ +configure.ac: Check for libsystemd, not libsystemd-daemon. + +Newer versions of systemd do not provide libsystemd-daemon anymore. +Therefore, use libsystemd instead. + +Signed-off-by: Thomas Claveirole + +diff --git a/configure.ac b/configure.ac +index bb3674e..2b02ef4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -28,7 +28,7 @@ AC_ARG_WITH([systemd], + [], [with_systemd=check]) + have_systemd=no + if test "x$with_systemd" != "xno"; then +- PKG_CHECK_MODULES(systemd, [libsystemd-daemon], ++ PKG_CHECK_MODULES(systemd, [libsystemd], + [AC_DEFINE(HAVE_SYSTEMD, 1, [Define if systemd is available]) + have_systemd=yes], + have_systemd=no) diff --git a/package/fcgiwrap/Config.in b/package/fcgiwrap/Config.in index c3a31fc8db..b1dbd72d48 100644 --- a/package/fcgiwrap/Config.in +++ b/package/fcgiwrap/Config.in @@ -7,4 +7,4 @@ config BR2_PACKAGE_FCGIWRAP over FastCGI. It hopes to provide clean CGI support to Nginx (and other web servers that may need it). - https://nginx.localdomain.pl/wiki/FcgiWrap + https://github.com/gnosek/fcgiwrap diff --git a/package/fcgiwrap/fcgiwrap.hash b/package/fcgiwrap/fcgiwrap.hash new file mode 100644 index 0000000000..4ad8b0bb77 --- /dev/null +++ b/package/fcgiwrap/fcgiwrap.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c72f2933669ebd21605975c5a11f26b9739e32e4f9d324fb9e1a1925e9c2ae88 fcgiwrap-99c942c90063c73734e56bacaa65f947772d9186.tar.gz diff --git a/package/fcgiwrap/fcgiwrap.mk b/package/fcgiwrap/fcgiwrap.mk index 698a1308e1..dd74c1ef72 100644 --- a/package/fcgiwrap/fcgiwrap.mk +++ b/package/fcgiwrap/fcgiwrap.mk @@ -4,11 +4,11 @@ # ################################################################################ -FCGIWRAP_VERSION = 1.1.0 +FCGIWRAP_VERSION = 99c942c90063c73734e56bacaa65f947772d9186 FCGIWRAP_SITE = $(call github,gnosek,fcgiwrap,$(FCGIWRAP_VERSION)) FCGIWRAP_DEPENDENCIES = host-pkgconf libfcgi FCGIWRAP_LICENSE = MIT -FCGIWRAP_LICENSE_FILES = fcgiwrap.c +FCGIWRAP_LICENSE_FILES = COPYING FCGIWRAP_AUTORECONF = YES ifeq ($(BR2_PACKAGE_SYSTEMD),y) diff --git a/package/fdk-aac/Config.in b/package/fdk-aac/Config.in index 1ec59e1a88..f51c5ab19c 100644 --- a/package/fdk-aac/Config.in +++ b/package/fdk-aac/Config.in @@ -1,11 +1,14 @@ +# These are the architectures supported by FDK AAC +config BR2_PACKAGE_FDK_AAC_ARCH_SUPPORTS + bool + default y if BR2_i386 || BR2_x86_64 || BR2_arm || BR2_armeb || \ + BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ + BR2_powerpc || BR2_sh + config BR2_PACKAGE_FDK_AAC bool "fdk-aac" + depends on BR2_PACKAGE_FDK_AAC_ARCH_SUPPORTS depends on BR2_INSTALL_LIBSTDCPP - # These are the architectures supported by FDK AAC - depends on BR2_i386 || BR2_x86_64 || BR2_arm || BR2_armeb || \ - BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ - BR2_powerpc || BR2_sh || BR2_sh64 - help The Fraunhofer FDK AAC Codec Library for Android ("FDK AAC Codec") is software that implements the MPEG Advanced Audio Coding ("AAC") @@ -14,7 +17,5 @@ config BR2_PACKAGE_FDK_AAC http://sourceforge.net/projects/opencore-amr/files/fdk-aac/ comment "fdk-aac needs a toolchain w/ C++" + depends on BR2_PACKAGE_FDK_AAC_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_i386 || BR2_x86_64 || BR2_arm || BR2_armeb || \ - BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ - BR2_powerpc || BR2_sh || BR2_sh64 diff --git a/package/feh/feh.hash b/package/feh/feh.hash index 76d624875d..faca43dbed 100644 --- a/package/feh/feh.hash +++ b/package/feh/feh.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 c80f3d3297b3b6ee4898572d19692f5e19eb3066a9ca078c3099d39004a7e0cf feh-2.14.2.tar.bz2 +# Locally calculated after checking pgp signature +sha256 a9e818a4ad6ab427597e1799527a7576856c233525e67afb1eb2cb3ae709d853 feh-2.17.1.tar.bz2 diff --git a/package/feh/feh.mk b/package/feh/feh.mk index f650938d24..03651cdb76 100644 --- a/package/feh/feh.mk +++ b/package/feh/feh.mk @@ -4,7 +4,7 @@ # ################################################################################ -FEH_VERSION = 2.14.2 +FEH_VERSION = 2.17.1 FEH_SOURCE = feh-$(FEH_VERSION).tar.bz2 FEH_SITE = http://feh.finalrewind.org FEH_DEPENDENCIES = libcurl imlib2 libpng xlib_libXinerama xlib_libXt @@ -12,12 +12,12 @@ FEH_LICENSE = MIT FEH_LICENSE_FILES = COPYING define FEH_BUILD_CMDS - $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ -C $(@D) all endef define FEH_INSTALL_TARGET_CMDS - $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) " \ + $(TARGET_MAKE_ENV) $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) " \ PREFIX=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install endef diff --git a/package/fetchmail/fetchmail.mk b/package/fetchmail/fetchmail.mk index a198dc52ef..6aa0a2c918 100644 --- a/package/fetchmail/fetchmail.mk +++ b/package/fetchmail/fetchmail.mk @@ -23,4 +23,14 @@ FETCHMAIL_DEPENDENCIES = \ openssl \ $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) +# fetchmailconf.py script is not (yet) python3-compliant. +# Prevent the pyc-compilation with python-3 from failing by removing this +# non-critical script. +ifeq ($(BR2_PACKAGE_PYTHON3),y) +define FETCHMAIL_REMOVE_FETCHMAILCONF_PY + $(RM) -f $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/fetchmailconf.py +endef +FETCHMAIL_POST_INSTALL_TARGET_HOOKS += FETCHMAIL_REMOVE_FETCHMAILCONF_PY +endif + $(eval $(autotools-package)) diff --git a/package/ffmpeg/0001-Support-raw-dvdsub-palette-as-stored-on-normal-dvd-s.patch b/package/ffmpeg/0001-Support-raw-dvdsub-palette-as-stored-on-normal-dvd-s.patch deleted file mode 100644 index a51a7d3c9c..0000000000 --- a/package/ffmpeg/0001-Support-raw-dvdsub-palette-as-stored-on-normal-dvd-s.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 74f1c9b43b191a9d6b494e90a4a11677fca33c13 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Sun, 11 Sep 2011 19:04:51 +0200 -Subject: [PATCH 01/13] Support raw dvdsub palette as stored on normal dvd's - -This is how the palette is stored on dvd's. Currently -only xbmc passes the palette information to libavcodec -this way. - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavcodec/dvdsubdec.c | 24 ++++++++++++++++++++++++ - 1 file changed, 24 insertions(+) - -diff --git a/libavcodec/dvdsubdec.c b/libavcodec/dvdsubdec.c -index 39604f3..a711e16 100644 ---- a/libavcodec/dvdsubdec.c -+++ b/libavcodec/dvdsubdec.c -@@ -64,6 +64,24 @@ static void yuv_a_to_rgba(const uint8_t *ycbcr, const uint8_t *alpha, uint32_t * - } - } - -+static void ayvu_to_argb(const uint8_t *ayvu, uint32_t *argb, int num_values) -+{ -+ uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; -+ uint8_t r, g, b; -+ int i, y, cb, cr, a; -+ int r_add, g_add, b_add; -+ -+ for (i = num_values; i > 0; i--) { -+ a = *ayvu++; -+ y = *ayvu++; -+ cr = *ayvu++; -+ cb = *ayvu++; -+ YUV_TO_RGB1_CCIR(cb, cr); -+ YUV_TO_RGB2_CCIR(r, g, b, y); -+ *argb++ = (a << 24) | (r << 16) | (g << 8) | b; -+ } -+} -+ - static int decode_run_2bit(GetBitContext *gb, int *color) - { - unsigned int v, t; -@@ -697,6 +715,12 @@ static av_cold int dvdsub_init(AVCodecContext *avctx) - parse_ifo_palette(ctx, ctx->ifo_str); - if (ctx->palette_str) - parse_palette(ctx, ctx->palette_str); -+ -+ if (!ctx->has_palette && avctx->extradata_size == 64) { -+ ayvu_to_argb((uint8_t*)avctx->extradata, ctx->palette, 16); -+ ctx->has_palette = 1; -+ } -+ - if (ctx->has_palette) { - int i; - av_log(avctx, AV_LOG_DEBUG, "palette:"); --- -2.1.0 - diff --git a/package/ffmpeg/0001-bfin-disable-optimization.patch b/package/ffmpeg/0001-bfin-disable-optimization.patch new file mode 100644 index 0000000000..1d8a4f015d --- /dev/null +++ b/package/ffmpeg/0001-bfin-disable-optimization.patch @@ -0,0 +1,26 @@ +Fix bfin compile error + +See gcc bug report: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77311 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur ffmpeg-2.8.7.orig/libavcodec/hevcdsp_template.c ffmpeg-2.8.7/libavcodec/hevcdsp_template.c +--- ffmpeg-2.8.7.orig/libavcodec/hevcdsp_template.c 2016-03-29 04:25:16.000000000 +0200 ++++ ffmpeg-2.8.7/libavcodec/hevcdsp_template.c 2016-08-12 21:32:36.728178969 +0200 +@@ -1517,7 +1517,14 @@ + #define TQ2 pix[2 * xstride + 3 * ystride] + #define TQ3 pix[3 * xstride + 3 * ystride] + +-static void FUNC(hevc_loop_filter_luma)(uint8_t *_pix, ++// Blackfin gcc 6.1.x fails with ++// unable to find a register to spill in class CCREGS ++#if defined(__bfin__) ++#define disable_opt __attribute__ ((optimize("O1"))) ++#else ++#define disable_opt ++#endif ++static void disable_opt FUNC(hevc_loop_filter_luma)(uint8_t *_pix, + ptrdiff_t _xstride, ptrdiff_t _ystride, + int beta, int *_tc, + uint8_t *_no_p, uint8_t *_no_q) diff --git a/package/ffmpeg/0003-if-av_read_packet-returns-AVERROR_IO-we-are-done.-ff.patch b/package/ffmpeg/0003-if-av_read_packet-returns-AVERROR_IO-we-are-done.-ff.patch deleted file mode 100644 index 034413405f..0000000000 --- a/package/ffmpeg/0003-if-av_read_packet-returns-AVERROR_IO-we-are-done.-ff.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 54200b3e6009c6870e33c02c8bbcf023fcd92cac Mon Sep 17 00:00:00 2001 -From: Cory Fields -Date: Mon, 28 Jun 2010 01:55:31 -0400 -Subject: [PATCH 03/13] if av_read_packet returns AVERROR_IO, we are done. - ffmpeg's codecs might or might not handle returning any completed demuxed - packets correctly - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/utils.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/libavformat/utils.c b/libavformat/utils.c -index ae6347a..3e8af50 100644 ---- a/libavformat/utils.c -+++ b/libavformat/utils.c -@@ -1304,6 +1304,8 @@ static int read_frame_internal(AVFormatContext *s, AVPacket *pkt) - if (ret < 0) { - if (ret == AVERROR(EAGAIN)) - return ret; -+ if (ret == AVERROR(EIO)) -+ return ret; - /* flush the parsers */ - for (i = 0; i < s->nb_streams; i++) { - st = s->streams[i]; --- -2.1.0 - diff --git a/package/ffmpeg/0004-added-Ticket-7187-TV-Teletext-support-for-DVB-EBU-Te.patch b/package/ffmpeg/0004-added-Ticket-7187-TV-Teletext-support-for-DVB-EBU-Te.patch deleted file mode 100644 index bc6a2d456d..0000000000 --- a/package/ffmpeg/0004-added-Ticket-7187-TV-Teletext-support-for-DVB-EBU-Te.patch +++ /dev/null @@ -1,47 +0,0 @@ -From e9236f6fe3fae1ad4a3a2b6b63db493b083f0b21 Mon Sep 17 00:00:00 2001 -From: Cory Fields -Date: Mon, 28 Jun 2010 02:10:50 -0400 -Subject: [PATCH 04/13] added: Ticket #7187, TV Teletext support for DVB EBU - Teletext streams - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavcodec/avcodec.h | 4 ++++ - libavformat/mpegts.c | 2 ++ - 2 files changed, 6 insertions(+) - -diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h -index dabae1b..dd6ef3f 100644 ---- a/libavcodec/avcodec.h -+++ b/libavcodec/avcodec.h -@@ -520,6 +520,10 @@ enum AVCodecID { - AV_CODEC_ID_PJS = MKBETAG('P','h','J','S'), - AV_CODEC_ID_ASS = MKBETAG('A','S','S',' '), ///< ASS as defined in Matroska - -+ /* data codecs */ -+ AV_CODEC_ID_VBI_DATA= 0x17500, -+ AV_CODEC_ID_VBI_TELETEXT, -+ - /* other specific kind of codecs (generally used for attachments) */ - AV_CODEC_ID_FIRST_UNKNOWN = 0x18000, ///< A dummy ID pointing at the start of various fake codecs. - AV_CODEC_ID_TTF = 0x18000, -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index 97da0a3..5dd28f1 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -729,6 +729,8 @@ static const StreamType DESC_types[] = { - { 0x7b, AVMEDIA_TYPE_AUDIO, AV_CODEC_ID_DTS }, - { 0x56, AVMEDIA_TYPE_SUBTITLE, AV_CODEC_ID_DVB_TELETEXT }, - { 0x59, AVMEDIA_TYPE_SUBTITLE, AV_CODEC_ID_DVB_SUBTITLE }, /* subtitling descriptor */ -+ { 0x45, AVMEDIA_TYPE_DATA, AV_CODEC_ID_VBI_DATA }, /* VBI Data descriptor */ -+ { 0x46, AVMEDIA_TYPE_DATA, AV_CODEC_ID_VBI_TELETEXT }, /* VBI Teletext descriptor */ - { 0 }, - }; - --- -2.1.0 - diff --git a/package/ffmpeg/0005-Don-t-accept-mpegts-PMT-that-isn-t-current.patch b/package/ffmpeg/0005-Don-t-accept-mpegts-PMT-that-isn-t-current.patch deleted file mode 100644 index feb58f7b25..0000000000 --- a/package/ffmpeg/0005-Don-t-accept-mpegts-PMT-that-isn-t-current.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 1f48ee2290e9041b0371eb9a9cb742e9568930a1 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Sun, 18 Sep 2011 19:16:34 +0200 -Subject: [PATCH 05/13] Don't accept mpegts PMT that isn't current - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mpegts.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index 5dd28f1..9f85aed 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -572,6 +572,7 @@ typedef struct SectionHeader { - uint8_t tid; - uint16_t id; - uint8_t version; -+ uint8_t current; - uint8_t sec_num; - uint8_t last_sec_num; - } SectionHeader; -@@ -643,6 +644,7 @@ static int parse_section_header(SectionHeader *h, - val = get8(pp, p_end); - if (val < 0) - return val; -+ h->current = val & 0x1; - h->version = (val >> 1) & 0x1f; - val = get8(pp, p_end); - if (val < 0) -@@ -1968,6 +1970,8 @@ static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len - return; - if (ts->skip_changes) - return; -+ if (!h->current) -+ return; - - ts->stream->ts_id = h->id; - --- -2.1.0 - diff --git a/package/ffmpeg/0006-Don-t-reparse-PMT-unless-it-s-version-has-changed.patch b/package/ffmpeg/0006-Don-t-reparse-PMT-unless-it-s-version-has-changed.patch deleted file mode 100644 index 0418f25eb1..0000000000 --- a/package/ffmpeg/0006-Don-t-reparse-PMT-unless-it-s-version-has-changed.patch +++ /dev/null @@ -1,48 +0,0 @@ -From db98fbe37f2f7175ff03b8d582e940518ddf3642 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Sun, 18 Sep 2011 19:17:23 +0200 -Subject: [PATCH 06/13] Don't reparse PMT unless it's version has changed - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mpegts.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index 9f85aed..25007a6 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -88,6 +88,7 @@ struct MpegTSFilter { - int es_id; - int last_cc; /* last cc code (-1 if first packet) */ - int64_t last_pcr; -+ int last_version; /* last version of data on this pid */ - enum MpegTSFilterType type; - union { - MpegTSPESFilter pes_filter; -@@ -450,6 +451,7 @@ static MpegTSFilter *mpegts_open_filter(MpegTSContext *ts, unsigned int pid, - filter->es_id = -1; - filter->last_cc = -1; - filter->last_pcr= -1; -+ filter->last_version = -1; - - return filter; - } -@@ -1972,6 +1974,10 @@ static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len - return; - if (!h->current) - return; -+ if (h->version == filter->last_version) -+ return; -+ filter->last_version = h->version; -+ av_dlog(ts->stream, "version=%d\n", filter->last_version); - - ts->stream->ts_id = h->id; - --- -2.1.0 - diff --git a/package/ffmpeg/0007-Read-PID-timestamps-as-well-as-PCR-timestamps-to-fin.patch b/package/ffmpeg/0007-Read-PID-timestamps-as-well-as-PCR-timestamps-to-fin.patch deleted file mode 100644 index 259b35939e..0000000000 --- a/package/ffmpeg/0007-Read-PID-timestamps-as-well-as-PCR-timestamps-to-fin.patch +++ /dev/null @@ -1,105 +0,0 @@ -From fdd8caea6535434a877587f5325e914ba50ed17f Mon Sep 17 00:00:00 2001 -From: Cory Fields -Date: Fri, 9 Jul 2010 16:43:31 -0400 -Subject: [PATCH 07/13] Read PID timestamps as well as PCR timestamps to find - location in mpegts stream - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mpegts.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++-- - 1 file changed, 46 insertions(+), 2 deletions(-) - -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index 25007a6..d5a8a45 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -2459,6 +2459,44 @@ static void seek_back(AVFormatContext *s, AVIOContext *pb, int64_t pos) { - av_log(s, pb->seekable ? AV_LOG_ERROR : AV_LOG_INFO, "Unable to seek back to the start\n"); - } - -+static int parse_timestamp(int64_t *ts, const uint8_t *buf) -+{ -+ int afc, flags; -+ const uint8_t *p; -+ -+ if(!(buf[1] & 0x40)) /* must be a start packet */ -+ return -1; -+ -+ afc = (buf[3] >> 4) & 3; -+ p = buf + 4; -+ if (afc == 0 || afc == 2) /* invalid or only adaption field */ -+ return -1; -+ if (afc == 3) -+ p += p[0] + 1; -+ if (p >= buf + TS_PACKET_SIZE) -+ return -1; -+ -+ if (p[0] != 0x00 || p[1] != 0x00 || p[2] != 0x01) /* packet_start_code_prefix */ -+ return -1; -+ -+ flags = p[3] | 0x100; /* stream type */ -+ if (!((flags >= 0x1c0 && flags <= 0x1df) || -+ (flags >= 0x1e0 && flags <= 0x1ef) || -+ (flags == 0x1bd) || (flags == 0x1fd))) -+ return -1; -+ -+ flags = p[7]; -+ if ((flags & 0xc0) == 0x80) { -+ *ts = ff_parse_pes_pts(p+9); -+ return 0; -+ } else if ((flags & 0xc0) == 0xc0) { -+ *ts = ff_parse_pes_pts(p+9+5); -+ return 0; -+ } -+ return -1; -+} -+ -+ - static int mpegts_read_header(AVFormatContext *s) - { - MpegTSContext *ts = s->priv_data; -@@ -2658,6 +2696,7 @@ static av_unused int64_t mpegts_get_pcr(AVFormatContext *s, int stream_index, - uint8_t buf[TS_PACKET_SIZE]; - int pcr_l, pcr_pid = - ((PESContext *)s->streams[stream_index]->priv_data)->pcr_pid; -+ int pid = ((PESContext*)s->streams[stream_index]->priv_data)->pid; - int pos47 = ts->pos47_full % ts->raw_packet_size; - pos = - ((*ppos + ts->raw_packet_size - 1 - pos47) / ts->raw_packet_size) * -@@ -2679,6 +2718,11 @@ static av_unused int64_t mpegts_get_pcr(AVFormatContext *s, int stream_index, - *ppos = pos; - return timestamp; - } -+ if ((pid < 0 || (AV_RB16(buf + 1) & 0x1fff) == pid) && -+ parse_timestamp(×tamp, buf) == 0) { -+ *ppos = pos; -+ return timestamp; -+ } - pos += ts->raw_packet_size; - } - -@@ -2778,7 +2822,7 @@ AVInputFormat ff_mpegts_demuxer = { - .read_header = mpegts_read_header, - .read_packet = mpegts_read_packet, - .read_close = mpegts_read_close, -- .read_timestamp = mpegts_get_dts, -+ .read_timestamp = mpegts_get_pcr, - .flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, - .priv_class = &mpegts_class, - }; -@@ -2790,7 +2834,7 @@ AVInputFormat ff_mpegtsraw_demuxer = { - .read_header = mpegts_read_header, - .read_packet = mpegts_raw_read_packet, - .read_close = mpegts_read_close, -- .read_timestamp = mpegts_get_dts, -+ .read_timestamp = mpegts_get_pcr, - .flags = AVFMT_SHOW_IDS | AVFMT_TS_DISCONT, - .priv_class = &mpegtsraw_class, - }; --- -2.1.0 - diff --git a/package/ffmpeg/0008-Get-stream-durations-using-read_timestamp.patch b/package/ffmpeg/0008-Get-stream-durations-using-read_timestamp.patch deleted file mode 100644 index 0b80c113e1..0000000000 --- a/package/ffmpeg/0008-Get-stream-durations-using-read_timestamp.patch +++ /dev/null @@ -1,74 +0,0 @@ -From c57e5b8154f5fe1457f4c64e04885a2cdfb37f51 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Sat, 22 Oct 2011 19:01:38 +0200 -Subject: [PATCH 08/13] Get stream durations using read_timestamp - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/utils.c | 39 +++++++++++++++++++++++++++++++++++++++ - 1 file changed, 39 insertions(+) - -diff --git a/libavformat/utils.c b/libavformat/utils.c -index 3e8af50..f4fb172 100644 ---- a/libavformat/utils.c -+++ b/libavformat/utils.c -@@ -2356,6 +2356,41 @@ static void estimate_timings_from_bit_rate(AVFormatContext *ic) - #define DURATION_MAX_READ_SIZE 250000LL - #define DURATION_MAX_RETRY 4 - -+static void av_estimate_timings_from_pts2(AVFormatContext *ic, int64_t old_offset) -+{ -+ AVStream *st; -+ int i, step= 1024; -+ int64_t ts, pos; -+ -+ for(i=0;inb_streams;i++) { -+ st = ic->streams[i]; -+ -+ pos = 0; -+ ts = ic->iformat->read_timestamp(ic, i, &pos, DURATION_MAX_READ_SIZE); -+ if (ts == AV_NOPTS_VALUE) -+ continue; -+ if (st->start_time > ts || st->start_time == AV_NOPTS_VALUE) -+ st->start_time = ts; -+ -+ pos = avio_size(ic->pb) - 1; -+ do { -+ pos -= step; -+ ts = ic->iformat->read_timestamp(ic, i, &pos, pos + step); -+ step += step; -+ } while (ts == AV_NOPTS_VALUE && pos >= step && step < DURATION_MAX_READ_SIZE); -+ -+ if (ts == AV_NOPTS_VALUE) -+ continue; -+ -+ if (st->duration < ts - st->start_time || st->duration == AV_NOPTS_VALUE) -+ st->duration = ts - st->start_time; -+ } -+ -+ fill_all_stream_timings(ic); -+ -+ avio_seek(ic->pb, old_offset, SEEK_SET); -+} -+ - /* only usable for MPEG-PS streams */ - static void estimate_timings_from_pts(AVFormatContext *ic, int64_t old_offset) - { -@@ -2506,6 +2541,10 @@ static void estimate_timings(AVFormatContext *ic, int64_t old_offset) - * the components */ - fill_all_stream_timings(ic); - ic->duration_estimation_method = AVFMT_DURATION_FROM_STREAM; -+ } else if (ic->iformat->read_timestamp && -+ file_size && ic->pb->seekable) { -+ /* get accurate estimate from the PTSes */ -+ av_estimate_timings_from_pts2(ic, old_offset); - } else { - /* less precise: use bitrate info */ - estimate_timings_from_bit_rate(ic); --- -2.1.0 - diff --git a/package/ffmpeg/0009-changed-allow-4-second-skew-between-streams-in-mov-b.patch b/package/ffmpeg/0009-changed-allow-4-second-skew-between-streams-in-mov-b.patch deleted file mode 100644 index fb0aad1e13..0000000000 --- a/package/ffmpeg/0009-changed-allow-4-second-skew-between-streams-in-mov-b.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 4bcec3ef0042244b0ade00d132368d0872f73c72 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Wed, 8 Dec 2010 14:03:43 +0000 -Subject: [PATCH 09/13] changed: allow 4 second skew between streams in mov - before attempting to seek - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mov.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libavformat/mov.c b/libavformat/mov.c -index 8d66c0a..127ffd9 100644 ---- a/libavformat/mov.c -+++ b/libavformat/mov.c -@@ -4028,8 +4028,8 @@ static AVIndexEntry *mov_find_next_sample(AVFormatContext *s, AVStream **st) - if (!sample || (!s->pb->seekable && current_sample->pos < sample->pos) || - (s->pb->seekable && - ((msc->pb != s->pb && dts < best_dts) || (msc->pb == s->pb && -- ((FFABS(best_dts - dts) <= AV_TIME_BASE && current_sample->pos < sample->pos) || -- (FFABS(best_dts - dts) > AV_TIME_BASE && dts < best_dts)))))) { -+ ((FFABS(best_dts - dts) <= 4*AV_TIME_BASE && current_sample->pos < sample->pos) || -+ (FFABS(best_dts - dts) > 4*AV_TIME_BASE && dts < best_dts)))))) { - sample = current_sample; - best_dts = dts; - *st = avst; --- -2.1.0 - diff --git a/package/ffmpeg/0010-fixed-memleak-in-mpegts-demuxer-on-some-malformed-mp.patch b/package/ffmpeg/0010-fixed-memleak-in-mpegts-demuxer-on-some-malformed-mp.patch deleted file mode 100644 index d13d0730b8..0000000000 --- a/package/ffmpeg/0010-fixed-memleak-in-mpegts-demuxer-on-some-malformed-mp.patch +++ /dev/null @@ -1,44 +0,0 @@ -From cb7c19124165508ae5f38a385a14f9c13b096a27 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Fri, 26 Nov 2010 20:56:48 +0000 -Subject: [PATCH 10/13] fixed: memleak in mpegts demuxer on some malformed (??) - mpegts files with too large pes packets - -at-visions sample file brokenStream.mpg - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mpegts.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index d5a8a45..e070f1f 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -832,6 +832,10 @@ static void reset_pes_packet_state(PESContext *pes) - - static void new_pes_packet(PESContext *pes, AVPacket *pkt) - { -+ if(pkt->data) { -+ av_log(pes->stream, AV_LOG_ERROR, "ignoring previously allocated packet on stream %d\n", pkt->stream_index); -+ av_free_packet(pkt); -+ } - av_init_packet(pkt); - - pkt->buf = pes->buffer; -@@ -2649,6 +2653,8 @@ static int mpegts_read_packet(AVFormatContext *s, AVPacket *pkt) - - pkt->size = -1; - ts->pkt = pkt; -+ ts->pkt->data = NULL; -+ - ret = handle_packets(ts, 0); - if (ret < 0) { - av_free_packet(ts->pkt); --- -2.1.0 - diff --git a/package/ffmpeg/0011-Speed-up-mpegts-av_find_stream_info.patch b/package/ffmpeg/0011-Speed-up-mpegts-av_find_stream_info.patch deleted file mode 100644 index 7c81f1d5fd..0000000000 --- a/package/ffmpeg/0011-Speed-up-mpegts-av_find_stream_info.patch +++ /dev/null @@ -1,30 +0,0 @@ -From c315a758a292200c22925603682e259849d6d558 Mon Sep 17 00:00:00 2001 -From: Joakim Plate -Date: Mon, 28 Jun 2010 21:26:54 +0000 -Subject: [PATCH 11/13] Speed up mpegts av_find_stream_info - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavformat/mpegts.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c -index e070f1f..dd9e129 100644 ---- a/libavformat/mpegts.c -+++ b/libavformat/mpegts.c -@@ -994,7 +994,7 @@ static int mpegts_push_data(MpegTSFilter *filter, - goto skip; - - /* stream not present in PMT */ -- if (!pes->st) { -+ if (ts->auto_guess && !pes->st) { - if (ts->skip_changes) - goto skip; - --- -2.1.0 - diff --git a/package/ffmpeg/0012-dxva-h264-Fix-dxva-playback-of-streams-that-don-t-st.patch b/package/ffmpeg/0012-dxva-h264-Fix-dxva-playback-of-streams-that-don-t-st.patch deleted file mode 100644 index f346da131f..0000000000 --- a/package/ffmpeg/0012-dxva-h264-Fix-dxva-playback-of-streams-that-don-t-st.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 939ebbbc46ca9995637415594f1815633587104f Mon Sep 17 00:00:00 2001 -From: marc -Date: Mon, 18 Feb 2013 17:18:18 +0000 -Subject: [PATCH 12/13] dxva-h264 Fix dxva playback of streams that don't start - with an I-Frame. - -Patch part of the XBMC patch set for ffmpeg, downloaded from -https://github.com/xbmc/FFmpeg/. - -Signed-off-by: Bernd Kuhls -Signed-off-by: Thomas Petazzoni ---- - libavcodec/dxva2_h264.c | 8 ++++++++ - libavcodec/h264.c | 1 + - libavcodec/h264.h | 2 ++ - libavcodec/h264_slice.c | 1 + - 4 files changed, 12 insertions(+) - -diff --git a/libavcodec/dxva2_h264.c b/libavcodec/dxva2_h264.c -index 6deccc3..85b25fd 100644 ---- a/libavcodec/dxva2_h264.c -+++ b/libavcodec/dxva2_h264.c -@@ -451,6 +451,14 @@ static int dxva2_h264_end_frame(AVCodecContext *avctx) - - if (ctx_pic->slice_count <= 0 || ctx_pic->bitstream_size <= 0) - return -1; -+ -+ // Wait for an I-frame before start decoding. Workaround for ATI UVD and UVD+ GPUs -+ if (!h->got_first_iframe) { -+ if (!(ctx_pic->pp.wBitFields & (1 << 15))) -+ return -1; -+ h->got_first_iframe = 1; -+ } -+ - ret = ff_dxva2_common_end_frame(avctx, h->cur_pic_ptr->f, - &ctx_pic->pp, sizeof(ctx_pic->pp), - &ctx_pic->qm, sizeof(ctx_pic->qm), -diff --git a/libavcodec/h264.c b/libavcodec/h264.c -index 222bf58..ea2ec17 100644 ---- a/libavcodec/h264.c -+++ b/libavcodec/h264.c -@@ -1085,6 +1085,7 @@ void ff_h264_flush_change(H264Context *h) - h->mmco_reset = 1; - for (i = 0; i < h->nb_slice_ctx; i++) - h->slice_ctx[i].list_count = 0; -+ h->got_first_iframe = 0; - } - - /* forget old pics after a seek */ -diff --git a/libavcodec/h264.h b/libavcodec/h264.h -index b94f06b..bc9458b 100644 ---- a/libavcodec/h264.h -+++ b/libavcodec/h264.h -@@ -741,6 +741,8 @@ typedef struct H264Context { - int luma_weight_flag[2]; ///< 7.4.3.2 luma_weight_lX_flag - int chroma_weight_flag[2]; ///< 7.4.3.2 chroma_weight_lX_flag - -+ int got_first_iframe; -+ - // Timestamp stuff - int sei_buffering_period_present; ///< Buffering period SEI flag - int initial_cpb_removal_delay[32]; ///< Initial timestamps for CPBs -diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c -index 53f61ca..b171d78 100644 ---- a/libavcodec/h264_slice.c -+++ b/libavcodec/h264_slice.c -@@ -1189,6 +1189,7 @@ static int h264_slice_header_init(H264Context *h, int reinit) - ff_h264_free_tables(h, 0); - h->first_field = 0; - h->prev_interlaced_frame = 1; -+ h->got_first_iframe = 0; - - init_scan_tables(h); - ret = ff_h264_alloc_tables(h); --- -2.1.0 - diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in index 096ff95c29..b5850db722 100644 --- a/package/ffmpeg/Config.in +++ b/package/ffmpeg/Config.in @@ -1,8 +1,9 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS bool # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2 - # ffmpeg's configure script only supports mips64 (r1) variant - default y if !BR2_nios2 && !BR2_mips_64r2 && !BR2_mips_64r6 + # No support for ARMv7-M in the ARM assembly logic + # Microblaze build affected by gcc PR71124 (infinite loop) + default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M && !BR2_microblaze menuconfig BR2_PACKAGE_FFMPEG bool "ffmpeg" @@ -40,12 +41,16 @@ config BR2_PACKAGE_FFMPEG_FFMPEG config BR2_PACKAGE_FFMPEG_FFPLAY bool "Build ffplay" select BR2_PACKAGE_FFMPEG_SWSCALE - select BR2_PACKAGE_SDL + select BR2_PACKAGE_SDL2 + depends on !BR2_STATIC_LIBS # sdl2 help FFplay is a very simple and portable media player using the FFmpeg libraries and the SDL library. It is mostly used as a testbed for the various FFmpeg APIs. +comment "ffplay needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_FFMPEG_FFSERVER bool "Build ffserver" depends on BR2_USE_MMU # fork() diff --git a/package/ffmpeg/ffmpeg.hash b/package/ffmpeg/ffmpeg.hash index 3120a7aa4c..6adf7e440a 100644 --- a/package/ffmpeg/ffmpeg.hash +++ b/package/ffmpeg/ffmpeg.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 97be8a6c1cab2c52015544f76d40f6fd0babcb1b40cf601b4e57fb818564157c ffmpeg-2.8.7.tar.xz +sha256 54ce502aca10b7e6059f19220ea2f68fa0c9c4c4d255ae13e615f08f0c94dcc5 ffmpeg-3.2.3.tar.xz diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk index a2026dc5b1..6540d41c52 100644 --- a/package/ffmpeg/ffmpeg.mk +++ b/package/ffmpeg/ffmpeg.mk @@ -4,7 +4,7 @@ # ################################################################################ -FFMPEG_VERSION = 2.8.7 +FFMPEG_VERSION = 3.2.3 FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.xz FFMPEG_SITE = http://ffmpeg.org/releases FFMPEG_INSTALL_STAGING = YES @@ -36,12 +36,11 @@ FFMPEG_CONF_OPTS = \ --enable-mdct \ --enable-rdft \ --disable-crystalhd \ - --disable-vdpau \ --disable-dxva2 \ --enable-runtime-cpudetect \ --disable-hardcoded-tables \ --disable-memalign-hack \ - --disable-mipsdspr1 \ + --disable-mipsdsp \ --disable-mipsdspr2 \ --disable-msa \ --enable-hwaccels \ @@ -49,16 +48,13 @@ FFMPEG_CONF_OPTS = \ --disable-frei0r \ --disable-libopencore-amrnb \ --disable-libopencore-amrwb \ - --disable-libopencv \ --disable-libcdio \ --disable-libdc1394 \ - --disable-libfaac \ --disable-libgsm \ --disable-libilbc \ --disable-libnut \ --disable-libopenjpeg \ --disable-libschroedinger \ - --disable-libvo-aacenc \ --disable-libvo-amrwbenc \ --disable-symver \ --disable-doc @@ -84,9 +80,9 @@ FFMPEG_CONF_OPTS += --disable-ffmpeg endif ifeq ($(BR2_PACKAGE_FFMPEG_FFPLAY),y) -FFMPEG_DEPENDENCIES += sdl +FFMPEG_DEPENDENCIES += sdl2 FFMPEG_CONF_OPTS += --enable-ffplay -FFMPEG_CONF_ENV += SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl-config +FFMPEG_CONF_ENV += SDL_CONFIG=$(STAGING_DIR)/usr/bin/sdl2-config else FFMPEG_CONF_OPTS += --disable-ffplay endif @@ -218,11 +214,8 @@ FFMPEG_CONF_OPTS += --disable-openssl endif endif -ifeq ($(BR2_PACKAGE_LIBDCADEC),y) -FFMPEG_CONF_OPTS += --enable-libdcadec -FFMPEG_DEPENDENCIES += libdcadec -else -FFMPEG_CONF_OPTS += --disable-libdcadec +ifeq ($(BR2_PACKAGE_FFMPEG_GPL)$(BR2_PACKAGE_LIBEBUR128),yy) +FFMPEG_DEPENDENCIES += libebur128 endif ifeq ($(BR2_PACKAGE_LIBOPENH264),y) @@ -247,6 +240,25 @@ else FFMPEG_CONF_OPTS += --disable-vaapi endif +ifeq ($(BR2_PACKAGE_LIBVDPAU),y) +FFMPEG_CONF_OPTS += --enable-vdpau +FFMPEG_DEPENDENCIES += libvdpau +else +FFMPEG_CONF_OPTS += --disable-vdpau +endif + +# To avoid a circular dependency only use opencv if opencv itself does +# not depend on ffmpeg. +ifeq ($(BR2_PACKAGE_OPENCV_LIB_IMGPROC)x$(BR2_PACKAGE_OPENCV_WITH_FFMPEG),yx) +FFMPEG_CONF_OPTS += --enable-libopencv +FFMPEG_DEPENDENCIES += opencv +else ifeq ($(BR2_PACKAGE_OPENCV3_LIB_IMGPROC)x$(BR2_PACKAGE_OPENCV3_WITH_FFMPEG),yx) +FFMPEG_CONF_OPTS += --enable-libopencv +FFMPEG_DEPENDENCIES += opencv3 +else +FFMPEG_CONF_OPTS += --disable-libopencv +endif + ifeq ($(BR2_PACKAGE_OPUS),y) FFMPEG_CONF_OPTS += --enable-libopus FFMPEG_DEPENDENCIES += opus @@ -427,23 +439,17 @@ FFMPEG_CONF_OPTS += --disable-vfp endif ifeq ($(BR2_ARM_CPU_HAS_NEON),y) FFMPEG_CONF_OPTS += --enable-neon +else +FFMPEG_CONF_OPTS += --disable-neon endif +ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y) ifeq ($(BR2_MIPS_SOFT_FLOAT),y) -FFMPEG_CONF_OPTS += \ - --disable-mipsfpu +FFMPEG_CONF_OPTS += --disable-mipsfpu else -FFMPEG_CONF_OPTS += \ - --enable-mipsfpu -endif - -ifeq ($(BR2_mips_32r2),y) -FFMPEG_CONF_OPTS += \ - --enable-mips32r2 -else -FFMPEG_CONF_OPTS += \ - --disable-mips32r2 +FFMPEG_CONF_OPTS += --enable-mipsfpu endif +endif # MIPS ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) FFMPEG_CONF_OPTS += --enable-altivec @@ -457,12 +463,17 @@ else FFMPEG_CONF_OPTS += --disable-pic endif -ifneq ($(call qstrip,$(BR2_GCC_TARGET_CPU)),) +# Default to --cpu=generic for MIPS architecture, in order to avoid a +# warning from ffmpeg's configure script. +ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y) +FFMPEG_CONF_OPTS += --cpu=generic +else ifneq ($(call qstrip,$(BR2_GCC_TARGET_CPU)),) FFMPEG_CONF_OPTS += --cpu=$(BR2_GCC_TARGET_CPU) else ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),) FFMPEG_CONF_OPTS += --cpu=$(BR2_GCC_TARGET_ARCH) endif + FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF)) # Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others diff --git a/package/fftw/fftw.mk b/package/fftw/fftw.mk index 5045ab6fed..5bd39a8ff2 100644 --- a/package/fftw/fftw.mk +++ b/package/fftw/fftw.mk @@ -10,7 +10,13 @@ FFTW_INSTALL_STAGING = YES FFTW_LICENSE = GPLv2+ FFTW_LICENSE_FILES = COPYING -FFTW_CONF_OPTS = --disable-fortran +# fortran support only enables generation and installation of fortran sources +ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y) +FFTW_CONF_OPTS += --enable-fortran +FFTW_CONF_ENV += FLIBS="-lgfortran -lm" +else +FFTW_CONF_OPTS += --disable-fortran +endif FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_SINGLE),--enable,--disable)-single FFTW_CONF_OPTS += $(if $(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),--enable,--disable)-long-double @@ -31,7 +37,8 @@ FFTW_CFLAGS += $(if $(BR2_PACKAGE_FFTW_USE_NEON),-mfpu=neon) # Generic optimisations ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) -FFTW_CONF_OPTS += --enable-threads --with-combined-threads +FFTW_CONF_OPTS += --enable-threads +FFTW_CONF_OPTS += $(if $(BR2_GCC_ENABLE_OPENMP),--without,--with)-combined-threads else FFTW_CONF_OPTS += --disable-threads endif diff --git a/package/ficl/0001-fix-Makefile.patch b/package/ficl/0001-fix-Makefile.patch new file mode 100644 index 0000000000..d5a25c43f0 --- /dev/null +++ b/package/ficl/0001-fix-Makefile.patch @@ -0,0 +1,47 @@ +fix dependency in Makefiles + +there is no longer a sysdep.h file. + +Signed-off-by: Francois Perrad + +diff --git a/Makefile b/Makefile +index 976d00a..7f73c44 100644 +--- a/Makefile ++++ b/Makefile +@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS) + -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS) + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so + +-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR) ++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR) + $(CC) $(CFLAGS) $(LDFLAGS) main.o -o main -L. -lficl -lm + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR) + +diff --git a/Makefile.ansi b/Makefile.ansi +index e510fcd..170e6eb 100644 +--- a/Makefile.ansi ++++ b/Makefile.ansi +@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS) + -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS) + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so + +-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR) ++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR) + $(CC) main.o -o main -L. -lficl -lm + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR) + +diff --git a/Makefile.linux b/Makefile.linux +index d447e7e..7f2cdfe 100644 +--- a/Makefile.linux ++++ b/Makefile.linux +@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS) + -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS) + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so + +-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR) ++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR) + $(CC) main.o -o main -L. -lficl -lm + ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR) + +-- + diff --git a/package/ficl/Config.in b/package/ficl/Config.in new file mode 100644 index 0000000000..3445a6428f --- /dev/null +++ b/package/ficl/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_FICL + bool "ficl" + help + Ficl is a programming language interpreter designed to be embedded + into other systems as a command, macro, and development + prototyping language. + Ficl is an acronym for "Forth Inspired Command Language". + + http://ficl.sourceforge.net diff --git a/package/ficl/ficl.hash b/package/ficl/ficl.hash new file mode 100644 index 0000000000..4bfbbd070a --- /dev/null +++ b/package/ficl/ficl.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 4daf74f3d3d6f8b86ea7cb47bc24931d50b4809b50ba34ca32e0ca1e972bd3a3 ficl-4.1.0.tar.gz diff --git a/package/ficl/ficl.mk b/package/ficl/ficl.mk new file mode 100644 index 0000000000..65df146785 --- /dev/null +++ b/package/ficl/ficl.mk @@ -0,0 +1,59 @@ +################################################################################ +# +# ficl +# +################################################################################ + +FICL_VERSION_MAJOR = 4.1 +FICL_VERSION = $(FICL_VERSION_MAJOR).0 +FICL_SITE = http://downloads.sourceforge.net/project/ficl/ficl-all/ficl$(FICL_VERSION_MAJOR) +FICL_LICENSE = BSD-2c +FICL_LICENSE_FILES = ReadMe.txt +FICL_INSTALL_STAGING = YES + +ifeq ($(BR2_STATIC_LIBS),y) +FICL_BUILD_TARGETS += ficl +define FICL_INSTALL_STATIC_BIN + $(INSTALL) -D -m 0755 $(@D)/ficl $(TARGET_DIR)/usr/bin/ficl +endef +endif + +ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +FICL_BUILD_TARGETS += libficl.a +define FICL_INSTALL_STATIC_LIB + $(INSTALL) -D -m 0644 $(@D)/libficl.a $(STAGING_DIR)/usr/lib/libficl.a +endef +endif + +ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +FICL_BUILD_TARGETS += main libficl.so.$(FICL_VERSION) +define FICL_INSTALL_SHARED_BIN + $(INSTALL) -D -m 0755 $(@D)/main $(TARGET_DIR)/usr/bin/ficl +endef +define FICL_INSTALL_SHARED_LIB + $(INSTALL) -D -m 0755 $(@D)/libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so.$(FICL_VERSION) + ln -sf libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so.4 + ln -sf libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so +endef +endif + +define FICL_BUILD_CMDS + $(MAKE) -C $(@D) -f Makefile.linux $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -fPIC -I. -Dlinux" CPPFLAGS="" $(FICL_BUILD_TARGETS) +endef + +define FICL_INSTALL_STAGING_CMDS + $(FICL_INSTALL_STATIC_LIB) + $(call FICL_INSTALL_SHARED_LIB,$(STAGING_DIR)) + $(INSTALL) -D -m 0644 $(@D)/ficl.h $(STAGING_DIR)/usr/include/ficl.h + $(INSTALL) -D -m 0644 $(@D)/ficllocal.h $(STAGING_DIR)/usr/include/ficllocal.h + $(INSTALL) -D -m 0644 $(@D)/ficlplatform/unix.h $(STAGING_DIR)/usr/include/ficlplatform/unix.h +endef + +define FICL_INSTALL_TARGET_CMDS + $(FICL_INSTALL_STATIC_BIN) + $(FICL_INSTALL_SHARED_BIN) + $(call FICL_INSTALL_SHARED_LIB,$(TARGET_DIR)) +endef + +$(eval $(generic-package)) diff --git a/package/file/file.hash b/package/file/file.hash index 2c53af1dce..9a4c9f1197 100644 --- a/package/file/file.hash +++ b/package/file/file.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 2ef32b4ec936b0ff7b59a021dce56086a716663b6df1138c7ea597d396bf50cf file-5.26.tar.gz +sha256 ea661277cd39bf8f063d3a83ee875432cc3680494169f952787e002bdd3884c0 file-5.29.tar.gz diff --git a/package/file/file.mk b/package/file/file.mk index 282b2da080..3309c95fa8 100644 --- a/package/file/file.mk +++ b/package/file/file.mk @@ -4,9 +4,10 @@ # ################################################################################ -FILE_VERSION = 5.26 +FILE_VERSION = 5.29 FILE_SITE = ftp://ftp.astron.com/pub/file FILE_DEPENDENCIES = host-file zlib +HOST_FILE_DEPENDENCIES = host-zlib FILE_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' FILE_INSTALL_STAGING = YES FILE_LICENSE = BSD-2c, one file BSD-4c, one file BSD-3c diff --git a/package/filemq/Config.in b/package/filemq/Config.in index 4460f87cef..e06a267469 100644 --- a/package/filemq/Config.in +++ b/package/filemq/Config.in @@ -4,7 +4,6 @@ config BR2_PACKAGE_FILEMQ select BR2_PACKAGE_CZMQ select BR2_PACKAGE_ZEROMQ depends on BR2_INSTALL_LIBSTDCPP # zeromq - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_MMU # czmq help @@ -12,7 +11,6 @@ config BR2_PACKAGE_FILEMQ http://github.com/zeromq/filemq -comment "filemq needs a toolchain w/ C++, wchar, threads" +comment "filemq needs a toolchain w/ C++, threads" depends on BR2_USE_MMU - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/filemq/filemq.hash b/package/filemq/filemq.hash new file mode 100644 index 0000000000..1a7997ede2 --- /dev/null +++ b/package/filemq/filemq.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c373eddd5154cfe63f6cc6b3255ec20dca1f70c1f1881b611930931df47babad filemq-e59951489045825d6fc5bdc6a5a5ecf1abf51943.tar.gz diff --git a/package/filemq/filemq.mk b/package/filemq/filemq.mk index a79e8f4965..d57208ec72 100644 --- a/package/filemq/filemq.mk +++ b/package/filemq/filemq.mk @@ -4,11 +4,11 @@ # ################################################################################ -FILEMQ_VERSION = acf6c0e003fee938994ad803aa7b78245dca57ba +FILEMQ_VERSION = e59951489045825d6fc5bdc6a5a5ecf1abf51943 FILEMQ_SITE = $(call github,zeromq,filemq,$(FILEMQ_VERSION)) FILEMQ_AUTORECONF = YES -FILEMQ_CONF_ENV = fmq_have_asciidoc=no +FILEMQ_CONF_ENV = filemq_have_asciidoc=no FILEMQ_INSTALL_STAGING = YES FILEMQ_DEPENDENCIES = czmq openssl zeromq FILEMQ_LICENSE = LGPLv3+ with exceptions diff --git a/package/findutils/Config.in b/package/findutils/Config.in index c93d9d8c29..b0eee5a626 100644 --- a/package/findutils/Config.in +++ b/package/findutils/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_FINDUTILS bool "findutils" depends on BR2_USE_WCHAR depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Basic directory searching utilities. Provides the common 'find', 'xargs', 'locate', and 'updatedb' binaries. @@ -11,3 +12,4 @@ config BR2_PACKAGE_FINDUTILS comment "findutils 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/fio/0001-Fix-compile-of-test-programs-on-archs-that-use-arch_.patch b/package/fio/0001-Fix-compile-of-test-programs-on-archs-that-use-arch_.patch deleted file mode 100644 index f9f48263a2..0000000000 --- a/package/fio/0001-Fix-compile-of-test-programs-on-archs-that-use-arch_.patch +++ /dev/null @@ -1,126 +0,0 @@ -From 71471cb1d05f3877c8fb935fbf70a6bae789ac49 Mon Sep 17 00:00:00 2001 -From: Jens Axboe -Date: Thu, 10 Mar 2016 08:09:41 -0700 -Subject: [PATCH] Fix compile of test programs on archs that use arch_flags at - runtime - -SuperH compile currently fails with: - -gettime.o: In function fio_gettime': -/home/thomas/projets/buildroot/output/build/fio-fio-2.7/gettime.c:163: undefined reference to arch_flags' -gettime.o: In function utime_since_now': -/home/thomas/projets/buildroot/output/build/fio-fio-2.7/gettime.c:164: undefined reference to arch_flags' -gettime.o: In function mtime_since_now': -/home/thomas/projets/buildroot/output/build/fio-fio-2.7/gettime.c:164: undefined reference to arch_flags' -gettime.o: In function time_since_now': -/home/thomas/projets/buildroot/output/build/fio-fio-2.7/gettime.c:164: undefined reference to arch_flags' -mutex.o: In function fio_mutex_up': -/home/thomas/projets/buildroot/output/build/fio-fio-2.7/mutex.c:189: undefined reference to arch_flags' -collect2: error: ld returned 1 exit status -Makefile:375: recipe for target 't/stest' failed -make[2]: *** [t/stest] Error 1 -make[2]: *** Waiting for unfinished jobs.... - -Fix that by ensuring we have a stub arch.o with the necessary arch flags -for the standalone test programs. - -Signed-off-by: Jens Axboe ---- - Makefile | 6 +++--- - t/arch.c | 5 +++++ - t/dedupe.c | 1 + - t/lfsr-test.c | 2 ++ - t/stest.c | 2 ++ - 5 files changed, 13 insertions(+), 3 deletions(-) - create mode 100644 t/arch.c - -diff --git a/Makefile b/Makefile -index 6b4c9db..a2502dc 100644 ---- a/Makefile -+++ b/Makefile -@@ -191,7 +191,7 @@ endif - -include $(OBJS:.o=.d) - - T_SMALLOC_OBJS = t/stest.o --T_SMALLOC_OBJS += gettime.o mutex.o smalloc.o t/log.o t/debug.o -+T_SMALLOC_OBJS += gettime.o mutex.o smalloc.o t/log.o t/debug.o t/arch.o - T_SMALLOC_PROGS = t/stest - - T_IEEE_OBJS = t/ieee754.o -@@ -208,7 +208,7 @@ T_AXMAP_OBJS += lib/lfsr.o lib/axmap.o - T_AXMAP_PROGS = t/axmap - - T_LFSR_TEST_OBJS = t/lfsr-test.o --T_LFSR_TEST_OBJS += lib/lfsr.o gettime.o t/log.o t/debug.o -+T_LFSR_TEST_OBJS += lib/lfsr.o gettime.o t/log.o t/debug.o t/arch.o - T_LFSR_TEST_PROGS = t/lfsr-test - - T_GEN_RAND_OBJS = t/gen-rand.o -@@ -223,7 +223,7 @@ endif - - T_DEDUPE_OBJS = t/dedupe.o - T_DEDUPE_OBJS += lib/rbtree.o t/log.o mutex.o smalloc.o gettime.o crc/md5.o \ -- lib/memalign.o lib/bloom.o t/debug.o crc/xxhash.o \ -+ lib/memalign.o lib/bloom.o t/debug.o crc/xxhash.o t/arch.o \ - crc/murmur3.o crc/crc32c.o crc/crc32c-intel.o crc/fnv.o - T_DEDUPE_PROGS = t/fio-dedupe - -diff --git a/t/arch.c b/t/arch.c -new file mode 100644 -index 0000000..befb7c7 ---- /dev/null -+++ b/t/arch.c -@@ -0,0 +1,5 @@ -+#include "../arch/arch.h" -+ -+unsigned long arch_flags = 0; -+int tsc_reliable; -+int arch_random; -diff --git a/t/dedupe.c b/t/dedupe.c -index 3a66820..7856da1 100644 ---- a/t/dedupe.c -+++ b/t/dedupe.c -@@ -537,6 +537,7 @@ int main(int argc, char *argv[]) - uint64_t nextents = 0, nchunks = 0; - int c, ret; - -+ arch_init(argv); - debug_init(); - - while ((c = getopt(argc, argv, "b:t:d:o:c:p:B:")) != -1) { -diff --git a/t/lfsr-test.c b/t/lfsr-test.c -index 4352b89..bad5097 100644 ---- a/t/lfsr-test.c -+++ b/t/lfsr-test.c -@@ -38,6 +38,8 @@ int main(int argc, char *argv[]) - void *v = NULL, *v_start; - double total, mean; - -+ arch_init(argv); -+ - /* Read arguments */ - switch (argc) { - case 5: if (strncmp(argv[4], "verify", 7) == 0) -diff --git a/t/stest.c b/t/stest.c -index fb51989..0e0d8b0 100644 ---- a/t/stest.c -+++ b/t/stest.c -@@ -4,6 +4,7 @@ - - #include "../smalloc.h" - #include "../flist.h" -+#include "../arch/arch.h" - #include "debug.h" - - #define MAGIC1 0xa9b1c8d2 -@@ -69,6 +70,7 @@ static int do_specific_alloc(unsigned long size) - - int main(int argc, char *argv[]) - { -+ arch_init(argv); - sinit(); - debug_init(); - --- -2.6.4 - diff --git a/package/fio/fio.mk b/package/fio/fio.mk index 6c4ad6c4ca..5c02bc92ee 100644 --- a/package/fio/fio.mk +++ b/package/fio/fio.mk @@ -4,7 +4,7 @@ # ################################################################################ -FIO_VERSION = fio-2.7 +FIO_VERSION = fio-2.13 FIO_SITE = git://git.kernel.dk/fio.git FIO_LICENSE = GPLv2 + special obligations FIO_LICENSE_FILES = COPYING @@ -13,12 +13,20 @@ ifeq ($(BR2_PACKAGE_LIBAIO),y) FIO_DEPENDENCIES += libaio endif +ifeq ($(BR2_PACKAGE_NUMACTL),y) +FIO_DEPENDENCIES += numactl +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +FIO_DEPENDENCIES += zlib +endif + define FIO_CONFIGURE_CMDS - (cd $(@D); ./configure --cc="$(TARGET_CC)" --extra-cflags="$(TARGET_CFLAGS)") + (cd $(@D); $(TARGET_MAKE_ENV) ./configure --cc="$(TARGET_CC)" --extra-cflags="$(TARGET_CFLAGS)") endef define FIO_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define FIO_INSTALL_TARGET_CMDS diff --git a/package/flac/0001-configure-don-t-try-to-unset-g-from-CFLAGS.patch b/package/flac/0001-configure-don-t-try-to-unset-g-from-CFLAGS.patch deleted file mode 100644 index 3aff5a8c95..0000000000 --- a/package/flac/0001-configure-don-t-try-to-unset-g-from-CFLAGS.patch +++ /dev/null @@ -1,27 +0,0 @@ -The sed expression is wrong, any flags with '-g' in any position gets -zapped, for example: - --mfloat-gprs=double (for powerpc e500) -> -mfloatprs=double. - -Which gives build errors and is perfectly valid in real use scenarios to -switch from e500v1 (single precision) code to e500v2 (double precision) code. - -Signed-off-by: Gustavo Zacarias - -diff -Nura flac-1.3.1.orig/configure flac-1.3.1/configure ---- flac-1.3.1.orig/configure 2014-11-27 20:43:29.921303105 -0300 -+++ flac-1.3.1/configure 2014-11-27 20:45:33.460250179 -0300 -@@ -19870,11 +19870,10 @@ - - if test "x$debug" = xtrue; then - CPPFLAGS="-DDEBUG $CPPFLAGS" -- CFLAGS=$(echo "$CFLAGS" | sed 's/-g//') -- CFLAGS="-g $CFLAGS" -+ CFLAGS=$(echo "-g $CFLAGS") - else - CPPFLAGS="-DNDEBUG $CPPFLAGS" -- CFLAGS=$(echo "$CFLAGS" | sed 's/-O2//;s/-g//') -+ CFLAGS=$(echo "$CFLAGS" | sed 's/-O2//') - CFLAGS="-O3 -funroll-loops $CFLAGS" - fi - diff --git a/package/flac/0001-configure.ac-relax-linux-OS-detection.patch b/package/flac/0001-configure.ac-relax-linux-OS-detection.patch new file mode 100644 index 0000000000..baf07bc16e --- /dev/null +++ b/package/flac/0001-configure.ac-relax-linux-OS-detection.patch @@ -0,0 +1,35 @@ +From 8589b44c573d4228a9df3ba7bffdfdf584e7b033 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Mon, 9 Jan 2017 21:38:29 +0100 +Subject: [PATCH] configure.ac: relax linux OS detection + +Not all linux hosts match the *-pc-linux-gnu wildcard, causing build +failures for older glibc versions where we need to link with -lrt for +clock_gettime - E.G.: + + - arm-unknown-linux-musleabihf + - powerpc-unknown-linux-gnuspe + - bfin-linux-linux-uclibc + .. + +Signed-off-by: Peter Korsgaard +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 070ab357..235d2717 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -186,7 +186,7 @@ esac + AM_CONDITIONAL(OS_IS_WINDOWS, test "x$os_is_windows" = xyes) + + case "$host" in +- *-pc-linux-gnu) ++ *-linux-*) + sys_linux=true + AC_DEFINE(FLAC__SYS_LINUX) + AH_TEMPLATE(FLAC__SYS_LINUX, [define if building for Linux]) +-- +2.11.0 + diff --git a/package/flac/0002-sigemptyset.patch b/package/flac/0002-sigemptyset.patch deleted file mode 100644 index 9cbc338a67..0000000000 --- a/package/flac/0002-sigemptyset.patch +++ /dev/null @@ -1,18 +0,0 @@ -Fix musl compile since it does not define __sigemptyset - -Downloaded from -http://git.alpinelinux.org/cgit/aports/commit/main/flac/sigemptyset.patch?id=49fd0f4cebc46e2753d6a60e450078446f7f18a7 - -Signed-off-by: Bernd Kuhls - ---- ./src/libFLAC/cpu.c.orig -+++ ./src/libFLAC/cpu.c -@@ -243,7 +243,7 @@ - struct sigaction sigill_save; - struct sigaction sigill_sse; - sigill_sse.sa_sigaction = sigill_handler_sse_os; -- __sigemptyset(&sigill_sse.sa_mask); -+ sigemptyset(&sigill_sse.sa_mask); - sigill_sse.sa_flags = SA_SIGINFO | SA_RESETHAND; /* SA_RESETHAND just in case our SIGILL return jump breaks, so we don't get stuck in a loop */ - if(0 == sigaction(SIGILL, &sigill_sse, &sigill_save)) - { diff --git a/package/flac/flac.hash b/package/flac/flac.hash index 6a0da11627..7ce76f107c 100644 --- a/package/flac/flac.hash +++ b/package/flac/flac.hash @@ -1,2 +1,2 @@ # From http://downloads.xiph.org/releases/flac/SHA256SUMS.txt -sha256 4773c0099dba767d963fd92143263be338c48702172e8754b9bc5103efe1c56c flac-1.3.1.tar.xz +sha256 91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f flac-1.3.2.tar.xz diff --git a/package/flac/flac.mk b/package/flac/flac.mk index b819064c23..43e0410df5 100644 --- a/package/flac/flac.mk +++ b/package/flac/flac.mk @@ -4,13 +4,15 @@ # ################################################################################ -FLAC_VERSION = 1.3.1 +FLAC_VERSION = 1.3.2 FLAC_SITE = http://downloads.xiph.org/releases/flac FLAC_SOURCE = flac-$(FLAC_VERSION).tar.xz FLAC_INSTALL_STAGING = YES FLAC_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) FLAC_LICENSE = Xiph BSD-like (libFLAC), GPLv2+ (tools), LGPLv2.1+ (other libraries) FLAC_LICENSE_FILES = COPYING.Xiph COPYING.GPL COPYING.LGPL +# 0001-configure.ac-relax-linux-OS-detection.patch patches configure.ac +FLAC_AUTORECONF = YES FLAC_CONF_OPTS = \ --disable-cpplibs \ --disable-xmms-plugin \ diff --git a/package/flannel/Config.in b/package/flannel/Config.in index cfdb9095fb..134111b1c0 100644 --- a/package/flannel/Config.in +++ b/package/flannel/Config.in @@ -1,10 +1,12 @@ comment "flannel needs a toolchain w/ threads" - depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS && \ + BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS config BR2_PACKAGE_FLANNEL bool "flannel" depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS help Flannel is a virtual network that gives a subnet to each diff --git a/package/flannel/flannel.mk b/package/flannel/flannel.mk index b5f61a01b9..18c0af1605 100644 --- a/package/flannel/flannel.mk +++ b/package/flannel/flannel.mk @@ -21,7 +21,10 @@ FLANNEL_MAKE_ENV = \ FLANNEL_GLDFLAGS = \ -X github.com/coreos/flannel/version.Version=$(FLANNEL_VERSION) \ - -extldflags '-static' + +ifeq ($(BR2_STATIC_LIBS),y) +FLANNEL_GLDFLAGS += -extldflags '-static' +endif define FLANNEL_CONFIGURE_CMDS # Put sources at prescribed GOPATH location. diff --git a/package/flex/0002-fix-CVE-2016-6354.patch b/package/flex/0002-fix-CVE-2016-6354.patch new file mode 100644 index 0000000000..b0c780b993 --- /dev/null +++ b/package/flex/0002-fix-CVE-2016-6354.patch @@ -0,0 +1,25 @@ +From a5cbe929ac3255d371e698f62dc256afe7006466 Mon Sep 17 00:00:00 2001 +From: Will Estes +Date: Sat, 27 Feb 2016 11:56:05 -0500 +Subject: [PATCH] Fixed incorrect integer type + +Signed-off-by: Gustavo Zacarias +--- +Status: upstream + + flex.skl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/flex.skl b/src/flex.skl +index 36a526a..64f853d 100644 +--- a/flex.skl ++++ b/flex.skl +@@ -1703,7 +1703,7 @@ int yyFlexLexer::yy_get_next_buffer() + + else + { +- yy_size_t num_to_read = ++ int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; + + while ( num_to_read <= 0 ) diff --git a/package/fmc/Config.in b/package/fmc/Config.in index a50f80da69..b7398e2bf6 100644 --- a/package/fmc/Config.in +++ b/package/fmc/Config.in @@ -1,14 +1,14 @@ comment "fmc needs a toolchain w/ C++" - depends on BR2_powerpc_e500mc + depends on BR2_powerpc_e500mc || BR2_powerpc_e6500 depends on !BR2_INSTALL_LIBSTDCPP comment "fmc needs a Linux kernel to be built" - depends on BR2_powerpc_e500mc + depends on BR2_powerpc_e500mc || BR2_powerpc_e6500 depends on !BR2_LINUX_KERNEL config BR2_PACKAGE_FMC bool "fmc" - depends on BR2_powerpc_e500mc + depends on BR2_powerpc_e500mc || BR2_powerpc_e6500 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_LINUX_KERNEL # fmlib select BR2_PACKAGE_TCLAP diff --git a/package/fmc/fmc.hash b/package/fmc/fmc.hash new file mode 100644 index 0000000000..2402831855 --- /dev/null +++ b/package/fmc/fmc.hash @@ -0,0 +1,2 @@ +# Locally Computed +sha256sum a91e0c9b7c7f238634c64a755c05671f33f2acdb6ae2d09cad4d683b364ee8e4 fmc-fsl-sdk-v2.0.tar.gz diff --git a/package/fmc/fmc.mk b/package/fmc/fmc.mk index 49c5fe86ad..2a95fec0b7 100644 --- a/package/fmc/fmc.mk +++ b/package/fmc/fmc.mk @@ -4,7 +4,7 @@ # ################################################################################ -FMC_VERSION = fsl-sdk-v1.5-rc3 +FMC_VERSION = fsl-sdk-v2.0 FMC_SITE = git://git.freescale.com/ppc/sdk/fmc.git FMC_LICENSE = MIT FMC_LICENSE_FILES = COPYING @@ -18,7 +18,15 @@ FMC_MAKE_OPTS = \ LIBXML2_HEADER_PATH="$(STAGING_DIR)/usr/include/libxml2" \ TCLAP_HEADER_PATH="$(STAGING_DIR)/usr/include" +ifeq ($(BR2_powerpc64),y) +FMC_MAKE_OPTS += M64BIT=1 +endif + +# fmc's platform is the same as fmlib's. +FMC_PLATFORM = $(call qstrip,$(BR2_PACKAGE_FMLIB_PLATFORM)) + define FMC_BUILD_CMDS + $(SED) "s:P4080:$(FMC_PLATFORM):g" $(@D)/source/Makefile # The linking step has dependency issues so using MAKE1 $(TARGET_MAKE_ENV) $(MAKE1) $(FMC_MAKE_OPTS) -C $(@D)/source endef diff --git a/package/fmlib/Config.in b/package/fmlib/Config.in index 3cc6a2b7af..d399cabe2a 100644 --- a/package/fmlib/Config.in +++ b/package/fmlib/Config.in @@ -1,10 +1,10 @@ comment "fmlib needs a Linux kernel to be built" - depends on BR2_powerpc_e500mc + depends on BR2_powerpc_e500mc || BR2_powerpc_e6500 depends on !BR2_LINUX_KERNEL config BR2_PACKAGE_FMLIB bool "fmlib" - depends on BR2_powerpc_e500mc + depends on BR2_powerpc_e500mc || BR2_powerpc_e6500 depends on BR2_LINUX_KERNEL help The Frame Manager library provides Freescale PowerPC platforms an @@ -13,3 +13,37 @@ config BR2_PACKAGE_FMLIB parameters and PCD (parse - classify - distribute) rules. http://git.freescale.com/git/cgit.cgi/ppc/sdk/fmlib.git/tree/README + +if BR2_PACKAGE_FMLIB +choice + prompt "QorIQ Target Family" + help + Select the family of QorIQ processor. + +config BR2_FMLIB_QORIQ_FAMILY_P4080 + bool "p40xx" + depends on BR2_powerpc_e500mc + +config BR2_FMLIB_QORIQ_FAMILY_T4240 + bool "t42xx" + depends on BR2_powerpc_e500mc + +config BR2_FMLIB_QORIQ_FAMILY_T2080 + bool "t208x" + depends on BR2_powerpc_e6500 + +endchoice + +config BR2_PACKAGE_FMLIB_ARCHTYPE + string + default "e500mc" if BR2_powerpc_e500mc + default "ppc64e6500" if BR2_powerpc_e6500 && BR2_powerpc64 + default "ppc32e6500" if BR2_powerpc_e6500 && BR2_powerpc + +config BR2_PACKAGE_FMLIB_PLATFORM + string + default "P4080" if BR2_FMLIB_QORIQ_FAMILY_P4080 + default "T4240" if BR2_FMLIB_QORIQ_FAMILY_T4240 + default "FMAN_V3H" if BR2_FMLIB_QORIQ_FAMILY_T2080 + +endif diff --git a/package/fmlib/fmlib.hash b/package/fmlib/fmlib.hash new file mode 100644 index 0000000000..3746695db9 --- /dev/null +++ b/package/fmlib/fmlib.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 e5870756c7432b15f7a48b860625808f3c95d5f7fa5e251552eb2324ca51b0fa fmlib-fsl-sdk-v2.0.tar.gz diff --git a/package/fmlib/fmlib.mk b/package/fmlib/fmlib.mk index 978810bad9..16e817699e 100644 --- a/package/fmlib/fmlib.mk +++ b/package/fmlib/fmlib.mk @@ -4,7 +4,7 @@ # ################################################################################ -FMLIB_VERSION = fsl-sdk-v1.5-rc3 +FMLIB_VERSION = fsl-sdk-v2.0 FMLIB_SITE = git://git.freescale.com/ppc/sdk/fmlib.git FMLIB_LICENSE = BSD-3c, GPLv2+ FMLIB_LICENSE_FILES = COPYING @@ -21,16 +21,17 @@ FMLIB_MAKE_OPTS = \ KERNEL_SRC="$(LINUX_DIR)" \ PREFIX="$(STAGING_DIR)/usr" -ifeq ($(BR2_powerpc_e500mc),y) -FMLIB_ARCHTYPE = ppce500mc -endif +FMLIB_ARCHTYPE = $(call qstrip,$(BR2_PACKAGE_FMLIB_ARCHTYPE)) +FMLIB_PLATFORM = $(call qstrip,$(BR2_PACKAGE_FMLIB_PLATFORM)) define FMLIB_BUILD_CMDS + $(SED) "s:P4080:$(FMLIB_PLATFORM):g" $(@D)/Makefile $(TARGET_MAKE_ENV) $(MAKE) $(FMLIB_MAKE_OPTS) -C $(@D) libfm-$(FMLIB_ARCHTYPE).a endef define FMLIB_INSTALL_STAGING_CMDS - $(FMLIB_MAKE_ENV) $(MAKE) $(FMLIB_MAKE_OPTS) -C $(@D) install-libfm-$(FMLIB_ARCHTYPE) + $(RM) $(STAGING_DIR)/usr/lib/libfm.a + $(TARGET_MAKE_ENV) $(MAKE) $(FMLIB_MAKE_OPTS) -C $(@D) install-libfm-$(FMLIB_ARCHTYPE) endef $(eval $(generic-package)) diff --git a/package/fontconfig/fontconfig.hash b/package/fontconfig/fontconfig.hash index e4ec1ac177..ad3582557b 100644 --- a/package/fontconfig/fontconfig.hash +++ b/package/fontconfig/fontconfig.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/fontconfig/2014-March/005167.html -sha256 b6b066c7dce3f436fdc0dfbae9d36122b38094f4f53bd8dffd45e195b0540d8d fontconfig-2.11.1.tar.gz +# From https://lists.freedesktop.org/archives/fontconfig/2016-August/005794.html +sha256 b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3 fontconfig-2.12.1.tar.bz2 diff --git a/package/fontconfig/fontconfig.mk b/package/fontconfig/fontconfig.mk index caf997bac7..93f2a15938 100644 --- a/package/fontconfig/fontconfig.mk +++ b/package/fontconfig/fontconfig.mk @@ -4,10 +4,12 @@ # ################################################################################ -FONTCONFIG_VERSION = 2.11.1 +FONTCONFIG_VERSION = 2.12.1 FONTCONFIG_SITE = http://fontconfig.org/release +FONTCONFIG_SOURCE = fontconfig-$(FONTCONFIG_VERSION).tar.bz2 FONTCONFIG_INSTALL_STAGING = YES FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf +HOST_FONTCONFIG_DEPENDENCIES = host-freetype host-expat host-pkgconf FONTCONFIG_LICENSE = fontconfig license FONTCONFIG_LICENSE_FILES = COPYING diff --git a/package/freerdp/0004-ffmpeg30.patch b/package/freerdp/0004-ffmpeg30.patch new file mode 100644 index 0000000000..a7998b7894 --- /dev/null +++ b/package/freerdp/0004-ffmpeg30.patch @@ -0,0 +1,74 @@ +From b7b66968f93f6ce75dd06d12638e14029bf3717b Mon Sep 17 00:00:00 2001 +From: Alexis Ballier +Date: Thu, 17 Sep 2015 10:36:44 +0200 +Subject: [PATCH] channels/tsmf/client/ffmpeg: Fix build with ffmpeg git + master. + +Replace old, deprecated and now removed, APIs with their new equivalent while retaining backward compatibility with old ffmpeg versions. + +Signed-off-by: Bernd Kuhls +[Downloaded from upstream commit: + https://github.com/FreeRDP/FreeRDP/commit/f8ceb3f6061583c650bd4f6cddc10bc0471f2076] +--- + channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +diff --git a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +index d0880e7..e1b9f83 100644 +--- a/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c ++++ b/channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c +@@ -61,6 +61,9 @@ + #define AV_CODEC_ID_AC3 CODEC_ID_AC3 + #endif + ++#if LIBAVUTIL_VERSION_MAJOR < 52 ++#define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P ++#endif + + typedef struct _TSMFFFmpegDecoder + { +@@ -102,7 +105,11 @@ static BOOL tsmf_ffmpeg_init_video_stream(ITSMFDecoder* decoder, const TS_AM_MED + mdecoder->codec_context->bit_rate = media_type->BitRate; + mdecoder->codec_context->time_base.den = media_type->SamplesPerSecond.Numerator; + mdecoder->codec_context->time_base.num = media_type->SamplesPerSecond.Denominator; ++#if LIBAVCODEC_VERSION_MAJOR < 55 + mdecoder->frame = avcodec_alloc_frame(); ++#else ++ mdecoder->frame = av_frame_alloc(); ++#endif + return TRUE; + } + +@@ -328,7 +335,11 @@ static BOOL tsmf_ffmpeg_decode_video(ITSMFDecoder* decoder, const BYTE *data, UI + if (!mdecoder->decoded_data) + return FALSE; + ++#if LIBAVCODEC_VERSION_MAJOR < 55 + frame = avcodec_alloc_frame(); ++#else ++ frame = av_frame_alloc(); ++#endif + avpicture_fill((AVPicture*) frame, mdecoder->decoded_data, + mdecoder->codec_context->pix_fmt, + mdecoder->codec_context->width, mdecoder->codec_context->height); +@@ -400,7 +411,11 @@ static BOOL tsmf_ffmpeg_decode_audio(ITSMFDecoder* decoder, const BYTE *data, UI + (int16_t *) dst, &frame_size, src, src_size); + #else + { ++#if LIBAVCODEC_VERSION_MAJOR < 55 + AVFrame *decoded_frame = avcodec_alloc_frame(); ++#else ++ AVFrame *decoded_frame = av_frame_alloc(); ++#endif + int got_frame = 0; + AVPacket pkt; + av_init_packet(&pkt); +@@ -480,7 +495,7 @@ static UINT32 tsmf_ffmpeg_get_decoded_format(ITSMFDecoder* decoder) + + switch (mdecoder->codec_context->pix_fmt) + { +- case PIX_FMT_YUV420P: ++ case AV_PIX_FMT_YUV420P: + return RDP_PIXFMT_I420; + default: + WLog_ERR(TAG, "unsupported pixel format %u", diff --git a/package/freerdp/freerdp.hash b/package/freerdp/freerdp.hash new file mode 100644 index 0000000000..2ced373b38 --- /dev/null +++ b/package/freerdp/freerdp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1db496cca391f76382ef284db2d0306d5c15bf515ee2c964319c22272d969a32 freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.tar.gz diff --git a/package/freerdp/freerdp.mk b/package/freerdp/freerdp.mk index e8e5be49b1..c3a3e55d05 100644 --- a/package/freerdp/freerdp.mk +++ b/package/freerdp/freerdp.mk @@ -111,7 +111,7 @@ endif # Xorg is enabled but neither the server nor the X client are, then # there's nothing that guarantees those two libs are enabled. So we # really must check for them. -ifeq ($(BR2_PACKAGE_XLIB_LIBX11)$(BR2_PACKAGE_XLIB_LIBX11),yy) +ifeq ($(BR2_PACKAGE_XLIB_LIBX11)$(BR2_PACKAGE_XLIB_LIBXEXT),yy) FREERDP_DEPENDENCIES += xlib_libX11 xlib_libXext FREERDP_CONF_OPTS += -DWITH_X11=ON else diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in index 8c03190c6c..056728ff09 100644 --- a/package/freescale-imx/Config.in +++ b/package/freescale-imx/Config.in @@ -49,10 +49,13 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 || \ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q +source "package/freescale-imx/imx-codec/Config.in" source "package/freescale-imx/imx-kobs/Config.in" source "package/freescale-imx/imx-lib/Config.in" +source "package/freescale-imx/imx-parser/Config.in" source "package/freescale-imx/imx-uuc/Config.in" source "package/freescale-imx/imx-vpu/Config.in" +source "package/freescale-imx/imx-vpuwrap/Config.in" source "package/freescale-imx/firmware-imx/Config.in" if (BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53) source "package/freescale-imx/gpu-amd-bin-mx51/Config.in" diff --git a/package/freescale-imx/firmware-imx/firmware-imx.hash b/package/freescale-imx/firmware-imx/firmware-imx.hash index a5bc82c7f9..a6e5bd58ef 100644 --- a/package/freescale-imx/firmware-imx/firmware-imx.hash +++ b/package/freescale-imx/firmware-imx/firmware-imx.hash @@ -1 +1 @@ -sha256 fd14c3666eb3c12f4f2665d95caf383bb1d0277bb12e2de28fefc8d1230604f2 firmware-imx-5.3.bin +sha256 c5bd4bff48cce9715a5d6d2c190ff3cd2262c7196f7facb9b0eda231c92cc223 firmware-imx-5.4.bin diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk index 8f81c579d9..08fb4636a0 100644 --- a/package/freescale-imx/firmware-imx/firmware-imx.mk +++ b/package/freescale-imx/firmware-imx/firmware-imx.mk @@ -4,12 +4,11 @@ # ################################################################################ -FIRMWARE_IMX_VERSION = 5.3 +FIRMWARE_IMX_VERSION = 5.4 FIRMWARE_IMX_SITE = $(FREESCALE_IMX_SITE) FIRMWARE_IMX_SOURCE = firmware-imx-$(FIRMWARE_IMX_VERSION).bin -FIRMWARE_IMX_LICENSE = Freescale Semiconductor Software License Agreement, \ - Atheros license (ath6k) +FIRMWARE_IMX_LICENSE = NXP Semiconductor Software License Agreement FIRMWARE_IMX_LICENSE_FILES = EULA COPYING FIRMWARE_IMX_REDISTRIBUTE = NO @@ -27,6 +26,7 @@ define FIRMWARE_IMX_INSTALL_TARGET_CMDS cp -r $(@D)/firmware/epdc $(TARGET_DIR)/lib/firmware/imx mv $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted \ $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw + rm $(TARGET_DIR)/lib/firmware/imx/epdc/fsl-epdc.mk endef $(eval $(generic-package)) diff --git a/package/freescale-imx/gpu-amd-bin-mx51/Config.in b/package/freescale-imx/gpu-amd-bin-mx51/Config.in index 0ef96828dc..337713c720 100644 --- a/package/freescale-imx/gpu-amd-bin-mx51/Config.in +++ b/package/freescale-imx/gpu-amd-bin-mx51/Config.in @@ -1,4 +1,4 @@ -comment "gpu-amd-bin-mx51 needs an (e)glibc EABI toolchain w/ C++" +comment "gpu-amd-bin-mx51 needs a glibc EABI toolchain w/ C++" depends on BR2_arm depends on !BR2_ARM_EABI || !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_INSTALL_LIBSTDCPP diff --git a/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.hash b/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.hash new file mode 100644 index 0000000000..9c08e4aa10 --- /dev/null +++ b/package/freescale-imx/gpu-amd-bin-mx51/gpu-amd-bin-mx51.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 c7a6fa03b7aa2a375556c59908876554ba720c1e744baba2debb84a408f790db amd-gpu-x11-bin-mx51-11.09.01.bin +sha256 f0db68a764b5fb199729e7435f606b8d12b61ca97990336c647b7e81f4a584d9 amd-gpu-bin-mx51-11.09.01.bin diff --git a/package/freescale-imx/imx-codec/Config.in b/package/freescale-imx/imx-codec/Config.in new file mode 100644 index 0000000000..df248b0cf2 --- /dev/null +++ b/package/freescale-imx/imx-codec/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_IMX_CODEC + bool "imx-codec" + depends on BR2_arm # Only relevant for i.MX + depends on BR2_TOOLCHAIN_USES_GLIBC # prebuilt binaries + help + Binary codec libraries for the NXP i.MX SoCs. + + This library is provided by NXP as-is and doesn't have + an upstream. + +comment "imx-codec needs a glibc toolchain" + depends on BR2_arm + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/freescale-imx/imx-codec/imx-codec.hash b/package/freescale-imx/imx-codec/imx-codec.hash new file mode 100644 index 0000000000..2bb7a242e9 --- /dev/null +++ b/package/freescale-imx/imx-codec/imx-codec.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 98fe71cb44f7e858c64c5eda81741ed02f40afaadc3d4ed1e693c7d1e684b81d imx-codec-4.1.4.bin diff --git a/package/freescale-imx/imx-codec/imx-codec.mk b/package/freescale-imx/imx-codec/imx-codec.mk new file mode 100644 index 0000000000..911ad8b1b0 --- /dev/null +++ b/package/freescale-imx/imx-codec/imx-codec.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# imx-codec +# +################################################################################ + +IMX_CODEC_VERSION = 4.1.4 +IMX_CODEC_SITE = $(FREESCALE_IMX_SITE) +IMX_CODEC_SOURCE = imx-codec-$(IMX_CODEC_VERSION).bin +IMX_CODEC_INSTALL_STAGING = YES + +IMX_CODEC_LICENSE = NXP Semiconductor Software License Agreement, BSD-3c (flac, ogg headers) +IMX_CODEC_LICENSE_FILES = EULA COPYING +IMX_CODEC_REDISTRIBUTE = NO + +ifeq ($(BR2_ARM_EABIHF),y) +IMX_CODEC_CONF_OPTS += --enable-fhw +endif + +ifeq ($(BR2_PACKAGE_IMX_VPU),y) +IMX_CODEC_CONF_OPTS += --enable-vpu +endif + +define IMX_CODEC_EXTRACT_CMDS + $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_CODEC_SOURCE)) +endef + +# FIXME The Makefile installs both the arm9 and arm11 versions of the +# libraries, but we only need one of them. + +# Upstream installs libraries into usr/lib/imx-mm, but the dynamic +# loader only looks in usr/lib, so move the libraries there +define IMX_CODEC_FIXUP_TARGET_PATH + find $(TARGET_DIR)/usr/lib/imx-mm -not -type d \ + -exec mv {} $(TARGET_DIR)/usr/lib \; + rm -rf $(TARGET_DIR)/usr/lib/imx-mm +endef +IMX_CODEC_POST_INSTALL_TARGET_HOOKS += IMX_CODEC_FIXUP_TARGET_PATH + +$(eval $(autotools-package)) diff --git a/package/freescale-imx/imx-gpu-viv/Config.in b/package/freescale-imx/imx-gpu-viv/Config.in index 20759b1ca0..effb24b3b2 100644 --- a/package/freescale-imx/imx-gpu-viv/Config.in +++ b/package/freescale-imx/imx-gpu-viv/Config.in @@ -1,13 +1,14 @@ -comment "imx-gpu-viv needs an (e)glibc toolchain" +comment "imx-gpu-viv needs a glibc toolchain with armhf enabled" depends on BR2_arm - depends on !BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_ARM_EABIHF config BR2_PACKAGE_IMX_GPU_VIV bool "imx-gpu-viv" select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_LIBOPENVG - depends on BR2_arm # Only relevant for i.MX6 + # Pre-built binaries only available for ARM EABIhf + depends on BR2_ARM_EABIHF # Library binaries are linked against libc.so.6 depends on BR2_TOOLCHAIN_USES_GLIBC help diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash index 41193888f9..6c526c5876 100644 --- a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash +++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash @@ -1,3 +1 @@ -# locally computed -sha256 3ea201f91ce9b56455e4983ab1055e8175415fbbf2800dc097d47e78ceefba34 imx-gpu-viv-5.0.11.p7.4-sfp.bin -sha256 b80838104f2f2e3b0baf2f1aacdca263c1c92589ce919b3be40aaad23f686b7f imx-gpu-viv-5.0.11.p7.4-hfp.bin +sha256 caaabd59a259e29aa5b7f9d1d7f3fe71cff9336ba44904485d258baef276351f imx-gpu-viv-5.0.11.p8.6-hfp.bin diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk index b51a7af9b9..961f574c8b 100644 --- a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk +++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk @@ -4,19 +4,14 @@ # ################################################################################ -IMX_GPU_VIV_BASE_VERSION = 5.0.11.p7.4 -ifeq ($(BR2_ARM_EABIHF),y) -IMX_GPU_VIV_VERSION = $(IMX_GPU_VIV_BASE_VERSION)-hfp -else -IMX_GPU_VIV_VERSION = $(IMX_GPU_VIV_BASE_VERSION)-sfp -endif +IMX_GPU_VIV_VERSION = 5.0.11.p8.6-hfp IMX_GPU_VIV_SITE = $(FREESCALE_IMX_SITE) IMX_GPU_VIV_SOURCE = imx-gpu-viv-$(IMX_GPU_VIV_VERSION).bin IMX_GPU_VIV_INSTALL_STAGING = YES -IMX_GPU_VIV_LICENSE = Freescale Semiconductor Software License Agreement -IMX_GPU_VIV_LICENSE_FILES = EULA +IMX_GPU_VIV_LICENSE = NXP Semiconductor Software License Agreement +IMX_GPU_VIV_LICENSE_FILES = EULA COPYING IMX_GPU_VIV_REDISTRIBUTE = NO IMX_GPU_VIV_PROVIDES = libegl libgles libopenvg diff --git a/package/freescale-imx/imx-kobs/imx-kobs.hash b/package/freescale-imx/imx-kobs/imx-kobs.hash index 09d42edadc..258d08c7e9 100644 --- a/package/freescale-imx/imx-kobs/imx-kobs.hash +++ b/package/freescale-imx/imx-kobs/imx-kobs.hash @@ -1,2 +1 @@ -# locally computed -sha256 45f729fc2b49556f1ca9df778f52bf5cc749cfe53664c8206daab29991c5f6c1 imx-kobs-5.3.tar.gz +sha256 5b040de6e3db5d47371b311e7068380926827a7a6ef02e45fb2ba08b680d0ec5 imx-kobs-b402243a04e5a6760a860445e5ff6a931d86f794.tar.gz diff --git a/package/freescale-imx/imx-kobs/imx-kobs.mk b/package/freescale-imx/imx-kobs/imx-kobs.mk index cc4721f7d1..8f490c2499 100644 --- a/package/freescale-imx/imx-kobs/imx-kobs.mk +++ b/package/freescale-imx/imx-kobs/imx-kobs.mk @@ -4,8 +4,8 @@ # ################################################################################ -IMX_KOBS_VERSION = 5.3 -IMX_KOBS_SITE = $(FREESCALE_IMX_SITE) +IMX_KOBS_VERSION = b402243a04e5a6760a860445e5ff6a931d86f794 +IMX_KOBS_SITE = $(call github,NXPmicro,imx-kobs,$(IMX_KOBS_VERSION)) IMX_KOBS_LICENSE = GPLv2+ IMX_KOBS_LICENSE_FILES = COPYING diff --git a/package/freescale-imx/imx-lib/imx-lib.hash b/package/freescale-imx/imx-lib/imx-lib.hash index 8e4bd73eee..76dcb23f6f 100644 --- a/package/freescale-imx/imx-lib/imx-lib.hash +++ b/package/freescale-imx/imx-lib/imx-lib.hash @@ -1,2 +1,2 @@ # locally computed -sha256 2b4547ffb1de328cf8997a09a423c6f015d808493efd11a98a5d42c6497e3445 imx-lib-5.1.tar.gz +sha256 8d12c4a0a44d29569f1ead3a36adc28402b9c4036b53e11dd3ebf2295e3ce1d0 imx-lib-5.4.tar.gz diff --git a/package/freescale-imx/imx-lib/imx-lib.mk b/package/freescale-imx/imx-lib/imx-lib.mk index b49357bd98..d3603ca919 100644 --- a/package/freescale-imx/imx-lib/imx-lib.mk +++ b/package/freescale-imx/imx-lib/imx-lib.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMX_LIB_VERSION = 5.1 +IMX_LIB_VERSION = 5.4 IMX_LIB_SITE = $(FREESCALE_IMX_SITE) IMX_LIB_LICENSE = LGPLv2.1+ IMX_LIB_LICENSE_FILES = COPYING-LGPL-2.1 diff --git a/package/freescale-imx/imx-parser/Config.in b/package/freescale-imx/imx-parser/Config.in new file mode 100644 index 0000000000..526f066387 --- /dev/null +++ b/package/freescale-imx/imx-parser/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_IMX_PARSER + bool "imx-parser" + depends on BR2_arm # Only relevant for i.MX + help + Binary parser libraries for the NXP i.MX SoCs. + + This library is provided by NXP as-is and doesn't have + an upstream. diff --git a/package/freescale-imx/imx-parser/imx-parser.hash b/package/freescale-imx/imx-parser/imx-parser.hash new file mode 100644 index 0000000000..f6e82338aa --- /dev/null +++ b/package/freescale-imx/imx-parser/imx-parser.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d3a03e60780bbbd0c92932f60bd34d2fe14ffecf6aa6b810723c3edf798cad1f imx-parser-4.1.4.bin diff --git a/package/freescale-imx/imx-parser/imx-parser.mk b/package/freescale-imx/imx-parser/imx-parser.mk new file mode 100644 index 0000000000..a57647c03b --- /dev/null +++ b/package/freescale-imx/imx-parser/imx-parser.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# imx-parser +# +################################################################################ + +IMX_PARSER_VERSION = 4.1.4 +IMX_PARSER_SITE = $(FREESCALE_IMX_SITE) +IMX_PARSER_SOURCE = imx-parser-$(IMX_PARSER_VERSION).bin +IMX_PARSER_INSTALL_STAGING = YES + +IMX_PARSER_LICENSE = NXP Semiconductor Software License Agreement +IMX_PARSER_LICENSE_FILES = EULA COPYING +IMX_PARSER_REDISTRIBUTE = NO + +ifeq ($(BR2_ARM_EABIHF),y) +IMX_PARSER_CONF_OPTS += --enable-fhw +else +IMX_PARSER_CONF_OPTS += --enable-fsw +endif + +define IMX_PARSER_EXTRACT_CMDS + $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_PARSER_SOURCE)) +endef + +# The Makefile installs several versions of the libraries, but we only +# need one of them, depending on the platform. + +# Upstream installs libraries into usr/lib/imx-mm, but the dynamic +# loader only looks in usr/lib, so move the libraries there +define IMX_PARSER_FIXUP_TARGET_PATH + find $(TARGET_DIR)/usr/lib/imx-mm -not -type d \ + -exec mv {} $(TARGET_DIR)/usr/lib \; + rm -rf $(TARGET_DIR)/usr/lib/imx-mm +endef +IMX_PARSER_POST_INSTALL_TARGET_HOOKS += IMX_PARSER_FIXUP_TARGET_PATH + +$(eval $(autotools-package)) diff --git a/package/freescale-imx/imx-uuc/Config.in b/package/freescale-imx/imx-uuc/Config.in index d18157540e..ed734ad7e2 100644 --- a/package/freescale-imx/imx-uuc/Config.in +++ b/package/freescale-imx/imx-uuc/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_IMX_UUC bool "imx-uuc" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_arm # Only relevant for i.MX + depends on BR2_USE_MMU # fork() select BR2_PACKAGE_HOST_DOSFSTOOLS help This package provides the Universal Adapter user-space @@ -16,4 +17,5 @@ config BR2_PACKAGE_IMX_UUC comment "imx-uuc needs a toolchain w/ threads" depends on BR2_arm + depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/freescale-imx/imx-uuc/imx-uuc.hash b/package/freescale-imx/imx-uuc/imx-uuc.hash index 05501c8b7c..d6e4d97ea0 100644 --- a/package/freescale-imx/imx-uuc/imx-uuc.hash +++ b/package/freescale-imx/imx-uuc/imx-uuc.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 95d7f7b075f58fedc07602fbc0e5bf5212d28deea3d09cdbcbd80992dcd18482 imx-uuc-0.5.1.tar.gz +sha256 eac0c3e288c845cd9b82d02993f8358731a7a03e51591b27feeb453b143beb73 imx-uuc-3440b1108373e79669cc17ba1d2be91a123a2053.tar.gz diff --git a/package/freescale-imx/imx-uuc/imx-uuc.mk b/package/freescale-imx/imx-uuc/imx-uuc.mk index 58e749e42d..12d9312155 100644 --- a/package/freescale-imx/imx-uuc/imx-uuc.mk +++ b/package/freescale-imx/imx-uuc/imx-uuc.mk @@ -4,8 +4,8 @@ # ################################################################################ -IMX_UUC_VERSION = 0.5.1 -IMX_UUC_SITE = $(FREESCALE_IMX_SITE) +IMX_UUC_VERSION = 3440b1108373e79669cc17ba1d2be91a123a2053 +IMX_UUC_SITE = $(call github,NXPmicro,imx-uuc,$(IMX_UUC_VERSION)) IMX_UUC_LICENSE = GPLv2+ IMX_UUC_LICENSE_FILES = COPYING diff --git a/package/freescale-imx/imx-vpu/imx-vpu.hash b/package/freescale-imx/imx-vpu/imx-vpu.hash index c828c2b09b..b3d617ded9 100644 --- a/package/freescale-imx/imx-vpu/imx-vpu.hash +++ b/package/freescale-imx/imx-vpu/imx-vpu.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 f11b91dcdb84bfefd3c88f10a9c1c1bc3420e4bbaadc38b9280fb52f7769eca8 imx-vpu-5.4.32.bin +sha256 e1d6550426dfc59e4fd0352f1d312ea7eff5dcf18974f923ed7a85007cb40e27 imx-vpu-5.4.35.bin diff --git a/package/freescale-imx/imx-vpu/imx-vpu.mk b/package/freescale-imx/imx-vpu/imx-vpu.mk index 949fefa4e2..0b464d854d 100644 --- a/package/freescale-imx/imx-vpu/imx-vpu.mk +++ b/package/freescale-imx/imx-vpu/imx-vpu.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMX_VPU_VERSION = 5.4.32 +IMX_VPU_VERSION = 5.4.35 IMX_VPU_SITE = $(FREESCALE_IMX_SITE) IMX_VPU_SOURCE = imx-vpu-$(IMX_VPU_VERSION).bin @@ -16,7 +16,7 @@ IMX_VPU_MAKE_ENV = \ CROSS_COMPILE="$(TARGET_CROSS)" \ PLATFORM=$(BR2_PACKAGE_FREESCALE_IMX_PLATFORM) -IMX_VPU_LICENSE = Freescale Semiconductor Software License Agreement +IMX_VPU_LICENSE = NXP Semiconductor Software License Agreement IMX_VPU_LICENSE_FILES = EULA COPYING IMX_VPU_REDISTRIBUTE = NO diff --git a/package/libfslvpuwrap/Config.in b/package/freescale-imx/imx-vpuwrap/Config.in similarity index 59% rename from package/libfslvpuwrap/Config.in rename to package/freescale-imx/imx-vpuwrap/Config.in index 72f7126307..35095955c2 100644 --- a/package/libfslvpuwrap/Config.in +++ b/package/freescale-imx/imx-vpuwrap/Config.in @@ -1,13 +1,13 @@ -comment "libfslvpuwrap needs an imx-specific Linux kernel to be built" +comment "imx-vpuwrap needs an imx-specific Linux kernel to be built" depends on BR2_arm depends on !BR2_LINUX_KERNEL -comment "libfslvpuwrap needs an i.MX platform with VPU support" +comment "imx-vpuwrap needs an i.MX platform with VPU support" depends on BR2_arm depends on BR2_LINUX_KERNEL && !BR2_PACKAGE_FREESCALE_IMX_HAS_VPU -config BR2_PACKAGE_LIBFSLVPUWRAP - bool "libfslvpuwrap" +config BR2_PACKAGE_IMX_VPUWRAP + bool "imx-vpuwrap" depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX depends on BR2_PACKAGE_FREESCALE_IMX_HAS_VPU @@ -15,5 +15,5 @@ config BR2_PACKAGE_LIBFSLVPUWRAP help Wrapper library for the vpu library, giving it a different API. - This library is provided by Freescale as-is and doesn't have + This library is provided by NXP as-is and doesn't have an upstream. diff --git a/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash new file mode 100644 index 0000000000..2999984d2c --- /dev/null +++ b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 282e7f8766ce385d8752bd29f04ddeff709ece0846be97547cf982183bbe241e imx-vpuwrap-1.0.68.bin diff --git a/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk new file mode 100644 index 0000000000..7cbf7784c9 --- /dev/null +++ b/package/freescale-imx/imx-vpuwrap/imx-vpuwrap.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# imx-vpuwrap +# +################################################################################ + +IMX_VPUWRAP_VERSION = 1.0.68 +IMX_VPUWRAP_SITE = $(FREESCALE_IMX_SITE) +IMX_VPUWRAP_SOURCE = imx-vpuwrap-$(IMX_VPUWRAP_VERSION).bin +IMX_VPUWRAP_DEPENDENCIES = imx-vpu +IMX_VPUWRAP_INSTALL_STAGING = YES + +IMX_VPUWRAP_LICENSE = NXP Semiconductor Software License Agreement +IMX_VPUWRAP_LICENSE_FILES = EULA COPYING +IMX_VPUWRAP_REDISTRIBUTE = NO + +define IMX_VPUWRAP_EXTRACT_CMDS + $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_VPUWRAP_SOURCE)) +endef + +$(eval $(autotools-package)) diff --git a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash index 0842c7a7d7..9c43ea39e7 100644 --- a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash +++ b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash @@ -1,2 +1,2 @@ # locally computed -sha256 971254d204f6c8f739d0a2094055cd0b8001dc7d366345f996b14a495f92459e kernel-module-imx-gpu-viv-2b3290d1c1ce383e860a0fd6b53074848a848e65.tar.gz +sha256 51dd137bd67ae991fa58fff4151c6bd7dd46bafd613f43e83d8403ec37217a90 kernel-module-imx-gpu-viv-bfa78b095a892705a09afe9514fc5d236b3124d2.tar.gz diff --git a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk index aad8e4080b..bcbd8d2532 100644 --- a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk +++ b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk @@ -4,7 +4,7 @@ # ################################################################################ -KERNEL_MODULE_IMX_GPU_VIV_VERSION = 2b3290d1c1ce383e860a0fd6b53074848a848e65 +KERNEL_MODULE_IMX_GPU_VIV_VERSION = bfa78b095a892705a09afe9514fc5d236b3124d2 KERNEL_MODULE_IMX_GPU_VIV_SITE = \ $(call github,Freescale,kernel-module-imx-gpu-viv,$(KERNEL_MODULE_IMX_GPU_VIV_VERSION)) KERNEL_MODULE_IMX_GPU_VIV_LICENSE = GPLv2 diff --git a/package/freescale-imx/libz160/Config.in b/package/freescale-imx/libz160/Config.in index cfbfb79e9e..012efb9e7b 100644 --- a/package/freescale-imx/libz160/Config.in +++ b/package/freescale-imx/libz160/Config.in @@ -6,5 +6,5 @@ config BR2_PACKAGE_LIBZ160 An API for user space programs to perform 2D accelerated graphics operations on AMD GPU (included for examples in iMX5x chipsets) -comment "libz160 needs an EABI toolchain w/ (e)glibc" +comment "libz160 needs an EABI toolchain w/ glibc" depends on !BR2_ARM_EABI || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/freescale-imx/libz160/libz160.hash b/package/freescale-imx/libz160/libz160.hash new file mode 100644 index 0000000000..ee10630fdf --- /dev/null +++ b/package/freescale-imx/libz160/libz160.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 08767eb269a0a30ca0aa3d3b5aa9a53a2d17ed1c24651b7e8cefc7704b883f19 libz160-bin-11.09.01.bin diff --git a/package/freeswitch/0001-libvpx-cross.patch b/package/freeswitch/0001-libvpx-cross.patch new file mode 100644 index 0000000000..a2583dac35 --- /dev/null +++ b/package/freeswitch/0001-libvpx-cross.patch @@ -0,0 +1,29 @@ +Fix cross-compiling libvpx + +Freeswitch since version 1.6.7 only uses an in-tree-version of libvpx: +https://freeswitch.org/fisheye/changelog/freeswitch?cs=febe0f8dacea2d2a31902b3dc469be757f8c3c4d + +It is not possible to use an external version of libvpx anymore. +Unfortunately the freeswitch build system has no support for cross- +compiling libvpx so we need to patch Makefile to pass CROSS from +package/freeswitch/freeswitch.mk and add target=generic-gnu as +configure parameter: +https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/libs/libvpx/README#110 + +And yes, autoreconf is also broken, so we patch Makefile.in instead +of Makefile.am. + +Signed-off-by: Bernd Kuhls + +diff -uNr freeswitch-1.6.7.org/Makefile.in freeswitch-1.6.7/Makefile.in +--- freeswitch-1.6.7.org/Makefile.in 2016-04-01 18:09:54.000000000 +0200 ++++ freeswitch-1.6.7/Makefile.in 2016-04-22 20:11:37.938961730 +0200 +@@ -3491,7 +3491,7 @@ + cd libs/libzrtp && $(MAKE) + + libs/libvpx/Makefile: +- cd libs/libvpx && CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="$(VISIBILITY_FLAG)" ++ cd libs/libvpx && CROSS=$(CROSS) CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)" ./configure --target=generic-gnu --enable-pic --disable-docs --disable-examples --disable-install-bins --disable-install-srcs --disable-unit-tests --extra-cflags="$(VISIBILITY_FLAG)" + + libs/libvpx/libvpx.a: libs/libvpx/Makefile + @cd libs/libvpx && $(MAKE) diff --git a/package/freeswitch/Config.in b/package/freeswitch/Config.in index 6049af3a7c..1f6459335d 100644 --- a/package/freeswitch/Config.in +++ b/package/freeswitch/Config.in @@ -4,7 +4,9 @@ config BR2_PACKAGE_FREESWITCH depends on !BR2_STATIC_LIBS # apr, included in freeswitch source depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # apr, included in freeswitch source - depends on BR2_USE_WCHAR # libuuid + depends on BR2_USE_WCHAR # uses wchar_t + select BR2_PACKAGE_FFMPEG_AVRESAMPLE if BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_FFMPEG_SWSCALE if BR2_PACKAGE_FFMPEG select BR2_PACKAGE_LIBCURL select BR2_PACKAGE_JPEG # src/mod/applications/mod_cv/mod_cv.cpp includes diff --git a/package/freeswitch/freeswitch.hash b/package/freeswitch/freeswitch.hash index 36bd75efcc..6412511d5f 100644 --- a/package/freeswitch/freeswitch.hash +++ b/package/freeswitch/freeswitch.hash @@ -1,2 +1,2 @@ -# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.6.8.tar.xz.sha256 -sha256 a9834667c0afc164631611b4862acd6411e4e6ddb706e4af4b51eab4adbe4fc1 freeswitch-1.6.8.tar.xz +# From http://files.freeswitch.org/freeswitch-releases/freeswitch-1.6.14.tar.xz.sha256 +sha256 759cb79800c02b9476fcec4c88822942ed6183d9c2686015e4c293e22790cf35 freeswitch-1.6.14.tar.xz diff --git a/package/freeswitch/freeswitch.mk b/package/freeswitch/freeswitch.mk index 03ef8bc9db..8c107e9900 100644 --- a/package/freeswitch/freeswitch.mk +++ b/package/freeswitch/freeswitch.mk @@ -4,7 +4,7 @@ # ################################################################################ -FREESWITCH_VERSION = 1.6.8 +FREESWITCH_VERSION = 1.6.14 FREESWITCH_SOURCE = freeswitch-$(FREESWITCH_VERSION).tar.xz FREESWITCH_SITE = http://files.freeswitch.org/freeswitch-releases FREESWITCH_LICENSE = MPLv1.1, \ @@ -69,8 +69,6 @@ FREESWITCH_CONF_ENV += \ ac_cv_gcc_supports_w_no_unused_result=no FREESWITCH_CONF_OPTS = \ - --disable-libvpx \ - --disable-libyuv \ --without-erlang \ --enable-fhs \ --without-python \ @@ -175,11 +173,6 @@ ifeq ($(BR2_PACKAGE_FREETYPE),y) FREESWITCH_DEPENDENCIES += freetype endif -ifeq ($(BR2_PACKAGE_IMAGEMAGICK),y) -FREESWITCH_DEPENDENCIES += imagemagick -FREESWITCH_ENABLED_MODULES += formats/mod_imagick -endif - ifeq ($(BR2_PACKAGE_LIBBROADVOICE),y) FREESWITCH_DEPENDENCIES += libbroadvoice FREESWITCH_ENABLED_MODULES += codecs/mod_bv @@ -284,4 +277,15 @@ ifeq ($(BR2_PACKAGE_XZ),y) FREESWITCH_DEPENDENCIES += xz endif +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8)$(BR2_PACKAGE_FFMPEG),yy) +FREESWITCH_LICENSE := $(FREESWITCH_LICENSE), BSD-3c (libvpx, libyuv) +FREESWITCH_LICENSE_FILES += libs/libvpx/LICENSE libs/libyuv/LICENSE +FREESWITCH_CONF_OPTS += --enable-libvpx --enable-libyuv +FREESWITCH_DEPENDENCIES += host-yasm ffmpeg +FREESWITCH_ENABLED_MODULES += applications/mod_av applications/mod_fsv +FREESWITCH_MAKE_ENV += CROSS=$(TARGET_CROSS) +else +FREESWITCH_CONF_OPTS += --disable-libvpx --disable-libyuv +endif + $(eval $(autotools-package)) diff --git a/package/freetype/freetype.hash b/package/freetype/freetype.hash index 45f91df558..b2cec04d3b 100644 --- a/package/freetype/freetype.hash +++ b/package/freetype/freetype.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/freetype/files/freetype2/2.6.3/ -md5 0037b25a8c090bc8a1218e867b32beb1 freetype-2.6.3.tar.bz2 -sha1 6c98bd5d0be313207c37ca23d25faf983486aee5 freetype-2.6.3.tar.bz2 +# Locally calculated after checking pgp signature +sha256 3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88 freetype-2.7.1.tar.bz2 diff --git a/package/freetype/freetype.mk b/package/freetype/freetype.mk index d95c424fa5..9484758700 100644 --- a/package/freetype/freetype.mk +++ b/package/freetype/freetype.mk @@ -4,9 +4,9 @@ # ################################################################################ -FREETYPE_VERSION = 2.6.3 +FREETYPE_VERSION = 2.7.1 FREETYPE_SOURCE = freetype-$(FREETYPE_VERSION).tar.bz2 -FREETYPE_SITE = http://downloads.sourceforge.net/project/freetype/freetype2/$(FREETYPE_VERSION) +FREETYPE_SITE = http://download.savannah.gnu.org/releases/freetype FREETYPE_INSTALL_STAGING = YES FREETYPE_MAKE_OPTS = CCexe="$(HOSTCC)" FREETYPE_LICENSE = Dual FTL/GPLv2+ diff --git a/package/fwts/0001-build-do-not-use-Werror.patch b/package/fwts/0001-build-do-not-use-Werror.patch new file mode 100644 index 0000000000..5246fd62d2 --- /dev/null +++ b/package/fwts/0001-build-do-not-use-Werror.patch @@ -0,0 +1,69 @@ +From db480b9f3e3a5c6c12e9dd04e87c8dff9381b8e7 Mon Sep 17 00:00:00 2001 +From: Erico Nunes +Date: Fri, 12 Aug 2016 23:11:56 +0200 +Subject: [PATCH] fwts: do not use -Werror + +Warnings come and go with various compiler versions, so using -Werror is +prone to cause build failures with various compiler versions, especially +newer versions that introduce new warnings. + +Remove use of -Werror. + +Signed-off-by: Erico Nunes +--- + configure.ac | 2 +- + src/Makefile.am | 2 +- + src/lib/src/Makefile.am | 2 +- + src/utilities/Makefile.am | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index e3e7512..64034fa 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1,5 +1,5 @@ + AC_INIT([fwts],[0.1],[fwts-devel@lists.ubuntu.com]) +- AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects]) ++ AM_INIT_AUTOMAKE([-Wall foreign subdir-objects]) + m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) + AC_CANONICAL_HOST + AC_CONFIG_MACRO_DIR([m4]) +diff --git a/src/Makefile.am b/src/Makefile.am +index bc23e8d..599765d 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -14,7 +14,7 @@ AM_CPPFLAGS = \ + `pkg-config --silence-errors --cflags json` \ + `pkg-config --silence-errors --cflags json-c` \ + -pthread `pkg-config --cflags glib-2.0 gio-2.0` \ +- -Wall -Werror -Wextra ++ -Wall -Wextra + + bin_PROGRAMS = fwts + +diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am +index 1b8fd74..163c9ae 100644 +--- a/src/lib/src/Makefile.am ++++ b/src/lib/src/Makefile.am +@@ -6,7 +6,7 @@ AM_CPPFLAGS = \ + `pkg-config --silence-errors --cflags json-c` \ + `pkg-config --cflags glib-2.0 gio-2.0` \ + -DDATAROOTDIR=\"$(datarootdir)\" \ +- -Wall -Werror -Wextra ++ -Wall -Wextra + + pkglib_LTLIBRARIES = libfwts.la + +diff --git a/src/utilities/Makefile.am b/src/utilities/Makefile.am +index 9a47980..14997df 100644 +--- a/src/utilities/Makefile.am ++++ b/src/utilities/Makefile.am +@@ -1,4 +1,4 @@ +-AM_CPPFLAGS = -Wall -Werror -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \ ++AM_CPPFLAGS = -Wall -Wextra -DDATAROOTDIR=\"$(datarootdir)\" \ + `pkg-config --silence-errors --cflags json` \ + `pkg-config --silence-errors --cflags json-c` + +-- +2.7.4 + diff --git a/package/fwts/Config.in b/package/fwts/Config.in new file mode 100644 index 0000000000..37759c61cb --- /dev/null +++ b/package/fwts/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_FWTS + bool "fwts" + depends on BR2_i386 || BR2_x86_64 || BR2_aarch64 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + depends on BR2_TOOLCHAIN_USES_GLIBC # execinfo.h + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_JSON_C + help + Firmware Test Suite (FWTS) is a test suite that performs + sanity checks on firmware. It is intended to identify BIOS and + ACPI errors and if appropriate it will try to explain the + errors and give advice to help workaround or fix firmware + bugs. + + dtc (libfdt) is an optional dependency for fdt related tests. + + https://wiki.ubuntu.com/FirmwareTestSuite + +comment "fwts needs a glibc toolchain w/ wchar, threads" + depends on BR2_i386 || BR2_x86_64 || BR2_aarch64 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/fwts/fwts.hash b/package/fwts/fwts.hash new file mode 100644 index 0000000000..e23386e1fd --- /dev/null +++ b/package/fwts/fwts.hash @@ -0,0 +1,2 @@ +# Hash from: http://fwts.ubuntu.com/release/SHA256SUMS +sha256 077b57864515ffdd6d655201da750829f9ccffb8f280eb86d01c2ef184cdcb16 fwts-V16.11.00.tar.gz diff --git a/package/fwts/fwts.mk b/package/fwts/fwts.mk new file mode 100644 index 0000000000..984e368fd9 --- /dev/null +++ b/package/fwts/fwts.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# fwts +# +################################################################################ + +FWTS_VERSION = V16.11.00 +FWTS_SITE = http://fwts.ubuntu.com/release +FWTS_STRIP_COMPONENTS = 0 +FWTS_LICENSE = GPLv2, LGPLv2.1, Custom +FWTS_LICENSE_FILES = debian/copyright +FWTS_AUTORECONF = YES +FWTS_DEPENDENCIES = host-bison host-flex host-pkgconf json-c libglib2 \ + $(if $(BR2_PACKAGE_DTC),dtc) + +$(eval $(autotools-package)) diff --git a/package/fwup/Config.in b/package/fwup/Config.in new file mode 100644 index 0000000000..fd40cf3261 --- /dev/null +++ b/package/fwup/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_FWUP + bool "fwup" + depends on BR2_USE_MMU + depends on BR2_USE_WCHAR + select BR2_PACKAGE_LIBARCHIVE + # required by libarchive to include zip compression + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_LIBCONFUSE + select BR2_PACKAGE_LIBSODIUM + help + Fwup is a scriptable embedded Linux firmware update creator + and runner. + + https://github.com/fhunleth/fwup + +comment "fwup needs a toolchain w/ wchar" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR diff --git a/package/fwup/Config.in.host b/package/fwup/Config.in.host new file mode 100644 index 0000000000..4e21c7db03 --- /dev/null +++ b/package/fwup/Config.in.host @@ -0,0 +1,7 @@ +config BR2_PACKAGE_HOST_FWUP + bool "host fwup" + help + Fwup is a scriptable embedded Linux firmware update creator + and runner. + + https://github.com/fhunleth/fwup diff --git a/package/fwup/fwup.hash b/package/fwup/fwup.hash new file mode 100644 index 0000000000..e21eff0a6d --- /dev/null +++ b/package/fwup/fwup.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 64c3a0ac38dc11c0c05b2588a89638cbc37f5552ac0f1c290f7ee5365f2bba49 fwup-v0.8.2.tar.gz diff --git a/package/fwup/fwup.mk b/package/fwup/fwup.mk new file mode 100644 index 0000000000..d87bdca96d --- /dev/null +++ b/package/fwup/fwup.mk @@ -0,0 +1,17 @@ +############################################################# +# +# fwup +# +############################################################# + +FWUP_VERSION = v0.8.2 +FWUP_SITE = $(call github,fhunleth,fwup,$(FWUP_VERSION)) +FWUP_LICENSE = Apache-2.0 +FWUP_LICENSE_FILES = LICENSE +FWUP_DEPENDENCIES = host-pkgconf libconfuse libarchive libsodium +HOST_FWUP_DEPENDENCIES = host-pkgconf host-libconfuse host-libarchive host-libsodium +FWUP_AUTORECONF = YES +FWUP_CONF_ENV = ac_cv_path_HELP2MAN="" + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/gadgetfs-test/gadgetfs-test.mk b/package/gadgetfs-test/gadgetfs-test.mk index 655f50a564..ca47738f5c 100644 --- a/package/gadgetfs-test/gadgetfs-test.mk +++ b/package/gadgetfs-test/gadgetfs-test.mk @@ -15,11 +15,11 @@ GADGETFS_TEST_MAKEOPTS += USE_AIO=y endif define GADGETFS_TEST_BUILD_CMDS - $(MAKE) -C $(@D) $(GADGETFS_TEST_MAKEOPTS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(GADGETFS_TEST_MAKEOPTS) endef define GADGETFS_TEST_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) prefix=/usr install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) prefix=/usr install endef $(eval $(generic-package)) diff --git a/package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch b/package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch index 429127736c..b5f2e6c521 100644 --- a/package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch +++ b/package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch @@ -1,20 +1,39 @@ Fix missing PTHREAD_MUTEX_RECURSIVE_NP The musl C library does not provide the non portable -PTHREAD_MUTEX_RECURSIVE_NP. Test for PTHREAD_MUTEX_RECURSIVE_NP only. +PTHREAD_MUTEX_RECURSIVE_NP. In addition, uClibc does not define it as +a #define, but as an enum value, so doing a #if defined() check +doesn't work properly. Instead, add a AC_CHECK_DECL() autoconf check. Signed-off-by: Baruch Siach ---- +[Thomas: switch to an autoconf check.] +Signed-off-by: Thomas Petazzoni -diff -Nuar gamin-0.1.10-orig/libgamin/gam_data.c gamin-0.1.10/libgamin/gam_data.c ---- gamin-0.1.10-orig/libgamin/gam_data.c 2007-07-04 16:36:48.000000000 +0300 -+++ gamin-0.1.10/libgamin/gam_data.c 2016-03-01 14:50:18.931696959 +0200 +Index: b/configure.in +=================================================================== +--- a/configure.in ++++ b/configure.in +@@ -294,6 +294,10 @@ + AC_DEFINE([HAVE_LIBPTHREAD], [], [Define if pthread library is there (-lpthread)]) + AC_DEFINE([HAVE_PTHREAD_H], [], [Define if is there]) + WITH_THREADS="1"])) ++ ++ AC_CHECK_DECL([PTHREAD_MUTEX_RECURSIVE_NP], ++ [AC_DEFINE([HAVE_PTHREAD_MUTEX_RECURSIVE_NP], [], [whether HAVE_PTHREAD_MUTEX_RECURSIVE_NP is defined])], ++ [], [#include ]) + fi + + dnl Use weak symbols on linux/gcc to avoid imposing libpthreads to apps +Index: b/libgamin/gam_data.c +=================================================================== +--- a/libgamin/gam_data.c ++++ b/libgamin/gam_data.c @@ -470,7 +470,7 @@ } if (is_threaded > 0) { pthread_mutexattr_init(&attr); -#if defined(linux) || defined(PTHREAD_MUTEX_RECURSIVE_NP) -+#if defined(PTHREAD_MUTEX_RECURSIVE_NP) ++#if defined(HAVE_PTHREAD_MUTEX_RECURSIVE_NP) pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); #else pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); diff --git a/package/gauche/Config.in b/package/gauche/Config.in index 3ca012d3f8..c5f2a51948 100644 --- a/package/gauche/Config.in +++ b/package/gauche/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_GAUCHE_ARCH_SUPPORTS default y if BR2_arm || BR2_armeb || BR2_i386 || BR2_m68k || \ BR2_mips || BR2_mipsel || BR2_mips64 || \ BR2_mips64el || BR2_powerpc || BR2_powerpc64 || \ - BR2_powerpc64le || BR2_sh || BR2_sh64 || BR2_x86_64 + BR2_powerpc64le || BR2_sh || BR2_x86_64 config BR2_PACKAGE_GAUCHE bool "gauche" diff --git a/package/gawk/Config.in b/package/gawk/Config.in index 949f509b85..36e70eb7ad 100644 --- a/package/gawk/Config.in +++ b/package/gawk/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_GAWK depends on BR2_USE_WCHAR depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help A special-purpose programming language which is data driven rather than procedural. Allows for simple data-reformatting jobs @@ -13,3 +14,4 @@ config BR2_PACKAGE_GAWK comment "gawk needs a toolchain w/ wchar, dynamic library" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/gawk/gawk.hash b/package/gawk/gawk.hash index 7f746d8814..e2c7806cc5 100644 --- a/package/gawk/gawk.hash +++ b/package/gawk/gawk.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 e3cf55e91e31ea2845f8338bedd91e40671fc30e4d82ea147d220e687abda625 gawk-4.1.3.tar.xz +sha256 53e184e2d0f90def9207860531802456322be091c7b48f23fdc79cda65adc266 gawk-4.1.4.tar.xz diff --git a/package/gawk/gawk.mk b/package/gawk/gawk.mk index da9be95cd0..7c6689b30c 100644 --- a/package/gawk/gawk.mk +++ b/package/gawk/gawk.mk @@ -4,7 +4,7 @@ # ################################################################################ -GAWK_VERSION = 4.1.3 +GAWK_VERSION = 4.1.4 GAWK_SOURCE = gawk-$(GAWK_VERSION).tar.xz GAWK_SITE = $(BR2_GNU_MIRROR)/gawk GAWK_DEPENDENCIES = host-gawk @@ -36,9 +36,6 @@ else GAWK_CONF_OPTS += --without-readline endif -# We don't have a host-busybox, and we don't want to use readline or mpfr -HOST_GAWK_DEPENDENCIES = - HOST_GAWK_CONF_OPTS = --without-readline --without-mpfr define GAWK_CREATE_SYMLINK diff --git a/package/gcc/4.7.4/100-uclibc-conf.patch b/package/gcc/4.7.4/100-uclibc-conf.patch deleted file mode 100644 index 6bad179e62..0000000000 --- a/package/gcc/4.7.4/100-uclibc-conf.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- gcc/gcc/config/--- gcc/contrib/regression/objs-gcc.sh -+++ gcc/contrib/regression/objs-gcc.sh -@@ -105,6 +105,10 @@ - then - make all-gdb all-dejagnu all-ld || exit 1 - make install-gdb install-dejagnu install-ld || exit 1 -+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] -+ then -+ make all-gdb all-dejagnu all-ld || exit 1 -+ make install-gdb install-dejagnu install-ld || exit 1 - elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then - make bootstrap || exit 1 - make install || exit 1 diff --git a/package/gcc/4.7.4/1000-powerpc-link-with-math-lib.patch.conditional b/package/gcc/4.7.4/1000-powerpc-link-with-math-lib.patch.conditional deleted file mode 100644 index 2554263a00..0000000000 --- a/package/gcc/4.7.4/1000-powerpc-link-with-math-lib.patch.conditional +++ /dev/null @@ -1,127 +0,0 @@ -http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00269.html - -On glibc the libc.so carries a copy of the math function copysignl() but -on uClibc math functions like copysignl() live in libm. Since libgcc_s -contains unresolved symbols, any attempt to link against libgcc_s -without explicitely specifying -lm fails, resulting in a broken -bootstrap of the compiler. - -Forward ported to gcc 4.7.3 - -Signed-off-by: Gustavo Zacarias - -diff -Nura gcc-4.7.3.orig/libgcc/config/t-slibgcc gcc-4.7.3/libgcc/config/t-slibgcc ---- gcc-4.7.3.orig/libgcc/config/t-slibgcc 2013-04-11 15:23:46.491571116 -0300 -+++ gcc-4.7.3/libgcc/config/t-slibgcc 2013-04-11 15:25:06.241141824 -0300 -@@ -27,7 +27,7 @@ - SHLIB_OBJS = @shlib_objs@ - SHLIB_DIR = @multilib_dir@ - SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@ --SHLIB_LC = -lc -+SHLIB_LC = @libgcc_libm@ -lc - SHLIB_MAKE_SOLINK = $(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK) - SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \ - $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) -diff -Nura gcc-4.7.3.orig/libgcc/configure gcc-4.7.3/libgcc/configure ---- gcc-4.7.3.orig/libgcc/configure 2013-04-11 15:23:46.551573051 -0300 -+++ gcc-4.7.3/libgcc/configure 2013-04-11 15:25:06.243141875 -0300 -@@ -563,6 +563,7 @@ - tmake_file - sfp_machine_header - set_use_emutls -+LIBGCC_LIBM - set_have_cc_tls - vis_hide - fixed_point -@@ -4445,6 +4446,37 @@ - fi - fi - -+# On powerpc libgcc_s references copysignl which is a libm function but -+# glibc apparently also provides it via libc as opposed to uClibc where -+# it lives in libm. -+echo "$as_me:$LINENO: checking for library containing copysignl" >&5 -+echo $ECHO_N "checking for library containing copysignl... $ECHO_C" >&6 -+if test "${libgcc_cv_copysignl_lib+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ -+ echo '#include ' > conftest.c -+ echo 'int the_libc = __UCLIBC__ + __powerpc__;' >> conftest.c -+ libgcc_cv_copysignl_lib="-lc" -+ if { ac_try='${CC-cc} -S conftest.c -o conftest.s 1>&5' -+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; } -+ then -+ libgcc_cv_copysignl_lib="-lm" -+ fi -+ rm -f conftest.* -+ -+fi -+echo "$as_me:$LINENO: result: $libgcc_cv_copysignl_lib" >&5 -+echo "${ECHO_T}$libgcc_cv_copysignl_lib" >&6 -+ -+case /${libgcc_cv_copysignl_lib}/ in -+ /-lm/) LIBGCC_LIBM="$LIBGCC_LIBM -lm" ;; -+ *) LIBGCC_LIBM= ;; -+esac - - # Conditionalize the makefile for this target machine. - tmake_file_= -diff -Nura gcc-4.7.3.orig/libgcc/configure.ac gcc-4.7.3/libgcc/configure.ac ---- gcc-4.7.3.orig/libgcc/configure.ac 2013-04-11 15:23:46.551573051 -0300 -+++ gcc-4.7.3/libgcc/configure.ac 2013-04-11 15:25:06.244141901 -0300 -@@ -324,6 +324,27 @@ - fi - AC_SUBST(set_have_cc_tls) - -+# On powerpc libgcc_s references copysignl which is a libm function but -+# glibc apparently also provides it via libc as opposed to uClibc where -+# it lives in libm. -+AC_CACHE_CHECK -+ libgcc_cv_copysignl_lib, -+ echo '#include ' > conftest.c -+ echo 'int the_libc = __UCLIBC__ + __powerpc__;' >> conftest.c -+ libgcc_cv_copysignl_lib="-lc" -+ if AC_TRY_COMMAND(${CC-cc} -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD) -+ then -+ libgcc_cv_copysignl_lib="-lm" -+ fi -+ rm -f conftest.* -+ ]) -+ -+case /${libgcc_cv_copysignl_lib}/ in -+ /-lm/) LIBGCC_LIBM="$LIBGCC_LIBM -lm" ;; -+ *) LIBGCC_LIBM= ;; -+esac -+AC_SUBST(LIBGCC_LIBM) -+ - # See if we have emulated thread-local storage. - GCC_CHECK_EMUTLS - set_use_emutls= -diff -Nura gcc-4.7.3.orig/libgcc/Makefile.in gcc-4.7.3/libgcc/Makefile.in ---- gcc-4.7.3.orig/libgcc/Makefile.in 2013-04-11 15:23:46.537572599 -0300 -+++ gcc-4.7.3/libgcc/Makefile.in 2013-04-11 15:25:06.241141824 -0300 -@@ -41,6 +41,7 @@ - decimal_float = @decimal_float@ - enable_decimal_float = @enable_decimal_float@ - fixed_point = @fixed_point@ -+LIBGCC_LIBM = @LIBGCC_LIBM@ - - host_noncanonical = @host_noncanonical@ - target_noncanonical = @target_noncanonical@ -@@ -928,9 +929,10 @@ - @multilib_dir@,$(MULTIDIR),$(subst \ - @shlib_objs@,$(objects) libgcc.a,$(subst \ - @shlib_base_name@,libgcc_s,$(subst \ -+ @libgcc_libm@,$(LIBGCC_LIBM),$(subst \ - @shlib_map_file@,$(mapfile),$(subst \ - @shlib_slibdir_qual@,$(MULTIOSSUBDIR),$(subst \ -- @shlib_slibdir@,$(shlib_slibdir),$(SHLIB_LINK)))))))) -+ @shlib_slibdir@,$(shlib_slibdir),$(SHLIB_LINK))))))))) - - libunwind$(SHLIB_EXT): $(libunwind-s-objects) $(extra-parts) - # @multilib_flags@ is still needed because this may use diff --git a/package/gcc/4.7.4/305-libmudflap-susv3-legacy.patch b/package/gcc/4.7.4/305-libmudflap-susv3-legacy.patch deleted file mode 100644 index 374b1f8659..0000000000 --- a/package/gcc/4.7.4/305-libmudflap-susv3-legacy.patch +++ /dev/null @@ -1,49 +0,0 @@ -Index: gcc-4.2/libmudflap/mf-hooks2.c -=================================================================== ---- gcc-4.2/libmudflap/mf-hooks2.c (revision 119834) -+++ gcc-4.2/libmudflap/mf-hooks2.c (working copy) -@@ -427,7 +427,7 @@ - { - TRACE ("%s\n", __PRETTY_FUNCTION__); - MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region"); -- bzero (s, n); -+ memset (s, 0, n); - } - - -@@ -437,7 +437,7 @@ - TRACE ("%s\n", __PRETTY_FUNCTION__); - MF_VALIDATE_EXTENT(src, n, __MF_CHECK_READ, "bcopy src"); - MF_VALIDATE_EXTENT(dest, n, __MF_CHECK_WRITE, "bcopy dest"); -- bcopy (src, dest, n); -+ memmove (dest, src, n); - } - - -@@ -447,7 +447,7 @@ - TRACE ("%s\n", __PRETTY_FUNCTION__); - MF_VALIDATE_EXTENT(s1, n, __MF_CHECK_READ, "bcmp 1st arg"); - MF_VALIDATE_EXTENT(s2, n, __MF_CHECK_READ, "bcmp 2nd arg"); -- return bcmp (s1, s2, n); -+ return n == 0 ? 0 : memcmp (s1, s2, n); - } - - -@@ -456,7 +456,7 @@ - size_t n = strlen (s); - TRACE ("%s\n", __PRETTY_FUNCTION__); - MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "index region"); -- return index (s, c); -+ return strchr (s, c); - } - - -@@ -465,7 +465,7 @@ - size_t n = strlen (s); - TRACE ("%s\n", __PRETTY_FUNCTION__); - MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "rindex region"); -- return rindex (s, c); -+ return strrchr (s, c); - } - - /* XXX: stpcpy, memccpy */ diff --git a/package/gcc/4.7.4/843-gcc-4.7.3-Fix-PR-target-58595.patch b/package/gcc/4.7.4/843-gcc-4.7.3-Fix-PR-target-58595.patch deleted file mode 100644 index 656952cded..0000000000 --- a/package/gcc/4.7.4/843-gcc-4.7.3-Fix-PR-target-58595.patch +++ /dev/null @@ -1,102 +0,0 @@ -commit 4fa1f8926227d4e79975b674dc4292b9bec4b137 -Author: jakub -Date: Thu Mar 6 12:07:07 2014 +0000 - - PR target/58595 - * config/arm/arm.c (arm_tls_symbol_p): Remove. - (arm_legitimize_address): Call legitimize_tls_address for any - arm_tls_referenced_p expression, handle constant addend. Call it - before testing for !TARGET_ARM. - (thumb_legitimize_address): Don't handle arm_tls_symbol_p here. - - * gcc.dg/tls/pr58595.c: New test. - - - git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208380 138bc75d-0d04-0410-961f-82ee72b054a4 - -diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c -index ce24bfe..af5666b 100644 ---- a/gcc/config/arm/arm.c -+++ b/gcc/config/arm/arm.c -@@ -235,7 +235,6 @@ static tree arm_gimplify_va_arg_expr (tree, tree, gimple_seq *, gimple_seq *); - static void arm_option_override (void); - static unsigned HOST_WIDE_INT arm_shift_truncation_mask (enum machine_mode); - static bool arm_cannot_copy_insn_p (rtx); --static bool arm_tls_symbol_p (rtx x); - static int arm_issue_rate (void); - static void arm_output_dwarf_dtprel (FILE *, int, rtx) ATTRIBUTE_UNUSED; - static bool arm_output_addr_const_extra (FILE *, rtx); -@@ -7336,6 +7335,32 @@ legitimize_tls_address (rtx x, rtx reg) - rtx - arm_legitimize_address (rtx x, rtx orig_x, enum machine_mode mode) - { -+ if (arm_tls_referenced_p (x)) -+ { -+ rtx addend = NULL; -+ -+ if (GET_CODE (x) == CONST && GET_CODE (XEXP (x, 0)) == PLUS) -+ { -+ addend = XEXP (XEXP (x, 0), 1); -+ x = XEXP (XEXP (x, 0), 0); -+ } -+ -+ if (GET_CODE (x) != SYMBOL_REF) -+ return x; -+ -+ gcc_assert (SYMBOL_REF_TLS_MODEL (x) != 0); -+ -+ x = legitimize_tls_address (x, NULL_RTX); -+ -+ if (addend) -+ { -+ x = gen_rtx_PLUS (SImode, x, addend); -+ orig_x = x; -+ } -+ else -+ return x; -+ } -+ - if (!TARGET_ARM) - { - /* TODO: legitimize_address for Thumb2. */ -@@ -7344,9 +7369,6 @@ arm_legitimize_address (rtx x, rtx orig_x, enum machine_mode mode) - return thumb_legitimize_address (x, orig_x, mode); - } - -- if (arm_tls_symbol_p (x)) -- return legitimize_tls_address (x, NULL_RTX); -- - if (GET_CODE (x) == PLUS) - { - rtx xop0 = XEXP (x, 0); -@@ -7459,9 +7481,6 @@ arm_legitimize_address (rtx x, rtx orig_x, enum machine_mode mode) - rtx - thumb_legitimize_address (rtx x, rtx orig_x, enum machine_mode mode) - { -- if (arm_tls_symbol_p (x)) -- return legitimize_tls_address (x, NULL_RTX); -- - if (GET_CODE (x) == PLUS - && CONST_INT_P (XEXP (x, 1)) - && (INTVAL (XEXP (x, 1)) >= 32 * GET_MODE_SIZE (mode) -@@ -7756,20 +7775,6 @@ thumb_legitimize_reload_address (rtx *x_p, - - /* Test for various thread-local symbols. */ - --/* Return TRUE if X is a thread-local symbol. */ -- --static bool --arm_tls_symbol_p (rtx x) --{ -- if (! TARGET_HAVE_TLS) -- return false; -- -- if (GET_CODE (x) != SYMBOL_REF) -- return false; -- -- return SYMBOL_REF_TLS_MODEL (x) != 0; --} -- - /* Helper for arm_tls_referenced_p. */ - - static int diff --git a/package/gcc/4.7.4/844-gcc-fix-build-with-gcc5.patch b/package/gcc/4.7.4/844-gcc-fix-build-with-gcc5.patch deleted file mode 100644 index b076e5438e..0000000000 --- a/package/gcc/4.7.4/844-gcc-fix-build-with-gcc5.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4fb4acf88912dd978bb63ecab79641a5795ce84f Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Mon, 27 Jul 2015 15:05:14 +0200 -Subject: [PATCH] gcc: fix build with gcc5 - -gcc < 4.8 doesn't build with gcc5. - -Patch is from DragonFlyBSD github [1] - -[1] https://github.com/DragonFlyBSD/DPorts/issues/136 - -Signed-off-by: Romain Naour ---- - gcc/cp/cfns.h | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h -index 62cdfab..4f63cc4 100644 ---- a/gcc/cp/cfns.h -+++ b/gcc/cp/cfns.h -@@ -53,6 +53,9 @@ __inline - static unsigned int hash (const char *, unsigned int); - #ifdef __GNUC__ - __inline -+#ifdef __GNUC_STDC_INLINE__ -+__attribute__ ((__gnu_inline__)) -+#endif - #endif - const char * libc_name_p (const char *, unsigned int); - /* maximum key range = 391, duplicates = 0 */ -@@ -96,7 +99,7 @@ hash (register const char *str, register unsigned int len) - 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - 400, 400, 400, 400, 400, 400, 400 - }; -- register int hval = len; -+ register int hval = (int)len; - - switch (hval) - { --- -2.4.3 - diff --git a/package/gcc/4.7.4/850-libstdcxx-uclibc-c99.patch b/package/gcc/4.7.4/850-libstdcxx-uclibc-c99.patch deleted file mode 100644 index 79cd7a932a..0000000000 --- a/package/gcc/4.7.4/850-libstdcxx-uclibc-c99.patch +++ /dev/null @@ -1,273 +0,0 @@ -Allow C99-depending features of libstdc++ with uClibc - -The libstdc++ code is fairly restrictive on how it checks for C99 -compatibility: it requires *complete* C99 support to enable certain -features. For example, uClibc provides a good number of C99 features, -but not C99 complex number support. For this reason, libstdc++ -completely disables many the standard C++ methods that can in fact -work because uClibc provides the necessary functions. - -This patch is similar and highly inspired from -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58393, but implemented in -a way that doesn't involve changing the configure.ac script, as -autoreconfiguring gcc is complicated. It simply relies on the fact -that uClibc defines the __UCLIBC__ definition. - -Signed-off-by: Thomas Petazzoni - -Index: b/libstdc++-v3/config/locale/generic/c_locale.h -=================================================================== ---- a/libstdc++-v3/config/locale/generic/c_locale.h -+++ b/libstdc++-v3/config/locale/generic/c_locale.h -@@ -71,7 +71,7 @@ - __builtin_va_list __args; - __builtin_va_start(__args, __fmt); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); - #else - const int __ret = __builtin_vsprintf(__out, __fmt, __args); -Index: b/libstdc++-v3/config/locale/gnu/c_locale.h -=================================================================== ---- a/libstdc++-v3/config/locale/gnu/c_locale.h -+++ b/libstdc++-v3/config/locale/gnu/c_locale.h -@@ -89,7 +89,7 @@ - __builtin_va_list __args; - __builtin_va_start(__args, __fmt); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); - #else - const int __ret = __builtin_vsprintf(__out, __fmt, __args); -Index: b/libstdc++-v3/include/bits/basic_string.h -=================================================================== ---- a/libstdc++-v3/include/bits/basic_string.h -+++ b/libstdc++-v3/include/bits/basic_string.h -@@ -2806,7 +2806,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99) \ -+#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)) \ - && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF)) - - #include -Index: b/libstdc++-v3/include/bits/locale_facets.tcc -=================================================================== ---- a/libstdc++-v3/include/bits/locale_facets.tcc -+++ b/libstdc++-v3/include/bits/locale_facets.tcc -@@ -989,7 +989,7 @@ - char __fbuf[16]; - __num_base::_S_format_float(__io, __fbuf, __mod); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - // First try a buffer perhaps big enough (most probably sufficient - // for non-ios_base::fixed outputs) - int __cs_size = __max_digits * 3; -Index: b/libstdc++-v3/include/bits/locale_facets_nonio.tcc -=================================================================== ---- a/libstdc++-v3/include/bits/locale_facets_nonio.tcc -+++ b/libstdc++-v3/include/bits/locale_facets_nonio.tcc -@@ -572,7 +572,7 @@ - { - const locale __loc = __io.getloc(); - const ctype<_CharT>& __ctype = use_facet >(__loc); --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - // First try a buffer perhaps big enough. - int __cs_size = 64; - char* __cs = static_cast(__builtin_alloca(__cs_size)); -Index: b/libstdc++-v3/include/c_compatibility/math.h -=================================================================== ---- a/libstdc++-v3/include/c_compatibility/math.h -+++ b/libstdc++-v3/include/c_compatibility/math.h -@@ -57,7 +57,7 @@ - using std::floor; - using std::fmod; - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::fpclassify; - using std::isfinite; - using std::isinf; -Index: b/libstdc++-v3/include/c_compatibility/wchar.h -=================================================================== ---- a/libstdc++-v3/include/c_compatibility/wchar.h -+++ b/libstdc++-v3/include/c_compatibility/wchar.h -@@ -103,7 +103,7 @@ - using std::wmemset; - using std::wcsftime; - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -Index: b/libstdc++-v3/include/c_global/cstdlib -=================================================================== ---- a/libstdc++-v3/include/c_global/cstdlib -+++ b/libstdc++-v3/include/c_global/cstdlib -@@ -146,7 +146,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef _Exit - #undef llabs -Index: b/libstdc++-v3/include/c_global/cwchar -=================================================================== ---- a/libstdc++-v3/include/c_global/cwchar -+++ b/libstdc++-v3/include/c_global/cwchar -@@ -234,7 +234,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef wcstold - #undef wcstoll -@@ -291,7 +291,7 @@ - using std::vwscanf; - #endif - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -Index: b/libstdc++-v3/include/c_std/cstdio -=================================================================== ---- a/libstdc++-v3/include/c_std/cstdio -+++ b/libstdc++-v3/include/c_std/cstdio -@@ -140,7 +140,7 @@ - using ::vsprintf; - } // namespace std - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf -Index: b/libstdc++-v3/include/c_std/cstdlib -=================================================================== ---- a/libstdc++-v3/include/c_std/cstdlib -+++ b/libstdc++-v3/include/c_std/cstdlib -@@ -143,7 +143,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef _Exit - #undef llabs -Index: b/libstdc++-v3/include/c_std/cwchar -=================================================================== ---- a/libstdc++-v3/include/c_std/cwchar -+++ b/libstdc++-v3/include/c_std/cwchar -@@ -230,7 +230,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef wcstold - #undef wcstoll -Index: b/libstdc++-v3/include/ext/vstring.h -=================================================================== ---- a/libstdc++-v3/include/ext/vstring.h -+++ b/libstdc++-v3/include/ext/vstring.h -@@ -2537,7 +2537,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99)) -+#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__))) - - #include - -Index: b/libstdc++-v3/include/tr1/cstdio -=================================================================== ---- a/libstdc++-v3/include/tr1/cstdio -+++ b/libstdc++-v3/include/tr1/cstdio -@@ -33,7 +33,7 @@ - - #include - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - namespace std _GLIBCXX_VISIBILITY(default) - { -Index: b/libstdc++-v3/include/tr1/cstdlib -=================================================================== ---- a/libstdc++-v3/include/tr1/cstdlib -+++ b/libstdc++-v3/include/tr1/cstdlib -@@ -35,7 +35,7 @@ - - #if _GLIBCXX_HOSTED - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - namespace std _GLIBCXX_VISIBILITY(default) - { -Index: b/libstdc++-v3/include/tr1/cwchar -=================================================================== ---- a/libstdc++-v3/include/tr1/cwchar -+++ b/libstdc++-v3/include/tr1/cwchar -@@ -52,7 +52,7 @@ - using std::vwscanf; - #endif - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -Index: b/libstdc++-v3/include/tr1/stdlib.h -=================================================================== ---- a/libstdc++-v3/include/tr1/stdlib.h -+++ b/libstdc++-v3/include/tr1/stdlib.h -@@ -33,7 +33,7 @@ - - #if _GLIBCXX_HOSTED - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - using std::tr1::atoll; - using std::tr1::strtoll; -Index: b/libstdc++-v3/src/c++11/debug.cc -=================================================================== ---- a/libstdc++-v3/src/c++11/debug.cc -+++ b/libstdc++-v3/src/c++11/debug.cc -@@ -783,7 +783,7 @@ - int __n __attribute__ ((__unused__)), - const char* __fmt, _Tp __s) const throw () - { --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - std::snprintf(__buf, __n, __fmt, __s); - #else - std::sprintf(__buf, __fmt, __s); -Index: b/libstdc++-v3/include/c_global/cstdio -=================================================================== ---- a/libstdc++-v3/include/c_global/cstdio -+++ b/libstdc++-v3/include/c_global/cstdio -@@ -140,7 +140,7 @@ - using ::vsprintf; - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf diff --git a/package/gcc/4.7.4/851-PR-other-56780.patch b/package/gcc/4.7.4/851-PR-other-56780.patch deleted file mode 100644 index a4ae830975..0000000000 --- a/package/gcc/4.7.4/851-PR-other-56780.patch +++ /dev/null @@ -1,244 +0,0 @@ -From 4e318d50b876def5f97e2031926354055e442ca3 Mon Sep 17 00:00:00 2001 -From: ian -Date: Sat, 1 Jun 2013 00:20:49 +0000 -Subject: [PATCH] PR other/56780 - -* libiberty/configure.ac: Move test for --enable-install-libiberty -outside of the 'with_target_subdir' test so that it actually gets -run. Add output messages to show the test result. -* libiberty/configure: Regenerate. -* libiberty/Makefile.in (install_to_libdir): Place the -installation of the libiberty library in the same guard as that -used for the headers to prevent it being installed unless -requested via --enable-install-libiberty. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199570 138bc75d-0d04-0410-961f-82ee72b054a4 - -libiberty: fix --enable-install-libiberty flag [PR 56780] - -Commit 199570 fixed the --disable-install-libiberty behavior, but it also -added a bug where the enable path never works because the initial clear -of target_header_dir wasn't deleted. So we end up initializing properly -at the top only to reset it at the end all the time. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206367 138bc75d-0d04-0410-961f-82ee72b054a4 - -[Romain - squash the two upstream commits - Remove the ChangeLog] -Signed-off-by: Romain Naour ---- - libiberty/Makefile.in | 24 ++++++++++----------- - libiberty/configure | 57 +++++++++++++++++++++++++++----------------------- - libiberty/configure.ac | 47 ++++++++++++++++++++++------------------- - 3 files changed, 68 insertions(+), 60 deletions(-) - -diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in -index 5280bc1..a69c6b6 100644 ---- a/libiberty/Makefile.in -+++ b/libiberty/Makefile.in -@@ -353,19 +353,19 @@ install-strip: install - # since it will be passed the multilib flags. - MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory` - install_to_libdir: all -- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR) -- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n -- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ) -- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB) - if test -n "${target_header_dir}"; then \ -- case "${target_header_dir}" in \ -- /*) thd=${target_header_dir};; \ -- *) thd=${includedir}/${target_header_dir};; \ -- esac; \ -- ${mkinstalldirs} $(DESTDIR)$${thd}; \ -- for h in ${INSTALLED_HEADERS}; do \ -- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -- done; \ -+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \ -+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \ -+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \ -+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \ -+ case "${target_header_dir}" in \ -+ /*) thd=${target_header_dir};; \ -+ *) thd=${includedir}/${target_header_dir};; \ -+ esac; \ -+ ${mkinstalldirs} $(DESTDIR)$${thd}; \ -+ for h in ${INSTALLED_HEADERS}; do \ -+ ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -+ done; \ - fi - @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install - -diff --git a/libiberty/configure b/libiberty/configure -index 6e98352..44d1f78 100755 ---- a/libiberty/configure -+++ b/libiberty/configure -@@ -675,8 +675,8 @@ with_cross_host - with_newlib - enable_maintainer_mode - enable_multilib --enable_largefile - enable_install_libiberty -+enable_largefile - ' - ac_precious_vars='build_alias - host_alias -@@ -1303,8 +1303,8 @@ Optional Features: - enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --enable-multilib build many library versions (default) -+ --enable-install-libiberty Install headers and library for end users - --disable-largefile omit support for large files -- --enable-install-libiberty Install headers for end users - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -2784,6 +2784,35 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to install libiberty headers and static library" >&5 -+$as_echo_n "checking whether to install libiberty headers and static library... " >&6; } -+ -+# Check whether --enable-install-libiberty was given. -+if test "${enable_install_libiberty+set}" = set; then : -+ enableval=$enable_install_libiberty; enable_install_libiberty=$enableval -+else -+ enable_install_libiberty=no -+fi -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_install_libiberty" >&5 -+$as_echo "$enable_install_libiberty" >&6; } -+{ $as_echo "$as_me:${as_lineno-$LINENO}: target_header_dir = $target_header_dir" >&5 -+$as_echo "$as_me: target_header_dir = $target_header_dir" >&6;} -+ - - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -5475,7 +5504,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -5752,29 +5780,6 @@ _ACEOF - - esac - -- # We may wish to install the target headers somewhere. -- # Check whether --enable-install-libiberty was given. --if test "${enable_install_libiberty+set}" = set; then : -- enableval=$enable_install_libiberty; enable_install_libiberty=$enableval --else -- enable_install_libiberty=no --fi -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. -diff --git a/libiberty/configure.ac b/libiberty/configure.ac -index 754b66a..04260ec 100644 ---- a/libiberty/configure.ac -+++ b/libiberty/configure.ac -@@ -128,6 +128,31 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+AC_MSG_CHECKING([whether to install libiberty headers and static library]) -+dnl install-libiberty is disabled by default -+ -+AC_ARG_ENABLE(install-libiberty, -+[ --enable-install-libiberty Install headers and library for end users], -+enable_install_libiberty=$enableval, -+enable_install_libiberty=no)dnl -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+AC_MSG_RESULT($enable_install_libiberty) -+AC_MSG_NOTICE([target_header_dir = $target_header_dir]) -+ - GCC_NO_EXECUTABLES - AC_PROG_CC - AC_SYS_LARGEFILE -@@ -379,7 +404,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -490,27 +514,6 @@ if test -n "${with_target_subdir}"; then - - esac - -- # We may wish to install the target headers somewhere. -- AC_ARG_ENABLE(install-libiberty, -- [ --enable-install-libiberty Install headers for end users], -- enable_install_libiberty=$enableval, -- enable_install_libiberty=no)dnl -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. --- -2.4.3 - diff --git a/package/gcc/4.7.4/900-musl-support.patch b/package/gcc/4.7.4/900-musl-support.patch deleted file mode 100644 index bf8fbc079a..0000000000 --- a/package/gcc/4.7.4/900-musl-support.patch +++ /dev/null @@ -1,587 +0,0 @@ -Add musl support to gcc - -This patch comes from the musl-cross project at -https://bitbucket.org/GregorR/musl-cross/src. Compared to the upstream version: - - * the config.sub modifications have been removed, because Buildroot - already overwrites all config.sub with a more recent config.sub - that has musl support. - - * change to ensure that a dummy dynamic linker path - MUSL_DYNAMIC_LINKER is defined for all architectures, - otherwise building gcc for architectures not supported by musl was - causing build failure. Bug reported upstream at - https://bitbucket.org/GregorR/musl-gcc-patches/issue/4/musl-gcc-patches-break-the-build-on. - - * change the USE_PT_GNU_EH_FRAME logic to keep the existing gcc logic - and only add the musl one as an addition, not as a replacement. Not - doing this breaks C++ exception handling with glibc, because - USE_PT_GNU_EH_FRAME doesn't get defined due to the configure script - not testing dl_iterate_phdr() on any system except Solaris. - -Signed-off-by: Thomas Petazzoni ---- - -# HG changeset patch -# Parent f50bb54f331f73405131a30b4f353cfda1c70304 -Use the generic implementation of libstdc++ primitives when we're on musl, not the glibc one. - -Index: b/libstdc++-v3/configure.host -=================================================================== ---- a/libstdc++-v3/configure.host -+++ b/libstdc++-v3/configure.host -@@ -243,6 +243,13 @@ - os_include_dir="os/bsd/freebsd" - ;; - gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) -+ # check for musl by target -+ case "${host_os}" in -+ *-musl*) -+ os_include_dir="os/generic" -+ ;; -+ *) -+ - if [ "$uclibc" = "yes" ]; then - os_include_dir="os/uclibc" - elif [ "$bionic" = "yes" ]; then -@@ -251,6 +258,9 @@ - os_include_dir="os/gnu-linux" - fi - ;; -+ -+ esac -+ ;; - hpux*) - os_include_dir="os/hpux" - ;; -Index: b/gcc/config.gcc -=================================================================== ---- a/gcc/config.gcc -+++ b/gcc/config.gcc -@@ -522,7 +522,7 @@ - esac - - # Common C libraries. --tm_defines="$tm_defines LIBC_GLIBC=1 LIBC_UCLIBC=2 LIBC_BIONIC=3" -+tm_defines="$tm_defines LIBC_GLIBC=1 LIBC_UCLIBC=2 LIBC_BIONIC=3 LIBC_MUSL=4" - - # Common parts for widely ported systems. - case ${target} in -@@ -625,6 +625,9 @@ - *-*-*uclibc*) - tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC" - ;; -+ *-*-*musl*) -+ tm_defines="$tm_defines DEFAULT_LIBC=LIBC_MUSL" -+ ;; - *) - tm_defines="$tm_defines DEFAULT_LIBC=LIBC_GLIBC" - ;; -@@ -2091,6 +2094,10 @@ - powerpc*-*-linux*paired*) - tm_file="${tm_file} rs6000/750cl.h" ;; - esac -+ case ${target} in -+ *-linux*-musl*) -+ enable_secureplt=yes ;; -+ esac - if test x${enable_secureplt} = xyes; then - tm_file="rs6000/secureplt.h ${tm_file}" - fi -Index: b/gcc/config/linux.h -=================================================================== ---- a/gcc/config/linux.h -+++ b/gcc/config/linux.h -@@ -33,10 +33,12 @@ - #define OPTION_GLIBC (DEFAULT_LIBC == LIBC_GLIBC) - #define OPTION_UCLIBC (DEFAULT_LIBC == LIBC_UCLIBC) - #define OPTION_BIONIC (DEFAULT_LIBC == LIBC_BIONIC) -+#define OPTION_MUSL (DEFAULT_LIBC == LIBC_MUSL) - #else - #define OPTION_GLIBC (linux_libc == LIBC_GLIBC) - #define OPTION_UCLIBC (linux_libc == LIBC_UCLIBC) - #define OPTION_BIONIC (linux_libc == LIBC_BIONIC) -+#define OPTION_MUSL (linux_libc == LIBC_MUSL) - #endif - - #define GNU_USER_TARGET_OS_CPP_BUILTINS() \ -@@ -54,18 +56,21 @@ - uClibc or Bionic is the default C library and whether - -muclibc or -mglibc or -mbionic has been passed to change the default. */ - --#define CHOOSE_DYNAMIC_LINKER1(LIBC1, LIBC2, LIBC3, LD1, LD2, LD3) \ -- "%{" LIBC2 ":" LD2 ";:%{" LIBC3 ":" LD3 ";:" LD1 "}}" -+#define CHOOSE_DYNAMIC_LINKER1(LIBC1, LIBC2, LIBC3, LIBC4, LD1, LD2, LD3, LD4) \ -+ "%{" LIBC2 ":" LD2 ";:%{" LIBC3 ":" LD3 ";:%{" LIBC4 ":" LD4 ";:" LD1 "}}}" - - #if DEFAULT_LIBC == LIBC_GLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U, B) \ -- CHOOSE_DYNAMIC_LINKER1 ("mglibc", "muclibc", "mbionic", G, U, B) -+#define CHOOSE_DYNAMIC_LINKER(G, U, B, M) \ -+ CHOOSE_DYNAMIC_LINKER1 ("mglibc", "muclibc", "mbionic", "mmusl", G, U, B, M) - #elif DEFAULT_LIBC == LIBC_UCLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U, B) \ -- CHOOSE_DYNAMIC_LINKER1 ("muclibc", "mglibc", "mbionic", U, G, B) -+#define CHOOSE_DYNAMIC_LINKER(G, U, B, M) \ -+ CHOOSE_DYNAMIC_LINKER1 ("muclibc", "mglibc", "mbionic", "mmusl", U, G, B, M) - #elif DEFAULT_LIBC == LIBC_BIONIC --#define CHOOSE_DYNAMIC_LINKER(G, U, B) \ -- CHOOSE_DYNAMIC_LINKER1 ("mbionic", "mglibc", "muclibc", B, G, U) -+#define CHOOSE_DYNAMIC_LINKER(G, U, B, M) \ -+ CHOOSE_DYNAMIC_LINKER1 ("mbionic", "mglibc", "muclibc", "mmusl", B, G, U, M) -+#elif DEFAULT_LIBC == LIBC_MUSL -+#define CHOOSE_DYNAMIC_LINKER(G, U, B, M) \ -+ CHOOSE_DYNAMIC_LINKER1 ("mmusl", "mglibc", "muclibc", "mbionic", M, G, U, B) - #else - #error "Unsupported DEFAULT_LIBC" - #endif /* DEFAULT_LIBC */ -@@ -83,23 +88,32 @@ - #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" - #define BIONIC_DYNAMIC_LINKERX32 "/system/bin/linkerx32" - -+/* Musl dynamic linker paths must be defined on a per-architecture -+ basis, for each architecture supported by Musl. However, in order -+ to let other architectures continue to build with other C -+ libraries, we provide a dummy definition of the following defines. */ -+#define MUSL_DYNAMIC_LINKER "invalid" -+#define MUSL_DYNAMIC_LINKER32 "invalid" -+#define MUSL_DYNAMIC_LINKER64 "invalid" -+#define MUSL_DYNAMIC_LINKERX32 "invalid" -+ - #define GNU_USER_DYNAMIC_LINKER \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, \ -- BIONIC_DYNAMIC_LINKER) -+ BIONIC_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER) - #define GNU_USER_DYNAMIC_LINKER32 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER32, \ -- BIONIC_DYNAMIC_LINKER32) -+ BIONIC_DYNAMIC_LINKER32, MUSL_DYNAMIC_LINKER32) - #define GNU_USER_DYNAMIC_LINKER64 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64, \ -- BIONIC_DYNAMIC_LINKER64) -+ BIONIC_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKER64) - #define GNU_USER_DYNAMIC_LINKERX32 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERX32, UCLIBC_DYNAMIC_LINKERX32, \ -- BIONIC_DYNAMIC_LINKERX32) -+ BIONIC_DYNAMIC_LINKERX32, MUSL_DYNAMIC_LINKERX32) - - /* Determine whether the entire c99 runtime - is present in the runtime library. */ - #undef TARGET_C99_FUNCTIONS --#define TARGET_C99_FUNCTIONS (OPTION_GLIBC) -+#define TARGET_C99_FUNCTIONS (OPTION_GLIBC || OPTION_MUSL) - - /* Whether we have sincos that follows the GNU extension. */ - #undef TARGET_HAS_SINCOS -@@ -108,3 +122,74 @@ - /* Whether we have Bionic libc runtime */ - #undef TARGET_HAS_BIONIC - #define TARGET_HAS_BIONIC (OPTION_BIONIC) -+ -+/* musl avoids problematic includes by rearranging the include directories. -+ * Unfortunately, this is mostly duplicated from cppdefault.c */ -+#if DEFAULT_LIBC == LIBC_MUSL -+#define INCLUDE_DEFAULTS_MUSL_GPP \ -+ { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, \ -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, \ -+ { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, \ -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 1 }, \ -+ { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, \ -+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 }, -+ -+#ifdef LOCAL_INCLUDE_DIR -+#define INCLUDE_DEFAULTS_MUSL_LOCAL \ -+ { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, \ -+ { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 }, -+#else -+#define INCLUDE_DEFAULTS_MUSL_LOCAL -+#endif -+ -+#ifdef PREFIX_INCLUDE_DIR -+#define INCLUDE_DEFAULTS_MUSL_PREFIX \ -+ { PREFIX_INCLUDE_DIR, 0, 0, 1, 0, 0}, -+#else -+#define INCLUDE_DEFAULTS_MUSL_PREFIX -+#endif -+ -+#ifdef CROSS_INCLUDE_DIR -+#define INCLUDE_DEFAULTS_MUSL_CROSS \ -+ { CROSS_INCLUDE_DIR, "GCC", 0, 0, 0, 0}, -+#else -+#define INCLUDE_DEFAULTS_MUSL_CROSS -+#endif -+ -+#ifdef TOOL_INCLUDE_DIR -+#define INCLUDE_DEFAULTS_MUSL_TOOL \ -+ { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 0, 0}, -+#else -+#define INCLUDE_DEFAULTS_MUSL_TOOL -+#endif -+ -+#ifdef NATIVE_SYSTEM_HEADER_DIR -+#define INCLUDE_DEFAULTS_MUSL_NATIVE \ -+ { NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \ -+ { NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 0 }, -+#else -+#define INCLUDE_DEFAULTS_MUSL_NATIVE -+#endif -+ -+#if defined (CROSS_DIRECTORY_STRUCTURE) && !defined (TARGET_SYSTEM_ROOT) -+# undef INCLUDE_DEFAULTS_MUSL_LOCAL -+# define INCLUDE_DEFAULTS_MUSL_LOCAL -+# undef INCLUDE_DEFAULTS_MUSL_NATIVE -+# define INCLUDE_DEFAULTS_MUSL_NATIVE -+#else -+# undef INCLUDE_DEFAULTS_MUSL_CROSS -+# define INCLUDE_DEFAULTS_MUSL_CROSS -+#endif -+ -+#undef INCLUDE_DEFAULTS -+#define INCLUDE_DEFAULTS \ -+ { \ -+ INCLUDE_DEFAULTS_MUSL_GPP \ -+ INCLUDE_DEFAULTS_MUSL_PREFIX \ -+ INCLUDE_DEFAULTS_MUSL_CROSS \ -+ INCLUDE_DEFAULTS_MUSL_TOOL \ -+ INCLUDE_DEFAULTS_MUSL_NATIVE \ -+ { GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \ -+ { 0, 0, 0, 0, 0, 0 } \ -+ } -+#endif -Index: b/gcc/config/linux.opt -=================================================================== ---- a/gcc/config/linux.opt -+++ b/gcc/config/linux.opt -@@ -30,3 +30,7 @@ - muclibc - Target Report RejectNegative Var(linux_libc,LIBC_UCLIBC) Negative(mbionic) - Use uClibc C library -+ -+mmusl -+Target Report RejectNegative Var(linux_libc,LIBC_MUSL) Negative(mglibc) -+Use musl C library -Index: b/gcc/ginclude/stddef.h -=================================================================== ---- a/gcc/ginclude/stddef.h -+++ b/gcc/ginclude/stddef.h -@@ -184,6 +184,7 @@ - #ifndef _GCC_SIZE_T - #ifndef _SIZET_ - #ifndef __size_t -+#ifndef __DEFINED_size_t /* musl */ - #define __size_t__ /* BeOS */ - #define __SIZE_T__ /* Cray Unicos/Mk */ - #define _SIZE_T -@@ -200,6 +201,7 @@ - #define ___int_size_t_h - #define _GCC_SIZE_T - #define _SIZET_ -+#define __DEFINED_size_t /* musl */ - #if (defined (__FreeBSD__) && (__FreeBSD__ >= 5)) \ - || defined(__FreeBSD_kernel__) - /* __size_t is a typedef on FreeBSD 5, must not trash it. */ -@@ -215,6 +217,7 @@ - typedef long ssize_t; - #endif /* __BEOS__ */ - #endif /* !(defined (__GNUG__) && defined (size_t)) */ -+#endif /* __DEFINED_size_t */ - #endif /* __size_t */ - #endif /* _SIZET_ */ - #endif /* _GCC_SIZE_T */ -Index: b/libgomp/config/posix/time.c -=================================================================== ---- a/libgomp/config/posix/time.c -+++ b/libgomp/config/posix/time.c -@@ -28,6 +28,8 @@ - The following implementation uses the most simple POSIX routines. - If present, POSIX 4 clocks should be used instead. */ - -+#define _POSIX_C_SOURCE 199309L /* for clocks */ -+ - #include "libgomp.h" - #include - #if TIME_WITH_SYS_TIME -Index: b/libgcc/unwind-dw2-fde-dip.c -=================================================================== ---- a/libgcc/unwind-dw2-fde-dip.c -+++ b/libgcc/unwind-dw2-fde-dip.c -@@ -71,6 +71,13 @@ - # define USE_PT_GNU_EH_FRAME - #endif - -+/* For musl libc, TARGET_DL_ITERATE_PHDR gets defined by the configure -+ script. */ -+#if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \ -+ && defined(TARGET_DL_ITERATE_PHDR) -+# define USE_PT_GNU_EH_FRAME -+#endif -+ - #if defined(USE_PT_GNU_EH_FRAME) - - #include -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -26906,6 +26910,9 @@ - gcc_cv_target_dl_iterate_phdr=no - fi - ;; -+ *-linux-musl*) -+ gcc_cv_target_dl_iterate_phdr=yes -+ ;; - esac - - if test x$gcc_cv_target_dl_iterate_phdr = xyes; then -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -4767,6 +4771,9 @@ - gcc_cv_target_dl_iterate_phdr=no - fi - ;; -+ *-linux-musl*) -+ gcc_cv_target_dl_iterate_phdr=yes -+ ;; - esac - GCC_TARGET_TEMPLATE([TARGET_DL_ITERATE_PHDR]) - if test x$gcc_cv_target_dl_iterate_phdr = xyes; then -Index: b/fixincludes/mkfixinc.sh -=================================================================== ---- a/fixincludes/mkfixinc.sh -+++ b/fixincludes/mkfixinc.sh -@@ -20,7 +20,8 @@ - powerpc-*-eabi* | \ - powerpc-*-rtems* | \ - powerpcle-*-eabisim* | \ -- powerpcle-*-eabi* ) -+ powerpcle-*-eabi* | \ -+ *-musl* ) - # IF there is no include fixing, - # THEN create a no-op fixer and exit - (echo "#! /bin/sh" ; echo "exit 0" ) > ${target} -Index: b/gcc/config/i386/linux.h -=================================================================== ---- a/gcc/config/i386/linux.h -+++ b/gcc/config/i386/linux.h -@@ -22,3 +22,5 @@ - - #define GNU_USER_LINK_EMULATION "elf_i386" - #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#undef MUSL_DYNAMIC_LINKER -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" -Index: b/gcc/config/i386/linux64.h -=================================================================== ---- a/gcc/config/i386/linux64.h -+++ b/gcc/config/i386/linux64.h -@@ -31,3 +31,10 @@ - #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" - #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" - #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" -+ -+#undef MUSL_DYNAMIC_LINKER32 -+#undef MUSL_DYNAMIC_LINKER64 -+#undef MUSL_DYNAMIC_LINKERX32 -+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" -+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-x86_64.so.1" -+#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1" -Index: b/libitm/config/linux/x86/tls.h -=================================================================== ---- a/libitm/config/linux/x86/tls.h -+++ b/libitm/config/linux/x86/tls.h -@@ -25,16 +25,19 @@ - #ifndef LIBITM_X86_TLS_H - #define LIBITM_X86_TLS_H 1 - --#if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 10) -+#if defined(__GLIBC_PREREQ) -+#if __GLIBC_PREREQ(2, 10) - /* Use slots in the TCB head rather than __thread lookups. - GLIBC has reserved words 10 through 13 for TM. */ - #define HAVE_ARCH_GTM_THREAD 1 - #define HAVE_ARCH_GTM_THREAD_DISP 1 - #endif -+#endif - - #include "config/generic/tls.h" - --#if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 10) -+#if defined(__GLIBC_PREREQ) -+#if __GLIBC_PREREQ(2, 10) - namespace GTM HIDDEN { - - #ifdef __x86_64__ -@@ -101,5 +104,6 @@ - - } // namespace GTM - #endif /* >= GLIBC 2.10 */ -+#endif - - #endif // LIBITM_X86_TLS_H -Index: b/gcc/config/arm/linux-eabi.h -=================================================================== ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -64,6 +64,23 @@ - #undef GLIBC_DYNAMIC_LINKER - #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3" - -+/* For ARM musl currently supports four dynamic linkers: -+ - ld-musl-arm.so.1 - for the EABI-derived soft-float ABI -+ - ld-musl-armhf.so.1 - for the EABI-derived hard-float ABI -+ - ld-musl-armeb.so.1 - for the EABI-derived soft-float ABI, EB -+ - ld-musl-armebhf.so.1 - for the EABI-derived hard-float ABI, EB -+ musl does not support the legacy OABI mode. -+ All the dynamic linkers live in /lib. -+ We default to soft-float, EL. */ -+#undef MUSL_DYNAMIC_LINKER -+#if TARGET_BIG_ENDIAN_DEFAULT -+#define MUSL_DYNAMIC_LINKER_E "%{mlittle-endian:;:eb}" -+#else -+#define MUSL_DYNAMIC_LINKER_E "%{mbig-endian:eb}" -+#endif -+#define MUSL_DYNAMIC_LINKER \ -+ "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1" -+ - /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to - use the GNU/Linux version, not the generic BPABI version. */ - #undef LINK_SPEC -Index: b/libitm/config/arm/hwcap.cc -=================================================================== ---- a/libitm/config/arm/hwcap.cc -+++ b/libitm/config/arm/hwcap.cc -@@ -40,7 +40,11 @@ - - #ifdef __linux__ - #include -+#ifdef __GLIBC__ - #include -+#else -+#include -+#endif - #include - - static void __attribute__((constructor)) -Index: b/gcc/config/mips/linux.h -=================================================================== ---- a/gcc/config/mips/linux.h -+++ b/gcc/config/mips/linux.h -@@ -19,3 +19,11 @@ - . */ - - #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+ -+#if TARGET_ENDIAN_DEFAULT == 0 /* LE */ -+#define MUSL_DYNAMIC_LINKER_E "%{EB:;:el}" -+#else -+#define MUSL_DYNAMIC_LINKER_E "%{EL:el}" -+#endif -+#undef MUSL_DYNAMIC_LINKER -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" -Index: b/gcc/config/rs6000/linux64.h -=================================================================== ---- a/gcc/config/rs6000/linux64.h -+++ b/gcc/config/rs6000/linux64.h -@@ -362,17 +362,23 @@ - #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld64.so.1" - #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" - #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" -+#undef MUSL_DYNAMIC_LINKER32 -+#undef MUSL_DYNAMIC_LINKER64 -+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-powerpc.so.1" -+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-powerpc64.so.1" - #if DEFAULT_LIBC == LIBC_UCLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}" - #elif DEFAULT_LIBC == LIBC_GLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{muclibc:" U ";:%{mmusl:" M ";:" G "}}" -+#elif DEFAULT_LIBC == LIBC_MUSL -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{muclibc:" U ";:" M "}}" - #else - #error "Unsupported DEFAULT_LIBC" - #endif - #define GNU_USER_DYNAMIC_LINKER32 \ -- CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER32) -+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER32, MUSL_DYNAMIC_LINKER32) - #define GNU_USER_DYNAMIC_LINKER64 \ -- CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64) -+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKER64) - - - #define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ -Index: b/gcc/config/rs6000/secureplt.h -=================================================================== ---- a/gcc/config/rs6000/secureplt.h -+++ b/gcc/config/rs6000/secureplt.h -@@ -18,3 +18,4 @@ - . */ - - #define CC1_SECURE_PLT_DEFAULT_SPEC "-msecure-plt" -+#define LINK_SECURE_PLT_DEFAULT_SPEC "--secure-plt" -Index: b/gcc/config/rs6000/sysv4.h -=================================================================== ---- a/gcc/config/rs6000/sysv4.h -+++ b/gcc/config/rs6000/sysv4.h -@@ -566,6 +566,9 @@ - #ifndef CC1_SECURE_PLT_DEFAULT_SPEC - #define CC1_SECURE_PLT_DEFAULT_SPEC "" - #endif -+#ifndef LINK_SECURE_PLT_DEFAULT_SPEC -+#define LINK_SECURE_PLT_DEFAULT_SPEC "" -+#endif - - /* Pass -G xxx to the compiler and set correct endian mode. */ - #define CC1_SPEC "%{G*} %(cc1_cpu) \ -@@ -626,7 +629,8 @@ - %{mlittle: --oformat elf32-powerpcle } %{mlittle-endian: --oformat elf32-powerpcle } \ - %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \ - %{mcall-i960-old: --oformat elf32-powerpcle} \ -- }}}}" -+ }}}} \ -+%{!mbss-plt: %{!msecure-plt: %(link_secure_plt_default)}}" - - /* Any specific OS flags. */ - #define LINK_OS_SPEC "\ -@@ -804,15 +808,19 @@ - - #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" - #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#undef MUSL_DYNAMIC_LINKER -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-powerpc.so.1" - #if DEFAULT_LIBC == LIBC_UCLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}" -+#elif DEFAULT_LIBC == LIBC_MUSL -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{muclibc:" U ";:" M "}}" - #elif !defined (DEFAULT_LIBC) || DEFAULT_LIBC == LIBC_GLIBC --#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" -+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{muclibc:" U ";:%{mmusl:" M ";:" G "}}" - #else - #error "Unsupported DEFAULT_LIBC" - #endif - #define GNU_USER_DYNAMIC_LINKER \ -- CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) -+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER) - - #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ - %{rdynamic:-export-dynamic} \ -@@ -938,6 +946,7 @@ - { "cc1_endian_little", CC1_ENDIAN_LITTLE_SPEC }, \ - { "cc1_endian_default", CC1_ENDIAN_DEFAULT_SPEC }, \ - { "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \ -+ { "link_secure_plt_default", LINK_SECURE_PLT_DEFAULT_SPEC }, \ - { "cpp_os_ads", CPP_OS_ADS_SPEC }, \ - { "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \ - { "cpp_os_mvme", CPP_OS_MVME_SPEC }, \ -Index: b/gcc/config/mips/linux64.h -=================================================================== ---- a/gcc/config/mips/linux64.h -+++ b/gcc/config/mips/linux64.h -@@ -30,4 +30,4 @@ - #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" - #define GNU_USER_DYNAMIC_LINKERN32 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ -- BIONIC_DYNAMIC_LINKERN32) -+ BIONIC_DYNAMIC_LINKERN32, MUSL_DYNAMIC_LINKER) diff --git a/package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch b/package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch new file mode 100644 index 0000000000..d8c6723ed3 --- /dev/null +++ b/package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch @@ -0,0 +1,43 @@ +From edb9057c195c41dd7bcd8603e5fd420359edd520 Mon Sep 17 00:00:00 2001 +From: nsz +Date: Mon, 23 Nov 2015 15:17:55 +0000 +Subject: [PATCH] [ARM] PR target/68059 libgcc should not use __write for + printing fatal error + +libgcc/ + PR target/68059 + * config/arm/linux-atomic-64bit.c (__write): Rename to... + (write): ...this and fix the return type. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230762 138bc75d-0d04-0410-961f-82ee72b054a4 + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + libgcc/config/arm/linux-atomic-64bit.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libgcc/config/arm/linux-atomic-64bit.c b/libgcc/config/arm/linux-atomic-64bit.c +index 7aa8dfc..570b4ce 100644 +--- a/libgcc/config/arm/linux-atomic-64bit.c ++++ b/libgcc/config/arm/linux-atomic-64bit.c +@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + kernels; we check for that in an init section and bail out rather + unceremoneously. */ + +-extern unsigned int __write (int fd, const void *buf, unsigned int count); ++extern int write (int fd, const void *buf, unsigned int count); + extern void abort (void); + + /* Kernel helper for compare-and-exchange. */ +@@ -56,7 +56,7 @@ static void __check_for_sync8_kernelhelper (void) + for the user - I'm not sure I can rely on much else being + available at this point, so do the same as generic-morestack.c + write () and abort (). */ +- __write (2 /* stderr. */, err, sizeof (err)); ++ write (2 /* stderr. */, err, sizeof (err)); + abort (); + } + }; +-- +2.10.2 + diff --git a/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch b/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch new file mode 100644 index 0000000000..62ac3cbd65 --- /dev/null +++ b/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch @@ -0,0 +1,153 @@ +From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001 +From: edlinger +Date: Thu, 25 Feb 2016 15:33:50 +0000 +Subject: [PATCH 1/1] 2016-02-25 Bernd Edlinger + + Backported from mainline + 2016-02-19 Jakub Jelinek + Bernd Edlinger + + * Make-lang.in: Invoke gperf with -L C++. + * cfns.gperf: Remove prototypes for hash and libc_name_p + inlines. + * cfns.h: Regenerated. + * except.c (nothrow_libfn_p): Adjust. + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@233720 138bc75d-0d04-0410-961f-82ee72b054a4 + +Signed-off-by: Samuel Martin +--- + gcc/cp/Make-lang.in | 2 +- + gcc/cp/cfns.gperf | 10 ++-------- + gcc/cp/cfns.h | 41 ++++++++++++++--------------------------- + gcc/cp/except.c | 3 ++- + 5 files changed, 31 insertions(+), 37 deletions(-) + +diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in +index e98beb1..b09fb02 100644 +--- a/gcc/cp/Make-lang.in ++++ b/gcc/cp/Make-lang.in +@@ -111,7 +111,7 @@ else + # deleting the $(srcdir)/cp/cfns.h file. + $(srcdir)/cp/cfns.h: + endif +- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \ ++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \ + $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h + + # +diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf +index 68acd3d..214ecf6 100644 +--- a/gcc/cp/cfns.gperf ++++ b/gcc/cp/cfns.gperf +@@ -1,3 +1,5 @@ ++%language=C++ ++%define class-name libc_name + %{ + /* Copyright (C) 2000-2015 Free Software Foundation, Inc. + +@@ -16,14 +18,6 @@ for more details. + You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ +-#ifdef __GNUC__ +-__inline +-#endif +-static unsigned int hash (const char *, unsigned int); +-#ifdef __GNUC__ +-__inline +-#endif +-const char * libc_name_p (const char *, unsigned int); + %} + %% + # The standard C library functions, for feeding to gperf; the result is used +diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h +index 1c6665d..596f413 100644 +--- a/gcc/cp/cfns.h ++++ b/gcc/cp/cfns.h +@@ -1,5 +1,5 @@ +-/* ANSI-C code produced by gperf version 3.0.3 */ +-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */ ++/* C++ code produced by gperf version 3.0.4 */ ++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */ + + #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ +@@ -28,7 +28,7 @@ + #error "gperf generated tables don't work with this execution character set. Please report a bug to ." + #endif + +-#line 1 "cfns.gperf" ++#line 3 "cfns.gperf" + + /* Copyright (C) 2000-2015 Free Software Foundation, Inc. + +@@ -47,25 +47,18 @@ for more details. + You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ +-#ifdef __GNUC__ +-__inline +-#endif +-static unsigned int hash (const char *, unsigned int); +-#ifdef __GNUC__ +-__inline +-#endif +-const char * libc_name_p (const char *, unsigned int); + /* maximum key range = 391, duplicates = 0 */ + +-#ifdef __GNUC__ +-__inline +-#else +-#ifdef __cplusplus +-inline +-#endif +-#endif +-static unsigned int +-hash (register const char *str, register unsigned int len) ++class libc_name ++{ ++private: ++ static inline unsigned int hash (const char *str, unsigned int len); ++public: ++ static const char *libc_name_p (const char *str, unsigned int len); ++}; ++ ++inline unsigned int ++libc_name::hash (register const char *str, register unsigned int len) + { + static const unsigned short asso_values[] = + { +@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len) + return hval + asso_values[(unsigned char)str[len - 1]]; + } + +-#ifdef __GNUC__ +-__inline +-#ifdef __GNUC_STDC_INLINE__ +-__attribute__ ((__gnu_inline__)) +-#endif +-#endif + const char * +-libc_name_p (register const char *str, register unsigned int len) ++libc_name::libc_name_p (register const char *str, register unsigned int len) + { + enum + { +diff --git a/gcc/cp/except.c b/gcc/cp/except.c +index 3ff1ce6..2f2e396 100644 +--- a/gcc/cp/except.c ++++ b/gcc/cp/except.c +@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn) + unless the system headers are playing rename tricks, and if + they are, we don't want to be confused by them. */ + id = DECL_NAME (fn); +- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id)); ++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id), ++ IDENTIFIER_LENGTH (id)); + } + + /* Returns nonzero if an exception of type FROM will be caught by a +-- +1.7.1 diff --git a/package/gcc/4.8.5/940-uclinux-enable-threads.patch b/package/gcc/4.8.5/940-uclinux-enable-threads.patch new file mode 100644 index 0000000000..e58e824938 --- /dev/null +++ b/package/gcc/4.8.5/940-uclinux-enable-threads.patch @@ -0,0 +1,19 @@ +Enable POSIX threads for uClinux targets +Reported upstream: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-4.8.5.orig/gcc/config.gcc gcc-4.8.5/gcc/config.gcc +--- gcc-4.8.5.orig/gcc/config.gcc 2015-05-21 22:57:29.000000000 +0200 ++++ gcc-4.8.5/gcc/config.gcc 2016-07-02 20:35:24.107644834 +0200 +@@ -741,6 +741,9 @@ + *-*-uclinux*) + extra_options="$extra_options gnu-user.opt" + use_gcc_stdint=wrap ++ case ${enable_threads} in ++ "" | yes | posix) thread_file='posix' ;; ++ esac + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" + ;; + *-*-rdos*) diff --git a/package/gcc/4.9.3/111-pr65730.patch b/package/gcc/4.9.3/111-pr65730.patch deleted file mode 100644 index f195e308da..0000000000 --- a/package/gcc/4.9.3/111-pr65730.patch +++ /dev/null @@ -1,37 +0,0 @@ -From b9a7775674d91c7af8043a83211ffeaa576327d7 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 10 Apr 2015 17:46:30 +0300 -Subject: [PATCH] Fix PR target/65730 - -2015-05-20 Max Filippov -gcc/ - * config/xtensa/xtensa.c (init_alignment_context): Replace MULT - by BITS_PER_UNIT with ASHIFT by exact_log2 (BITS_PER_UNIT). - -Signed-off-by: Max Filippov ---- -Backported from: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223452 -Changes to ChangeLog are dropped. - - gcc/config/xtensa/xtensa.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index eb039ba..7296e36 100644 ---- a/gcc/config/xtensa/xtensa.c -+++ b/gcc/config/xtensa/xtensa.c -@@ -1461,8 +1461,9 @@ init_alignment_context (struct alignment_context *ac, rtx mem) - if (ac->shift != NULL_RTX) - { - /* Shift is the byte count, but we need the bitcount. */ -- ac->shift = expand_simple_binop (SImode, MULT, ac->shift, -- GEN_INT (BITS_PER_UNIT), -+ gcc_assert (exact_log2 (BITS_PER_UNIT) >= 0); -+ ac->shift = expand_simple_binop (SImode, ASHIFT, ac->shift, -+ GEN_INT (exact_log2 (BITS_PER_UNIT)), - NULL_RTX, 1, OPTAB_DIRECT); - ac->modemask = expand_simple_binop (SImode, ASHIFT, - GEN_INT (GET_MODE_MASK (mode)), --- -1.8.1.4 - diff --git a/package/gcc/4.9.3/130-pr43538.patch b/package/gcc/4.9.3/130-pr43538.patch deleted file mode 100644 index 19e57bb059..0000000000 --- a/package/gcc/4.9.3/130-pr43538.patch +++ /dev/null @@ -1,25 +0,0 @@ -From c037df1be41f8daf4d581d7ffa4ec8cfa640bccf Mon Sep 17 00:00:00 2001 -From: glisse -Date: Fri, 25 Apr 2014 08:03:08 +0000 -Subject: [PATCH] 2014-04-25 Marc Glisse - - PR target/43538 - * mt-gnu: Don't reset CXXFLAGS_FOR_TARGET. - - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209784 138bc75d-0d04-0410-961f-82ee72b054a4 -Signed-off-by: Max Filippov ---- - config/mt-gnu | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/config/mt-gnu b/config/mt-gnu -index 15bf417..5c696f5 100644 ---- a/config/mt-gnu -+++ b/config/mt-gnu -@@ -1 +1 @@ --CXXFLAGS_FOR_TARGET = $(CXXFLAGS) -D_GNU_SOURCE -+CXXFLAGS_FOR_TARGET += -D_GNU_SOURCE --- -2.1.4 - diff --git a/package/gcc/4.9.3/810-arm-softfloat-libgcc.patch b/package/gcc/4.9.3/810-arm-softfloat-libgcc.patch deleted file mode 100644 index c8cb377d55..0000000000 --- a/package/gcc/4.9.3/810-arm-softfloat-libgcc.patch +++ /dev/null @@ -1,30 +0,0 @@ -Index: gcc-4.8.0/gcc/config/arm/linux-elf.h -=================================================================== ---- gcc-4.8.0.orig/gcc/config/arm/linux-elf.h 2013-01-10 21:38:27.000000000 +0100 -+++ gcc-4.8.0/gcc/config/arm/linux-elf.h 2013-03-23 17:40:00.000000000 +0100 -@@ -55,7 +55,7 @@ - %{shared:-lc} \ - %{!shared:%{profile:-lc_p}%{!profile:-lc}}" - --#define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" -+#define LIBGCC_SPEC "-lgcc" - - #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" - -Index: gcc-4.8.0/libgcc/config/arm/t-linux -=================================================================== ---- gcc-4.8.0.orig/libgcc/config/arm/t-linux 2012-03-22 16:14:46.000000000 +0100 -+++ gcc-4.8.0/libgcc/config/arm/t-linux 2013-03-23 17:40:54.000000000 +0100 -@@ -1,6 +1,11 @@ - LIB1ASMSRC = arm/lib1funcs.S - LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \ -- _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 -+ _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 \ -+ _arm_addsubdf3 _arm_addsubsf3 \ -+ _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ -+ _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \ -+ _arm_negsf2 _arm_muldivsf3 _arm_cmpsf2 _arm_unordsf2 \ -+ _arm_fixsfsi _arm_fixunssfsi - - # Just for these, we omit the frame pointer since it makes such a big - # difference. diff --git a/package/gcc/4.9.3/830-arm_unbreak_armv4t.patch b/package/gcc/4.9.3/830-arm_unbreak_armv4t.patch deleted file mode 100644 index 37f8f2a54d..0000000000 --- a/package/gcc/4.9.3/830-arm_unbreak_armv4t.patch +++ /dev/null @@ -1,13 +0,0 @@ -http://sourceware.org/ml/crossgcc/2008-05/msg00009.html - ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -45,7 +45,7 @@ - The ARM10TDMI core is the default for armv5t, so set - SUBTARGET_CPU_DEFAULT to achieve this. */ - #undef SUBTARGET_CPU_DEFAULT --#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi -+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi - - /* TARGET_BIG_ENDIAN_DEFAULT is set in - config.gcc for big endian configurations. */ diff --git a/package/gcc/4.9.3/850-libstdcxx-uclibc-c99.patch b/package/gcc/4.9.3/850-libstdcxx-uclibc-c99.patch deleted file mode 100644 index d103af1a20..0000000000 --- a/package/gcc/4.9.3/850-libstdcxx-uclibc-c99.patch +++ /dev/null @@ -1,255 +0,0 @@ -Allow C99-depending features of libstdc++ with uClibc - -The libstdc++ code is fairly restrictive on how it checks for C99 -compatibility: it requires *complete* C99 support to enable certain -features. For example, uClibc provides a good number of C99 features, -but not C99 complex number support. For this reason, libstdc++ -completely disables many the standard C++ methods that can in fact -work because uClibc provides the necessary functions. - -This patch is similar and highly inspired from -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58393, but implemented in -a way that doesn't involve changing the configure.ac script, as -autoreconfiguring gcc is complicated. It simply relies on the fact -that uClibc defines the __UCLIBC__ definition. - -Signed-off-by: Thomas Petazzoni -[Gustavo: update for 4.9.3] - -diff -Nura gcc-4.9.3.orig/libstdc++-v3/config/locale/generic/c_locale.h gcc-4.9.3/libstdc++-v3/config/locale/generic/c_locale.h ---- gcc-4.9.3.orig/libstdc++-v3/config/locale/generic/c_locale.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/config/locale/generic/c_locale.h 2015-06-27 06:46:04.420022179 -0300 -@@ -70,7 +70,7 @@ - __builtin_va_list __args; - __builtin_va_start(__args, __fmt); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); - #else - const int __ret = __builtin_vsprintf(__out, __fmt, __args); -diff -Nura gcc-4.9.3.orig/libstdc++-v3/config/locale/gnu/c_locale.h gcc-4.9.3/libstdc++-v3/config/locale/gnu/c_locale.h ---- gcc-4.9.3.orig/libstdc++-v3/config/locale/gnu/c_locale.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/config/locale/gnu/c_locale.h 2015-06-27 06:46:04.465023743 -0300 -@@ -88,7 +88,7 @@ - __builtin_va_list __args; - __builtin_va_start(__args, __fmt); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); - #else - const int __ret = __builtin_vsprintf(__out, __fmt, __args); -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/bits/basic_string.h gcc-4.9.3/libstdc++-v3/include/bits/basic_string.h ---- gcc-4.9.3.orig/libstdc++-v3/include/bits/basic_string.h 2015-05-28 13:27:46.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/bits/basic_string.h 2015-06-27 06:49:04.741284648 -0300 -@@ -2844,7 +2844,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99) -+#if __cplusplus >= 201103L && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)) - - #include - -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/bits/locale_facets_nonio.tcc gcc-4.9.3/libstdc++-v3/include/bits/locale_facets_nonio.tcc ---- gcc-4.9.3.orig/libstdc++-v3/include/bits/locale_facets_nonio.tcc 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/bits/locale_facets_nonio.tcc 2015-06-27 06:46:04.466023777 -0300 -@@ -572,7 +572,7 @@ - { - const locale __loc = __io.getloc(); - const ctype<_CharT>& __ctype = use_facet >(__loc); --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - // First try a buffer perhaps big enough. - int __cs_size = 64; - char* __cs = static_cast(__builtin_alloca(__cs_size)); -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/bits/locale_facets.tcc gcc-4.9.3/libstdc++-v3/include/bits/locale_facets.tcc ---- gcc-4.9.3.orig/libstdc++-v3/include/bits/locale_facets.tcc 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/bits/locale_facets.tcc 2015-06-27 06:46:04.466023777 -0300 -@@ -987,7 +987,7 @@ - char __fbuf[16]; - __num_base::_S_format_float(__io, __fbuf, __mod); - --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - // First try a buffer perhaps big enough (most probably sufficient - // for non-ios_base::fixed outputs) - int __cs_size = __max_digits * 3; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_compatibility/math.h gcc-4.9.3/libstdc++-v3/include/c_compatibility/math.h ---- gcc-4.9.3.orig/libstdc++-v3/include/c_compatibility/math.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_compatibility/math.h 2015-06-27 06:46:04.466023777 -0300 -@@ -56,7 +56,7 @@ - using std::floor; - using std::fmod; - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::fpclassify; - using std::isfinite; - using std::isinf; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_compatibility/wchar.h gcc-4.9.3/libstdc++-v3/include/c_compatibility/wchar.h ---- gcc-4.9.3.orig/libstdc++-v3/include/c_compatibility/wchar.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_compatibility/wchar.h 2015-06-27 06:46:04.466023777 -0300 -@@ -103,7 +103,7 @@ - using std::wmemset; - using std::wcsftime; - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_global/cstdio gcc-4.9.3/libstdc++-v3/include/c_global/cstdio ---- gcc-4.9.3.orig/libstdc++-v3/include/c_global/cstdio 2014-01-23 18:17:15.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_global/cstdio 2015-06-27 06:46:04.481024298 -0300 -@@ -146,7 +146,7 @@ - using ::vsprintf; - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_global/cstdlib gcc-4.9.3/libstdc++-v3/include/c_global/cstdlib ---- gcc-4.9.3.orig/libstdc++-v3/include/c_global/cstdlib 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_global/cstdlib 2015-06-27 06:46:04.466023777 -0300 -@@ -182,7 +182,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef _Exit - #undef llabs -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_global/cwchar gcc-4.9.3/libstdc++-v3/include/c_global/cwchar ---- gcc-4.9.3.orig/libstdc++-v3/include/c_global/cwchar 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_global/cwchar 2015-06-27 06:46:04.466023777 -0300 -@@ -232,7 +232,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef wcstold - #undef wcstoll -@@ -289,7 +289,7 @@ - using std::vwscanf; - #endif - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_std/cstdio gcc-4.9.3/libstdc++-v3/include/c_std/cstdio ---- gcc-4.9.3.orig/libstdc++-v3/include/c_std/cstdio 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_std/cstdio 2015-06-27 06:46:04.480024263 -0300 -@@ -144,7 +144,7 @@ - using ::vsprintf; - } // namespace std - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_std/cstdlib gcc-4.9.3/libstdc++-v3/include/c_std/cstdlib ---- gcc-4.9.3.orig/libstdc++-v3/include/c_std/cstdlib 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_std/cstdlib 2015-06-27 06:46:04.480024263 -0300 -@@ -180,7 +180,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef _Exit - #undef llabs -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/c_std/cwchar gcc-4.9.3/libstdc++-v3/include/c_std/cwchar ---- gcc-4.9.3.orig/libstdc++-v3/include/c_std/cwchar 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/c_std/cwchar 2015-06-27 06:46:04.480024263 -0300 -@@ -228,7 +228,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef wcstold - #undef wcstoll -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/ext/vstring.h gcc-4.9.3/libstdc++-v3/include/ext/vstring.h ---- gcc-4.9.3.orig/libstdc++-v3/include/ext/vstring.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/ext/vstring.h 2015-06-27 06:46:04.480024263 -0300 -@@ -2680,7 +2680,7 @@ - _GLIBCXX_END_NAMESPACE_VERSION - } // namespace - --#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99)) -+#if ((__cplusplus >= 201103L) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__))) - - #include - -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/tr1/cstdio gcc-4.9.3/libstdc++-v3/include/tr1/cstdio ---- gcc-4.9.3.orig/libstdc++-v3/include/tr1/cstdio 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/tr1/cstdio 2015-06-27 06:46:04.480024263 -0300 -@@ -33,7 +33,7 @@ - - #include - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - namespace std _GLIBCXX_VISIBILITY(default) - { -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/tr1/cstdlib gcc-4.9.3/libstdc++-v3/include/tr1/cstdlib ---- gcc-4.9.3.orig/libstdc++-v3/include/tr1/cstdlib 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/tr1/cstdlib 2015-06-27 06:46:04.480024263 -0300 -@@ -35,7 +35,7 @@ - - #if _GLIBCXX_HOSTED - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - namespace std _GLIBCXX_VISIBILITY(default) - { -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/tr1/cwchar gcc-4.9.3/libstdc++-v3/include/tr1/cwchar ---- gcc-4.9.3.orig/libstdc++-v3/include/tr1/cwchar 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/tr1/cwchar 2015-06-27 06:46:04.480024263 -0300 -@@ -52,7 +52,7 @@ - using std::vwscanf; - #endif - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - using std::wcstold; - using std::wcstoll; - using std::wcstoull; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/include/tr1/stdlib.h gcc-4.9.3/libstdc++-v3/include/tr1/stdlib.h ---- gcc-4.9.3.orig/libstdc++-v3/include/tr1/stdlib.h 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/include/tr1/stdlib.h 2015-06-27 06:46:04.481024298 -0300 -@@ -33,7 +33,7 @@ - - #if _GLIBCXX_HOSTED - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - using std::tr1::atoll; - using std::tr1::strtoll; -diff -Nura gcc-4.9.3.orig/libstdc++-v3/src/c++11/debug.cc gcc-4.9.3/libstdc++-v3/src/c++11/debug.cc ---- gcc-4.9.3.orig/libstdc++-v3/src/c++11/debug.cc 2014-01-02 19:30:10.000000000 -0300 -+++ gcc-4.9.3/libstdc++-v3/src/c++11/debug.cc 2015-06-27 06:46:04.481024298 -0300 -@@ -788,7 +788,7 @@ - int __n __attribute__ ((__unused__)), - const char* __fmt, _Tp __s) const throw () - { --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - std::snprintf(__buf, __n, __fmt, __s); - #else - std::sprintf(__buf, __fmt, __s); diff --git a/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch b/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch deleted file mode 100644 index df5372bb5a..0000000000 --- a/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch +++ /dev/null @@ -1,12 +0,0 @@ -Upstream status: In progress - ---- a/libgcc/config/nios2/linux-atomic.c -+++ b/libgcc/config/nios2/linux-atomic.c -@@ -20,7 +20,6 @@ - see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - . */ - --#include - #define EFAULT 14 - #define EBUSY 16 - #define ENOSYS 38 diff --git a/package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch b/package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch new file mode 100644 index 0000000000..fd2bc69538 --- /dev/null +++ b/package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch @@ -0,0 +1,43 @@ +From 80bc14a5249da7054b716229206b453f339b4a5e Mon Sep 17 00:00:00 2001 +From: nsz +Date: Mon, 23 Nov 2015 15:17:55 +0000 +Subject: [PATCH] [ARM] PR target/68059 libgcc should not use __write for + printing fatal error + +libgcc/ + PR target/68059 + * config/arm/linux-atomic-64bit.c (__write): Rename to... + (write): ...this and fix the return type. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230762 138bc75d-0d04-0410-961f-82ee72b054a4 + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + libgcc/config/arm/linux-atomic-64bit.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libgcc/config/arm/linux-atomic-64bit.c b/libgcc/config/arm/linux-atomic-64bit.c +index 5b8c6e2..9078673 100644 +--- a/libgcc/config/arm/linux-atomic-64bit.c ++++ b/libgcc/config/arm/linux-atomic-64bit.c +@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + kernels; we check for that in an init section and bail out rather + unceremoneously. */ + +-extern unsigned int __write (int fd, const void *buf, unsigned int count); ++extern int write (int fd, const void *buf, unsigned int count); + extern void abort (void); + + /* Kernel helper for compare-and-exchange. */ +@@ -56,7 +56,7 @@ static void __check_for_sync8_kernelhelper (void) + for the user - I'm not sure I can rely on much else being + available at this point, so do the same as generic-morestack.c + write () and abort (). */ +- __write (2 /* stderr. */, err, sizeof (err)); ++ write (2 /* stderr. */, err, sizeof (err)); + abort (); + } + }; +-- +2.10.2 + diff --git a/package/gcc/4.9.3/100-uclibc-conf.patch b/package/gcc/4.9.4/100-uclibc-conf.patch similarity index 100% rename from package/gcc/4.9.3/100-uclibc-conf.patch rename to package/gcc/4.9.4/100-uclibc-conf.patch diff --git a/package/gcc/4.9.3/1000-powerpc-link-with-math-lib.patch.conditional b/package/gcc/4.9.4/1000-powerpc-link-with-math-lib.patch.conditional similarity index 84% rename from package/gcc/4.9.3/1000-powerpc-link-with-math-lib.patch.conditional rename to package/gcc/4.9.4/1000-powerpc-link-with-math-lib.patch.conditional index b7094fe652..5e0484fbb4 100644 --- a/package/gcc/4.9.3/1000-powerpc-link-with-math-lib.patch.conditional +++ b/package/gcc/4.9.4/1000-powerpc-link-with-math-lib.patch.conditional @@ -14,19 +14,19 @@ Forward port to gcc 4.5.1 by Gustavo Zacarias libgcc/configure.ac | 21 +++++++++++++++++++++ 3 files changed, 56 insertions(+), 1 deletion(-) -Index: gcc-4.8.0/libgcc/Makefile.in +Index: b/libgcc/Makefile.in =================================================================== ---- gcc-4.8.0.orig/libgcc/Makefile.in 2013-02-04 20:06:20.000000000 +0100 -+++ gcc-4.8.0/libgcc/Makefile.in 2013-03-24 09:12:43.000000000 +0100 -@@ -41,6 +41,7 @@ - decimal_float = @decimal_float@ +--- a/libgcc/Makefile.in ++++ b/libgcc/Makefile.in +@@ -42,6 +42,7 @@ + enable_vtable_verify = @enable_vtable_verify@ enable_decimal_float = @enable_decimal_float@ fixed_point = @fixed_point@ +LIBGCC_LIBM = @LIBGCC_LIBM@ host_noncanonical = @host_noncanonical@ target_noncanonical = @target_noncanonical@ -@@ -927,9 +928,10 @@ +@@ -943,9 +944,10 @@ @multilib_dir@,$(MULTIDIR),$(subst \ @shlib_objs@,$(objects) libgcc.a,$(subst \ @shlib_base_name@,libgcc_s,$(subst \ @@ -38,10 +38,10 @@ Index: gcc-4.8.0/libgcc/Makefile.in libunwind$(SHLIB_EXT): $(libunwind-s-objects) $(extra-parts) # @multilib_flags@ is still needed because this may use -Index: gcc-4.8.0/libgcc/configure +Index: b/libgcc/configure =================================================================== ---- gcc-4.8.0.orig/libgcc/configure 2012-11-05 00:08:42.000000000 +0100 -+++ gcc-4.8.0/libgcc/configure 2013-03-24 09:12:43.000000000 +0100 +--- a/libgcc/configure ++++ b/libgcc/configure @@ -564,6 +564,7 @@ tmake_file sfp_machine_header @@ -50,7 +50,7 @@ Index: gcc-4.8.0/libgcc/configure set_have_cc_tls vis_hide fixed_point -@@ -4481,6 +4482,37 @@ +@@ -4535,6 +4536,37 @@ fi fi @@ -88,11 +88,11 @@ Index: gcc-4.8.0/libgcc/configure # Conditionalize the makefile for this target machine. tmake_file_= -Index: gcc-4.8.0/libgcc/configure.ac +Index: b/libgcc/configure.ac =================================================================== ---- gcc-4.8.0.orig/libgcc/configure.ac 2012-10-15 15:10:30.000000000 +0200 -+++ gcc-4.8.0/libgcc/configure.ac 2013-03-24 09:12:43.000000000 +0100 -@@ -326,6 +326,27 @@ +--- a/libgcc/configure.ac ++++ b/libgcc/configure.ac +@@ -357,6 +357,27 @@ fi AC_SUBST(set_have_cc_tls) diff --git a/package/gcc/4.7.4/111-pr65730.patch b/package/gcc/4.9.4/111-pr65730.patch similarity index 85% rename from package/gcc/4.7.4/111-pr65730.patch rename to package/gcc/4.9.4/111-pr65730.patch index f195e308da..8a41fd2a10 100644 --- a/package/gcc/4.7.4/111-pr65730.patch +++ b/package/gcc/4.9.4/111-pr65730.patch @@ -16,11 +16,11 @@ Changes to ChangeLog are dropped. gcc/config/xtensa/xtensa.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index eb039ba..7296e36 100644 +Index: b/gcc/config/xtensa/xtensa.c +=================================================================== --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c -@@ -1461,8 +1461,9 @@ init_alignment_context (struct alignment_context *ac, rtx mem) +@@ -1436,8 +1436,9 @@ if (ac->shift != NULL_RTX) { /* Shift is the byte count, but we need the bitcount. */ @@ -32,6 +32,3 @@ index eb039ba..7296e36 100644 NULL_RTX, 1, OPTAB_DIRECT); ac->modemask = expand_simple_binop (SImode, ASHIFT, GEN_INT (GET_MODE_MASK (mode)), --- -1.8.1.4 - diff --git a/package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch b/package/gcc/4.9.4/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch similarity index 87% rename from package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch rename to package/gcc/4.9.4/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch index c11ad35aac..bb77c4b9ef 100644 --- a/package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch +++ b/package/gcc/4.9.4/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch @@ -11,19 +11,16 @@ Signed-off-by: Arnout Vandecappelle (Essensium/Mind) gcc/config.gcc | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) -diff --git a/gcc/config.gcc b/gcc/config.gcc -index 4a7cbd2..9cc765e 100644 +Index: b/gcc/config.gcc +=================================================================== --- a/gcc/config.gcc +++ b/gcc/config.gcc -@@ -439,7 +439,7 @@ powerpc*-*-*) - cpu_type=rs6000 +@@ -441,7 +441,7 @@ extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h" + need_64bit_hwint=yes case x$with_cpu in - xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|Xe6500) + xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|xe6500) cpu_is_64bit=yes ;; esac --- -2.6.2 - diff --git a/package/gcc/4.7.4/130-pr43538.patch b/package/gcc/4.9.4/130-pr43538.patch similarity index 100% rename from package/gcc/4.7.4/130-pr43538.patch rename to package/gcc/4.9.4/130-pr43538.patch diff --git a/package/gcc/4.9.3/140-sanitizer-Fix-build-with-_FILE_OFFSET_BITS-64.patch b/package/gcc/4.9.4/140-sanitizer-Fix-build-with-_FILE_OFFSET_BITS-64.patch similarity index 100% rename from package/gcc/4.9.3/140-sanitizer-Fix-build-with-_FILE_OFFSET_BITS-64.patch rename to package/gcc/4.9.4/140-sanitizer-Fix-build-with-_FILE_OFFSET_BITS-64.patch diff --git a/package/gcc/4.9.3/301-missing-execinfo_h.patch b/package/gcc/4.9.4/301-missing-execinfo_h.patch similarity index 100% rename from package/gcc/4.9.3/301-missing-execinfo_h.patch rename to package/gcc/4.9.4/301-missing-execinfo_h.patch diff --git a/package/gcc/5.3.0/810-arm-softfloat-libgcc.patch b/package/gcc/4.9.4/810-arm-softfloat-libgcc.patch similarity index 100% rename from package/gcc/5.3.0/810-arm-softfloat-libgcc.patch rename to package/gcc/4.9.4/810-arm-softfloat-libgcc.patch diff --git a/package/gcc/4.7.4/830-arm_unbreak_armv4t.patch b/package/gcc/4.9.4/830-arm_unbreak_armv4t.patch similarity index 100% rename from package/gcc/4.7.4/830-arm_unbreak_armv4t.patch rename to package/gcc/4.9.4/830-arm_unbreak_armv4t.patch diff --git a/package/gcc/4.9.3/840-microblaze-enable-dwarf-eh-support.patch b/package/gcc/4.9.4/840-microblaze-enable-dwarf-eh-support.patch similarity index 81% rename from package/gcc/4.9.3/840-microblaze-enable-dwarf-eh-support.patch rename to package/gcc/4.9.4/840-microblaze-enable-dwarf-eh-support.patch index e116e2b24a..03fc47f192 100644 --- a/package/gcc/4.9.3/840-microblaze-enable-dwarf-eh-support.patch +++ b/package/gcc/4.9.4/840-microblaze-enable-dwarf-eh-support.patch @@ -33,11 +33,11 @@ Signed-off-by: Edgar E. Iglesias gcc/config/microblaze/microblaze.md | 11 +++++++++ 5 files changed, 52 insertions(+), 7 deletions(-) -diff --git a/gcc/common/config/microblaze/microblaze-common.c b/gcc/common/config/microblaze/microblaze-common.c -index 5835acc..85e6a53 100644 +Index: b/gcc/common/config/microblaze/microblaze-common.c +=================================================================== --- a/gcc/common/config/microblaze/microblaze-common.c +++ b/gcc/common/config/microblaze/microblaze-common.c -@@ -39,7 +39,4 @@ static const struct default_options microblaze_option_optimization_table[] = +@@ -37,7 +37,4 @@ #undef TARGET_OPTION_OPTIMIZATION_TABLE #define TARGET_OPTION_OPTIMIZATION_TABLE microblaze_option_optimization_table @@ -45,11 +45,11 @@ index 5835acc..85e6a53 100644 -#define TARGET_EXCEPT_UNWIND_INFO sjlj_except_unwind_info - struct gcc_targetm_common targetm_common = TARGETM_COMMON_INITIALIZER; -diff --git a/gcc/config/microblaze/microblaze-protos.h b/gcc/config/microblaze/microblaze-protos.h -index c30ec72..260f4e4 100644 +Index: b/gcc/config/microblaze/microblaze-protos.h +=================================================================== --- a/gcc/config/microblaze/microblaze-protos.h +++ b/gcc/config/microblaze/microblaze-protos.h -@@ -56,6 +56,7 @@ extern bool microblaze_tls_referenced_p (rtx); +@@ -54,6 +54,7 @@ extern int symbol_mentioned_p (rtx); extern int label_mentioned_p (rtx); extern bool microblaze_cannot_force_const_mem (enum machine_mode, rtx); @@ -57,11 +57,11 @@ index c30ec72..260f4e4 100644 #endif /* RTX_CODE */ /* Declare functions in microblaze-c.c. */ -diff --git a/gcc/config/microblaze/microblaze.c b/gcc/config/microblaze/microblaze.c -index fe61fce..15166d3 100644 +Index: b/gcc/config/microblaze/microblaze.c +=================================================================== --- a/gcc/config/microblaze/microblaze.c +++ b/gcc/config/microblaze/microblaze.c -@@ -1999,6 +1999,11 @@ microblaze_must_save_register (int regno) +@@ -1906,6 +1906,11 @@ if (frame_pointer_needed && (regno == HARD_FRAME_POINTER_REGNUM)) return 1; @@ -73,7 +73,7 @@ index fe61fce..15166d3 100644 if (!crtl->is_leaf) { if (regno == MB_ABI_SUB_RETURN_ADDR_REGNUM) -@@ -2026,6 +2031,13 @@ microblaze_must_save_register (int regno) +@@ -1933,6 +1938,13 @@ return 1; } @@ -87,7 +87,7 @@ index fe61fce..15166d3 100644 return 0; } -@@ -3131,6 +3143,12 @@ microblaze_expand_epilogue (void) +@@ -2962,6 +2974,12 @@ emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, fsiz_rtx)); } @@ -100,7 +100,7 @@ index fe61fce..15166d3 100644 emit_jump_insn (gen_return_internal (gen_rtx_REG (Pmode, GP_REG_FIRST + MB_ABI_SUB_RETURN_ADDR_REGNUM))); } -@@ -3427,10 +3445,13 @@ microblaze_return_addr (int count, rtx frame ATTRIBUTE_UNUSED) +@@ -3256,10 +3274,13 @@ if (count != 0) return NULL_RTX; @@ -118,11 +118,11 @@ index fe61fce..15166d3 100644 } /* Queue an .ident string in the queue of top-level asm statements. -diff --git a/gcc/config/microblaze/microblaze.h b/gcc/config/microblaze/microblaze.h -index 4072283..5e9f49c 100644 +Index: b/gcc/config/microblaze/microblaze.h +=================================================================== --- a/gcc/config/microblaze/microblaze.h +++ b/gcc/config/microblaze/microblaze.h -@@ -184,6 +184,21 @@ extern enum pipeline_type microblaze_pipe; +@@ -184,6 +184,21 @@ #define INCOMING_RETURN_ADDR_RTX \ gen_rtx_REG (VOIDmode, GP_REG_FIRST + MB_ABI_SUB_RETURN_ADDR_REGNUM) @@ -144,11 +144,11 @@ index 4072283..5e9f49c 100644 /* Use DWARF 2 debugging information by default. */ #define DWARF2_DEBUGGING_INFO #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG -diff --git a/gcc/config/microblaze/microblaze.md b/gcc/config/microblaze/microblaze.md -index ed6131a..dc2405f 100644 +Index: b/gcc/config/microblaze/microblaze.md +=================================================================== --- a/gcc/config/microblaze/microblaze.md +++ b/gcc/config/microblaze/microblaze.md -@@ -2327,4 +2327,15 @@ +@@ -2261,4 +2261,15 @@ (set_attr "mode" "SI") (set_attr "length" "4")]) @@ -164,6 +164,3 @@ index ed6131a..dc2405f 100644 + (include "sync.md") + --- -1.8.3.2 - diff --git a/package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch b/package/gcc/4.9.4/850-libstdcxx-uclibc-c99.patch similarity index 96% rename from package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch rename to package/gcc/4.9.4/850-libstdcxx-uclibc-c99.patch index 0d02ef0fb6..533d01fad5 100644 --- a/package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch +++ b/package/gcc/4.9.4/850-libstdcxx-uclibc-c99.patch @@ -14,6 +14,7 @@ autoreconfiguring gcc is complicated. It simply relies on the fact that uClibc defines the __UCLIBC__ definition. Signed-off-by: Thomas Petazzoni +[Gustavo: update for 4.9.3] Index: b/libstdc++-v3/config/locale/generic/c_locale.h =================================================================== @@ -45,28 +46,15 @@ Index: b/libstdc++-v3/include/bits/basic_string.h =================================================================== --- a/libstdc++-v3/include/bits/basic_string.h +++ b/libstdc++-v3/include/bits/basic_string.h -@@ -2811,7 +2811,7 @@ +@@ -2843,7 +2843,7 @@ _GLIBCXX_END_NAMESPACE_VERSION } // namespace --#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99) \ -+#if ((__cplusplus >= 201103L) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)) \ - && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF)) +-#if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99) ++#if __cplusplus >= 201103L && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)) #include -Index: b/libstdc++-v3/include/bits/locale_facets.tcc -=================================================================== ---- a/libstdc++-v3/include/bits/locale_facets.tcc -+++ b/libstdc++-v3/include/bits/locale_facets.tcc -@@ -987,7 +987,7 @@ - char __fbuf[16]; - __num_base::_S_format_float(__io, __fbuf, __mod); --#ifdef _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - // First try a buffer perhaps big enough (most probably sufficient - // for non-ios_base::fixed outputs) - int __cs_size = __max_digits * 3; Index: b/libstdc++-v3/include/bits/locale_facets_nonio.tcc =================================================================== --- a/libstdc++-v3/include/bits/locale_facets_nonio.tcc @@ -80,6 +68,19 @@ Index: b/libstdc++-v3/include/bits/locale_facets_nonio.tcc // First try a buffer perhaps big enough. int __cs_size = 64; char* __cs = static_cast(__builtin_alloca(__cs_size)); +Index: b/libstdc++-v3/include/bits/locale_facets.tcc +=================================================================== +--- a/libstdc++-v3/include/bits/locale_facets.tcc ++++ b/libstdc++-v3/include/bits/locale_facets.tcc +@@ -987,7 +987,7 @@ + char __fbuf[16]; + __num_base::_S_format_float(__io, __fbuf, __mod); + +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + // First try a buffer perhaps big enough (most probably sufficient + // for non-ios_base::fixed outputs) + int __cs_size = __max_digits * 3; Index: b/libstdc++-v3/include/c_compatibility/math.h =================================================================== --- a/libstdc++-v3/include/c_compatibility/math.h @@ -106,6 +107,19 @@ Index: b/libstdc++-v3/include/c_compatibility/wchar.h using std::wcstold; using std::wcstoll; using std::wcstoull; +Index: b/libstdc++-v3/include/c_global/cstdio +=================================================================== +--- a/libstdc++-v3/include/c_global/cstdio ++++ b/libstdc++-v3/include/c_global/cstdio +@@ -146,7 +146,7 @@ + using ::vsprintf; + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef snprintf + #undef vfscanf Index: b/libstdc++-v3/include/c_global/cstdlib =================================================================== --- a/libstdc++-v3/include/c_global/cstdlib @@ -145,7 +159,7 @@ Index: b/libstdc++-v3/include/c_std/cstdio =================================================================== --- a/libstdc++-v3/include/c_std/cstdio +++ b/libstdc++-v3/include/c_std/cstdio -@@ -139,7 +139,7 @@ +@@ -144,7 +144,7 @@ using ::vsprintf; } // namespace std @@ -184,7 +198,7 @@ Index: b/libstdc++-v3/include/ext/vstring.h =================================================================== --- a/libstdc++-v3/include/ext/vstring.h +++ b/libstdc++-v3/include/ext/vstring.h -@@ -2571,7 +2571,7 @@ +@@ -2680,7 +2680,7 @@ _GLIBCXX_END_NAMESPACE_VERSION } // namespace @@ -249,7 +263,7 @@ Index: b/libstdc++-v3/src/c++11/debug.cc =================================================================== --- a/libstdc++-v3/src/c++11/debug.cc +++ b/libstdc++-v3/src/c++11/debug.cc -@@ -787,7 +787,7 @@ +@@ -788,7 +788,7 @@ int __n __attribute__ ((__unused__)), const char* __fmt, _Tp __s) const throw () { @@ -258,16 +272,3 @@ Index: b/libstdc++-v3/src/c++11/debug.cc std::snprintf(__buf, __n, __fmt, __s); #else std::sprintf(__buf, __fmt, __s); -Index: b/libstdc++-v3/include/c_global/cstdio -=================================================================== ---- a/libstdc++-v3/include/c_global/cstdio -+++ b/libstdc++-v3/include/c_global/cstdio -@@ -138,7 +138,7 @@ - using ::vsprintf; - } // namespace - --#if _GLIBCXX_USE_C99 -+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) - - #undef snprintf - #undef vfscanf diff --git a/package/gcc/4.9.3/860-cilk-wchar.patch b/package/gcc/4.9.4/860-cilk-wchar.patch similarity index 100% rename from package/gcc/4.9.3/860-cilk-wchar.patch rename to package/gcc/4.9.4/860-cilk-wchar.patch diff --git a/package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch b/package/gcc/4.9.4/870-xtensa-add-mauto-litpools-option.patch similarity index 87% rename from package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch rename to package/gcc/4.9.4/870-xtensa-add-mauto-litpools-option.patch index aa1376c44c..98c7b3f32c 100644 --- a/package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch +++ b/package/gcc/4.9.4/870-xtensa-add-mauto-litpools-option.patch @@ -48,8 +48,8 @@ Changes to ChangeLogs and documentation are dropped. gcc/config/xtensa/xtensa.opt | 4 ++++ 7 files changed, 54 insertions(+), 20 deletions(-) -diff --git a/gcc/config/xtensa/constraints.md b/gcc/config/xtensa/constraints.md -index 30f4c1f..773d4f9 100644 +Index: b/gcc/config/xtensa/constraints.md +=================================================================== --- a/gcc/config/xtensa/constraints.md +++ b/gcc/config/xtensa/constraints.md @@ -111,6 +111,11 @@ @@ -64,11 +64,11 @@ index 30f4c1f..773d4f9 100644 ;; Memory constraints. Do not use define_memory_constraint here. Doing so ;; causes reload to force some constants into the constant pool, but since ;; the Xtensa constant pool can only be accessed with L32R instructions, it -diff --git a/gcc/config/xtensa/elf.h b/gcc/config/xtensa/elf.h -index e59bede..12056f7 100644 +Index: b/gcc/config/xtensa/elf.h +=================================================================== --- a/gcc/config/xtensa/elf.h +++ b/gcc/config/xtensa/elf.h -@@ -48,7 +48,9 @@ along with GCC; see the file COPYING3. If not see +@@ -48,7 +48,9 @@ %{mtarget-align:--target-align} \ %{mno-target-align:--no-target-align} \ %{mlongcalls:--longcalls} \ @@ -79,11 +79,11 @@ index e59bede..12056f7 100644 #undef LIB_SPEC #define LIB_SPEC "-lc -lsim -lc -lhandlers-sim -lhal" -diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h -index 675aacf..5b0243a 100644 +Index: b/gcc/config/xtensa/linux.h +=================================================================== --- a/gcc/config/xtensa/linux.h +++ b/gcc/config/xtensa/linux.h -@@ -42,7 +42,9 @@ along with GCC; see the file COPYING3. If not see +@@ -42,7 +42,9 @@ %{mtarget-align:--target-align} \ %{mno-target-align:--no-target-align} \ %{mlongcalls:--longcalls} \ @@ -94,8 +94,8 @@ index 675aacf..5b0243a 100644 #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -diff --git a/gcc/config/xtensa/predicates.md b/gcc/config/xtensa/predicates.md -index e02209e..d7dfa11 100644 +Index: b/gcc/config/xtensa/predicates.md +=================================================================== --- a/gcc/config/xtensa/predicates.md +++ b/gcc/config/xtensa/predicates.md @@ -142,7 +142,8 @@ @@ -108,11 +108,11 @@ index e02209e..d7dfa11 100644 && GET_MODE_SIZE (mode) % UNITS_PER_WORD == 0"))))) ;; Accept the floating point constant 1 in the appropriate mode. -diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c -index eb039ba..206ff80 100644 +Index: b/gcc/config/xtensa/xtensa.c +=================================================================== --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c -@@ -501,6 +501,9 @@ xtensa_valid_move (machine_mode mode, rtx *operands) +@@ -477,6 +477,9 @@ { int dst_regnum = xt_true_regnum (operands[0]); @@ -121,8 +121,8 @@ index eb039ba..206ff80 100644 + /* The stack pointer can only be assigned with a MOVSP opcode. */ if (dst_regnum == STACK_POINTER_REGNUM) - return !TARGET_WINDOWED_ABI -@@ -1069,7 +1072,7 @@ xtensa_emit_move_sequence (rtx *operands, machine_mode mode) + return (mode == SImode +@@ -1044,7 +1047,7 @@ return 1; } @@ -131,7 +131,7 @@ index eb039ba..206ff80 100644 { src = force_const_mem (SImode, src); operands[1] = src; -@@ -2449,6 +2452,20 @@ print_operand (FILE *file, rtx x, int letter) +@@ -2428,6 +2431,20 @@ } break; @@ -152,11 +152,11 @@ index eb039ba..206ff80 100644 default: if (GET_CODE (x) == REG || GET_CODE (x) == SUBREG) fprintf (file, "%s", reg_names[xt_true_regnum (x)]); -diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md -index 6d84384..0e673a3 100644 +Index: b/gcc/config/xtensa/xtensa.md +=================================================================== --- a/gcc/config/xtensa/xtensa.md +++ b/gcc/config/xtensa/xtensa.md -@@ -761,8 +761,8 @@ +@@ -799,8 +799,8 @@ }) (define_insn "movsi_internal" @@ -167,7 +167,7 @@ index 6d84384..0e673a3 100644 "xtensa_valid_move (SImode, operands)" "@ movi.n\t%0, %x1 -@@ -774,15 +774,16 @@ +@@ -812,15 +812,16 @@ mov\t%0, %1 movsp\t%0, %1 movi\t%0, %x1 @@ -186,7 +186,7 @@ index 6d84384..0e673a3 100644 ;; 16-bit Integer moves -@@ -796,21 +797,22 @@ +@@ -834,21 +835,22 @@ }) (define_insn "movhi_internal" @@ -213,7 +213,7 @@ index 6d84384..0e673a3 100644 ;; 8-bit Integer moves -@@ -881,7 +883,7 @@ +@@ -919,7 +921,7 @@ (match_operand:SF 1 "general_operand" ""))] "" { @@ -222,7 +222,7 @@ index 6d84384..0e673a3 100644 operands[1] = force_const_mem (SFmode, operands[1]); if ((!register_operand (operands[0], SFmode) -@@ -896,8 +898,8 @@ +@@ -934,8 +936,8 @@ }) (define_insn "movsf_internal" @@ -233,7 +233,7 @@ index 6d84384..0e673a3 100644 "((register_operand (operands[0], SFmode) || register_operand (operands[1], SFmode)) && !(FP_REG_P (xt_true_regnum (operands[0])) -@@ -912,13 +914,14 @@ +@@ -950,13 +952,14 @@ mov\t%0, %1 wfr\t%0, %1 rfr\t%0, %1 @@ -250,7 +250,7 @@ index 6d84384..0e673a3 100644 (define_insn "*lsiu" [(set (match_operand:SF 0 "register_operand" "=f") -@@ -991,7 +994,7 @@ +@@ -997,7 +1000,7 @@ (match_operand:DF 1 "general_operand" ""))] "" { @@ -259,7 +259,7 @@ index 6d84384..0e673a3 100644 operands[1] = force_const_mem (DFmode, operands[1]); if (!register_operand (operands[0], DFmode) -@@ -1002,8 +1005,8 @@ +@@ -1008,8 +1011,8 @@ }) (define_insn_and_split "movdf_internal" @@ -270,11 +270,11 @@ index 6d84384..0e673a3 100644 "register_operand (operands[0], DFmode) || register_operand (operands[1], DFmode)" "#" -diff --git a/gcc/config/xtensa/xtensa.opt b/gcc/config/xtensa/xtensa.opt -index 2fd6cee..21c6e96 100644 +Index: b/gcc/config/xtensa/xtensa.opt +=================================================================== --- a/gcc/config/xtensa/xtensa.opt +++ b/gcc/config/xtensa/xtensa.opt -@@ -38,6 +38,10 @@ mtext-section-literals +@@ -38,6 +38,10 @@ Target Intersperse literal pools with code in the text section @@ -285,6 +285,3 @@ index 2fd6cee..21c6e96 100644 mserialize-volatile Target Report Mask(SERIALIZE_VOLATILE) -mno-serialize-volatile Do not serialize volatile memory references with MEMW instructions --- -1.8.1.4 - diff --git a/package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch b/package/gcc/4.9.4/871-xtensa-reimplement-register-spilling.patch similarity index 100% rename from package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch rename to package/gcc/4.9.4/871-xtensa-reimplement-register-spilling.patch diff --git a/package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch b/package/gcc/4.9.4/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch similarity index 100% rename from package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch rename to package/gcc/4.9.4/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch diff --git a/package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch b/package/gcc/4.9.4/873-xtensa-fix-_Unwind_GetCFA.patch similarity index 100% rename from package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch rename to package/gcc/4.9.4/873-xtensa-fix-_Unwind_GetCFA.patch diff --git a/package/gcc/5.3.0/874-xtensa-add-uclinux-support.patch b/package/gcc/4.9.4/874-xtensa-add-uclinux-support.patch similarity index 91% rename from package/gcc/5.3.0/874-xtensa-add-uclinux-support.patch rename to package/gcc/4.9.4/874-xtensa-add-uclinux-support.patch index 23db3d863c..881aec09d9 100644 --- a/package/gcc/5.3.0/874-xtensa-add-uclinux-support.patch +++ b/package/gcc/4.9.4/874-xtensa-add-uclinux-support.patch @@ -24,11 +24,11 @@ Backported from: r228450 create mode 100644 gcc/config/xtensa/uclinux.h create mode 100644 gcc/config/xtensa/uclinux.opt -diff --git a/gcc/config.gcc b/gcc/config.gcc -index c52f5a8..56797bd 100644 +Index: b/gcc/config.gcc +=================================================================== --- a/gcc/config.gcc +++ b/gcc/config.gcc -@@ -2995,6 +2995,11 @@ xtensa*-*-linux*) +@@ -2871,6 +2871,11 @@ tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h xtensa/linux.h" tmake_file="${tmake_file} xtensa/t-xtensa" ;; @@ -40,9 +40,8 @@ index c52f5a8..56797bd 100644 am33_2.0-*-linux*) tm_file="mn10300/mn10300.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h mn10300/linux.h" gas=yes gnu_ld=yes -diff --git a/gcc/config/xtensa/uclinux.h b/gcc/config/xtensa/uclinux.h -new file mode 100644 -index 0000000..4606020 +Index: b/gcc/config/xtensa/uclinux.h +=================================================================== --- /dev/null +++ b/gcc/config/xtensa/uclinux.h @@ -0,0 +1,69 @@ @@ -115,9 +114,8 @@ index 0000000..4606020 + +#undef DBX_REGISTER_NUMBER + -diff --git a/gcc/config/xtensa/uclinux.opt b/gcc/config/xtensa/uclinux.opt -new file mode 100644 -index 0000000..95ef777 +Index: b/gcc/config/xtensa/uclinux.opt +=================================================================== --- /dev/null +++ b/gcc/config/xtensa/uclinux.opt @@ -0,0 +1,32 @@ @@ -153,11 +151,11 @@ index 0000000..95ef777 +Driver JoinedOrMissing + +; This comment is to ensure we retain the blank line above. -diff --git a/libgcc/config.host b/libgcc/config.host -index 2c64756..2ee92c1 100644 +Index: b/libgcc/config.host +=================================================================== --- a/libgcc/config.host +++ b/libgcc/config.host -@@ -1295,6 +1295,11 @@ xtensa*-*-linux*) +@@ -1213,6 +1213,11 @@ tmake_file="$tmake_file xtensa/t-xtensa xtensa/t-linux t-slibgcc-libgcc" md_unwind_header=xtensa/linux-unwind.h ;; @@ -169,6 +167,3 @@ index 2c64756..2ee92c1 100644 am33_2.0-*-linux*) # Don't need crtbeginT.o from *-*-linux* default. extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o" --- -1.8.1.4 - diff --git a/package/gcc/4.9.3/880-nios2_legitimize_address.patch b/package/gcc/4.9.4/880-nios2_legitimize_address.patch similarity index 100% rename from package/gcc/4.9.3/880-nios2_legitimize_address.patch rename to package/gcc/4.9.4/880-nios2_legitimize_address.patch diff --git a/package/gcc/4.9.3/890-fix-m68k-compile.patch b/package/gcc/4.9.4/890-fix-m68k-compile.patch similarity index 100% rename from package/gcc/4.9.3/890-fix-m68k-compile.patch rename to package/gcc/4.9.4/890-fix-m68k-compile.patch diff --git a/package/gcc/4.9.3/891-fix-m68k-uclinux.patch b/package/gcc/4.9.4/891-fix-m68k-uclinux.patch similarity index 100% rename from package/gcc/4.9.3/891-fix-m68k-uclinux.patch rename to package/gcc/4.9.4/891-fix-m68k-uclinux.patch diff --git a/package/gcc/4.9.3/900-musl-support.patch b/package/gcc/4.9.4/900-musl-support.patch similarity index 99% rename from package/gcc/4.9.3/900-musl-support.patch rename to package/gcc/4.9.4/900-musl-support.patch index 90f64de916..a862d01116 100644 --- a/package/gcc/4.9.3/900-musl-support.patch +++ b/package/gcc/4.9.4/900-musl-support.patch @@ -60,7 +60,7 @@ Index: b/gcc/config.gcc *) tm_defines="$tm_defines DEFAULT_LIBC=LIBC_GLIBC" ;; -@@ -2322,6 +2325,10 @@ +@@ -2338,6 +2341,10 @@ powerpc*-*-linux*paired*) tm_file="${tm_file} rs6000/750cl.h" ;; esac @@ -308,7 +308,7 @@ Index: b/gcc/config/microblaze/linux.h =================================================================== --- a/gcc/config/microblaze/linux.h +++ b/gcc/config/microblaze/linux.h -@@ -25,7 +25,23 @@ +@@ -28,7 +28,23 @@ #undef TLS_NEEDS_GOT #define TLS_NEEDS_GOT 1 @@ -337,7 +337,7 @@ Index: b/gcc/config/rs6000/linux64.h =================================================================== --- a/gcc/config/rs6000/linux64.h +++ b/gcc/config/rs6000/linux64.h -@@ -375,17 +375,23 @@ +@@ -371,17 +371,23 @@ #endif #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" @@ -452,7 +452,7 @@ Index: b/gcc/configure =================================================================== --- a/gcc/configure +++ b/gcc/configure -@@ -27449,6 +27453,9 @@ +@@ -27601,6 +27601,9 @@ gcc_cv_target_dl_iterate_phdr=no fi ;; @@ -466,7 +466,7 @@ Index: b/gcc/configure.ac =================================================================== --- a/gcc/configure.ac +++ b/gcc/configure.ac -@@ -5108,6 +5112,9 @@ +@@ -5173,6 +5173,9 @@ gcc_cv_target_dl_iterate_phdr=no fi ;; @@ -588,7 +588,7 @@ Index: b/libstdc++-v3/configure.host =================================================================== --- a/libstdc++-v3/configure.host +++ b/libstdc++-v3/configure.host -@@ -264,6 +264,13 @@ +@@ -266,6 +266,13 @@ os_include_dir="os/bsd/freebsd" ;; gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu) @@ -602,7 +602,7 @@ Index: b/libstdc++-v3/configure.host if [ "$uclibc" = "yes" ]; then os_include_dir="os/uclibc" elif [ "$bionic" = "yes" ]; then -@@ -272,6 +279,9 @@ +@@ -274,6 +281,9 @@ os_include_dir="os/gnu-linux" fi ;; diff --git a/package/gcc/4.9.4/901-microblaze-uclibc.patch b/package/gcc/4.9.4/901-microblaze-uclibc.patch new file mode 100644 index 0000000000..82c44e149f --- /dev/null +++ b/package/gcc/4.9.4/901-microblaze-uclibc.patch @@ -0,0 +1,21 @@ +Add dynamic linker support for uClibc + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-4.9.3.orig/gcc/config/microblaze/linux.h gcc-4.9.3/gcc/config/microblaze/linux.h +--- gcc-4.9.3.orig/gcc/config/microblaze/linux.h 2016-06-04 21:21:09.430646655 +0200 ++++ gcc-4.9.3/gcc/config/microblaze/linux.h 2016-06-04 21:21:44.596003509 +0200 +@@ -36,10 +36,13 @@ + + #undef MUSL_DYNAMIC_LINKER + #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1" ++#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" + #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" + + #if DEFAULT_LIBC == LIBC_MUSL + #define DYNAMIC_LINKER MUSL_DYNAMIC_LINKER ++#elif DEFAULT_LIBC == LIBC_UCLIBC ++#define DYNAMIC_LINKER UCLIBC_DYNAMIC_LINKER + #else + #define DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER + #endif diff --git a/package/gcc/4.9.3/930-libgcc-disable-split-stack-nothreads.patch b/package/gcc/4.9.4/930-libgcc-disable-split-stack-nothreads.patch similarity index 100% rename from package/gcc/4.9.3/930-libgcc-disable-split-stack-nothreads.patch rename to package/gcc/4.9.4/930-libgcc-disable-split-stack-nothreads.patch diff --git a/package/gcc/4.9.4/940-uclinux-enable-threads.patch b/package/gcc/4.9.4/940-uclinux-enable-threads.patch new file mode 100644 index 0000000000..5108147627 --- /dev/null +++ b/package/gcc/4.9.4/940-uclinux-enable-threads.patch @@ -0,0 +1,20 @@ +Enable POSIX threads for uClinux targets +Reported upstream: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 + +Signed-off-by: Waldemar Brodkorb + +Index: b/gcc/config.gcc +=================================================================== +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -810,6 +810,9 @@ + *-*-uclinux*) + extra_options="$extra_options gnu-user.opt" + use_gcc_stdint=wrap ++ case ${enable_threads} in ++ "" | yes | posix) thread_file='posix' ;; ++ esac + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" + ;; + *-*-rdos*) diff --git a/package/gcc/5.3.0/100-uclibc-conf.patch b/package/gcc/5.4.0/100-uclibc-conf.patch similarity index 100% rename from package/gcc/5.3.0/100-uclibc-conf.patch rename to package/gcc/5.4.0/100-uclibc-conf.patch diff --git a/package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch b/package/gcc/5.4.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch similarity index 100% rename from package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch rename to package/gcc/5.4.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch diff --git a/package/gcc/5.3.0/301-missing-execinfo_h.patch b/package/gcc/5.4.0/301-missing-execinfo_h.patch similarity index 100% rename from package/gcc/5.3.0/301-missing-execinfo_h.patch rename to package/gcc/5.4.0/301-missing-execinfo_h.patch diff --git a/package/gcc/6.1.0/810-arm-softfloat-libgcc.patch b/package/gcc/5.4.0/810-arm-softfloat-libgcc.patch similarity index 100% rename from package/gcc/6.1.0/810-arm-softfloat-libgcc.patch rename to package/gcc/5.4.0/810-arm-softfloat-libgcc.patch diff --git a/package/gcc/5.3.0/830-arm_unbreak_armv4t.patch b/package/gcc/5.4.0/830-arm_unbreak_armv4t.patch similarity index 100% rename from package/gcc/5.3.0/830-arm_unbreak_armv4t.patch rename to package/gcc/5.4.0/830-arm_unbreak_armv4t.patch diff --git a/package/gcc/5.4.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch b/package/gcc/5.4.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch new file mode 100644 index 0000000000..d8c74f959e --- /dev/null +++ b/package/gcc/5.4.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch @@ -0,0 +1,68 @@ +From 89bd94250827f887b38211ac048b4006229dc9c0 Mon Sep 17 00:00:00 2001 +From: ktkachov +Date: Fri, 26 Aug 2016 10:23:20 +0000 +Subject: [PATCH] [ARM] PR target/70473: Reduce size of Cortex-A8 automaton + + PR target/70473 + * config/arm/cortex-a8-neon.md (cortex_a8_vfp_muld): Reduce + reservation duration to 15 cycles. + (cortex_a8_vfp_macs): Likewise. + (cortex_a8_vfp_macd): Likewise. + (cortex_a8_vfp_divs): Likewise. + (cortex_a8_vfp_divd): Likewise. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239772 138bc75d-0d04-0410-961f-82ee72b054a4 + +[Backport from gcc upstream commit 79f5d5e3cd5a668d5ecb2b6b0cce80ef5706ac53.] +Signed-off-by: Thomas Petazzoni +--- + gcc/config/arm/cortex-a8-neon.md | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/gcc/config/arm/cortex-a8-neon.md b/gcc/config/arm/cortex-a8-neon.md +index 04fa01e..4e6d05d 100644 +--- a/gcc/config/arm/cortex-a8-neon.md ++++ b/gcc/config/arm/cortex-a8-neon.md +@@ -357,30 +357,34 @@ + (eq_attr "type" "fmuls")) + "cortex_a8_vfp,cortex_a8_vfplite*11") + ++;; Don't model a reservation for more than 15 cycles as this explodes the ++;; state space of the automaton for little gain. It is unlikely that the ++;; scheduler will find enough instructions to hide the full latency of the ++;; instructions. + (define_insn_reservation "cortex_a8_vfp_muld" 17 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmuld")) +- "cortex_a8_vfp,cortex_a8_vfplite*16") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_macs" 21 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmacs,ffmas")) +- "cortex_a8_vfp,cortex_a8_vfplite*20") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_macd" 26 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmacd,ffmad")) +- "cortex_a8_vfp,cortex_a8_vfplite*25") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_divs" 37 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fdivs, fsqrts")) +- "cortex_a8_vfp,cortex_a8_vfplite*36") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_divd" 65 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fdivd, fsqrtd")) +- "cortex_a8_vfp,cortex_a8_vfplite*64") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + ;; Comparisons can actually take 7 cycles sometimes instead of four, + ;; but given all the other instructions lumped into type=ffarith that +-- +2.7.4 + diff --git a/package/gcc/5.3.0/840-microblaze-enable-dwarf-eh-support.patch b/package/gcc/5.4.0/840-microblaze-enable-dwarf-eh-support.patch similarity index 100% rename from package/gcc/5.3.0/840-microblaze-enable-dwarf-eh-support.patch rename to package/gcc/5.4.0/840-microblaze-enable-dwarf-eh-support.patch diff --git a/package/gcc/5.3.0/850-libstdcxx-uclibc-c99.patch b/package/gcc/5.4.0/850-libstdcxx-uclibc-c99.patch similarity index 100% rename from package/gcc/5.3.0/850-libstdcxx-uclibc-c99.patch rename to package/gcc/5.4.0/850-libstdcxx-uclibc-c99.patch diff --git a/package/gcc/5.3.0/860-cilk-wchar.patch b/package/gcc/5.4.0/860-cilk-wchar.patch similarity index 100% rename from package/gcc/5.3.0/860-cilk-wchar.patch rename to package/gcc/5.4.0/860-cilk-wchar.patch diff --git a/package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch b/package/gcc/5.4.0/870-xtensa-add-mauto-litpools-option.patch similarity index 100% rename from package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch rename to package/gcc/5.4.0/870-xtensa-add-mauto-litpools-option.patch diff --git a/package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch b/package/gcc/5.4.0/871-xtensa-reimplement-register-spilling.patch similarity index 100% rename from package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch rename to package/gcc/5.4.0/871-xtensa-reimplement-register-spilling.patch diff --git a/package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch b/package/gcc/5.4.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch similarity index 100% rename from package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch rename to package/gcc/5.4.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch diff --git a/package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch b/package/gcc/5.4.0/873-xtensa-fix-_Unwind_GetCFA.patch similarity index 100% rename from package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch rename to package/gcc/5.4.0/873-xtensa-fix-_Unwind_GetCFA.patch diff --git a/package/gcc/4.9.3/874-xtensa-add-uclinux-support.patch b/package/gcc/5.4.0/874-xtensa-add-uclinux-support.patch similarity index 100% rename from package/gcc/4.9.3/874-xtensa-add-uclinux-support.patch rename to package/gcc/5.4.0/874-xtensa-add-uclinux-support.patch diff --git a/package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch b/package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch new file mode 100644 index 0000000000..870b079e38 --- /dev/null +++ b/package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch @@ -0,0 +1,67 @@ +From 2b4b5775554c91a63ccae4ee566db696b633652e Mon Sep 17 00:00:00 2001 +From: jcmvbkbc +Date: Wed, 10 Jun 2015 15:07:40 +0000 +Subject: [PATCH] xtensa: implement trap pattern + +2015-06-10 Max Filippov +gcc/ + * config/xtensa/xtensa.h (TARGET_DEBUG): New definition. + * config/xtensa/xtensa.md (define_attr "type"): New type "trap". + (define_insn "trap"): New definition. + +Signed-off-by: Max Filippov + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224330 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/config/xtensa/xtensa.h | 1 + + gcc/config/xtensa/xtensa.md | 15 ++++++++++++++- + 2 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h +index 615f741..fb8702c 100644 +--- a/gcc/config/xtensa/xtensa.h ++++ b/gcc/config/xtensa/xtensa.h +@@ -67,6 +67,7 @@ extern unsigned xtensa_current_frame_size; + #define TARGET_THREADPTR XCHAL_HAVE_THREADPTR + #define TARGET_LOOPS XCHAL_HAVE_LOOPS + #define TARGET_WINDOWED_ABI (XSHAL_ABI == XTHAL_ABI_WINDOWED) ++#define TARGET_DEBUG XCHAL_HAVE_DEBUG + + #define TARGET_DEFAULT \ + ((XCHAL_HAVE_L32R ? 0 : MASK_CONST16) | \ +diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md +index 6d84384..a577aa3 100644 +--- a/gcc/config/xtensa/xtensa.md ++++ b/gcc/config/xtensa/xtensa.md +@@ -86,7 +86,7 @@ + ;; Attributes. + + (define_attr "type" +- "unknown,jump,call,load,store,move,arith,multi,nop,farith,fmadd,fconv,fload,fstore,mul16,mul32,div32,mac16,rsr,wsr,entry" ++ "unknown,jump,call,load,store,move,arith,multi,nop,farith,fmadd,fconv,fload,fstore,mul16,mul32,div32,mac16,rsr,wsr,entry,trap" + (const_string "unknown")) + + (define_attr "mode" +@@ -1764,6 +1764,19 @@ + [(set_attr "length" "0") + (set_attr "type" "nop")]) + ++(define_insn "trap" ++ [(trap_if (const_int 1) (const_int 0))] ++ "" ++{ ++ if (TARGET_DEBUG) ++ return "break\t1, 15"; ++ else ++ return (TARGET_DENSITY ? "ill.n" : "ill"); ++} ++ [(set_attr "type" "trap") ++ (set_attr "mode" "none") ++ (set_attr "length" "3")]) ++ + ;; Setting up a frame pointer is tricky for Xtensa because GCC doesn't + ;; know if a frame pointer is required until the reload pass, and + ;; because there may be an incoming argument value in the hard frame +-- +2.1.4 + diff --git a/package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch b/package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch new file mode 100644 index 0000000000..628268ada4 --- /dev/null +++ b/package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch @@ -0,0 +1,37 @@ +From e178289a12a829ec47dc5038d91401f65381e71d Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 29 Nov 2016 13:09:17 -0800 +Subject: [PATCH 8/8] xtensa: Fix PR target/78603 + +2016-11-29 Max Filippov +gcc/ + * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero + overhead loop start between a call and its CALL_ARG_LOCATION + note. + +Signed-off-by: Max Filippov +--- +Backported from: r242979 + + gcc/config/xtensa/xtensa.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 206ff80..36ab1e3 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -4182,7 +4182,10 @@ hwloop_optimize (hwloop_info loop) + entry_after = BB_END (entry_bb); + while (DEBUG_INSN_P (entry_after) + || (NOTE_P (entry_after) +- && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK)) ++ && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK ++ /* Make sure we don't split a call and its corresponding ++ CALL_ARG_LOCATION note. */ ++ && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION)) + entry_after = PREV_INSN (entry_after); + + emit_insn_after (seq, entry_after); +-- +2.1.4 + diff --git a/package/gcc/5.4.0/880-gcc-nios2-Add-IJMP_REGS-enum.patch b/package/gcc/5.4.0/880-gcc-nios2-Add-IJMP_REGS-enum.patch new file mode 100644 index 0000000000..7a8c843e55 --- /dev/null +++ b/package/gcc/5.4.0/880-gcc-nios2-Add-IJMP_REGS-enum.patch @@ -0,0 +1,103 @@ +From 920a898d2a04933c13eb808a513bc5822e91f70a Mon Sep 17 00:00:00 2001 +From: sandra +Date: Tue, 12 May 2015 15:57:22 +0000 +Subject: [PATCH] gcc/nios2: Add IJMP_REGS enum + +2015-05-12 Chung-Lin Tang + Sandra Loosemore + + gcc/ + * config/nios2/nios2.h (enum reg_class): Add IJMP_REGS enum + value. + (REG_CLASS_NAMES): Add "IJMP_REGS". + (REG_CLASS_CONTENTS): Add new entry for IJMP_REGS. + * config/nios2/nios2.md (indirect_jump,*tablejump): Adjust to + use new "c" register constraint. + * config/nios2/constraint.md (c): New register constraint + corresponding to IJMP_REGS. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223082 138bc75d-0d04-0410-961f-82ee72b054a4 + +[Romain: rebase on gcc 5.4] +Signed-off-by: Romain Naour +--- + gcc/config/nios2/constraints.md | 3 +++ + gcc/config/nios2/nios2.h | 11 +++++++---- + gcc/config/nios2/nios2.md | 4 ++-- + 3 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/gcc/config/nios2/constraints.md b/gcc/config/nios2/constraints.md +index f4bd9f7..735f892 100644 +--- a/gcc/config/nios2/constraints.md ++++ b/gcc/config/nios2/constraints.md +@@ -39,6 +39,9 @@ + + ;; Register constraints + ++(define_register_constraint "c" "IJMP_REGS" ++ "A register suitable for an indirect jump.") ++ + (define_register_constraint "j" "SIB_REGS" + "A register suitable for an indirect sibcall.") + +diff --git a/gcc/config/nios2/nios2.h b/gcc/config/nios2/nios2.h +index 117983d..7c329ae 100644 +--- a/gcc/config/nios2/nios2.h ++++ b/gcc/config/nios2/nios2.h +@@ -173,6 +173,7 @@ enum reg_class + { + NO_REGS, + SIB_REGS, ++ IJMP_REGS, + GP_REGS, + ALL_REGS, + LIM_REG_CLASSES +@@ -183,6 +184,7 @@ enum reg_class + #define REG_CLASS_NAMES \ + { "NO_REGS", \ + "SIB_REGS", \ ++ "IJMP_REGS", \ + "GP_REGS", \ + "ALL_REGS" } + +@@ -190,10 +192,11 @@ enum reg_class + + #define REG_CLASS_CONTENTS \ + { \ +- /* NO_REGS */ { 0, 0}, \ +- /* SIB_REGS */ { 0xfe0c, 0}, \ +- /* GP_REGS */ {~0, 0}, \ +- /* ALL_REGS */ {~0,~0} \ ++ /* NO_REGS */ { 0, 0}, \ ++ /* SIB_REGS */ { 0xfe0c, 0}, \ ++ /* IJMP_REGS */ { 0x7fffffff, 0}, \ ++ /* GP_REGS */ {~0, 0}, \ ++ /* ALL_REGS */ {~0,~0} \ + } + + +diff --git a/gcc/config/nios2/nios2.md b/gcc/config/nios2/nios2.md +index 7b35d269..36ef101 100644 +--- a/gcc/config/nios2/nios2.md ++++ b/gcc/config/nios2/nios2.md +@@ -697,7 +697,7 @@ + ; check or adjust for overflow. + + (define_insn "indirect_jump" +- [(set (pc) (match_operand:SI 0 "register_operand" "r"))] ++ [(set (pc) (match_operand:SI 0 "register_operand" "c"))] + "" + "jmp\\t%0" + [(set_attr "type" "control")]) +@@ -811,7 +811,7 @@ + + (define_insn "*tablejump" + [(set (pc) +- (match_operand:SI 0 "register_operand" "r")) ++ (match_operand:SI 0 "register_operand" "c")) + (use (label_ref (match_operand 1 "" "")))] + "" + "jmp\\t%0" +-- +2.5.5 + diff --git a/package/gcc/5.3.0/890-fix-m68k-compile.patch b/package/gcc/5.4.0/890-fix-m68k-compile.patch similarity index 100% rename from package/gcc/5.3.0/890-fix-m68k-compile.patch rename to package/gcc/5.4.0/890-fix-m68k-compile.patch diff --git a/package/gcc/5.3.0/891-fix-m68k-uclinux.patch b/package/gcc/5.4.0/891-fix-m68k-uclinux.patch similarity index 100% rename from package/gcc/5.3.0/891-fix-m68k-uclinux.patch rename to package/gcc/5.4.0/891-fix-m68k-uclinux.patch diff --git a/package/gcc/5.3.0/900-libitm-fixes-for-musl-support.patch b/package/gcc/5.4.0/900-libitm-fixes-for-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/900-libitm-fixes-for-musl-support.patch rename to package/gcc/5.4.0/900-libitm-fixes-for-musl-support.patch diff --git a/package/gcc/5.3.0/901-fixincludes-update-for-musl-support.patch b/package/gcc/5.4.0/901-fixincludes-update-for-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/901-fixincludes-update-for-musl-support.patch rename to package/gcc/5.4.0/901-fixincludes-update-for-musl-support.patch diff --git a/package/gcc/5.3.0/902-unwind-fix-for-musl.patch b/package/gcc/5.4.0/902-unwind-fix-for-musl.patch similarity index 100% rename from package/gcc/5.3.0/902-unwind-fix-for-musl.patch rename to package/gcc/5.4.0/902-unwind-fix-for-musl.patch diff --git a/package/gcc/5.3.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch b/package/gcc/5.4.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch similarity index 100% rename from package/gcc/5.3.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch rename to package/gcc/5.4.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch diff --git a/package/gcc/5.3.0/904-musl-libc-config.patch b/package/gcc/5.4.0/904-musl-libc-config.patch similarity index 100% rename from package/gcc/5.3.0/904-musl-libc-config.patch rename to package/gcc/5.4.0/904-musl-libc-config.patch diff --git a/package/gcc/5.3.0/905-add-musl-support-to-gcc.patch b/package/gcc/5.4.0/905-add-musl-support-to-gcc.patch similarity index 100% rename from package/gcc/5.3.0/905-add-musl-support-to-gcc.patch rename to package/gcc/5.4.0/905-add-musl-support-to-gcc.patch diff --git a/package/gcc/5.3.0/906-mips-musl-support.patch b/package/gcc/5.4.0/906-mips-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/906-mips-musl-support.patch rename to package/gcc/5.4.0/906-mips-musl-support.patch diff --git a/package/gcc/5.3.0/907-x86-musl-support.patch b/package/gcc/5.4.0/907-x86-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/907-x86-musl-support.patch rename to package/gcc/5.4.0/907-x86-musl-support.patch diff --git a/package/gcc/5.3.0/908-arm-musl-support.patch b/package/gcc/5.4.0/908-arm-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/908-arm-musl-support.patch rename to package/gcc/5.4.0/908-arm-musl-support.patch diff --git a/package/gcc/5.3.0/909-aarch64-musl-support.patch b/package/gcc/5.4.0/909-aarch64-musl-support.patch similarity index 100% rename from package/gcc/5.3.0/909-aarch64-musl-support.patch rename to package/gcc/5.4.0/909-aarch64-musl-support.patch diff --git a/package/gcc/5.4.0/910-microblaze-musl-and-uclibc.patch b/package/gcc/5.4.0/910-microblaze-musl-and-uclibc.patch new file mode 100644 index 0000000000..6fe4993406 --- /dev/null +++ b/package/gcc/5.4.0/910-microblaze-musl-and-uclibc.patch @@ -0,0 +1,36 @@ +Add dynamic linker support for uClibc-ng/musl + +Signed-off-by: Waldemar Brodkorb + + +diff -Nur gcc-5.4.0.orig/gcc/config/microblaze/linux.h gcc-5.4.0/gcc/config/microblaze/linux.h +--- gcc-5.4.0.orig/gcc/config/microblaze/linux.h 2015-05-28 16:08:19.000000000 +0200 ++++ gcc-5.4.0/gcc/config/microblaze/linux.h 2016-10-23 17:09:46.962010871 +0200 +@@ -28,7 +28,26 @@ + #undef TLS_NEEDS_GOT + #define TLS_NEEDS_GOT 1 + +-#define DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" ++#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++ ++#if TARGET_BIG_ENDIAN_DEFAULT == 0 /* LE */ ++#define MUSL_DYNAMIC_LINKER_E "%{EB:;:el}" ++#else ++#define MUSL_DYNAMIC_LINKER_E "%{EL:el}" ++#endif ++ ++#undef MUSL_DYNAMIC_LINKER ++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1" ++ ++#if DEFAULT_LIBC == LIBC_UCLIBC ++#define DYNAMIC_LINKER UCLIBC_DYNAMIC_LINKER ++#elif DEFAULT_LIBC == LIBC_MUSL ++#define DYNAMIC_LINKER MUSL_DYNAMIC_LINKER ++#else ++#define DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER ++#endif ++ + #undef SUBTARGET_EXTRA_SPECS + #define SUBTARGET_EXTRA_SPECS \ + { "dynamic_linker", DYNAMIC_LINKER } diff --git a/package/gcc/5.4.0/911-ppc-musl-support.patch b/package/gcc/5.4.0/911-ppc-musl-support.patch new file mode 100644 index 0000000000..f4905a4232 --- /dev/null +++ b/package/gcc/5.4.0/911-ppc-musl-support.patch @@ -0,0 +1,75 @@ +Add support for musl on ppc32 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-5.4.0.orig/gcc/config/rs6000/sysv4.h gcc-5.4.0/gcc/config/rs6000/sysv4.h +--- gcc-5.4.0.orig/gcc/config/rs6000/sysv4.h 2015-09-24 15:46:45.000000000 +0200 ++++ gcc-5.4.0/gcc/config/rs6000/sysv4.h 2016-11-27 13:12:33.226953738 +0100 +@@ -537,6 +537,9 @@ + #ifndef CC1_SECURE_PLT_DEFAULT_SPEC + #define CC1_SECURE_PLT_DEFAULT_SPEC "" + #endif ++#ifndef LINK_SECURE_PLT_DEFAULT_SPEC ++#define LINK_SECURE_PLT_DEFAULT_SPEC "" ++#endif + + /* Pass -G xxx to the compiler. */ + #undef CC1_SPEC +@@ -757,17 +760,23 @@ + + #define LINK_START_LINUX_SPEC "" + ++#define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","") ++ + #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" + #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#define MUSL_DYNAMIC_LINKER \ ++ "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" + #if DEFAULT_LIBC == LIBC_UCLIBC +-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" ++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}" ++#elif DEFAULT_LIBC == LIBC_MUSL ++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{muclibc:" U ";:" M "}}" + #elif !defined (DEFAULT_LIBC) || DEFAULT_LIBC == LIBC_GLIBC +-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" ++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{muclibc:" U ";:%{mmusl:" M ";:" G "}}" + #else + #error "Unsupported DEFAULT_LIBC" + #endif + #define GNU_USER_DYNAMIC_LINKER \ +- CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) ++ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER) + + #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +@@ -889,6 +898,7 @@ + { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ + { "link_os_default", LINK_OS_DEFAULT_SPEC }, \ + { "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \ ++ { "link_secure_plt_default", LINK_SECURE_PLT_DEFAULT_SPEC }, \ + { "cpp_os_ads", CPP_OS_ADS_SPEC }, \ + { "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \ + { "cpp_os_mvme", CPP_OS_MVME_SPEC }, \ +diff -Nur gcc-5.4.0.orig/gcc/config/rs6000/sysv4le.h gcc-5.4.0/gcc/config/rs6000/sysv4le.h +--- gcc-5.4.0.orig/gcc/config/rs6000/sysv4le.h 2015-09-24 15:46:45.000000000 +0200 ++++ gcc-5.4.0/gcc/config/rs6000/sysv4le.h 2016-11-27 13:12:33.226953738 +0100 +@@ -31,3 +31,5 @@ + /* Little-endian PowerPC64 Linux uses the ELF v2 ABI by default. */ + #define LINUX64_DEFAULT_ABI_ELFv2 + ++#undef MUSL_DYNAMIC_LINKER_E ++#define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","le") +diff -Nur gcc-5.4.0.orig/gcc/config.gcc gcc-5.4.0/gcc/config.gcc +--- gcc-5.4.0.orig/gcc/config.gcc 2015-09-10 16:17:53.000000000 +0200 ++++ gcc-5.4.0/gcc/config.gcc 2016-11-27 13:14:17.149638148 +0100 +@@ -2413,6 +2413,10 @@ + powerpc*-*-linux*paired*) + tm_file="${tm_file} rs6000/750cl.h" ;; + esac ++ case ${target} in ++ powerpc*-*-linux*-musl*) ++ enable_secureplt=yes ;; ++ esac + if test x${enable_secureplt} = xyes; then + tm_file="rs6000/secureplt.h ${tm_file}" + fi diff --git a/package/gcc/5.3.0/930-libgcc-disable-split-stack-nothreads.patch b/package/gcc/5.4.0/930-libgcc-disable-split-stack-nothreads.patch similarity index 100% rename from package/gcc/5.3.0/930-libgcc-disable-split-stack-nothreads.patch rename to package/gcc/5.4.0/930-libgcc-disable-split-stack-nothreads.patch diff --git a/package/gcc/5.4.0/940-uclinux-enable-threads.patch b/package/gcc/5.4.0/940-uclinux-enable-threads.patch new file mode 100644 index 0000000000..490a55b45d --- /dev/null +++ b/package/gcc/5.4.0/940-uclinux-enable-threads.patch @@ -0,0 +1,19 @@ +Enable POSIX threads for uClinux targets +Reported upstream: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-5.4.0.orig/gcc/config.gcc gcc-5.4.0/gcc/config.gcc +--- gcc-5.4.0.orig/gcc/config.gcc 2015-09-10 16:17:53.000000000 +0200 ++++ gcc-5.4.0/gcc/config.gcc 2016-07-01 21:26:02.772958441 +0200 +@@ -808,6 +808,9 @@ + *-*-uclinux*) + extra_options="$extra_options gnu-user.opt" + use_gcc_stdint=wrap ++ case ${enable_threads} in ++ "" | yes | posix) thread_file='posix' ;; ++ esac + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" + ;; + *-*-rdos*) diff --git a/package/gcc/5.4.0/941-mips-Add-support-for-mips-r6-musl.patch b/package/gcc/5.4.0/941-mips-Add-support-for-mips-r6-musl.patch new file mode 100644 index 0000000000..337d376b75 --- /dev/null +++ b/package/gcc/5.4.0/941-mips-Add-support-for-mips-r6-musl.patch @@ -0,0 +1,43 @@ +From 83717065090bb8b954556d1216dd9dc397dc0243 Mon Sep 17 00:00:00 2001 +From: nsz +Date: Thu, 25 Aug 2016 14:13:02 +0000 +Subject: [PATCH] [mips] Add support for mips*r6-*-musl + +gcc/ + * config/mips/linux.h (MUSL_DYNAMIC_LINKER32): Update. + (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERN32): Update. + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239760 138bc75d-0d04-0410-961f-82ee72b054a4 + +[Vincent: tweak to not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + gcc/config/mips/linux.h | 9 ++++++--- + 1 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h +index fa253b6..dc51c45 100644 +--- a/gcc/config/mips/linux.h ++++ b/gcc/config/mips/linux.h +@@ -38,10 +38,13 @@ along with GCC; see the file COPYING3. If not see + "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" + + #undef MUSL_DYNAMIC_LINKER32 +-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-mips%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKER32 \ ++ "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" + #undef MUSL_DYNAMIC_LINKER64 +-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-mips64%{EL:el}%{msoft-float:-sf}.so.1" +-#define MUSL_DYNAMIC_LINKERN32 "/lib/ld-musl-mipsn32%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKER64 \ ++ "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKERN32 \ ++ "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" + + #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" + #define GNU_USER_DYNAMIC_LINKERN32 \ +-- +2.10.0 + diff --git a/package/gcc/6.1.0/100-uclibc-conf.patch b/package/gcc/6.3.0/100-uclibc-conf.patch similarity index 100% rename from package/gcc/6.1.0/100-uclibc-conf.patch rename to package/gcc/6.3.0/100-uclibc-conf.patch diff --git a/package/gcc/6.1.0/301-missing-execinfo_h.patch b/package/gcc/6.3.0/301-missing-execinfo_h.patch similarity index 100% rename from package/gcc/6.1.0/301-missing-execinfo_h.patch rename to package/gcc/6.3.0/301-missing-execinfo_h.patch diff --git a/package/gcc/4.7.4/810-arm-softfloat-libgcc.patch b/package/gcc/6.3.0/810-arm-softfloat-libgcc.patch similarity index 70% rename from package/gcc/4.7.4/810-arm-softfloat-libgcc.patch rename to package/gcc/6.3.0/810-arm-softfloat-libgcc.patch index a3d7db014d..5efa7fd1bc 100644 --- a/package/gcc/4.7.4/810-arm-softfloat-libgcc.patch +++ b/package/gcc/6.3.0/810-arm-softfloat-libgcc.patch @@ -1,6 +1,8 @@ +Index: b/gcc/config/arm/linux-elf.h +=================================================================== --- a/gcc/config/arm/linux-elf.h +++ b/gcc/config/arm/linux-elf.h -@@ -57,7 +57,7 @@ +@@ -60,7 +60,7 @@ %{shared:-lc} \ %{!shared:%{profile:-lc_p}%{!profile:-lc}}" @@ -9,12 +11,15 @@ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" +Index: b/libgcc/config/arm/t-linux +=================================================================== --- a/libgcc/config/arm/t-linux +++ b/libgcc/config/arm/t-linux -@@ -1,6 +1,10 @@ +@@ -1,6 +1,11 @@ LIB1ASMSRC = arm/lib1funcs.S LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \ -- _arm_addsubdf3 _arm_addsubsf3 +- _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 ++ _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 \ + _arm_addsubdf3 _arm_addsubsf3 \ + _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ + _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \ diff --git a/package/gcc/6.1.0/830-arm_unbreak_armv4t.patch b/package/gcc/6.3.0/830-arm_unbreak_armv4t.patch similarity index 100% rename from package/gcc/6.1.0/830-arm_unbreak_armv4t.patch rename to package/gcc/6.3.0/830-arm_unbreak_armv4t.patch diff --git a/package/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch b/package/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch new file mode 100644 index 0000000000..af9fb1d6b2 --- /dev/null +++ b/package/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch @@ -0,0 +1,69 @@ +From 07453188b18a2cbe815917dbb893b4ebfdd793b6 Mon Sep 17 00:00:00 2001 +From: ktkachov +Date: Fri, 26 Aug 2016 10:23:20 +0000 +Subject: [PATCH] [ARM] PR target/70473: Reduce size of Cortex-A8 automaton + + PR target/70473 + * config/arm/cortex-a8-neon.md (cortex_a8_vfp_muld): Reduce + reservation duration to 15 cycles. + (cortex_a8_vfp_macs): Likewise. + (cortex_a8_vfp_macd): Likewise. + (cortex_a8_vfp_divs): Likewise. + (cortex_a8_vfp_divd): Likewise. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239772 +138bc75d-0d04-0410-961f-82ee72b054a4 + +[Backport from gcc upstream commit 79f5d5e3cd5a668d5ecb2b6b0cce80ef5706ac53.] +Signed-off-by: Thomas Petazzoni +--- + gcc/config/arm/cortex-a8-neon.md | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/gcc/config/arm/cortex-a8-neon.md b/gcc/config/arm/cortex-a8-neon.md +index 45f861f..b16c299 100644 +--- a/gcc/config/arm/cortex-a8-neon.md ++++ b/gcc/config/arm/cortex-a8-neon.md +@@ -357,30 +357,34 @@ + (eq_attr "type" "fmuls")) + "cortex_a8_vfp,cortex_a8_vfplite*11") + ++;; Don't model a reservation for more than 15 cycles as this explodes the ++;; state space of the automaton for little gain. It is unlikely that the ++;; scheduler will find enough instructions to hide the full latency of the ++;; instructions. + (define_insn_reservation "cortex_a8_vfp_muld" 17 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmuld")) +- "cortex_a8_vfp,cortex_a8_vfplite*16") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_macs" 21 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmacs,ffmas")) +- "cortex_a8_vfp,cortex_a8_vfplite*20") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_macd" 26 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fmacd,ffmad")) +- "cortex_a8_vfp,cortex_a8_vfplite*25") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_divs" 37 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fdivs, fsqrts")) +- "cortex_a8_vfp,cortex_a8_vfplite*36") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + (define_insn_reservation "cortex_a8_vfp_divd" 65 + (and (eq_attr "tune" "cortexa8") + (eq_attr "type" "fdivd, fsqrtd")) +- "cortex_a8_vfp,cortex_a8_vfplite*64") ++ "cortex_a8_vfp,cortex_a8_vfplite*15") + + ;; Comparisons can actually take 7 cycles sometimes instead of four, + ;; but given all the other instructions lumped into type=ffarith that +-- +2.7.4 + diff --git a/package/gcc/6.1.0/860-cilk-wchar.patch b/package/gcc/6.3.0/860-cilk-wchar.patch similarity index 100% rename from package/gcc/6.1.0/860-cilk-wchar.patch rename to package/gcc/6.3.0/860-cilk-wchar.patch diff --git a/package/gcc/6.3.0/870-xtensa-Fix-PR-target-78118.patch b/package/gcc/6.3.0/870-xtensa-Fix-PR-target-78118.patch new file mode 100644 index 0000000000..0598c76c2f --- /dev/null +++ b/package/gcc/6.3.0/870-xtensa-Fix-PR-target-78118.patch @@ -0,0 +1,320 @@ +From 0d2556fa652cc85b3d042e862a38dd07d454175a Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Wed, 26 Oct 2016 08:02:51 +0000 +Subject: [PATCH 1/2] xtensa: Fix PR target/78118 + +It started failing after the following commit: 32e90dc6a0cda45 ("PR +rtl-optimization/61047"). + +The change that made xtensa backend go ICE looks completely unrelated, +and indeed, the issue is caused by the side effect of +compute_frame_size() function call hidden in the +INITIAL_ELIMINATION_OFFSET macro. This call updates the value of the +xtensa_current_frame_size static variable, used in "return" instruction +predicate. Prior to the change the value of xtensa_current_frame_size was +set to 0 after the end of epilogue generation, which enabled the "return" +instruction for the CALL0 ABI, but after the change the additional +INITIAL_ELIMINATION_OFFSET calls make xtensa_current_frame_size non-zero +and "return" pattern unavailable. + +Get rid of the global xtensa_current_frame_size and +xtensa_callee_save_size variables by moving them into the +machine_function structure. Implement predicate for the "return" pattern +as a function. Don't communicate completion of epilogue generation +through zeroing of xtensa_current_frame_size, add explicit epilogue_done +variable to the machine_function structure. Don't update stack frame +layout after the completion of reload. + +2016-10-26 Max Filippov +gcc/ + * config/xtensa/xtensa-protos.h + (xtensa_use_return_instruction_p): New prototype. + * config/xtensa/xtensa.c (xtensa_current_frame_size, + xtensa_callee_save_size): Remove. + (struct machine_function): Add new fields: current_frame_size, + callee_save_size, frame_laid_out and epilogue_done. + (compute_frame_size, xtensa_expand_prologue, + xtensa_expand_epilogue): Replace xtensa_callee_save_size with + cfun->machine->callee_save_size and xtensa_current_frame_size + with cfun->machine->current_frame_size. + (compute_frame_size): Update cfun->machine->frame_laid_out and + don't update frame layout after reload completion. + (xtensa_expand_epilogue): Set cfun->machine->epilogue_done + instead of zeroing xtensa_current_frame_size. + (xtensa_use_return_instruction_p): New function. + * config/xtensa/xtensa.h (xtensa_current_frame_size): Remove + declaration. + (INITIAL_ELIMINATION_OFFSET): Use return value of + compute_frame_size instead of xtensa_current_frame_size value. + * config/xtensa/xtensa.md ("return" pattern): Use new predicate + function xtensa_use_return_instruction_p instead of inline code. + +Signed-off-by: Max Filippov +--- +Backported from: r241748 + + gcc/config/xtensa/xtensa-protos.h | 1 + + gcc/config/xtensa/xtensa.c | 82 ++++++++++++++++++++++++--------------- + gcc/config/xtensa/xtensa.h | 6 +-- + gcc/config/xtensa/xtensa.md | 2 +- + 4 files changed, 55 insertions(+), 36 deletions(-) + +diff --git a/gcc/config/xtensa/xtensa-protos.h b/gcc/config/xtensa/xtensa-protos.h +index f2ca526..873557f 100644 +--- a/gcc/config/xtensa/xtensa-protos.h ++++ b/gcc/config/xtensa/xtensa-protos.h +@@ -68,6 +68,7 @@ extern rtx xtensa_return_addr (int, rtx); + extern void xtensa_setup_frame_addresses (void); + extern int xtensa_dbx_register_number (int); + extern long compute_frame_size (int); ++extern bool xtensa_use_return_instruction_p (void); + extern void xtensa_expand_prologue (void); + extern void xtensa_expand_epilogue (void); + extern void order_regs_for_local_alloc (void); +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index 64d089b..e49f784 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -78,11 +78,6 @@ enum internal_test + can support a given mode. */ + char xtensa_hard_regno_mode_ok[(int) MAX_MACHINE_MODE][FIRST_PSEUDO_REGISTER]; + +-/* Current frame size calculated by compute_frame_size. */ +-unsigned xtensa_current_frame_size; +-/* Callee-save area size in the current frame calculated by compute_frame_size. */ +-int xtensa_callee_save_size; +- + /* Largest block move to handle in-line. */ + #define LARGEST_MOVE_RATIO 15 + +@@ -94,6 +89,13 @@ struct GTY(()) machine_function + bool vararg_a7; + rtx vararg_a7_copy; + rtx_insn *set_frame_ptr_insn; ++ /* Current frame size calculated by compute_frame_size. */ ++ unsigned current_frame_size; ++ /* Callee-save area size in the current frame calculated by ++ compute_frame_size. */ ++ int callee_save_size; ++ bool frame_laid_out; ++ bool epilogue_done; + }; + + /* Vector, indexed by hard register number, which contains 1 for a +@@ -2628,24 +2630,29 @@ compute_frame_size (int size) + { + int regno; + ++ if (reload_completed && cfun->machine->frame_laid_out) ++ return cfun->machine->current_frame_size; ++ + /* Add space for the incoming static chain value. */ + if (cfun->static_chain_decl != NULL) + size += (1 * UNITS_PER_WORD); + +- xtensa_callee_save_size = 0; ++ cfun->machine->callee_save_size = 0; + for (regno = 0; regno < FIRST_PSEUDO_REGISTER; ++regno) + { + if (xtensa_call_save_reg(regno)) +- xtensa_callee_save_size += UNITS_PER_WORD; ++ cfun->machine->callee_save_size += UNITS_PER_WORD; + } + +- xtensa_current_frame_size = ++ cfun->machine->current_frame_size = + XTENSA_STACK_ALIGN (size +- + xtensa_callee_save_size ++ + cfun->machine->callee_save_size + + crtl->outgoing_args_size + + (WINDOW_SIZE * UNITS_PER_WORD)); +- xtensa_callee_save_size = XTENSA_STACK_ALIGN (xtensa_callee_save_size); +- return xtensa_current_frame_size; ++ cfun->machine->callee_save_size = ++ XTENSA_STACK_ALIGN (cfun->machine->callee_save_size); ++ cfun->machine->frame_laid_out = true; ++ return cfun->machine->current_frame_size; + } + + +@@ -2696,6 +2703,7 @@ xtensa_expand_prologue (void) + { + int regno; + HOST_WIDE_INT offset = 0; ++ int callee_save_size = cfun->machine->callee_save_size; + + /* -128 is a limit of single addi instruction. */ + if (total_size > 0 && total_size <= 128) +@@ -2709,7 +2717,7 @@ xtensa_expand_prologue (void) + add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); + offset = total_size - UNITS_PER_WORD; + } +- else if (xtensa_callee_save_size) ++ else if (callee_save_size) + { + /* 1020 is maximal s32i offset, if the frame is bigger than that + * we move sp to the end of callee-saved save area, save and then +@@ -2717,13 +2725,13 @@ xtensa_expand_prologue (void) + if (total_size > 1024) + { + insn = emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, +- GEN_INT (-xtensa_callee_save_size))); ++ GEN_INT (-callee_save_size))); + RTX_FRAME_RELATED_P (insn) = 1; + note_rtx = gen_rtx_SET (stack_pointer_rtx, + plus_constant (Pmode, stack_pointer_rtx, +- -xtensa_callee_save_size)); ++ -callee_save_size)); + add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); +- offset = xtensa_callee_save_size - UNITS_PER_WORD; ++ offset = callee_save_size - UNITS_PER_WORD; + } + else + { +@@ -2759,13 +2767,13 @@ xtensa_expand_prologue (void) + { + rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); + emit_move_insn (tmp_reg, GEN_INT (total_size - +- xtensa_callee_save_size)); ++ callee_save_size)); + insn = emit_insn (gen_subsi3 (stack_pointer_rtx, + stack_pointer_rtx, tmp_reg)); + RTX_FRAME_RELATED_P (insn) = 1; + note_rtx = gen_rtx_SET (stack_pointer_rtx, + plus_constant (Pmode, stack_pointer_rtx, +- xtensa_callee_save_size - ++ callee_save_size - + total_size)); + add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx); + } +@@ -2833,21 +2841,21 @@ xtensa_expand_epilogue (void) + int regno; + HOST_WIDE_INT offset; + +- if (xtensa_current_frame_size > (frame_pointer_needed ? 127 : 1024)) ++ if (cfun->machine->current_frame_size > (frame_pointer_needed ? 127 : 1024)) + { + rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); +- emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size - +- xtensa_callee_save_size)); ++ emit_move_insn (tmp_reg, GEN_INT (cfun->machine->current_frame_size - ++ cfun->machine->callee_save_size)); + emit_insn (gen_addsi3 (stack_pointer_rtx, frame_pointer_needed ? + hard_frame_pointer_rtx : stack_pointer_rtx, + tmp_reg)); +- offset = xtensa_callee_save_size - UNITS_PER_WORD; ++ offset = cfun->machine->callee_save_size - UNITS_PER_WORD; + } + else + { + if (frame_pointer_needed) + emit_move_insn (stack_pointer_rtx, hard_frame_pointer_rtx); +- offset = xtensa_current_frame_size - UNITS_PER_WORD; ++ offset = cfun->machine->current_frame_size - UNITS_PER_WORD; + } + + /* Prevent reordering of saved a0 update and loading it back from +@@ -2867,16 +2875,16 @@ xtensa_expand_epilogue (void) + } + } + +- if (xtensa_current_frame_size > 0) ++ if (cfun->machine->current_frame_size > 0) + { + if (frame_pointer_needed || /* always reachable with addi */ +- xtensa_current_frame_size > 1024 || +- xtensa_current_frame_size <= 127) ++ cfun->machine->current_frame_size > 1024 || ++ cfun->machine->current_frame_size <= 127) + { +- if (xtensa_current_frame_size <= 127) +- offset = xtensa_current_frame_size; ++ if (cfun->machine->current_frame_size <= 127) ++ offset = cfun->machine->current_frame_size; + else +- offset = xtensa_callee_save_size; ++ offset = cfun->machine->callee_save_size; + + emit_insn (gen_addsi3 (stack_pointer_rtx, + stack_pointer_rtx, +@@ -2885,7 +2893,8 @@ xtensa_expand_epilogue (void) + else + { + rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG); +- emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size)); ++ emit_move_insn (tmp_reg, ++ GEN_INT (cfun->machine->current_frame_size)); + emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, + tmp_reg)); + } +@@ -2896,11 +2905,22 @@ xtensa_expand_epilogue (void) + stack_pointer_rtx, + EH_RETURN_STACKADJ_RTX)); + } +- xtensa_current_frame_size = 0; +- xtensa_callee_save_size = 0; ++ cfun->machine->epilogue_done = true; + emit_jump_insn (gen_return ()); + } + ++bool ++xtensa_use_return_instruction_p (void) ++{ ++ if (!reload_completed) ++ return false; ++ if (TARGET_WINDOWED_ABI) ++ return true; ++ if (compute_frame_size (get_frame_size ()) == 0) ++ return true; ++ return cfun->machine->epilogue_done; ++} ++ + void + xtensa_set_return_address (rtx address, rtx scratch) + { +diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h +index 82e9900..58eb1b2 100644 +--- a/gcc/config/xtensa/xtensa.h ++++ b/gcc/config/xtensa/xtensa.h +@@ -23,8 +23,6 @@ along with GCC; see the file COPYING3. If not see + + /* External variables defined in xtensa.c. */ + +-extern unsigned xtensa_current_frame_size; +- + /* Macros used in the machine description to select various Xtensa + configuration options. */ + #ifndef XCHAL_HAVE_MUL32_HIGH +@@ -477,14 +475,14 @@ enum reg_class + /* Specify the initial difference between the specified pair of registers. */ + #define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET) \ + do { \ +- compute_frame_size (get_frame_size ()); \ ++ long frame_size = compute_frame_size (get_frame_size ()); \ + switch (FROM) \ + { \ + case FRAME_POINTER_REGNUM: \ + (OFFSET) = 0; \ + break; \ + case ARG_POINTER_REGNUM: \ +- (OFFSET) = xtensa_current_frame_size; \ ++ (OFFSET) = frame_size; \ + break; \ + default: \ + gcc_unreachable (); \ +diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md +index db54a12..fcdb6c8 100644 +--- a/gcc/config/xtensa/xtensa.md ++++ b/gcc/config/xtensa/xtensa.md +@@ -1663,7 +1663,7 @@ + (define_insn "return" + [(return) + (use (reg:SI A0_REG))] +- "(TARGET_WINDOWED_ABI || !xtensa_current_frame_size) && reload_completed" ++ "xtensa_use_return_instruction_p ()" + { + return TARGET_WINDOWED_ABI ? + (TARGET_DENSITY ? "retw.n" : "retw") : +-- +2.1.4 + diff --git a/package/gcc/6.3.0/871-xtensa-Fix-PR-target-78603.patch b/package/gcc/6.3.0/871-xtensa-Fix-PR-target-78603.patch new file mode 100644 index 0000000000..0331814398 --- /dev/null +++ b/package/gcc/6.3.0/871-xtensa-Fix-PR-target-78603.patch @@ -0,0 +1,37 @@ +From 59cce7b304a8cbbb508ba21ab2f9052d3ee9a9e3 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 29 Nov 2016 13:09:17 -0800 +Subject: [PATCH 2/2] xtensa: Fix PR target/78603 + +2016-11-29 Max Filippov +gcc/ + * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero + overhead loop start between a call and its CALL_ARG_LOCATION + note. + +Signed-off-by: Max Filippov +--- +Backported from: r242979 + + gcc/config/xtensa/xtensa.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index e49f784..70f698a 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -4158,7 +4158,10 @@ hwloop_optimize (hwloop_info loop) + entry_after = BB_END (entry_bb); + while (DEBUG_INSN_P (entry_after) + || (NOTE_P (entry_after) +- && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK)) ++ && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK ++ /* Make sure we don't split a call and its corresponding ++ CALL_ARG_LOCATION note. */ ++ && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION)) + entry_after = PREV_INSN (entry_after); + + emit_insn_after (seq, entry_after); +-- +2.1.4 + diff --git a/package/gcc/6.1.0/890-fix-m68k-compile.patch b/package/gcc/6.3.0/890-fix-m68k-compile.patch similarity index 100% rename from package/gcc/6.1.0/890-fix-m68k-compile.patch rename to package/gcc/6.3.0/890-fix-m68k-compile.patch diff --git a/package/gcc/6.1.0/891-fix-m68k-uclinux.patch b/package/gcc/6.3.0/891-fix-m68k-uclinux.patch similarity index 100% rename from package/gcc/6.1.0/891-fix-m68k-uclinux.patch rename to package/gcc/6.3.0/891-fix-m68k-uclinux.patch diff --git a/package/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch b/package/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch new file mode 100644 index 0000000000..73ee6c5faa --- /dev/null +++ b/package/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch @@ -0,0 +1,60 @@ +From ae9c3e354440c4a0f105a9eabfb2f77be085ebc1 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 18 Aug 2016 17:59:16 +0200 +Subject: [PATCH] libgcc/mkmap-symver: support skip_underscore + +Some platforms, such as Blackfin, have a special prefix for assembly +symbols as opposed to C symbols. For this reason, a function named +"foo()" in C will in fact be visible as a symbol called "_foo" in the +ELF binary. + +The current linker version script logic in libgcc doesn't take into +account this situation properly. The Blackfin specific +libgcc/config/bfin/libgcc-glibc.ver has an additional "_" in front of +every symbol so that it matches the output of "nm" (which gets parsed to +produce the final linker version script). But due to this additional +"_", ld no longer matches with the symbols since "ld" does the matching +with the original symbol name, not the one prefixed with "_". + +Due to this, none of the symbols in libgcc/config/bfin/libgcc-glibc.ver +are actually matched with symbols in libgcc. This causes all libgcc +symbols to be left as "LOCAL", which causes lots of "undefined +reference" whenever some C or C++ code that calls a function of libgcc +is compiled. + +To address this, this commit introduces a "skip_underscore" variable to +the mkmap-symver script. It tells mkmap-symver to ignore the leading +underscore from the "nm" output. + +Note that this new argument is different from the existing +"leading_underscore" argument, which *adds* an additional underscore to +the generated linker version script. + +Having this functionality paves the way to using the generic linker +version information for Blackfin, instead of using a custom one. + +Signed-off-by: Thomas Petazzoni +--- + libgcc/mkmap-symver.awk | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/libgcc/mkmap-symver.awk b/libgcc/mkmap-symver.awk +index 266832a..30bb179 100644 +--- a/libgcc/mkmap-symver.awk ++++ b/libgcc/mkmap-symver.awk +@@ -47,7 +47,11 @@ state == "nm" && ($1 == "U" || $2 == "U") { + + state == "nm" && NF == 3 { + split ($3, s, "@") +- def[s[1]] = 1; ++ if (skip_underscore) ++ symname = substr(s[1], 2); ++ else ++ symname = s[1]; ++ def[symname] = 1; + sawsymbol = 1; + next; + } +-- +2.7.4 + diff --git a/package/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch b/package/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch new file mode 100644 index 0000000000..454295d0ed --- /dev/null +++ b/package/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch @@ -0,0 +1,1944 @@ +From 56d606931716de30a89a40dc69a9282c1b4e2880 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 18 Aug 2016 18:04:06 +0200 +Subject: [PATCH] libgcc/config/bfin: use the generic linker version + information + +This commit makes the Blackfin platform use the generic linker version +information, rather than a completely duplicated file, specific for the +Blackfin architecture. + +This is made possible using the newly introduced skip_underscore +variable of the mkmap-symver script. + +This also allows to get a correct linker version file, with symbol names +matching the ones found in libgcc. Thanks to this, the necessary symbols +are marked "GLOBAL" instead of "LOCAL", which makes them visible at link +time, and solves a large number of "undefined reference" +issues. Indeed, the Blackfin specific linker version script had an extra +underscore in front of all symbols, which meant none of them matched the +symbols in libgcc, and therefore all libgcc symbols were marked as +"LOCAL", making them invisible for linking. + +Signed-off-by: Thomas Petazzoni +--- + libgcc/config/bfin/libgcc-glibc.ver | 1894 +---------------------------------- + libgcc/config/bfin/t-linux | 3 +- + 2 files changed, 4 insertions(+), 1893 deletions(-) + +diff --git a/libgcc/config/bfin/libgcc-glibc.ver b/libgcc/config/bfin/libgcc-glibc.ver +index b1bd2df..2af3df7 100644 +--- a/libgcc/config/bfin/libgcc-glibc.ver ++++ b/libgcc/config/bfin/libgcc-glibc.ver +@@ -16,1898 +16,8 @@ + # along with GCC; see the file COPYING3. If not see + # . + +-GCC_3.0 { +- # libgcc1 integer symbols +- ___absvsi2 +- ___addvsi3 +- ___ashlsi3 +- ___ashrsi3 +- ___divsi3 +- ___lshrsi3 +- ___modsi3 +- ___mulsi3 +- ___mulvsi3 +- ___negvsi2 +- ___subvsi3 +- ___udivsi3 +- ___umodsi3 +- +- # libgcc1 floating point symbols +- ___addsf3 +- ___adddf3 +- ___addxf3 +- ___addtf3 +- ___divsf3 +- ___divdf3 +- ___divxf3 +- ___divtf3 +- ___eqsf2 +- ___eqdf2 +- ___eqxf2 +- ___eqtf2 +- ___extenddfxf2 +- ___extenddftf2 +- ___extendsfdf2 +- ___extendsfxf2 +- ___extendsftf2 +- ___fixsfsi +- ___fixdfsi +- ___fixxfsi +- ___fixtfsi +- ___floatsisf +- ___floatsidf +- ___floatsixf +- ___floatsitf +- ___gesf2 +- ___gedf2 +- ___gexf2 +- ___getf2 +- ___gtsf2 +- ___gtdf2 +- ___gtxf2 +- ___gttf2 +- ___lesf2 +- ___ledf2 +- ___lexf2 +- ___letf2 +- ___ltsf2 +- ___ltdf2 +- ___ltxf2 +- ___lttf2 +- ___mulsf3 +- ___muldf3 +- ___mulxf3 +- ___multf3 +- ___negsf2 +- ___negdf2 +- ___negxf2 +- ___negtf2 +- ___nesf2 +- ___nedf2 +- ___nexf2 +- ___netf2 +- ___subsf3 +- ___subdf3 +- ___subxf3 +- ___subtf3 +- ___truncdfsf2 +- ___truncxfsf2 +- ___trunctfsf2 +- ___truncxfdf2 +- ___trunctfdf2 +- +- # libgcc2 DImode arithmetic (for 32-bit targets). +- ___absvdi2 +- ___addvdi3 +- ___ashldi3 +- ___ashrdi3 +- ___cmpdi2 +- ___divdi3 +- ___ffsdi2 +- ___fixdfdi +- ___fixsfdi +- ___fixtfdi +- ___fixxfdi +- ___fixunsdfdi +- ___fixunsdfsi +- ___fixunssfsi +- ___fixunssfdi +- ___fixunstfdi +- ___fixunstfsi +- ___fixunsxfdi +- ___fixunsxfsi +- ___floatdidf +- ___floatdisf +- ___floatdixf +- ___floatditf +- ___lshrdi3 +- ___moddi3 +- ___muldi3 +- ___mulvdi3 +- ___negdi2 +- ___negvdi2 +- ___subvdi3 +- ___ucmpdi2 +- ___udivdi3 +- ___udivmoddi4 +- ___umoddi3 +- +- # libgcc2 TImode arithmetic (for 64-bit targets). +- ___ashlti3 +- ___ashrti3 +- ___cmpti2 +- ___divti3 +- ___ffsti2 +- ___fixdfti +- ___fixsfti +- ___fixtfti +- ___fixxfti +- ___lshrti3 +- ___modti3 +- ___multi3 +- ___negti2 +- ___ucmpti2 +- ___udivmodti4 +- ___udivti3 +- ___umodti3 +- ___fixunsdfti +- ___fixunssfti +- ___fixunstfti +- ___fixunsxfti +- ___floattidf +- ___floattisf +- ___floattixf +- ___floattitf +- +- # Used to deal with trampoline initialization on some platforms +- ___clear_cache +- +- # EH symbols +- __Unwind_DeleteException +- __Unwind_Find_FDE +- __Unwind_ForcedUnwind +- __Unwind_GetGR +- __Unwind_GetIP +- __Unwind_GetLanguageSpecificData +- __Unwind_GetRegionStart +- __Unwind_GetTextRelBase +- __Unwind_GetDataRelBase +- __Unwind_RaiseException +- __Unwind_Resume +- __Unwind_SetGR +- __Unwind_SetIP +- ___deregister_frame +- ___deregister_frame_info +- ___deregister_frame_info_bases +- ___register_frame +- ___register_frame_info +- ___register_frame_info_bases +- ___register_frame_info_table +- ___register_frame_info_table_bases +- ___register_frame_table +- +- # SjLj EH symbols +- __Unwind_SjLj_Register +- __Unwind_SjLj_Unregister +- __Unwind_SjLj_RaiseException +- __Unwind_SjLj_ForcedUnwind +- __Unwind_SjLj_Resume +-} +- +-%inherit GCC_3.3 GCC_3.0 +-GCC_3.3 { +- __Unwind_FindEnclosingFunction +- __Unwind_GetCFA +- __Unwind_Backtrace +- __Unwind_Resume_or_Rethrow +- __Unwind_SjLj_Resume_or_Rethrow +-} +- +-%inherit GCC_3.3.1 GCC_3.3 +-GCC_3.3.1 { +- ___gcc_personality_sj0 +- ___gcc_personality_v0 +-} +- +-%inherit GCC_3.3.2 GCC_3.3.1 +-GCC_3.3.2 { +-} +-%inherit GCC_3.3.4 GCC_3.3.2 +-GCC_3.3.4 { +- ___unorddf2 +- ___unordsf2 +-} +- +-%inherit GCC_3.4 GCC_3.3.4 +-GCC_3.4 { +- # bit scanning and counting built-ins +- ___clzsi2 +- ___clzdi2 +- ___clzti2 +- ___ctzsi2 +- ___ctzdi2 +- ___ctzti2 +- ___popcountsi2 +- ___popcountdi2 +- ___popcountti2 +- ___paritysi2 +- ___paritydi2 +- ___parityti2 +-} +- +-%inherit GCC_3.4.2 GCC_3.4 +-GCC_3.4.2 { +- # Used to deal with trampoline initialization on some platforms +- ___enable_execute_stack +- ___trampoline_setup +-} +- +-%inherit GCC_3.4.4 GCC_3.4.2 +-GCC_3.4.4 { +- # libgcc2 TImode arithmetic (for 64-bit targets). +- ___absvti2 +- ___addvti3 +- ___mulvti3 +- ___negvti2 +- ___subvti3 +-} +- +-%inherit GCC_4.0.0 GCC_3.4.4 +-GCC_4.0.0 { +- # libgcc2 __builtin_powi helpers. +- ___powisf2 +- ___powidf2 +- ___powixf2 +- ___powitf2 +- +- # c99 compliant complex arithmetic +- ___divsc3 +- ___divdc3 +- ___divxc3 +- ___divtc3 +- ___mulsc3 +- ___muldc3 +- ___mulxc3 +- ___multc3 +-} +- + %inherit GCC_4.1.0 GCC_4.0.0 + GCC_4.1.0 { +- ___smulsi3_highpart +- ___umulsi3_highpart +-} +- +-%inherit GCC_4.2.0 GCC_4.1.0 +-GCC_4.2.0 { +- # unsigned-to-floating conversions +- ___floatunsisf +- ___floatunsidf +- ___floatunsixf +- ___floatunsitf +- ___floatundidf +- ___floatundisf +- ___floatundixf +- ___floatunditf +- ___floatuntidf +- ___floatuntisf +- ___floatuntixf +- ___floatuntitf +- __Unwind_GetIPInfo +-} +- +-%inherit GCC_4.3.0 GCC_4.2.0 +-GCC_4.3.0 { +- # byte swapping routines +- ___bswapsi2 +- ___bswapdi2 +- ___emutls_get_address +- ___emutls_register_common +- ___ffssi2 +- ___extendxftf2 +- ___trunctfxf2 +- +- # fixed-point routines +- ___addqq3 +- ___addhq3 +- ___addsq3 +- ___adddq3 +- ___addtq3 +- ___adduqq3 +- ___adduhq3 +- ___addusq3 +- ___addudq3 +- ___addutq3 +- ___addha3 +- ___addsa3 +- ___addda3 +- ___addta3 +- ___adduha3 +- ___addusa3 +- ___adduda3 +- ___adduta3 +- ___ssaddqq3 +- ___ssaddhq3 +- ___ssaddsq3 +- ___ssadddq3 +- ___ssaddtq3 +- ___ssaddha3 +- ___ssaddsa3 +- ___ssaddda3 +- ___ssaddta3 +- ___usadduqq3 +- ___usadduhq3 +- ___usaddusq3 +- ___usaddudq3 +- ___usaddutq3 +- ___usadduha3 +- ___usaddusa3 +- ___usadduda3 +- ___usadduta3 +- ___subqq3 +- ___subhq3 +- ___subsq3 +- ___subdq3 +- ___subtq3 +- ___subuqq3 +- ___subuhq3 +- ___subusq3 +- ___subudq3 +- ___subutq3 +- ___subha3 +- ___subsa3 +- ___subda3 +- ___subta3 +- ___subuha3 +- ___subusa3 +- ___subuda3 +- ___subuta3 +- ___sssubqq3 +- ___sssubhq3 +- ___sssubsq3 +- ___sssubdq3 +- ___sssubtq3 +- ___sssubha3 +- ___sssubsa3 +- ___sssubda3 +- ___sssubta3 +- ___ussubuqq3 +- ___ussubuhq3 +- ___ussubusq3 +- ___ussubudq3 +- ___ussubutq3 +- ___ussubuha3 +- ___ussubusa3 +- ___ussubuda3 +- ___ussubuta3 +- ___mulqq3 +- ___mulhq3 +- ___mulsq3 +- ___muldq3 +- ___multq3 +- ___muluqq3 +- ___muluhq3 +- ___mulusq3 +- ___muludq3 +- ___mulutq3 +- ___mulha3 +- ___mulsa3 +- ___mulda3 +- ___multa3 +- ___muluha3 +- ___mulusa3 +- ___muluda3 +- ___muluta3 +- ___ssmulqq3 +- ___ssmulhq3 +- ___ssmulsq3 +- ___ssmuldq3 +- ___ssmultq3 +- ___ssmulha3 +- ___ssmulsa3 +- ___ssmulda3 +- ___ssmulta3 +- ___usmuluqq3 +- ___usmuluhq3 +- ___usmulusq3 +- ___usmuludq3 +- ___usmulutq3 +- ___usmuluha3 +- ___usmulusa3 +- ___usmuluda3 +- ___usmuluta3 +- ___divqq3 +- ___divhq3 +- ___divsq3 +- ___divdq3 +- ___divtq3 +- ___divha3 +- ___divsa3 +- ___divda3 +- ___divta3 +- ___udivuqq3 +- ___udivuhq3 +- ___udivusq3 +- ___udivudq3 +- ___udivutq3 +- ___udivuha3 +- ___udivusa3 +- ___udivuda3 +- ___udivuta3 +- ___ssdivqq3 +- ___ssdivhq3 +- ___ssdivsq3 +- ___ssdivdq3 +- ___ssdivtq3 +- ___ssdivha3 +- ___ssdivsa3 +- ___ssdivda3 +- ___ssdivta3 +- ___usdivuqq3 +- ___usdivuhq3 +- ___usdivusq3 +- ___usdivudq3 +- ___usdivutq3 +- ___usdivuha3 +- ___usdivusa3 +- ___usdivuda3 +- ___usdivuta3 +- ___negqq2 +- ___neghq2 +- ___negsq2 +- ___negdq2 +- ___negtq2 +- ___neguqq2 +- ___neguhq2 +- ___negusq2 +- ___negudq2 +- ___negutq2 +- ___negha2 +- ___negsa2 +- ___negda2 +- ___negta2 +- ___neguha2 +- ___negusa2 +- ___neguda2 +- ___neguta2 +- ___ssnegqq2 +- ___ssneghq2 +- ___ssnegsq2 +- ___ssnegdq2 +- ___ssnegtq2 +- ___ssnegha2 +- ___ssnegsa2 +- ___ssnegda2 +- ___ssnegta2 +- ___usneguqq2 +- ___usneguhq2 +- ___usnegusq2 +- ___usnegudq2 +- ___usnegutq2 +- ___usneguha2 +- ___usnegusa2 +- ___usneguda2 +- ___usneguta2 +- ___ashlqq3 +- ___ashlhq3 +- ___ashlsq3 +- ___ashldq3 +- ___ashltq3 +- ___ashluqq3 +- ___ashluhq3 +- ___ashlusq3 +- ___ashludq3 +- ___ashlutq3 +- ___ashlha3 +- ___ashlsa3 +- ___ashlda3 +- ___ashlta3 +- ___ashluha3 +- ___ashlusa3 +- ___ashluda3 +- ___ashluta3 +- ___ashrqq3 +- ___ashrhq3 +- ___ashrsq3 +- ___ashrdq3 +- ___ashrtq3 +- ___ashrha3 +- ___ashrsa3 +- ___ashrda3 +- ___ashrta3 +- ___lshruqq3 +- ___lshruhq3 +- ___lshrusq3 +- ___lshrudq3 +- ___lshrutq3 +- ___lshruha3 +- ___lshrusa3 +- ___lshruda3 +- ___lshruta3 +- ___ssashlqq3 +- ___ssashlhq3 +- ___ssashlsq3 +- ___ssashldq3 +- ___ssashltq3 +- ___ssashlha3 +- ___ssashlsa3 +- ___ssashlda3 +- ___ssashlta3 +- ___usashluqq3 +- ___usashluhq3 +- ___usashlusq3 +- ___usashludq3 +- ___usashlutq3 +- ___usashluha3 +- ___usashlusa3 +- ___usashluda3 +- ___usashluta3 +- ___cmpqq2 +- ___cmphq2 +- ___cmpsq2 +- ___cmpdq2 +- ___cmptq2 +- ___cmpuqq2 +- ___cmpuhq2 +- ___cmpusq2 +- ___cmpudq2 +- ___cmputq2 +- ___cmpha2 +- ___cmpsa2 +- ___cmpda2 +- ___cmpta2 +- ___cmpuha2 +- ___cmpusa2 +- ___cmpuda2 +- ___cmputa2 +- ___fractqqhq2 +- ___fractqqsq2 +- ___fractqqdq2 +- ___fractqqtq2 +- ___fractqqha +- ___fractqqsa +- ___fractqqda +- ___fractqqta +- ___fractqquqq +- ___fractqquhq +- ___fractqqusq +- ___fractqqudq +- ___fractqqutq +- ___fractqquha +- ___fractqqusa +- ___fractqquda +- ___fractqquta +- ___fractqqqi +- ___fractqqhi +- ___fractqqsi +- ___fractqqdi +- ___fractqqti +- ___fractqqsf +- ___fractqqdf +- ___fracthqqq2 +- ___fracthqsq2 +- ___fracthqdq2 +- ___fracthqtq2 +- ___fracthqha +- ___fracthqsa +- ___fracthqda +- ___fracthqta +- ___fracthquqq +- ___fracthquhq +- ___fracthqusq +- ___fracthqudq +- ___fracthqutq +- ___fracthquha +- ___fracthqusa +- ___fracthquda +- ___fracthquta +- ___fracthqqi +- ___fracthqhi +- ___fracthqsi +- ___fracthqdi +- ___fracthqti +- ___fracthqsf +- ___fracthqdf +- ___fractsqqq2 +- ___fractsqhq2 +- ___fractsqdq2 +- ___fractsqtq2 +- ___fractsqha +- ___fractsqsa +- ___fractsqda +- ___fractsqta +- ___fractsquqq +- ___fractsquhq +- ___fractsqusq +- ___fractsqudq +- ___fractsqutq +- ___fractsquha +- ___fractsqusa +- ___fractsquda +- ___fractsquta +- ___fractsqqi +- ___fractsqhi +- ___fractsqsi +- ___fractsqdi +- ___fractsqti +- ___fractsqsf +- ___fractsqdf +- ___fractdqqq2 +- ___fractdqhq2 +- ___fractdqsq2 +- ___fractdqtq2 +- ___fractdqha +- ___fractdqsa +- ___fractdqda +- ___fractdqta +- ___fractdquqq +- ___fractdquhq +- ___fractdqusq +- ___fractdqudq +- ___fractdqutq +- ___fractdquha +- ___fractdqusa +- ___fractdquda +- ___fractdquta +- ___fractdqqi +- ___fractdqhi +- ___fractdqsi +- ___fractdqdi +- ___fractdqti +- ___fractdqsf +- ___fractdqdf +- ___fracttqqq2 +- ___fracttqhq2 +- ___fracttqsq2 +- ___fracttqdq2 +- ___fracttqha +- ___fracttqsa +- ___fracttqda +- ___fracttqta +- ___fracttquqq +- ___fracttquhq +- ___fracttqusq +- ___fracttqudq +- ___fracttqutq +- ___fracttquha +- ___fracttqusa +- ___fracttquda +- ___fracttquta +- ___fracttqqi +- ___fracttqhi +- ___fracttqsi +- ___fracttqdi +- ___fracttqti +- ___fracttqsf +- ___fracttqdf +- ___fracthaqq +- ___fracthahq +- ___fracthasq +- ___fracthadq +- ___fracthatq +- ___fracthasa2 +- ___fracthada2 +- ___fracthata2 +- ___fracthauqq +- ___fracthauhq +- ___fracthausq +- ___fracthaudq +- ___fracthautq +- ___fracthauha +- ___fracthausa +- ___fracthauda +- ___fracthauta +- ___fracthaqi +- ___fracthahi +- ___fracthasi +- ___fracthadi +- ___fracthati +- ___fracthasf +- ___fracthadf +- ___fractsaqq +- ___fractsahq +- ___fractsasq +- ___fractsadq +- ___fractsatq +- ___fractsaha2 +- ___fractsada2 +- ___fractsata2 +- ___fractsauqq +- ___fractsauhq +- ___fractsausq +- ___fractsaudq +- ___fractsautq +- ___fractsauha +- ___fractsausa +- ___fractsauda +- ___fractsauta +- ___fractsaqi +- ___fractsahi +- ___fractsasi +- ___fractsadi +- ___fractsati +- ___fractsasf +- ___fractsadf +- ___fractdaqq +- ___fractdahq +- ___fractdasq +- ___fractdadq +- ___fractdatq +- ___fractdaha2 +- ___fractdasa2 +- ___fractdata2 +- ___fractdauqq +- ___fractdauhq +- ___fractdausq +- ___fractdaudq +- ___fractdautq +- ___fractdauha +- ___fractdausa +- ___fractdauda +- ___fractdauta +- ___fractdaqi +- ___fractdahi +- ___fractdasi +- ___fractdadi +- ___fractdati +- ___fractdasf +- ___fractdadf +- ___fracttaqq +- ___fracttahq +- ___fracttasq +- ___fracttadq +- ___fracttatq +- ___fracttaha2 +- ___fracttasa2 +- ___fracttada2 +- ___fracttauqq +- ___fracttauhq +- ___fracttausq +- ___fracttaudq +- ___fracttautq +- ___fracttauha +- ___fracttausa +- ___fracttauda +- ___fracttauta +- ___fracttaqi +- ___fracttahi +- ___fracttasi +- ___fracttadi +- ___fracttati +- ___fracttasf +- ___fracttadf +- ___fractuqqqq +- ___fractuqqhq +- ___fractuqqsq +- ___fractuqqdq +- ___fractuqqtq +- ___fractuqqha +- ___fractuqqsa +- ___fractuqqda +- ___fractuqqta +- ___fractuqquhq2 +- ___fractuqqusq2 +- ___fractuqqudq2 +- ___fractuqqutq2 +- ___fractuqquha +- ___fractuqqusa +- ___fractuqquda +- ___fractuqquta +- ___fractuqqqi +- ___fractuqqhi +- ___fractuqqsi +- ___fractuqqdi +- ___fractuqqti +- ___fractuqqsf +- ___fractuqqdf +- ___fractuhqqq +- ___fractuhqhq +- ___fractuhqsq +- ___fractuhqdq +- ___fractuhqtq +- ___fractuhqha +- ___fractuhqsa +- ___fractuhqda +- ___fractuhqta +- ___fractuhquqq2 +- ___fractuhqusq2 +- ___fractuhqudq2 +- ___fractuhqutq2 +- ___fractuhquha +- ___fractuhqusa +- ___fractuhquda +- ___fractuhquta +- ___fractuhqqi +- ___fractuhqhi +- ___fractuhqsi +- ___fractuhqdi +- ___fractuhqti +- ___fractuhqsf +- ___fractuhqdf +- ___fractusqqq +- ___fractusqhq +- ___fractusqsq +- ___fractusqdq +- ___fractusqtq +- ___fractusqha +- ___fractusqsa +- ___fractusqda +- ___fractusqta +- ___fractusquqq2 +- ___fractusquhq2 +- ___fractusqudq2 +- ___fractusqutq2 +- ___fractusquha +- ___fractusqusa +- ___fractusquda +- ___fractusquta +- ___fractusqqi +- ___fractusqhi +- ___fractusqsi +- ___fractusqdi +- ___fractusqti +- ___fractusqsf +- ___fractusqdf +- ___fractudqqq +- ___fractudqhq +- ___fractudqsq +- ___fractudqdq +- ___fractudqtq +- ___fractudqha +- ___fractudqsa +- ___fractudqda +- ___fractudqta +- ___fractudquqq2 +- ___fractudquhq2 +- ___fractudqusq2 +- ___fractudqutq2 +- ___fractudquha +- ___fractudqusa +- ___fractudquda +- ___fractudquta +- ___fractudqqi +- ___fractudqhi +- ___fractudqsi +- ___fractudqdi +- ___fractudqti +- ___fractudqsf +- ___fractudqdf +- ___fractutqqq +- ___fractutqhq +- ___fractutqsq +- ___fractutqdq +- ___fractutqtq +- ___fractutqha +- ___fractutqsa +- ___fractutqda +- ___fractutqta +- ___fractutquqq2 +- ___fractutquhq2 +- ___fractutqusq2 +- ___fractutqudq2 +- ___fractutquha +- ___fractutqusa +- ___fractutquda +- ___fractutquta +- ___fractutqqi +- ___fractutqhi +- ___fractutqsi +- ___fractutqdi +- ___fractutqti +- ___fractutqsf +- ___fractutqdf +- ___fractuhaqq +- ___fractuhahq +- ___fractuhasq +- ___fractuhadq +- ___fractuhatq +- ___fractuhaha +- ___fractuhasa +- ___fractuhada +- ___fractuhata +- ___fractuhauqq +- ___fractuhauhq +- ___fractuhausq +- ___fractuhaudq +- ___fractuhautq +- ___fractuhausa2 +- ___fractuhauda2 +- ___fractuhauta2 +- ___fractuhaqi +- ___fractuhahi +- ___fractuhasi +- ___fractuhadi +- ___fractuhati +- ___fractuhasf +- ___fractuhadf +- ___fractusaqq +- ___fractusahq +- ___fractusasq +- ___fractusadq +- ___fractusatq +- ___fractusaha +- ___fractusasa +- ___fractusada +- ___fractusata +- ___fractusauqq +- ___fractusauhq +- ___fractusausq +- ___fractusaudq +- ___fractusautq +- ___fractusauha2 +- ___fractusauda2 +- ___fractusauta2 +- ___fractusaqi +- ___fractusahi +- ___fractusasi +- ___fractusadi +- ___fractusati +- ___fractusasf +- ___fractusadf +- ___fractudaqq +- ___fractudahq +- ___fractudasq +- ___fractudadq +- ___fractudatq +- ___fractudaha +- ___fractudasa +- ___fractudada +- ___fractudata +- ___fractudauqq +- ___fractudauhq +- ___fractudausq +- ___fractudaudq +- ___fractudautq +- ___fractudauha2 +- ___fractudausa2 +- ___fractudauta2 +- ___fractudaqi +- ___fractudahi +- ___fractudasi +- ___fractudadi +- ___fractudati +- ___fractudasf +- ___fractudadf +- ___fractutaqq +- ___fractutahq +- ___fractutasq +- ___fractutadq +- ___fractutatq +- ___fractutaha +- ___fractutasa +- ___fractutada +- ___fractutata +- ___fractutauqq +- ___fractutauhq +- ___fractutausq +- ___fractutaudq +- ___fractutautq +- ___fractutauha2 +- ___fractutausa2 +- ___fractutauda2 +- ___fractutaqi +- ___fractutahi +- ___fractutasi +- ___fractutadi +- ___fractutati +- ___fractutasf +- ___fractutadf +- ___fractqiqq +- ___fractqihq +- ___fractqisq +- ___fractqidq +- ___fractqitq +- ___fractqiha +- ___fractqisa +- ___fractqida +- ___fractqita +- ___fractqiuqq +- ___fractqiuhq +- ___fractqiusq +- ___fractqiudq +- ___fractqiutq +- ___fractqiuha +- ___fractqiusa +- ___fractqiuda +- ___fractqiuta +- ___fracthiqq +- ___fracthihq +- ___fracthisq +- ___fracthidq +- ___fracthitq +- ___fracthiha +- ___fracthisa +- ___fracthida +- ___fracthita +- ___fracthiuqq +- ___fracthiuhq +- ___fracthiusq +- ___fracthiudq +- ___fracthiutq +- ___fracthiuha +- ___fracthiusa +- ___fracthiuda +- ___fracthiuta +- ___fractsiqq +- ___fractsihq +- ___fractsisq +- ___fractsidq +- ___fractsitq +- ___fractsiha +- ___fractsisa +- ___fractsida +- ___fractsita +- ___fractsiuqq +- ___fractsiuhq +- ___fractsiusq +- ___fractsiudq +- ___fractsiutq +- ___fractsiuha +- ___fractsiusa +- ___fractsiuda +- ___fractsiuta +- ___fractdiqq +- ___fractdihq +- ___fractdisq +- ___fractdidq +- ___fractditq +- ___fractdiha +- ___fractdisa +- ___fractdida +- ___fractdita +- ___fractdiuqq +- ___fractdiuhq +- ___fractdiusq +- ___fractdiudq +- ___fractdiutq +- ___fractdiuha +- ___fractdiusa +- ___fractdiuda +- ___fractdiuta +- ___fracttiqq +- ___fracttihq +- ___fracttisq +- ___fracttidq +- ___fracttitq +- ___fracttiha +- ___fracttisa +- ___fracttida +- ___fracttita +- ___fracttiuqq +- ___fracttiuhq +- ___fracttiusq +- ___fracttiudq +- ___fracttiutq +- ___fracttiuha +- ___fracttiusa +- ___fracttiuda +- ___fracttiuta +- ___fractsfqq +- ___fractsfhq +- ___fractsfsq +- ___fractsfdq +- ___fractsftq +- ___fractsfha +- ___fractsfsa +- ___fractsfda +- ___fractsfta +- ___fractsfuqq +- ___fractsfuhq +- ___fractsfusq +- ___fractsfudq +- ___fractsfutq +- ___fractsfuha +- ___fractsfusa +- ___fractsfuda +- ___fractsfuta +- ___fractdfqq +- ___fractdfhq +- ___fractdfsq +- ___fractdfdq +- ___fractdftq +- ___fractdfha +- ___fractdfsa +- ___fractdfda +- ___fractdfta +- ___fractdfuqq +- ___fractdfuhq +- ___fractdfusq +- ___fractdfudq +- ___fractdfutq +- ___fractdfuha +- ___fractdfusa +- ___fractdfuda +- ___fractdfuta +- ___satfractqqhq2 +- ___satfractqqsq2 +- ___satfractqqdq2 +- ___satfractqqtq2 +- ___satfractqqha +- ___satfractqqsa +- ___satfractqqda +- ___satfractqqta +- ___satfractqquqq +- ___satfractqquhq +- ___satfractqqusq +- ___satfractqqudq +- ___satfractqqutq +- ___satfractqquha +- ___satfractqqusa +- ___satfractqquda +- ___satfractqquta +- ___satfracthqqq2 +- ___satfracthqsq2 +- ___satfracthqdq2 +- ___satfracthqtq2 +- ___satfracthqha +- ___satfracthqsa +- ___satfracthqda +- ___satfracthqta +- ___satfracthquqq +- ___satfracthquhq +- ___satfracthqusq +- ___satfracthqudq +- ___satfracthqutq +- ___satfracthquha +- ___satfracthqusa +- ___satfracthquda +- ___satfracthquta +- ___satfractsqqq2 +- ___satfractsqhq2 +- ___satfractsqdq2 +- ___satfractsqtq2 +- ___satfractsqha +- ___satfractsqsa +- ___satfractsqda +- ___satfractsqta +- ___satfractsquqq +- ___satfractsquhq +- ___satfractsqusq +- ___satfractsqudq +- ___satfractsqutq +- ___satfractsquha +- ___satfractsqusa +- ___satfractsquda +- ___satfractsquta +- ___satfractdqqq2 +- ___satfractdqhq2 +- ___satfractdqsq2 +- ___satfractdqtq2 +- ___satfractdqha +- ___satfractdqsa +- ___satfractdqda +- ___satfractdqta +- ___satfractdquqq +- ___satfractdquhq +- ___satfractdqusq +- ___satfractdqudq +- ___satfractdqutq +- ___satfractdquha +- ___satfractdqusa +- ___satfractdquda +- ___satfractdquta +- ___satfracttqqq2 +- ___satfracttqhq2 +- ___satfracttqsq2 +- ___satfracttqdq2 +- ___satfracttqha +- ___satfracttqsa +- ___satfracttqda +- ___satfracttqta +- ___satfracttquqq +- ___satfracttquhq +- ___satfracttqusq +- ___satfracttqudq +- ___satfracttqutq +- ___satfracttquha +- ___satfracttqusa +- ___satfracttquda +- ___satfracttquta +- ___satfracthaqq +- ___satfracthahq +- ___satfracthasq +- ___satfracthadq +- ___satfracthatq +- ___satfracthasa2 +- ___satfracthada2 +- ___satfracthata2 +- ___satfracthauqq +- ___satfracthauhq +- ___satfracthausq +- ___satfracthaudq +- ___satfracthautq +- ___satfracthauha +- ___satfracthausa +- ___satfracthauda +- ___satfracthauta +- ___satfractsaqq +- ___satfractsahq +- ___satfractsasq +- ___satfractsadq +- ___satfractsatq +- ___satfractsaha2 +- ___satfractsada2 +- ___satfractsata2 +- ___satfractsauqq +- ___satfractsauhq +- ___satfractsausq +- ___satfractsaudq +- ___satfractsautq +- ___satfractsauha +- ___satfractsausa +- ___satfractsauda +- ___satfractsauta +- ___satfractdaqq +- ___satfractdahq +- ___satfractdasq +- ___satfractdadq +- ___satfractdatq +- ___satfractdaha2 +- ___satfractdasa2 +- ___satfractdata2 +- ___satfractdauqq +- ___satfractdauhq +- ___satfractdausq +- ___satfractdaudq +- ___satfractdautq +- ___satfractdauha +- ___satfractdausa +- ___satfractdauda +- ___satfractdauta +- ___satfracttaqq +- ___satfracttahq +- ___satfracttasq +- ___satfracttadq +- ___satfracttatq +- ___satfracttaha2 +- ___satfracttasa2 +- ___satfracttada2 +- ___satfracttauqq +- ___satfracttauhq +- ___satfracttausq +- ___satfracttaudq +- ___satfracttautq +- ___satfracttauha +- ___satfracttausa +- ___satfracttauda +- ___satfracttauta +- ___satfractuqqqq +- ___satfractuqqhq +- ___satfractuqqsq +- ___satfractuqqdq +- ___satfractuqqtq +- ___satfractuqqha +- ___satfractuqqsa +- ___satfractuqqda +- ___satfractuqqta +- ___satfractuqquhq2 +- ___satfractuqqusq2 +- ___satfractuqqudq2 +- ___satfractuqqutq2 +- ___satfractuqquha +- ___satfractuqqusa +- ___satfractuqquda +- ___satfractuqquta +- ___satfractuhqqq +- ___satfractuhqhq +- ___satfractuhqsq +- ___satfractuhqdq +- ___satfractuhqtq +- ___satfractuhqha +- ___satfractuhqsa +- ___satfractuhqda +- ___satfractuhqta +- ___satfractuhquqq2 +- ___satfractuhqusq2 +- ___satfractuhqudq2 +- ___satfractuhqutq2 +- ___satfractuhquha +- ___satfractuhqusa +- ___satfractuhquda +- ___satfractuhquta +- ___satfractusqqq +- ___satfractusqhq +- ___satfractusqsq +- ___satfractusqdq +- ___satfractusqtq +- ___satfractusqha +- ___satfractusqsa +- ___satfractusqda +- ___satfractusqta +- ___satfractusquqq2 +- ___satfractusquhq2 +- ___satfractusqudq2 +- ___satfractusqutq2 +- ___satfractusquha +- ___satfractusqusa +- ___satfractusquda +- ___satfractusquta +- ___satfractudqqq +- ___satfractudqhq +- ___satfractudqsq +- ___satfractudqdq +- ___satfractudqtq +- ___satfractudqha +- ___satfractudqsa +- ___satfractudqda +- ___satfractudqta +- ___satfractudquqq2 +- ___satfractudquhq2 +- ___satfractudqusq2 +- ___satfractudqutq2 +- ___satfractudquha +- ___satfractudqusa +- ___satfractudquda +- ___satfractudquta +- ___satfractutqqq +- ___satfractutqhq +- ___satfractutqsq +- ___satfractutqdq +- ___satfractutqtq +- ___satfractutqha +- ___satfractutqsa +- ___satfractutqda +- ___satfractutqta +- ___satfractutquqq2 +- ___satfractutquhq2 +- ___satfractutqusq2 +- ___satfractutqudq2 +- ___satfractutquha +- ___satfractutqusa +- ___satfractutquda +- ___satfractutquta +- ___satfractuhaqq +- ___satfractuhahq +- ___satfractuhasq +- ___satfractuhadq +- ___satfractuhatq +- ___satfractuhaha +- ___satfractuhasa +- ___satfractuhada +- ___satfractuhata +- ___satfractuhauqq +- ___satfractuhauhq +- ___satfractuhausq +- ___satfractuhaudq +- ___satfractuhautq +- ___satfractuhausa2 +- ___satfractuhauda2 +- ___satfractuhauta2 +- ___satfractusaqq +- ___satfractusahq +- ___satfractusasq +- ___satfractusadq +- ___satfractusatq +- ___satfractusaha +- ___satfractusasa +- ___satfractusada +- ___satfractusata +- ___satfractusauqq +- ___satfractusauhq +- ___satfractusausq +- ___satfractusaudq +- ___satfractusautq +- ___satfractusauha2 +- ___satfractusauda2 +- ___satfractusauta2 +- ___satfractudaqq +- ___satfractudahq +- ___satfractudasq +- ___satfractudadq +- ___satfractudatq +- ___satfractudaha +- ___satfractudasa +- ___satfractudada +- ___satfractudata +- ___satfractudauqq +- ___satfractudauhq +- ___satfractudausq +- ___satfractudaudq +- ___satfractudautq +- ___satfractudauha2 +- ___satfractudausa2 +- ___satfractudauta2 +- ___satfractutaqq +- ___satfractutahq +- ___satfractutasq +- ___satfractutadq +- ___satfractutatq +- ___satfractutaha +- ___satfractutasa +- ___satfractutada +- ___satfractutata +- ___satfractutauqq +- ___satfractutauhq +- ___satfractutausq +- ___satfractutaudq +- ___satfractutautq +- ___satfractutauha2 +- ___satfractutausa2 +- ___satfractutauda2 +- ___satfractqiqq +- ___satfractqihq +- ___satfractqisq +- ___satfractqidq +- ___satfractqitq +- ___satfractqiha +- ___satfractqisa +- ___satfractqida +- ___satfractqita +- ___satfractqiuqq +- ___satfractqiuhq +- ___satfractqiusq +- ___satfractqiudq +- ___satfractqiutq +- ___satfractqiuha +- ___satfractqiusa +- ___satfractqiuda +- ___satfractqiuta +- ___satfracthiqq +- ___satfracthihq +- ___satfracthisq +- ___satfracthidq +- ___satfracthitq +- ___satfracthiha +- ___satfracthisa +- ___satfracthida +- ___satfracthita +- ___satfracthiuqq +- ___satfracthiuhq +- ___satfracthiusq +- ___satfracthiudq +- ___satfracthiutq +- ___satfracthiuha +- ___satfracthiusa +- ___satfracthiuda +- ___satfracthiuta +- ___satfractsiqq +- ___satfractsihq +- ___satfractsisq +- ___satfractsidq +- ___satfractsitq +- ___satfractsiha +- ___satfractsisa +- ___satfractsida +- ___satfractsita +- ___satfractsiuqq +- ___satfractsiuhq +- ___satfractsiusq +- ___satfractsiudq +- ___satfractsiutq +- ___satfractsiuha +- ___satfractsiusa +- ___satfractsiuda +- ___satfractsiuta +- ___satfractdiqq +- ___satfractdihq +- ___satfractdisq +- ___satfractdidq +- ___satfractditq +- ___satfractdiha +- ___satfractdisa +- ___satfractdida +- ___satfractdita +- ___satfractdiuqq +- ___satfractdiuhq +- ___satfractdiusq +- ___satfractdiudq +- ___satfractdiutq +- ___satfractdiuha +- ___satfractdiusa +- ___satfractdiuda +- ___satfractdiuta +- ___satfracttiqq +- ___satfracttihq +- ___satfracttisq +- ___satfracttidq +- ___satfracttitq +- ___satfracttiha +- ___satfracttisa +- ___satfracttida +- ___satfracttita +- ___satfracttiuqq +- ___satfracttiuhq +- ___satfracttiusq +- ___satfracttiudq +- ___satfracttiutq +- ___satfracttiuha +- ___satfracttiusa +- ___satfracttiuda +- ___satfracttiuta +- ___satfractsfqq +- ___satfractsfhq +- ___satfractsfsq +- ___satfractsfdq +- ___satfractsftq +- ___satfractsfha +- ___satfractsfsa +- ___satfractsfda +- ___satfractsfta +- ___satfractsfuqq +- ___satfractsfuhq +- ___satfractsfusq +- ___satfractsfudq +- ___satfractsfutq +- ___satfractsfuha +- ___satfractsfusa +- ___satfractsfuda +- ___satfractsfuta +- ___satfractdfqq +- ___satfractdfhq +- ___satfractdfsq +- ___satfractdfdq +- ___satfractdftq +- ___satfractdfha +- ___satfractdfsa +- ___satfractdfda +- ___satfractdfta +- ___satfractdfuqq +- ___satfractdfuhq +- ___satfractdfusq +- ___satfractdfudq +- ___satfractdfutq +- ___satfractdfuha +- ___satfractdfusa +- ___satfractdfuda +- ___satfractdfuta +- ___fractunsqqqi +- ___fractunsqqhi +- ___fractunsqqsi +- ___fractunsqqdi +- ___fractunsqqti +- ___fractunshqqi +- ___fractunshqhi +- ___fractunshqsi +- ___fractunshqdi +- ___fractunshqti +- ___fractunssqqi +- ___fractunssqhi +- ___fractunssqsi +- ___fractunssqdi +- ___fractunssqti +- ___fractunsdqqi +- ___fractunsdqhi +- ___fractunsdqsi +- ___fractunsdqdi +- ___fractunsdqti +- ___fractunstqqi +- ___fractunstqhi +- ___fractunstqsi +- ___fractunstqdi +- ___fractunstqti +- ___fractunshaqi +- ___fractunshahi +- ___fractunshasi +- ___fractunshadi +- ___fractunshati +- ___fractunssaqi +- ___fractunssahi +- ___fractunssasi +- ___fractunssadi +- ___fractunssati +- ___fractunsdaqi +- ___fractunsdahi +- ___fractunsdasi +- ___fractunsdadi +- ___fractunsdati +- ___fractunstaqi +- ___fractunstahi +- ___fractunstasi +- ___fractunstadi +- ___fractunstati +- ___fractunsuqqqi +- ___fractunsuqqhi +- ___fractunsuqqsi +- ___fractunsuqqdi +- ___fractunsuqqti +- ___fractunsuhqqi +- ___fractunsuhqhi +- ___fractunsuhqsi +- ___fractunsuhqdi +- ___fractunsuhqti +- ___fractunsusqqi +- ___fractunsusqhi +- ___fractunsusqsi +- ___fractunsusqdi +- ___fractunsusqti +- ___fractunsudqqi +- ___fractunsudqhi +- ___fractunsudqsi +- ___fractunsudqdi +- ___fractunsudqti +- ___fractunsutqqi +- ___fractunsutqhi +- ___fractunsutqsi +- ___fractunsutqdi +- ___fractunsutqti +- ___fractunsuhaqi +- ___fractunsuhahi +- ___fractunsuhasi +- ___fractunsuhadi +- ___fractunsuhati +- ___fractunsusaqi +- ___fractunsusahi +- ___fractunsusasi +- ___fractunsusadi +- ___fractunsusati +- ___fractunsudaqi +- ___fractunsudahi +- ___fractunsudasi +- ___fractunsudadi +- ___fractunsudati +- ___fractunsutaqi +- ___fractunsutahi +- ___fractunsutasi +- ___fractunsutadi +- ___fractunsutati +- ___fractunsqiqq +- ___fractunsqihq +- ___fractunsqisq +- ___fractunsqidq +- ___fractunsqitq +- ___fractunsqiha +- ___fractunsqisa +- ___fractunsqida +- ___fractunsqita +- ___fractunsqiuqq +- ___fractunsqiuhq +- ___fractunsqiusq +- ___fractunsqiudq +- ___fractunsqiutq +- ___fractunsqiuha +- ___fractunsqiusa +- ___fractunsqiuda +- ___fractunsqiuta +- ___fractunshiqq +- ___fractunshihq +- ___fractunshisq +- ___fractunshidq +- ___fractunshitq +- ___fractunshiha +- ___fractunshisa +- ___fractunshida +- ___fractunshita +- ___fractunshiuqq +- ___fractunshiuhq +- ___fractunshiusq +- ___fractunshiudq +- ___fractunshiutq +- ___fractunshiuha +- ___fractunshiusa +- ___fractunshiuda +- ___fractunshiuta +- ___fractunssiqq +- ___fractunssihq +- ___fractunssisq +- ___fractunssidq +- ___fractunssitq +- ___fractunssiha +- ___fractunssisa +- ___fractunssida +- ___fractunssita +- ___fractunssiuqq +- ___fractunssiuhq +- ___fractunssiusq +- ___fractunssiudq +- ___fractunssiutq +- ___fractunssiuha +- ___fractunssiusa +- ___fractunssiuda +- ___fractunssiuta +- ___fractunsdiqq +- ___fractunsdihq +- ___fractunsdisq +- ___fractunsdidq +- ___fractunsditq +- ___fractunsdiha +- ___fractunsdisa +- ___fractunsdida +- ___fractunsdita +- ___fractunsdiuqq +- ___fractunsdiuhq +- ___fractunsdiusq +- ___fractunsdiudq +- ___fractunsdiutq +- ___fractunsdiuha +- ___fractunsdiusa +- ___fractunsdiuda +- ___fractunsdiuta +- ___fractunstiqq +- ___fractunstihq +- ___fractunstisq +- ___fractunstidq +- ___fractunstitq +- ___fractunstiha +- ___fractunstisa +- ___fractunstida +- ___fractunstita +- ___fractunstiuqq +- ___fractunstiuhq +- ___fractunstiusq +- ___fractunstiudq +- ___fractunstiutq +- ___fractunstiuha +- ___fractunstiusa +- ___fractunstiuda +- ___fractunstiuta +- ___satfractunsqiqq +- ___satfractunsqihq +- ___satfractunsqisq +- ___satfractunsqidq +- ___satfractunsqitq +- ___satfractunsqiha +- ___satfractunsqisa +- ___satfractunsqida +- ___satfractunsqita +- ___satfractunsqiuqq +- ___satfractunsqiuhq +- ___satfractunsqiusq +- ___satfractunsqiudq +- ___satfractunsqiutq +- ___satfractunsqiuha +- ___satfractunsqiusa +- ___satfractunsqiuda +- ___satfractunsqiuta +- ___satfractunshiqq +- ___satfractunshihq +- ___satfractunshisq +- ___satfractunshidq +- ___satfractunshitq +- ___satfractunshiha +- ___satfractunshisa +- ___satfractunshida +- ___satfractunshita +- ___satfractunshiuqq +- ___satfractunshiuhq +- ___satfractunshiusq +- ___satfractunshiudq +- ___satfractunshiutq +- ___satfractunshiuha +- ___satfractunshiusa +- ___satfractunshiuda +- ___satfractunshiuta +- ___satfractunssiqq +- ___satfractunssihq +- ___satfractunssisq +- ___satfractunssidq +- ___satfractunssitq +- ___satfractunssiha +- ___satfractunssisa +- ___satfractunssida +- ___satfractunssita +- ___satfractunssiuqq +- ___satfractunssiuhq +- ___satfractunssiusq +- ___satfractunssiudq +- ___satfractunssiutq +- ___satfractunssiuha +- ___satfractunssiusa +- ___satfractunssiuda +- ___satfractunssiuta +- ___satfractunsdiqq +- ___satfractunsdihq +- ___satfractunsdisq +- ___satfractunsdidq +- ___satfractunsditq +- ___satfractunsdiha +- ___satfractunsdisa +- ___satfractunsdida +- ___satfractunsdita +- ___satfractunsdiuqq +- ___satfractunsdiuhq +- ___satfractunsdiusq +- ___satfractunsdiudq +- ___satfractunsdiutq +- ___satfractunsdiuha +- ___satfractunsdiusa +- ___satfractunsdiuda +- ___satfractunsdiuta +- ___satfractunstiqq +- ___satfractunstihq +- ___satfractunstisq +- ___satfractunstidq +- ___satfractunstitq +- ___satfractunstiha +- ___satfractunstisa +- ___satfractunstida +- ___satfractunstita +- ___satfractunstiuqq +- ___satfractunstiuhq +- ___satfractunstiusq +- ___satfractunstiudq +- ___satfractunstiutq +- ___satfractunstiuha +- ___satfractunstiusa +- ___satfractunstiuda +- ___satfractunstiuta +-} +- +-%inherit GCC_4.4.0 GCC_4.3.0 +-GCC_4.4.0 { +- ___sync_fetch_and_add_1 +- ___sync_fetch_and_sub_1 +- ___sync_fetch_and_or_1 +- ___sync_fetch_and_and_1 +- ___sync_fetch_and_xor_1 +- ___sync_fetch_and_nand_1 +- ___sync_add_and_fetch_1 +- ___sync_sub_and_fetch_1 +- ___sync_or_and_fetch_1 +- ___sync_and_and_fetch_1 +- ___sync_xor_and_fetch_1 +- ___sync_nand_and_fetch_1 +- ___sync_bool_compare_and_swap_1 +- ___sync_val_compare_and_swap_1 +- ___sync_lock_test_and_set_1 +- +- ___sync_fetch_and_add_2 +- ___sync_fetch_and_sub_2 +- ___sync_fetch_and_or_2 +- ___sync_fetch_and_and_2 +- ___sync_fetch_and_xor_2 +- ___sync_fetch_and_nand_2 +- ___sync_add_and_fetch_2 +- ___sync_sub_and_fetch_2 +- ___sync_or_and_fetch_2 +- ___sync_and_and_fetch_2 +- ___sync_xor_and_fetch_2 +- ___sync_nand_and_fetch_2 +- ___sync_bool_compare_and_swap_2 +- ___sync_val_compare_and_swap_2 +- ___sync_lock_test_and_set_2 +- +- ___sync_fetch_and_add_4 +- ___sync_fetch_and_sub_4 +- ___sync_fetch_and_or_4 +- ___sync_fetch_and_and_4 +- ___sync_fetch_and_xor_4 +- ___sync_fetch_and_nand_4 +- ___sync_add_and_fetch_4 +- ___sync_sub_and_fetch_4 +- ___sync_or_and_fetch_4 +- ___sync_and_and_fetch_4 +- ___sync_xor_and_fetch_4 +- ___sync_nand_and_fetch_4 +- ___sync_bool_compare_and_swap_4 +- ___sync_val_compare_and_swap_4 +- ___sync_lock_test_and_set_4 +- +- ___sync_fetch_and_add_8 +- ___sync_fetch_and_sub_8 +- ___sync_fetch_and_or_8 +- ___sync_fetch_and_and_8 +- ___sync_fetch_and_xor_8 +- ___sync_fetch_and_nand_8 +- ___sync_add_and_fetch_8 +- ___sync_sub_and_fetch_8 +- ___sync_or_and_fetch_8 +- ___sync_and_and_fetch_8 +- ___sync_xor_and_fetch_8 +- ___sync_nand_and_fetch_8 +- ___sync_bool_compare_and_swap_8 +- ___sync_val_compare_and_swap_8 +- ___sync_lock_test_and_set_8 +- +- ___sync_fetch_and_add_16 +- ___sync_fetch_and_sub_16 +- ___sync_fetch_and_or_16 +- ___sync_fetch_and_and_16 +- ___sync_fetch_and_xor_16 +- ___sync_fetch_and_nand_16 +- ___sync_add_and_fetch_16 +- ___sync_sub_and_fetch_16 +- ___sync_or_and_fetch_16 +- ___sync_and_and_fetch_16 +- ___sync_xor_and_fetch_16 +- ___sync_nand_and_fetch_16 +- ___sync_bool_compare_and_swap_16 +- ___sync_val_compare_and_swap_16 +- ___sync_lock_test_and_set_16 +- +- ___sync_synchronize +-} +- +-%inherit GCC_4.5.0 GCC_4.4.0 +-GCC_4.5.0 { +- ___unordxf2 +- ___unordtf2 ++ __smulsi3_highpart ++ __umulsi3_highpart + } +diff --git a/libgcc/config/bfin/t-linux b/libgcc/config/bfin/t-linux +index 1c42e48..8898157 100644 +--- a/libgcc/config/bfin/t-linux ++++ b/libgcc/config/bfin/t-linux +@@ -1 +1,2 @@ +-SHLIB_MAPFILES = $(srcdir)/config/bfin/libgcc-glibc.ver ++SHLIB_MAPFILES += $(srcdir)/config/bfin/libgcc-glibc.ver ++SHLIB_MKMAP_OPTS = -v skip_underscore=1 +-- +2.7.4 + diff --git a/package/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch b/package/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch new file mode 100644 index 0000000000..ce49de7ee9 --- /dev/null +++ b/package/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch @@ -0,0 +1,59 @@ +From 9d9f97ca5d1ceba66677bf406c9b31027dc1f22e Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Fri, 19 Aug 2016 13:54:46 +0200 +Subject: [PATCH] libgcc: fix DWARF compilation with FDPIC targets + +The build of unwind-dw2-fde-dip.c currently fails for FDPIC targets with +the following error: + +libgcc/unwind-dw2-fde-dip.c:167:31: error: storage size of 'load_base' isn't known + struct elf32_fdpic_loadaddr load_base; + +This patch addresses that by defining load_base with the appropriate +type on FDPIC targets. It has been tested on FRV and Blackfin. + +Fixes PR gcc/68468. + +Signed-off-by: Waldemar Brodkorb +Signed-off-by: Thomas Petazzoni +--- + libgcc/unwind-dw2-fde-dip.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/libgcc/unwind-dw2-fde-dip.c b/libgcc/unwind-dw2-fde-dip.c +index f7a1c3f..801bce8 100644 +--- a/libgcc/unwind-dw2-fde-dip.c ++++ b/libgcc/unwind-dw2-fde-dip.c +@@ -124,7 +124,11 @@ static struct frame_hdr_cache_element + { + _Unwind_Ptr pc_low; + _Unwind_Ptr pc_high; ++#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ ++ struct elf32_fdpic_loadaddr load_base; ++#else + _Unwind_Ptr load_base; ++#endif + const ElfW(Phdr) *p_eh_frame_hdr; + const ElfW(Phdr) *p_dynamic; + struct frame_hdr_cache_element *link; +@@ -163,7 +167,7 @@ _Unwind_IteratePhdrCallback (struct dl_phdr_info *info, size_t size, void *ptr) + struct unw_eh_callback_data *data = (struct unw_eh_callback_data *) ptr; + const ElfW(Phdr) *phdr, *p_eh_frame_hdr, *p_dynamic; + long n, match; +-#ifdef __FRV_FDPIC__ ++#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ + struct elf32_fdpic_loadaddr load_base; + #else + _Unwind_Ptr load_base; +@@ -347,7 +351,7 @@ _Unwind_IteratePhdrCallback (struct dl_phdr_info *info, size_t size, void *ptr) + break; + } + } +-# elif defined __FRV_FDPIC__ && defined __linux__ ++# elif (defined __FRV_FDPIC__ || defined __BFIN_FDPIC__) && defined __linux__ + data->dbase = load_base.got_value; + # else + # error What is DW_EH_PE_datarel base on this platform? +-- +2.7.4 + diff --git a/package/gcc/6.3.0/895-bfin-define-REENTRANT.patch b/package/gcc/6.3.0/895-bfin-define-REENTRANT.patch new file mode 100644 index 0000000000..e2828a5106 --- /dev/null +++ b/package/gcc/6.3.0/895-bfin-define-REENTRANT.patch @@ -0,0 +1,17 @@ +enable _REENTRANT when -lpthread is used + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-6.2.0.orig/gcc/config/bfin/linux.h gcc-6.2.0/gcc/config/bfin/linux.h +--- gcc-6.2.0.orig/gcc/config/bfin/linux.h 2016-01-04 15:30:50.000000000 +0100 ++++ gcc-6.2.0/gcc/config/bfin/linux.h 2016-09-30 20:48:17.446636819 +0200 +@@ -38,6 +38,9 @@ + "%{static:--start-group} %{mfast-fp:-lbffastfp} %G %L %{static:--end-group} \ + %{!static:%{mfast-fp:-lbffastfp} %G}" + ++#undef CPP_SPEC ++#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" ++ + #undef LINK_SPEC + #define LINK_SPEC "\ + %{mfdpic: -m elf32bfinfd -z text} %{shared} %{pie} \ diff --git a/package/gcc/6.3.0/940-uclinux-enable-threads.patch b/package/gcc/6.3.0/940-uclinux-enable-threads.patch new file mode 100644 index 0000000000..5532656725 --- /dev/null +++ b/package/gcc/6.3.0/940-uclinux-enable-threads.patch @@ -0,0 +1,19 @@ +Enable POSIX threads for uClinux targets +Reported upstream: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-6.1.0.orig/gcc/config.gcc gcc-6.1.0/gcc/config.gcc +--- gcc-6.1.0.orig/gcc/config.gcc 2016-04-11 12:14:59.000000000 +0200 ++++ gcc-6.1.0/gcc/config.gcc 2016-07-02 20:04:25.732169982 +0200 +@@ -833,6 +833,9 @@ + *-*-uclinux*) + extra_options="$extra_options gnu-user.opt" + use_gcc_stdint=wrap ++ case ${enable_threads} in ++ "" | yes | posix) thread_file='posix' ;; ++ esac + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" + ;; + *-*-rdos*) diff --git a/package/gcc/6.3.0/941-mips-Add-support-for-mips-r6-musl.patch b/package/gcc/6.3.0/941-mips-Add-support-for-mips-r6-musl.patch new file mode 100644 index 0000000000..337d376b75 --- /dev/null +++ b/package/gcc/6.3.0/941-mips-Add-support-for-mips-r6-musl.patch @@ -0,0 +1,43 @@ +From 83717065090bb8b954556d1216dd9dc397dc0243 Mon Sep 17 00:00:00 2001 +From: nsz +Date: Thu, 25 Aug 2016 14:13:02 +0000 +Subject: [PATCH] [mips] Add support for mips*r6-*-musl + +gcc/ + * config/mips/linux.h (MUSL_DYNAMIC_LINKER32): Update. + (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERN32): Update. + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239760 138bc75d-0d04-0410-961f-82ee72b054a4 + +[Vincent: tweak to not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + gcc/config/mips/linux.h | 9 ++++++--- + 1 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h +index fa253b6..dc51c45 100644 +--- a/gcc/config/mips/linux.h ++++ b/gcc/config/mips/linux.h +@@ -38,10 +38,13 @@ along with GCC; see the file COPYING3. If not see + "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" + + #undef MUSL_DYNAMIC_LINKER32 +-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-mips%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKER32 \ ++ "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" + #undef MUSL_DYNAMIC_LINKER64 +-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-mips64%{EL:el}%{msoft-float:-sf}.so.1" +-#define MUSL_DYNAMIC_LINKERN32 "/lib/ld-musl-mipsn32%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKER64 \ ++ "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKERN32 \ ++ "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" + + #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" + #define GNU_USER_DYNAMIC_LINKERN32 \ +-- +2.10.0 + diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host index ee4d0eb9f4..eb41aa465a 100644 --- a/package/gcc/Config.in.host +++ b/package/gcc/Config.in.host @@ -1,106 +1,113 @@ comment "GCC Options" -config BR2_GCC_NEEDS_MPC - bool - -config BR2_GCC_SUPPORTS_GRAPHITE - bool - choice prompt "GCC compiler Version" - default BR2_GCC_VERSION_4_8_ARC if BR2_arc - default BR2_GCC_VERSION_4_9_X + default BR2_GCC_VERSION_ARC if BR2_arc + default BR2_GCC_VERSION_OR1K if BR2_or1k + default BR2_GCC_VERSION_5_X help Select the version of gcc you wish to use. - config BR2_GCC_VERSION_4_7_X - bool "gcc 4.7.x" - depends on BR2_DEPRECATED_SINCE_2016_05 - # Broken or unsupported architectures - depends on !BR2_microblaze && !BR2_aarch64 && !BR2_arc \ - && !BR2_powerpc64le && !BR2_nios2 - # Broken or unsupported ARM cores - depends on !BR2_cortex_a12 && !BR2_pj4 && !BR2_cortex_a17 - # Broken or unsupported PPC cores - depends on !BR2_powerpc_e5500 && !BR2_powerpc_e6500 && \ - !BR2_powerpc_power8 - # SPARC -mcpu=leon3 appeared in gcc 4.8.x - depends on !BR2_sparc_leon3 - # Broken or unsupported x86 cores - depends on !BR2_x86_jaguar && !BR2_x86_steamroller - # Unsupported for MIPS R6 - depends on !BR2_mips_32r6 && !BR2_mips_64r6 - select BR2_GCC_NEEDS_MPC - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 - config BR2_GCC_VERSION_4_8_X bool "gcc 4.8.x" # Broken or unsupported architectures - depends on !BR2_microblaze && !BR2_arc \ - && !BR2_powerpc64le && !BR2_nios2 + depends on !BR2_microblaze && !BR2_arc && !BR2_or1k \ + && !BR2_powerpc64le && !BR2_nios2 && !BR2_bfin # Broken or unsupported ARM cores - depends on !BR2_cortex_a12 && !BR2_cortex_a17 + depends on !BR2_cortex_a12 && !BR2_cortex_a17 && !BR2_ARM_CPU_ARMV8 # Broken or unsupported PPC cores depends on !BR2_powerpc_power8 + # Unsupported MIPS cores + depends on !BR2_mips_interaptiv # gcc-4.8.x + binutils-2.25 is broken for MIPS depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X) + # Unsupported for MIPS R5 + depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5 # Unsupported for MIPS R6 - depends on !BR2_mips_32r6 && !BR2_mips_64r6 - select BR2_GCC_NEEDS_MPC - select BR2_GCC_SUPPORTS_GRAPHITE + depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6 + # musl ppc64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le)) + # musl mips64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el)) select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 - config BR2_GCC_VERSION_4_8_ARC - bool "gcc 4.8-arc" + config BR2_GCC_VERSION_ARC + bool "gcc arc (6.x)" # Only supported architecture depends on BR2_arc - select BR2_GCC_NEEDS_MPC - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + select BR2_TOOLCHAIN_GCC_AT_LEAST_6 + config BR2_GCC_VERSION_OR1K + bool "gcc or1k (5.x)" + # Only supported architecture + depends on BR2_or1k + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 config BR2_GCC_VERSION_4_9_X bool "gcc 4.9.x" # Broken or unsupported architectures - depends on !BR2_arc + depends on !BR2_arc && !BR2_bfin && !BR2_or1k # Broken or unsupported ARM cores - depends on !BR2_cortex_a17 + depends on !BR2_cortex_a17 && !BR2_cortex_a72 + # Unsupported MIPS cores + depends on !BR2_mips_interaptiv + # Unsupported for MIPS R5 + depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5 # Unsupported for MIPS R6 - depends on !BR2_mips_32r6 && !BR2_mips_64r6 + depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6 + # musl microblaze unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe)) + # musl ppc64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le)) + # musl mips64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el)) # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102 - select BR2_GCC_NEEDS_MPC - select BR2_GCC_SUPPORTS_GRAPHITE select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_GCC_VERSION_5_X bool "gcc 5.x" # Broken or unsupported architectures - depends on !BR2_arc - select BR2_GCC_NEEDS_MPC - select BR2_GCC_SUPPORTS_GRAPHITE + depends on !BR2_arc && !BR2_bfin && !BR2_or1k + # musl ppc64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le)) + # Unsupported MIPS cores + depends on !BR2_mips_interaptiv && !BR2_mips_m5150 && \ + !BR2_mips_m6250 && !BR2_mips_i6400 && !BR2_mips_p6600 + # musl mips64 unsupported + depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el)) select BR2_TOOLCHAIN_GCC_AT_LEAST_5 config BR2_GCC_VERSION_6_X bool "gcc 6.x" # Broken or unsupported architectures depends on !BR2_arc - select BR2_GCC_NEEDS_MPC - select BR2_GCC_SUPPORTS_GRAPHITE + depends on !BR2_microblaze + depends on !BR2_or1k + # Unsupported MIPS cores + depends on !BR2_mips_m6250 && !BR2_mips_p6600 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 endchoice +# Indicates if GCC for architecture supports --with-{arch,cpu,..} to +# set default CFLAGS, otherwise values will be used by toolchain +# wrapper. +config BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS + bool + default y if !BR2_bfin + config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE bool default y config BR2_GCC_VERSION string - default "4.7.4" if BR2_GCC_VERSION_4_7_X default "4.8.5" if BR2_GCC_VERSION_4_8_X - default "4.9.3" if BR2_GCC_VERSION_4_9_X - default "5.3.0" if BR2_GCC_VERSION_5_X - default "6.1.0" if BR2_GCC_VERSION_6_X - default "arc-2015.12" if BR2_GCC_VERSION_4_8_ARC + default "4.9.4" if BR2_GCC_VERSION_4_9_X + default "5.4.0" if BR2_GCC_VERSION_5_X + default "6.3.0" if BR2_GCC_VERSION_6_X + default "arc-2016.09-release" if BR2_GCC_VERSION_ARC + default "musl-5.4.0" if BR2_GCC_VERSION_OR1K config BR2_EXTRA_GCC_CONFIG_OPTIONS string "Additional gcc options" @@ -118,21 +125,21 @@ config BR2_TOOLCHAIN_BUILDROOT_CXX C++ language and you want C++ libraries to be installed on your target system. +comment "Fortran support needs a toolchain w/ wchar" + depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH + depends on !BR2_USE_WCHAR # libquadmath + config BR2_TOOLCHAIN_BUILDROOT_FORTRAN bool "Enable Fortran support" + # on architecture building libquadmath, wchar is required + depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \ + (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR) + select BR2_TOOLCHAIN_HAS_FORTRAN help Enable this option if you want your toolchain to support the Fortran language and you want Fortran libraries to be installed on your target system. -config BR2_GCC_ENABLE_TLS - bool "Enable compiler tls support" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC - default y - depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_EGLIBC || BR2_TOOLCHAIN_BUILDROOT_GLIBC - help - Enable the compiler to generate code for accessing - thread local storage variables - config BR2_GCC_ENABLE_LTO bool "Enable compiler link-time-optimization support" select BR2_BINUTILS_ENABLE_LTO @@ -151,9 +158,7 @@ config BR2_GCC_ENABLE_LIBMUDFLAP # There are architectures, or specific configurations for # which mudflap is not supported. depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE - depends on !BR2_GCC_VERSION_4_9_X - depends on !BR2_GCC_VERSION_5_X - depends on !BR2_GCC_VERSION_6_X + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help libmudflap is a gcc library used for the mudflap pointer debugging functionality. It is only needed if you intend to @@ -166,7 +171,6 @@ config BR2_GCC_ENABLE_LIBMUDFLAP config BR2_GCC_ENABLE_GRAPHITE bool "Enable graphite support" - depends on BR2_GCC_SUPPORTS_GRAPHITE help This option enables the graphite optimizations in the compiler. diff --git a/package/gcc/arc-2015.12/851-PR-other-56780.patch b/package/gcc/arc-2015.12/851-PR-other-56780.patch deleted file mode 100644 index feb433920d..0000000000 --- a/package/gcc/arc-2015.12/851-PR-other-56780.patch +++ /dev/null @@ -1,244 +0,0 @@ -From afe990251bd9b3a063f03da31a3b8d139d033bc3 Mon Sep 17 00:00:00 2001 -From: ian -Date: Sat, 1 Jun 2013 00:20:49 +0000 -Subject: [PATCH] PR other/56780 - -* libiberty/configure.ac: Move test for --enable-install-libiberty -outside of the 'with_target_subdir' test so that it actually gets -run. Add output messages to show the test result. -* libiberty/configure: Regenerate. -* libiberty/Makefile.in (install_to_libdir): Place the -installation of the libiberty library in the same guard as that -used for the headers to prevent it being installed unless -requested via --enable-install-libiberty. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199570 138bc75d-0d04-0410-961f-82ee72b054a4 - -libiberty: fix --enable-install-libiberty flag [PR 56780] - -Commit 199570 fixed the --disable-install-libiberty behavior, but it also -added a bug where the enable path never works because the initial clear -of target_header_dir wasn't deleted. So we end up initializing properly -at the top only to reset it at the end all the time. - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206367 138bc75d-0d04-0410-961f-82ee72b054a4 - -[Romain - squash the two upstream commits - Remove the ChangeLog] -Signed-off-by: Romain Naour ---- - libiberty/Makefile.in | 24 ++++++++++----------- - libiberty/configure | 57 +++++++++++++++++++++++++++----------------------- - libiberty/configure.ac | 47 ++++++++++++++++++++++------------------- - 3 files changed, 68 insertions(+), 60 deletions(-) - -diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in -index f6a3ebd..75ff82d 100644 ---- a/libiberty/Makefile.in -+++ b/libiberty/Makefile.in -@@ -355,19 +355,19 @@ install-strip: install - # since it will be passed the multilib flags. - MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory` - install_to_libdir: all -- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR) -- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n -- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ) -- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB) - if test -n "${target_header_dir}"; then \ -- case "${target_header_dir}" in \ -- /*) thd=${target_header_dir};; \ -- *) thd=${includedir}/${target_header_dir};; \ -- esac; \ -- ${mkinstalldirs} $(DESTDIR)$${thd}; \ -- for h in ${INSTALLED_HEADERS}; do \ -- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -- done; \ -+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \ -+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \ -+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \ -+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \ -+ case "${target_header_dir}" in \ -+ /*) thd=${target_header_dir};; \ -+ *) thd=${includedir}/${target_header_dir};; \ -+ esac; \ -+ ${mkinstalldirs} $(DESTDIR)$${thd}; \ -+ for h in ${INSTALLED_HEADERS}; do \ -+ ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \ -+ done; \ - fi - @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install - -diff --git a/libiberty/configure b/libiberty/configure -index 5367027..4feb95a 100755 ---- a/libiberty/configure -+++ b/libiberty/configure -@@ -675,8 +675,8 @@ with_cross_host - with_newlib - enable_maintainer_mode - enable_multilib --enable_largefile - enable_install_libiberty -+enable_largefile - ' - ac_precious_vars='build_alias - host_alias -@@ -1303,8 +1303,8 @@ Optional Features: - enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --enable-multilib build many library versions (default) -+ --enable-install-libiberty Install headers and library for end users - --disable-largefile omit support for large files -- --enable-install-libiberty Install headers for end users - - Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -2784,6 +2784,35 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to install libiberty headers and static library" >&5 -+$as_echo_n "checking whether to install libiberty headers and static library... " >&6; } -+ -+# Check whether --enable-install-libiberty was given. -+if test "${enable_install_libiberty+set}" = set; then : -+ enableval=$enable_install_libiberty; enable_install_libiberty=$enableval -+else -+ enable_install_libiberty=no -+fi -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_install_libiberty" >&5 -+$as_echo "$enable_install_libiberty" >&6; } -+{ $as_echo "$as_me:${as_lineno-$LINENO}: target_header_dir = $target_header_dir" >&5 -+$as_echo "$as_me: target_header_dir = $target_header_dir" >&6;} -+ - - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -5476,7 +5505,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -5759,29 +5787,6 @@ _ACEOF - - esac - -- # We may wish to install the target headers somewhere. -- # Check whether --enable-install-libiberty was given. --if test "${enable_install_libiberty+set}" = set; then : -- enableval=$enable_install_libiberty; enable_install_libiberty=$enableval --else -- enable_install_libiberty=no --fi -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. -diff --git a/libiberty/configure.ac b/libiberty/configure.ac -index c763894..f17e6b6 100644 ---- a/libiberty/configure.ac -+++ b/libiberty/configure.ac -@@ -128,6 +128,31 @@ if test $cross_compiling = no && test $multilib = yes \ - cross_compiling=maybe - fi - -+# We may wish to install the target headers somewhere. -+AC_MSG_CHECKING([whether to install libiberty headers and static library]) -+dnl install-libiberty is disabled by default -+ -+AC_ARG_ENABLE(install-libiberty, -+[ --enable-install-libiberty Install headers and library for end users], -+enable_install_libiberty=$enableval, -+enable_install_libiberty=no)dnl -+ -+# Option parsed, now set things appropriately. -+case x"$enable_install_libiberty" in -+ xyes|x) -+ target_header_dir=libiberty -+ ;; -+ xno) -+ target_header_dir= -+ ;; -+ *) -+ # This could be sanity-checked in various ways... -+ target_header_dir="${enable_install_libiberty}" -+ ;; -+esac -+AC_MSG_RESULT($enable_install_libiberty) -+AC_MSG_NOTICE([target_header_dir = $target_header_dir]) -+ - GCC_NO_EXECUTABLES - AC_PROG_CC - AC_SYS_LARGEFILE -@@ -380,7 +405,6 @@ fi - - setobjs= - CHECK= --target_header_dir= - if test -n "${with_target_subdir}"; then - - # We are being configured as a target library. AC_REPLACE_FUNCS -@@ -492,27 +516,6 @@ if test -n "${with_target_subdir}"; then - - esac - -- # We may wish to install the target headers somewhere. -- AC_ARG_ENABLE(install-libiberty, -- [ --enable-install-libiberty Install headers for end users], -- enable_install_libiberty=$enableval, -- enable_install_libiberty=no)dnl -- -- # Option parsed, now set things appropriately. -- case x"$enable_install_libiberty" in -- xyes|x) -- target_header_dir=libiberty -- ;; -- xno) -- target_header_dir= -- ;; -- *) -- # This could be sanity-checked in various ways... -- target_header_dir="${enable_install_libiberty}" -- ;; -- esac -- -- - else - - # Not a target library, so we set things up to run the test suite. --- -1.9.3 - diff --git a/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch b/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch deleted file mode 100644 index 48228dcb6f..0000000000 --- a/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch +++ /dev/null @@ -1,103 +0,0 @@ -From b55922d45fd16f5e8fc7c3885da42b2b9b37754d Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Mon, 18 Jan 2016 16:43:18 +0100 -Subject: [PATCH] UPDATE: Fix handling complex PIC moves. - -fwprop is putting in the REG_EQUIV notes which are involving the -constant pic unspecs. Then, loop may use those notes for -optimizations rezulting in complex patterns that are not supported by -the current implementation. The following piece of code tries to -convert the complex instruction in simpler ones. - -The fix is done in development tree: [arc-4.8-dev b55922d] -and will be a part of the next release of ARC GNU tools. -Once that new release happens this patch must be removed. - - -gcc/ -2016-01-18 Claudiu Zissulescu - - * config/arc/arc.c (arc_legitimize_pic_address): Handle MINUS - operations when doing PIC moves. Make this function static. - (arc_legitimate_pc_offset_p): Use - arc_raw_symbolic_reference_mentioned_p. - * config/arc/arc-protos.h (arc_legitimize_pic_address): Remove. - - gcc/config/arc/arc-protos.h | 1 - - gcc/config/arc/arc.c | 33 +++++++++++++++++++-------------- - 2 files changed, 19 insertions(+), 15 deletions(-) - - * config/arc/arc.c (arc_legitimize_pic_address): Handle complex -diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h -index 464e0ab..5986e06 100644 ---- a/gcc/config/arc/arc-protos.h -+++ b/gcc/config/arc/arc-protos.h -@@ -53,7 +53,6 @@ extern unsigned int arc_compute_frame_size (); - extern bool arc_ccfsm_branch_deleted_p (void); - extern void arc_ccfsm_record_branch_deleted (void); - --extern rtx arc_legitimize_pic_address (rtx, rtx); - void arc_asm_output_aligned_decl_local (FILE *, tree, const char *, - unsigned HOST_WIDE_INT, - unsigned HOST_WIDE_INT, -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index a89c8ee..f7cae9f 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -5243,19 +5243,7 @@ arc_legitimate_pc_offset_p (rtx addr) - if (GET_CODE (addr) != CONST) - return false; - addr = XEXP (addr, 0); -- if (GET_CODE (addr) == PLUS) -- { -- if (GET_CODE (XEXP (addr, 1)) != CONST_INT) -- return false; -- addr = XEXP (addr, 0); -- } -- return (GET_CODE (addr) == UNSPEC -- && XVECLEN (addr, 0) == 1 -- && (XINT (addr, 1) == ARC_UNSPEC_GOT -- || XINT (addr, 1) == ARC_UNSPEC_GOTOFFPC -- || XINT (addr, 1) == UNSPEC_TLS_GD -- || XINT (addr, 1) == UNSPEC_TLS_IE) -- && GET_CODE (XVECEXP (addr, 0, 0)) == SYMBOL_REF); -+ return flag_pic && !arc_raw_symbolic_reference_mentioned_p (addr, false); - } - - /* Return true if ADDR is a valid pic address. -@@ -5522,7 +5510,7 @@ arc_legitimize_tls_address (rtx addr, enum tls_model model) - The return value is the legitimated address. - If OLDX is non-zero, it is the target to assign the address to first. */ - --rtx -+static rtx - arc_legitimize_pic_address (rtx orig, rtx oldx) - { - rtx addr = orig; -@@ -5569,6 +5557,23 @@ arc_legitimize_pic_address (rtx orig, rtx oldx) - /* Check that the unspec is one of the ones we generate? */ - return orig; - } -+ else if (GET_CODE (addr) == MINUS) -+ { -+ /* The same story with fwprop. */ -+ rtx op0 = XEXP (addr, 0); -+ rtx op1 = XEXP (addr, 1); -+ gcc_assert (oldx); -+ gcc_assert (GET_CODE (op1) == UNSPEC); -+ -+ emit_move_insn (oldx, -+ gen_rtx_CONST (SImode, -+ arc_legitimize_pic_address (op1, -+ NULL_RTX))); -+ emit_insn (gen_rtx_SET (VOIDmode, oldx, -+ gen_rtx_MINUS (SImode, op0, oldx))); -+ return oldx; -+ -+ } - else if (GET_CODE (addr) != PLUS) - { - /* fwprop is putting in the REG_EQUIV notes which are --- -2.5.0 - diff --git a/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch b/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch deleted file mode 100644 index 28cb7c1913..0000000000 --- a/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch +++ /dev/null @@ -1,83 +0,0 @@ -From f00b0f17d6889d811468c2c77508fbea8bfc377d Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Tue, 19 Jan 2016 14:40:16 +0100 -Subject: [PATCH] UPDATE1: Fix handling complex PIC moves. - -The arc_legitimate_pc_offset_p condition is too lax. Updated it. - -The fix is done in development tree: [arc-4.8-dev f00b0f1] -and will be a part of the next release of ARC GNU tools. -Once that new release happens this patch must be removed. - -gcc/ -2016-01-18 Claudiu Zissulescu - - * config/arc/arc.c (arc_needs_pcl_p ): New function - (arc_legitimate_pc_offset_p): Use arc_needs_pcl_p. ---- - gcc/config/arc/arc.c | 42 ++++++++++++++++++++++++++++++++++++++++-- - 1 file changed, 40 insertions(+), 2 deletions(-) - -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index f7cae9f..18d88a3 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -5234,6 +5234,45 @@ arc_rtx_costs (rtx x, int code, int outer_code, int opno ATTRIBUTE_UNUSED, - } - } - -+/* Helper used by arc_legitimate_pc_offset_p. */ -+ -+static bool -+arc_needs_pcl_p (rtx x) -+{ -+ register const char *fmt; -+ register int i, j; -+ -+ if ((GET_CODE (x) == UNSPEC) -+ && (XVECLEN (x, 0) == 1) -+ && (GET_CODE (XVECEXP (x, 0, 0)) == SYMBOL_REF)) -+ switch (XINT (x, 1)) -+ { -+ case ARC_UNSPEC_GOT: -+ case ARC_UNSPEC_GOTOFFPC: -+ case UNSPEC_TLS_GD: -+ case UNSPEC_TLS_IE: -+ return true; -+ default: -+ break; -+ } -+ -+ fmt = GET_RTX_FORMAT (GET_CODE (x)); -+ for (i = GET_RTX_LENGTH (GET_CODE (x)) - 1; i >= 0; i--) -+ { -+ if (fmt[i] == 'e') -+ { -+ if (arc_needs_pcl_p (XEXP (x, i))) -+ return true; -+ } -+ else if (fmt[i] == 'E') -+ for (j = XVECLEN (x, i) - 1; j >= 0; j--) -+ if (arc_needs_pcl_p (XVECEXP (x, i, j))) -+ return true; -+ } -+ -+ return false; -+} -+ - /* Return true if ADDR is an address that needs to be expressed as an - explicit sum of pcl + offset. */ - -@@ -5242,8 +5281,7 @@ arc_legitimate_pc_offset_p (rtx addr) - { - if (GET_CODE (addr) != CONST) - return false; -- addr = XEXP (addr, 0); -- return flag_pic && !arc_raw_symbolic_reference_mentioned_p (addr, false); -+ return arc_needs_pcl_p (addr); - } - - /* Return true if ADDR is a valid pic address. --- -2.5.0 - diff --git a/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch b/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch deleted file mode 100644 index dc03a028ed..0000000000 --- a/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 09463827001a7b8094f4b9460514370a1876d908 Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Wed, 20 Jan 2016 16:32:40 +0100 -Subject: [PATCH] Don't allow mcompact-casesi for ARCv2 - -The compact casesi is not working for arcv2 processors family as it -makes use of the add_s rx,rx,pcl instruction which is only valid for -arc6xx and arc700 processors. Also not having this instruction makes -no much sens to change the compact-casesi pattern to use normal add -instructions as it nullifies the advantage of short instruction use. -The default casesi pattern betters suits the arcv2 architecture. - -The fix is done in development tree: [arc-4.8-dev 0946382] -and will be a part of the next release of ARC GNU tools. -Once that new release happens this patch must be removed. - -gcc/ -2016-01-20 Claudiu Zissulescu - - * common/config/arc/arc-common.c (arc_option_optimization_table): - Remove mcompact-casesi option. - * config/arc/arc.c (arc_override_options): Use compact-casesi only - for arcv1. - * config/arc/arc.md (casesi_load): Use short instructions. ---- - gcc/common/config/arc/arc-common.c | 1 - - gcc/config/arc/arc.c | 9 +++++---- - gcc/config/arc/arc.md | 10 ++++++++-- - 3 files changed, 13 insertions(+), 7 deletions(-) - - * config/arc/arc.c (arc_legitimize_pic_address): Handle MINUS -diff --git a/gcc/common/config/arc/arc-common.c b/gcc/common/config/arc/arc-common.c -index e2e36fa..310bc80 100644 ---- a/gcc/common/config/arc/arc-common.c -+++ b/gcc/common/config/arc/arc-common.c -@@ -58,7 +58,6 @@ static const struct default_options arc_option_optimization_table[] = - { OPT_LEVELS_ALL, OPT_mbbit_peephole, NULL, 1 }, - { OPT_LEVELS_SIZE, OPT_mq_class, NULL, 1 }, - { OPT_LEVELS_SIZE, OPT_mcase_vector_pcrel, NULL, 1 }, -- { OPT_LEVELS_SIZE, OPT_mcompact_casesi, NULL, 1 }, - { OPT_LEVELS_NONE, 0, NULL, 0 } - }; - -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index 18d88a3..f828398 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -1151,6 +1151,11 @@ arc_override_options (void) - if (arc_size_opt_level == 3) - optimize_size = 1; - -+ if (TARGET_V2) -+ TARGET_COMPACT_CASESI = 0; -+ else if (optimize_size == 1) -+ TARGET_COMPACT_CASESI = 1; -+ - if (flag_pic) - target_flags |= MASK_NO_SDATA_SET; - -@@ -1163,10 +1168,6 @@ arc_override_options (void) - if (!TARGET_Q_CLASS) - TARGET_COMPACT_CASESI = 0; - -- /* For the time being don't support COMPACT_CASESI for ARCv2. */ -- if (TARGET_V2) -- TARGET_COMPACT_CASESI = 0; -- - if (TARGET_COMPACT_CASESI) - TARGET_CASE_VECTOR_PC_RELATIVE = 1; - -diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md -index bc4ac38..ba7c8bc 100644 ---- a/gcc/config/arc/arc.md -+++ b/gcc/config/arc/arc.md -@@ -3837,14 +3837,20 @@ - switch (GET_MODE (diff_vec)) - { - case SImode: -- return \"ld.as %0,[%1,%2]%&\"; -+ if ((which_alternative == 0) && TARGET_CODE_DENSITY) -+ return \"ld_s.as %0,[%1,%2]%&\"; -+ else -+ return \"ld.as %0,[%1,%2]%&\"; - case HImode: - if (ADDR_DIFF_VEC_FLAGS (diff_vec).offset_unsigned) - return \"ldw.as %0,[%1,%2]\"; - return \"ldw.x.as %0,[%1,%2]\"; - case QImode: - if (ADDR_DIFF_VEC_FLAGS (diff_vec).offset_unsigned) -- return \"ldb%? %0,[%1,%2]%&\"; -+ if (which_alternative == 0) -+ return \"ldb_s %0,[%1,%2]%&\"; -+ else -+ return \"ldb %0,[%1,%2]%&\"; - return \"ldb.x %0,[%1,%2]\"; - default: - gcc_unreachable (); --- -2.5.0 - diff --git a/package/gcc/4.7.4/301-missing-execinfo_h.patch b/package/gcc/arc-2016.09-release/301-missing-execinfo_h.patch similarity index 53% rename from package/gcc/4.7.4/301-missing-execinfo_h.patch rename to package/gcc/arc-2016.09-release/301-missing-execinfo_h.patch index 0e2092f3fb..2d0e7baa44 100644 --- a/package/gcc/4.7.4/301-missing-execinfo_h.patch +++ b/package/gcc/arc-2016.09-release/301-missing-execinfo_h.patch @@ -1,7 +1,9 @@ ---- gcc-4.0.0/boehm-gc/include/gc.h-orig 2005-04-28 22:28:57.000000000 -0500 -+++ gcc-4.0.0/boehm-gc/include/gc.h 2005-04-28 22:30:38.000000000 -0500 -@@ -500,7 +500,7 @@ - #ifdef __linux__ +Index: b/boehm-gc/include/gc.h +=================================================================== +--- a/boehm-gc/include/gc.h ++++ b/boehm-gc/include/gc.h +@@ -503,7 +503,7 @@ + #if defined(__linux__) || defined(__GLIBC__) # include # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ - && !defined(__ia64__) diff --git a/package/gcc/arc-2016.09-release/860-cilk-wchar.patch b/package/gcc/arc-2016.09-release/860-cilk-wchar.patch new file mode 100644 index 0000000000..1d9916f554 --- /dev/null +++ b/package/gcc/arc-2016.09-release/860-cilk-wchar.patch @@ -0,0 +1,56 @@ +[PATCH] cilk: fix build without wchar + +When building against uClibc with wchar support disabled, WCHAR_MIN and +WCHAR_MAX are not defined leading to compilation errors. + +Fix it by only including the wchar code if available. + +Signed-off-by: Peter Korsgaard +--- + libcilkrts/include/cilk/reducer_min_max.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +Index: b/libcilkrts/include/cilk/reducer_min_max.h +=================================================================== +--- a/libcilkrts/include/cilk/reducer_min_max.h ++++ b/libcilkrts/include/cilk/reducer_min_max.h +@@ -3154,7 +3154,9 @@ + CILK_C_REDUCER_MAX_INSTANCE(char, char, CHAR_MIN) + CILK_C_REDUCER_MAX_INSTANCE(unsigned char, uchar, 0) + CILK_C_REDUCER_MAX_INSTANCE(signed char, schar, SCHAR_MIN) ++#ifdef WCHAR_MIN + CILK_C_REDUCER_MAX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) ++#endif + CILK_C_REDUCER_MAX_INSTANCE(short, short, SHRT_MIN) + CILK_C_REDUCER_MAX_INSTANCE(unsigned short, ushort, 0) + CILK_C_REDUCER_MAX_INSTANCE(int, int, INT_MIN) +@@ -3306,7 +3308,9 @@ + CILK_C_REDUCER_MAX_INDEX_INSTANCE(char, char, CHAR_MIN) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned char, uchar, 0) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(signed char, schar, SCHAR_MIN) ++#ifdef WCHAR_MIN + CILK_C_REDUCER_MAX_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) ++#endif + CILK_C_REDUCER_MAX_INDEX_INSTANCE(short, short, SHRT_MIN) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned short, ushort, 0) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(int, int, INT_MIN) +@@ -3432,7 +3436,9 @@ + CILK_C_REDUCER_MIN_INSTANCE(char, char, CHAR_MAX) + CILK_C_REDUCER_MIN_INSTANCE(unsigned char, uchar, CHAR_MAX) + CILK_C_REDUCER_MIN_INSTANCE(signed char, schar, SCHAR_MAX) ++#ifdef WCHAR_MAX + CILK_C_REDUCER_MIN_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) ++#endif + CILK_C_REDUCER_MIN_INSTANCE(short, short, SHRT_MAX) + CILK_C_REDUCER_MIN_INSTANCE(unsigned short, ushort, USHRT_MAX) + CILK_C_REDUCER_MIN_INSTANCE(int, int, INT_MAX) +@@ -3584,7 +3590,9 @@ + CILK_C_REDUCER_MIN_INDEX_INSTANCE(char, char, CHAR_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned char, uchar, CHAR_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(signed char, schar, SCHAR_MAX) ++#ifdef WCHAR_MAX + CILK_C_REDUCER_MIN_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) ++#endif + CILK_C_REDUCER_MIN_INDEX_INSTANCE(short, short, SHRT_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned short, ushort, USHRT_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(int, int, INT_MAX) diff --git a/package/gcc/arc-2016.09-release/940-uclinux-enable-threads.patch b/package/gcc/arc-2016.09-release/940-uclinux-enable-threads.patch new file mode 100644 index 0000000000..5532656725 --- /dev/null +++ b/package/gcc/arc-2016.09-release/940-uclinux-enable-threads.patch @@ -0,0 +1,19 @@ +Enable POSIX threads for uClinux targets +Reported upstream: +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-6.1.0.orig/gcc/config.gcc gcc-6.1.0/gcc/config.gcc +--- gcc-6.1.0.orig/gcc/config.gcc 2016-04-11 12:14:59.000000000 +0200 ++++ gcc-6.1.0/gcc/config.gcc 2016-07-02 20:04:25.732169982 +0200 +@@ -833,6 +833,9 @@ + *-*-uclinux*) + extra_options="$extra_options gnu-user.opt" + use_gcc_stdint=wrap ++ case ${enable_threads} in ++ "" | yes | posix) thread_file='posix' ;; ++ esac + tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" + ;; + *-*-rdos*) diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk index 1d1d72e6e7..c9ee476fb7 100644 --- a/package/gcc/gcc-final/gcc-final.mk +++ b/package/gcc/gcc-final/gcc-final.mk @@ -74,9 +74,14 @@ HOST_GCC_FINAL_CONF_OPTS += "--with-multilib-list=m4a,m4a-nofpu" HOST_GCC_FINAL_GCC_LIB_DIR = $(HOST_DIR)/usr/$(GNU_TARGET_NAME)/lib/!m4* endif +ifeq ($(BR2_bfin),y) +HOST_GCC_FINAL_CONF_OPTS += --disable-symvers +endif + # Disable shared libs like libstdc++ if we do static since it confuses linking +# In that case also disable libcilkrts as there is no static version ifeq ($(BR2_STATIC_LIBS),y) -HOST_GCC_FINAL_CONF_OPTS += --disable-shared +HOST_GCC_FINAL_CONF_OPTS += --disable-shared --disable-libcilkrts else HOST_GCC_FINAL_CONF_OPTS += --enable-shared endif @@ -108,23 +113,12 @@ endef HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_FINAL_CREATE_CC_SYMLINKS HOST_GCC_FINAL_TOOLCHAIN_WRAPPER_ARGS += $(HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS) -HOST_GCC_FINAL_POST_BUILD_HOOKS += TOOLCHAIN_BUILD_WRAPPER +HOST_GCC_FINAL_POST_BUILD_HOOKS += TOOLCHAIN_WRAPPER_BUILD +HOST_GCC_FINAL_POST_INSTALL_HOOKS += TOOLCHAIN_WRAPPER_INSTALL # Note: this must be done after CREATE_CC_SYMLINKS, otherwise the # -cc symlink to the wrapper is not created. HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS -# In gcc 4.7.x, the ARM EABIhf library loader path for (e)glibc was not -# correct, so we create a symbolic link to make things work -# properly. eglibc installs the library loader as ld-linux-armhf.so.3, -# but gcc creates binaries that reference ld-linux.so.3. -ifeq ($(BR2_arm)$(BR2_ARM_EABIHF)$(BR2_GCC_VERSION_4_7_X)$(BR2_TOOLCHAIN_USES_GLIBC),yyyy) -define HOST_GCC_FINAL_LD_LINUX_LINK - ln -sf ld-linux-armhf.so.3 $(TARGET_DIR)/lib/ld-linux.so.3 - ln -sf ld-linux-armhf.so.3 $(STAGING_DIR)/lib/ld-linux.so.3 -endef -HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_FINAL_LD_LINUX_LINK -endif - # coldfire is not working without removing these object files from libgcc.a ifeq ($(BR2_m68k_cf),y) define HOST_GCC_FINAL_M68K_LIBGCC_FIXUP @@ -163,6 +157,10 @@ endif ifeq ($(BR2_TOOLCHAIN_BUILDROOT_FORTRAN),y) HOST_GCC_FINAL_USR_LIBS += libgfortran +# fortran needs quadmath on x86 and x86_64 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBQUADMATH),y) +HOST_GCC_FINAL_USR_LIBS += libquadmath +endif endif ifeq ($(BR2_GCC_ENABLE_OPENMP),y) diff --git a/package/gcc/gcc-initial/gcc-initial.mk b/package/gcc/gcc-initial/gcc-initial.mk index 1e58d8b5f7..a51e29cfc7 100644 --- a/package/gcc/gcc-initial/gcc-initial.mk +++ b/package/gcc/gcc-initial/gcc-initial.mk @@ -25,19 +25,6 @@ HOST_GCC_INITIAL_SUBDIR = build HOST_GCC_INITIAL_PRE_CONFIGURE_HOOKS += HOST_GCC_CONFIGURE_SYMLINK -# gcc on ARC has a bug: in its libgcc, even when no C library is -# available (--with-newlib is passed, and therefore inhibit_libc is -# defined), it tries to use the C library for the libgmon -# library. Since it's not needed in gcc-initial, we disabled it here. -ifeq ($(BR2_GCC_VERSION_4_8_ARC),y) -define HOST_GCC_INITIAL_DISABLE_LIBGMON - $(SED) 's/crtbeginS.o libgmon.a crtg.o/crtbeginS.o crtg.o/' \ - $(@D)/libgcc/config.host -endef -HOST_GCC_INITIAL_POST_PATCH_HOOKS += HOST_GCC_INITIAL_DISABLE_LIBGMON -HOST_GCC_INITIAL_POST_RSYNC_HOOKS += HOST_GCC_INITIAL_DISABLE_LIBGMON -endif - HOST_GCC_INITIAL_CONF_OPTS = \ $(HOST_GCC_COMMON_CONF_OPTS) \ --enable-languages=c \ @@ -61,7 +48,8 @@ HOST_GCC_INITIAL_INSTALL_OPTS += install-target-libgcc endif HOST_GCC_INITIAL_TOOLCHAIN_WRAPPER_ARGS += $(HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS) -HOST_GCC_INITIAL_POST_BUILD_HOOKS += TOOLCHAIN_BUILD_WRAPPER +HOST_GCC_INITIAL_POST_BUILD_HOOKS += TOOLCHAIN_WRAPPER_BUILD +HOST_GCC_INITIAL_POST_INSTALL_HOOKS += TOOLCHAIN_WRAPPER_INSTALL HOST_GCC_INITIAL_POST_INSTALL_HOOKS += HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS $(eval $(host-autotools-package)) diff --git a/package/gcc/gcc.hash b/package/gcc/gcc.hash index 8d2feaf1a4..4376db4131 100644 --- a/package/gcc/gcc.hash +++ b/package/gcc/gcc.hash @@ -4,11 +4,14 @@ sha512 78696b287d46aacd6f150920da376ea32f58ad9f0dafd2d3b7fa6dbdd8dd7afe659108d1 sha512 dfcb737073191e628231031a3571ec77ee760a59377630f4a6e4fdfa66f9ddad39fde47e3f0f227eb43cdf90e0d34cde5abdc9ac892c1e111a911062a66c9189 gcc-4.7.4.tar.bz2 # From ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.8.5/sha512.sum sha512 47fdfeca0c0a624cdec9c4ae47137d056c918d5c386d4b96985bb3c8172aba377cb66cbcc30e80832fd244a7d98f562c20198056915c70cfef0977545073a8ea gcc-4.8.5.tar.bz2 -# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.3/sha512.sum -sha512 9ac57377a6975fc7adac704ec81355262b9f537def6955576753b87715470a20ee6a2a3144a79cc8fcba3443f7b44c7337d79d704b522d053f54f79aa6b442df gcc-4.9.3.tar.bz2 -# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-5.3.0/sha512.sum -sha512 d619847383405fd389f5a2d7225f97fedb01f81478dbb8339047ccba7561a5c20045ab500a8744bffd19ea51892ce09fc37f862f2cfcb42de0f0f8cd8f8da37a gcc-5.3.0.tar.bz2 -# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-6.1.0/sha512.sum -sha512 eeed3e2018b8c012aabce419e8d718fde701e5c3c179b4486c61ba46e5736eecc8fccdd18b01fcd973a42c6ad3116dbbe2ee247fe3757d622d373f93ebaf8d2e gcc-6.1.0.tar.bz2 -# No hash for the ARC variant, comes from the github-helper: -none xxx gcc-arc-2015.12.tar.gz +# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.4/sha512.sum +sha512 93abb78e16277454f41a8e9810f41f66c0fdffdc539a762ff6b67d3037f78db971378683fd2ebf707d1d51c059fad2161fe42d110c330027f40214b7db0f3efe gcc-4.9.4.tar.bz2 +# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-5.4.0/sha512.sum +sha512 2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b gcc-5.4.0.tar.bz2 +# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-6.3.0/sha512.sum +sha512 234dd9b1bdc9a9c6e352216a7ef4ccadc6c07f156006a59759c5e0e6a69f0abcdc14630eff11e3826dd6ba5933a8faa43043f3d1d62df6bd5ab1e82862f9bf78 gcc-6.3.0.tar.bz2 + +# Locally calculated (fetched from Github) +sha512 faae6dc3f7843412068a52de5919797cd23e6ed1b8d140c230d0381f13fd38af67baaa4a09e581c03602127da3dd2fab6f9f5d7ac5d4270585bd079c673dda9a gcc-arc-2016.09-release.tar.gz +# Locally calculated (fetched from Github) +sha512 841101f7de45f327bf2e92f3efc73ca88a021e4b9b541458ce80a16e55882bd8606a8492d75c57c589ee2c10d42ae2865b67690155d7289a541df1d68096402f gcc-musl-5.4.0.tar.gz diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk index 46f05ff2db..241f3575c0 100644 --- a/package/gcc/gcc.mk +++ b/package/gcc/gcc.mk @@ -13,12 +13,14 @@ GCC_VERSION = $(call qstrip,$(BR2_GCC_VERSION)) ifeq ($(BR2_arc),y) GCC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,gcc,$(GCC_VERSION)) GCC_SOURCE = gcc-$(GCC_VERSION).tar.gz +else ifeq ($(BR2_or1k),y) +GCC_SITE = $(call github,openrisc,or1k-gcc,$(GCC_VERSION)) +GCC_SOURCE = gcc-$(GCC_VERSION).tar.gz else GCC_SITE = $(BR2_GNU_MIRROR:/=)/gcc/gcc-$(GCC_VERSION) +GCC_SOURCE = gcc-$(GCC_VERSION).tar.bz2 endif -GCC_SOURCE ?= gcc-$(GCC_VERSION).tar.bz2 - # # Xtensa special hook # @@ -41,10 +43,18 @@ endef endif endif +# gcc is a special package, not named gcc, but gcc-initial and +# gcc-final, but patches are nonetheless stored in package/gcc in the +# tree, and potentially in BR2_GLOBAL_PATCH_DIR directories as well. define HOST_GCC_APPLY_PATCHES - if test -d package/gcc/$(GCC_VERSION); then \ - $(APPLY_PATCHES) $(@D) package/gcc/$(GCC_VERSION) \*.patch ; \ - fi; + for patchdir in \ + package/gcc/$(GCC_VERSION) \ + $(addsuffix /gcc/$(GCC_VERSION),$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ + $(addsuffix /gcc,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) ; do \ + if test -d $${patchdir}; then \ + $(APPLY_PATCHES) $(@D) $${patchdir} \*.patch || exit 1; \ + fi; \ + done $(HOST_GCC_APPLY_POWERPC_PATCH) endef @@ -74,6 +84,7 @@ endef HOST_GCC_COMMON_DEPENDENCIES = \ host-binutils \ host-gmp \ + host-mpc \ host-mpfr \ $(if $(BR2_BINFMT_FLAT),host-elf2flt) @@ -85,6 +96,7 @@ HOST_GCC_COMMON_CONF_OPTS = \ --disable-libssp \ --disable-multilib \ --with-gmp=$(HOST_DIR)/usr \ + --with-mpc=$(HOST_DIR)/usr \ --with-mpfr=$(HOST_DIR)/usr \ --with-pkgversion="Buildroot $(BR2_VERSION_FULL)" \ --with-bugurl="http://bugs.buildroot.net/" @@ -106,8 +118,15 @@ ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y) HOST_GCC_COMMON_CONF_OPTS += --disable-libitm endif -# gcc 4.6.x quadmath requires wchar -ifneq ($(BR2_TOOLCHAIN_BUILDROOT_WCHAR),y) +# libmpx uses secure_getenv and struct _libc_fpstate not present in musl +ifeq ($(BR2_TOOLCHAIN_BUILDROOT_MUSL)$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),yy) +HOST_GCC_COMMON_CONF_OPTS += --disable-libmpx +endif + +# quadmath support requires wchar +ifeq ($(BR2_USE_WCHAR)$(BR2_TOOLCHAIN_HAS_LIBQUADMATH),yy) +HOST_GCC_COMMON_CONF_OPTS += --enable-libquadmath +else HOST_GCC_COMMON_CONF_OPTS += --disable-libquadmath endif @@ -123,10 +142,13 @@ ifeq ($(BR2_sparc)$(BR2_sparc64),y) HOST_GCC_COMMON_CONF_OPTS += --disable-libsanitizer endif -ifeq ($(BR2_GCC_ENABLE_TLS),y) -HOST_GCC_COMMON_CONF_OPTS += --enable-tls -else +# TLS support is not needed on uClibc/no-thread and +# uClibc/linux-threads, otherwise, for all other situations (glibc, +# musl and uClibc/NPTL), we need it. +ifeq ($(BR2_TOOLCHAIN_BUILDROOT_UCLIBC)$(BR2_PTHREADS)$(BR2_PTHREADS_NONE),yy) HOST_GCC_COMMON_CONF_OPTS += --disable-tls +else +HOST_GCC_COMMON_CONF_OPTS += --enable-tls endif ifeq ($(BR2_GCC_ENABLE_LTO),y) @@ -148,11 +170,6 @@ else HOST_GCC_COMMON_CONF_OPTS += --enable-threads endif -ifeq ($(BR2_GCC_NEEDS_MPC),y) -HOST_GCC_COMMON_DEPENDENCIES += host-mpc -HOST_GCC_COMMON_CONF_OPTS += --with-mpc=$(HOST_DIR)/usr -endif - ifeq ($(BR2_GCC_ENABLE_GRAPHITE),y) HOST_GCC_COMMON_DEPENDENCIES += host-isl HOST_GCC_COMMON_CONF_OPTS += --with-isl=$(HOST_DIR)/usr @@ -166,7 +183,7 @@ else HOST_GCC_COMMON_CONF_OPTS += --without-isl --without-cloog endif -ifeq ($(BR2_arc),y) +ifeq ($(BR2_arc)$(BR2_or1k),y) HOST_GCC_COMMON_DEPENDENCIES += host-flex host-bison endif @@ -183,6 +200,7 @@ HOST_GCC_COMMON_CONF_OPTS += --disable-decimal-float endif # Determine arch/tune/abi/cpu options +ifeq ($(BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS),y) ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),) HOST_GCC_COMMON_CONF_OPTS += --with-arch=$(BR2_GCC_TARGET_ARCH) endif @@ -211,6 +229,7 @@ GCC_TARGET_MODE = $(call qstrip,$(BR2_GCC_TARGET_MODE)) ifneq ($(GCC_TARGET_MODE),) HOST_GCC_COMMON_CONF_OPTS += --with-mode=$(GCC_TARGET_MODE) endif +endif # BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS # Enable proper double/long double for SPE ABI ifeq ($(BR2_powerpc_SPE),y) @@ -219,7 +238,48 @@ HOST_GCC_COMMON_CONF_OPTS += \ --with-long-double-128 endif +# PowerPC64 big endian by default uses the elfv1 ABI, and PowerPC 64 +# little endian by default uses the elfv2 ABI. However, musl has +# decided to use the elfv2 ABI for both, so we force the elfv2 ABI for +# Power64 big endian when the selected C library is musl. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL)$(BR2_powerpc64),yy) +HOST_GCC_COMMON_CONF_OPTS += \ + --with-abi=elfv2 \ + --without-long-double-128 +endif + HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_CROSS_PATH_SUFFIX='".br_real"' +ifeq ($(BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS),) +ifeq ($(call qstrip,$(BR2_GCC_TARGET_CPU_REVISION)),) +HOST_GCC_COMMON_WRAPPER_TARGET_CPU := $(call qstrip,$(BR2_GCC_TARGET_CPU)) +else +HOST_GCC_COMMON_WRAPPER_TARGET_CPU := $(call qstrip,$(BR2_GCC_TARGET_CPU)-$(BR2_GCC_TARGET_CPU_REVISION)) +endif +HOST_GCC_COMMON_WRAPPER_TARGET_ARCH := $(call qstrip,$(BR2_GCC_TARGET_ARCH)) +HOST_GCC_COMMON_WRAPPER_TARGET_ABI := $(call qstrip,$(BR2_GCC_TARGET_ABI)) +HOST_GCC_COMMON_WRAPPER_TARGET_FPU := $(call qstrip,$(BR2_GCC_TARGET_FPU)) +HOST_GCC_COMMON_WRAPPER_TARGET_FLOAT_ABI := $(call qstrip,$(BR2_GCC_TARGET_FLOAT_ABI)) +HOST_GCC_COMMON_WRAPPER_TARGET_MODE := $(call qstrip,$(BR2_GCC_TARGET_MODE)) + +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_ARCH),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARCH='"$(HOST_GCC_COMMON_WRAPPER_TARGET_ARCH)"' +endif +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_CPU),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_CPU='"$(HOST_GCC_COMMON_WRAPPER_TARGET_CPU)"' +endif +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_ABI),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_ABI='"$(HOST_GCC_COMMON_WRAPPER_TARGET_ABI)"' +endif +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_FPU),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_FPU='"$(HOST_GCC_COMMON_WRAPPER_TARGET_FPU)"' +endif +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_FLOATABI_),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_FLOAT_ABI='"$(HOST_GCC_COMMON_WRAPPER_TARGET_FLOATABI_)"' +endif +ifneq ($(HOST_GCC_COMMON_WRAPPER_TARGET_MODE),) +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_MODE='"$(HOST_GCC_COMMON_WRAPPER_TARGET_MODE)"' +endif +endif # !BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS # For gcc-initial, we need to tell gcc that the C library will be # providing the ssp support, as it can't guess it since the C library @@ -233,13 +293,19 @@ HOST_GCC_COMMON_MAKE_OPTS = \ ifeq ($(BR2_CCACHE),y) HOST_GCC_COMMON_CCACHE_HASH_FILES += $(DL_DIR)/$(GCC_SOURCE) -# Cfr. PATCH_BASE_DIRS in .stamp_patched, but we catch both versioned and -# unversioned patches unconditionally + +# Cfr. PATCH_BASE_DIRS in .stamp_patched, but we catch both versioned +# and unversioned patches unconditionally. Moreover, to facilitate the +# addition of gcc patches in BR2_GLOBAL_PATCH_DIR, we allow them to be +# stored in a sub-directory called 'gcc' even if it's not technically +# the name of the package. HOST_GCC_COMMON_CCACHE_HASH_FILES += \ $(sort $(wildcard \ package/gcc/$(GCC_VERSION)/*.patch \ - $(addsuffix /$((PKG)_RAWNAME)/$(GCC_VERSION)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ - $(addsuffix /$((PKG)_RAWNAME)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))))) + $(addsuffix /$($(PKG)_RAWNAME)/$(GCC_VERSION)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ + $(addsuffix /$($(PKG)_RAWNAME)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ + $(addsuffix /gcc/$(GCC_VERSION)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ + $(addsuffix /gcc/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))))) ifeq ($(BR2_xtensa),y) HOST_GCC_COMMON_CCACHE_HASH_FILES += $(HOST_GCC_XTENSA_OVERLAY_TAR) endif @@ -265,6 +331,8 @@ endif # BR2_CCACHE # 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. +# According to gfortran manpage, it supports all options supported by gcc, so +# add gfortran to the list of the program called via the Buildroot wrapper. # Avoid that a .br_real is symlinked a second time. # Also create -linux- symlinks. define HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS @@ -276,7 +344,7 @@ define HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS *-ar|*-ranlib|*-nm) \ ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \ ;; \ - *cc|*cc-*|*++|*++-*|*cpp) \ + *cc|*cc-*|*++|*++-*|*cpp|*-gfortran) \ rm -f $$i.br_real; \ mv $$i $$i.br_real; \ ln -sf toolchain-wrapper $$i; \ diff --git a/package/gcr/Config.in b/package/gcr/Config.in index cd40ca18f6..e233fffed0 100644 --- a/package/gcr/Config.in +++ b/package/gcr/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_GCR bool "gcr" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # gnupg2 depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 diff --git a/package/gd/0003-gd_bmp-fix-build-with-uClibc.patch b/package/gd/0002-gd_bmp-fix-build-with-uClibc.patch similarity index 100% rename from package/gd/0003-gd_bmp-fix-build-with-uClibc.patch rename to package/gd/0002-gd_bmp-fix-build-with-uClibc.patch diff --git a/package/gd/0002-no-zlib.patch b/package/gd/0002-no-zlib.patch deleted file mode 100644 index 65cf7f8f19..0000000000 --- a/package/gd/0002-no-zlib.patch +++ /dev/null @@ -1,51 +0,0 @@ -[PATCH] gd_gd2: provide dummy implementations for all public symbols when !zlib - -gd_gd2.c only provides dummy implementations for some of it's public symbols -when zlib isn't found, causing build failures in several of the tools. - -Fix it by providing dummy implementations for all of them. - -Signed-off-by: Peter Korsgaard ---- - gd_gd2.c | 30 ++++++++++++++++++++++++++++++ - 1 file changed, 30 insertions(+) - -Index: gd-2.0.35/gd_gd2.c -=================================================================== ---- gd-2.0.35.orig/src/gd_gd2.c -+++ gd-2.0.35/src/gd_gd2.c -@@ -1068,4 +1068,34 @@ - fprintf (stderr, "GD2 support is not available - no libz\n"); - return NULL; - } -+ -+BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Part (FILE * inFile, int srcx, int srcy, int w, int h) -+{ -+ fprintf (stderr, "GD2 support is not available - no libz\n"); -+ return NULL; -+} -+ -+BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2PartPtr (int size, void *data, int srcx, int srcy, int w, -+ int h) -+{ -+ fprintf (stderr, "GD2 support is not available - no libz\n"); -+ return NULL; -+} -+ -+BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2PartCtx (gdIOCtx * in, int srcx, int srcy, int w, int h) -+{ -+ fprintf (stderr, "GD2 support is not available - no libz\n"); -+ return NULL; -+} -+ -+BGD_DECLARE(void) gdImageGd2 (gdImagePtr im, FILE * outFile, int cs, int fmt) -+{ -+ fprintf (stderr, "GD2 support is not available - no libz\n"); -+} -+ -+BGD_DECLARE(void *) gdImageGd2Ptr (gdImagePtr im, int cs, int fmt, int *size) -+{ -+ fprintf (stderr, "GD2 support is not available - no libz\n"); -+ return NULL; -+} - #endif /* HAVE_LIBZ */ diff --git a/package/gd/0004-webp-pre.patch b/package/gd/0004-webp-pre.patch deleted file mode 100644 index a4bc068b18..0000000000 --- a/package/gd/0004-webp-pre.patch +++ /dev/null @@ -1,37 +0,0 @@ -Patch committed upstream -https://bitbucket.org/libgd/gd-libgd/commits/c7e5dc617c7466c44935cdefbe7e79de319f98ca?at=master - -Downloaded from Gentoo -https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/gd/files/gd-2.1.1-webp-pre.patch?revision=1.1&view=markup - -Signed-off-by: Bernd Kuhls - ---- -https://bugs.gentoo.org/545956 - -From c7e5dc617c7466c44935cdefbe7e79de319f98ca Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Sat, 17 Jan 2015 08:20:17 +0100 -Subject: [PATCH] fix #111, invalid default quantization - ---- - src/gd_webp.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/gd_webp.c b/src/gd_webp.c -index fae3861..a3ae1ac 100644 ---- a/src/gd_webp.c -+++ b/src/gd_webp.c -@@ -185,6 +185,9 @@ BGD_DECLARE(void) gdImageWebpCtx (gdImagePtr im, gdIOCtx * outfile, int quantiza - gd_error("gd-webp error: cannot allocate Y buffer"); - return; - } -+ if (quantization == -1) { -+ quantization = 80; -+ } - vp8_quality = mapQualityToVP8QP(quantization); - - U = Y + width * height; --- -2.3.5 - diff --git a/package/gd/0005-webp.patch b/package/gd/0005-webp.patch deleted file mode 100644 index f648a87536..0000000000 --- a/package/gd/0005-webp.patch +++ /dev/null @@ -1,418 +0,0 @@ -Patch committed upstream -https://bitbucket.org/libgd/gd-libgd/commits/a79232c5fa692c3b6e3f5bc95ecfc455424c3f54?at=master - -Downloaded from Gentoo -https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/gd/files/gd-2.1.1-webp.patch?revision=1.1&view=markup - -Signed-off-by: Bernd Kuhls - ---- -https://bugs.gentoo.org/545956 - -From a79232c5fa692c3b6e3f5bc95ecfc455424c3f54 Mon Sep 17 00:00:00 2001 -From: Pierre Joye -Date: Tue, 20 Jan 2015 04:55:11 +0100 -Subject: [PATCH] fix #129, drop VPX usage in favor of libwebp - ---- - configure.ac | 80 +++++------------ - src/gd_webp.c | 231 +++++++++++++++++++++----------------------------- - tests/Makefile.am | 2 +- - tests/webp/bug00111.c | 2 +- - 4 files changed, 122 insertions(+), 193 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 1024a3a..8923186 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -317,63 +317,6 @@ if test "$with_xpm" != no; then - fi - AM_CONDITIONAL([HAVE_LIBXPM], test "$with_xpm" = yes) - --dnl check for libvpx by default --AC_ARG_WITH(vpx,dnl --[ --with-vpx=DIR where to find the vpx library]) -- --case $with_vpx in --no) ;; --yes|"") -- PKG_CHECK_MODULES([LIBVPX], vpx, [with_vpx=yes], -- [ -- PKG_CHECK_MODULES([LIBVPX], libvpx, [with_vpx=yes], -- [ -- if test "$with_vpx" = yes; then -- AC_MSG_ERROR([VPX support requested, but not found]) -- fi -- with_vpx=no -- ]) -- ]) -- ;; --*) -- save_LIBS="$LIBS" -- save_CPPFLAGS="$CPPFLAGS" -- -- if test -d "$with_vpx"; then -- LIBVPX_CFLAGS="-I$with_vpx/include" -- LIBVPX_LIBS="-L$with_vpx/lib -lvpx" -- fi -- -- CPPFLAGS="$CPPFLAGS $LIBVPX_CFLAGS" -- LIBS="$LIBS $LIBVPX_LIBS" -- -- AC_CHECK_LIB(vpx,vpx_codec_destroy, -- [ -- if test -z "$LIBVPX_LIBS"; then -- LIBVPX_LIBS="-lvpx" -- fi -- with_vpx=yes -- ],[ -- if test "$with_vpx" != ""; then -- AC_MSG_ERROR([vpx support requested, but not found]) -- else -- with_vpx=no -- fi -- ]) -- -- CPPFLAGS="$save_CPPFLAGS" -- LIBS="$save_LIBS" -- ;; --esac -- --if test "$with_vpx" != no; then -- CPPFLAGS="$CPPFLAGS $LIBVPX_CFLAGS" -- LIBS="$LIBS $LIBVPX_LIBS" -- FEATURES="GD_VPX $FEATURES" -- AC_DEFINE(HAVE_LIBVPX, 1, [ Define if you have the VPX library. ]) --fi --AM_CONDITIONAL([HAVE_LIBVPX], test "$with_vpx" = yes) -- - dnl check for libtiff by default - AC_ARG_WITH(tiff,dnl - [ --with-tiff=DIR where to find the TIFF library]) -@@ -437,6 +380,27 @@ if test "$mingw_cv_win32_host" = yes; then - AC_DEFINE([BGDWIN32], [], [Define is you are building for Win32 API]) - fi - -+ -+dnl check for libwebp by default -+AC_ARG_WITH(webp,dnl -+[ --with-webp=DIR where to find the webp library], -+ [if test -d "$withval"; then -+ LDFLAGS="$LDFLAGS -L$withval/lib" -+ CFLAGS="$CFLAGS -I$withval/include" -+ fi], -+ withval=yes) -+ -+if test "$withval" != no; then -+ AC_CHECK_LIB(webp,WebPGetInfo, -+ [LIBS="-lwebp $LIBS" -+ FEATURES="GD_WEBP $FEATURES" -+ AC_DEFINE(HAVE_LIBWEBP, 1, [ Define if you have the webp library. ])]) -+ with_webp=yes -+else -+ with_webp=no -+fi -+AM_CONDITIONAL([HAVE_LIBWEBP], test "$with_webp" = yes) -+ - dnl report configuration - AC_MSG_RESULT([ - ** Configuration summary for $PACKAGE $VERSION: -@@ -444,7 +408,7 @@ AC_MSG_RESULT([ - Support for Zlib: $with_zlib - Support for PNG library: $with_png - Support for JPEG library: $ac_cv_lib_jpeg_jpeg_set_defaults -- Support for VPX library: $with_vpx -+ Support for WebP library: $with_webp - Support for TIFF library: $with_tiff - Support for Freetype 2.x library: $with_freetype - Support for Fontconfig library: $with_fontconfig -diff --git a/src/gd_webp.c b/src/gd_webp.c -index a3ae1ac..c44bd80 100644 ---- a/src/gd_webp.c -+++ b/src/gd_webp.c -@@ -2,33 +2,21 @@ - #include "config.h" - #endif /* HAVE_CONFIG_H */ - -+ -+#ifdef HAVE_LIBWEBP - #include - #include - #include - #include - #include "gd.h" - #include "gd_errors.h" -- --#ifdef HAVE_LIBVPX --#include "webpimg.h" - #include "gdhelpers.h" -+#include "webp/decode.h" -+#include "webp/encode.h" - --extern void gd_YUV420toRGBA(uint8* Y, -- uint8* U, -- uint8* V, -- gdImagePtr im); -- --extern void gd_RGBAToYUV420(gdImagePtr im2, -- uint8* Y, -- uint8* U, -- uint8* V); -- --const char * gdWebpGetVersionString() --{ -- return "not defined"; --} -+#define GD_WEBP_ALLOC_STEP (4*1024) - --BGD_DECLARE(gdImagePtr) gdImageCreateFromWebp (FILE * inFile) -+gdImagePtr gdImageCreateFromWebp (FILE * inFile) - { - gdImagePtr im; - gdIOCtx *in = gdNewFileCtx(inFile); -@@ -38,42 +26,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromWebp (FILE * inFile) - return im; - } - --BGD_DECLARE(gdImagePtr) gdImageCreateFromWebpPtr (int size, void *data) -+gdImagePtr gdImageCreateFromWebpCtx (gdIOCtx * infile) - { -- int width, height, ret; -- unsigned char *Y = NULL; -- unsigned char *U = NULL; -- unsigned char *V = NULL; -- gdImagePtr im; -- -- ret = WebPDecode(data, size, &Y, &U, &V, &width, &height); -- if (ret != webp_success) { -- if (Y) free(Y); -- if (U) free(U); -- if (V) free(V); -- gd_error("WebP decode: fail to decode input data"); -- return NULL; -- } -- im = gdImageCreateTrueColor(width, height); -- if (!im) { -- return NULL; -- } -- gd_YUV420toRGBA(Y, U, V, im); -- return im; --} -- --#define GD_WEBP_ALLOC_STEP (4*1024) -- --BGD_DECLARE(gdImagePtr) gdImageCreateFromWebpCtx (gdIOCtx * infile) --{ -- int width, height, ret; -- unsigned char *filedata = NULL; -+ int width, height; -+ uint8_t *filedata = NULL; -+ uint8_t *argb = NULL; - unsigned char *read, *temp; -- unsigned char *Y = NULL; -- unsigned char *U = NULL; -- unsigned char *V = NULL; - size_t size = 0, n; - gdImagePtr im; -+ int x, y; -+ uint8_t *p; - - do { - temp = gdRealloc(filedata, size+GD_WEBP_ALLOC_STEP); -@@ -89,23 +51,97 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromWebpCtx (gdIOCtx * infile) - } - - n = gdGetBuf(read, GD_WEBP_ALLOC_STEP, infile); -- size += n; -- } while (n>0); -+ if (n>0 && n!=EOF) { -+ size += n; -+ } -+ } while (n>0 && n!=EOF); - -- ret = WebPDecode(filedata, size, &Y, &U, &V, &width, &height); -- gdFree(filedata); -- if (ret != webp_success) { -- if (Y) free(Y); -- if (U) free(U); -- if (V) free(V); -- gd_error("WebP decode: fail to decode input data"); -+ if (WebPGetInfo(filedata,size, &width, &height) == 0) { -+ gd_error("gd-webp cannot get webp info"); - return NULL; - } -+ - im = gdImageCreateTrueColor(width, height); -- gd_YUV420toRGBA(Y, U, V, im); -+ if (!im) { -+ return NULL; -+ } -+ argb = WebPDecodeARGB(filedata, size, &width, &height); -+ if (!argb) { -+ gd_error("gd-webp cannot allocate temporary buffer"); -+ gdFree(argb); -+ return NULL; -+ } -+ for (y = 0, p = argb; y < height; y++) { -+ for (x = 0; x < width; x++) { -+ register uint8_t a = gdAlphaMax - (*(p++) >> 1); -+ register uint8_t r = *(p++); -+ register uint8_t g = *(p++); -+ register uint8_t b = *(p++); -+ im->tpixels[y][x] = gdTrueColorAlpha(r, g, b, a); -+ } -+ } -+ gdFree(filedata); -+ free(argb); -+ im->saveAlphaFlag = 1; - return im; - } - -+void gdImageWebpCtx (gdImagePtr im, gdIOCtx * outfile, int quantization) -+{ -+ uint8_t *argb; -+ int x, y; -+ uint8_t *p; -+ uint8_t *out; -+ size_t out_size; -+ -+ if (im == NULL) { -+ return; -+ } -+ -+ if (!gdImageTrueColor(im)) { -+ gd_error("Paletter image not supported by webp"); -+ return; -+ } -+ -+ if (quantization == -1) { -+ quantization = 80; -+ } -+ -+ argb = (uint8_t *)gdMalloc(gdImageSX(im) * 4 * gdImageSY(im)); -+ if (!argb) { -+ return; -+ } -+ p = argb; -+ for (y = 0; y < gdImageSY(im); y++) { -+ for (x = 0; x < gdImageSX(im); x++) { -+ register int c; -+ register char a; -+ c = im->tpixels[y][x]; -+ a = gdTrueColorGetAlpha(c); -+ if (a == 127) { -+ a = 0; -+ } else { -+ a = 255 - ((a << 1) + (a >> 6)); -+ } -+ *(p++) = gdTrueColorGetRed(c); -+ *(p++) = gdTrueColorGetGreen(c); -+ *(p++) = gdTrueColorGetBlue(c); -+ *(p++) = a; -+ } -+ } -+ out_size = WebPEncodeRGBA(argb, gdImageSX(im), gdImageSY(im), gdImageSX(im) * 4, quantization, &out); -+ printf("outsize: %i\n", out_size); -+ if (out_size == 0) { -+ gd_error("gd-webp encoding failed"); -+ goto freeargb; -+ } -+ gdPutBuf(out, out_size, outfile); -+ free(out); -+ -+freeargb: -+ gdFree(argb); -+} -+ - BGD_DECLARE(void) gdImageWebpEx (gdImagePtr im, FILE * outFile, int quantization) - { - gdIOCtx *out = gdNewFileCtx(outFile); -@@ -116,7 +152,7 @@ BGD_DECLARE(void) gdImageWebpEx (gdImagePtr im, FILE * outFile, int quantization - BGD_DECLARE(void) gdImageWebp (gdImagePtr im, FILE * outFile) - { - gdIOCtx *out = gdNewFileCtx(outFile); -- gdImageWebpCtx(im, out, -1); -+ gdImageWebpCtx(im, out, -1); - out->gd_free(out); - } - -@@ -140,75 +176,4 @@ BGD_DECLARE(void *) gdImageWebpPtrEx (gdImagePtr im, int *size, int quantization - out->gd_free(out); - return rv; - } -- --/* -- * Maps normalized QP (quality) to VP8 QP -- */ --int mapQualityToVP8QP(int quality) { --#define MIN_QUALITY 0 --#define MAX_QUALITY 100 --#define MIN_VP8QP 1 --#define MAX_VP8QP 63 -- const float scale = MAX_VP8QP - MIN_VP8QP; -- const float vp8qp = -- scale * (MAX_QUALITY - quality) / (MAX_QUALITY - MIN_QUALITY) + MIN_VP8QP; -- if (quality < MIN_QUALITY || quality > MAX_QUALITY) { -- gd_error("Wrong quality value %d.", quality); -- return -1; -- } -- -- return (int)(vp8qp + 0.5); --} -- --/* This routine is based in part on code from Dale Lutz (Safe Software Inc.) -- * and in part on demo code from Chapter 15 of "PNG: The Definitive Guide" -- * (http://www.cdrom.com/pub/png/pngbook.html). -- */ --BGD_DECLARE(void) gdImageWebpCtx (gdImagePtr im, gdIOCtx * outfile, int quantization) --{ -- int width = im->sx; -- int height = im->sy; -- -- int yuv_width, yuv_height, yuv_nbytes, ret; -- int vp8_quality; -- unsigned char *Y = NULL, -- *U = NULL, -- *V = NULL; -- unsigned char *filedata = NULL; -- -- /* Conversion to Y,U,V buffer */ -- yuv_width = (width + 1) >> 1; -- yuv_height = (height + 1) >> 1; -- yuv_nbytes = width * height + 2 * yuv_width * yuv_height; -- -- if ((Y = (unsigned char *)gdCalloc(yuv_nbytes, sizeof(unsigned char))) == NULL) { -- gd_error("gd-webp error: cannot allocate Y buffer"); -- return; -- } -- if (quantization == -1) { -- quantization = 80; -- } -- vp8_quality = mapQualityToVP8QP(quantization); -- -- U = Y + width * height; -- V = U + yuv_width * yuv_height; -- gd_RGBAToYUV420(im, Y, U, V); -- -- /* Encode Y,U,V and write data to file */ -- ret = WebPEncode(Y, U, V, width, height, width, yuv_width, yuv_height, yuv_width, -- vp8_quality, &filedata, &yuv_nbytes, NULL); -- gdFree(Y); -- -- if (ret != webp_success) { -- if (filedata) { -- free(filedata); -- } -- gd_error("gd-webp error: WebP Encoder failed"); -- return; -- } -- -- gdPutBuf (filedata, yuv_nbytes, outfile); -- free(filedata); --} -- --#endif /* HAVE_LIBVPX */ -+#endif /* HAVE_LIBWEBP */ --- -2.3.5 - diff --git a/package/gd/Config.in b/package/gd/Config.in index e83863508b..861cef885c 100644 --- a/package/gd/Config.in +++ b/package/gd/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_GD +menuconfig BR2_PACKAGE_GD bool "gd" help GD is a graphics library. It allows your code to quickly @@ -8,12 +8,10 @@ config BR2_PACKAGE_GD useful in World Wide Web applications, where PNG is one of the formats accepted for inline images by most browsers. - http://libgd.bitbucket.org/ + https://libgd.github.io/ if BR2_PACKAGE_GD -menu "gd tools" - config BR2_PACKAGE_GD_ANNOTATE bool "annotate" @@ -57,6 +55,4 @@ config BR2_PACKAGE_GD_WEBPNG bool "webpng" select BR2_PACKAGE_LIBPNG -endmenu - endif diff --git a/package/gd/gd.hash b/package/gd/gd.hash index 8edbb1ad52..a1991b1820 100644 --- a/package/gd/gd.hash +++ b/package/gd/gd.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9ada1ed45594abc998ebc942cef12b032fbad672e73efc22bc9ff54f5df2b285 libgd-2.1.1.tar.xz +sha256 137f13a7eb93ce72e32ccd7cebdab6874f8cf7ddf31d3a455a68e016ecd9e4e6 libgd-2.2.4.tar.xz diff --git a/package/gd/gd.mk b/package/gd/gd.mk index c0562418a8..63d16eb3ca 100644 --- a/package/gd/gd.mk +++ b/package/gd/gd.mk @@ -4,15 +4,14 @@ # ################################################################################ -GD_VERSION = 2.1.1 +GD_VERSION = 2.2.4 GD_SOURCE = libgd-$(GD_VERSION).tar.xz -GD_SITE = https://bitbucket.org/libgd/gd-libgd/downloads -GD_AUTORECONF = YES +GD_SITE = https://github.com/libgd/libgd/releases/download/gd-$(GD_VERSION) GD_INSTALL_STAGING = YES GD_LICENSE = GD license GD_LICENSE_FILES = COPYING GD_CONFIG_SCRIPTS = gdlib-config -GD_CONF_OPTS = --without-x --disable-rpath +GD_CONF_OPTS = --without-x --disable-rpath --disable-werror GD_DEPENDENCIES = host-pkgconf # gd forgets to link utilities with -pthread even though it uses diff --git a/package/gdb/7.10.1/0005-target.h-include-sys-types.h.patch b/package/gdb/7.10.1/0005-target.h-include-sys-types.h.patch new file mode 100644 index 0000000000..ba5419d244 --- /dev/null +++ b/package/gdb/7.10.1/0005-target.h-include-sys-types.h.patch @@ -0,0 +1,30 @@ +From cd68d0ebe7748a5448c86eb021b717df6fe83f35 Mon Sep 17 00:00:00 2001 +From: Doug Evans +Date: Sun, 22 Nov 2015 17:24:03 -0800 +Subject: [PATCH] target.h: #include . + +For musl. + +[Romain: + rebase on gdb 7.10.1 from upstream (7.11) + remove ChangeLog entry] +Signed-off-by: Romain Naour +--- + gdb/gdbserver/target.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gdb/gdbserver/target.h b/gdb/gdbserver/target.h +index 9a40867..6af043c 100644 +--- a/gdb/gdbserver/target.h ++++ b/gdb/gdbserver/target.h +@@ -21,6 +21,7 @@ + #ifndef TARGET_H + #define TARGET_H + ++#include /* for mode_t */ + #include "target/target.h" + #include "target/resume.h" + #include "target/wait.h" +-- +2.5.5 + diff --git a/package/gdb/7.10.1/0006-Revert-sim-unify-SIM_CPU-definition.patch b/package/gdb/7.10.1/0006-Revert-sim-unify-SIM_CPU-definition.patch new file mode 100644 index 0000000000..20b7fb2341 --- /dev/null +++ b/package/gdb/7.10.1/0006-Revert-sim-unify-SIM_CPU-definition.patch @@ -0,0 +1,372 @@ +From 4d913bb73965fdb9c756e8d5916a829b60aa3a44 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 4 Aug 2016 23:44:24 +0200 +Subject: [PATCH] Revert "sim: unify SIM_CPU definition" + +This reverts commit 20bca71d82598a015de0991196e45f0b5f7ead81. + +This change causes a redefinition of SIM_CPU on the Blackfin +architecture, as it is defined in both the common sim/common/sim-base.h +and the architecture specific sim/bfin/sim-main.h. + +Signed-off-by: Thomas Petazzoni +--- + sim/arm/sim-main.h | 3 +++ + sim/avr/sim-main.h | 2 ++ + sim/bfin/sim-main.h | 2 -- + sim/common/sim-base.h | 2 -- + sim/cr16/sim-main.h | 2 ++ + sim/cris/sim-main.h | 5 +++++ + sim/d10v/sim-main.h | 2 ++ + sim/frv/sim-main.h | 10 ++++++++++ + sim/ft32/sim-main.h | 2 ++ + sim/h8300/sim-main.h | 3 +++ + sim/iq2000/sim-main.h | 5 +++++ + sim/lm32/sim-main.h | 5 +++++ + sim/m32r/sim-main.h | 5 +++++ + sim/m68hc11/sim-main.h | 3 +++ + sim/mcore/sim-main.h | 2 ++ + sim/microblaze/sim-main.h | 3 +++ + sim/mips/sim-main.h | 3 +++ + sim/mn10300/sim-main.h | 2 ++ + sim/moxie/sim-main.h | 3 +++ + sim/msp430/sim-main.h | 3 +++ + sim/sh/sim-main.h | 3 +++ + sim/sh64/sim-main.h | 5 +++++ + sim/v850/sim-main.h | 3 +++ + 23 files changed, 74 insertions(+), 4 deletions(-) + +diff --git a/sim/arm/sim-main.h b/sim/arm/sim-main.h +index 9a37b98..ae622bd 100644 +--- a/sim/arm/sim-main.h ++++ b/sim/arm/sim-main.h +@@ -20,6 +20,9 @@ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/avr/sim-main.h b/sim/avr/sim-main.h +index e0cac22..52904e3 100644 +--- a/sim/avr/sim-main.h ++++ b/sim/avr/sim-main.h +@@ -23,6 +23,8 @@ along with this program. If not, see . */ + + extern unsigned int pc; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + struct _sim_cpu { +diff --git a/sim/bfin/sim-main.h b/sim/bfin/sim-main.h +index 806fe15..53e1774 100644 +--- a/sim/bfin/sim-main.h ++++ b/sim/bfin/sim-main.h +@@ -24,8 +24,6 @@ + #include "sim-basics.h" + #include "sim-signal.h" + +-/* TODO: Delete this. Need to convert bu32/etc... to common sim types +- and unwind the bfin-sim.h/machs.h include below first though. */ + typedef struct _sim_cpu SIM_CPU; + + #include "bfin-sim.h" +diff --git a/sim/common/sim-base.h b/sim/common/sim-base.h +index 21f61f4..e90e07c 100644 +--- a/sim/common/sim-base.h ++++ b/sim/common/sim-base.h +@@ -72,8 +72,6 @@ typedef address_word sim_cia; + #define INVALID_INSTRUCTION_ADDRESS ((address_word)0 - 1) + #endif + +-/* TODO: Probably should just delete SIM_CPU. */ +-typedef struct _sim_cpu SIM_CPU; + typedef struct _sim_cpu sim_cpu; + + #include "sim-module.h" +diff --git a/sim/cr16/sim-main.h b/sim/cr16/sim-main.h +index a63b93e..1a80229 100644 +--- a/sim/cr16/sim-main.h ++++ b/sim/cr16/sim-main.h +@@ -24,6 +24,8 @@ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/cris/sim-main.h b/sim/cris/sim-main.h +index 4dc04a2..fec0039 100644 +--- a/sim/cris/sim-main.h ++++ b/sim/cris/sim-main.h +@@ -24,6 +24,11 @@ along with this program. If not, see . */ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++#define USING_SIM_BASE_H ++ ++struct _sim_cpu; ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/d10v/sim-main.h b/sim/d10v/sim-main.h +index 0b87811..a7d59dd 100644 +--- a/sim/d10v/sim-main.h ++++ b/sim/d10v/sim-main.h +@@ -24,6 +24,8 @@ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/frv/sim-main.h b/sim/frv/sim-main.h +index d5a67cb..fd12c4f 100644 +--- a/sim/frv/sim-main.h ++++ b/sim/frv/sim-main.h +@@ -19,6 +19,16 @@ along with this program. If not, see . */ + + /* Main header for the frv. */ + ++#define USING_SIM_BASE_H /* FIXME: quick hack */ ++ ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ ++/* Set the mask of unsupported traces. */ ++#define WITH_TRACE \ ++ (~(TRACE_alu | TRACE_decode | TRACE_memory | TRACE_model | TRACE_fpu \ ++ | TRACE_branch | TRACE_debug)) ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/ft32/sim-main.h b/sim/ft32/sim-main.h +index b27a690..a270a5d 100644 +--- a/sim/ft32/sim-main.h ++++ b/sim/ft32/sim-main.h +@@ -25,6 +25,8 @@ + #include "sim-base.h" + #include "bfd.h" + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "ft32-sim.h" + + struct _sim_cpu { +diff --git a/sim/h8300/sim-main.h b/sim/h8300/sim-main.h +index 6dbc1ac..e95c4d9 100644 +--- a/sim/h8300/sim-main.h ++++ b/sim/h8300/sim-main.h +@@ -87,6 +87,9 @@ enum h8_typecodes { + }; + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + /* Structure used to describe addressing */ +diff --git a/sim/iq2000/sim-main.h b/sim/iq2000/sim-main.h +index 992520a..ce3baba 100644 +--- a/sim/iq2000/sim-main.h ++++ b/sim/iq2000/sim-main.h +@@ -4,6 +4,11 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++#define USING_SIM_BASE_H /* FIXME: quick hack */ ++ ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/lm32/sim-main.h b/sim/lm32/sim-main.h +index 4894e8d..210bb8b 100644 +--- a/sim/lm32/sim-main.h ++++ b/sim/lm32/sim-main.h +@@ -23,6 +23,11 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++#define USING_SIM_BASE_H /* FIXME: quick hack */ ++ ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/m32r/sim-main.h b/sim/m32r/sim-main.h +index cd39e98..74bb513 100644 +--- a/sim/m32r/sim-main.h ++++ b/sim/m32r/sim-main.h +@@ -3,6 +3,11 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++#define USING_SIM_BASE_H /* FIXME: quick hack */ ++ ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/m68hc11/sim-main.h b/sim/m68hc11/sim-main.h +index d1fc582..4f41db9 100644 +--- a/sim/m68hc11/sim-main.h ++++ b/sim/m68hc11/sim-main.h +@@ -25,6 +25,9 @@ along with this program. If not, see . */ + #define SIM_HANDLES_LMA 1 + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-signal.h" + #include "sim-base.h" + +diff --git a/sim/mcore/sim-main.h b/sim/mcore/sim-main.h +index be50ec1..25698c1 100644 +--- a/sim/mcore/sim-main.h ++++ b/sim/mcore/sim-main.h +@@ -24,6 +24,8 @@ along with this program. If not, see . */ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/microblaze/sim-main.h b/sim/microblaze/sim-main.h +index 6781374..6b7b776 100644 +--- a/sim/microblaze/sim-main.h ++++ b/sim/microblaze/sim-main.h +@@ -20,6 +20,9 @@ + + #include "microblaze.h" + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + /* The machine state. +diff --git a/sim/mips/sim-main.h b/sim/mips/sim-main.h +index 8d698ad..9729804 100644 +--- a/sim/mips/sim-main.h ++++ b/sim/mips/sim-main.h +@@ -29,6 +29,9 @@ along with this program. If not, see . */ + mips_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR)) + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/mn10300/sim-main.h b/sim/mn10300/sim-main.h +index 847506e..2ddbfb9 100644 +--- a/sim/mn10300/sim-main.h ++++ b/sim/mn10300/sim-main.h +@@ -42,6 +42,8 @@ + #include "itable.h" + #include "idecode.h" + ++typedef struct _sim_cpu SIM_CPU; ++ + #define WITH_WATCHPOINTS 1 + + #define SIM_CORE_SIGNAL(SD,CPU,CIA,MAP,NR_BYTES,ADDR,TRANSFER,ERROR) \ +diff --git a/sim/moxie/sim-main.h b/sim/moxie/sim-main.h +index b1a64fc..c60437e 100644 +--- a/sim/moxie/sim-main.h ++++ b/sim/moxie/sim-main.h +@@ -21,6 +21,9 @@ along with this program. If not, see . */ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/msp430/sim-main.h b/sim/msp430/sim-main.h +index 19c8cca..37bb42d 100644 +--- a/sim/msp430/sim-main.h ++++ b/sim/msp430/sim-main.h +@@ -23,6 +23,9 @@ + + #include "sim-basics.h" + #include "sim-signal.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "msp430-sim.h" + #include "sim-base.h" + +diff --git a/sim/sh/sim-main.h b/sim/sh/sim-main.h +index e67df28..e2e17d7 100644 +--- a/sim/sh/sim-main.h ++++ b/sim/sh/sim-main.h +@@ -20,6 +20,9 @@ along with this program. If not, see . */ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + typedef struct +diff --git a/sim/sh64/sim-main.h b/sim/sh64/sim-main.h +index 7b24ab0..8fb595e 100644 +--- a/sim/sh64/sim-main.h ++++ b/sim/sh64/sim-main.h +@@ -3,6 +3,11 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++#define USING_SIM_BASE_H /* FIXME: quick hack */ ++ ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/v850/sim-main.h b/sim/v850/sim-main.h +index 5127d28..16cbd97 100644 +--- a/sim/v850/sim-main.h ++++ b/sim/v850/sim-main.h +@@ -16,6 +16,9 @@ + #include "sim-basics.h" + #include "sim-signal.h" + #include "sim-fpu.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + #include "simops.h" +-- +2.7.4 + diff --git a/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch b/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch new file mode 100644 index 0000000000..8a8eece684 --- /dev/null +++ b/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch @@ -0,0 +1,355 @@ +From 77080d5f7fd47dd567f22807d336bc9111f93d7b Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 4 Aug 2016 23:44:24 +0200 +Subject: [PATCH] Revert "sim: unify SIM_CPU definition" + +This reverts commit 20bca71d82598a015de0991196e45f0b5f7ead81. + +This change causes a redefinition of SIM_CPU on the Blackfin +architecture, as it is defined in both the common sim/common/sim-base.h +and the architecture specific sim/bfin/sim-main.h. + +Signed-off-by: Thomas Petazzoni +--- + sim/arm/sim-main.h | 3 +++ + sim/avr/sim-main.h | 2 ++ + sim/bfin/sim-main.h | 2 -- + sim/common/sim-base.h | 2 -- + sim/cr16/sim-main.h | 2 ++ + sim/cris/sim-main.h | 3 +++ + sim/d10v/sim-main.h | 2 ++ + sim/frv/sim-main.h | 3 +++ + sim/ft32/sim-main.h | 2 ++ + sim/h8300/sim-main.h | 3 +++ + sim/iq2000/sim-main.h | 3 +++ + sim/lm32/sim-main.h | 3 +++ + sim/m32r/sim-main.h | 3 +++ + sim/m68hc11/sim-main.h | 3 +++ + sim/mcore/sim-main.h | 2 ++ + sim/microblaze/sim-main.h | 3 +++ + sim/mips/sim-main.h | 3 +++ + sim/mn10300/sim-main.h | 2 ++ + sim/moxie/sim-main.h | 3 +++ + sim/msp430/sim-main.h | 3 +++ + sim/sh/sim-main.h | 3 +++ + sim/sh64/sim-main.h | 3 +++ + sim/v850/sim-main.h | 3 +++ + 23 files changed, 57 insertions(+), 4 deletions(-) + +diff --git a/sim/arm/sim-main.h b/sim/arm/sim-main.h +index 3620810..f644122 100644 +--- a/sim/arm/sim-main.h ++++ b/sim/arm/sim-main.h +@@ -20,6 +20,9 @@ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/avr/sim-main.h b/sim/avr/sim-main.h +index 47155e3..cd41045 100644 +--- a/sim/avr/sim-main.h ++++ b/sim/avr/sim-main.h +@@ -21,6 +21,8 @@ along with this program. If not, see . */ + + #include "sim-basics.h" + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + struct _sim_cpu { +diff --git a/sim/bfin/sim-main.h b/sim/bfin/sim-main.h +index 51fb87e..cf1ed57 100644 +--- a/sim/bfin/sim-main.h ++++ b/sim/bfin/sim-main.h +@@ -24,8 +24,6 @@ + #include "sim-basics.h" + #include "sim-signal.h" + +-/* TODO: Delete this. Need to convert bu32/etc... to common sim types +- and unwind the bfin-sim.h/machs.h include below first though. */ + typedef struct _sim_cpu SIM_CPU; + + #include "bfin-sim.h" +diff --git a/sim/common/sim-base.h b/sim/common/sim-base.h +index 350b352..1b849f4 100644 +--- a/sim/common/sim-base.h ++++ b/sim/common/sim-base.h +@@ -72,8 +72,6 @@ typedef address_word sim_cia; + #define INVALID_INSTRUCTION_ADDRESS ((address_word)0 - 1) + #endif + +-/* TODO: Probably should just delete SIM_CPU. */ +-typedef struct _sim_cpu SIM_CPU; + typedef struct _sim_cpu sim_cpu; + + #include "sim-module.h" +diff --git a/sim/cr16/sim-main.h b/sim/cr16/sim-main.h +index 208f917..78e3996 100644 +--- a/sim/cr16/sim-main.h ++++ b/sim/cr16/sim-main.h +@@ -24,6 +24,8 @@ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/cris/sim-main.h b/sim/cris/sim-main.h +index 8aab970..0ff907f 100644 +--- a/sim/cris/sim-main.h ++++ b/sim/cris/sim-main.h +@@ -29,6 +29,9 @@ along with this program. If not, see . */ + one of -scache/-pbb. */ + #define WITH_SCACHE_PBB 1 + ++struct _sim_cpu; ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/d10v/sim-main.h b/sim/d10v/sim-main.h +index 76f06d8..fd5bd51 100644 +--- a/sim/d10v/sim-main.h ++++ b/sim/d10v/sim-main.h +@@ -24,6 +24,8 @@ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/frv/sim-main.h b/sim/frv/sim-main.h +index f95c1cc..701e208 100644 +--- a/sim/frv/sim-main.h ++++ b/sim/frv/sim-main.h +@@ -19,6 +19,9 @@ along with this program. If not, see . */ + + /* Main header for the frv. */ + ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/ft32/sim-main.h b/sim/ft32/sim-main.h +index a15b247..eef0201 100644 +--- a/sim/ft32/sim-main.h ++++ b/sim/ft32/sim-main.h +@@ -25,6 +25,8 @@ + #include "sim-base.h" + #include "bfd.h" + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "ft32-sim.h" + + struct _sim_cpu { +diff --git a/sim/h8300/sim-main.h b/sim/h8300/sim-main.h +index 6dbc1ac..e95c4d9 100644 +--- a/sim/h8300/sim-main.h ++++ b/sim/h8300/sim-main.h +@@ -87,6 +87,9 @@ enum h8_typecodes { + }; + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + /* Structure used to describe addressing */ +diff --git a/sim/iq2000/sim-main.h b/sim/iq2000/sim-main.h +index 829f9bb..a770dc5 100644 +--- a/sim/iq2000/sim-main.h ++++ b/sim/iq2000/sim-main.h +@@ -4,6 +4,9 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/lm32/sim-main.h b/sim/lm32/sim-main.h +index 20e2b71..eeffde3 100644 +--- a/sim/lm32/sim-main.h ++++ b/sim/lm32/sim-main.h +@@ -25,6 +25,9 @@ + + #define WITH_SCACHE_PBB 1 + ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/m32r/sim-main.h b/sim/m32r/sim-main.h +index 5b24ce8..39f7ecc 100644 +--- a/sim/m32r/sim-main.h ++++ b/sim/m32r/sim-main.h +@@ -8,6 +8,9 @@ + one of -scache/-pbb. */ + #define WITH_SCACHE_PBB 1 + ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "symcat.h" + #include "sim-basics.h" + #include "cgen-types.h" +diff --git a/sim/m68hc11/sim-main.h b/sim/m68hc11/sim-main.h +index b940df7..0aa096f 100644 +--- a/sim/m68hc11/sim-main.h ++++ b/sim/m68hc11/sim-main.h +@@ -21,6 +21,9 @@ along with this program. If not, see . */ + #define _SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-signal.h" + #include "sim-base.h" + +diff --git a/sim/mcore/sim-main.h b/sim/mcore/sim-main.h +index fce26e8..fa7ee9f 100644 +--- a/sim/mcore/sim-main.h ++++ b/sim/mcore/sim-main.h +@@ -24,6 +24,8 @@ along with this program. If not, see . */ + typedef long int word; + typedef unsigned long int uword; + ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/microblaze/sim-main.h b/sim/microblaze/sim-main.h +index 3a7b088..9e6bf01 100644 +--- a/sim/microblaze/sim-main.h ++++ b/sim/microblaze/sim-main.h +@@ -20,6 +20,9 @@ + + #include "microblaze.h" + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + /* The machine state. +diff --git a/sim/mips/sim-main.h b/sim/mips/sim-main.h +index 0ea1234..eedbfc9 100644 +--- a/sim/mips/sim-main.h ++++ b/sim/mips/sim-main.h +@@ -27,6 +27,9 @@ along with this program. If not, see . */ + mips_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR)) + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/mn10300/sim-main.h b/sim/mn10300/sim-main.h +index 7171c03..3a917e7 100644 +--- a/sim/mn10300/sim-main.h ++++ b/sim/mn10300/sim-main.h +@@ -38,6 +38,8 @@ + #include "itable.h" + #include "idecode.h" + ++typedef struct _sim_cpu SIM_CPU; ++ + #define SIM_CORE_SIGNAL(SD,CPU,CIA,MAP,NR_BYTES,ADDR,TRANSFER,ERROR) \ + mn10300_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR)) + +diff --git a/sim/moxie/sim-main.h b/sim/moxie/sim-main.h +index 7091f21..b6b5ca3 100644 +--- a/sim/moxie/sim-main.h ++++ b/sim/moxie/sim-main.h +@@ -21,6 +21,9 @@ along with this program. If not, see . */ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + #include "bfd.h" + +diff --git a/sim/msp430/sim-main.h b/sim/msp430/sim-main.h +index 4a2ab22..c7cdc5e 100644 +--- a/sim/msp430/sim-main.h ++++ b/sim/msp430/sim-main.h +@@ -23,6 +23,9 @@ + + #include "sim-basics.h" + #include "sim-signal.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "msp430-sim.h" + #include "sim-base.h" + +diff --git a/sim/sh/sim-main.h b/sim/sh/sim-main.h +index 4af7b03..6ab42a6 100644 +--- a/sim/sh/sim-main.h ++++ b/sim/sh/sim-main.h +@@ -20,6 +20,9 @@ along with this program. If not, see . */ + #define SIM_MAIN_H + + #include "sim-basics.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + typedef struct +diff --git a/sim/sh64/sim-main.h b/sim/sh64/sim-main.h +index da8f516..5fd7095 100644 +--- a/sim/sh64/sim-main.h ++++ b/sim/sh64/sim-main.h +@@ -3,6 +3,9 @@ + #ifndef SIM_MAIN_H + #define SIM_MAIN_H + ++struct _sim_cpu; /* FIXME: should be in sim-basics.h */ ++typedef struct _sim_cpu SIM_CPU; ++ + /* sim-basics.h includes config.h but cgen-types.h must be included before + sim-basics.h and cgen-types.h needs config.h. */ + #include "config.h" +diff --git a/sim/v850/sim-main.h b/sim/v850/sim-main.h +index e7276a6..1a45f97 100644 +--- a/sim/v850/sim-main.h ++++ b/sim/v850/sim-main.h +@@ -9,6 +9,9 @@ + #include "sim-basics.h" + #include "sim-signal.h" + #include "sim-fpu.h" ++ ++typedef struct _sim_cpu SIM_CPU; ++ + #include "sim-base.h" + + #include "simops.h" +-- +2.7.4 + diff --git a/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch b/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch deleted file mode 100644 index 42168df570..0000000000 --- a/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 59432cbfe267ad89b7cfc73dcd702b8282ef4e9d Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 10 Apr 2015 22:58:07 +0200 -Subject: [PATCH] gdbserver: fix uClibc whithout MMU. - -Since commit d86d4aafd4fa22fa4cccb83253fb187b03f97f48, the pid -must be retrieved from current_inferior. - -The change has not been made in the function linux_read_offsets(). - -Fixes: -http://autobuild.buildroot.net/results/9e4/9e4df085319e346803c26c65478accb27eb950ae/build-end.log - -Signed-off-by: Romain Naour ---- - gdb/gdbserver/linux-low.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 1a40897..71d078a 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -4933,7 +4933,7 @@ static int - linux_read_offsets (CORE_ADDR *text_p, CORE_ADDR *data_p) - { - unsigned long text, text_end, data; -- int pid = lwpid_of (get_thread_lwp (current_inferior)); -+ int pid = lwpid_of (current_inferior); - - errno = 0; - --- -1.9.3 - diff --git a/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch b/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch deleted file mode 100644 index 93fe749ef0..0000000000 --- a/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch +++ /dev/null @@ -1,47 +0,0 @@ -From deb44829ecc1dd38275af0fcf91acd319e227a89 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 17 Apr 2015 03:07:41 +0300 -Subject: [PATCH 1/2] gdbserver/xtensa: drop xtensa_usrregs_info - -xtensa_usrregs_info refers to undefined variables xtensa_num_regs and -xtensa_regmap. Drop xtensa_usrregs_info and replace pointer to usrregs -in regs_info with NULL since all registers are read/set through regsets. - -2015-04-17 Max Filippov -gdb/gdbserver/ - * linux-xtensa-low.c (xtensa_usrregs_info): Remove. - (regs_info): Replace usrregs pointer with NULL. - -Signed-off-by: Max Filippov ---- -Backported from: deb44829ecc1dd38275af0fcf91acd319e227a89 -Changes to ChangeLog are dropped. - - gdb/gdbserver/linux-xtensa-low.c | 8 +------- - 2 files changed, 6 insertions(+), 7 deletions(-) - -diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c -index f7fafaf..e786da5 100644 ---- a/gdb/gdbserver/linux-xtensa-low.c -+++ b/gdb/gdbserver/linux-xtensa-low.c -@@ -186,16 +186,10 @@ static struct regsets_info xtensa_regsets_info = - NULL, /* disabled_regsets */ - }; - --static struct usrregs_info xtensa_usrregs_info = -- { -- xtensa_num_regs, -- xtensa_regmap, -- }; -- - static struct regs_info regs_info = - { - NULL, /* regset_bitmap */ -- &xtensa_usrregs_info, -+ NULL, /* usrregs */ - &xtensa_regsets_info - }; - --- -1.8.1.4 - diff --git a/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch b/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch deleted file mode 100644 index 027f700b09..0000000000 --- a/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch +++ /dev/null @@ -1,46 +0,0 @@ -From a2d5a9d76f2366ed93095fc5a63eafa06b22f808 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 17 Apr 2015 02:52:50 +0300 -Subject: [PATCH 2/2] gdbserver/xtensa: fix typo in XCHAL_HAVE_LOOPS - -This fixes lbeg/lend/lcount registers handling through gdbserver. - -2015-04-17 Max Filippov -gdb/gdbserver/ - * linux-xtensa-low.c (xtensa_fill_gregset) - (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of - XCHAL_HAVE_LOOP. - -Signed-off-by: Max Filippov ---- -Backported from: a2d5a9d76f2366ed93095fc5a63eafa06b22f808 -Changes to ChangeLog are dropped. - - gdb/gdbserver/linux-xtensa-low.c | 4 ++-- - 2 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c -index e786da5..4daccee 100644 ---- a/gdb/gdbserver/linux-xtensa-low.c -+++ b/gdb/gdbserver/linux-xtensa-low.c -@@ -59,7 +59,7 @@ xtensa_fill_gregset (struct regcache *regcache, void *buf) - - /* Loop registers, if hardware has it. */ - --#if XCHAL_HAVE_LOOP -+#if XCHAL_HAVE_LOOPS - collect_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]); - collect_register_by_name (regcache, "lend", (char*)&rset[R_LEND]); - collect_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]); -@@ -94,7 +94,7 @@ xtensa_store_gregset (struct regcache *regcache, const void *buf) - - /* Loop registers, if hardware has it. */ - --#if XCHAL_HAVE_LOOP -+#if XCHAL_HAVE_LOOPS - supply_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]); - supply_register_by_name (regcache, "lend", (char*)&rset[R_LEND]); - supply_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]); --- -1.8.1.4 - diff --git a/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch b/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch deleted file mode 100644 index bf20c03c23..0000000000 --- a/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch +++ /dev/null @@ -1,70 +0,0 @@ -From d41401ace01c234f42697e190a2ac95991780626 Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:20:12 -0700 -Subject: [PATCH] Add some casts for building on musl. - -gdb/ChangeLog: - - * linux-thread-db.c (find_new_threads_callback): Cast ti.ti_tid to - unsigned long for debug_printf. - (thread_db_pid_to_str): Ditto. - -gdb/gdbserver/ChangeLog: - - * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long - for debug_printf. - (attach_thread, find_new_threads_callback): Ditto. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 5 +++++ - gdb/gdbserver/ChangeLog | 6 ++++++ - gdb/gdbserver/thread-db.c | 9 +++++---- - gdb/linux-thread-db.c | 5 +++-- - 4 files changed, 19 insertions(+), 6 deletions(-) - -diff --git a/gdb/gdbserver/thread-db.c b/gdb/gdbserver/thread-db.c -index ffe722d..3df10ff 100644 ---- a/gdb/gdbserver/thread-db.c -+++ b/gdb/gdbserver/thread-db.c -@@ -278,7 +278,7 @@ find_one_thread (ptid_t ptid) - - if (debug_threads) - debug_printf ("Found thread %ld (LWP %d)\n", -- ti.ti_tid, ti.ti_lid); -+ (unsigned long) ti.ti_tid, ti.ti_lid); - - if (lwpid != ti.ti_lid) - { -@@ -319,12 +319,12 @@ attach_thread (const td_thrhandle_t *th_p, td_thrinfo_t *ti_p) - - if (debug_threads) - debug_printf ("Attaching to thread %ld (LWP %d)\n", -- ti_p->ti_tid, ti_p->ti_lid); -+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid); - err = linux_attach_lwp (ptid); - if (err != 0) - { - warning ("Could not attach to thread %ld (LWP %d): %s\n", -- ti_p->ti_tid, ti_p->ti_lid, -+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid, - linux_attach_fail_reason_string (ptid, err)); - return 0; - } -diff --git a/gdb/linux-thread-db.c b/gdb/linux-thread-db.c -index 66e9595..41db29a 100644 ---- a/gdb/linux-thread-db.c -+++ b/gdb/linux-thread-db.c -@@ -1816,7 +1817,7 @@ thread_db_pid_to_str (struct target_ops *ops, ptid_t ptid) - - tid = thread_info->priv->tid; - snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld)", -- tid, ptid_get_lwp (ptid)); -+ (unsigned long) tid, ptid_get_lwp (ptid)); - - return buf; - } --- -1.9.4 - diff --git a/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch b/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch deleted file mode 100644 index 60c357cd80..0000000000 --- a/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 963843d4d07aef6caa296dacf191f8adc9518596 Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:24:01 -0700 -Subject: [PATCH] musl: Move W_STOPCODE to common/gdb_wait.h. - -gdb/ChangeLog: - - * common/gdb_wait.h (W_STOPCODE): Define, moved here from - gdbserver/linux-low.c. - (WSETSTOP): Simplify. - -gdb/gdbserver/ChangeLog: - - * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 6 ++++++ - gdb/common/gdb_wait.h | 8 ++++---- - gdb/gdbserver/ChangeLog | 4 ++++ - gdb/gdbserver/linux-low.c | 4 ---- - 4 files changed, 14 insertions(+), 8 deletions(-) - -diff --git a/gdb/common/gdb_wait.h b/gdb/common/gdb_wait.h -index 9b250d2..412f813 100644 ---- a/gdb/common/gdb_wait.h -+++ b/gdb/common/gdb_wait.h -@@ -85,12 +85,12 @@ - # endif - #endif - -+#ifndef W_STOPCODE -+#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) -+#endif -+ - #ifndef WSETSTOP --# ifdef W_STOPCODE - #define WSETSTOP(w,sig) ((w) = W_STOPCODE(sig)) --# else --#define WSETSTOP(w,sig) ((w) = (0177 | ((sig) << 8))) --# endif - #endif - - /* For native GNU/Linux we may use waitpid and the __WCLONE option. -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 0c552b8..7ed67c7 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -70,10 +70,6 @@ - #define O_LARGEFILE 0 - #endif - --#ifndef W_STOPCODE --#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) --#endif -- - /* This is the kernel's hard limit. Not to be confused with - SIGRTMIN. */ - #ifndef __SIGRTMIN --- -1.9.4 - diff --git a/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch b/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch deleted file mode 100644 index 38ba1f028a..0000000000 --- a/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 682b25469e66ea45b214e95962671373983c118f Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:30:57 -0700 -Subject: [PATCH] Move __SIGRTMIN. - -gdb/ChangeLog: - - * nat/linux-nat.h (__SIGRTMIN): Move here from gdbserver/linux-low.c. - -gdb/gdbserver/ChangeLog: - - * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 4 ++++ - gdb/gdbserver/ChangeLog | 4 ++++ - gdb/gdbserver/linux-low.c | 6 ------ - gdb/nat/linux-nat.h | 5 +++++ - 4 files changed, 13 insertions(+), 6 deletions(-) - -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 7ed67c7..e778c4c 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -70,12 +70,6 @@ - #define O_LARGEFILE 0 - #endif - --/* This is the kernel's hard limit. Not to be confused with -- SIGRTMIN. */ --#ifndef __SIGRTMIN --#define __SIGRTMIN 32 --#endif -- - /* Some targets did not define these ptrace constants from the start, - so gdbserver defines them locally here. In the future, these may - be removed after they are added to asm/ptrace.h. */ -diff --git a/gdb/nat/linux-nat.h b/gdb/nat/linux-nat.h -index 0633fa9..70e6274 100644 ---- a/gdb/nat/linux-nat.h -+++ b/gdb/nat/linux-nat.h -@@ -25,6 +25,11 @@ - struct lwp_info; - struct arch_lwp_info; - -+/* This is the kernel's hard limit. Not to be confused with SIGRTMIN. */ -+#ifndef __SIGRTMIN -+#define __SIGRTMIN 32 -+#endif -+ - /* Unlike other extended result codes, WSTOPSIG (status) on - PTRACE_O_TRACESYSGOOD syscall events doesn't return SIGTRAP, but - instead SIGTRAP with bit 7 set. */ --- -1.9.4 - diff --git a/package/gdb/7.9.1/0001-gdbserver-fix-uClibc-whithout-MMU.patch b/package/gdb/7.9.1/0001-gdbserver-fix-uClibc-whithout-MMU.patch deleted file mode 100644 index 340db671f8..0000000000 --- a/package/gdb/7.9.1/0001-gdbserver-fix-uClibc-whithout-MMU.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 570805e96bb8c458795b04f4745700795997ef40 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 10 Apr 2015 22:58:07 +0200 -Subject: [PATCH] gdbserver: fix uClibc whithout MMU. - -Since commit d86d4aafd4fa22fa4cccb83253fb187b03f97f48, the pid -must be retrieved from current_thread. - -The change has not been made in the function linux_read_offsets(). - -Fixes: -http://autobuild.buildroot.net/results/9e4/9e4df085319e346803c26c65478accb27eb950ae/build-end.log - -Signed-off-by: Romain Naour ---- - gdb/gdbserver/linux-low.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 4d19c87..7585b80 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -4933,7 +4933,7 @@ static int - linux_read_offsets (CORE_ADDR *text_p, CORE_ADDR *data_p) - { - unsigned long text, text_end, data; -- int pid = lwpid_of (get_thread_lwp (current_thread)); -+ int pid = lwpid_of (current_thread); - - errno = 0; - --- -1.9.3 - diff --git a/package/gdb/7.9.1/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch b/package/gdb/7.9.1/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch deleted file mode 100644 index 93fe749ef0..0000000000 --- a/package/gdb/7.9.1/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch +++ /dev/null @@ -1,47 +0,0 @@ -From deb44829ecc1dd38275af0fcf91acd319e227a89 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 17 Apr 2015 03:07:41 +0300 -Subject: [PATCH 1/2] gdbserver/xtensa: drop xtensa_usrregs_info - -xtensa_usrregs_info refers to undefined variables xtensa_num_regs and -xtensa_regmap. Drop xtensa_usrregs_info and replace pointer to usrregs -in regs_info with NULL since all registers are read/set through regsets. - -2015-04-17 Max Filippov -gdb/gdbserver/ - * linux-xtensa-low.c (xtensa_usrregs_info): Remove. - (regs_info): Replace usrregs pointer with NULL. - -Signed-off-by: Max Filippov ---- -Backported from: deb44829ecc1dd38275af0fcf91acd319e227a89 -Changes to ChangeLog are dropped. - - gdb/gdbserver/linux-xtensa-low.c | 8 +------- - 2 files changed, 6 insertions(+), 7 deletions(-) - -diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c -index f7fafaf..e786da5 100644 ---- a/gdb/gdbserver/linux-xtensa-low.c -+++ b/gdb/gdbserver/linux-xtensa-low.c -@@ -186,16 +186,10 @@ static struct regsets_info xtensa_regsets_info = - NULL, /* disabled_regsets */ - }; - --static struct usrregs_info xtensa_usrregs_info = -- { -- xtensa_num_regs, -- xtensa_regmap, -- }; -- - static struct regs_info regs_info = - { - NULL, /* regset_bitmap */ -- &xtensa_usrregs_info, -+ NULL, /* usrregs */ - &xtensa_regsets_info - }; - --- -1.8.1.4 - diff --git a/package/gdb/7.9.1/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch b/package/gdb/7.9.1/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch deleted file mode 100644 index 027f700b09..0000000000 --- a/package/gdb/7.9.1/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch +++ /dev/null @@ -1,46 +0,0 @@ -From a2d5a9d76f2366ed93095fc5a63eafa06b22f808 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Fri, 17 Apr 2015 02:52:50 +0300 -Subject: [PATCH 2/2] gdbserver/xtensa: fix typo in XCHAL_HAVE_LOOPS - -This fixes lbeg/lend/lcount registers handling through gdbserver. - -2015-04-17 Max Filippov -gdb/gdbserver/ - * linux-xtensa-low.c (xtensa_fill_gregset) - (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of - XCHAL_HAVE_LOOP. - -Signed-off-by: Max Filippov ---- -Backported from: a2d5a9d76f2366ed93095fc5a63eafa06b22f808 -Changes to ChangeLog are dropped. - - gdb/gdbserver/linux-xtensa-low.c | 4 ++-- - 2 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c -index e786da5..4daccee 100644 ---- a/gdb/gdbserver/linux-xtensa-low.c -+++ b/gdb/gdbserver/linux-xtensa-low.c -@@ -59,7 +59,7 @@ xtensa_fill_gregset (struct regcache *regcache, void *buf) - - /* Loop registers, if hardware has it. */ - --#if XCHAL_HAVE_LOOP -+#if XCHAL_HAVE_LOOPS - collect_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]); - collect_register_by_name (regcache, "lend", (char*)&rset[R_LEND]); - collect_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]); -@@ -94,7 +94,7 @@ xtensa_store_gregset (struct regcache *regcache, const void *buf) - - /* Loop registers, if hardware has it. */ - --#if XCHAL_HAVE_LOOP -+#if XCHAL_HAVE_LOOPS - supply_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]); - supply_register_by_name (regcache, "lend", (char*)&rset[R_LEND]); - supply_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]); --- -1.8.1.4 - diff --git a/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch b/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch deleted file mode 100644 index e7bc74ea53..0000000000 --- a/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch +++ /dev/null @@ -1,267 +0,0 @@ -From d4eb69fc4b50f9a0babd70b28d0601b40f31bd0f Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Thu, 2 Jul 2015 15:10:58 +0300 -Subject: [PATCH] xtensa: implement NPTL helpers - -These changes allow debugging multithreaded NPTL xtensa applications. - -2015-08-20 Max Filippov -gdb/gdbserver/ - * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes. - * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New - #includes. - (ps_get_thread_area): New function. - -2015-08-20 Max Filippov -gdb/ - * arch/xtensa.h: New file. - * xtensa-linux-nat.c (gdb_proc_service.h): New #include. - (ps_get_thread_area): New function. - * xtensa-linux-tdep.c (xtensa_linux_init_abi): Add call to - set_gdbarch_fetch_tls_load_module_address to enable TLS support. - * xtensa-tdep.c (osabi.h): New #include. - (xtensa_gdbarch_init): Call gdbarch_init_osabi to register - xtensa-specific hooks. - * xtensa-tdep.h (struct xtensa_elf_gregset_t): Add threadptr - member and move the structure to arch/xtensa.h. - -Signed-off-by: Max Filippov ---- -Backported from: 40045d91812b25c88c8275b8c08d27c234b68ba8 -Changes to ChangeLog files are dropped. - - gdb/arch/xtensa.h | 46 ++++++++++++++++++++++++++++++++++++++++ - gdb/gdbserver/configure.srv | 1 + - gdb/gdbserver/linux-xtensa-low.c | 21 ++++++++++++++++++ - gdb/xtensa-linux-nat.c | 22 ++++++++++++++++++ - gdb/xtensa-linux-tdep.c | 4 ++++ - gdb/xtensa-tdep.c | 4 ++++ - gdb/xtensa-tdep.h | 24 ++------------------ - 7 files changed, 100 insertions(+), 22 deletions(-) - create mode 100644 gdb/arch/xtensa.h - -diff --git a/gdb/arch/xtensa.h b/gdb/arch/xtensa.h -new file mode 100644 -index 0000000..fe96584 ---- /dev/null -+++ b/gdb/arch/xtensa.h -@@ -0,0 +1,46 @@ -+/* Common Target-dependent code for the Xtensa port of GDB, the GNU debugger. -+ -+ Copyright (C) 2003-2015 Free Software Foundation, Inc. -+ -+ This file is part of GDB. -+ -+ 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 . */ -+ -+#ifndef XTENSA_H -+#define XTENSA_H -+ -+/* Xtensa ELF core file register set representation ('.reg' section). -+ Copied from target-side ELF header . */ -+ -+typedef uint32_t xtensa_elf_greg_t; -+ -+typedef struct -+{ -+ xtensa_elf_greg_t pc; -+ xtensa_elf_greg_t ps; -+ xtensa_elf_greg_t lbeg; -+ xtensa_elf_greg_t lend; -+ xtensa_elf_greg_t lcount; -+ xtensa_elf_greg_t sar; -+ xtensa_elf_greg_t windowstart; -+ xtensa_elf_greg_t windowbase; -+ xtensa_elf_greg_t threadptr; -+ xtensa_elf_greg_t reserved[7+48]; -+ xtensa_elf_greg_t ar[64]; -+} xtensa_elf_gregset_t; -+ -+#define XTENSA_ELF_NGREG (sizeof (xtensa_elf_gregset_t) \ -+ / sizeof (xtensa_elf_greg_t)) -+ -+#endif -diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv -index 0b18d1d..320c26a 100644 ---- a/gdb/gdbserver/configure.srv -+++ b/gdb/gdbserver/configure.srv -@@ -352,6 +352,7 @@ case "${target}" in - xtensa*-*-linux*) srv_regobj=reg-xtensa.o - srv_tgtobj="$srv_linux_obj linux-xtensa-low.o" - srv_linux_regsets=yes -+ srv_linux_thread_db=yes - ;; - tilegx-*-linux*) srv_regobj=reg-tilegx.o - srv_regobj="${srv_regobj} reg-tilegx32.o" -diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c -index 4daccee..debe467 100644 ---- a/gdb/gdbserver/linux-xtensa-low.c -+++ b/gdb/gdbserver/linux-xtensa-low.c -@@ -26,6 +26,8 @@ extern const struct target_desc *tdesc_xtensa; - - #include - #include -+#include "arch/xtensa.h" -+#include "gdb_proc_service.h" - - #include "xtensa-xtregs.c" - -@@ -179,6 +181,25 @@ xtensa_breakpoint_at (CORE_ADDR where) - xtensa_breakpoint, xtensa_breakpoint_len) == 0; - } - -+/* Called by libthread_db. */ -+ -+ps_err_e -+ps_get_thread_area (const struct ps_prochandle *ph, -+ lwpid_t lwpid, int idx, void **base) -+{ -+ xtensa_elf_gregset_t regs; -+ -+ if (ptrace (PTRACE_GETREGS, lwpid, NULL, ®s) != 0) -+ return PS_ERR; -+ -+ /* IDX is the bias from the thread pointer to the beginning of the -+ thread descriptor. It has to be subtracted due to implementation -+ quirks in libthread_db. */ -+ *base = (void *) ((char *) regs.threadptr - idx); -+ -+ return PS_OK; -+} -+ - static struct regsets_info xtensa_regsets_info = - { - xtensa_regsets, /* regsets */ -diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c -index 77ad3e0..5538d5b 100644 ---- a/gdb/xtensa-linux-nat.c -+++ b/gdb/xtensa-linux-nat.c -@@ -37,6 +37,9 @@ - #include "gregset.h" - #include "xtensa-tdep.h" - -+/* Defines ps_err_e, struct ps_prochandle. */ -+#include "gdb_proc_service.h" -+ - /* Extended register set depends on hardware configs. - Keeping these definitions separately allows to introduce - hardware-specific overlays. */ -@@ -280,6 +283,25 @@ xtensa_linux_store_inferior_registers (struct target_ops *ops, - store_xtregs (regcache, regnum); - } - -+/* Called by libthread_db. */ -+ -+ps_err_e -+ps_get_thread_area (const struct ps_prochandle *ph, -+ lwpid_t lwpid, int idx, void **base) -+{ -+ xtensa_elf_gregset_t regs; -+ -+ if (ptrace (PTRACE_GETREGS, lwpid, NULL, ®s) != 0) -+ return PS_ERR; -+ -+ /* IDX is the bias from the thread pointer to the beginning of the -+ thread descriptor. It has to be subtracted due to implementation -+ quirks in libthread_db. */ -+ *base = (void *) ((char *) regs.threadptr - idx); -+ -+ return PS_OK; -+} -+ - void _initialize_xtensa_linux_nat (void); - - void -diff --git a/gdb/xtensa-linux-tdep.c b/gdb/xtensa-linux-tdep.c -index 61ea9b0..99e0d3e 100644 ---- a/gdb/xtensa-linux-tdep.c -+++ b/gdb/xtensa-linux-tdep.c -@@ -106,6 +106,10 @@ xtensa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) - xtensa_linux_gdb_signal_from_target); - set_gdbarch_gdb_signal_to_target (gdbarch, - xtensa_linux_gdb_signal_to_target); -+ -+ /* Enable TLS support. */ -+ set_gdbarch_fetch_tls_load_module_address (gdbarch, -+ svr4_fetch_objfile_link_map); - } - - /* Provide a prototype to silence -Wmissing-prototypes. */ -diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c -index 55e7d98..4b693ed 100644 ---- a/gdb/xtensa-tdep.c -+++ b/gdb/xtensa-tdep.c -@@ -28,6 +28,7 @@ - #include "value.h" - #include "dis-asm.h" - #include "inferior.h" -+#include "osabi.h" - #include "floatformat.h" - #include "regcache.h" - #include "reggroups.h" -@@ -3273,6 +3274,9 @@ xtensa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) - set_solib_svr4_fetch_link_map_offsets - (gdbarch, svr4_ilp32_fetch_link_map_offsets); - -+ /* Hook in the ABI-specific overrides, if they have been registered. */ -+ gdbarch_init_osabi (info, gdbarch); -+ - return gdbarch; - } - -diff --git a/gdb/xtensa-tdep.h b/gdb/xtensa-tdep.h -index caa2988..5b28cab 100644 ---- a/gdb/xtensa-tdep.h -+++ b/gdb/xtensa-tdep.h -@@ -18,6 +18,8 @@ - along with this program. If not, see . */ - - -+#include "arch/xtensa.h" -+ - /* XTENSA_TDEP_VERSION can/should be changed along with XTENSA_CONFIG_VERSION - whenever the "tdep" structure changes in an incompatible way. */ - -@@ -81,28 +83,6 @@ typedef enum - } xtensa_target_flags_t; - - --/* Xtensa ELF core file register set representation ('.reg' section). -- Copied from target-side ELF header . */ -- --typedef uint32_t xtensa_elf_greg_t; -- --typedef struct --{ -- xtensa_elf_greg_t pc; -- xtensa_elf_greg_t ps; -- xtensa_elf_greg_t lbeg; -- xtensa_elf_greg_t lend; -- xtensa_elf_greg_t lcount; -- xtensa_elf_greg_t sar; -- xtensa_elf_greg_t windowstart; -- xtensa_elf_greg_t windowbase; -- xtensa_elf_greg_t reserved[8+48]; -- xtensa_elf_greg_t ar[64]; --} xtensa_elf_gregset_t; -- --#define XTENSA_ELF_NGREG (sizeof (xtensa_elf_gregset_t) \ -- / sizeof (xtensa_elf_greg_t)) -- - /* Mask. */ - - typedef struct --- -1.8.1.4 - diff --git a/package/gdb/7.9.1/0005-Add-some-casts-for-building-on-musl.patch b/package/gdb/7.9.1/0005-Add-some-casts-for-building-on-musl.patch deleted file mode 100644 index 2469eb79a4..0000000000 --- a/package/gdb/7.9.1/0005-Add-some-casts-for-building-on-musl.patch +++ /dev/null @@ -1,70 +0,0 @@ -From d41401ace01c234f42697e190a2ac95991780626 Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:20:12 -0700 -Subject: [PATCH] Add some casts for building on musl. - -gdb/ChangeLog: - - * linux-thread-db.c (find_new_threads_callback): Cast ti.ti_tid to - unsigned long for debug_printf. - (thread_db_pid_to_str): Ditto. - -gdb/gdbserver/ChangeLog: - - * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long - for debug_printf. - (attach_thread, find_new_threads_callback): Ditto. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 5 +++++ - gdb/gdbserver/ChangeLog | 6 ++++++ - gdb/gdbserver/thread-db.c | 9 +++++---- - gdb/linux-thread-db.c | 5 +++-- - 4 files changed, 19 insertions(+), 6 deletions(-) - -diff --git a/gdb/gdbserver/thread-db.c b/gdb/gdbserver/thread-db.c -index ffe722d..3df10ff 100644 ---- a/gdb/gdbserver/thread-db.c -+++ b/gdb/gdbserver/thread-db.c -@@ -278,7 +278,7 @@ find_one_thread (ptid_t ptid) - - if (debug_threads) - debug_printf ("Found thread %ld (LWP %d)\n", -- ti.ti_tid, ti.ti_lid); -+ (unsigned long) ti.ti_tid, ti.ti_lid); - - if (lwpid != ti.ti_lid) - { -@@ -319,12 +319,12 @@ attach_thread (const td_thrhandle_t *th_p, td_thrinfo_t *ti_p) - - if (debug_threads) - debug_printf ("Attaching to thread %ld (LWP %d)\n", -- ti_p->ti_tid, ti_p->ti_lid); -+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid); - err = linux_attach_lwp (ptid); - if (err != 0) - { - warning ("Could not attach to thread %ld (LWP %d): %s\n", -- ti_p->ti_tid, ti_p->ti_lid, -+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid, - linux_ptrace_attach_fail_reason_string (ptid, err)); - return 0; - } -diff --git a/gdb/linux-thread-db.c b/gdb/linux-thread-db.c -index 66e9595..41db29a 100644 ---- a/gdb/linux-thread-db.c -+++ b/gdb/linux-thread-db.c -@@ -1816,7 +1817,7 @@ thread_db_pid_to_str (struct target_ops *ops, ptid_t ptid) - - tid = thread_info->priv->tid; - snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld)", -- tid, ptid_get_lwp (ptid)); -+ (unsigned long) tid, ptid_get_lwp (ptid)); - - return buf; - } --- -1.9.4 - diff --git a/package/gdb/7.9.1/0006-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch b/package/gdb/7.9.1/0006-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch deleted file mode 100644 index 60c357cd80..0000000000 --- a/package/gdb/7.9.1/0006-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 963843d4d07aef6caa296dacf191f8adc9518596 Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:24:01 -0700 -Subject: [PATCH] musl: Move W_STOPCODE to common/gdb_wait.h. - -gdb/ChangeLog: - - * common/gdb_wait.h (W_STOPCODE): Define, moved here from - gdbserver/linux-low.c. - (WSETSTOP): Simplify. - -gdb/gdbserver/ChangeLog: - - * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 6 ++++++ - gdb/common/gdb_wait.h | 8 ++++---- - gdb/gdbserver/ChangeLog | 4 ++++ - gdb/gdbserver/linux-low.c | 4 ---- - 4 files changed, 14 insertions(+), 8 deletions(-) - -diff --git a/gdb/common/gdb_wait.h b/gdb/common/gdb_wait.h -index 9b250d2..412f813 100644 ---- a/gdb/common/gdb_wait.h -+++ b/gdb/common/gdb_wait.h -@@ -85,12 +85,12 @@ - # endif - #endif - -+#ifndef W_STOPCODE -+#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) -+#endif -+ - #ifndef WSETSTOP --# ifdef W_STOPCODE - #define WSETSTOP(w,sig) ((w) = W_STOPCODE(sig)) --# else --#define WSETSTOP(w,sig) ((w) = (0177 | ((sig) << 8))) --# endif - #endif - - /* For native GNU/Linux we may use waitpid and the __WCLONE option. -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 0c552b8..7ed67c7 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -70,10 +70,6 @@ - #define O_LARGEFILE 0 - #endif - --#ifndef W_STOPCODE --#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) --#endif -- - /* This is the kernel's hard limit. Not to be confused with - SIGRTMIN. */ - #ifndef __SIGRTMIN --- -1.9.4 - diff --git a/package/gdb/7.9.1/0007-move-__SIGRTMIN.patch b/package/gdb/7.9.1/0007-move-__SIGRTMIN.patch deleted file mode 100644 index 38ba1f028a..0000000000 --- a/package/gdb/7.9.1/0007-move-__SIGRTMIN.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 682b25469e66ea45b214e95962671373983c118f Mon Sep 17 00:00:00 2001 -From: Doug Evans -Date: Mon, 26 Oct 2015 13:30:57 -0700 -Subject: [PATCH] Move __SIGRTMIN. - -gdb/ChangeLog: - - * nat/linux-nat.h (__SIGRTMIN): Move here from gdbserver/linux-low.c. - -gdb/gdbserver/ChangeLog: - - * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h. - -[Arnout: removed the parts that don't apply, including ChangeLog] -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - gdb/ChangeLog | 4 ++++ - gdb/gdbserver/ChangeLog | 4 ++++ - gdb/gdbserver/linux-low.c | 6 ------ - gdb/nat/linux-nat.h | 5 +++++ - 4 files changed, 13 insertions(+), 6 deletions(-) - -diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c -index 7ed67c7..e778c4c 100644 ---- a/gdb/gdbserver/linux-low.c -+++ b/gdb/gdbserver/linux-low.c -@@ -70,12 +70,6 @@ - #define O_LARGEFILE 0 - #endif - --/* This is the kernel's hard limit. Not to be confused with -- SIGRTMIN. */ --#ifndef __SIGRTMIN --#define __SIGRTMIN 32 --#endif -- - /* Some targets did not define these ptrace constants from the start, - so gdbserver defines them locally here. In the future, these may - be removed after they are added to asm/ptrace.h. */ -diff --git a/gdb/nat/linux-nat.h b/gdb/nat/linux-nat.h -index 0633fa9..70e6274 100644 ---- a/gdb/nat/linux-nat.h -+++ b/gdb/nat/linux-nat.h -@@ -25,6 +25,11 @@ - struct lwp_info; - struct arch_lwp_info; - -+/* This is the kernel's hard limit. Not to be confused with SIGRTMIN. */ -+#ifndef __SIGRTMIN -+#define __SIGRTMIN 32 -+#endif -+ - /* Unlike other extended result codes, WSTOPSIG (status) on - PTRACE_O_TRACESYSGOOD syscall events doesn't return SIGTRAP, but - instead SIGTRAP with bit 7 set. */ --- -1.9.4 - diff --git a/package/gdb/Config.in b/package/gdb/Config.in index feab01da9e..809e02d076 100644 --- a/package/gdb/Config.in +++ b/package/gdb/Config.in @@ -40,10 +40,10 @@ config BR2_PACKAGE_GDB_DEBUGGER bool "full debugger" select BR2_PACKAGE_NCURSES depends on BR2_USE_WCHAR - depends on !BR2_sh && !BR2_sh64 && !BR2_microblaze + depends on !BR2_sh && !BR2_microblaze comment "full gdb on target needs a toolchain w/ wchar" - depends on !BR2_sh && !BR2_sh64 && !BR2_microblaze + depends on !BR2_sh && !BR2_microblaze depends on !BR2_USE_WCHAR if BR2_PACKAGE_GDB_DEBUGGER diff --git a/package/gdb/Config.in.host b/package/gdb/Config.in.host index b213901dfb..24e2274cc0 100644 --- a/package/gdb/Config.in.host +++ b/package/gdb/Config.in.host @@ -1,3 +1,5 @@ +comment "Host GDB Options" + config BR2_PACKAGE_HOST_GDB bool "Build cross gdb for the host" # When the external toolchain gdbserver is used, we shouldn't @@ -23,23 +25,29 @@ config BR2_PACKAGE_HOST_GDB_PYTHON help This option enables the Python support in the cross gdb. +config BR2_PACKAGE_HOST_GDB_SIM + bool "Simulator support" + depends on !BR2_arc && !BR2_microblaze + help + This option enables the simulator support in the cross gdb. + choice prompt "GDB debugger Version" depends on !BR2_arc depends on !BR2_microblaze - default BR2_GDB_VERSION_7_9 + default BR2_GDB_VERSION_7_11 help Select the version of gdb you wish to use. - config BR2_GDB_VERSION_7_8 - bool "gdb 7.8.x" - - config BR2_GDB_VERSION_7_9 - bool "gdb 7.9.x" - config BR2_GDB_VERSION_7_10 bool "gdb 7.10.x" + config BR2_GDB_VERSION_7_11 + bool "gdb 7.11.x" + + config BR2_GDB_VERSION_7_12 + bool "gdb 7.12.x" + endchoice endif @@ -48,8 +56,8 @@ endif config BR2_GDB_VERSION string depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB - default "arc-2015.12-gdb" if BR2_arc + default "arc-2016.09-release-gdb" if BR2_arc default "6be65fb56ea6694a9260733a536a023a1e2d4d57" if BR2_microblaze - default "7.8.2" if BR2_GDB_VERSION_7_8 - default "7.9.1" if BR2_GDB_VERSION_7_9 || !BR2_PACKAGE_HOST_GDB default "7.10.1" if BR2_GDB_VERSION_7_10 + default "7.11.1" if BR2_GDB_VERSION_7_11 || !BR2_PACKAGE_HOST_GDB + default "7.12.1" if BR2_GDB_VERSION_7_12 diff --git a/package/gdb/gdb.hash b/package/gdb/gdb.hash index caf1ef1685..1e205dbe9e 100644 --- a/package/gdb/gdb.hash +++ b/package/gdb/gdb.hash @@ -1,7 +1,8 @@ # From ftp://gcc.gnu.org/pub/gdb/releases/sha512.sum -sha512 face5bf1b4ce144fc8604fc84620beed956177a11fd632b4e41906fc7f632910b2b43a50e6cfdfd6cbd876ee527c813bddab8df29dc560a6c36694cdb8edc4e4 gdb-7.8.2.tar.xz -sha512 eebdf88b24e52e792b8a4b89ea85790de72b462a7810b44975fdf4232c068f353b15506071f450102a9d4bcecdde8e93dc3748a10699b7f73f3e04fb2d9d8414 gdb-7.9.1.tar.xz sha512 17a5138277a31685a5c2a841cb47ed9bc4626ea617b8ca77750513b300299f4fbbffe504958b5372de610dcb952c679cf8fa9c1bdadd380294fbf59b6e366010 gdb-7.10.1.tar.xz -# No hash for the ARC & microblaze variants, comes from the github-helper: -none xxx gdb-arc-2015.12-gdb.tar.gz -none xxx gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz +sha512 f80ec6c8a0f0b54c8b945666e875809174402b7e121efb378ebac931a91f9a1cc0048568f8e2f42ae8ae2392ff8d144c2e51d41c7398935017450aaf29838360 gdb-7.11.1.tar.xz +sha512 0ac8d0a495103611ef41167a08313a010dce6ca4c6d827cbe8558a0c1a1a8a6bfa53f1b7704251289cababbfaaf9e075550cdf741a54d6cd9ca3433d910efcd8 gdb-7.12.1.tar.xz + +# Locally calculated (fetched from Github) +sha512 0a467091d4b01fbecabb4b8da1cb743025c70e7f4874a0b5c8fa2ec623569a39bde6762b91806de0be6e63711aeb6909715cfbe43860de73d8aec6159a9f10a7 gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz +sha512 3b204108821ba687974e61bb47f0ab91621ac233503cec6c82913bcb665a8c0cea0c8b992177b2fb6befade774c2491d94c72a1bf859f9b79d44755be05dcd64 gdb-arc-2016.09-release-gdb.tar.gz diff --git a/package/gdb/gdb.mk b/package/gdb/gdb.mk index 0a7af1ef61..606f1f9600 100644 --- a/package/gdb/gdb.mk +++ b/package/gdb/gdb.mk @@ -11,11 +11,13 @@ GDB_SOURCE = gdb-$(GDB_VERSION).tar.xz ifeq ($(BR2_arc),y) GDB_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(GDB_VERSION)) GDB_SOURCE = gdb-$(GDB_VERSION).tar.gz +GDB_FROM_GIT = y endif ifeq ($(BR2_microblaze),y) GDB_SITE = $(call github,Xilinx,gdb,$(GDB_VERSION)) GDB_SOURCE = gdb-$(GDB_VERSION).tar.gz +GDB_FROM_GIT = y endif GDB_LICENSE = GPLv2+, LGPLv2+, GPLv3+, LGPLv3+ @@ -35,6 +37,12 @@ endif # also need ncurses. HOST_GDB_DEPENDENCIES = host-expat host-ncurses +# Disable building documentation +GDB_MAKE_OPTS += MAKEINFO=true +GDB_INSTALL_TARGET_OPTS += MAKEINFO=true DESTDIR=$(TARGET_DIR) install +HOST_GDB_MAKE_OPTS += MAKEINFO=true +HOST_GDB_INSTALL_OPTS += MAKEINFO=true install + # Apply the Xtensa specific patches XTENSA_CORE_NAME = $(call qstrip, $(BR2_XTENSA_CORE_NAME)) ifneq ($(XTENSA_CORE_NAME),) @@ -46,18 +54,10 @@ GDB_PRE_PATCH_HOOKS += GDB_XTENSA_PRE_PATCH HOST_GDB_PRE_PATCH_HOOKS += GDB_XTENSA_PRE_PATCH endif -# Prevent gdb to build the documentation -define GDB_DISABLE_DOC - $(SED) '/^SUBDIRS =/ s/doc//' $(@D)/gdb/Makefile.in - if test -e $(@D)/bfd/doc/Makefile.in ; then \ - $(SED) 's/^INFO_DEPS =.*$$/INFO_DEPS =/' $(@D)/bfd/doc/Makefile.in ; \ - fi - if test -e $(@D)/gprof/Makefile.in ; then \ - $(SED) 's/^INFO_DEPS =.*$$/INFO_DEPS =/' $(@D)/gprof/Makefile.in ; \ - fi -endef -GDB_PRE_CONFIGURE_HOOKS += GDB_DISABLE_DOC -HOST_GDB_PRE_CONFIGURE_HOOKS += GDB_DISABLE_DOC +ifeq ($(GDB_FROM_GIT),y) +GDB_DEPENDENCIES += host-flex host-bison +HOST_GDB_DEPENDENCIES += host-flex host-bison +endif # When gdb sources are fetched from the binutils-gdb repository, they # also contain the binutils sources, but binutils shouldn't be built, @@ -67,6 +67,13 @@ GDB_DISABLE_BINUTILS_CONF_OPTS = \ --disable-ld \ --disable-gas +# Starting with gdb 7.11, the bundled gnulib tries to use +# rpl_gettimeofday (gettimeofday replacement) due to the code being +# unable to determine if the replacement function should be used or +# not when cross-compiling with uClibc or musl as C libraries. So use +# gl_cv_func_gettimeofday_clobber=no to not use rpl_gettimeofday, +# assuming musl and uClibc have a properly working gettimeofday +# implementation. GDB_CONF_ENV = \ ac_cv_type_uintptr_t=yes \ gt_cv_func_gettext_libintl=yes \ @@ -76,7 +83,8 @@ GDB_CONF_ENV = \ bash_cv_must_reinstall_sighandlers=no \ bash_cv_func_sigsetjmp=present \ bash_cv_have_mbstate_t=yes \ - gdb_cv_func_sigsetjmp=yes + gdb_cv_func_sigsetjmp=yes \ + gl_cv_func_gettimeofday_clobber=no # The shared only build is not supported by gdb, so enable static build for # build-in libraries with --enable-static. @@ -92,6 +100,19 @@ GDB_CONF_OPTS = \ --disable-werror \ --enable-static +# When gdb is built as C++ application for ARC it segfaults at runtime +# So we pass --disable-build-with-cxx config option to force gdb not to +# be built as C++ app. +ifeq ($(BR2_arc),y) +GDB_CONF_OPTS += --disable-build-with-cxx +endif + +# gdb 7.12+ by default builds with a C++ compiler, which doesn't work +# when we don't have C++ support in the toolchain +ifneq ($(BR2_INSTALL_LIBSTDCPP),y) +GDB_CONF_OPTS += --disable-build-with-cxx +endif + ifeq ($(BR2_PACKAGE_GDB_TUI),y) GDB_CONF_OPTS += --enable-tui else @@ -163,8 +184,7 @@ HOST_GDB_CONF_OPTS = \ --enable-threads \ --disable-werror \ --without-included-gettext \ - $(GDB_DISABLE_BINUTILS_CONF_OPTS) \ - --disable-sim + $(GDB_DISABLE_BINUTILS_CONF_OPTS) ifeq ($(BR2_PACKAGE_HOST_GDB_TUI),y) HOST_GDB_CONF_OPTS += --enable-tui @@ -179,6 +199,20 @@ else HOST_GDB_CONF_OPTS += --without-python endif +# workaround a bug if in-tree build is used for bfin sim +define HOST_GDB_BFIN_SIM_WORKAROUND + $(RM) $(@D)/sim/common/tconfig.h +endef + +ifeq ($(BR2_PACKAGE_HOST_GDB_SIM),y) +HOST_GDB_CONF_OPTS += --enable-sim +ifeq ($(BR2_bfin),y) +HOST_GDB_PRE_CONFIGURE_HOOKS += HOST_GDB_BFIN_SIM_WORKAROUND +endif +else +HOST_GDB_CONF_OPTS += --disable-sim +endif + # legacy $arch-linux-gdb symlink define HOST_GDB_ADD_SYMLINK cd $(HOST_DIR)/usr/bin && \ diff --git a/package/gdbm/gdbm.hash b/package/gdbm/gdbm.hash index e7d3592314..9759d87072 100644 --- a/package/gdbm/gdbm.hash +++ b/package/gdbm/gdbm.hash @@ -1,2 +1,3 @@ -# From http://lists.gnu.org/archive/html/info-gnu/2013-12/msg00012.html -sha1 ce433d0f192c21d41089458ca5c8294efe9806b4 gdbm-1.11.tar.gz +# From http://lists.gnu.org/archive/html/info-gnu/2016-05/msg00009.html +md5 9ce96ff4c99e74295ea19040931c8fb9 gdbm-1.12.tar.gz +sha1 86513e8871bb376bc014e9e5a2d18a8e0a8ea2f5 gdbm-1.12.tar.gz diff --git a/package/gdbm/gdbm.mk b/package/gdbm/gdbm.mk index f7a437007c..55ece8802a 100644 --- a/package/gdbm/gdbm.mk +++ b/package/gdbm/gdbm.mk @@ -4,7 +4,7 @@ # ################################################################################ -GDBM_VERSION = 1.11 +GDBM_VERSION = 1.12 GDBM_SITE = $(BR2_GNU_MIRROR)/gdbm GDBM_LICENSE = GPLv3+ GDBM_LICENSE_FILES = COPYING diff --git a/package/gdk-pixbuf/gdk-pixbuf.hash b/package/gdk-pixbuf/gdk-pixbuf.hash index e73170cfe6..827b386380 100644 --- a/package/gdk-pixbuf/gdk-pixbuf.hash +++ b/package/gdk-pixbuf/gdk-pixbuf.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.34/gdk-pixbuf-2.34.0.sha256sum -sha256 d55e5b383ee219bd0e23bf6ed4427d56a7db5379729a6e3e0a0e0eba9a8d8879 gdk-pixbuf-2.34.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.36/gdk-pixbuf-2.36.4.sha256sum +sha256 0b19901c3eb0596141d2d48ddb9dac79ad1524bdf59366af58ab38fcb9ee7463 gdk-pixbuf-2.36.4.tar.xz diff --git a/package/gdk-pixbuf/gdk-pixbuf.mk b/package/gdk-pixbuf/gdk-pixbuf.mk index 36eed60a35..4fe6bd7b7f 100644 --- a/package/gdk-pixbuf/gdk-pixbuf.mk +++ b/package/gdk-pixbuf/gdk-pixbuf.mk @@ -4,8 +4,8 @@ # ################################################################################ -GDK_PIXBUF_VERSION_MAJOR = 2.34 -GDK_PIXBUF_VERSION = $(GDK_PIXBUF_VERSION_MAJOR).0 +GDK_PIXBUF_VERSION_MAJOR = 2.36 +GDK_PIXBUF_VERSION = $(GDK_PIXBUF_VERSION_MAJOR).4 GDK_PIXBUF_SOURCE = gdk-pixbuf-$(GDK_PIXBUF_VERSION).tar.xz GDK_PIXBUF_SITE = http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/$(GDK_PIXBUF_VERSION_MAJOR) GDK_PIXBUF_LICENSE = LGPLv2+ diff --git a/package/gengetopt/0001-fix-compilation-warnings-in-generated-code.patch b/package/gengetopt/0001-fix-compilation-warnings-in-generated-code.patch new file mode 100644 index 0000000000..88961e6690 --- /dev/null +++ b/package/gengetopt/0001-fix-compilation-warnings-in-generated-code.patch @@ -0,0 +1,65 @@ +Fix compilation warnings in generated code + +Patch taken from open bug report http://savannah.gnu.org/bugs/?40243 +(project gengetopt seems to be dead; no hope for a new release soon) + +Imported by Philippe Mariman. +This description by Thomas De Schampheleire. + +Signed-off-by: Thomas De Schampheleire + +Index: gengetopt-2.22.6/src/skels/c_source.cc +=================================================================== +--- gengetopt-2.22.6.orig/src/skels/c_source.cc 2012-11-07 20:58:29.000000000 +0100 ++++ gengetopt-2.22.6/src/skels/c_source.cc 2014-11-20 12:05:02.597527761 +0100 +@@ -2424,9 +2424,12 @@ + stream << " FIX_UNUSED (field);"; + stream << "\n"; + stream << indent_str; ++ stream << " FIX_UNUSED (stop_char);"; ++ stream << "\n"; ++ stream << indent_str; ++ stream << " FIX_UNUSED (val);"; + stream << "\n"; + stream << indent_str; +- stream << " stop_char = 0;"; + stream << "\n"; + stream << indent_str; + stream << " found = 0;"; +@@ -3981,6 +3984,12 @@ + stream << "\n"; + stream << indent_str; + } ++ else ++ { ++ stream << " FIX_UNUSED (check_required);"; ++ stream << "\n"; ++ stream << indent_str; ++ } + stream << "\n"; + stream << indent_str; + indent = 2; +Index: gengetopt-2.22.6/src/skels/c_source.h_skel +=================================================================== +--- gengetopt-2.22.6.orig/src/skels/c_source.h_skel 2012-11-02 18:43:24.000000000 +0100 ++++ gengetopt-2.22.6/src/skels/c_source.h_skel 2014-11-20 12:05:22.501528424 +0100 +@@ -767,8 +767,9 @@ + char **string_field; + @ENDIF@ + FIX_UNUSED (field); ++ FIX_UNUSED (stop_char); ++ FIX_UNUSED (val); + +- stop_char = 0; + found = 0; + + if (!multiple_option && prev_given && (*prev_given || (check_ambiguity && *field_given))) +@@ -1327,6 +1328,8 @@ + { + error_occurred += @parser_name@_required2 (args_info, argv[0], additional_error); + } ++@ELSE@ ++ FIX_UNUSED (check_required); + @ENDIF@ + + @parser_name@_release (&local_args_info); diff --git a/package/genimage/genimage.hash b/package/genimage/genimage.hash index b01ea46028..4be2fca873 100644 --- a/package/genimage/genimage.hash +++ b/package/genimage/genimage.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 363b2222b8036eca927c464994e7a877539adc3ea9ba895c1e2186f0589fafbf genimage-8.tar.xz +sha256 69f35af7edf6f4dbdac7a18ddc69dcf38c501e43d8b50c524555754c51479078 genimage-9.tar.xz diff --git a/package/genimage/genimage.mk b/package/genimage/genimage.mk index 2dffbc55cf..4343d14d48 100644 --- a/package/genimage/genimage.mk +++ b/package/genimage/genimage.mk @@ -4,10 +4,11 @@ # ################################################################################ -GENIMAGE_VERSION = 8 +GENIMAGE_VERSION = 9 GENIMAGE_SOURCE = genimage-$(GENIMAGE_VERSION).tar.xz GENIMAGE_SITE = http://www.pengutronix.de/software/genimage/download -GENIMAGE_DEPENDENCIES = host-pkgconf libconfuse +HOST_GENIMAGE_DEPENDENCIES = host-pkgconf host-libconfuse GENIMAGE_LICENSE = GPLv2 +GENIMAGE_LICENSE_FILES = COPYING $(eval $(host-autotools-package)) diff --git a/package/getent/getent.mk b/package/getent/getent.mk index 18f09912a7..ed249e8d45 100644 --- a/package/getent/getent.mk +++ b/package/getent/getent.mk @@ -4,10 +4,6 @@ # ################################################################################ -# source included in Buildroot -GETENT_SOURCE = - -GETENT_VERSION = buildroot-$(BR2_VERSION) GETENT_LICENSE = LGPLv2.1+ # For glibc toolchains, we use the getent program built/installed by diff --git a/package/gettext/gettext.hash b/package/gettext/gettext.hash index 3236fda702..cff6eb1090 100644 --- a/package/gettext/gettext.hash +++ b/package/gettext/gettext.hash @@ -1,3 +1,3 @@ -# From http://lists.gnu.org/archive/html/bug-gettext/2015-12/msg00019.html -md5 f81e50556da41b44c1d59ac93474dca5 gettext-0.19.7.tar.xz -sha1 4b2574b76d14c98270bf607a2a62f033524d8e8c gettext-0.19.7.tar.xz +# From http://lists.gnu.org/archive/html/bug-gettext/2016-06/msg00008.html +md5 df3f5690eaa30fd228537b00cb7b7590 gettext-0.19.8.1.tar.xz +sha1 e0fe90ede22f7f16bbde7bdea791a835f2773fc9 gettext-0.19.8.1.tar.xz diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk index 0b4e5dde94..1435388ead 100644 --- a/package/gettext/gettext.mk +++ b/package/gettext/gettext.mk @@ -4,7 +4,7 @@ # ################################################################################ -GETTEXT_VERSION = 0.19.7 +GETTEXT_VERSION = 0.19.8.1 GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz GETTEXT_INSTALL_STAGING = YES @@ -60,12 +60,6 @@ endef GETTEXT_POST_INSTALL_TARGET_HOOKS += GETTEXT_REMOVE_UNNEEDED -define GETTEXT_GETTEXTIZE_EYE_CANDY - $(SED) '/Press Return\|read dummy/d' $(HOST_DIR)/usr/bin/gettextize -endef - -HOST_GETTEXT_POST_INSTALL_HOOKS += GETTEXT_GETTEXTIZE_EYE_CANDY - # Force build with NLS support, otherwise libintl is not built # This is needed because some packages (eg. libglib2) requires # locales, but do not properly depend on BR2_ENABLE_LOCALE, and @@ -81,6 +75,16 @@ define HOST_GETTEXT_GETTEXTIZE_CONFIRMATION endef HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_GETTEXTIZE_CONFIRMATION +# autoreconf expects gettextize to install ABOUT-NLS, but it only gets +# installed by gettext-runtime which we don't build/install for the +# host, so do it manually +define HOST_GETTEXT_ADD_ABOUT_NLS + $(INSTALL) -m 0644 $(@D)/$(HOST_GETTEXT_SUBDIR)/ABOUT-NLS \ + $(HOST_DIR)/usr/share/gettext/ABOUT-NLS +endef + +HOST_GETTEXT_POST_INSTALL_HOOKS += HOST_GETTEXT_ADD_ABOUT_NLS + GETTEXTIZE = $(HOST_CONFIGURE_OPTS) AUTOM4TE=$(HOST_DIR)/usr/bin/autom4te $(HOST_DIR)/usr/bin/gettextize -f $(eval $(autotools-package)) diff --git a/package/gflags/gflags.hash b/package/gflags/gflags.hash index 9c8b27a4b5..5b224113d9 100644 --- a/package/gflags/gflags.hash +++ b/package/gflags/gflags.hash @@ -1,2 +1,2 @@ -# No hash for v2.1.2, comes from the github-helper: -none xxx gflags-v2.1.2.tar.gz +# Locally computed +sha256 d8331bd0f7367c8afd5fcb5f5e85e96868a00fd24b7276fa5fcee1e5575c2662 gflags-v2.1.2.tar.gz diff --git a/package/gflags/gflags.mk b/package/gflags/gflags.mk index 9dc4e15b6f..89111ed987 100644 --- a/package/gflags/gflags.mk +++ b/package/gflags/gflags.mk @@ -11,7 +11,8 @@ GFLAGS_LICENSE = BSD-3c GFLAGS_LICENSE_FILES = COPYING.txt ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) -GFLAGS_CONF_OPTS = -DBUILD_gflags_LIB=OFF -DCMAKE_CXX_FLAGS=-DNO_THREADS +GFLAGS_CONF_OPTS = -DBUILD_gflags_LIB=OFF \ + -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -DNO_THREADS" endif $(eval $(cmake-package)) diff --git a/package/giflib/giflib.hash b/package/giflib/giflib.hash index 94bcb5d7a3..cdd7bbdecd 100644 --- a/package/giflib/giflib.hash +++ b/package/giflib/giflib.hash @@ -1,3 +1,3 @@ # From http://sourceforge.net/projects/giflib/files -md5 323a9f11ab56c8a2d1715376410ce376 giflib-5.1.2.tar.bz2 -sha1 3f7bc86280db30a7120b2113f9f261301c515ad2 giflib-5.1.2.tar.bz2 +md5 2c171ced93c0e83bb09e6ccad8e3ba2b giflib-5.1.4.tar.bz2 +sha1 5f1157cfc377916280849e247b8e34fa0446513f giflib-5.1.4.tar.bz2 diff --git a/package/giflib/giflib.mk b/package/giflib/giflib.mk index 6f67a99fe1..799ae73226 100644 --- a/package/giflib/giflib.mk +++ b/package/giflib/giflib.mk @@ -4,7 +4,7 @@ # ################################################################################ -GIFLIB_VERSION = 5.1.2 +GIFLIB_VERSION = 5.1.4 GIFLIB_SOURCE = giflib-$(GIFLIB_VERSION).tar.bz2 GIFLIB_SITE = http://downloads.sourceforge.net/project/giflib GIFLIB_INSTALL_STAGING = YES diff --git a/package/git-crypt/Config.in b/package/git-crypt/Config.in new file mode 100644 index 0000000000..362fe9a600 --- /dev/null +++ b/package/git-crypt/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_GIT_CRYPT + bool "git-crypt" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU # git + select BR2_PACKAGE_GIT # runtime + select BR2_PACKAGE_OPENSSL + help + git-crypt enables transparent encryption and decryption of + files in a git repository. + + https://www.agwa.name/projects/git-crypt/ + +comment "git-crypt needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU diff --git a/package/git-crypt/git-crypt.hash b/package/git-crypt/git-crypt.hash new file mode 100644 index 0000000000..8589f03f71 --- /dev/null +++ b/package/git-crypt/git-crypt.hash @@ -0,0 +1,2 @@ +# Hash from: https://lists.cloudmutt.com/pipermail/git-crypt-announce/2015-May/000003.html +sha256 0a8f92c0a0a125bf768d0c054d947ca4e4b8d6556454b0e7e87fb907ee17cf06 git-crypt-0.5.0.tar.gz diff --git a/package/git-crypt/git-crypt.mk b/package/git-crypt/git-crypt.mk new file mode 100644 index 0000000000..7785ddcfd9 --- /dev/null +++ b/package/git-crypt/git-crypt.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# git-crypt +# +################################################################################ + +GIT_CRYPT_VERSION = 0.5.0 +GIT_CRYPT_SITE = https://www.agwa.name/projects/git-crypt/downloads +GIT_CRYPT_DEPENDENCIES = host-pkgconf openssl +GIT_CRYPT_LICENSE = GPLv3+, MIT +GIT_CRYPT_LICENSE_FILES = COPYING parse_options.hpp + +GIT_CRYPT_LIBS = `$(PKG_CONFIG_HOST_BINARY) --libs openssl` + +define GIT_CRYPT_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ + LDFLAGS="$(TARGET_LDFLAGS) $(GIT_CRYPT_LIBS)" PREFIX=/usr +endef + +define GIT_CRYPT_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) \ + PREFIX=/usr install +endef + +$(eval $(generic-package)) diff --git a/package/git/git.hash b/package/git/git.hash index dabe964849..07ed47bd03 100644 --- a/package/git/git.hash +++ b/package/git/git.hash @@ -1,2 +1,2 @@ # From: https://www.kernel.org/pub/software/scm/git/sha256sums.asc -sha256 ec0283d78a0f1c8408c5fd43610697b953fbaafe4077bb1e41446a9ee3a2f83d git-2.8.2.tar.xz +sha256 c0a779cae325d48a1d5ba08b6ee1febcc31d0657a6da01fd1dec1c6e10976415 git-2.11.1.tar.xz diff --git a/package/git/git.mk b/package/git/git.mk index db260360c2..29e430d3e6 100644 --- a/package/git/git.mk +++ b/package/git/git.mk @@ -4,7 +4,7 @@ # ################################################################################ -GIT_VERSION = 2.8.2 +GIT_VERSION = 2.11.1 GIT_SOURCE = git-$(GIT_VERSION).tar.xz GIT_SITE = https://www.kernel.org/pub/software/scm/git GIT_LICENSE = GPLv2 LGPLv2.1+ diff --git a/package/glib-networking/glib-networking.hash b/package/glib-networking/glib-networking.hash index a495af149d..bbcecb7ad2 100644 --- a/package/glib-networking/glib-networking.hash +++ b/package/glib-networking/glib-networking.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.48/glib-networking-2.48.2.sha256sum -sha256 925c0c49d6b2b8b5695f2e33cd952d1dbb7d18d3f2f796413577719315bb3a84 glib-networking-2.48.2.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.50/glib-networking-2.50.0.sha256sum +sha256 3f1a442f3c2a734946983532ce59ed49120319fdb10c938447c373d5e5286bee glib-networking-2.50.0.tar.xz diff --git a/package/glib-networking/glib-networking.mk b/package/glib-networking/glib-networking.mk index d4782e01f2..d3077e9a9b 100644 --- a/package/glib-networking/glib-networking.mk +++ b/package/glib-networking/glib-networking.mk @@ -4,8 +4,8 @@ # ################################################################################ -GLIB_NETWORKING_VERSION_MAJOR = 2.48 -GLIB_NETWORKING_VERSION = $(GLIB_NETWORKING_VERSION_MAJOR).2 +GLIB_NETWORKING_VERSION_MAJOR = 2.50 +GLIB_NETWORKING_VERSION = $(GLIB_NETWORKING_VERSION_MAJOR).0 GLIB_NETWORKING_SITE = http://ftp.gnome.org/pub/gnome/sources/glib-networking/$(GLIB_NETWORKING_VERSION_MAJOR) GLIB_NETWORKING_SOURCE = glib-networking-$(GLIB_NETWORKING_VERSION).tar.xz GLIB_NETWORKING_INSTALL_STAGING = YES @@ -14,6 +14,8 @@ GLIB_NETWORKING_DEPENDENCIES = \ host-pkgconf \ host-intltool \ libglib2 +GLIB_NETWORKING_CONF_OPTS = \ + --with-ca-certificates=/etc/ssl/certs/ca-certificates.crt GLIB_NETWORKING_LICENSE = LGPLv2+ GLIB_NETWORKING_LICENSE_FILES = COPYING GLIB_NETWORKING_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) \ diff --git a/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch b/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch deleted file mode 100644 index da2f49de10..0000000000 --- a/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch +++ /dev/null @@ -1,174 +0,0 @@ -From https://bugzilla.redhat.com/show_bug.cgi?id=1157689 -Modified for eglibc. - -Signed-off-by: Gustavo Zacarias - -WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! -EMBARGOED !!! EMBARGOED !!! EMARGOED !!! EMBARGOED !!! EMBARGOED !!! -SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! - -CVE-2014-7817: - -The function wordexp() fails to properly handle the WRDE_NOCMD -flag when processing arithmetic inputs in the form of "$((... ``))" -where "..." can be anything valid. The backticks in the arithmetic -epxression are evaluated by in a shell even if WRDE_NOCMD forbade -command substitution. This allows an attacker to attempt to pass -dangerous commands via constructs of the above form, and bypass -the WRDE_NOCMD flag. This patch fixes this by checking for WRDE_NOCMD -in parse_arith(). The patch also hardens parse_backticks() and -parse_comm() to check for WRDE_NOCMD flag and return an error instead -of ever running a shell. - -We expand the testsuite and add 3 new regression tests of roughtly -the same form but with a couple of nested levels. - -On top of the 3 new tests we add fork validation to the WRDE_NOCMD -testing. If any forks are detected during the execution of a wordexp() -call with WRDE_NOCMD, the test is marked as failed. This is slightly -heuristic since vfork might be used, but it provides a higher level -of assurance that no shells were executed as part of command substitution -with WRDE_NOCMD in effect. In addition it doesn't require libpthread or -libdl, instead we use the public implementation namespace function -__register_atfork (already part of the public ABI for libpthread). - -Tested on x86_64 with no regressions. - -2014-10-27 Carlos O'Donell - - * wordexp-test.c (__dso_handle): Add prototype. - (__register_atfork): Likewise. - (__app_register_atfork): New function. - (registered_forks): New global. - (register_fork): New function. - (test_case): Add 3 new tests for WRDE_CMDSUB. - (main): Call __app_register_atfork. - (testit): If WRDE_NOCMD set registered_forks to zero, run test, and - if fork count is non-zero fail the test. - * posix/wordexp.c (parse_arith): Return WRDE_NOCMD if WRDE_NOCMD flag - is set and parsing '`'. - (parse_comm): Return WRDE_NOCMD if WRDE_NOCMD flag is set. - (parse_backtick): Return WRDE_NOCMD if WRDE_NOCMD flag is set and - parsing '`'. - -diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c -index 4957006..5ce2a1b 100644 ---- a/libc/posix/wordexp-test.c -+++ b/libc/posix/wordexp-test.c -@@ -27,6 +27,25 @@ - - #define IFS " \n\t" - -+extern void *__dso_handle __attribute__ ((__weak__, __visibility__ ("hidden"))); -+extern int __register_atfork (void (*) (void), void (*) (void), void (*) (void), void *); -+ -+static int __app_register_atfork (void (*prepare) (void), void (*parent) (void), void (*child) (void)) -+{ -+ return __register_atfork (prepare, parent, child, -+ &__dso_handle == NULL ? NULL : __dso_handle); -+} -+ -+/* Number of forks seen. */ -+static int registered_forks; -+ -+/* For each fork increment the fork count. */ -+static void -+register_fork (void) -+{ -+ registered_forks++; -+} -+ - struct test_case_struct - { - int retval; -@@ -206,6 +225,12 @@ struct test_case_struct - { WRDE_SYNTAX, NULL, "$((2+))", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "`", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "$((010+4+))", 0, 0, { NULL }, IFS }, -+ /* Test for CVE-2014-7817. We test 3 combinations of command -+ substitution inside an arithmetic expression to make sure that -+ no commands are executed and error is returned. */ -+ { WRDE_CMDSUB, NULL, "$((`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+$((`echo 1`))))", WRDE_NOCMD, 0, { NULL, }, IFS }, - - { -1, NULL, NULL, 0, 0, { NULL, }, IFS }, - }; -@@ -258,6 +283,15 @@ main (int argc, char *argv[]) - return -1; - } - -+ /* If we are not allowed to do command substitution, we install -+ fork handlers to verify that no forks happened. No forks should -+ happen at all if command substitution is disabled. */ -+ if (__app_register_atfork (register_fork, NULL, NULL) != 0) -+ { -+ printf ("Failed to register fork handler.\n"); -+ return -1; -+ } -+ - for (test = 0; test_case[test].retval != -1; test++) - if (testit (&test_case[test])) - ++fail; -@@ -367,6 +401,9 @@ testit (struct test_case_struct *tc) - - printf ("Test %d (%s): ", ++tests, tc->words); - -+ if (tc->flags & WRDE_NOCMD) -+ registered_forks = 0; -+ - if (tc->flags & WRDE_APPEND) - { - /* initial wordexp() call, to be appended to */ -@@ -378,6 +415,13 @@ testit (struct test_case_struct *tc) - } - retval = wordexp (tc->words, &we, tc->flags); - -+ if ((tc->flags & WRDE_NOCMD) -+ && (registered_forks > 0)) -+ { -+ printf ("FAILED fork called for WRDE_NOCMD\n"); -+ return 1; -+ } -+ - if (tc->flags & WRDE_DOOFFS) - start_offs = sav_we.we_offs; - -diff --git a/posix/wordexp.c b/posix/wordexp.c -index b6b65dd..d6a158f 100644 ---- a/libc/posix/wordexp.c -+++ b/libc/posix/wordexp.c -@@ -693,6 +693,12 @@ parse_arith (char **word, size_t *word_length, size_t *max_length, - break; - - case '`': -+ if (flags & WRDE_NOCMD) -+ { -+ free (expr); -+ return WRDE_NOCMD; -+ } -+ - (*offset)++; - error = parse_backtick (&expr, &expr_length, &expr_maxlen, - words, offset, flags, NULL, NULL, NULL); -@@ -1144,6 +1150,10 @@ parse_comm (char **word, size_t *word_length, size_t *max_length, - size_t comm_maxlen; - char *comm = w_newword (&comm_length, &comm_maxlen); - -+ /* Do nothing if command substitution should not succeed. */ -+ if (flags & WRDE_NOCMD) -+ return WRDE_CMDSUB; -+ - for (; words[*offset]; ++(*offset)) - { - switch (words[*offset]) -@@ -2121,6 +2131,9 @@ parse_backtick (char **word, size_t *word_length, size_t *max_length, - switch (words[*offset]) - { - case '`': -+ if (flags & WRDE_NOCMD) -+ return WRDE_NOCMD; -+ - /* Go -- give the script to the shell */ - error = exec_comm (comm, word, word_length, max_length, flags, - pwordexp, ifs, ifs_white); diff --git a/package/glibc/2.18-svnr23787/0002-accept-make4.patch b/package/glibc/2.18-svnr23787/0002-accept-make4.patch deleted file mode 100644 index 4f426f29e6..0000000000 --- a/package/glibc/2.18-svnr23787/0002-accept-make4.patch +++ /dev/null @@ -1,33 +0,0 @@ -Backport upstream patch (28d708c44bc47b56f6551ff285f78edcf61c208a) to accept -make-4.0 or newer. -We patch both configure and configure.in files so if we ever have to run -autoreconf in the glibc source, then the fix will be propagated properly. - -Signed-off-by: Markos Chandras - -Index: glibc-2.18-svnr23787/libc/configure -=================================================================== ---- glibc-2.18-svnr23787.orig/libc/configure -+++ glibc-2.18-svnr23787/libc/configure -@@ -4772,7 +4772,7 @@ $as_echo_n "checking version of $MAKE... - ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 3.79* | 3.[89]*) -+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -Index: glibc-2.18-svnr23787/libc/configure.in -=================================================================== ---- glibc-2.18-svnr23787.orig/libc/configure.in -+++ glibc-2.18-svnr23787/libc/configure.in -@@ -989,7 +989,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}g - critic_missing="$critic_missing gcc") - AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version, - [GNU Make[^0-9]*\([0-9][0-9.]*\)], -- [3.79* | 3.[89]*], critic_missing="$critic_missing make") -+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make") - - AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version, - [GNU gettext.* \([0-9]*\.[0-9.]*\)], diff --git a/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch b/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch deleted file mode 100644 index f447dcd329..0000000000 --- a/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch +++ /dev/null @@ -1,141 +0,0 @@ -Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=41488498b6 -See https://bugzilla.redhat.com/show_bug.cgi?id=1135841 - -Signed-off-by: Gustavo Zacarias - -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm1364.c eglibc-2.19/libc/iconvdata/ibm1364.c ---- eglibc-2.19.orig/libc/iconvdata/ibm1364.c 2015-01-08 16:05:53.918823240 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm1364.c 2015-01-08 16:06:02.781555143 -0300 -@@ -220,7 +220,8 @@ - ++rp2; \ - \ - uint32_t res; \ -- if (__builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ -+ || __builtin_expect (ch < rp2->start, 0) \ - || (res = DB_TO_UCS4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm932.c eglibc-2.19/libc/iconvdata/ibm932.c ---- eglibc-2.19.orig/libc/iconvdata/ibm932.c 2015-01-08 16:05:53.910818967 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm932.c 2015-01-08 16:06:02.781555143 -0300 -@@ -73,11 +73,12 @@ - } \ - \ - ch = (ch * 0x100) + inptr[1]; \ -+ /* ch was less than 0xfd. */ \ -+ assert (ch < 0xfd00); \ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -- || __builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm932db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, '\1') == 0 && ch !=0)) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm933.c eglibc-2.19/libc/iconvdata/ibm933.c ---- eglibc-2.19.orig/libc/iconvdata/ibm933.c 2015-01-08 16:05:53.917822706 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm933.c 2015-01-08 16:06:02.781555143 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm933db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm935.c eglibc-2.19/libc/iconvdata/ibm935.c ---- eglibc-2.19.orig/libc/iconvdata/ibm935.c 2015-01-08 16:05:53.921824843 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm935.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm935db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm937.c eglibc-2.19/libc/iconvdata/ibm937.c ---- eglibc-2.19.orig/libc/iconvdata/ibm937.c 2015-01-08 16:05:53.915821638 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm937.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm937db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm939.c eglibc-2.19/libc/iconvdata/ibm939.c ---- eglibc-2.19.orig/libc/iconvdata/ibm939.c 2015-01-08 16:05:53.917822706 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm939.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm939db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm943.c eglibc-2.19/libc/iconvdata/ibm943.c ---- eglibc-2.19.orig/libc/iconvdata/ibm943.c 2015-01-08 16:05:53.918823240 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm943.c 2015-01-08 16:06:02.782555677 -0300 -@@ -74,11 +74,12 @@ - } \ - \ - ch = (ch * 0x100) + inptr[1]; \ -+ /* ch was less than 0xfd. */ \ -+ assert (ch < 0xfd00); \ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -- || __builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm943db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, '\1') == 0 && ch !=0)) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/Makefile eglibc-2.19/libc/iconvdata/Makefile ---- eglibc-2.19.orig/libc/iconvdata/Makefile 2015-01-08 16:05:53.903815227 -0300 -+++ eglibc-2.19/libc/iconvdata/Makefile 2015-01-08 16:06:02.782555677 -0300 -@@ -303,6 +303,7 @@ - $(objpfx)iconv-test.out: run-iconv-test.sh $(objpfx)gconv-modules \ - $(addprefix $(objpfx),$(modules.so)) \ - $(common-objdir)/iconv/iconv_prog TESTS -+ iconv_modules="$(modules)" \ - $(SHELL) $< $(common-objdir) '$(test-wrapper)' > $@ - - $(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh eglibc-2.19/libc/iconvdata/run-iconv-test.sh ---- eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:05:53.894810420 -0300 -+++ eglibc-2.19/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:06:02.782555677 -0300 -@@ -188,6 +188,24 @@ - - done < TESTS2 - -+# Check for crashes in decoders. -+printf '\016\377\377\377\377\377\377\377' > $temp1 -+for from in $iconv_modules ; do -+ echo $ac_n "test decoder $from $ac_c" -+ PROG=`eval echo $ICONV` -+ if $PROG < $temp1 >/dev/null 2>&1 ; then -+ : # fall through -+ else -+ status=$? -+ if test $status -gt 1 ; then -+ echo "/FAILED" -+ failed=1 -+ continue -+ fi -+ fi -+ echo "OK" -+done -+ - exit $failed - # Local Variables: - # mode:shell-script diff --git a/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch b/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch deleted file mode 100644 index c7aa12c1b9..0000000000 --- a/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch +++ /dev/null @@ -1,20 +0,0 @@ -Fix CVE-2014-9402 - denial of service in getnetbyname function. -Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=11e3417af6e354f1942c68a271ae51e892b2814d -See https://bugzilla.redhat.com/show_bug.cgi?id=1175369 - -Signed-off-by: Gustavo Zacarias - -diff -Nura eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c eglibc-2.19/libc/resolv/nss_dns/dns-network.c ---- eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:35.024977879 -0300 -+++ eglibc-2.19/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:42.543992357 -0300 -@@ -398,8 +398,8 @@ - - case BYNAME: - { -- char **ap = result->n_aliases++; -- while (*ap != NULL) -+ char **ap; -+ for (ap = result->n_aliases; *ap != NULL; ++ap) - { - /* Check each alias name for being of the forms: - 4.3.2.1.in-addr.arpa = net 1.2.3.4 diff --git a/package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch b/package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch deleted file mode 100644 index a0da626cbf..0000000000 --- a/package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch +++ /dev/null @@ -1,88 +0,0 @@ -Fix CVE-2015-1472 - heap buffer overflow in wscanf -Backport from upstream: -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=5bd80bfe9ca0d955bfbbc002781bc7b01b6bcb06 -See: https://bugzilla.redhat.com/show_bug.cgi?id=1188235 - -Signed-off-by: Gustavo Zacarias - -diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c -index aece3f2..8a2eb9e 100644 ---- a/libc/stdio-common/tst-sscanf.c -+++ b/libc/stdio-common/tst-sscanf.c -@@ -233,5 +233,38 @@ main (void) - } - } - -+ /* BZ #16618 -+ The test will segfault during SSCANF if the buffer overflow -+ is not fixed. The size of `s` is such that it forces the use -+ of malloc internally and this triggers the incorrect computation. -+ Thus the value for SIZE is arbitrariy high enough that malloc -+ is used. */ -+ { -+#define SIZE 131072 -+ CHAR *s = malloc ((SIZE + 1) * sizeof (*s)); -+ if (s == NULL) -+ abort (); -+ for (size_t i = 0; i < SIZE; i++) -+ s[i] = L('0'); -+ s[SIZE] = L('\0'); -+ int i = 42; -+ /* Scan multi-digit zero into `i`. */ -+ if (SSCANF (s, L("%d"), &i) != 1) -+ { -+ printf ("FAIL: bug16618: SSCANF did not read one input item.\n"); -+ result = 1; -+ } -+ if (i != 0) -+ { -+ printf ("FAIL: bug16618: Value of `i` was not zero as expected.\n"); -+ result = 1; -+ } -+ free (s); -+ if (result != 1) -+ printf ("PASS: bug16618: Did not crash.\n"); -+#undef SIZE -+ } -+ -+ - return result; - } -diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c -index cd129a8..0e204e7 100644 ---- a/libc/stdio-common/vfscanf.c -+++ b/libc/stdio-common/vfscanf.c -@@ -272,9 +272,10 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - if (__glibc_unlikely (wpsize == wpmax)) \ - { \ - CHAR_T *old = wp; \ -- size_t newsize = (UCHAR_MAX + 1 > 2 * wpmax \ -- ? UCHAR_MAX + 1 : 2 * wpmax); \ -- if (use_malloc || !__libc_use_alloca (newsize)) \ -+ bool fits = __glibc_likely (wpmax <= SIZE_MAX / sizeof (CHAR_T) / 2); \ -+ size_t wpneed = MAX (UCHAR_MAX + 1, 2 * wpmax); \ -+ size_t newsize = fits ? wpneed * sizeof (CHAR_T) : SIZE_MAX; \ -+ if (!__libc_use_alloca (newsize)) \ - { \ - wp = realloc (use_malloc ? wp : NULL, newsize); \ - if (wp == NULL) \ -@@ -286,14 +287,13 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - } \ - if (! use_malloc) \ - MEMCPY (wp, old, wpsize); \ -- wpmax = newsize; \ -+ wpmax = wpneed; \ - use_malloc = true; \ - } \ - else \ - { \ - size_t s = wpmax * sizeof (CHAR_T); \ -- wp = (CHAR_T *) extend_alloca (wp, s, \ -- newsize * sizeof (CHAR_T)); \ -+ wp = (CHAR_T *) extend_alloca (wp, s, newsize); \ - wpmax = s / sizeof (CHAR_T); \ - if (old != NULL) \ - MEMCPY (wp, old, wpsize); \ --- -1.9.4 - diff --git a/package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch b/package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch deleted file mode 100644 index da2f49de10..0000000000 --- a/package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch +++ /dev/null @@ -1,174 +0,0 @@ -From https://bugzilla.redhat.com/show_bug.cgi?id=1157689 -Modified for eglibc. - -Signed-off-by: Gustavo Zacarias - -WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! -EMBARGOED !!! EMBARGOED !!! EMARGOED !!! EMBARGOED !!! EMBARGOED !!! -SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! - -CVE-2014-7817: - -The function wordexp() fails to properly handle the WRDE_NOCMD -flag when processing arithmetic inputs in the form of "$((... ``))" -where "..." can be anything valid. The backticks in the arithmetic -epxression are evaluated by in a shell even if WRDE_NOCMD forbade -command substitution. This allows an attacker to attempt to pass -dangerous commands via constructs of the above form, and bypass -the WRDE_NOCMD flag. This patch fixes this by checking for WRDE_NOCMD -in parse_arith(). The patch also hardens parse_backticks() and -parse_comm() to check for WRDE_NOCMD flag and return an error instead -of ever running a shell. - -We expand the testsuite and add 3 new regression tests of roughtly -the same form but with a couple of nested levels. - -On top of the 3 new tests we add fork validation to the WRDE_NOCMD -testing. If any forks are detected during the execution of a wordexp() -call with WRDE_NOCMD, the test is marked as failed. This is slightly -heuristic since vfork might be used, but it provides a higher level -of assurance that no shells were executed as part of command substitution -with WRDE_NOCMD in effect. In addition it doesn't require libpthread or -libdl, instead we use the public implementation namespace function -__register_atfork (already part of the public ABI for libpthread). - -Tested on x86_64 with no regressions. - -2014-10-27 Carlos O'Donell - - * wordexp-test.c (__dso_handle): Add prototype. - (__register_atfork): Likewise. - (__app_register_atfork): New function. - (registered_forks): New global. - (register_fork): New function. - (test_case): Add 3 new tests for WRDE_CMDSUB. - (main): Call __app_register_atfork. - (testit): If WRDE_NOCMD set registered_forks to zero, run test, and - if fork count is non-zero fail the test. - * posix/wordexp.c (parse_arith): Return WRDE_NOCMD if WRDE_NOCMD flag - is set and parsing '`'. - (parse_comm): Return WRDE_NOCMD if WRDE_NOCMD flag is set. - (parse_backtick): Return WRDE_NOCMD if WRDE_NOCMD flag is set and - parsing '`'. - -diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c -index 4957006..5ce2a1b 100644 ---- a/libc/posix/wordexp-test.c -+++ b/libc/posix/wordexp-test.c -@@ -27,6 +27,25 @@ - - #define IFS " \n\t" - -+extern void *__dso_handle __attribute__ ((__weak__, __visibility__ ("hidden"))); -+extern int __register_atfork (void (*) (void), void (*) (void), void (*) (void), void *); -+ -+static int __app_register_atfork (void (*prepare) (void), void (*parent) (void), void (*child) (void)) -+{ -+ return __register_atfork (prepare, parent, child, -+ &__dso_handle == NULL ? NULL : __dso_handle); -+} -+ -+/* Number of forks seen. */ -+static int registered_forks; -+ -+/* For each fork increment the fork count. */ -+static void -+register_fork (void) -+{ -+ registered_forks++; -+} -+ - struct test_case_struct - { - int retval; -@@ -206,6 +225,12 @@ struct test_case_struct - { WRDE_SYNTAX, NULL, "$((2+))", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "`", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "$((010+4+))", 0, 0, { NULL }, IFS }, -+ /* Test for CVE-2014-7817. We test 3 combinations of command -+ substitution inside an arithmetic expression to make sure that -+ no commands are executed and error is returned. */ -+ { WRDE_CMDSUB, NULL, "$((`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+$((`echo 1`))))", WRDE_NOCMD, 0, { NULL, }, IFS }, - - { -1, NULL, NULL, 0, 0, { NULL, }, IFS }, - }; -@@ -258,6 +283,15 @@ main (int argc, char *argv[]) - return -1; - } - -+ /* If we are not allowed to do command substitution, we install -+ fork handlers to verify that no forks happened. No forks should -+ happen at all if command substitution is disabled. */ -+ if (__app_register_atfork (register_fork, NULL, NULL) != 0) -+ { -+ printf ("Failed to register fork handler.\n"); -+ return -1; -+ } -+ - for (test = 0; test_case[test].retval != -1; test++) - if (testit (&test_case[test])) - ++fail; -@@ -367,6 +401,9 @@ testit (struct test_case_struct *tc) - - printf ("Test %d (%s): ", ++tests, tc->words); - -+ if (tc->flags & WRDE_NOCMD) -+ registered_forks = 0; -+ - if (tc->flags & WRDE_APPEND) - { - /* initial wordexp() call, to be appended to */ -@@ -378,6 +415,13 @@ testit (struct test_case_struct *tc) - } - retval = wordexp (tc->words, &we, tc->flags); - -+ if ((tc->flags & WRDE_NOCMD) -+ && (registered_forks > 0)) -+ { -+ printf ("FAILED fork called for WRDE_NOCMD\n"); -+ return 1; -+ } -+ - if (tc->flags & WRDE_DOOFFS) - start_offs = sav_we.we_offs; - -diff --git a/posix/wordexp.c b/posix/wordexp.c -index b6b65dd..d6a158f 100644 ---- a/libc/posix/wordexp.c -+++ b/libc/posix/wordexp.c -@@ -693,6 +693,12 @@ parse_arith (char **word, size_t *word_length, size_t *max_length, - break; - - case '`': -+ if (flags & WRDE_NOCMD) -+ { -+ free (expr); -+ return WRDE_NOCMD; -+ } -+ - (*offset)++; - error = parse_backtick (&expr, &expr_length, &expr_maxlen, - words, offset, flags, NULL, NULL, NULL); -@@ -1144,6 +1150,10 @@ parse_comm (char **word, size_t *word_length, size_t *max_length, - size_t comm_maxlen; - char *comm = w_newword (&comm_length, &comm_maxlen); - -+ /* Do nothing if command substitution should not succeed. */ -+ if (flags & WRDE_NOCMD) -+ return WRDE_CMDSUB; -+ - for (; words[*offset]; ++(*offset)) - { - switch (words[*offset]) -@@ -2121,6 +2131,9 @@ parse_backtick (char **word, size_t *word_length, size_t *max_length, - switch (words[*offset]) - { - case '`': -+ if (flags & WRDE_NOCMD) -+ return WRDE_NOCMD; -+ - /* Go -- give the script to the shell */ - error = exec_comm (comm, word, word_length, max_length, flags, - pwordexp, ifs, ifs_white); diff --git a/package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch b/package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch deleted file mode 100644 index f447dcd329..0000000000 --- a/package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch +++ /dev/null @@ -1,141 +0,0 @@ -Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=41488498b6 -See https://bugzilla.redhat.com/show_bug.cgi?id=1135841 - -Signed-off-by: Gustavo Zacarias - -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm1364.c eglibc-2.19/libc/iconvdata/ibm1364.c ---- eglibc-2.19.orig/libc/iconvdata/ibm1364.c 2015-01-08 16:05:53.918823240 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm1364.c 2015-01-08 16:06:02.781555143 -0300 -@@ -220,7 +220,8 @@ - ++rp2; \ - \ - uint32_t res; \ -- if (__builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ -+ || __builtin_expect (ch < rp2->start, 0) \ - || (res = DB_TO_UCS4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm932.c eglibc-2.19/libc/iconvdata/ibm932.c ---- eglibc-2.19.orig/libc/iconvdata/ibm932.c 2015-01-08 16:05:53.910818967 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm932.c 2015-01-08 16:06:02.781555143 -0300 -@@ -73,11 +73,12 @@ - } \ - \ - ch = (ch * 0x100) + inptr[1]; \ -+ /* ch was less than 0xfd. */ \ -+ assert (ch < 0xfd00); \ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -- || __builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm932db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, '\1') == 0 && ch !=0)) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm933.c eglibc-2.19/libc/iconvdata/ibm933.c ---- eglibc-2.19.orig/libc/iconvdata/ibm933.c 2015-01-08 16:05:53.917822706 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm933.c 2015-01-08 16:06:02.781555143 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm933db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm935.c eglibc-2.19/libc/iconvdata/ibm935.c ---- eglibc-2.19.orig/libc/iconvdata/ibm935.c 2015-01-08 16:05:53.921824843 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm935.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm935db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm937.c eglibc-2.19/libc/iconvdata/ibm937.c ---- eglibc-2.19.orig/libc/iconvdata/ibm937.c 2015-01-08 16:05:53.915821638 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm937.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm937db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm939.c eglibc-2.19/libc/iconvdata/ibm939.c ---- eglibc-2.19.orig/libc/iconvdata/ibm939.c 2015-01-08 16:05:53.917822706 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm939.c 2015-01-08 16:06:02.782555677 -0300 -@@ -161,7 +161,7 @@ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -+ if (__builtin_expect (rp2->start == 0xffff, 0) \ - || __builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm939db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm943.c eglibc-2.19/libc/iconvdata/ibm943.c ---- eglibc-2.19.orig/libc/iconvdata/ibm943.c 2015-01-08 16:05:53.918823240 -0300 -+++ eglibc-2.19/libc/iconvdata/ibm943.c 2015-01-08 16:06:02.782555677 -0300 -@@ -74,11 +74,12 @@ - } \ - \ - ch = (ch * 0x100) + inptr[1]; \ -+ /* ch was less than 0xfd. */ \ -+ assert (ch < 0xfd00); \ - while (ch > rp2->end) \ - ++rp2; \ - \ -- if (__builtin_expect (rp2 == NULL, 0) \ -- || __builtin_expect (ch < rp2->start, 0) \ -+ if (__builtin_expect (ch < rp2->start, 0) \ - || (res = __ibm943db_to_ucs4[ch + rp2->idx], \ - __builtin_expect (res, '\1') == 0 && ch !=0)) \ - { \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/Makefile eglibc-2.19/libc/iconvdata/Makefile ---- eglibc-2.19.orig/libc/iconvdata/Makefile 2015-01-08 16:05:53.903815227 -0300 -+++ eglibc-2.19/libc/iconvdata/Makefile 2015-01-08 16:06:02.782555677 -0300 -@@ -303,6 +303,7 @@ - $(objpfx)iconv-test.out: run-iconv-test.sh $(objpfx)gconv-modules \ - $(addprefix $(objpfx),$(modules.so)) \ - $(common-objdir)/iconv/iconv_prog TESTS -+ iconv_modules="$(modules)" \ - $(SHELL) $< $(common-objdir) '$(test-wrapper)' > $@ - - $(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \ -diff -Nura eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh eglibc-2.19/libc/iconvdata/run-iconv-test.sh ---- eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:05:53.894810420 -0300 -+++ eglibc-2.19/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:06:02.782555677 -0300 -@@ -188,6 +188,24 @@ - - done < TESTS2 - -+# Check for crashes in decoders. -+printf '\016\377\377\377\377\377\377\377' > $temp1 -+for from in $iconv_modules ; do -+ echo $ac_n "test decoder $from $ac_c" -+ PROG=`eval echo $ICONV` -+ if $PROG < $temp1 >/dev/null 2>&1 ; then -+ : # fall through -+ else -+ status=$? -+ if test $status -gt 1 ; then -+ echo "/FAILED" -+ failed=1 -+ continue -+ fi -+ fi -+ echo "OK" -+done -+ - exit $failed - # Local Variables: - # mode:shell-script diff --git a/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch b/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch deleted file mode 100644 index c7aa12c1b9..0000000000 --- a/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch +++ /dev/null @@ -1,20 +0,0 @@ -Fix CVE-2014-9402 - denial of service in getnetbyname function. -Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=11e3417af6e354f1942c68a271ae51e892b2814d -See https://bugzilla.redhat.com/show_bug.cgi?id=1175369 - -Signed-off-by: Gustavo Zacarias - -diff -Nura eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c eglibc-2.19/libc/resolv/nss_dns/dns-network.c ---- eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:35.024977879 -0300 -+++ eglibc-2.19/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:42.543992357 -0300 -@@ -398,8 +398,8 @@ - - case BYNAME: - { -- char **ap = result->n_aliases++; -- while (*ap != NULL) -+ char **ap; -+ for (ap = result->n_aliases; *ap != NULL; ++ap) - { - /* Check each alias name for being of the forms: - 4.3.2.1.in-addr.arpa = net 1.2.3.4 diff --git a/package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch b/package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch deleted file mode 100644 index a0da626cbf..0000000000 --- a/package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch +++ /dev/null @@ -1,88 +0,0 @@ -Fix CVE-2015-1472 - heap buffer overflow in wscanf -Backport from upstream: -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=5bd80bfe9ca0d955bfbbc002781bc7b01b6bcb06 -See: https://bugzilla.redhat.com/show_bug.cgi?id=1188235 - -Signed-off-by: Gustavo Zacarias - -diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c -index aece3f2..8a2eb9e 100644 ---- a/libc/stdio-common/tst-sscanf.c -+++ b/libc/stdio-common/tst-sscanf.c -@@ -233,5 +233,38 @@ main (void) - } - } - -+ /* BZ #16618 -+ The test will segfault during SSCANF if the buffer overflow -+ is not fixed. The size of `s` is such that it forces the use -+ of malloc internally and this triggers the incorrect computation. -+ Thus the value for SIZE is arbitrariy high enough that malloc -+ is used. */ -+ { -+#define SIZE 131072 -+ CHAR *s = malloc ((SIZE + 1) * sizeof (*s)); -+ if (s == NULL) -+ abort (); -+ for (size_t i = 0; i < SIZE; i++) -+ s[i] = L('0'); -+ s[SIZE] = L('\0'); -+ int i = 42; -+ /* Scan multi-digit zero into `i`. */ -+ if (SSCANF (s, L("%d"), &i) != 1) -+ { -+ printf ("FAIL: bug16618: SSCANF did not read one input item.\n"); -+ result = 1; -+ } -+ if (i != 0) -+ { -+ printf ("FAIL: bug16618: Value of `i` was not zero as expected.\n"); -+ result = 1; -+ } -+ free (s); -+ if (result != 1) -+ printf ("PASS: bug16618: Did not crash.\n"); -+#undef SIZE -+ } -+ -+ - return result; - } -diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c -index cd129a8..0e204e7 100644 ---- a/libc/stdio-common/vfscanf.c -+++ b/libc/stdio-common/vfscanf.c -@@ -272,9 +272,10 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - if (__glibc_unlikely (wpsize == wpmax)) \ - { \ - CHAR_T *old = wp; \ -- size_t newsize = (UCHAR_MAX + 1 > 2 * wpmax \ -- ? UCHAR_MAX + 1 : 2 * wpmax); \ -- if (use_malloc || !__libc_use_alloca (newsize)) \ -+ bool fits = __glibc_likely (wpmax <= SIZE_MAX / sizeof (CHAR_T) / 2); \ -+ size_t wpneed = MAX (UCHAR_MAX + 1, 2 * wpmax); \ -+ size_t newsize = fits ? wpneed * sizeof (CHAR_T) : SIZE_MAX; \ -+ if (!__libc_use_alloca (newsize)) \ - { \ - wp = realloc (use_malloc ? wp : NULL, newsize); \ - if (wp == NULL) \ -@@ -286,14 +287,13 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - } \ - if (! use_malloc) \ - MEMCPY (wp, old, wpsize); \ -- wpmax = newsize; \ -+ wpmax = wpneed; \ - use_malloc = true; \ - } \ - else \ - { \ - size_t s = wpmax * sizeof (CHAR_T); \ -- wp = (CHAR_T *) extend_alloca (wp, s, \ -- newsize * sizeof (CHAR_T)); \ -+ wp = (CHAR_T *) extend_alloca (wp, s, newsize); \ - wpmax = s / sizeof (CHAR_T); \ - if (old != NULL) \ - MEMCPY (wp, old, wpsize); \ --- -1.9.4 - diff --git a/package/glibc/2.22/0004-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch b/package/glibc/2.22/0004-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch new file mode 100644 index 0000000000..740b3221c9 --- /dev/null +++ b/package/glibc/2.22/0004-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch @@ -0,0 +1,76 @@ +From 43c2948756bb6e144c7b871e827bba37d61ad3a3 Mon Sep 17 00:00:00 2001 +From: Aurelien Jarno +Date: Sat, 18 Jun 2016 19:11:23 +0200 +Subject: [PATCH] MIPS, SPARC: fix wrong vfork aliases in libpthread.so + +With recent binutils versions the GNU libc fails to build on at least +MISP and SPARC, with this kind of error: + + /home/aurel32/glibc/glibc-build/nptl/libpthread.so:(*IND*+0x0): multiple definition of `vfork@GLIBC_2.0' + /home/aurel32/glibc/glibc-build/nptl/libpthread.so::(.text+0xee50): first defined here + +It appears that on these architectures pt-vfork.S includes vfork.S +(through the alpha version of pt-vfork.S) and that the __vfork aliases +are not conditionalized on IS_IN (libc) like on other architectures. +Therefore the aliases are also wrongly included in libpthread.so. + +Fix this by properly conditionalizing the aliases like on other +architectures. + +Changelog: + * sysdeps/unix/sysv/linux/mips/vfork.S (__vfork): Conditionalize + hidden_def, weak_alias and strong_alias on [IS_IN (libc)]. + * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise. + +[Vincent: do not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + sysdeps/unix/sysv/linux/mips/vfork.S | 2 ++ + sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S | 2 ++ + sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S | 2 ++ + 3 files changed, 6 insertions(+) + +diff --git a/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S +index 8c66151..c0c0ce6 100644 +--- a/sysdeps/unix/sysv/linux/mips/vfork.S ++++ b/sysdeps/unix/sysv/linux/mips/vfork.S +@@ -106,6 +106,8 @@ L(error): + #endif + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def(__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +index dc32e0a..94f2c8d 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +@@ -44,6 +44,8 @@ ENTRY(__vfork) + nop + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def (__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +index 05be3c2..a7479e9 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +@@ -44,6 +44,8 @@ ENTRY(__vfork) + nop + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def (__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +-- +2.7.3 + diff --git a/package/glibc/2.22/0005-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch b/package/glibc/2.22/0005-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch new file mode 100644 index 0000000000..3c53f6d050 --- /dev/null +++ b/package/glibc/2.22/0005-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch @@ -0,0 +1,122 @@ +From b87c1ec3fa398646f042a68f0ce0f7d09c1348c7 Mon Sep 17 00:00:00 2001 +From: Aurelien Jarno +Date: Tue, 21 Jun 2016 23:59:37 +0200 +Subject: [PATCH] MIPS, SPARC: more fixes to the vfork aliases in libpthread.so + +Commit 43c29487 tried to fix the vfork aliases in libpthread.so on MIPS +and SPARC, but failed to do it correctly, introducing an ABI change. + +This patch does the remaining changes needed to align the MIPS and SPARC +vfork implementations with the other architectures. That way the the +alpha version of pt-vfork.S works correctly for MIPS and SPARC. The +changes for alpha were done in 82aab97c. + +Changelog: + * sysdeps/unix/sysv/linux/mips/vfork.S (__vfork): Rename into + __libc_vfork. + (__vfork) [IS_IN (libc)]: Remove alias. + (__libc_vfork) [IS_IN (libc)]: Define as an alias. + * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise. + +[Vincent: do not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + sysdeps/unix/sysv/linux/mips/vfork.S | 12 ++++++------ + sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S | 8 ++++---- + sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S | 8 ++++---- + 3 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S +index c0c0ce6..1867c86 100644 +--- a/sysdeps/unix/sysv/linux/mips/vfork.S ++++ b/sysdeps/unix/sysv/linux/mips/vfork.S +@@ -31,13 +31,13 @@ + LOCALSZ= 1 + FRAMESZ= (((NARGSAVE+LOCALSZ)*SZREG)+ALSZ)&ALMASK + GPOFF= FRAMESZ-(1*SZREG) +-NESTED(__vfork,FRAMESZ,sp) ++NESTED(__libc_vfork,FRAMESZ,sp) + #ifdef __PIC__ + SETUP_GP + #endif + PTR_SUBU sp, FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) +- SETUP_GP64_REG (a5, __vfork) ++ SETUP_GP64_REG (a5, __libc_vfork) + #ifdef __PIC__ + SAVE_GP (GPOFF) + #endif +@@ -104,10 +104,10 @@ L(error): + RESTORE_GP64_REG + j __syscall_error + #endif +- END(__vfork) ++ END(__libc_vfork) + + #if IS_IN (libc) +-libc_hidden_def(__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) ++libc_hidden_def (__vfork) + #endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +index 94f2c8d..0d0a3b5 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +@@ -21,7 +21,7 @@ + + .text + .globl __syscall_error +-ENTRY(__vfork) ++ENTRY(__libc_vfork) + ld [%g7 + PID], %o5 + cmp %o5, 0 + bne 1f +@@ -42,10 +42,10 @@ ENTRY(__vfork) + st %o5, [%g7 + PID] + 1: retl + nop +-END(__vfork) ++END(__libc_vfork) + + #if IS_IN (libc) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) + libc_hidden_def (__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) + #endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +index a7479e9..0818eba 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +@@ -21,7 +21,7 @@ + + .text + .globl __syscall_error +-ENTRY(__vfork) ++ENTRY(__libc_vfork) + ld [%g7 + PID], %o5 + sethi %hi(0x80000000), %o3 + cmp %o5, 0 +@@ -42,10 +42,10 @@ ENTRY(__vfork) + st %o5, [%g7 + PID] + 1: retl + nop +-END(__vfork) ++END(__libc_vfork) + + #if IS_IN (libc) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) + libc_hidden_def (__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) + #endif +-- +2.7.3 + diff --git a/package/glibc/2.23/0003-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch b/package/glibc/2.23/0003-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch new file mode 100644 index 0000000000..740b3221c9 --- /dev/null +++ b/package/glibc/2.23/0003-MIPS-SPARC-fix-wrong-vfork-aliases-in-libpthread.so.patch @@ -0,0 +1,76 @@ +From 43c2948756bb6e144c7b871e827bba37d61ad3a3 Mon Sep 17 00:00:00 2001 +From: Aurelien Jarno +Date: Sat, 18 Jun 2016 19:11:23 +0200 +Subject: [PATCH] MIPS, SPARC: fix wrong vfork aliases in libpthread.so + +With recent binutils versions the GNU libc fails to build on at least +MISP and SPARC, with this kind of error: + + /home/aurel32/glibc/glibc-build/nptl/libpthread.so:(*IND*+0x0): multiple definition of `vfork@GLIBC_2.0' + /home/aurel32/glibc/glibc-build/nptl/libpthread.so::(.text+0xee50): first defined here + +It appears that on these architectures pt-vfork.S includes vfork.S +(through the alpha version of pt-vfork.S) and that the __vfork aliases +are not conditionalized on IS_IN (libc) like on other architectures. +Therefore the aliases are also wrongly included in libpthread.so. + +Fix this by properly conditionalizing the aliases like on other +architectures. + +Changelog: + * sysdeps/unix/sysv/linux/mips/vfork.S (__vfork): Conditionalize + hidden_def, weak_alias and strong_alias on [IS_IN (libc)]. + * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise. + +[Vincent: do not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + sysdeps/unix/sysv/linux/mips/vfork.S | 2 ++ + sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S | 2 ++ + sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S | 2 ++ + 3 files changed, 6 insertions(+) + +diff --git a/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S +index 8c66151..c0c0ce6 100644 +--- a/sysdeps/unix/sysv/linux/mips/vfork.S ++++ b/sysdeps/unix/sysv/linux/mips/vfork.S +@@ -106,6 +106,8 @@ L(error): + #endif + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def(__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +index dc32e0a..94f2c8d 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +@@ -44,6 +44,8 @@ ENTRY(__vfork) + nop + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def (__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +index 05be3c2..a7479e9 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +@@ -44,6 +44,8 @@ ENTRY(__vfork) + nop + END(__vfork) + ++#if IS_IN (libc) + libc_hidden_def (__vfork) + weak_alias (__vfork, vfork) + strong_alias (__vfork, __libc_vfork) ++#endif +-- +2.7.3 + diff --git a/package/glibc/2.23/0004-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch b/package/glibc/2.23/0004-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch new file mode 100644 index 0000000000..3c53f6d050 --- /dev/null +++ b/package/glibc/2.23/0004-MIPS-SPARC-more-fixes-to-the-vfork-aliases-in-libpth.patch @@ -0,0 +1,122 @@ +From b87c1ec3fa398646f042a68f0ce0f7d09c1348c7 Mon Sep 17 00:00:00 2001 +From: Aurelien Jarno +Date: Tue, 21 Jun 2016 23:59:37 +0200 +Subject: [PATCH] MIPS, SPARC: more fixes to the vfork aliases in libpthread.so + +Commit 43c29487 tried to fix the vfork aliases in libpthread.so on MIPS +and SPARC, but failed to do it correctly, introducing an ABI change. + +This patch does the remaining changes needed to align the MIPS and SPARC +vfork implementations with the other architectures. That way the the +alpha version of pt-vfork.S works correctly for MIPS and SPARC. The +changes for alpha were done in 82aab97c. + +Changelog: + * sysdeps/unix/sysv/linux/mips/vfork.S (__vfork): Rename into + __libc_vfork. + (__vfork) [IS_IN (libc)]: Remove alias. + (__libc_vfork) [IS_IN (libc)]: Define as an alias. + * sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S: Likewise. + +[Vincent: do not patch ChangeLog] + +Signed-off-by: Vicente Olivert Riera +--- + sysdeps/unix/sysv/linux/mips/vfork.S | 12 ++++++------ + sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S | 8 ++++---- + sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S | 8 ++++---- + 3 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/sysdeps/unix/sysv/linux/mips/vfork.S b/sysdeps/unix/sysv/linux/mips/vfork.S +index c0c0ce6..1867c86 100644 +--- a/sysdeps/unix/sysv/linux/mips/vfork.S ++++ b/sysdeps/unix/sysv/linux/mips/vfork.S +@@ -31,13 +31,13 @@ + LOCALSZ= 1 + FRAMESZ= (((NARGSAVE+LOCALSZ)*SZREG)+ALSZ)&ALMASK + GPOFF= FRAMESZ-(1*SZREG) +-NESTED(__vfork,FRAMESZ,sp) ++NESTED(__libc_vfork,FRAMESZ,sp) + #ifdef __PIC__ + SETUP_GP + #endif + PTR_SUBU sp, FRAMESZ + cfi_adjust_cfa_offset (FRAMESZ) +- SETUP_GP64_REG (a5, __vfork) ++ SETUP_GP64_REG (a5, __libc_vfork) + #ifdef __PIC__ + SAVE_GP (GPOFF) + #endif +@@ -104,10 +104,10 @@ L(error): + RESTORE_GP64_REG + j __syscall_error + #endif +- END(__vfork) ++ END(__libc_vfork) + + #if IS_IN (libc) +-libc_hidden_def(__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) ++libc_hidden_def (__vfork) + #endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +index 94f2c8d..0d0a3b5 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc32/vfork.S +@@ -21,7 +21,7 @@ + + .text + .globl __syscall_error +-ENTRY(__vfork) ++ENTRY(__libc_vfork) + ld [%g7 + PID], %o5 + cmp %o5, 0 + bne 1f +@@ -42,10 +42,10 @@ ENTRY(__vfork) + st %o5, [%g7 + PID] + 1: retl + nop +-END(__vfork) ++END(__libc_vfork) + + #if IS_IN (libc) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) + libc_hidden_def (__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) + #endif +diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +index a7479e9..0818eba 100644 +--- a/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S ++++ b/sysdeps/unix/sysv/linux/sparc/sparc64/vfork.S +@@ -21,7 +21,7 @@ + + .text + .globl __syscall_error +-ENTRY(__vfork) ++ENTRY(__libc_vfork) + ld [%g7 + PID], %o5 + sethi %hi(0x80000000), %o3 + cmp %o5, 0 +@@ -42,10 +42,10 @@ ENTRY(__vfork) + st %o5, [%g7 + PID] + 1: retl + nop +-END(__vfork) ++END(__libc_vfork) + + #if IS_IN (libc) ++weak_alias (__libc_vfork, vfork) ++strong_alias (__libc_vfork, __vfork) + libc_hidden_def (__vfork) +-weak_alias (__vfork, vfork) +-strong_alias (__vfork, __libc_vfork) + #endif +-- +2.7.3 + diff --git a/package/glibc/Config.in b/package/glibc/Config.in index f719d5cd1b..85aace6e29 100644 --- a/package/glibc/Config.in +++ b/package/glibc/Config.in @@ -1,28 +1,3 @@ -if BR2_TOOLCHAIN_BUILDROOT_EGLIBC - -config BR2_PACKAGE_EGLIBC - bool - default y - select BR2_PACKAGE_LINUX_HEADERS - -choice - prompt "eglibc version" - default BR2_EGLIBC_VERSION_2_18 - -config BR2_EGLIBC_VERSION_2_18 - bool "2.18-svnr23787" - # Build breakage - depends on !BR2_sparc - -config BR2_EGLIBC_VERSION_2_19 - bool "2.19-svnr25243" - # Build breakage - depends on !BR2_powerpc_SPE - -endchoice - -endif - if BR2_TOOLCHAIN_BUILDROOT_GLIBC config BR2_PACKAGE_GLIBC @@ -33,19 +8,24 @@ config BR2_PACKAGE_GLIBC choice prompt "glibc version" - default BR2_GLIBC_VERSION_2_22 + default BR2_GLIBC_VERSION_2_23 config BR2_GLIBC_VERSION_2_22 bool "2.22" - # No support for pthread barriers on < v9 ISA - depends on !BR2_sparc # Too old to build with gcc >= 6.x depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_6 config BR2_GLIBC_VERSION_2_23 bool "2.23" - # No support for pthread barriers on < v9 ISA - depends on !BR2_sparc + +config BR2_GLIBC_VERSION_2_24 + bool "2.24" + # Linux 3.2 or later kernel headers are required on all arches. + # See: https://sourceware.org/ml/libc-alpha/2016-08/msg00212.html + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + +comment "glibc-2.24 needs kernel headers >= 3.2" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 endchoice @@ -53,7 +33,6 @@ endif config BR2_GLIBC_VERSION_STRING string - default "2.18-svnr23787" if BR2_EGLIBC_VERSION_2_18 - default "2.19-svnr25243" if BR2_EGLIBC_VERSION_2_19 default "2.22" if BR2_GLIBC_VERSION_2_22 default "2.23" if BR2_GLIBC_VERSION_2_23 + default "2.24" if BR2_GLIBC_VERSION_2_24 diff --git a/package/glibc/glibc.hash b/package/glibc/glibc.hash index b04f214741..befe80c3c5 100644 --- a/package/glibc/glibc.hash +++ b/package/glibc/glibc.hash @@ -1,8 +1,4 @@ # Locally calculated after checking pgp signature (glibc) -# http://downloads.yoctoproject.org/releases/eglibc/*.{md5,sha1} (eglibc) -md5 b395b021422a027d89884992e91734fc eglibc-2.18-svnr23787.tar.bz2 -sha1 224d9e655e8f0ad04ffde47b97a11c64e2255b56 eglibc-2.18-svnr23787.tar.bz2 -md5 197836c2ba42fb146e971222647198dd eglibc-2.19-svnr25243.tar.bz2 -sha1 8013c1935b46fd50d2d1fbfad3b0af362b75fb28 eglibc-2.19-svnr25243.tar.bz2 sha256 eb731406903befef1d8f878a46be75ef862b9056ab0cde1626d08a7a05328948 glibc-2.22.tar.xz sha256 94efeb00e4603c8546209cefb3e1a50a5315c86fa9b078b6fad758e187ce13e9 glibc-2.23.tar.xz +sha256 99d4a3e8efd144d71488e478f62587578c0f4e1fa0b4eed47ee3d4975ebeb5d3 glibc-2.24.tar.xz diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index 2ae9cae861..c11f7cd867 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -1,20 +1,13 @@ ################################################################################ # -# glibc/eglibc +# glibc # ################################################################################ GLIBC_VERSION = $(call qstrip,$(BR2_GLIBC_VERSION_STRING)) - -ifeq ($(BR2_TOOLCHAIN_BUILDROOT_EGLIBC),y) -GLIBC_SITE = http://downloads.yoctoproject.org/releases/eglibc -GLIBC_SOURCE = eglibc-$(GLIBC_VERSION).tar.bz2 -GLIBC_SRC_SUBDIR = libc -else GLIBC_SITE = $(BR2_GNU_MIRROR)/libc GLIBC_SOURCE = glibc-$(GLIBC_VERSION).tar.xz GLIBC_SRC_SUBDIR = . -endif GLIBC_LICENSE = GPLv2+ (programs), LGPLv2.1+, BSD-3c, MIT (library) GLIBC_LICENSE_FILES = $(addprefix $(GLIBC_SRC_SUBDIR)/,COPYING COPYING.LIB LICENSES) @@ -22,7 +15,7 @@ GLIBC_LICENSE_FILES = $(addprefix $(GLIBC_SRC_SUBDIR)/,COPYING COPYING.LIB LICEN # glibc is part of the toolchain so disable the toolchain dependency GLIBC_ADD_TOOLCHAIN_DEPENDENCY = NO -# Before (e)glibc is configured, we must have the first stage +# Before glibc is configured, we must have the first stage # cross-compiler and the kernel headers GLIBC_DEPENDENCIES = host-gcc-initial linux-headers host-gawk @@ -71,7 +64,7 @@ endif # 2. We have to execute the configure script with bash and not sh. # # Note that as mentionned in -# http://patches.openembedded.org/patch/38849/, eglibc/glibc must be +# http://patches.openembedded.org/patch/38849/, glibc must be # built with -O2, so we pass our own CFLAGS and CXXFLAGS below. define GLIBC_CONFIGURE_CMDS mkdir -p $(@D)/build @@ -110,7 +103,7 @@ endef GLIBC_LIBS_LIB = \ ld*.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* libm.so.* \ libnsl.so.* libpthread.so.* libresolv.so.* librt.so.* libutil.so.* \ - libnss_files.so.* libnss_dns.so.* + libnss_files.so.* libnss_dns.so.* libmvec.so.* ifeq ($(BR2_PACKAGE_GDB),y) GLIBC_LIBS_LIB += libthread_db.so.* @@ -143,7 +136,7 @@ endef # highly unlikely. The failure mode, if it ever occurs, would be either # that a signalling NaN fails to raise an invalid operation exception or # (more likely) an ordinary NaN raises an invalid operation exception. -ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +ifeq ($(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) define GLIBC_FIX_MIPS_R6 $(SED) 's#10.0.0#4.0.0#' \ $(@D)/sysdeps/unix/sysv/linux/mips/configure \ diff --git a/package/glibmm/glibmm.hash b/package/glibmm/glibmm.hash index 82775e3080..fbcf855649 100644 --- a/package/glibmm/glibmm.hash +++ b/package/glibmm/glibmm.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/glibmm/2.48/glibmm-2.48.1.sha256sum -sha256 dc225f7d2f466479766332483ea78f82dc349d59399d30c00de50e5073157cdf glibmm-2.48.1.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/glibmm/2.50/glibmm-2.50.0.sha256sum +sha256 df726e3c6ef42b7621474b03b644a2e40ec4eef94a1c5a932c1e740a78f95e94 glibmm-2.50.0.tar.xz diff --git a/package/glibmm/glibmm.mk b/package/glibmm/glibmm.mk index 741b45e854..0daca5853f 100644 --- a/package/glibmm/glibmm.mk +++ b/package/glibmm/glibmm.mk @@ -4,8 +4,8 @@ # ################################################################################ -GLIBMM_VERSION_MAJOR = 2.48 -GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).1 +GLIBMM_VERSION_MAJOR = 2.50 +GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).0 GLIBMM_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) GLIBMM_LICENSE_FILES = COPYING COPYING.tools GLIBMM_SOURCE = glibmm-$(GLIBMM_VERSION).tar.xz diff --git a/package/glm/glm.hash b/package/glm/glm.hash new file mode 100644 index 0000000000..30bb923783 --- /dev/null +++ b/package/glm/glm.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 39c7ee0db54289f78350c7629ea2531664d71c6a494bbb86db48a86536de9ff2 glm-0.9.5.4.tar.gz diff --git a/package/glmark2/glmark2.hash b/package/glmark2/glmark2.hash new file mode 100644 index 0000000000..7868b37d9d --- /dev/null +++ b/package/glmark2/glmark2.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 421bdb87ed8c04a25f60816c7754d45e91a45136f5489df59d74001c159882b8 glmark2-fa71af2dfab711fac87b9504b6fc9862f44bf72a.tar.gz diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk index bd5b51a3f8..e35e36a4e6 100644 --- a/package/glmark2/glmark2.mk +++ b/package/glmark2/glmark2.mk @@ -4,11 +4,11 @@ # ################################################################################ -GLMARK2_VERSION = 499aa81a68fb4c8aac1c80f0d6a4cce05941c4cc +GLMARK2_VERSION = fa71af2dfab711fac87b9504b6fc9862f44bf72a GLMARK2_SITE = $(call github,glmark2,glmark2,$(GLMARK2_VERSION)) GLMARK2_LICENSE = GPLv3+ SGIv1 GLMARK2_LICENSE_FILES = COPYING COPYING.SGI -GLMARK2_DEPENDENCIES = host-pkgconf host-python jpeg libpng \ +GLMARK2_DEPENDENCIES = host-pkgconf jpeg libpng \ $(if $(BR2_PACKAGE_HAS_LIBEGL),libegl) \ $(if $(BR2_PACKAGE_HAS_LIBGLES),libgles) \ $(if $(BR2_PACKAGE_HAS_LIBGL),libgl) @@ -45,20 +45,4 @@ GLMARK2_CONF_OPTS += \ --prefix=/usr \ --with-flavors=$(subst $(space),$(comma),$(GLMARK2_FLAVORS)) -define GLMARK2_CONFIGURE_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - $(GLMARK2_CONF_ENV) \ - $(HOST_DIR)/usr/bin/python2 ./waf configure $(GLMARK2_CONF_OPTS) \ - ) -endef - -define GLMARK2_BUILD_CMDS - cd $(@D) && $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/python2 ./waf -endef - -define GLMARK2_INSTALL_TARGET_CMDS - cd $(@D) && $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/python2 ./waf install --destdir=$(TARGET_DIR) -endef - -$(eval $(generic-package)) +$(eval $(waf-package)) diff --git a/package/glog/Config.in b/package/glog/Config.in index f708758101..534997af49 100644 --- a/package/glog/Config.in +++ b/package/glog/Config.in @@ -3,14 +3,11 @@ config BR2_PACKAGE_GLOG depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - # build issues with this external toolchain - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX help C++ implementation of the Google logging module https://github.com/google/glog comment "glog needs a toolchain w/ C++, threads, dynamic library" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ BR2_STATIC_LIBS diff --git a/package/glog/glog.hash b/package/glog/glog.hash index dad15434d0..4548ebac2c 100644 --- a/package/glog/glog.hash +++ b/package/glog/glog.hash @@ -1,2 +1,2 @@ -# No hash for v0.3.4, comes from the github-helper: -none xxx glog-v0.3.4.tar.gz +# Locally computed +sha256 ce99d58dce74458f7656a68935d7a0c048fa7b4626566a71b7f4e545920ceb10 glog-v0.3.4.tar.gz diff --git a/package/gmock/gmock.mk b/package/gmock/gmock.mk index a0351d0ad6..4f04422a5d 100644 --- a/package/gmock/gmock.mk +++ b/package/gmock/gmock.mk @@ -39,6 +39,8 @@ define GMOCK_INSTALL_STAGING_CMDS $(INSTALL) -D -m 0755 $(@D)/lib/.libs/libgmock_main.a $(STAGING_DIR)/usr/lib/libgmock_main.a $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include/gmock/ cp -rp $(@D)/include/gmock/* $(STAGING_DIR)/usr/include/gmock/ + $(INSTALL) -D -m 0755 package/gmock/gmock.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/gmock.pc endef # Unzipping inside $(@D) and moving everything from the created subdirectory is diff --git a/package/gmock/gmock.pc b/package/gmock/gmock.pc new file mode 100644 index 0000000000..2f900682ef --- /dev/null +++ b/package/gmock/gmock.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${prefix}/lib/ +includedir=${prefix}/include + +Name: gmock +Description: Google C++ Mocking Framework +Version: 1.7.0 +Libs: -L${libdir} -lgmock +Libs.private: -lpthread +Cflags: -I${includedir} diff --git a/package/gmp/gmp.hash b/package/gmp/gmp.hash index e803623c00..f4793cd93c 100644 --- a/package/gmp/gmp.hash +++ b/package/gmp/gmp.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 68dadacce515b0f8a54f510edf07c1b636492bcdb8e8d54c56eb216225d16989 gmp-6.1.0.tar.xz +sha256 87b565e89a9a684fe4ebeeddb8399dce2599f9c9049854ca8c0dfbdea0e21912 gmp-6.1.2.tar.xz diff --git a/package/gmp/gmp.mk b/package/gmp/gmp.mk index af6958de81..33b5d542b4 100644 --- a/package/gmp/gmp.mk +++ b/package/gmp/gmp.mk @@ -4,16 +4,18 @@ # ################################################################################ -GMP_VERSION = 6.1.0 +GMP_VERSION = 6.1.2 GMP_SITE = $(BR2_GNU_MIRROR)/gmp GMP_SOURCE = gmp-$(GMP_VERSION).tar.xz GMP_INSTALL_STAGING = YES -GMP_LICENSE = LGPLv3+ -GMP_LICENSE_FILES = COPYING.LESSERv3 +GMP_LICENSE = LGPLv3+ or GPLv2+ +GMP_LICENSE_FILES = COPYING.LESSERv3 COPYINGv2 GMP_DEPENDENCIES = host-m4 +HOST_GMP_DEPENDENCIES = host-m4 -# GMP doesn't support assembly for r6 ISA yet -ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +# GMP doesn't support assembly for coldfire or mips r6 ISA yet +# Disable for ARM v7m since it has different asm constraints +ifeq ($(BR2_m68k_cf)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6)$(BR2_ARM_CPU_ARMV7M)$(BR2_arc),y) GMP_CONF_OPTS += --disable-assembly endif diff --git a/package/gmrender-resurrect/Config.in b/package/gmrender-resurrect/Config.in index 1a46225a37..631c407f5d 100644 --- a/package/gmrender-resurrect/Config.in +++ b/package/gmrender-resurrect/Config.in @@ -13,7 +13,7 @@ config BR2_PACKAGE_GMRENDER_RESURRECT https://github.com/hzeller/gmrender-resurrect -comment "gmrender-resurrect needs an (e)glibc or uClibc toolchain w/ wchar, threads" +comment "gmrender-resurrect needs a glibc or uClibc toolchain w/ wchar, threads" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ BR2_TOOLCHAIN_USES_MUSL diff --git a/package/gmrender-resurrect/gmrender-resurrect.hash b/package/gmrender-resurrect/gmrender-resurrect.hash index f41447a383..ba4561ea21 100644 --- a/package/gmrender-resurrect/gmrender-resurrect.hash +++ b/package/gmrender-resurrect/gmrender-resurrect.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 502129ecb097bf23ba011f18a8bf1923951ec2dc6da157f3b376383c5f99b623 gmrender-resurrect-aa3d02cf40321cf78a6ea9019e23a7f6cd091dee.tar.gz +sha256 8cd9eae3e6be75684c9b7c4d29702fcbbeead0ded1d4f7cf8fb65fe1dc718596 gmrender-resurrect-48caaa4f6c386fd1586126c801cd326f96d5fa5c.tar.gz diff --git a/package/gmrender-resurrect/gmrender-resurrect.mk b/package/gmrender-resurrect/gmrender-resurrect.mk index 18c6e01e6a..24608a1c08 100644 --- a/package/gmrender-resurrect/gmrender-resurrect.mk +++ b/package/gmrender-resurrect/gmrender-resurrect.mk @@ -4,7 +4,7 @@ # ################################################################################ -GMRENDER_RESURRECT_VERSION = aa3d02cf40321cf78a6ea9019e23a7f6cd091dee +GMRENDER_RESURRECT_VERSION = 48caaa4f6c386fd1586126c801cd326f96d5fa5c GMRENDER_RESURRECT_SITE = $(call github,hzeller,gmrender-resurrect,$(GMRENDER_RESURRECT_VERSION)) # Original distribution does not have default configure, # so we need to autoreconf: diff --git a/package/gnuchess/gnuchess.hash b/package/gnuchess/gnuchess.hash index 26342bccd3..064a845eda 100644 --- a/package/gnuchess/gnuchess.hash +++ b/package/gnuchess/gnuchess.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 17caab725539447bcb17a14b17905242cbf287087e53a6777524feb7bbaeed06 gnuchess-6.2.1.tar.gz +sha256 3c425c0264f253fc5cc2ba969abe667d77703c728770bd4b23c456cbe5e082ef gnuchess-6.2.4.tar.gz diff --git a/package/gnuchess/gnuchess.mk b/package/gnuchess/gnuchess.mk index 0555cb17b4..e066b01fe5 100644 --- a/package/gnuchess/gnuchess.mk +++ b/package/gnuchess/gnuchess.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUCHESS_VERSION = 6.2.1 +GNUCHESS_VERSION = 6.2.4 GNUCHESS_SITE = $(BR2_GNU_MIRROR)/chess GNUCHESS_LICENSE = GPLv2+ GNUCHESS_LICENSE_FILES = COPYING diff --git a/package/gnupg/gnupg.hash b/package/gnupg/gnupg.hash index f872d24d5c..8968b00d2b 100644 --- a/package/gnupg/gnupg.hash +++ b/package/gnupg/gnupg.hash @@ -1,2 +1,4 @@ -# From https://lists.gnupg.org/pipermail/gnupg-announce/2015q4/000382.html -sha1 cbc9d960e3d8488c32675019a79fbfbf8680387e gnupg-1.4.20.tar.bz2 +# From https://lists.gnu.org/archive/html/info-gnu/2016-08/msg00008.html +sha1 e3bdb585026f752ae91360f45c28e76e4a15d338 gnupg-1.4.21.tar.bz2 +# Locally computed +sha256 6b47a3100c857dcab3c60e6152e56a997f2c7862c1b8b2b25adf3884a1ae2276 gnupg-1.4.21.tar.bz2 diff --git a/package/gnupg/gnupg.mk b/package/gnupg/gnupg.mk index 8893a1cc68..182abd6709 100644 --- a/package/gnupg/gnupg.mk +++ b/package/gnupg/gnupg.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPG_VERSION = 1.4.20 +GNUPG_VERSION = 1.4.21 GNUPG_SOURCE = gnupg-$(GNUPG_VERSION).tar.bz2 GNUPG_SITE = ftp://ftp.gnupg.org/gcrypt/gnupg GNUPG_LICENSE = GPLv3+ @@ -13,6 +13,11 @@ GNUPG_DEPENDENCIES = zlib ncurses $(if $(BR2_PACKAGE_LIBICONV),libiconv) GNUPG_CONF_ENV = ac_cv_sys_symbol_underscore=no GNUPG_CONF_OPTS = --disable-rpath --enable-minimal --disable-regex +# gnupg doesn't support assembly for coldfire +ifeq ($(BR2_m68k_cf),y) +GNUPG_CONF_OPTS += --disable-asm +endif + ifeq ($(BR2_PACKAGE_BZIP2),y) GNUPG_CONF_OPTS += --enable-bzip2 GNUPG_DEPENDENCIES += bzip2 diff --git a/package/gnupg2/Config.in b/package/gnupg2/Config.in index e246fd79e3..ba2a6bcff5 100644 --- a/package/gnupg2/Config.in +++ b/package/gnupg2/Config.in @@ -12,6 +12,7 @@ config BR2_PACKAGE_GNUPG2 select BR2_PACKAGE_LIBPTHSEM select BR2_PACKAGE_LIBPTHSEM_COMPAT select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error depends on BR2_USE_MMU # libassuan depends on !BR2_STATIC_LIBS help diff --git a/package/gnuplot/0001-configure-add-without-demo-option.patch b/package/gnuplot/0001-configure-add-without-demo-option.patch index ccca4e3aa7..a9abfd06ba 100644 --- a/package/gnuplot/0001-configure-add-without-demo-option.patch +++ b/package/gnuplot/0001-configure-add-without-demo-option.patch @@ -3,42 +3,35 @@ Add options to enable/disable docs and demos Originally written by Anthony Viallard . -Signed-off-by: Thomas Petazzoni +[Vincent: adapt patch to 5.0.5 version] -Index: gnuplot-4.6.0/configure.in -=================================================================== ---- gnuplot-4.6.0.orig/configure.in 2012-03-08 05:34:42.000000000 +0100 -+++ gnuplot-4.6.0/configure.in 2013-01-07 11:50:03.003804463 +0100 -@@ -748,6 +748,16 @@ - AC_ARG_WITH(lisp-files,dnl - [ --without-lisp-files do not build emacs lisp files]) +Signed-off-by: Thomas Petazzoni +Signed-off-by: Vicente Olivert Riera + +diff -rup a/configure.in b/configure.in +--- a/configure.in 2016-09-07 05:14:29.000000000 +0100 ++++ b/configure.in 2016-12-01 12:09:31.487464774 +0000 +@@ -818,6 +818,16 @@ if test "$with_cwdrc" = yes; then + [ Define if you want to read .gnuplot from current directory (SECURITY RISK!).]) + fi -+dnl Whether we want to build the demo files -+dnl Does nothing here, is passed on to the demo subdir -+AC_ARG_ENABLE(demo,dnl -+[ --disable-demo do not build demo files]) -+ +dnl Whether we want to build the doc files +dnl Does nothing here, is passed on to the doc subdir +AC_ARG_ENABLE(doc,dnl +[ --disable-doc do not build doc files]) ++ ++dnl Whether we want to build the demo files ++dnl Does nothing here, is passed on to the demo subdir ++AC_ARG_ENABLE(demo,dnl ++[ --disable-demo do not build demo files]) + dnl Sort help/subtopic tables by row or column AC_ARG_WITH(row-help,dnl [ --with-row-help format help and subtopic tables by row (default) -@@ -1200,6 +1210,24 @@ - fi - AC_SUBST(LISPDIR) +@@ -1303,6 +1313,24 @@ fi + dnl No configuration option for this one yet + AC_DEFINE(MAX_PARALLEL_AXES,7, [Maximum number of parallel axes supported]) -+dnl build demo files -+if test "$enable_demo" != no; then -+ AC_CONFIG_SUBDIRS(demo) -+ DEMOSUBDIR=demo -+else -+ DEMOSUBDIR= -+fi -+AC_SUBST(DEMOSUBDIR) -+ +dnl build doc files +if test "$enable_doc" != no; then + AC_CONFIG_SUBDIRS(docs) @@ -47,20 +40,28 @@ Index: gnuplot-4.6.0/configure.in + DOCSUBDIR= +fi +AC_SUBST(DOCSUBDIR) ++ ++dnl build demo files ++if test "$enable_demo" != no; then ++ AC_CONFIG_SUBDIRS(demo) ++ DEMOSUBDIR=demo ++else ++ DEMOSUBDIR= ++fi ++AC_SUBST(DEMOSUBDIR) + dnl Substitute variables AC_SUBST(PACKAGE) AC_SUBST(VERSION_MAJOR) -Index: gnuplot-4.6.0/Makefile.am -=================================================================== ---- gnuplot-4.6.0.orig/Makefile.am 2013-01-04 14:07:02.239120935 +0100 -+++ gnuplot-4.6.0/Makefile.am 2013-01-07 11:51:12.034846363 +0100 +diff -rup a/Makefile.am b/Makefile.am +--- a/Makefile.am 2014-05-30 17:38:08.000000000 +0100 ++++ b/Makefile.am 2016-12-01 12:09:31.488464794 +0000 @@ -1,7 +1,7 @@ ## Process this file with automake to produce Makefile.in -*-Makefile-*- - AUTOMAKE_OPTIONS = foreign 1.2h + AUTOMAKE_OPTIONS = foreign -SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share +SUBDIRS = config m4 term src $(DOCSUBDIR) $(LISPDIR) man $(DEMOSUBDIR) tutorial share EXTRA_DIST = BUGS CodeStyle Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \ - Makefile.maint PATCHLEVEL PGPKEYS PORTING README README.1ST \ + Makefile.maint PATCHLEVEL PGPKEYS PORTING README RELEASE_NOTES \ diff --git a/package/gnuplot/gnuplot.hash b/package/gnuplot/gnuplot.hash index 37cc3e789a..a71d006594 100644 --- a/package/gnuplot/gnuplot.hash +++ b/package/gnuplot/gnuplot.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.6/ -md5 02a980b37ba181f7510816ed6440c9c1 gnuplot-4.6.6.tar.gz -sha1 012bd22b7be32da186b6bb015c0c6d876926c90b gnuplot-4.6.6.tar.gz +# From https://sourceforge.net/projects/gnuplot/files/gnuplot/5.0.5/ +md5 c5e96fca73afbee4f57cbc1bfce6b3b8 gnuplot-5.0.5.tar.gz +sha1 c35f55657fdc33217dd70bbf3148578563ecaad1 gnuplot-5.0.5.tar.gz diff --git a/package/gnuplot/gnuplot.mk b/package/gnuplot/gnuplot.mk index 4408ece5be..3e00eefef8 100644 --- a/package/gnuplot/gnuplot.mk +++ b/package/gnuplot/gnuplot.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPLOT_VERSION = 4.6.6 +GNUPLOT_VERSION = 5.0.5 GNUPLOT_SITE = http://downloads.sourceforge.net/project/gnuplot/gnuplot/$(GNUPLOT_VERSION) GNUPLOT_LICENSE = gnuplot license (open source) GNUPLOT_LICENSE_FILES = Copyright @@ -19,12 +19,16 @@ GNUPLOT_CONF_OPTS = \ --disable-demo \ --without-row-help \ --disable-history-file \ - --without-lisp-files \ --disable-wxwidgets \ --without-lua \ --without-latex \ --without-cairo +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +GNUPLOT_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mxgot" +endif + ifeq ($(BR2_PACKAGE_GD)$(BR2_PACKAGE_LIBPNG),yy) GNUPLOT_CONF_OPTS += --with-gd GNUPLOT_DEPENDENCIES += gd diff --git a/package/gnuradio/0003-fix_compilation_in_gcc-6.patch b/package/gnuradio/0003-fix_compilation_in_gcc-6.patch new file mode 100644 index 0000000000..f50af85681 --- /dev/null +++ b/package/gnuradio/0003-fix_compilation_in_gcc-6.patch @@ -0,0 +1,36 @@ +commit a1cf11937665392bcfa223a5095ff903eb44c69b +Author: Jaroslav #karvada +Date: Fri Feb 12 18:29:13 2016 +0100 + +Backport patch from +http://gnuradio.org/redmine/projects/gnuradio/repository/revisions/a1cf11937665392bcfa223a5095ff903eb44c69b + +Fix compilation in gcc-6 + +Signed-off-by: Jaroslav #karvada +Signed-off-by: Gwenhael Goavec-Merou +--- +diff --git a/gr-fec/include/gnuradio/fec/polar_decoder_common.h b/gr-fec/include/gnuradio/fec/polar_decoder_common.h +index b0ecb85..a39ee4f 100644 +--- a/gr-fec/include/gnuradio/fec/polar_decoder_common.h ++++ b/gr-fec/include/gnuradio/fec/polar_decoder_common.h +@@ -28,6 +28,10 @@ + #include + #include + ++#ifndef BOOST_CONSTEXPR_OR_CONST ++#define BOOST_CONSTEXPR_OR_CONST const ++#endif ++ + namespace gr { + namespace fec { + namespace code { +@@ -64,7 +68,7 @@ namespace gr { + bool set_frame_size(unsigned int frame_size){return false;}; + + private: +- static const float D_LLR_FACTOR = -2.19722458f; ++ static BOOST_CONSTEXPR_OR_CONST float D_LLR_FACTOR = -2.19722458f; + unsigned int d_frozen_bit_counter; + + protected: diff --git a/package/gnuradio/Config.in b/package/gnuradio/Config.in index 603532cf0c..8301afe8f2 100644 --- a/package/gnuradio/Config.in +++ b/package/gnuradio/Config.in @@ -1,6 +1,5 @@ comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library" depends on BR2_USE_MMU - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS @@ -11,7 +10,6 @@ config BR2_PACKAGE_GNURADIO depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU # use fork() depends on BR2_USE_WCHAR # boost - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS select BR2_PACKAGE_BOOST select BR2_PACKAGE_BOOST_DATE_TIME select BR2_PACKAGE_BOOST_FILESYSTEM @@ -32,14 +30,26 @@ config BR2_PACKAGE_GNURADIO if BR2_PACKAGE_GNURADIO +config BR2_PACKAGE_GNURADIO_AUDIO + bool "gr-audio" + depends on BR2_PACKAGE_ALSA_LIB || BR2_PACKAGE_PORTAUDIO + help + Add audio source/sink to GNU Radio + config BR2_PACKAGE_GNURADIO_BLOCKS bool "blocks support" help GNU Radio basic block library +config BR2_PACKAGE_GNURADIO_CTRLPORT + bool "ctrlport support" + help + GNU Radio ctrlport block + config BR2_PACKAGE_GNURADIO_FEC bool "gr-fec support" select BR2_PACKAGE_GNURADIO_BLOCKS + select BR2_PACKAGE_GSL help FEC signal processing blocks @@ -58,7 +68,7 @@ config BR2_PACKAGE_GNURADIO_UTILS help Misc python utilities -comment "gr-fft, -filter, -analog, -channels, -digital, -trellis, -pager depends fftw's single precision" +comment "gr-fft, -filter, -analog, -channels, -digital, -trellis, -pager, -qtgui depends fftw's single precision" depends on !BR2_PACKAGE_FFTW_PRECISION_SINGLE if BR2_PACKAGE_FFTW_PRECISION_SINGLE @@ -99,6 +109,16 @@ config BR2_PACKAGE_GNURADIO_PAGER help FLEX pager decoder implementation blocks +config BR2_PACKAGE_GNURADIO_QTGUI + bool "gr-qtgui" + depends on BR2_PACKAGE_PYTHON_PYQT + depends on BR2_PACKAGE_QWT + depends on BR2_PACKAGE_QT_STL + select BR2_PACKAGE_GNURADIO_FFT + select BR2_PACKAGE_GNURADIO_FILTER + help + GNU Radio Qt scopes + config BR2_PACKAGE_GNURADIO_TRELLIS bool "gr-trellis support" select BR2_PACKAGE_GNURADIO_DIGITAL diff --git a/package/gnuradio/gnuradio.mk b/package/gnuradio/gnuradio.mk index 46d1f4fab8..f1817f61c2 100644 --- a/package/gnuradio/gnuradio.mk +++ b/package/gnuradio/gnuradio.mk @@ -36,7 +36,7 @@ GNURADIO_INSTALL_STAGING = YES # CFLAGS to decide whether to build the NEON functions or not, and # wants to see the string 'armv7' in the CFLAGS. ifeq ($(BR2_ARM_CPU_ARMV7A)$(BR2_ARM_CPU_HAS_NEON),yy) -GNURADIO_CONF_OPTS += -DCMAKE_C_FLAGS="-march=armv7-a" +GNURADIO_CONF_OPTS += -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) -march=armv7-a" endif # As soon as -mfpu=neon is supported by the compiler, gnuradio will try @@ -52,6 +52,18 @@ else GNURADIO_CONF_OPTS += -DENABLE_GR_ANALOG=OFF endif +ifeq ($(BR2_PACKAGE_GNURADIO_AUDIO),y) +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +GNURADIO_DEPENDENCIES += alsa-lib +endif +ifeq ($(BR2_PACKAGE_PORTAUDIO),y) +GNURADIO_DEPENDENCIES += portaudio +endif +GNURADIO_CONF_OPTS += -DENABLE_GR_AUDIO=ON +else +GNURADIO_CONF_OPTS += -DENABLE_GR_AUDIO=OFF +endif + ifeq ($(BR2_PACKAGE_GNURADIO_BLOCKS),y) GNURADIO_CONF_OPTS += -DENABLE_GR_BLOCKS=ON else @@ -64,6 +76,12 @@ else GNURADIO_CONF_OPTS += -DENABLE_GR_CHANNELS=OFF endif +ifeq ($(BR2_PACKAGE_GNURADIO_CTRLPORT),y) +GNURADIO_CONF_OPTS += -DENABLE_GR_CTRLPORT=ON +else +GNURADIO_CONF_OPTS += -DENABLE_GR_CTRLPORT=OFF +endif + ifeq ($(BR2_PACKAGE_GNURADIO_DIGITAL),y) GNURADIO_CONF_OPTS += -DENABLE_GR_DIGITAL=ON else @@ -71,6 +89,7 @@ GNURADIO_CONF_OPTS += -DENABLE_GR_DIGITAL=OFF endif ifeq ($(BR2_PACKAGE_GNURADIO_FEC),y) +GNURADIO_DEPENDENCIES += gsl GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=ON else GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=OFF @@ -102,6 +121,13 @@ else GNURADIO_CONF_OPTS += -DENABLE_PAGER=OFF endif +ifeq ($(BR2_PACKAGE_GNURADIO_QTGUI),y) +GNURADIO_DEPENDENCIES += python-pyqt qwt +GNURADIO_CONF_OPTS += -DENABLE_GR_QTGUI=ON +else +GNURADIO_CONF_OPTS += -DENABLE_GR_QTGUI=OFF +endif + ifeq ($(BR2_PACKAGE_GNURADIO_TRELLIS),y) GNURADIO_CONF_OPTS += -DENABLE_GR_TRELLIS=ON else diff --git a/package/gnutls/Config.in b/package/gnutls/Config.in index 998e213c7d..cfb7cb3f3b 100644 --- a/package/gnutls/Config.in +++ b/package/gnutls/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_GNUTLS bool "gnutls" select BR2_PACKAGE_LIBTASN1 + select BR2_PACKAGE_LIBUNISTRING select BR2_PACKAGE_NETTLE select BR2_PACKAGE_PCRE depends on BR2_USE_WCHAR diff --git a/package/gnutls/gnutls.hash b/package/gnutls/gnutls.hash index 450b12bb46..121f75a702 100644 --- a/package/gnutls/gnutls.hash +++ b/package/gnutls/gnutls.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 70ef9c9f95822d363036c6e6b5479750e5b7fc34f50e750c3464a98ec65a9ab8 gnutls-3.4.11.tar.xz +sha256 0e97f243ae72b70307d684b84c7fe679385aa7a7a0e37e5be810193dcc17d4ff gnutls-3.5.8.tar.xz diff --git a/package/gnutls/gnutls.mk b/package/gnutls/gnutls.mk index 676476de8d..4fab812819 100644 --- a/package/gnutls/gnutls.mk +++ b/package/gnutls/gnutls.mk @@ -4,13 +4,13 @@ # ################################################################################ -GNUTLS_VERSION_MAJOR = 3.4 -GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).11 +GNUTLS_VERSION_MAJOR = 3.5 +GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).8 GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz GNUTLS_SITE = ftp://ftp.gnutls.org/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR) -GNUTLS_LICENSE = GPLv3+, LGPLv2.1+ -GNUTLS_LICENSE_FILES = COPYING COPYING.LESSER -GNUTLS_DEPENDENCIES = host-pkgconf libtasn1 nettle pcre +GNUTLS_LICENSE = LGPLv2.1+ (core library), GPLv3+ (gnutls-openssl library) +GNUTLS_LICENSE_FILES = doc/COPYING doc/COPYING.LESSER +GNUTLS_DEPENDENCIES = host-pkgconf libunistring libtasn1 nettle pcre GNUTLS_CONF_OPTS = \ --disable-doc \ --disable-guile \ @@ -19,6 +19,7 @@ GNUTLS_CONF_OPTS = \ --enable-local-libopts \ --enable-openssl-compatibility \ --with-libnettle-prefix=$(STAGING_DIR)/usr \ + --with-libunistring-prefix=$(STAGING_DIR)/usr \ --with-librt-prefix=$(STAGING_DIR) \ --without-tpm \ $(if $(BR2_PACKAGE_GNUTLS_TOOLS),--enable-tools,--disable-tools) diff --git a/package/go-bootstrap/go-bootstrap.hash b/package/go-bootstrap/go-bootstrap.hash index 1d0566a9de..8938266f2d 100644 --- a/package/go-bootstrap/go-bootstrap.hash +++ b/package/go-bootstrap/go-bootstrap.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 299a6fd8f8adfdce15bc06bde926e7b252ae8e24dd5b16b7d8791ed79e7b5e9b go1.4.2.src.tar.gz +sha256 9947fc705b0b841b5938c48b22dc33e9647ec0752bae66e50278df4f23f64959 go1.4.3.src.tar.gz diff --git a/package/go-bootstrap/go-bootstrap.mk b/package/go-bootstrap/go-bootstrap.mk index 47f5013232..f403f78475 100644 --- a/package/go-bootstrap/go-bootstrap.mk +++ b/package/go-bootstrap/go-bootstrap.mk @@ -4,7 +4,7 @@ # ################################################################################ -GO_BOOTSTRAP_VERSION = 1.4.2 +GO_BOOTSTRAP_VERSION = 1.4.3 GO_BOOTSTRAP_SITE = https://storage.googleapis.com/golang GO_BOOTSTRAP_SOURCE = go$(GO_BOOTSTRAP_VERSION).src.tar.gz @@ -19,11 +19,14 @@ HOST_GO_BOOTSTRAP_DEPENDENCIES = toolchain HOST_GO_BOOTSTRAP_ROOT = $(HOST_DIR)/usr/lib/go-$(GO_BOOTSTRAP_VERSION) +# The go build system is not compatable with ccache, so use HOSTCC_NOCCACHE +# here. See https://github.com/golang/go/issues/11685. HOST_GO_BOOTSTRAP_MAKE_ENV = \ GOOS=linux \ GOROOT_FINAL="$(HOST_GO_BOOTSTRAP_ROOT)" \ GOROOT="$(@D)" \ GOBIN="$(@D)/bin" \ + CC=$(HOSTCC_NOCCACHE) \ CGO_ENABLED=0 define HOST_GO_BOOTSTRAP_BUILD_CMDS diff --git a/package/go/Config.in.host b/package/go/Config.in.host index b57080399a..a210033efd 100644 --- a/package/go/Config.in.host +++ b/package/go/Config.in.host @@ -1,5 +1,17 @@ config BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS bool default y - depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_powerpc64 || BR2_powerpc64le + depends on (BR2_arm && BR2_TOOLCHAIN_SUPPORTS_PIE) || BR2_aarch64 \ + || BR2_i386 || BR2_x86_64 || BR2_powerpc64le \ + || BR2_mips64 || BR2_mips64el depends on !BR2_ARM_CPU_ARMV4 + # MIPS R6 support in Go has not yet been developed. + depends on !BR2_MIPS_CPU_MIPS64R6 + +config BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + bool + default y + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + # Go doesn't support CGO linking on MIPS64x platforms + # See: https://github.com/karalabe/xgo/issues/46 + depends on !BR2_mips64 && !BR2_mips64el diff --git a/package/go/go.hash b/package/go/go.hash index 6826891b26..e50f0041f1 100644 --- a/package/go/go.hash +++ b/package/go/go.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 787b0b750d037016a30c6ed05a8a70a91b2e9db4bd9b1a2453aa502a63f1bccc go1.6.2.src.tar.gz +sha256 4c189111e9ba651a2bb3ee868aa881fab36b2f2da3409e80885ca758a6b614cc go1.7.4.src.tar.gz diff --git a/package/go/go.mk b/package/go/go.mk index a1d6cf9df2..bd308902b2 100644 --- a/package/go/go.mk +++ b/package/go/go.mk @@ -4,7 +4,7 @@ # ################################################################################ -GO_VERSION = 1.6.2 +GO_VERSION = 1.7.4 GO_SITE = https://storage.googleapis.com/golang GO_SOURCE = go$(GO_VERSION).src.tar.gz @@ -30,6 +30,10 @@ else ifeq ($(BR2_powerpc64),y) GO_GOARCH = ppc64 else ifeq ($(BR2_powerpc64le),y) GO_GOARCH = ppc64le +else ifeq ($(BR2_mips64),y) +GO_GOARCH = mips64 +else ifeq ($(BR2_mips64el),y) +GO_GOARCH = mips64le endif HOST_GO_DEPENDENCIES = host-go-bootstrap diff --git a/package/google-breakpad/Config.in b/package/google-breakpad/Config.in index a95bf63732..e0e91068be 100644 --- a/package/google-breakpad/Config.in +++ b/package/google-breakpad/Config.in @@ -6,8 +6,13 @@ config BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS config BR2_PACKAGE_GOOGLE_BREAKPAD bool "google-breakpad" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_HOST_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on (BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC) depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS + select BR2_PACKAGE_LINUX_SYSCALL_SUPPORT help Google-Breakpad is a library and tool suite that allows you to distribute an application to users with compiler-provided @@ -27,8 +32,11 @@ config BR2_PACKAGE_GOOGLE_BREAKPAD needed to extract the debugging symbols from target binaries. - http://code.google.com/p/google-breakpad/ + https://chromium.googlesource.com/breakpad/breakpad -comment "google-breakpad requires an (e)glibc toolchain w/ C++ enabled" +comment "google-breakpad requires a glibc or uClibc toolchain w/ wchar, thread, C++, gcc >= 4.8" depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HAS_THREADS || \ + !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC) || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_HOST_GCC_AT_LEAST_4_8 diff --git a/package/google-breakpad/google-breakpad.hash b/package/google-breakpad/google-breakpad.hash new file mode 100644 index 0000000000..79e8d08b28 --- /dev/null +++ b/package/google-breakpad/google-breakpad.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6f444233e88957c30cc2d5497ee9d72d104122ce2c25a7ef7f6be3af1b3f7353 google-breakpad-7515ab13768c7edc09f0f2ec2354dc6c928239a6.tar.gz diff --git a/package/google-breakpad/google-breakpad.mk b/package/google-breakpad/google-breakpad.mk index 1bbe4dab72..7a11c72cf5 100644 --- a/package/google-breakpad/google-breakpad.mk +++ b/package/google-breakpad/google-breakpad.mk @@ -4,24 +4,39 @@ # ################################################################################ -GOOGLE_BREAKPAD_VERSION = 1373 -GOOGLE_BREAKPAD_SITE = http://google-breakpad.googlecode.com/svn/trunk -GOOGLE_BREAKPAD_SITE_METHOD = svn +GOOGLE_BREAKPAD_VERSION = 7515ab13768c7edc09f0f2ec2354dc6c928239a6 +GOOGLE_BREAKPAD_SITE = https://chromium.googlesource.com/breakpad/breakpad +GOOGLE_BREAKPAD_SITE_METHOD = git GOOGLE_BREAKPAD_CONF_OPTS = --disable-processor --disable-tools # Only a static library is installed GOOGLE_BREAKPAD_INSTALL_TARGET = NO GOOGLE_BREAKPAD_INSTALL_STAGING = YES GOOGLE_BREAKPAD_LICENSE = BSD-3c GOOGLE_BREAKPAD_LICENSE_FILES = LICENSE +GOOGLE_BREAKPAD_DEPENDENCIES = host-google-breakpad linux-syscall-support + +HOST_GOOGLE_BREAKPAD_DEPENDENCIES = host-linux-syscall-support + +# Avoid using depot-tools to download this file. +define HOST_GOOGLE_BREAKPAD_LSS + $(INSTALL) -D -m 0644 \ + $(HOST_DIR)/usr/include/linux_syscall_support.h \ + $(@D)/src/third_party/lss/linux_syscall_support.h +endef +HOST_GOOGLE_BREAKPAD_POST_EXTRACT_HOOKS += HOST_GOOGLE_BREAKPAD_LSS + +define GOOGLE_BREAKPAD_LSS + $(INSTALL) -D -m 0644 \ + $(STAGING_DIR)/usr/include/linux_syscall_support.h \ + $(@D)/src/third_party/lss/linux_syscall_support.h +endef +GOOGLE_BREAKPAD_POST_EXTRACT_HOOKS += GOOGLE_BREAKPAD_LSS -ifeq ($(BR2_PACKAGE_GOOGLE_BREAKPAD),y) -GOOGLE_BREAKPAD_DEPENDENCIES = host-google-breakpad define GOOGLE_BREAKPAD_EXTRACT_SYMBOLS $(EXTRA_ENV) package/google-breakpad/gen-syms.sh $(STAGING_DIR) \ $(TARGET_DIR) $(call qstrip,$(BR2_GOOGLE_BREAKPAD_INCLUDE_FILES)) endef -TARGET_FINALIZE_HOOKS += GOOGLE_BREAKPAD_EXTRACT_SYMBOLS -endif +GOOGLE_BREAKPAD_TARGET_FINALIZE_HOOKS += GOOGLE_BREAKPAD_EXTRACT_SYMBOLS $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/google-material-design-icons/google-material-design-icons.hash b/package/google-material-design-icons/google-material-design-icons.hash index 7bcfcb5439..9a66336494 100644 --- a/package/google-material-design-icons/google-material-design-icons.hash +++ b/package/google-material-design-icons/google-material-design-icons.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 87d7c8515207edecd3438a96bdf5129df91e0b29261d5f8c52f672957c11af65 2.0.0.tar.gz +sha256 769547061a51f81623bf5174767c08fc587fd6946339592fbd6cd0dd45f56b4c 2.2.3.tar.gz diff --git a/package/google-material-design-icons/google-material-design-icons.mk b/package/google-material-design-icons/google-material-design-icons.mk index 3228d1358d..d410a45e30 100644 --- a/package/google-material-design-icons/google-material-design-icons.mk +++ b/package/google-material-design-icons/google-material-design-icons.mk @@ -4,7 +4,7 @@ # ################################################################################ -GOOGLE_MATERIAL_DESIGN_ICONS_VERSION = 2.0.0 +GOOGLE_MATERIAL_DESIGN_ICONS_VERSION = 2.2.3 GOOGLE_MATERIAL_DESIGN_ICONS_SOURCE = \ $(GOOGLE_MATERIAL_DESIGN_ICONS_VERSION).tar.gz GOOGLE_MATERIAL_DESIGN_ICONS_SITE = \ @@ -14,7 +14,7 @@ GOOGLE_MATERIAL_DESIGN_ICONS_LICENSE_FILES = LICENSE GOOGLE_MATERIAL_DESIGN_ICONS_LIST = \ action alert av communication content device editor file \ - hardware image maps navigation notification social toggle + hardware image maps navigation notification places social toggle ifneq ($(BR2_PACKAGE_GOOGLE_MATERIAL_DESIGN_ICONS_TYPE_PNG)$(BR2_PACKAGE_GOOGLE_MATERIAL_DESIGN_ICONS_TYPE_SVG),) define GOOGLE_MATERIAL_DESIGN_ICONS_INSTALL_ICONS_IMAGES diff --git a/package/gpm/gpm.mk b/package/gpm/gpm.mk index 6d3b5d2dc2..ed4c1fd305 100644 --- a/package/gpm/gpm.mk +++ b/package/gpm/gpm.mk @@ -15,8 +15,9 @@ GPM_DEPENDENCIES = host-bison # if not already installed in staging dir, gpm Makefile may fail to find some # of the headers needed to generate build dependencies, the first time it is # built. CPPFLAGS is used to pass the right include path to dependency rules. -GPM_CONF_ENV = CPPFLAGS="$(TARGET_CPPFLAGS) -I$(@D)/src/headers/" \ - ac_cv_path_emacs=no +GPM_CONF_ENV = \ + CPPFLAGS="$(TARGET_CPPFLAGS) -I$(@D)/src/headers/" \ + ac_cv_path_emacs=no # For some reason, Microblaze gcc does not define __ELF__, which gpm # configure script uses to determine whether the architecture uses ELF diff --git a/package/gpsd/Config.in b/package/gpsd/Config.in index b4008ebd83..876ab9b03a 100644 --- a/package/gpsd/Config.in +++ b/package/gpsd/Config.in @@ -2,7 +2,7 @@ comment "gpsd needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS -config BR2_PACKAGE_GPSD +menuconfig BR2_PACKAGE_GPSD bool "gpsd" # Uses fork() depends on BR2_USE_MMU @@ -25,7 +25,7 @@ config BR2_PACKAGE_GPSD_DEVICES string "Where to look for GPSes" default "/dev/ttyS1" -menu "Features" +comment "Features" config BR2_PACKAGE_GPSD_CLIENT_DEBUG bool "client debugging support" @@ -50,36 +50,41 @@ config BR2_PACKAGE_GPSD_PPS config BR2_PACKAGE_GPSD_USER bool "GPSD privilege revocation user" + config BR2_PACKAGE_GPSD_USER_VALUE - string "" + string "user to run as" default "nobody" depends on BR2_PACKAGE_GPSD_USER config BR2_PACKAGE_GPSD_GROUP bool "GPSD privilege revocation group" + config BR2_PACKAGE_GPSD_GROUP_VALUE - string "" + string "group to run as" default "nobody" depends on BR2_PACKAGE_GPSD_GROUP config BR2_PACKAGE_GPSD_FIXED_PORT_SPEED bool "compile with fixed serial port speed" + config BR2_PACKAGE_GPSD_FIXED_PORT_SPEED_VALUE - string "" + int "serial port speed" default "9600" depends on BR2_PACKAGE_GPSD_FIXED_PORT_SPEED config BR2_PACKAGE_GPSD_MAX_CLIENT bool "compile with limited maximum clients" + config BR2_PACKAGE_GPSD_MAX_CLIENT_VALUE - string "compile with limited maximum clients" + int "maximum number of clients" default "10" depends on BR2_PACKAGE_GPSD_MAX_CLIENT config BR2_PACKAGE_GPSD_MAX_DEV bool "compile with maximum allowed devices" + config BR2_PACKAGE_GPSD_MAX_DEV_VALUE - string "compile with maximum allowed devices" + int "maximum allowed devices" default "2" depends on BR2_PACKAGE_GPSD_MAX_DEV @@ -94,9 +99,7 @@ config BR2_PACKAGE_GPSD_CONTROLSEND config BR2_PACKAGE_GPSD_SQUELCH bool "squelch gpsd_report and gpsd_hexdump to save cpu" -endmenu - -menu "Protocols" +comment "Protocols" config BR2_PACKAGE_GPSD_AIVDM bool "Aivdm" @@ -231,6 +234,4 @@ config BR2_PACKAGE_GPSD_UBX help uBlox UBX binary support -endmenu - endif diff --git a/package/gpsd/gpsd.mk b/package/gpsd/gpsd.mk index 4fe5d18b1a..73067d3b15 100644 --- a/package/gpsd/gpsd.mk +++ b/package/gpsd/gpsd.mk @@ -33,6 +33,8 @@ endif # Build libgpsmm if we've got C++ ifeq ($(BR2_INSTALL_LIBSTDCPP),y) GPSD_LDFLAGS += -lstdc++ +GPSD_CFLAGS += -std=gnu++98 +GPSD_CXXFLAGS += -std=gnu++98 GPSD_SCONS_OPTS += libgpsmm=yes else GPSD_SCONS_OPTS += libgpsmm=no diff --git a/package/gptfdisk/Config.in b/package/gptfdisk/Config.in index befdf77715..22dc4014ac 100644 --- a/package/gptfdisk/Config.in +++ b/package/gptfdisk/Config.in @@ -1,10 +1,9 @@ -comment "gptfdisk needs a toolchain w/ wchar, C++" - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR) +comment "gptfdisk needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP config BR2_PACKAGE_GPTFDISK bool "gptfdisk" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # util-linux select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_GPTFDISK_GDISK if \ @@ -38,6 +37,7 @@ config BR2_PACKAGE_GPTFDISK_CGDISK bool "ncurses cgdisk" select BR2_PACKAGE_NCURSES select BR2_PACKAGE_NCURSES_WCHAR # needed because of UTF-16 + depends on BR2_USE_WCHAR # ncurses wchar depends on !(BR2_bfin && BR2_BINFMT_FLAT) # ncurses wchar support help Install the ncurses-based GUID partition table (GPT) diff --git a/package/gr-osmosdr/gr-osmosdr.hash b/package/gr-osmosdr/gr-osmosdr.hash index ce6e84a279..337f3ef86b 100644 --- a/package/gr-osmosdr/gr-osmosdr.hash +++ b/package/gr-osmosdr/gr-osmosdr.hash @@ -1,2 +1,2 @@ # Locally calculated: -sha256 d40462dddc0ebd769b2df3c6ad6fe82c9e9a4a73f7b3c5ce53efbce724906290 gr-osmosdr-a45968f3381f33b86ca344bb76bd62c131d98d93.tar.gz +sha256 274960cd32bc8a7216eeed8967bf078efd6123332808b405ec42c24a7e426b7c gr-osmosdr-164a09fc11cec2d8b15b38e8b512fa542d6cecc7.tar.gz diff --git a/package/gr-osmosdr/gr-osmosdr.mk b/package/gr-osmosdr/gr-osmosdr.mk index 6a0cc267cf..d7c3d624c4 100644 --- a/package/gr-osmosdr/gr-osmosdr.mk +++ b/package/gr-osmosdr/gr-osmosdr.mk @@ -4,7 +4,7 @@ # ################################################################################ -GR_OSMOSDR_VERSION = a45968f3381f33b86ca344bb76bd62c131d98d93 +GR_OSMOSDR_VERSION = 164a09fc11cec2d8b15b38e8b512fa542d6cecc7 GR_OSMOSDR_SITE = $(call github,osmocom,gr-osmosdr,$(GR_OSMOSDR_VERSION)) GR_OSMOSDR_LICENSE = GPLv3+ GR_OSMOSDR_LICENSE_FILES = COPYING diff --git a/package/granite/granite.hash b/package/granite/granite.hash index 5ce95e6278..3c89685155 100644 --- a/package/granite/granite.hash +++ b/package/granite/granite.hash @@ -1,4 +1,4 @@ -# From https://launchpad.net/granite/0.3/0.3.1/+download/granite-0.3.1.tar.xz/+md5 -md5 4297d4fcec8cfe2e08b460a45c779bbe granite-0.3.1.tar.xz +# From https://launchpad.net/granite/0.4/0.4.0.1/+download/granite-0.4.0.1.tar.xz/+md5 +md5 db41150ca6e77162392362686e848086 granite-0.3.1.tar.xz # Calculated based on the hash above -sha256 8ec1d61f9aba75f1b3a745e721288b0dfb34cb11d1307be80cef7b0571c2dec6 granite-0.3.1.tar.xz +sha256 95a142a8befeedc35a089d638e759b657905508dc3007036d6c1fa3efe94c4dd granite-0.4.0.1.tar.xz diff --git a/package/granite/granite.mk b/package/granite/granite.mk index dd5a09e5ff..3faedf9cd0 100644 --- a/package/granite/granite.mk +++ b/package/granite/granite.mk @@ -4,8 +4,8 @@ # ################################################################################ -GRANITE_VERSION_MAJOR = 0.3 -GRANITE_VERSION = $(GRANITE_VERSION_MAJOR).1 +GRANITE_VERSION_MAJOR = 0.4 +GRANITE_VERSION = $(GRANITE_VERSION_MAJOR).0.1 GRANITE_SITE = https://launchpad.net/granite/$(GRANITE_VERSION_MAJOR)/$(GRANITE_VERSION)/+download GRANITE_SOURCE = granite-$(GRANITE_VERSION).tar.xz GRANITE_DEPENDENCIES = host-pkgconf host-vala libgee libglib2 libgtk3 diff --git a/package/grantlee/Config.in b/package/grantlee/Config.in index 7895c7ed80..779306bc2e 100644 --- a/package/grantlee/Config.in +++ b/package/grantlee/Config.in @@ -1,24 +1,9 @@ config BR2_PACKAGE_GRANTLEE bool "grantlee" - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # Qt Script - depends on (BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT && BR2_PACKAGE_QT) || \ - (BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5) - depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Qt GUI module - # https://sourceware.org/bugzilla/show_bug.cgi?id=20173 - depends on !BR2_microblaze && !BR2_nios2 - select BR2_PACKAGE_QT_STL if BR2_PACKAGE_QT - select BR2_PACKAGE_QT_SCRIPT if BR2_PACKAGE_QT - select BR2_PACKAGE_QT_GUI_MODULE if BR2_PACKAGE_QT - select BR2_PACKAGE_QT5SCRIPT if BR2_PACKAGE_QT5 - select BR2_PACKAGE_QT5BASE_GUI if BR2_PACKAGE_QT5 + depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5 + select BR2_PACKAGE_QT5SCRIPT + select BR2_PACKAGE_QT5BASE_GUI help Qt implementation of the Django template framework http://www.grantlee.org - -comment "grantlee needs a toolchain with NPTL not affected by Binutils bug 19405" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on !BR2_microblaze && !BR2_nios2 - depends on (BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT && BR2_PACKAGE_QT) || \ - (BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5) || \ - BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 diff --git a/package/grantlee/grantlee.hash b/package/grantlee/grantlee.hash index 7f02bb3274..cdff778041 100644 --- a/package/grantlee/grantlee.hash +++ b/package/grantlee/grantlee.hash @@ -1,3 +1,2 @@ # Locally calculated after checking pgp signature -sha256 191809bf4c9b7ef877af0fd29345061c2372edfb4506aa7d5df5c71a570fa0ac grantlee-0.5.1.tar.gz -sha256 eaf22ba92e53b8eb5dd8bca045fe81b734d3445445ed9e0c1af2a0a7c375b161 grantlee-5.0.0.tar.gz +sha256 ea2e402466c74bb533eee2c7252209ec61cd93a5d236fecd625b4a0eb13a1478 grantlee-5.1.0.tar.gz diff --git a/package/grantlee/grantlee.mk b/package/grantlee/grantlee.mk index a300106361..f921d7b941 100644 --- a/package/grantlee/grantlee.mk +++ b/package/grantlee/grantlee.mk @@ -3,21 +3,11 @@ # grantlee # ################################################################################ -# qt4 support dropped after 0.5.1, so we use the older version for qt4 -ifeq ($(BR2_PACKAGE_QT),y) -GRANTLEE_VERSION = 0.5.1 -else ifeq ($(BR2_PACKAGE_QT5),y) -GRANTLEE_VERSION = 5.0.0 -endif +GRANTLEE_VERSION = 5.1.0 GRANTLEE_SITE = http://downloads.grantlee.org GRANTLEE_INSTALL_STAGING = YES GRANTLEE_LICENSE = LGPLv2.1+ GRANTLEE_LICENSE_FILES = COPYING.LIB - -ifeq ($(BR2_PACKAGE_QT),y) -GRANTLEE_DEPENDENCIES = qt -else ifeq ($(BR2_PACKAGE_QT5),y) -GRANTLEE_DEPENDENCIES += qt5base qt5script -endif +GRANTLEE_DEPENDENCIES = qt5base qt5script $(eval $(cmake-package)) diff --git a/package/graphite2/graphite2.hash b/package/graphite2/graphite2.hash index d22b67c8a5..86be69e178 100644 --- a/package/graphite2/graphite2.hash +++ b/package/graphite2/graphite2.hash @@ -1,3 +1,3 @@ # From http://sourceforge.net/projects/silgraphite/files/graphite2 -md5 236d2cb1f831fe33083112afbb555f0e graphite2-1.3.8.tgz -sha1 0c802628dacf3bfa2c1654d7d72b76e20e1adc97 graphite2-1.3.8.tgz +md5 17e6a3b1a88c100c9e3fc0763c85d269 graphite2-1.3.9.tgz +sha1 0693e9eef87edf1792db247dd38794211666a1b9 graphite2-1.3.9.tgz diff --git a/package/graphite2/graphite2.mk b/package/graphite2/graphite2.mk index d066a1c69a..5f6848fa87 100644 --- a/package/graphite2/graphite2.mk +++ b/package/graphite2/graphite2.mk @@ -4,7 +4,7 @@ # ################################################################################ -GRAPHITE2_VERSION = 1.3.8 +GRAPHITE2_VERSION = 1.3.9 GRAPHITE2_SOURCE = graphite2-$(GRAPHITE2_VERSION).tgz GRAPHITE2_SITE = http://downloads.sourceforge.net/project/silgraphite/graphite2 GRAPHITE2_INSTALL_STAGING = YES diff --git a/package/grep/Config.in b/package/grep/Config.in index 2cd3406165..64276506f0 100644 --- a/package/grep/Config.in +++ b/package/grep/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_GREP bool "grep" depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help The GNU regular expression matcher. @@ -9,3 +10,4 @@ config BR2_PACKAGE_GREP comment "grep needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/grep/grep.hash b/package/grep/grep.hash index 409940aa25..326737a2fd 100644 --- a/package/grep/grep.hash +++ b/package/grep/grep.hash @@ -1,2 +1,2 @@ # Locally calculated after checking signature -sha256 e21e83bac50450e0d0d61a42c154ee0dceaacdbf4f604ef6e79071cb8e596830 grep-2.25.tar.xz +sha256 ad4cc44d23074a1c3a8baae8fbafff2a8c60f38a9a6108f985eef6fbee6dcaeb grep-2.27.tar.xz diff --git a/package/grep/grep.mk b/package/grep/grep.mk index f87e838299..7615f30bac 100644 --- a/package/grep/grep.mk +++ b/package/grep/grep.mk @@ -4,7 +4,7 @@ # ################################################################################ -GREP_VERSION = 2.25 +GREP_VERSION = 2.27 GREP_SITE = $(BR2_GNU_MIRROR)/grep GREP_SOURCE = grep-$(GREP_VERSION).tar.xz GREP_LICENSE = GPLv3+ diff --git a/package/gsettings-desktop-schemas/Config.in b/package/gsettings-desktop-schemas/Config.in new file mode 100644 index 0000000000..0dfffc3850 --- /dev/null +++ b/package/gsettings-desktop-schemas/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_GSETTINGS_DESKTOP_SCHEMAS + bool "gsettings-desktop-schemas" + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + select BR2_PACKAGE_LIBGLIB2 + help + gsettings-desktop-schemas contains a collection of GSettings + schemas for settings shared by various components of a + desktop. + + https://github.com/GNOME/gsettings-desktop-schemas + +comment "gsettings-desktop-schemas needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gsettings-desktop-schemas/gsettings-desktop-schemas.hash b/package/gsettings-desktop-schemas/gsettings-desktop-schemas.hash new file mode 100644 index 0000000000..05ec7a418f --- /dev/null +++ b/package/gsettings-desktop-schemas/gsettings-desktop-schemas.hash @@ -0,0 +1,2 @@ +# From http://ftp.acc.umu.se/pub/gnome/sources/gsettings-desktop-schemas/3.22/gsettings-desktop-schemas-3.22.0.sha256sum +sha256 0f06c7ba34c3a99e4d58b10889496133c9aaad6698ea2d8405d481c7f1a7eae1 gsettings-desktop-schemas-3.22.0.tar.xz diff --git a/package/gsettings-desktop-schemas/gsettings-desktop-schemas.mk b/package/gsettings-desktop-schemas/gsettings-desktop-schemas.mk new file mode 100644 index 0000000000..7fa61817c1 --- /dev/null +++ b/package/gsettings-desktop-schemas/gsettings-desktop-schemas.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# gsettings-desktop-schemas +# +################################################################################ + +GSETTINGS_DESKTOP_SCHEMAS_VERSION_MAJOR = 3.22 +GSETTINGS_DESKTOP_SCHEMAS_VERSION = $(GSETTINGS_DESKTOP_SCHEMAS_VERSION_MAJOR).0 +GSETTINGS_DESKTOP_SCHEMAS_SOURCE = gsettings-desktop-schemas-$(GSETTINGS_DESKTOP_SCHEMAS_VERSION).tar.xz +GSETTINGS_DESKTOP_SCHEMAS_SITE = http://ftp.gnome.org/pub/gnome/sources/gsettings-desktop-schemas/$(GSETTINGS_DESKTOP_SCHEMAS_VERSION_MAJOR) +GSETTINGS_DESKTOP_SCHEMAS_INSTALL_STAGING = YES +GSETTINGS_DESKTOP_SCHEMAS_DEPENDENCIES = host-intltool host-pkgconf libglib2 +GSETTINGS_DESKTOP_SCHEMAS_LICENSE = LGPLv2.1+ +GSETTINGS_DESKTOP_SCHEMAS_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/gssdp/gssdp.hash b/package/gssdp/gssdp.hash index fe7d9815d3..b646d185ba 100644 --- a/package/gssdp/gssdp.hash +++ b/package/gssdp/gssdp.hash @@ -1,2 +1,2 @@ -# Hash from: http://ftp.gnome.org/pub/gnome/sources/gssdp/0.14/gssdp-0.14.14.sha256sum: -sha256 685718755b5b8d24aaeadda44047e515443784712891fc53879ab9a4865b48d6 gssdp-0.14.14.tar.xz +# Hash from: http://ftp.gnome.org/pub/gnome/sources/gssdp/1.0/gssdp-1.0.1.sha256sum: +sha256 601d67f40bc28c067742b7c46f3018da96b364fd3e83f30ddac6e190e323d2e1 gssdp-1.0.1.tar.xz diff --git a/package/gssdp/gssdp.mk b/package/gssdp/gssdp.mk index 6ba125253b..fa44a2ca9c 100644 --- a/package/gssdp/gssdp.mk +++ b/package/gssdp/gssdp.mk @@ -4,8 +4,8 @@ # ################################################################################ -GSSDP_VERSION_MAJOR = 0.14 -GSSDP_VERSION = $(GSSDP_VERSION_MAJOR).14 +GSSDP_VERSION_MAJOR = 1.0 +GSSDP_VERSION = $(GSSDP_VERSION_MAJOR).1 GSSDP_SOURCE = gssdp-$(GSSDP_VERSION).tar.xz GSSDP_SITE = http://ftp.gnome.org/pub/gnome/sources/gssdp/$(GSSDP_VERSION_MAJOR) GSSDP_LICENSE = LGPLv2+ diff --git a/package/gstreamer/gst-ffmpeg/Config.in b/package/gstreamer/gst-ffmpeg/Config.in index f3d4b3e568..2164ea2e05 100644 --- a/package/gstreamer/gst-ffmpeg/Config.in +++ b/package/gstreamer/gst-ffmpeg/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_GST_FFMPEG bool "gst-ffmpeg" # Unsupported for MIPS R6. It bundles a version of libav which # doesn't have support for MIPS R6. - depends on !BR2_mips_32r6 && !BR2_mips_64r6 + depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6 # triggers https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65151 on sh depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 || !BR2_sh select BR2_PACKAGE_GST_PLUGINS_BASE diff --git a/package/gstreamer/gst-fsl-plugins/Config.in b/package/gstreamer/gst-fsl-plugins/Config.in index 0407dc5251..8921aa33ba 100644 --- a/package/gstreamer/gst-fsl-plugins/Config.in +++ b/package/gstreamer/gst-fsl-plugins/Config.in @@ -1,7 +1,7 @@ comment "gst-fsl-plugins needs an imx-specific Linux kernel to be built" depends on BR2_arm && !BR2_LINUX_KERNEL -comment "gst-fsl-plugins needs an (e)glibc toolchain" +comment "gst-fsl-plugins needs a glibc toolchain" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC @@ -9,12 +9,12 @@ config BR2_PACKAGE_GST_FSL_PLUGINS bool "gst-fsl-plugins" depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX - depends on BR2_TOOLCHAIN_USES_GLIBC # libfslcodec + depends on BR2_TOOLCHAIN_USES_GLIBC # imx-codec select BR2_PACKAGE_GST_PLUGINS_BASE - select BR2_PACKAGE_LIBFSLVPUWRAP if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU + select BR2_PACKAGE_IMX_VPUWRAP if BR2_PACKAGE_FREESCALE_IMX_HAS_VPU select BR2_PACKAGE_IMX_LIB - select BR2_PACKAGE_LIBFSLPARSER - select BR2_PACKAGE_LIBFSLCODEC + select BR2_PACKAGE_IMX_PARSER + select BR2_PACKAGE_IMX_CODEC select BR2_PACKAGE_FREESCALE_IMX help GStreamer plugins for hardware-accelerated audio and video diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk index fa0e093a96..65993a278a 100644 --- a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk +++ b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk @@ -16,10 +16,10 @@ GST_FSL_PLUGINS_INSTALL_STAGING = YES GST_FSL_PLUGINS_AUTORECONF = YES GST_FSL_PLUGINS_DEPENDENCIES += host-pkgconf gstreamer gst-plugins-base \ - imx-lib libfslparser libfslcodec + imx-lib imx-parser imx-codec ifeq ($(BR2_PACKAGE_FREESCALE_IMX_HAS_VPU),y) -GST_FSL_PLUGINS_DEPENDENCIES += libfslvpuwrap +GST_FSL_PLUGINS_DEPENDENCIES += imx-vpuwrap endif GST_FSL_PLUGINS_CONF_ENV = \ diff --git a/package/gstreamer/gst-plugin-x170/Config.in b/package/gstreamer/gst-plugin-x170/Config.in index 09b44be011..30036705b8 100644 --- a/package/gstreamer/gst-plugin-x170/Config.in +++ b/package/gstreamer/gst-plugin-x170/Config.in @@ -11,6 +11,6 @@ config BR2_PACKAGE_GST_PLUGIN_X170 http://www.at91.com/linux4sam/bin/view/Linux4SAM/SAM9M10Gstreamer -comment "gst-plugin-x170 needs an (e)glibc toolchain and a Linux kernel to be built" +comment "gst-plugin-x170 needs a glibc toolchain and a Linux kernel to be built" depends on BR2_arm926t depends on !BR2_LINUX_KERNEL || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/gstreamer/gst-plugins-bad/Config.in b/package/gstreamer/gst-plugins-bad/Config.in index d95edaa572..d54415a170 100644 --- a/package/gstreamer/gst-plugins-bad/Config.in +++ b/package/gstreamer/gst-plugins-bad/Config.in @@ -318,6 +318,7 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VCD config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VP8 bool "vp8" + depends on !BR2_bfin # libvpx select BR2_PACKAGE_LIBVPX config BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR diff --git a/package/gstreamer/gst-plugins-base/Config.in b/package/gstreamer/gst-plugins-base/Config.in index 8ad9a8ef81..e9c8239f79 100644 --- a/package/gstreamer/gst-plugins-base/Config.in +++ b/package/gstreamer/gst-plugins-base/Config.in @@ -46,9 +46,6 @@ config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_PLAYBACK bool "playback (mandatory)" default y -config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_SUBPARSE - bool "subparse" - config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_TCP bool "tcp" @@ -92,6 +89,10 @@ comment "pango plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_SYNC_4 +config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_SUBPARSE + bool "subparse" + select BR2_PACKAGE_LIBXML2 + config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_THEORA bool "theora (*.ogg video)" select BR2_PACKAGE_LIBTHEORA diff --git a/package/gstreamer/gst-plugins-base/gst-plugins-base.mk b/package/gstreamer/gst-plugins-base/gst-plugins-base.mk index e1374ed801..51c22a90bb 100644 --- a/package/gstreamer/gst-plugins-base/gst-plugins-base.mk +++ b/package/gstreamer/gst-plugins-base/gst-plugins-base.mk @@ -111,6 +111,7 @@ endif ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_SUBPARSE),y) GST_PLUGINS_BASE_CONF_OPTS += --enable-subparse +GST_PLUGINS_BASE_DEPENDENCIES += libxml2 else GST_PLUGINS_BASE_CONF_OPTS += --disable-subparse endif diff --git a/package/gstreamer/gstreamer/gstreamer.hash b/package/gstreamer/gstreamer/gstreamer.hash index e652eaea90..4fcf34ac32 100644 --- a/package/gstreamer/gstreamer/gstreamer.hash +++ b/package/gstreamer/gstreamer/gstreamer.hash @@ -1,2 +1,4 @@ # From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-0.10.36.tar.xz.md5 md5 15389c73e091b1dda915279c388b9cb2 gstreamer-0.10.36.tar.xz +# locally computed +sha256 9151aa108c177054387885763fa0e433e76780f7c5655c70a5390f2a6c6871da gstreamer-0.10.36.tar.xz diff --git a/package/gstreamer1/Config.in b/package/gstreamer1/Config.in index ea35ecc9aa..23862bd8cb 100644 --- a/package/gstreamer1/Config.in +++ b/package/gstreamer1/Config.in @@ -8,6 +8,7 @@ source "package/gstreamer1/gst1-plugins-bad/Config.in" source "package/gstreamer1/gst1-plugins-ugly/Config.in" source "package/gstreamer1/gst1-imx/Config.in" source "package/gstreamer1/gst1-libav/Config.in" +source "package/gstreamer1/gst1-rtsp-server/Config.in" source "package/gstreamer1/gst1-validate/Config.in" source "package/gstreamer1/gst-omx/Config.in" endif diff --git a/package/gstreamer1/gst-omx/gst-omx.hash b/package/gstreamer1/gst-omx/gst-omx.hash new file mode 100644 index 0000000000..be39ef764b --- /dev/null +++ b/package/gstreamer1/gst-omx/gst-omx.hash @@ -0,0 +1,2 @@ +# From https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-1.10.3.tar.xz.sha256sum +sha256 dd88451e175df7a6b6f619eff0f43a6078054ec7068787b19faf89af94cdb6e1 gst-omx-1.10.3.tar.xz diff --git a/package/gstreamer1/gst-omx/gst-omx.mk b/package/gstreamer1/gst-omx/gst-omx.mk index f008767661..d55ef5fe6d 100644 --- a/package/gstreamer1/gst-omx/gst-omx.mk +++ b/package/gstreamer1/gst-omx/gst-omx.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST_OMX_VERSION = 1.2.0 +GST_OMX_VERSION = 1.10.3 GST_OMX_SOURCE = gst-omx-$(GST_OMX_VERSION).tar.xz -GST_OMX_SITE = http://gstreamer.freedesktop.org/src/gst-omx +GST_OMX_SITE = https://gstreamer.freedesktop.org/src/gst-omx GST_OMX_LICENSE = LGPLv2.1 GST_OMX_LICENSE_FILES = COPYING diff --git a/package/gstreamer1/gst1-imx/Config.in b/package/gstreamer1/gst1-imx/Config.in index 0084483d1e..9f792d1c82 100644 --- a/package/gstreamer1/gst1-imx/Config.in +++ b/package/gstreamer1/gst1-imx/Config.in @@ -1,23 +1,87 @@ -comment "gst1-imx needs an imx-specific Linux kernel to be built" - depends on BR2_arm && !BR2_LINUX_KERNEL +comment "gst1-imx needs a toolchain w/ dynamic library" + depends on BR2_arm + depends on BR2_STATIC_LIBS -config BR2_PACKAGE_GST1_IMX +menuconfig BR2_PACKAGE_GST1_IMX bool "gst1-imx" - depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_GST1_PLUGINS_BASE help This is a set of GStreamer 1.0 plugins for plugins for Freescale's i.MX platforms, which make use of the i.MX multimedia capabilities. - This software supports only the i.MX6 SoC family and requires a - kernel that includes the i.MX6 specific headers to be built. - - The IPU and PXP plugins are always built. - The V4L2 plugin is built when BR2_PACKAGE_GST1_PLUGINS_BAD is enabled. - The VPU plugin is built when BR2_PACKAGE_LIBIMXVPUAPI is enabled. - The EGL plugin is built when BR2_PACKAGE_IMX_GPU_VIV is enabled. - The G2D plugin is built when BR2_PACKAGE_IMX_GPU_VIV_G2D is enabled. - The MP3 plugin is built when BR2_PACKAGE_LIBFSLCODEC is enabled. - https://github.com/Freescale/gstreamer-imx + +if BR2_PACKAGE_GST1_IMX + +config BR2_PACKAGE_GST1_IMX_EGLVISINK + bool "imxeglvivsink" + depends on BR2_PACKAGE_IMX_GPU_VIV + help + Elements leveraging the 3D GPU + +comment "imxeglvivsink needs the Vivante 3D libraries" + depends on !BR2_PACKAGE_IMX_GPU_VIV + +config BR2_PACKAGE_GST1_IMX_G2D + bool "imxg2d" + depends on BR2_PACKAGE_IMX_GPU_VIV_G2D + help + Elements leveraging the 2D GPU + +comment "imxg2d needs the Vivante 2D libraries" + depends on !BR2_PACKAGE_IMX_GPU_VIV_G2D + +config BR2_PACKAGE_GST1_IMX_IPU + bool "imxipu" + depends on BR2_LINUX_KERNEL + help + Elements leveraging the IPU + +comment "imxipu needs an imx-specific Linux kernel to be built" + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_GST1_IMX_MP3ENCODER + bool "mp3encoder" + depends on BR2_PACKAGE_IMX_CODEC + help + Elements for MP3 encoding + +comment "mp3encoder needs the i.MX codec binaries" + depends on !BR2_PACKAGE_IMX_CODEC + +config BR2_PACKAGE_GST1_IMX_PXP + bool "imxpxp" + depends on BR2_LINUX_KERNEL + help + Elements leveraging the PXP + +comment "imxpxp needs an imx-specific Linux kernel to be built" + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_GST1_IMX_UNIAUDIODEC + bool "uniaudiodec" + depends on BR2_PACKAGE_IMX_CODEC + help + Elements for audio decoding + +comment "uniaudiodec needs the i.MX codec binaries" + depends on !BR2_PACKAGE_IMX_CODEC + +config BR2_PACKAGE_GST1_IMX_VPU + bool "imxvpu" + depends on BR2_PACKAGE_LIBIMXVPUAPI + help + Elements leveraging the VPU + +comment "imxvpu needs the VPU imxvpuapi library" + depends on !BR2_PACKAGE_LIBIMXVPUAPI + +config BR2_PACKAGE_GST1_IMX_V4L2VIDEOSRC + bool "imxv4l2videosrc" + select BR2_PACKAGE_GST1_PLUGINS_BAD + help + Elements for V4L2 capture + +endif diff --git a/package/gstreamer1/gst1-imx/gst1-imx.hash b/package/gstreamer1/gst1-imx/gst1-imx.hash index 03e17299ba..e2e3971a2a 100644 --- a/package/gstreamer1/gst1-imx/gst1-imx.hash +++ b/package/gstreamer1/gst1-imx/gst1-imx.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 df34f080e24ac8f1619780aa5ad4e6ab1333f822cd2bf5fcb380b28c97248810 gst1-imx-0.12.0.tar.gz +sha256 999c093e38768e51d14abbe7836c09b666bcb89f03f34dd3697a6e5b5e4a4086 gst1-imx-0.12.3.tar.gz diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk index 650e097592..88429aea2e 100644 --- a/package/gstreamer1/gst1-imx/gst1-imx.mk +++ b/package/gstreamer1/gst1-imx/gst1-imx.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_IMX_VERSION = 0.12.0 +GST1_IMX_VERSION = 0.12.3 GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION)) GST1_IMX_LICENSE = LGPLv2+ @@ -14,29 +14,27 @@ GST1_IMX_INSTALL_STAGING = YES GST1_IMX_DEPENDENCIES += \ host-pkgconf \ - host-python \ gstreamer1 \ gst1-plugins-base -# needs access to imx-specific kernel headers +GST1_IMX_CONF_OPTS = --prefix="/usr" + +ifeq ($(BR2_LINUX_KERNEL),y) +# IPU and PXP need access to imx-specific kernel headers GST1_IMX_DEPENDENCIES += linux -GST1_IMX_CONF_OPTS += --prefix="/usr" \ - --kernel-headers="$(LINUX_DIR)/include" - -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD),y) -GST1_IMX_DEPENDENCIES += gst1-plugins-bad +GST1_IMX_CONF_OPTS += --kernel-headers="$(LINUX_DIR)/include" endif -ifeq ($(BR2_PACKAGE_LIBFSLCODEC),y) -GST1_IMX_DEPENDENCIES += libfslcodec -endif - -ifeq ($(BR2_PACKAGE_LIBIMXVPUAPI),y) -GST1_IMX_DEPENDENCIES += libimxvpuapi +ifeq ($(BR2_PACKAGE_IMX_CODEC),y) +GST1_IMX_DEPENDENCIES += imx-codec endif ifeq ($(BR2_PACKAGE_IMX_GPU_VIV),y) GST1_IMX_DEPENDENCIES += imx-gpu-viv +endif + +ifeq ($(BR2_PACKAGE_GST1_IMX_EGLVISINK),y) +# There's no --enable-eglvivsink option ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y) GST1_IMX_DEPENDENCIES += xlib_libX11 GST1_IMX_CONF_OPTS += --egl-platform=x11 @@ -48,23 +46,47 @@ else GST1_IMX_CONF_OPTS += --egl-platform=fb endif endif +else +GST1_IMX_CONF_OPTS += --disable-eglvivsink endif -define GST1_IMX_CONFIGURE_CMDS - cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - $(HOST_DIR)/usr/bin/python2 ./waf configure $(GST1_IMX_CONF_OPTS) -endef +# There's no --enable-g2d option +ifeq ($(BR2_PACKAGE_GST1_IMX_G2D),) +GST1_IMX_CONF_OPTS += --disable-g2d +endif -define GST1_IMX_BUILD_CMDS - cd $(@D); \ - $(HOST_DIR)/usr/bin/python2 ./waf build -j $(PARALLEL_JOBS) -endef +# There's no --enable-ipu option +ifeq ($(BR2_PACKAGE_GST1_IMX_IPU),) +GST1_IMX_CONF_OPTS += --disable-ipu +endif -define GST1_IMX_INSTALL_TARGET_CMDS - cd $(@D); \ - $(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(TARGET_DIR) \ - install -endef +# There's no --enable-mp3encoder option +ifeq ($(BR2_PACKAGE_GST1_IMX_MP3ENCODER),) +GST1_IMX_CONF_OPTS += --disable-mp3encoder +endif -$(eval $(generic-package)) +# There's no --enable-pxp option +ifeq ($(BR2_PACKAGE_GST1_IMX_PXP),) +GST1_IMX_CONF_OPTS += --disable-pxp +endif + +# There's no --enable-uniaudiodec option +ifeq ($(BR2_PACKAGE_GST1_IMX_UNIAUDIODEC),) +GST1_IMX_CONF_OPTS += --disable-uniaudiodec +endif + +ifeq ($(BR2_PACKAGE_GST1_IMX_VPU),y) +# There's no --enable-vpu option +GST1_IMX_DEPENDENCIES += libimxvpuapi +else +GST1_IMX_CONF_OPTS += --disable-vpu +endif + +ifeq ($(BR2_PACKAGE_GST1_IMX_V4L2VIDEOSRC),y) +# There's no --enable-v4l2src option +GST1_IMX_DEPENDENCIES += gst1-plugins-bad +else +GST1_IMX_CONF_OPTS += --disable-v4l2src +endif + +$(eval $(waf-package)) diff --git a/package/gstreamer1/gst1-libav/gst1-libav.hash b/package/gstreamer1/gst1-libav/gst1-libav.hash index 157c94f22f..9c846308e5 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.hash +++ b/package/gstreamer1/gst1-libav/gst1-libav.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.8.1.tar.xz.sha256sum -sha256 44a49108c3531b5ac4f346a2247cd7fbafb0e8ab394394cb6d75a70300b38933 gst-libav-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.10.3.tar.xz.sha256sum +sha256 9a6bc165b1862b18b98d9f1755c43806e4839a80f69ec7ea9a2dab61b65752a9 gst-libav-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-libav/gst1-libav.mk b/package/gstreamer1/gst1-libav/gst1-libav.mk index 65d18624ae..ec84b770c0 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.mk +++ b/package/gstreamer1/gst1-libav/gst1-libav.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST1_LIBAV_VERSION = 1.8.1 +GST1_LIBAV_VERSION = 1.10.3 GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz -GST1_LIBAV_SITE = http://gstreamer.freedesktop.org/src/gst-libav +GST1_LIBAV_SITE = https://gstreamer.freedesktop.org/src/gst-libav GST1_LIBAV_CONF_OPTS = --with-system-libav GST1_LIBAV_DEPENDENCIES = \ host-pkgconf ffmpeg gstreamer1 gst1-plugins-base \ diff --git a/package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch b/package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch deleted file mode 100644 index ebf4567b00..0000000000 --- a/package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch +++ /dev/null @@ -1,17 +0,0 @@ -Use newer version of gettext to match current buildroot gettext. - -Signed-off-by: Spenser Gilliland ----- -Index: gst1-plugins-bad-1.1.1/po/Makefile.in.in -=================================================================== ---- gst1-plugins-bad-1.1.1.orig/po/Makefile.in.in -+++ gst1-plugins-bad-1.1.1/po/Makefile.in.in -@@ -9,7 +9,7 @@ - # General Public License and is *not* in the public domain. - # - # Origin: gettext-0.17 --GETTEXT_MACRO_VERSION = 0.17 -+GETTEXT_MACRO_VERSION = 0.18 - - PACKAGE = @PACKAGE@ - VERSION = @VERSION@ diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in index facfe58dcc..6bec362db0 100644 --- a/package/gstreamer1/gst1-plugins-bad/Config.in +++ b/package/gstreamer1/gst1-plugins-bad/Config.in @@ -312,11 +312,6 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIBRFB help Connects to a VNC server and decodes RFB stream -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIVEADDER - bool "liveadder" - help - Adds multiple live discontinuous streams - config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MIDI bool "midi" help @@ -424,6 +419,9 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SUBENC config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_STEREO bool "stereo" +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TIMECODE + bool "timecode" + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TTA bool "tta" @@ -463,14 +461,6 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_YADIF comment "plugins with external dependencies" -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM - bool "shm" - help - shared memory sink source - -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD - bool "vcd" - config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_APEXSINK bool "apexsink" select BR2_PACKAGE_OPENSSL @@ -479,10 +469,6 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ASSRENDER bool "assrender" select BR2_PACKAGE_LIBASS -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC - bool "voaacenc" - select BR2_PACKAGE_VO_AACENC - config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BZ2 bool "bz2" select BR2_PACKAGE_BZIP2 @@ -515,18 +501,16 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB depends on BR2_PACKAGE_DIRECTFB default y -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND - bool "wayland" - depends on BR2_PACKAGE_WAYLAND - default y +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB + bool "dvb" + select BR2_PACKAGE_DTV_SCAN_TABLES + # FEC_2_5 / QAM_4_NR definitions + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 help - Wayland Video Sink + DVB elements -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP - bool "webp" - select BR2_PACKAGE_WEBP - help - Webp image format plugin +comment "dvb needs a toolchain w/ headers >= 3.7" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FAAD bool "faad" @@ -539,6 +523,39 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FBDEV help Linux framebuffer video sink +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FDK_AAC + bool "fdk-aac" + select BR2_PACKAGE_FDK_AAC + depends on BR2_PACKAGE_FDK_AAC_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP + help + MPEG AAC encoder/decoder + +comment "fdk-aac needs a toolchain w/ C++" + depends on BR2_PACKAGE_FDK_AAC_ARCH_SUPPORTS + depends on !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL + bool "gl" + default y + depends on BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL + +comment "gl needs the gst1-plugins-bad opengl library" + depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS + bool "hls" + select BR2_PACKAGE_NETTLE if !(BR2_PACKAGE_LIBGCRYPT || BR2_PACKAGE_OPENSSL) + help + Fragmented streaming plugins + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_KMS + bool "kmssink" + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm -> libpthread-stubs + select BR2_PACKAGE_LIBDRM + help + KMS video sink + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIBMMS bool "libmms" depends on BR2_USE_WCHAR # libmms -> libglib2 @@ -638,38 +655,63 @@ comment "rsvg plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_SYNC_4 -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL - bool "gl" - default y - depends on BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL - -comment "gl needs the gst1-plugins-bad opengl library" - depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SBC + bool "sbc" + select BR2_PACKAGE_SBC config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL bool "sdl" select BR2_PACKAGE_SDL +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM + bool "shm" + help + shared memory sink source + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE bool "sndfile" select BR2_PACKAGE_LIBSNDFILE -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB - bool "dvb" - select BR2_PACKAGE_DTV_SCAN_TABLES - # FEC_2_5 / QAM_4_NR definitions - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 - help - DVB elements +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SRTP + bool "srtp" + select BR2_PACKAGE_LIBSRTP -comment "dvb needs a toolchain w/ headers >= 3.7" - depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD + bool "vcd" -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS - bool "hls" - select BR2_PACKAGE_GNUTLS +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC + bool "voaacenc" + select BR2_PACKAGE_VO_AACENC + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND + bool "wayland" + depends on BR2_PACKAGE_WAYLAND + default y help - Fragmented streaming plugins + Wayland Video Sink + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP + bool "webp" + select BR2_PACKAGE_WEBP + help + Webp image format plugin + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBRTC + bool "webrtc" + # All depends from 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 + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING + select BR2_PACKAGE_WEBRTC + help + WebRTC echo-cancellation, gain control and noise suppression + +comment "webrtc 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 config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265 bool "x265" diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash index a5cac89d34..2d0f91348c 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.8.1.tar.xz.sha256sum -sha256 0bbd58f363734fc0c4a620b2d6fb01d427fdafdbda7b90b4e15d03b751ca40f5 gst-plugins-bad-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.10.3.tar.xz.sha256sum +sha256 24099351fb6984c9e7560de06e072ff2e33d0b2db38b8fcc7afefb536e5094e7 gst-plugins-bad-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk index e2446a3c25..062849497e 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk @@ -4,26 +4,20 @@ # ################################################################################ -GST1_PLUGINS_BAD_VERSION = 1.8.1 +GST1_PLUGINS_BAD_VERSION = 1.10.3 GST1_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST1_PLUGINS_BAD_VERSION).tar.xz -GST1_PLUGINS_BAD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-bad +GST1_PLUGINS_BAD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-bad GST1_PLUGINS_BAD_INSTALL_STAGING = YES GST1_PLUGINS_BAD_LICENSE_FILES = COPYING COPYING.LIB # Unknown and GPL licensed plugins will append to GST1_PLUGINS_BAD_LICENSE if # enabled. GST1_PLUGINS_BAD_LICENSE = LGPLv2+ LGPLv2.1+ -GST1_PLUGINS_BAD_AUTORECONF = YES -GST1_PLUGINS_BAD_AUTORECONF_OPTS = -I $(@D)/common/m4 -GST1_PLUGINS_BAD_GETTEXTIZE = YES - GST1_PLUGINS_BAD_CONF_OPTS = \ --disable-examples \ --disable-valgrind \ --disable-directsound \ - --disable-wsapi \ --disable-direct3d \ - --disable-direct3d9 \ --disable-winks \ --disable-android_media \ --disable-apple_media \ @@ -39,7 +33,6 @@ GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-voamrwbenc \ --disable-bs2b \ --disable-chromaprint \ - --disable-dash \ --disable-dc1394 \ --disable-dts \ --disable-resindvd \ @@ -51,7 +44,6 @@ GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-ladspa \ --disable-lv2 \ --disable-libde265 \ - --disable-strp \ --disable-linsys \ --disable-modplug \ --disable-mimic \ @@ -71,14 +63,10 @@ GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-gme \ --disable-xvid \ --disable-vdpau \ - --disable-sbc \ --disable-schro \ --disable-zbar \ - --disable-rtmp \ --disable-spandsp \ - --disable-gsettings \ --disable-sndio \ - --disable-hls \ --disable-gtk3 \ --disable-qt @@ -381,12 +369,6 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-librfb endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIVEADDER),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-liveadder -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-liveadder -endif - ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MIDI),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-midi else @@ -534,6 +516,12 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-stereo endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TIMECODE),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-timecode +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-timecode +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TTA),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-tta else @@ -590,18 +578,6 @@ endif # Plugins with dependencies -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-shm -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-shm -endif - -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-vcd -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-vcd -endif - ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_APEXSINK),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-apexsink GST1_PLUGINS_BAD_DEPENDENCIES += openssl @@ -616,13 +592,6 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-assrender endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-voaacenc -GST1_PLUGINS_BAD_DEPENDENCIES += vo-aacenc -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-voaacenc -endif - ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BZ2),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-bz2 GST1_PLUGINS_BAD_DEPENDENCIES += bzip2 @@ -650,13 +619,6 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-decklink endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-webp -GST1_PLUGINS_BAD_DEPENDENCIES += webp -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-webp -endif - ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-directfb GST1_PLUGINS_BAD_DEPENDENCIES += directfb @@ -664,6 +626,13 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-directfb endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-dvb +GST1_PLUGINS_BAD_DEPENDENCIES += dtv-scan-tables +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-dvb +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FAAD),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-faad GST1_PLUGINS_BAD_DEPENDENCIES += faad2 @@ -678,6 +647,46 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-fbdev endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FDK_AAC),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-fdk_aac +GST1_PLUGINS_BAD_DEPENDENCIES += fdk-aac +GST1_PLUGINS_BAD_HAS_UNKNOWN_LICENSE = y +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-fdk_aac +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-gl +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-gl +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-hls + +ifeq ($(BR2_PACKAGE_NETTLE),y) +GST1_PLUGINS_BAD_DEPENDENCIES += nettle +GST1_PLUGINS_BAD_CONF_OPTS += --with-hls-crypto=nettle +else ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +GST1_PLUGINS_BAD_DEPENDENCIES += libgcrypt +GST1_PLUGINS_BAD_CONF_OPTS += --with-hls-crypto=libgcrypt \ + --with-libgcrypt-prefix=$(STAGING_DIR)/usr +else +GST1_PLUGINS_BAD_DEPENDENCIES += openssl +GST1_PLUGINS_BAD_CONF_OPTS += --with-hls-crypto=openssl +endif + +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-hls +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_KMS),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-kms +GST1_PLUGINS_BAD_DEPENDENCIES += libdrm +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-kms +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIBMMS),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-libmms GST1_PLUGINS_BAD_DEPENDENCIES += libmms @@ -749,10 +758,11 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-rsvg endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-gl +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SBC),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-sbc +GST1_PLUGINS_BAD_DEPENDENCIES += sbc else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-gl +GST1_PLUGINS_BAD_CONF_OPTS += --disable-sbc endif ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL),y) @@ -763,6 +773,12 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-sdl endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-shm +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-shm +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-sndfile GST1_PLUGINS_BAD_DEPENDENCIES += libsndfile @@ -770,18 +786,38 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-sndfile endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-dvb -GST1_PLUGINS_BAD_DEPENDENCIES += dtv-scan-tables +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SRTP),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-srtp +GST1_PLUGINS_BAD_DEPENDENCIES += libsrtp else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-dvb +GST1_PLUGINS_BAD_CONF_OPTS += --disable-srtp endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-hls -GST1_PLUGINS_BAD_DEPENDENCIES += gnutls +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-vcd else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-hls +GST1_PLUGINS_BAD_CONF_OPTS += --disable-vcd +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-voaacenc +GST1_PLUGINS_BAD_DEPENDENCIES += vo-aacenc +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-voaacenc +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-webp +GST1_PLUGINS_BAD_DEPENDENCIES += webp +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-webp +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBRTC),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-webrtc +GST1_PLUGINS_BAD_DEPENDENCIES += webrtc-audio-processing +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-webrtc endif ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265),y) diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash index c3db9b0dc3..86116f00dc 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.8.1.tar.xz.sha256sum -sha256 15a9de985cd265c344e359f5b19347df4021b7611ed2c2d91917cb900f2fad6f gst-plugins-base-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.10.3.tar.xz.sha256sum +sha256 e6299617d705a0cbfb535107c1d3a8fc0f0967f14193a8c5c7583f46a88b1710 gst-plugins-base-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk index 62e8b22c63..76602cc3d4 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST1_PLUGINS_BASE_VERSION = 1.8.1 +GST1_PLUGINS_BASE_VERSION = 1.10.3 GST1_PLUGINS_BASE_SOURCE = gst-plugins-base-$(GST1_PLUGINS_BASE_VERSION).tar.xz -GST1_PLUGINS_BASE_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-base +GST1_PLUGINS_BASE_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-base GST1_PLUGINS_BASE_INSTALL_STAGING = YES GST1_PLUGINS_BASE_LICENSE_FILES = COPYING.LIB GST1_PLUGINS_BASE_LICENSE = LGPLv2+, LGPLv2.1+ diff --git a/package/gstreamer1/gst1-plugins-good/Config.in b/package/gstreamer1/gst1-plugins-good/Config.in index a59033a24e..27f24f5e73 100644 --- a/package/gstreamer1/gst1-plugins-good/Config.in +++ b/package/gstreamer1/gst1-plugins-good/Config.in @@ -279,6 +279,14 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2 comment "v4l2 needs a toolchain w/ headers >= 3.0" depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 +config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2_PROBE + bool "v4l2-probe (m2m)" + depends on BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2 + help + Enables the V4L2 probe at plugin load time. This enables + support for v4l2 transform devices, such as m2m + devices. These plugins are registered as v4l2videoNconvert + config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO bool "cairo" select BR2_PACKAGE_CAIRO @@ -353,11 +361,13 @@ comment "taglib needs a toolchain w/ C++, wchar" config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX bool "vpx (webm)" select BR2_PACKAGE_LIBVPX + depends on !BR2_bfin # libvpx depends on BR2_TOOLCHAIN_HAS_THREADS # libvpx help VP8 plugin comment "libvpx needs a toolchain w/ threads" + depends on !BR2_bfin depends on !BR2_TOOLCHAIN_HAS_THREADS config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVPACK diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash index 425fb92efd..90578a2ac1 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.8.1.tar.xz.sha256sum -sha256 2103e17921d67894e82eafdd64fb9b06518599952fd93e625bfbc83ffead0972 gst-plugins-good-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.10.3.tar.xz.sha256sum +sha256 4e07e93e34d4b93208f1579c21e7d91a236577b36f128a5332ffee85b4465955 gst-plugins-good-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk index 14bd4e8dc7..6fe92217ae 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST1_PLUGINS_GOOD_VERSION = 1.8.1 +GST1_PLUGINS_GOOD_VERSION = 1.10.3 GST1_PLUGINS_GOOD_SOURCE = gst-plugins-good-$(GST1_PLUGINS_GOOD_VERSION).tar.xz -GST1_PLUGINS_GOOD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-good +GST1_PLUGINS_GOOD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-good GST1_PLUGINS_GOOD_LICENSE_FILES = COPYING GST1_PLUGINS_GOOD_LICENSE = LGPLv2.1+ @@ -30,8 +30,7 @@ GST1_PLUGINS_GOOD_CONF_OPTS += \ --disable-jack \ --disable-libdv \ --disable-dv1394 \ - --disable-shout2 \ - --disable-taglib + --disable-shout2 GST1_PLUGINS_GOOD_DEPENDENCIES = gstreamer1 gst1-plugins-base @@ -323,6 +322,12 @@ else GST1_PLUGINS_GOOD_CONF_OPTS += --disable-gst_v4l2 endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2_PROBE),y) +GST1_PLUGINS_GOOD_CONF_OPTS += --enable-v4l2-probe +else +GST1_PLUGINS_GOOD_CONF_OPTS += --disable-v4l2-probe +endif + ifeq ($(BR2_PACKAGE_XORG7),y) GST1_PLUGINS_GOOD_DEPENDENCIES += xlib_libX11 xlib_libXext xlib_libXv GST1_PLUGINS_GOOD_CONF_OPTS += \ diff --git a/package/gstreamer1/gst1-plugins-ugly/Config.in b/package/gstreamer1/gst1-plugins-ugly/Config.in index 995835e41a..f30163aa0a 100644 --- a/package/gstreamer1/gst1-plugins-ugly/Config.in +++ b/package/gstreamer1/gst1-plugins-ugly/Config.in @@ -40,14 +40,10 @@ comment "plugins with external dependencies (there may be more available)" config BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDREAD bool "dvdread" - depends on !BR2_STATIC_LIBS # libdvdread select BR2_PACKAGE_LIBDVDREAD help Access a DVD with dvdread -comment "dvdread needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS - config BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_LAME bool "lame (*.mp3 audio encoder)" select BR2_PACKAGE_LAME diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash index 77db9a221a..6b4f0c7590 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.8.1.tar.xz.sha256sum -sha256 8e656a9a3be60d7e7ed3fb8e2a22d070b1f54f95d0b22accd876360e659446ce gst-plugins-ugly-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.10.3.tar.xz.sha256sum +sha256 c91597d03abff9df435ad4892eae44df1ee14159c7cc7317ac9d2766ff446bd2 gst-plugins-ugly-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk index 91bbb1e9f3..2f68145ca6 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST1_PLUGINS_UGLY_VERSION = 1.8.1 +GST1_PLUGINS_UGLY_VERSION = 1.10.3 GST1_PLUGINS_UGLY_SOURCE = gst-plugins-ugly-$(GST1_PLUGINS_UGLY_VERSION).tar.xz -GST1_PLUGINS_UGLY_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-ugly +GST1_PLUGINS_UGLY_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-ugly GST1_PLUGINS_UGLY_LICENSE_FILES = COPYING # GPL licensed plugins will append to GST1_PLUGINS_UGLY_LICENSE if enabled. GST1_PLUGINS_UGLY_LICENSE = LGPLv2.1+ @@ -59,6 +59,10 @@ GST1_PLUGINS_UGLY_CONF_OPTS += --disable-realmedia endif ifeq ($(BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDREAD),y) +# configure does not use pkg-config to detect libdvdread +ifeq ($(BR2_PACKAGE_LIBDVDCSS)$(BR2_STATIC_LIBS),yy) +GST1_PLUGINS_UGLY_CONF_ENV += LIBS="-ldvdcss" +endif GST1_PLUGINS_UGLY_CONF_OPTS += --enable-dvdread GST1_PLUGINS_UGLY_DEPENDENCIES += libdvdread GST1_PLUGINS_UGLY_HAS_GPL_LICENSE = y @@ -91,7 +95,7 @@ endif ifeq ($(BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_MPEG2DEC),y) GST1_PLUGINS_UGLY_CONF_OPTS += --enable-mpeg2dec GST1_PLUGINS_UGLY_DEPENDENCIES += libmpeg2 -GST1_PLUGINS_ULGY_HAS_GPL_LICENSE = y +GST1_PLUGINS_UGLY_HAS_GPL_LICENSE = y else GST1_PLUGINS_UGLY_CONF_OPTS += --disable-mpeg2dec endif diff --git a/package/gstreamer1/gst1-rtsp-server/Config.in b/package/gstreamer1/gst1-rtsp-server/Config.in new file mode 100644 index 0000000000..5869952f58 --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_GST1_RTSP_SERVER + bool "gst1-rtsp-server" + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP # runtime + select BR2_PACKAGE_GST1_PLUGINS_GOOD + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP # runtime + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTPMANAGER # runtime + select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_UDP # runtime + help + RTSP server library based on GStreamer. + + http://gstreamer.freedesktop.org/ diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash new file mode 100644 index 0000000000..21d4ba564a --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash @@ -0,0 +1,2 @@ +# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.10.3.tar.xz.sha256sum +sha256 baf9f7d229711cb3d823a447a930132f809b3321eab3535491bb01c8a21566fe gst-rtsp-server-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk new file mode 100644 index 0000000000..a2e8eec7b3 --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# gst1-rtsp-server +# +################################################################################ + +GST1_RTSP_SERVER_VERSION = 1.10.3 +GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz +GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server +GST1_RTSP_SERVER_LICENSE = LGPLv2+ +GST1_RTSP_SERVER_LICENSE_FILES = COPYING COPYING.LIB +GST1_RTSP_SERVER_INSTALL_STAGING = YES +GST1_RTSP_SERVER_DEPENDENCIES = \ + host-pkgconf \ + gstreamer1 \ + gst1-plugins-base \ + gst1-plugins-good + +ifeq ($(BR2_PACKAGE_LIBCGROUP),y) +GST1_RTSP_SERVER_DEPENDENCIES += libcgroup +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD),y) +GST1_RTSP_SERVER_DEPENDENCIES += gst1-plugins-bad +endif + +$(eval $(autotools-package)) diff --git a/package/gstreamer1/gst1-validate/Config.in b/package/gstreamer1/gst1-validate/Config.in index a9bb2aa388..2022d38d99 100644 --- a/package/gstreamer1/gst1-validate/Config.in +++ b/package/gstreamer1/gst1-validate/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_GST1_VALIDATE bool "gst1-validate" depends on BR2_PACKAGE_PYTHON select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_JSON_GLIB select BR2_PACKAGE_PYTHON_PYEXPAT # cairo is autodetected but needs PNG support select BR2_PACKAGE_CAIRO_PNG if BR2_PACKAGE_CAIRO diff --git a/package/gstreamer1/gst1-validate/gst1-validate.hash b/package/gstreamer1/gst1-validate/gst1-validate.hash index 07f8cedfc0..164ee2dab6 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.hash +++ b/package/gstreamer1/gst1-validate/gst1-validate.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.8.1.tar.xz.sha256sum -sha256 a9b208c014cca2dc515599f01fd3a7a294133fd936366e74f439b9bc96a1ccbf gst-validate-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.10.3.tar.xz.sha256sum +sha256 be6b48569324c541266310e7e6d1098b1a2ec7cd06b9e95b6701c96bc4562c02 gst-validate-1.10.3.tar.xz diff --git a/package/gstreamer1/gst1-validate/gst1-validate.mk b/package/gstreamer1/gst1-validate/gst1-validate.mk index 37eb5676bd..695e53e043 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.mk +++ b/package/gstreamer1/gst1-validate/gst1-validate.mk @@ -4,9 +4,9 @@ # ################################################################################ -GST1_VALIDATE_VERSION = 1.8.1 +GST1_VALIDATE_VERSION = 1.10.3 GST1_VALIDATE_SOURCE = gst-validate-$(GST1_VALIDATE_VERSION).tar.xz -GST1_VALIDATE_SITE = http://gstreamer.freedesktop.org/src/gst-validate +GST1_VALIDATE_SITE = https://gstreamer.freedesktop.org/src/gst-validate GST1_VALIDATE_LICENSE = LGPLv2.1+ GST1_VALIDATE_LICENSE_FILES = COPYING @@ -15,6 +15,7 @@ GST1_VALIDATE_CONF_OPTS = --disable-sphinx-doc GST1_VALIDATE_DEPENDENCIES = \ gstreamer1 \ gst1-plugins-base \ + json-glib \ host-python \ python \ $(if $(BR2_PACKAGE_CAIRO),cairo) diff --git a/package/gstreamer1/gstreamer1/gstreamer1.hash b/package/gstreamer1/gstreamer1/gstreamer1.hash index 49a609ded6..f65061b2eb 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.hash +++ b/package/gstreamer1/gstreamer1/gstreamer1.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.8.1.tar.xz.sha256sum -sha256 5a3722fb9302dd977c17ced4240293dc777cb716dc98c8cca63d75c27e5e3107 gstreamer-1.8.1.tar.xz +# From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.10.3.tar.xz.sha256sum +sha256 85b9dc1b2991f224fa90d534ec57014896c479e061dc9fa1bc16ae17cbebb63d gstreamer-1.10.3.tar.xz diff --git a/package/gstreamer1/gstreamer1/gstreamer1.mk b/package/gstreamer1/gstreamer1/gstreamer1.mk index 3a6dd0b372..ac2c988706 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.mk +++ b/package/gstreamer1/gstreamer1/gstreamer1.mk @@ -4,9 +4,9 @@ # ################################################################################ -GSTREAMER1_VERSION = 1.8.1 +GSTREAMER1_VERSION = 1.10.3 GSTREAMER1_SOURCE = gstreamer-$(GSTREAMER1_VERSION).tar.xz -GSTREAMER1_SITE = http://gstreamer.freedesktop.org/src/gstreamer +GSTREAMER1_SITE = https://gstreamer.freedesktop.org/src/gstreamer GSTREAMER1_INSTALL_STAGING = YES GSTREAMER1_LICENSE_FILES = COPYING GSTREAMER1_LICENSE = LGPLv2+, LGPLv2.1+ @@ -34,16 +34,11 @@ GSTREAMER1_CONF_OPTS = \ $(if $(BR2_PACKAGE_GSTREAMER1_PLUGIN_REGISTRY),,--disable-registry) \ $(if $(BR2_PACKAGE_GSTREAMER1_INSTALL_TOOLS),,--disable-tools) -GSTREAMER1_DEPENDENCIES = libglib2 host-pkgconf host-bison host-flex - -# gstreamer-1.6 changed the location of its gstconfig.h file, -# and unfortunately, not all (by far!) consumers have been -# updated to look in the correct location. -# Add a symlink to the legacy location -define GSTREAMER1_LEGACY_CGSTCONFIG_H - cd $(STAGING_DIR)/usr/include/gstreamer-1.0/gst && \ - ln -sf ../../../lib/gstreamer-1.0/include/gst/gstconfig.h . -endef -GSTREAMER1_POST_INSTALL_STAGING_HOOKS += GSTREAMER1_LEGACY_CGSTCONFIG_H +GSTREAMER1_DEPENDENCIES = \ + host-bison \ + host-flex \ + host-pkgconf \ + libglib2 \ + $(if $(BR2_PACKAGE_LIBUNWIND),libunwind) $(eval $(autotools-package)) diff --git a/package/gtest/Config.in b/package/gtest/Config.in index c07f13bf6f..355b736c60 100644 --- a/package/gtest/Config.in +++ b/package/gtest/Config.in @@ -19,7 +19,7 @@ config BR2_PACKAGE_GTEST This package allows running testsuites on the target which might be advantageous in certain cases. - http://code.google.com/p/googletest/ + https://github.com/google/googletest comment "gtest needs a toolchain w/ C++, wchar, threads" depends on BR2_USE_MMU diff --git a/package/gtest/gtest.hash b/package/gtest/gtest.hash index 8ff79cb0d6..79e31e466d 100644 --- a/package/gtest/gtest.hash +++ b/package/gtest/gtest.hash @@ -1,2 +1,2 @@ -# From http://code.google.com/p/googletest/downloads/detail?name=gtest-1.7.0.zip&can=2&q= -sha1 f85f6d2481e2c6c4a18539e391aa4ea8ab0394af gtest-1.7.0.zip +# Locally computed: +sha256 f73a6546fdf9fce9ff93a5015e0333a8af3062a152a9ad6bcb772c96687016cc gtest-release-1.7.0.tar.gz diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk index da08621029..eb30905c2a 100644 --- a/package/gtest/gtest.mk +++ b/package/gtest/gtest.mk @@ -5,9 +5,8 @@ ################################################################################ # Make sure this remains the same version as the gmock one -GTEST_VERSION = 1.7.0 -GTEST_SOURCE = gtest-$(GTEST_VERSION).zip -GTEST_SITE = http://googletest.googlecode.com/files +GTEST_VERSION = release-1.7.0 +GTEST_SITE = $(call github,google,googletest,$(GTEST_VERSION)) GTEST_INSTALL_STAGING = YES GTEST_INSTALL_TARGET = NO GTEST_LICENSE = BSD-3c @@ -22,15 +21,13 @@ GTEST_LICENSE_FILES = LICENSE # the gtest sources. GTEST_CONF_OPTS = -DBUILD_SHARED_LIBS=OFF -define GTEST_EXTRACT_CMDS - $(UNZIP) $(DL_DIR)/$(GTEST_SOURCE) -d $(BUILD_DIR) -endef - define GTEST_INSTALL_STAGING_CMDS $(INSTALL) -D -m 0755 $(@D)/libgtest.a $(STAGING_DIR)/usr/lib/libgtest.a $(INSTALL) -D -m 0755 $(@D)/libgtest_main.a $(STAGING_DIR)/usr/lib/libgtest_main.a $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include/gtest/ cp -rp $(@D)/include/gtest/* $(STAGING_DIR)/usr/include/gtest/ + $(INSTALL) -D -m 0644 package/gtest/gtest.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/gtest.pc # Generate the gtest-config script manually, since the CMake # build system is not doing it. sed 's%@PACKAGE_TARNAME@%gtest%;\ diff --git a/package/gtest/gtest.pc b/package/gtest/gtest.pc new file mode 100644 index 0000000000..b7a8aa4000 --- /dev/null +++ b/package/gtest/gtest.pc @@ -0,0 +1,11 @@ +prefix=/usr +exec_prefix=${prefix} +libdir=${prefix}/lib/ +includedir=${prefix}/include + +Name: gtest +Description: Google C++ Testing Framework +Version: 1.7.0 +Libs: -L${libdir} -lgtest +Libs.private: -lpthread +Cflags: -I${includedir} diff --git a/package/gtkmm3/gtkmm3.hash b/package/gtkmm3/gtkmm3.hash index f2fc960830..951b481f2c 100644 --- a/package/gtkmm3/gtkmm3.hash +++ b/package/gtkmm3/gtkmm3.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/gtkmm/3.20/gtkmm-3.20.1.sha256sum -sha256 051de1b8756ca6ec61f26264338cfc3060af936fd70bf4558bfe1e115418c612 gtkmm-3.20.1.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/gtkmm/3.22/gtkmm-3.22.0.sha256sum +sha256 05da4d4b628fb20c8384630ddf478a3b5562952b2d6181fe28d58f6cbc0514f5 gtkmm-3.22.0.tar.xz diff --git a/package/gtkmm3/gtkmm3.mk b/package/gtkmm3/gtkmm3.mk index 8c3e079363..57b9b1fd57 100644 --- a/package/gtkmm3/gtkmm3.mk +++ b/package/gtkmm3/gtkmm3.mk @@ -4,8 +4,8 @@ # ################################################################################ -GTKMM3_VERSION_MAJOR = 3.20 -GTKMM3_VERSION = $(GTKMM3_VERSION_MAJOR).1 +GTKMM3_VERSION_MAJOR = 3.22 +GTKMM3_VERSION = $(GTKMM3_VERSION_MAJOR).0 GTKMM3_SOURCE = gtkmm-$(GTKMM3_VERSION).tar.xz GTKMM3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtkmm/$(GTKMM3_VERSION_MAJOR) GTKMM3_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) diff --git a/package/gtksourceview/Config.in b/package/gtksourceview/Config.in new file mode 100644 index 0000000000..e87969b15d --- /dev/null +++ b/package/gtksourceview/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_GTKSOURCEVIEW + bool "gtksourceview" + depends on BR2_PACKAGE_LIBGTK3 + select BR2_PACKAGE_LIBXML2 + help + GtkSourceView is a portable C library that extends the + standard GTK+ framework for multiline text editing with + support for configurable syntax highlighting, unlimited + undo/redo, search and replace, a completion framework, + printing and other features typical of a source code editor. + + https://projects.gnome.org/gtksourceview diff --git a/package/gtksourceview/gtksourceview.hash b/package/gtksourceview/gtksourceview.hash new file mode 100644 index 0000000000..f57fadc4e9 --- /dev/null +++ b/package/gtksourceview/gtksourceview.hash @@ -0,0 +1,2 @@ +# Hash from: http://ftp.gnome.org/pub/gnome/sources/gtksourceview/3.22/gtksourceview-3.22.2.sha256sum: +sha256 6ce84231dd0931cc747708434ca2f344c65a092dd6e1a800283fe0748773af5e gtksourceview-3.22.2.tar.xz diff --git a/package/gtksourceview/gtksourceview.mk b/package/gtksourceview/gtksourceview.mk new file mode 100644 index 0000000000..5e4ca0d22f --- /dev/null +++ b/package/gtksourceview/gtksourceview.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# gtksourceview +# +################################################################################ + +GTKSOURCEVIEW_VERSION_MAJOR = 3.22 +GTKSOURCEVIEW_VERSION = $(GTKSOURCEVIEW_VERSION_MAJOR).2 +GTKSOURCEVIEW_SOURCE = gtksourceview-$(GTKSOURCEVIEW_VERSION).tar.xz +GTKSOURCEVIEW_SITE = \ + http://ftp.gnome.org/pub/gnome/sources/gtksourceview/$(GTKSOURCEVIEW_VERSION_MAJOR) +GTKSOURCEVIEW_LICENSE = LGPLv2.1+ +GTKSOURCEVIEW_LICENSE_FILES = COPYING +GTKSOURCEVIEW_INSTALL_STAGING = YES +GTKSOURCEVIEW_DEPENDENCIES = host-pkgconf libglib2 libxml2 libgtk3 + +$(eval $(autotools-package)) diff --git a/package/guile/0003-remove_unused_funcs.patch b/package/guile/0003-remove_unused_funcs.patch deleted file mode 100644 index 3d70ee9fc9..0000000000 --- a/package/guile/0003-remove_unused_funcs.patch +++ /dev/null @@ -1,36 +0,0 @@ -Remove unused static inline functions str_upcase_l() and -str_downcase_l() that cause the compilation error: -'dereferencing pointer to incomplete type'. - -Signed-off-by: Pedro Aguilar - -diff -Nau guile-2.0.11.orig/libguile/i18n.c guile-2.0.11/libguile/i18n.c ---- guile-2.0.11.orig/libguile/i18n.c 2014-01-21 22:25:11.000000000 +0100 -+++ guile-2.0.11/libguile/i18n.c 2014-11-04 23:18:52.675435613 +0100 -@@ -851,26 +851,6 @@ - *dst = '\0'; - } - --#ifdef USE_GNU_LOCALE_API --static inline void --str_upcase_l (register char *dst, register const char *src, -- scm_t_locale locale) --{ -- for (; *src != '\0'; src++, dst++) -- *dst = toupper_l (*src, locale); -- *dst = '\0'; --} -- --static inline void --str_downcase_l (register char *dst, register const char *src, -- scm_t_locale locale) --{ -- for (; *src != '\0'; src++, dst++) -- *dst = tolower_l (*src, locale); -- *dst = '\0'; --} --#endif -- - - SCM_DEFINE (scm_string_locale_lt, "string-locale - -diff -Nura heimdal-1.5.3.orig/tools/krb5-config.in heimdal-1.5.3.vendor/tools/krb5-config.in ---- heimdal-1.5.3.orig/tools/krb5-config.in 2012-12-09 19:06:44.000000000 -0300 -+++ heimdal-1.5.3.vendor/tools/krb5-config.in 2013-12-18 15:49:45.283986300 -0300 -@@ -50,6 +50,10 @@ - do_usage=yes - usage_exit=0 - ;; -+ --vendor) -+ echo "Heimdal"; -+ exit 0 -+ ;; - --version) - echo "@PACKAGE@ @VERSION@" - exit 0 diff --git a/package/heimdal/0002-kadm5-fix-race-in-Makefile-with-kadm5_err.h.patch b/package/heimdal/0002-kadm5-fix-race-in-Makefile-with-kadm5_err.h.patch deleted file mode 100644 index 7361bf2f77..0000000000 --- a/package/heimdal/0002-kadm5-fix-race-in-Makefile-with-kadm5_err.h.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 18fe7d300f133c2b9eb93bb4bd81e4644979a74b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jakub=20=C4=8Cajka?= -Date: Tue, 1 Jul 2014 13:13:43 -0600 -Subject: [PATCH] kadm5: fix race in Makefile with kadm5_err.h - -When running make with -j4, occasionally kadm5 fails due to a missing -header file kadm5_err.h. Fix the race condition. - -Reported at https://bugzilla.redhat.com/1115164 - -Reviewed-by: Ken Dreyer - -Backported from upstream commit -6affa4cceceaa1369dd895f8acdd7a883ee65674. - -Signed-off-by: Thomas Petazzoni ---- - lib/kadm5/Makefile.am | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/kadm5/Makefile.am b/lib/kadm5/Makefile.am -index f8be3b1..1b399b1 100644 ---- a/lib/kadm5/Makefile.am -+++ b/lib/kadm5/Makefile.am -@@ -155,6 +155,7 @@ iprop-commands.c iprop-commands.h: iprop-commands.in - $(SLC) $(srcdir)/iprop-commands.in - - $(libkadm5srv_la_OBJECTS): kadm5_err.h -+$(libkadm5clnt_la_OBJECTS): kadm5_err.h - $(iprop_log_OBJECTS): iprop-commands.h - - client_glue.lo server_glue.lo: $(srcdir)/common_glue.c --- -2.4.5 - diff --git a/package/heimdal/heimdal.hash b/package/heimdal/heimdal.hash index f32d279d73..12770e17ff 100644 --- a/package/heimdal/heimdal.hash +++ b/package/heimdal/heimdal.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 8fe19e0f12ff0d0c2f20a6cf56727deaabd89db9c197288022fb489e103b730d heimdal-1.6rc2.tar.gz +sha256 cee58ab3a4ce79f243a3e73f465dac19fe2b93ef1c5ff244d6f1d689fedbde2d heimdal-7.1.0.tar.gz diff --git a/package/heimdal/heimdal.mk b/package/heimdal/heimdal.mk index 2f5c4b3fb8..36eb1b13bf 100644 --- a/package/heimdal/heimdal.mk +++ b/package/heimdal/heimdal.mk @@ -4,10 +4,11 @@ # ################################################################################ -HEIMDAL_VERSION = 1.6rc2 +HEIMDAL_VERSION = 7.1.0 HEIMDAL_SITE = http://www.h5l.org/dist/src -HEIMDAL_DEPENDENCIES = host-e2fsprogs host-ncurses host-pkgconf +HOST_HEIMDAL_DEPENDENCIES = host-e2fsprogs host-ncurses host-pkgconf HEIMDAL_INSTALL_STAGING = YES +HEIMDAL_MAKE = $(MAKE1) # static because of -fPIC issues with e2fsprogs on x86_64 host HOST_HEIMDAL_CONF_OPTS = \ --disable-shared \ @@ -23,12 +24,9 @@ HOST_HEIMDAL_CONF_OPTS = \ --without-hesiod \ --without-x \ --disable-heimdal-documentation -HOST_HEIMDAL_CONF_ENV = MAKEINFO=true LIBS=-pthread -HEIMDAL_MAKE = $(MAKE1) +HOST_HEIMDAL_CONF_ENV = MAKEINFO=true LIBS="-lpthread" HEIMDAL_LICENSE = BSD-3c HEIMDAL_LICENSE_FILES = LICENSE -# 0002-kadm5-fix-race-in-Makefile-with-kadm5_err.h.patch -HEIMDAL_AUTORECONF = YES # We need asn1_compile in the PATH for samba4 define HOST_HEIMDAL_MAKE_SYMLINK diff --git a/package/hiawatha/hiawatha.hash b/package/hiawatha/hiawatha.hash index 5709076891..636dfd5de0 100644 --- a/package/hiawatha/hiawatha.hash +++ b/package/hiawatha/hiawatha.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 3892e0a1836661c8dcc649f9ae965289f701640a618baf2c2287da9b78e36cf1 hiawatha-10.1.tar.gz +sha256 d76155430dc9100de412088bd68978a2a9052832609c7ac961dccaf2550c618a hiawatha-10.5.tar.gz diff --git a/package/hiawatha/hiawatha.mk b/package/hiawatha/hiawatha.mk index d30b1a1abd..abe57b7f7b 100644 --- a/package/hiawatha/hiawatha.mk +++ b/package/hiawatha/hiawatha.mk @@ -4,7 +4,7 @@ # ################################################################################ -HIAWATHA_VERSION = 10.1 +HIAWATHA_VERSION = 10.5 HIAWATHA_SITE = http://www.hiawatha-webserver.org/files HIAWATHA_DEPENDENCIES = zlib HIAWATHA_LICENSE = GPLv2 diff --git a/package/hidapi/Config.in b/package/hidapi/Config.in index 5119aac93d..f6a31bacd3 100644 --- a/package/hidapi/Config.in +++ b/package/hidapi/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_HIDAPI bool "hidapi" depends on BR2_PACKAGE_HAS_UDEV - depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBGUDEV select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE @@ -12,5 +12,5 @@ config BR2_PACKAGE_HIDAPI http://www.signal11.us/oss/hidapi/ -comment "hidapi needs udev /dev management and a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_HAS_UDEV +comment "hidapi needs udev /dev management and a toolchain w/ NPTL threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_HAS_UDEV diff --git a/package/hidapi/hidapi.hash b/package/hidapi/hidapi.hash index ba00df2e90..ed22c78866 100644 --- a/package/hidapi/hidapi.hash +++ b/package/hidapi/hidapi.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 33e206f5e145fc1bc6aeb55084d71b55d686533d23ad5bb762746ceba81e728b hidapi-d17db57b9d4354752e0af42f5f33007a42ef2906.tar.gz +sha256 f2ffe5dbba12dfa0a647ae71b1ec5612fed4c20322ef6f6fd46f6f9713ed1a8e hidapi-b5b2e1779b6cd2edda3066bbbf0921a2d6b1c3c0.tar.gz diff --git a/package/hidapi/hidapi.mk b/package/hidapi/hidapi.mk index 270836c6c1..9922efc029 100644 --- a/package/hidapi/hidapi.mk +++ b/package/hidapi/hidapi.mk @@ -6,7 +6,7 @@ # Use master version as the current stable is very old and some bugs # have been fixed since then. -HIDAPI_VERSION = d17db57b9d4354752e0af42f5f33007a42ef2906 +HIDAPI_VERSION = b5b2e1779b6cd2edda3066bbbf0921a2d6b1c3c0 HIDAPI_SITE = $(call github,signal11,hidapi,$(HIDAPI_VERSION)) HIDAPI_INSTALL_STAGING = YES # No configure provided, so we need to autoreconf. diff --git a/package/hiredis/Config.in b/package/hiredis/Config.in new file mode 100644 index 0000000000..1656355395 --- /dev/null +++ b/package/hiredis/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_HIREDIS + bool "hiredis" + help + Minimalistic C client for Redis >= 1.2 + + It is minimalistic because it just adds minimal support for + the protocol, but at the same time it uses a high level + printf-alike API in order to make it much higher level than + otherwise suggested by its minimal code base and the lack of + explicit bindings for every Redis command. + + https://github.com/redis/hiredis diff --git a/package/hiredis/hiredis.hash b/package/hiredis/hiredis.hash new file mode 100644 index 0000000000..2c788a677f --- /dev/null +++ b/package/hiredis/hiredis.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 717e6fc8dc2819bef522deaca516de9e51b9dfa68fe393b7db5c3b6079196f78 hiredis-v0.13.3.tar.gz diff --git a/package/hiredis/hiredis.mk b/package/hiredis/hiredis.mk new file mode 100644 index 0000000000..eb96711ab7 --- /dev/null +++ b/package/hiredis/hiredis.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# hiredis +# +################################################################################ + +HIREDIS_VERSION = v0.13.3 +HIREDIS_SITE = $(call github,redis,hiredis,$(HIREDIS_VERSION)) +HIREDIS_LICENSE = BSD-3c +HIREDIS_LICENSE_FILES = COPYING +HIREDIS_INSTALL_STAGING = YES + +HIREDIS_MAKE_OPTS = \ + $(TARGET_CONFIGURE_OPTS) \ + PREFIX=/usr + +HIREDIS_TARGETS = hiredis.pc +ifeq ($(BR2_STATIC_LIBS),y) +HIREDIS_TARGETS += static +else ifeq ($(BR2_SHARED_LIBS),y) +HIREDIS_TARGETS += dynamic +else ifeq $(BR2_SHARED_STATIC_LIBS),y) +HIREDIS_TARGETS += dynamic static +endif + +define HIREDIS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(HIREDIS_MAKE_OPTS) -C $(@D) \ + $(HIREDIS_TARGETS) +endef + +HIREDIS_INCLUDE_DIR = $(STAGING_DIR)/usr/include/hiredis + +# Do not call make install as this target will build shared and static libraries +define HIREDIS_INSTALL_STAGING_CMDS + mkdir -p $(HIREDIS_INCLUDE_DIR) + cp -dpfr $(@D)/hiredis.h $(@D)/async.h $(@D)/read.h $(@D)/sds.h \ + $(@D)/adapters $(HIREDIS_INCLUDE_DIR) + $(INSTALL) -D -m 0644 $(@D)/hiredis.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/hiredis.pc + $(INSTALL) -m 0644 -t $(STAGING_DIR)/usr/lib $(@D)/libhiredis* +endef + +define HIREDIS_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/lib + $(INSTALL) -m 0644 -t $(TARGET_DIR)/usr/lib $(@D)/libhiredis* +endef + +$(eval $(generic-package)) diff --git a/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch b/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch deleted file mode 100644 index 82c26398b6..0000000000 --- a/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 8057821706784608b828e769ccefbced95591e50 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 1 Nov 2015 18:18:17 +0200 -Subject: [PATCH] EAP-pwd peer: Fix last fragment length validation - -All but the last fragment had their length checked against the remaining -room in the reassembly buffer. This allowed a suitably constructed last -fragment frame to try to add extra data that would go beyond the buffer. -The length validation code in wpabuf_put_data() prevents an actual -buffer write overflow from occurring, but this results in process -termination. (CVE-2015-5315) - -Signed-off-by: Jouni Malinen ---- - src/eap_peer/eap_pwd.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c -index 1f78544..75ceef1 100644 ---- a/src/eap_peer/eap_pwd.c -+++ b/src/eap_peer/eap_pwd.c -@@ -903,7 +903,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - /* - * buffer and ACK the fragment - */ -- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { -+ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { - data->in_frag_pos += len; - if (data->in_frag_pos > wpabuf_size(data->inbuf)) { - wpa_printf(MSG_INFO, "EAP-pwd: Buffer overflow attack " -@@ -916,7 +916,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - return NULL; - } - wpabuf_put_data(data->inbuf, pos, len); -- -+ } -+ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { - resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, - EAP_PWD_HDR_SIZE, - EAP_CODE_RESPONSE, eap_get_id(reqData)); -@@ -930,10 +931,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - * we're buffering and this is the last fragment - */ - if (data->in_frag_pos) { -- wpabuf_put_data(data->inbuf, pos, len); - wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", - (int) len); -- data->in_frag_pos += len; - pos = wpabuf_head_u8(data->inbuf); - len = data->in_frag_pos; - } --- -1.9.1 - diff --git a/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch b/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch deleted file mode 100644 index bfc4c74e95..0000000000 --- a/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch +++ /dev/null @@ -1,51 +0,0 @@ -From bef802ece03f9ae9d52a21f0cf4f1bc2c5a1f8aa Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 1 Nov 2015 18:24:16 +0200 -Subject: [PATCH] EAP-pwd server: Fix last fragment length validation - -All but the last fragment had their length checked against the remaining -room in the reassembly buffer. This allowed a suitably constructed last -fragment frame to try to add extra data that would go beyond the buffer. -The length validation code in wpabuf_put_data() prevents an actual -buffer write overflow from occurring, but this results in process -termination. (CVE-2015-5314) - -Signed-off-by: Jouni Malinen ---- - src/eap_server/eap_server_pwd.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c -index cb83ff7..9f787ab 100644 ---- a/src/eap_server/eap_server_pwd.c -+++ b/src/eap_server/eap_server_pwd.c -@@ -970,7 +970,7 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - /* - * the first and all intermediate fragments have the M bit set - */ -- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { -+ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { - if ((data->in_frag_pos + len) > wpabuf_size(data->inbuf)) { - wpa_printf(MSG_DEBUG, "EAP-pwd: Buffer overflow " - "attack detected! (%d+%d > %d)", -@@ -981,6 +981,8 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - } - wpabuf_put_data(data->inbuf, pos, len); - data->in_frag_pos += len; -+ } -+ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { - wpa_printf(MSG_DEBUG, "EAP-pwd: Got a %d byte fragment", - (int) len); - return; -@@ -990,8 +992,6 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - * buffering fragments so that's how we know it's the last) - */ - if (data->in_frag_pos) { -- wpabuf_put_data(data->inbuf, pos, len); -- data->in_frag_pos += len; - pos = wpabuf_head_u8(data->inbuf); - len = data->in_frag_pos; - wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", --- -1.9.1 - diff --git a/package/hostapd/0003-vlan-fix-musl-build-error.patch b/package/hostapd/0003-vlan-fix-musl-build-error.patch deleted file mode 100644 index da1ffcb7d5..0000000000 --- a/package/hostapd/0003-vlan-fix-musl-build-error.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 67ba6ed9871b2cab16eeee93818f05d9c49ccbab Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Tue, 8 Mar 2016 12:05:01 +0100 -Subject: [PATCH] vlan: fix musl build error -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -caddr_t is legacy BSD and should be avoided [1]. - -This fixes compile errors with the musl libc: - -../src/ap/vlan_init.c: In function 'br_delif': -../src/ap/vlan_init.c:218:18: error: '__caddr_t' undeclared (first use in this function) - ifr.ifr_data = (__caddr_t) args; - -Upstream status: Pending [2] - -[1] http://stackoverflow.com/questions/6381526/what-is-the-significance-of-caddr-t-and-when-is-it-used -[2] http://lists.infradead.org/pipermail/hostap/2016-March/035350.html - -Signed-off-by: Jörg Krause ---- - src/ap/vlan_init.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/ap/vlan_init.c b/src/ap/vlan_init.c -index fd1c8dd..1670c0d 100644 ---- a/src/ap/vlan_init.c -+++ b/src/ap/vlan_init.c -@@ -215,7 +215,7 @@ static int br_delif(const char *br_name, const char *if_name) - args[1] = if_index; - - os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name)); -- ifr.ifr_data = (__caddr_t) args; -+ ifr.ifr_data = (void *) args; - - if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0 && errno != EINVAL) { - /* No error if interface already removed. */ -@@ -266,7 +266,7 @@ static int br_addif(const char *br_name, const char *if_name) - args[1] = if_index; - - os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name)); -- ifr.ifr_data = (__caddr_t) args; -+ ifr.ifr_data = (void *) args; - - if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0) { - if (errno == EBUSY) { -@@ -394,7 +394,7 @@ static int br_getnumports(const char *br_name) - - os_memset(ifindices, 0, sizeof(ifindices)); - os_strlcpy(ifr.ifr_name, br_name, sizeof(ifr.ifr_name)); -- ifr.ifr_data = (__caddr_t) arg; -+ ifr.ifr_data = (void *) arg; - - if (ioctl(fd, SIOCDEVPRIVATE, &ifr) < 0) { - wpa_printf(MSG_ERROR, "VLAN: %s: BRCTL_GET_PORT_LIST " --- -2.7.2 - diff --git a/package/hostapd/0004-vlan-fix-musl-libc-conflict-with-Linux-kernel-header.patch b/package/hostapd/0004-vlan-fix-musl-libc-conflict-with-Linux-kernel-header.patch deleted file mode 100644 index 3e753d619a..0000000000 --- a/package/hostapd/0004-vlan-fix-musl-libc-conflict-with-Linux-kernel-header.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 71a517e922c91e2c6cad28d339a081b5f6de0932 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Tue, 8 Mar 2016 21:07:12 +0100 -Subject: [PATCH] vlan: fix musl libc conflict with Linux kernel headers -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to both (in "utils/includes.h") and (in -) being included, the in6_addr is being redefined: once from -the C library headers and once from the Linux kernel headers. This causes some -build failures with for example the musl C library: - -In file included from /usr/include/linux/if_bridge.h:18, - from ../src/ap/vlan_init.c:17: -/usr/include/linux/in6.h:32: error: redefinition of 'struct in6_addr' -/usr/include/linux/in6.h:49: error: redefinition of 'struct sockaddr_in6' -/usr/include/linux/in6.h:59: error: redefinition of 'struct ipv6_mreq' - -Mixing C library and Linux kernel headers is a bit problematic [1] and should be -avoided if possible [2]. In order to fix this, define just the macros needed -from as done in Busybox for the brctl applet [3]. - -Upstream status: Pending [4] - -[1] https://sourceware.org/bugzilla/show_bug.cgi?id=15850 -[2] http://www.openwall.com/lists/musl/2015/10/06/1 -[3] https://git.busybox.net/busybox/commit/?id=5fa6d1a632505789409a2ba6cf8e112529f9db18 -[4] http://lists.infradead.org/pipermail/hostap/2016-March/035357.html - -Signed-off-by: Jörg Krause ---- - src/ap/vlan_init.c | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - -diff --git a/src/ap/vlan_init.c b/src/ap/vlan_init.c -index 1670c0d..f2e3da0 100644 ---- a/src/ap/vlan_init.c -+++ b/src/ap/vlan_init.c -@@ -14,7 +14,16 @@ - #include - #include - #include --#include -+/* From */ -+#define BRCTL_GET_VERSION 0 -+#define BRCTL_GET_BRIDGES 1 -+#define BRCTL_ADD_BRIDGE 2 -+#define BRCTL_DEL_BRIDGE 3 -+#define BRCTL_ADD_IF 4 -+#define BRCTL_DEL_IF 5 -+#define BRCTL_GET_BRIDGE_INFO 6 -+#define BRCTL_GET_PORT_LIST 7 -+#define BRCTL_SET_BRIDGE_FORWARD_DELAY 8 - #endif /* CONFIG_FULL_DYNAMIC_VLAN */ - - #include "utils/common.h" --- -2.7.2 - diff --git a/package/hostapd/0005-WPS-Reject-a-Credential-with-invalid-passphrase.patch b/package/hostapd/0005-WPS-Reject-a-Credential-with-invalid-passphrase.patch deleted file mode 100644 index 282aa952b5..0000000000 --- a/package/hostapd/0005-WPS-Reject-a-Credential-with-invalid-passphrase.patch +++ /dev/null @@ -1,85 +0,0 @@ -From ecbb0b3dc122b0d290987cf9c84010bbe53e1022 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Fri, 4 Mar 2016 17:20:18 +0200 -Subject: [PATCH] WPS: Reject a Credential with invalid passphrase - -WPA/WPA2-Personal passphrase is not allowed to include control -characters. Reject a Credential received from a WPS Registrar both as -STA (Credential) and AP (AP Settings) if the credential is for WPAPSK or -WPA2PSK authentication type and includes an invalid passphrase. - -This fixes an issue where hostapd or wpa_supplicant could have updated -the configuration file PSK/passphrase parameter with arbitrary data from -an external device (Registrar) that may not be fully trusted. Should -such data include a newline character, the resulting configuration file -could become invalid and fail to be parsed. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- -Patch status: upstream (ecbb0b3dc122b0d290987cf9c84010bbe53e1022) - - src/utils/common.c | 12 ++++++++++++ - src/utils/common.h | 1 + - src/wps/wps_attr_process.c | 10 ++++++++++ - 3 files changed, 23 insertions(+) - -diff --git a/src/utils/common.c b/src/utils/common.c -index 450e2c6519ba..27b7c02de10b 100644 ---- a/src/utils/common.c -+++ b/src/utils/common.c -@@ -697,6 +697,18 @@ int is_hex(const u8 *data, size_t len) - } - - -+int has_ctrl_char(const u8 *data, size_t len) -+{ -+ size_t i; -+ -+ for (i = 0; i < len; i++) { -+ if (data[i] < 32 || data[i] == 127) -+ return 1; -+ } -+ return 0; -+} -+ -+ - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len) -diff --git a/src/utils/common.h b/src/utils/common.h -index 701dbb236ed5..a97224070385 100644 ---- a/src/utils/common.h -+++ b/src/utils/common.h -@@ -488,6 +488,7 @@ const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len); - - char * wpa_config_parse_string(const char *value, size_t *len); - int is_hex(const u8 *data, size_t len); -+int has_ctrl_char(const u8 *data, size_t len); - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len); -diff --git a/src/wps/wps_attr_process.c b/src/wps/wps_attr_process.c -index eadb22fe2e78..e8c4579309ab 100644 ---- a/src/wps/wps_attr_process.c -+++ b/src/wps/wps_attr_process.c -@@ -229,6 +229,16 @@ static int wps_workaround_cred_key(struct wps_credential *cred) - cred->key_len--; - #endif /* CONFIG_WPS_STRICT */ - } -+ -+ -+ if (cred->auth_type & (WPS_AUTH_WPAPSK | WPS_AUTH_WPA2PSK) && -+ (cred->key_len < 8 || has_ctrl_char(cred->key, cred->key_len))) { -+ wpa_printf(MSG_INFO, "WPS: Reject credential with invalid WPA/WPA2-Personal passphrase"); -+ wpa_hexdump_ascii_key(MSG_INFO, "WPS: Network Key", -+ cred->key, cred->key_len); -+ return -1; -+ } -+ - return 0; - } - --- -2.8.1 - diff --git a/package/hostapd/hostapd.hash b/package/hostapd/hostapd.hash index 869849b640..fb891476b3 100644 --- a/package/hostapd/hostapd.hash +++ b/package/hostapd/hostapd.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8e272d954dc0d7026c264b79b15389ec2b2c555b32970de39f506b9f463ec74a hostapd-2.5.tar.gz +sha256 01526b90c1d23bec4b0f052039cc4456c2fd19347b4d830d1d58a0a6aea7117d hostapd-2.6.tar.gz diff --git a/package/hostapd/hostapd.mk b/package/hostapd/hostapd.mk index dca07c1bc5..a499011385 100644 --- a/package/hostapd/hostapd.mk +++ b/package/hostapd/hostapd.mk @@ -4,7 +4,7 @@ # ################################################################################ -HOSTAPD_VERSION = 2.5 +HOSTAPD_VERSION = 2.6 HOSTAPD_SITE = http://hostap.epitest.fi/releases HOSTAPD_SUBDIR = hostapd HOSTAPD_CONFIG = $(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR)/.config @@ -86,6 +86,8 @@ define HOSTAPD_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/sbin/hostapd $(INSTALL) -m 0755 -D $(@D)/$(HOSTAPD_SUBDIR)/hostapd_cli \ $(TARGET_DIR)/usr/bin/hostapd_cli + $(INSTALL) -m 0644 -D $(@D)/$(HOSTAPD_SUBDIR)/hostapd.conf \ + $(TARGET_DIR)/etc/hostapd.conf endef $(eval $(generic-package)) diff --git a/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch b/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch index 7c7538d1ab..8147490174 100644 --- a/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch +++ b/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch @@ -23,7 +23,7 @@ index 8b06428..680cad5 100755 @@ -27,8 +27,7 @@ #AC_PREREQ(2.59) - AC_INIT([HP Linux Imaging and Printing], [3.15.11], [3.15.11], [hplip]) + AC_INIT([HP Linux Imaging and Printing], [3.16.11], [3.16.11], [hplip]) -#AM_INIT_AUTOMAKE([1.9 foreign]) -AM_INIT_AUTOMAKE +AM_INIT_AUTOMAKE([1.9 foreign subdir-objects]) diff --git a/package/hplip/Config.in b/package/hplip/Config.in index 756567150d..176dc6a6a7 100644 --- a/package/hplip/Config.in +++ b/package/hplip/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_HPLIP depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_CUPS depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + depends on !BR2_STATIC_LIBS # libdl select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_JPEG help @@ -15,6 +16,7 @@ config BR2_PACKAGE_HPLIP http://hplipopensource.com/ -comment "hplip needs a toolchain w/ C++, threads" +comment "hplip needs a toolchain w/ C++, threads, dynamic library" depends on BR2_PACKAGE_CUPS - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/hplip/hplip.hash b/package/hplip/hplip.hash index 75ff7d3d0c..9dfb7a2ad0 100644 --- a/package/hplip/hplip.hash +++ b/package/hplip/hplip.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 33c4711bde04a34b81f3f70e6277a0375dded171469e5aa8b9cef1a14a407c6d hplip-3.15.11.tar.gz +sha256 f6e20cacb4891e4e60fc5de2213a10f8d0c68840f9b511aa38cfca0cb29f9b24 hplip-3.16.11.tar.gz diff --git a/package/hplip/hplip.mk b/package/hplip/hplip.mk index d70e2e926f..9a2c9db029 100644 --- a/package/hplip/hplip.mk +++ b/package/hplip/hplip.mk @@ -4,7 +4,7 @@ # ################################################################################ -HPLIP_VERSION = 3.15.11 +HPLIP_VERSION = 3.16.11 HPLIP_SITE = http://downloads.sourceforge.net/hplip/hplip HPLIP_AUTORECONF = YES HPLIP_DEPENDENCIES = cups libusb jpeg host-pkgconf diff --git a/package/htop/0001-native-affinity.patch b/package/htop/0001-native-affinity.patch deleted file mode 100644 index bf68e53ed1..0000000000 --- a/package/htop/0001-native-affinity.patch +++ /dev/null @@ -1,25 +0,0 @@ -# This patch removes the check for native_affinity for cross compiling. -# This patch has been pushed to htop on 23 November 2011, however, is -# not in the 1.0 release and may not be exactly what Hisham puts into -# the official build. -# -# Signed-off-by: Andy Kennedy -diff -Naur a/configure.ac b/configure.ac ---- a/configure.ac 2011-11-20 20:46:48.000000000 -0600 -+++ b/configure.ac 2011-11-23 10:41:44.000000000 -0600 -@@ -111,7 +111,6 @@ - if test "$cross_compiling" = "no"; then - AC_CHECK_FILE($PROCDIR/stat,,AC_MSG_ERROR(Cannot find /proc/stat. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.)) - AC_CHECK_FILE($PROCDIR/meminfo,,AC_MSG_ERROR(Cannot find /proc/meminfo. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.)) --fi - - AC_ARG_ENABLE(native_affinity, [AC_HELP_STRING([--enable-native-affinity], [enable native sched_setaffinity and sched_getaffinity for affinity support, disables hwloc])], ,enable_native_affinity="yes") - if test "x$enable_native_affinity" = xyes; then -@@ -130,6 +129,7 @@ - AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no])]) - fi -+fi - - AC_ARG_ENABLE(hwloc, [AC_HELP_STRING([--enable-hwloc], [enable hwloc support for CPU affinity])],, enable_hwloc="no") - if test "x$enable_hwloc" = xyes diff --git a/package/htop/htop.hash b/package/htop/htop.hash index 41d5a2edcb..cfea23f99b 100644 --- a/package/htop/htop.hash +++ b/package/htop/htop.hash @@ -1,2 +1,3 @@ -# From http://www.freelists.org/post/htop/ANN-htop-103 -md5 e768b9b55c033d9c1dffda72db3a6ac7 htop-1.0.3.tar.gz +# Hashes from: http://www.freelists.org/post/htop/ANN-htop-202 +md5 7d354d904bad591a931ad57e99fea84a htop-2.0.2.tar.gz +sha1 201f793f13dce2448e36047079875b9bd5bba75a htop-2.0.2.tar.gz diff --git a/package/htop/htop.mk b/package/htop/htop.mk index 629b04cda5..adc5090146 100644 --- a/package/htop/htop.mk +++ b/package/htop/htop.mk @@ -4,14 +4,18 @@ # ################################################################################ -HTOP_VERSION = 1.0.3 +HTOP_VERSION = 2.0.2 HTOP_SITE = http://hisham.hm/htop/releases/$(HTOP_VERSION) HTOP_DEPENDENCIES = ncurses -# For htop-01-native-affinity.patch -HTOP_AUTORECONF = YES -HTOP_CONF_OPTS = --disable-unicode -HTOP_CONF_ENV = ac_cv_file__proc_stat=yes ac_cv_file__proc_meminfo=yes +# Prevent htop build system from searching the host paths +HTOP_CONF_ENV = HTOP_NCURSES_CONFIG_SCRIPT=$(STAGING_DIR)/usr/bin/ncurses5-config HTOP_LICENSE = GPLv2 HTOP_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) +HTOP_CONF_OPTS += --enable-unicode +else +HTOP_CONF_OPTS += --disable-unicode +endif + $(eval $(autotools-package)) diff --git a/package/httping/httping.hash b/package/httping/httping.hash index 0368f75652..a50eedb744 100644 --- a/package/httping/httping.hash +++ b/package/httping/httping.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 dab59f02b08bfbbc978c005bb16d2db6fe21e1fc841fde96af3d497ddfc82084 httping-2.4.tgz +sha256 3e895a0a6d7bd79de25a255a1376d4da88eb09c34efdd0476ab5a907e75bfaf8 httping-2.5.tgz diff --git a/package/httping/httping.mk b/package/httping/httping.mk index 7e7609086e..3418ffa110 100644 --- a/package/httping/httping.mk +++ b/package/httping/httping.mk @@ -4,7 +4,7 @@ # ################################################################################ -HTTPING_VERSION = 2.4 +HTTPING_VERSION = 2.5 HTTPING_SOURCE = httping-$(HTTPING_VERSION).tgz HTTPING_SITE = http://www.vanheusden.com/httping HTTPING_LICENSE = GPLv2 diff --git a/package/i2c-tools/Config.in b/package/i2c-tools/Config.in index e83dbd65fa..b82c7dcdb0 100644 --- a/package/i2c-tools/Config.in +++ b/package/i2c-tools/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_I2C_TOOLS bool "i2c-tools" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Heterogeneous set of I2C tools for Linux diff --git a/package/i2c-tools/i2c-tools.hash b/package/i2c-tools/i2c-tools.hash deleted file mode 100644 index c12ffe845b..0000000000 --- a/package/i2c-tools/i2c-tools.hash +++ /dev/null @@ -1,2 +0,0 @@ -# locally computed hash -sha256 db5e69f2e2a6e3aa2ecdfe6a5f490b149c504468770f58921c8c5b8a7860a441 i2c-tools-3.1.2.tar.bz2 diff --git a/package/i2c-tools/i2c-tools.mk b/package/i2c-tools/i2c-tools.mk index 187bd09754..e16b940cae 100644 --- a/package/i2c-tools/i2c-tools.mk +++ b/package/i2c-tools/i2c-tools.mk @@ -4,9 +4,8 @@ # ################################################################################ -I2C_TOOLS_VERSION = 3.1.2 -I2C_TOOLS_SOURCE = i2c-tools-$(I2C_TOOLS_VERSION).tar.bz2 -I2C_TOOLS_SITE = http://dl.lm-sensors.org/i2c-tools/releases +I2C_TOOLS_VERSION = v3.1.2 +I2C_TOOLS_SITE = git://git.kernel.org/pub/scm/utils/i2c-tools/i2c-tools.git I2C_TOOLS_LICENSE = GPLv2+, GPLv2 (py-smbus) I2C_TOOLS_LICENSE_FILES = COPYING @@ -18,6 +17,10 @@ ifeq ($(BR2_PACKAGE_PYTHON3),y) I2C_TOOLS_DEPENDENCIES += python3 endif +ifeq ($(BR2_PACKAGE_BUSYBOX),y) +I2C_TOOLS_DEPENDENCIES += busybox +endif + # Build/install steps mirror the distutil python package type in the python package # infrastructure ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) @@ -50,7 +53,7 @@ endef define I2C_TOOLS_INSTALL_TARGET_CMDS for i in i2cdump i2cget i2cset i2cdetect; \ do \ - $(INSTALL) -m 755 -D $(@D)/tools/$$i $(TARGET_DIR)/usr/bin/$$i; \ + $(INSTALL) -m 755 -D $(@D)/tools/$$i $(TARGET_DIR)/usr/sbin/$$i; \ done $(I2C_TOOLS_INSTALL_PYSMBUS) endef diff --git a/package/ibrcommon/ibrcommon.mk b/package/ibrcommon/ibrcommon.mk index 5fa2cb5191..4d2d351c88 100644 --- a/package/ibrcommon/ibrcommon.mk +++ b/package/ibrcommon/ibrcommon.mk @@ -5,7 +5,6 @@ ################################################################################ IBRCOMMON_VERSION = 1.0.1 -IBRCOMMON_SOURCE = ibrcommon-$(IBRCOMMON_VERSION).tar.gz IBRCOMMON_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases IBRCOMMON_INSTALL_STAGING = YES IBRCOMMON_LICENSE = Apache-2.0 diff --git a/package/ibrdtn/ibrdtn.mk b/package/ibrdtn/ibrdtn.mk index 7bd9b9bf1d..3f805c4024 100644 --- a/package/ibrdtn/ibrdtn.mk +++ b/package/ibrdtn/ibrdtn.mk @@ -5,7 +5,6 @@ ################################################################################ IBRDTN_VERSION = 1.0.1 -IBRDTN_SOURCE = ibrdtn-$(IBRDTN_VERSION).tar.gz IBRDTN_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases IBRDTN_INSTALL_STAGING = YES IBRDTN_LICENSE = Apache-2.0 diff --git a/package/ibrdtnd/ibrdtnd.mk b/package/ibrdtnd/ibrdtnd.mk index 01ebb7ab36..0632ed36b7 100644 --- a/package/ibrdtnd/ibrdtnd.mk +++ b/package/ibrdtnd/ibrdtnd.mk @@ -5,7 +5,6 @@ ################################################################################ IBRDTND_VERSION = 1.0.1 -IBRDTND_SOURCE = ibrdtnd-$(IBRDTND_VERSION).tar.gz IBRDTND_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases IBRDTND_LICENSE = Apache-2.0 IBRDTND_LICENSE_FILES = COPYING diff --git a/package/icu/icu.hash b/package/icu/icu.hash index 4233ba3996..d578bfbf54 100644 --- a/package/icu/icu.hash +++ b/package/icu/icu.hash @@ -1,4 +1,4 @@ -# From https://ssl.icu-project.org/files/icu4c/57.1/icu4c-src-57_1.md5 -md5 976734806026a4ef8bdd17937c8898b9 icu4c-57_1-src.tgz +# From https://ssl.icu-project.org/files/icu4c/57.1/icu4c-src-58_2.md5 +md5 fac212b32b7ec7ab007a12dff1f3aea1 icu4c-58_2-src.tgz # Calculated based on the hash above -sha256 ff8c67cb65949b1e7808f2359f2b80f722697048e90e7cfc382ec1fe229e9581 icu4c-57_1-src.tgz +sha256 2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c icu4c-58_2-src.tgz diff --git a/package/icu/icu.mk b/package/icu/icu.mk index 3b40dfbd86..b9e42de94b 100644 --- a/package/icu/icu.mk +++ b/package/icu/icu.mk @@ -4,7 +4,7 @@ # ################################################################################ -ICU_VERSION = 57.1 +ICU_VERSION = 58.2 ICU_SOURCE = icu4c-$(subst .,_,$(ICU_VERSION))-src.tgz ICU_SITE = http://download.icu-project.org/files/icu4c/$(ICU_VERSION) ICU_LICENSE = ICU License @@ -25,6 +25,11 @@ ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) ICU_CONF_ENV += LIBS="-latomic" endif +# strtod_l() is not supported by musl; also xlocale.h is missing +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +ICU_CONF_ENV += ac_cv_func_strtod_l=no +endif + HOST_ICU_CONF_OPTS = \ --disable-samples \ --disable-tests \ diff --git a/package/ifenslave/Config.in b/package/ifenslave/Config.in new file mode 100644 index 0000000000..2203284db0 --- /dev/null +++ b/package/ifenslave/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_IFENSLAVE + bool "ifenslave" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + help + Configure network interfaces for parallel routing (bonding) + + http://anonscm.debian.org/cgit/collab-maint/ifenslave.git diff --git a/package/ifenslave/ifenslave.hash b/package/ifenslave/ifenslave.hash new file mode 100644 index 0000000000..dcf31d0904 --- /dev/null +++ b/package/ifenslave/ifenslave.hash @@ -0,0 +1,3 @@ +# From http://snapshot.debian.org/archive/debian/20170102T091407Z/pool/main/i/ifenslave/ifenslave_2.9.dsc +sha1 a17e88fa298ef337e872c8aa5d7a390921239d1a ifenslave_2.9.tar.xz +sha256 e5666c0b61347bd06f2394c16eca6895fcb5e5cc83d0a1c596a975274de5a3c9 ifenslave_2.9.tar.xz diff --git a/package/ifenslave/ifenslave.mk b/package/ifenslave/ifenslave.mk new file mode 100644 index 0000000000..1b823123ab --- /dev/null +++ b/package/ifenslave/ifenslave.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# ifenslave +# +################################################################################ + +IFENSLAVE_VERSION = 2.9 +IFENSLAVE_SOURCE = ifenslave_$(IFENSLAVE_VERSION).tar.xz +IFENSLAVE_SITE = http://snapshot.debian.org/archive/debian/20170102T091407Z/pool/main/i/ifenslave +IFENSLAVE_LICENSE = GPLv3+ +IFENSLAVE_LICENSE_FILES = debian/copyright +IFENSLAVE_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) + +# shell script, so nothing to build + +define IFENSLAVE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/ifenslave $(TARGET_DIR)/sbin/ifenslave +endef + +$(eval $(generic-package)) diff --git a/package/ifplugd/Config.in b/package/ifplugd/Config.in index cbb5128c4a..c4b5b5b9d1 100644 --- a/package/ifplugd/Config.in +++ b/package/ifplugd/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_IFPLUGD bool "ifplugd" # libdaemon uses fork() depends on BR2_USE_MMU + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_LIBDAEMON help Ifplugd is a daemon which will automatically configure your diff --git a/package/ifupdown/Config.in b/package/ifupdown/Config.in index 1e11e4ee0a..e683201736 100644 --- a/package/ifupdown/Config.in +++ b/package/ifupdown/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_IFUPDOWN depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # iproute2 # Default/our uclibc lacks wordexp() depends on !BR2_TOOLCHAIN_USES_UCLIBC + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # runtime for ip binary select BR2_PACKAGE_IPROUTE2 if !BR2_PACKAGE_BUSYBOX # runtime for run-parts @@ -13,7 +14,8 @@ config BR2_PACKAGE_IFUPDOWN https://tracker.debian.org/pkg/ifupdown -comment "ifupdown needs an (e)glibc or musl toolchain w/ headers >= 3.0" +comment "ifupdown needs a glibc or musl toolchain w/ headers >= 3.0" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_USES_UCLIBC || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/ifupdown/ifupdown.hash b/package/ifupdown/ifupdown.hash index cd180add67..01353c639b 100644 --- a/package/ifupdown/ifupdown.hash +++ b/package/ifupdown/ifupdown.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/i/ifupdown/ifupdown_0.8.10.dsc -sha256 d4730441b9234e5dcaab7dd688ad48ec17e130d1534a357b1c4fff13cf741b0c ifupdown_0.8.10.tar.xz +# From http://ftp.de.debian.org/debian/pool/main/i/ifupdown/ifupdown_0.8.16.dsc +sha256 601416c12e39ac29022951a2867aed5c607f732ac57fd51517bfba92a4cc4fb0 ifupdown_0.8.16.tar.xz diff --git a/package/ifupdown/ifupdown.mk b/package/ifupdown/ifupdown.mk index 1421a67e6a..ad0e513f93 100644 --- a/package/ifupdown/ifupdown.mk +++ b/package/ifupdown/ifupdown.mk @@ -4,9 +4,9 @@ # ################################################################################ -IFUPDOWN_VERSION = 0.8.10 +IFUPDOWN_VERSION = 0.8.16 IFUPDOWN_SOURCE = ifupdown_$(IFUPDOWN_VERSION).tar.xz -IFUPDOWN_SITE = http://snapshot.debian.org/archive/debian/20160122T224509Z/pool/main/i/ifupdown +IFUPDOWN_SITE = http://snapshot.debian.org/archive/debian/20160922T165503Z/pool/main/i/ifupdown IFUPDOWN_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) IFUPDOWN_LICENSE = GPLv2+ IFUPDOWN_LICENSE_FILES = COPYING diff --git a/package/igd2-for-linux/Config.in b/package/igd2-for-linux/Config.in new file mode 100644 index 0000000000..157cc6f30b --- /dev/null +++ b/package/igd2-for-linux/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_IGD2_FOR_LINUX + bool "igd2-for-linux" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + select BR2_PACKAGE_IPTABLES # runtime + select BR2_PACKAGE_LIBUPNP + help + This is The Linux UPnP Internet Gateway Device 2. It is + modified from the original Linux UPnP Internet Gateway Device + [http://linux-igd.sourceforge.net/] according to UPnP + InternetGatewayDevice:2 specifications. + + It implements the UPnP Internet Gateway Device version 2 + specification (IGDv2) and allows UPnP aware clients, such as + MSN Messenger, Azureus or Miranda to work properly from behind + a NAT firewall. + + Please edit /etc/upnpd.conf before using upnpd! + + https://github.com/ffontaine/igd2-for-linux + +comment "igd2-for-linux needs a toolchain w/ threads, wchar" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/igd2-for-linux/S99upnpd b/package/igd2-for-linux/S99upnpd new file mode 100644 index 0000000000..c023fa4746 --- /dev/null +++ b/package/igd2-for-linux/S99upnpd @@ -0,0 +1,67 @@ +#!/bin/sh + +NAME=upnpd +PIDFILE=/var/run/$NAME.pid +DAEMON=/usr/sbin/$NAME +CFGFILE=/etc/default/$NAME + +LAN=eth0 +WAN=eth0 + +# For the UPnP library to function correctly, networking must be configured +# properly for multicasting as described in +# https://sourceforge.net/p/pupnp/code/ci/master/tree/README. +# Without this addition, device advertisements and control point searches will +# not function. +# However, the route has to be configured once for all UPnP applications +# (igd2-for-linux, ushare, ...) so do not manage UPnP route by default +MANAGE_UPNP_MULTICAST_ROUTE_ON_LAN=0 + +# Read configuration variable file if it is present +if [ -f $CFGFILE ]; then + . $CFGFILE +fi + +DAEMON_ARGS="-f $WAN $LAN" + +start() { + if [ $MANAGE_UPNP_MULTICAST_ROUTE_ON_LAN != 0 ]; then + printf "Add UPnP multicast route on $LAN\n" + route add -net 239.0.0.0 netmask 255.0.0.0 $LAN + fi + printf "Starting $NAME: " + start-stop-daemon -S -q -m -b -p $PIDFILE --exec $DAEMON -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping $NAME: " + start-stop-daemon -K -q -p $PIDFILE + [ $? = 0 ] && echo "OK" || echo "FAIL" + if [ $MANAGE_UPNP_MULTICAST_ROUTE_ON_LAN != 0 ]; then + printf "Remove UPnP multicast route on $LAN\n" + route del -net 239.0.0.0 netmask 255.0.0.0 $LAN + fi +} + +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac + +exit $? diff --git a/package/igd2-for-linux/igd2-for-linux.hash b/package/igd2-for-linux/igd2-for-linux.hash new file mode 100644 index 0000000000..f1c9a7bd3e --- /dev/null +++ b/package/igd2-for-linux/igd2-for-linux.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 523545a26b0d662e9f6913bec2518df6e70f4d497935d88983d994336a1b0ea9 igd2-for-linux-v1.2.tar.gz diff --git a/package/igd2-for-linux/igd2-for-linux.mk b/package/igd2-for-linux/igd2-for-linux.mk new file mode 100644 index 0000000000..8944c0521e --- /dev/null +++ b/package/igd2-for-linux/igd2-for-linux.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# igd2-for-linux +# +################################################################################ + +IGD2_FOR_LINUX_VERSION = v1.2 +IGD2_FOR_LINUX_SITE = $(call github,ffontaine,igd2-for-linux,$(IGD2_FOR_LINUX_VERSION)) + +IGD2_FOR_LINUX_LICENSE = GPLv2 +IGD2_FOR_LINUX_LICENSE_FILES = linuxigd2/doc/LICENSE + +IGD2_FOR_LINUX_DEPENDENCIES = libupnp + +IGD2_FOR_LINUX_BUILD_DIR = $(@D)/linuxigd2 +IGD2_FOR_LINUX_CONF_DIR = $(IGD2_FOR_LINUX_BUILD_DIR)/configs + +define IGD2_FOR_LINUX_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(IGD2_FOR_LINUX_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + LIBUPNP_PREFIX="$(STAGING_DIR)/usr" \ + all +endef + +define IGD2_FOR_LINUX_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(IGD2_FOR_LINUX_BUILD_DIR)/bin/upnpd \ + $(TARGET_DIR)/usr/sbin/upnpd + $(INSTALL) -D -m 0644 $(IGD2_FOR_LINUX_CONF_DIR)/upnpd.conf \ + $(TARGET_DIR)/etc/upnpd.conf + mkdir -p $(TARGET_DIR)/etc/linuxigd/ + cp -dpfr $(IGD2_FOR_LINUX_CONF_DIR)/*.{xml,png} \ + $(TARGET_DIR)/etc/linuxigd/ +endef + +define IGD2_FOR_LINUX_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/igd2-for-linux/S99upnpd \ + $(TARGET_DIR)/etc/init.d/S99upnpd +endef + +define IGD2_FOR_LINUX_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/igd2-for-linux/upnpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/upnpd.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/upnpd.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/upnpd.service +endef + +$(eval $(generic-package)) diff --git a/package/igd2-for-linux/upnpd.service b/package/igd2-for-linux/upnpd.service new file mode 100644 index 0000000000..91a5b4ca28 --- /dev/null +++ b/package/igd2-for-linux/upnpd.service @@ -0,0 +1,22 @@ +[Unit] +Description=UPnP Internet Gateway Device version 2 daemon +After=network.target + +[Service] +Environment="LAN=eth0" +Environment="WAN=eth0" +EnvironmentFile=/etc/default/upnpd +# For the UPnP library to function correctly, networking must be configured +# properly for multicasting as described in +# https://sourceforge.net/p/pupnp/code/ci/master/tree/README. +# Without this addition, device advertisements and control point searches will +# not function. +# However, the route has to be configured once for all UPnP applications +# (igd2-for-linux, ushare, ...) so do not manage UPnP route by default +#ExecStartPre=/sbin/route add -net 239.0.0.0 netmask 255.0.0.0 $LAN +#ExecStopPost=/sbin/route del -net 239.0.0.0 netmask 255.0.0.0 $LAN +ExecStart=/usr/sbin/upnpd -f $WAN $LAN +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/igmpproxy/0001-uclinux.patch b/package/igmpproxy/0001-uclinux.patch deleted file mode 100644 index 7fa4a23830..0000000000 --- a/package/igmpproxy/0001-uclinux.patch +++ /dev/null @@ -1,16 +0,0 @@ -configure.ac: uclinux is also linux - -Signed-off-by: Gustavo Zacarias - -diff -Nura igmpproxy-0.1.orig/configure.ac igmpproxy-0.1/configure.ac ---- igmpproxy-0.1.orig/configure.ac 2014-03-12 18:43:02.369323771 -0300 -+++ igmpproxy-0.1/configure.ac 2014-03-12 18:43:22.129979179 -0300 -@@ -7,7 +7,7 @@ - - AC_CANONICAL_HOST - case $host_os in -- linux*) os=linux;; -+ linux*|uclinux*) os=linux;; - freebsd*) os=freebsd;; - netbsd*) os=netbsd;; - openbsd*) os=openbsd;; diff --git a/package/igmpproxy/Config.in b/package/igmpproxy/Config.in index a9e4c1cc6a..37f39b289c 100644 --- a/package/igmpproxy/Config.in +++ b/package/igmpproxy/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_IGMPPROXY bool "igmpproxy" + depends on BR2_USE_MMU # fork() depends on BR2_USE_WCHAR help A simple dynamic Multicast Routing Daemon @@ -10,4 +11,5 @@ config BR2_PACKAGE_IGMPPROXY http://sourceforge.net/projects/igmpproxy/ comment "igmpproxy needs a toolchain w/ wchar" + depends on BR2_USE_MMU depends on !BR2_USE_WCHAR diff --git a/package/igmpproxy/igmpproxy.hash b/package/igmpproxy/igmpproxy.hash index f7d3b1eb25..98dc242fb2 100644 --- a/package/igmpproxy/igmpproxy.hash +++ b/package/igmpproxy/igmpproxy.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 ee18ff3d8c3ae3a29dccb7e5eedf332337330020168bd95a11cece8d7d7ee6ae igmpproxy-0.1.tar.gz +sha256 2be2171cf273678810283937f7752dc9b8402456d0a03ee55f06ca52fadf075f igmpproxy-a731683d1a65956fa05024b0597b105fe6a3a122.tar.gz diff --git a/package/igmpproxy/igmpproxy.mk b/package/igmpproxy/igmpproxy.mk index cdf3774bdf..98168721f8 100644 --- a/package/igmpproxy/igmpproxy.mk +++ b/package/igmpproxy/igmpproxy.mk @@ -4,9 +4,8 @@ # ################################################################################ -IGMPPROXY_VERSION = 0.1 -IGMPPROXY_SITE = http://downloads.sourceforge.net/project/igmpproxy/igmpproxy/$(IGMPPROXY_VERSION) -# igmpproxy-01-uclinux.patch +IGMPPROXY_VERSION = a731683d1a65956fa05024b0597b105fe6a3a122 +IGMPPROXY_SITE = $(call github,pali,igmpproxy,$(IGMPPROXY_VERSION)) IGMPPROXY_AUTORECONF = YES IGMPPROXY_LICENSE = GPLv2+ IGMPPROXY_LICENSE_FILES = COPYING diff --git a/package/imagemagick/0001-png.c-unbreak-build-without-JPEG-support.patch b/package/imagemagick/0001-png.c-unbreak-build-without-JPEG-support.patch new file mode 100644 index 0000000000..00a1045bb7 --- /dev/null +++ b/package/imagemagick/0001-png.c-unbreak-build-without-JPEG-support.patch @@ -0,0 +1,47 @@ +From 5d0e9c53f49022df5154eb3c04900f48b1c6448e Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Mon, 6 Feb 2017 17:39:31 +0100 +Subject: [PATCH] png.c: unbreak build without JPEG support + +Since commit a9e228f8ac26 (Implemented a private PNG caNv (canvas) chunk), +PNGsLong gets called unconditionally, but it is only defined if JPEG +support is enabled (which defines JNG_SUPPORTED), breaking the build: + +MagickCore/.libs/libMagickCore-7.Q16HDRI.a(MagickCore_libMagickCore_7_Q16HDRI_la-png.o): In function `WriteOnePNGImage': +png.c:(.text+0x748d): undefined reference to `PNGsLong' +png.c:(.text+0x74b7): undefined reference to `PNGsLong' + +For build log, see: +http://autobuild.buildroot.net/results/d20/d20eecec8e7b947759185f77a6c8e610dd7393f3/build-end.log + +Fix it by unconditionally defining the helper function. + +Submitted-upstream: https://github.com/ImageMagick/ImageMagick/pull/373 +Signed-off-by: Peter Korsgaard +--- + coders/png.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/coders/png.c b/coders/png.c +index aebe59281..1328b1aab 100644 +--- a/coders/png.c ++++ b/coders/png.c +@@ -1229,7 +1229,6 @@ static void PNGLong(png_bytep p,png_uint_32 value) + *p++=(png_byte) (value & 0xff); + } + +-#if defined(JNG_SUPPORTED) + static void PNGsLong(png_bytep p,png_int_32 value) + { + *p++=(png_byte) ((value >> 24) & 0xff); +@@ -1237,7 +1236,6 @@ static void PNGsLong(png_bytep p,png_int_32 value) + *p++=(png_byte) ((value >> 8) & 0xff); + *p++=(png_byte) (value & 0xff); + } +-#endif + + static void PNGShort(png_bytep p,png_uint_16 value) + { +-- +2.11.0 + diff --git a/package/imagemagick/imagemagick.hash b/package/imagemagick/imagemagick.hash index 9a2a3eee56..90e1db5389 100644 --- a/package/imagemagick/imagemagick.hash +++ b/package/imagemagick/imagemagick.hash @@ -1,2 +1,2 @@ # From http://www.imagemagick.org/download/releases/digest.rdf -sha256 2ea0fef839cd5d6f134502b7cf7ee0e57a3f230b19771515d4aa44354f4c6b3b ImageMagick-6.9.4-1.tar.xz +sha256 1ee004740b7ab47fff3c92ae4a89dcbd0181c4d5f31fcb7e3697412ea384a0da ImageMagick-7.0.4-6.tar.xz diff --git a/package/imagemagick/imagemagick.mk b/package/imagemagick/imagemagick.mk index c952c2a5d1..a91729736b 100644 --- a/package/imagemagick/imagemagick.mk +++ b/package/imagemagick/imagemagick.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMAGEMAGICK_VERSION = 6.9.4-1 +IMAGEMAGICK_VERSION = 7.0.4-6 IMAGEMAGICK_SOURCE = ImageMagick-$(IMAGEMAGICK_VERSION).tar.xz IMAGEMAGICK_SITE = http://www.imagemagick.org/download/releases IMAGEMAGICK_LICENSE = Apache-2.0 @@ -12,7 +12,7 @@ IMAGEMAGICK_LICENSE_FILES = LICENSE IMAGEMAGICK_INSTALL_STAGING = YES IMAGEMAGICK_CONFIG_SCRIPTS = \ - $(addsuffix -config,Magick MagickCore MagickWand Wand) + $(addsuffix -config,MagickCore MagickWand) ifeq ($(BR2_INSTALL_LIBSTDCPP)$(BR2_USE_WCHAR),yy) IMAGEMAGICK_CONFIG_SCRIPTS += Magick++-config @@ -23,17 +23,20 @@ IMAGEMAGICK_CONF_ENV = ac_cv_sys_file_offset_bits=64 IMAGEMAGICK_CONF_OPTS = \ --program-transform-name='s,,,' \ --disable-openmp \ - --without-perl \ - --without-wmf \ - --without-openexr \ - --without-jp2 \ - --without-jbig \ - --without-gvc \ --without-djvu \ --without-dps \ - --without-gslib \ + --without-flif \ --without-fpx \ - --without-x + --without-gslib \ + --without-gvc \ + --without-jbig \ + --without-lqr \ + --without-openexr \ + --without-perl \ + --without-raqm \ + --without-wmf \ + --without-x \ + --with-gs-font-dir=/usr/share/fonts/gs IMAGEMAGICK_DEPENDENCIES = host-pkgconf @@ -89,6 +92,13 @@ else IMAGEMAGICK_CONF_OPTS += --without-xml endif +ifeq ($(BR2_PACKAGE_PANGO),y) +IMAGEMAGICK_CONF_OPTS += --with-pango +IMAGEMAGICK_DEPENDENCIES += pango +else +IMAGEMAGICK_CONF_OPTS += --without-pango +endif + ifeq ($(BR2_PACKAGE_TIFF),y) IMAGEMAGICK_CONF_OPTS += --with-tiff IMAGEMAGICK_DEPENDENCIES += tiff @@ -96,6 +106,13 @@ else IMAGEMAGICK_CONF_OPTS += --without-tiff endif +ifeq ($(BR2_PACKAGE_XZ),y) +IMAGEMAGICK_CONF_OPTS += --with-lzma +IMAGEMAGICK_DEPENDENCIES += xz +else +IMAGEMAGICK_CONF_OPTS += --without-lzma +endif + ifeq ($(BR2_PACKAGE_FFTW),y) # configure script misdetects these leading to build errors IMAGEMAGICK_CONF_ENV += ac_cv_func_creal=yes ac_cv_func_cimag=yes diff --git a/package/imlib2/imlib2.mk b/package/imlib2/imlib2.mk index 9781777012..7da032f9ad 100644 --- a/package/imlib2/imlib2.mk +++ b/package/imlib2/imlib2.mk @@ -10,7 +10,6 @@ IMLIB2_SITE = http://downloads.sourceforge.net/project/enlightenment/imlib2-src/ IMLIB2_LICENSE = imlib2 license IMLIB2_LICENSE_FILES = COPYING -IMLIB2_AUTORECONF = YES IMLIB2_INSTALL_STAGING = YES IMLIB2_DEPENDENCIES = host-pkgconf freetype IMLIB2_CONF_OPTS = --with-freetype-config=$(STAGING_DIR)/usr/bin/freetype-config diff --git a/package/imx-usb-loader/Config.in.host b/package/imx-usb-loader/Config.in.host index aefa01b2b4..a4a0f88531 100644 --- a/package/imx-usb-loader/Config.in.host +++ b/package/imx-usb-loader/Config.in.host @@ -1,5 +1,5 @@ config BR2_PACKAGE_HOST_IMX_USB_LOADER - bool "host-imx-usb loader" + bool "host imx-usb-loader" depends on BR2_arm help This package contains tools to download and execute code diff --git a/package/imx-usb-loader/imx-usb-loader.hash b/package/imx-usb-loader/imx-usb-loader.hash new file mode 100644 index 0000000000..3e02038997 --- /dev/null +++ b/package/imx-usb-loader/imx-usb-loader.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 40e1e36791e91366b13f57b16b32e75cf05e7177b2813f1bf2446419d0ed44eb imx-usb-loader-9b0e81cf9511c3a27cf635407714caa2793b570c.tar.gz diff --git a/package/imx-usb-loader/imx-usb-loader.mk b/package/imx-usb-loader/imx-usb-loader.mk index 280ffc0401..0cd9637c50 100644 --- a/package/imx-usb-loader/imx-usb-loader.mk +++ b/package/imx-usb-loader/imx-usb-loader.mk @@ -4,11 +4,11 @@ # ################################################################################ -IMX_USB_LOADER_VERSION = f96aee286ea17c832b7ec922dd76842deb5ce299 +IMX_USB_LOADER_VERSION = 9b0e81cf9511c3a27cf635407714caa2793b570c IMX_USB_LOADER_SITE = $(call github,boundarydevices,imx_usb_loader,$(IMX_USB_LOADER_VERSION)) IMX_USB_LOADER_LICENSE = LGPLv2.1+ IMX_USB_LOADER_LICENSE_FILES = COPYING -IMX_USB_LOADER_DEPENDENCIES = host-libusb host-pkgconf +HOST_IMX_USB_LOADER_DEPENDENCIES = host-libusb host-pkgconf define HOST_IMX_USB_LOADER_BUILD_CMDS $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) diff --git a/package/inadyn/Config.in b/package/inadyn/Config.in index 65f6851cb2..d03db83e3a 100644 --- a/package/inadyn/Config.in +++ b/package/inadyn/Config.in @@ -2,6 +2,8 @@ config BR2_PACKAGE_INADYN bool "inadyn" depends on BR2_USE_MMU # Uses fork() depends on !BR2_STATIC_LIBS # dlopen() + select BR2_PACKAGE_LIBCONFUSE + select BR2_PACKAGE_LIBITE help INADYN is a free DynDNS client. It gives the possibility to have your own fixed hostname registered on the internet, diff --git a/package/inadyn/inadyn.conf b/package/inadyn/inadyn.conf index ab8aa3611c..1b29027606 100644 --- a/package/inadyn/inadyn.conf +++ b/package/inadyn/inadyn.conf @@ -1,11 +1,11 @@ # Basic configuration file for inadyn # # /etc/inadyn.conf -pidfile /var/run/inadyn.pid -update_period_sec 600 # Check for a new IP every 600 seconds -username test # replace 'test' with your username -password test # replace 'test' with your password -dyndns_system default@dyndns.org # replace w/ your provider +iface = eth0 +period = 300 -alias test.homeip.net -# replace 'test.homeip.net' with yourdomainname for actual (non-test) use +provider default@dyndns.org { + username = test + password = test + hostname = test +} diff --git a/package/inadyn/inadyn.hash b/package/inadyn/inadyn.hash index 940bd16fba..a4e60c96c7 100644 --- a/package/inadyn/inadyn.hash +++ b/package/inadyn/inadyn.hash @@ -1,2 +1,2 @@ -# From https://github.com/troglobit/inadyn/releases/download/1.99.12/inadyn-1.99.12.tar.xz.md5 -md5 a620c9eab9cd31c8923e7264b08376f3 inadyn-1.99.12.tar.xz +# Locally computed +sha256 763c53eb3856decfe8b921cab8a54b428b079a62264fbcf6c89690713d63529a inadyn-v2.0.tar.gz diff --git a/package/inadyn/inadyn.mk b/package/inadyn/inadyn.mk index 8ceca4c352..f23955bbaf 100644 --- a/package/inadyn/inadyn.mk +++ b/package/inadyn/inadyn.mk @@ -4,11 +4,18 @@ # ################################################################################ -INADYN_VERSION = 1.99.12 -INADYN_SITE = https://github.com/troglobit/inadyn/releases/download/$(INADYN_VERSION) -INADYN_SOURCE = inadyn-$(INADYN_VERSION).tar.xz +INADYN_VERSION = v2.0 +INADYN_SITE = $(call github,troglobit,inadyn,$(INADYN_VERSION)) INADYN_LICENSE = GPLv2+ INADYN_LICENSE_FILES = COPYING +INADYN_AUTORECONF = YES +INADYN_DEPENDENCIES = host-pkgconf libconfuse libite + +# Needed for autoreconf to work properly, see ./autogen.sh +define INADYN_FIXUP_M4_DIR + mkdir $(@D)/m4 +endef +INADYN_POST_EXTRACT_HOOKS += INADYN_FIXUP_M4_DIR ifeq ($(BR2_PACKAGE_OPENSSL),y) INADYN_CONF_OPTS += --enable-openssl diff --git a/package/initscripts/init.d/S40network b/package/initscripts/init.d/S40network index 7b11d8b902..642c5013ac 100755 --- a/package/initscripts/init.d/S40network +++ b/package/initscripts/init.d/S40network @@ -8,12 +8,14 @@ mkdir -p /run/network case "$1" in start) - echo "Starting network..." + printf "Starting network: " /sbin/ifup -a + [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - printf "Stopping network..." + printf "Stopping network: " /sbin/ifdown -a + [ $? = 0 ] && echo "OK" || echo "FAIL" ;; restart|reload) "$0" stop diff --git a/package/initscripts/initscripts.mk b/package/initscripts/initscripts.mk index a5d8db7e9a..cfee155570 100644 --- a/package/initscripts/initscripts.mk +++ b/package/initscripts/initscripts.mk @@ -4,9 +4,6 @@ # ################################################################################ -# source included in buildroot -INITSCRIPTS_SOURCE = - define INITSCRIPTS_INSTALL_TARGET_CMDS mkdir -p $(TARGET_DIR)/etc/init.d $(INSTALL) -D -m 0755 package/initscripts/init.d/* $(TARGET_DIR)/etc/init.d/ diff --git a/package/inotify-tools/0001-gcc6.patch b/package/inotify-tools/0001-gcc6.patch new file mode 100644 index 0000000000..aae622ebf5 --- /dev/null +++ b/package/inotify-tools/0001-gcc6.patch @@ -0,0 +1,49 @@ +From 5fe3ba82134d8b85adc69cf1d6c5742b4bde20b4 Mon Sep 17 00:00:00 2001 +From: James Knight +Date: Thu, 16 Jun 2016 00:00:57 -0400 +Subject: [PATCH] correct code alignment +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The following replaces the indented section of code from spaces to tabs. +No functional changes. Aside from consistency, this resolves a GCC 6 +build issue with the flag `-Werror=misleading-indentation` enabled: + + inotifywait.c: In function ‘output_event_csv’: + inotifywait.c:126:5: error: this ‘if’ clause does not guard... + [-Werror=misleading-indentation] + if (filename != NULL) + ^~ + inotifywait.c:129:2: note: ...this statement, but the latter is + misleadingly indented as if it is guarded + by the ‘if’ + printf("%s,", csv_escape( inotifytools_event_to_str( event->mask ) + ) ); + ^~~~~~ + +Signed-off-by: James Knight +Signed-off-by: Bernd Kuhls +(downloaded from upstream pull request + https://github.com/rvoicilas/inotify-tools/pull/65) +--- + src/inotifywait.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/inotifywait.c b/src/inotifywait.c +index c5ce5e3..404a85b 100644 +--- a/src/inotifywait.c ++++ b/src/inotifywait.c +@@ -122,9 +122,9 @@ void validate_format( char * fmt ) { + + + void output_event_csv( struct inotify_event * event ) { +- char *filename = csv_escape(inotifytools_filename_from_wd(event->wd)); +- if (filename != NULL) +- printf("%s,", filename); ++ char *filename = csv_escape(inotifytools_filename_from_wd(event->wd)); ++ if (filename != NULL) ++ printf("%s,", filename); + + printf("%s,", csv_escape( inotifytools_event_to_str( event->mask ) ) ); + if ( event->len > 0 ) diff --git a/package/inotify-tools/inotify-tools.hash b/package/inotify-tools/inotify-tools.hash new file mode 100644 index 0000000000..0993dc44c4 --- /dev/null +++ b/package/inotify-tools/inotify-tools.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 628b8efabb65a739dd747fe43b73b29a609b5cfa9628caa127764ed77766a6e1 inotify-tools-1df9af4d6cd0f4af4b1b19254bcf056aed4ae395.tar.gz diff --git a/package/inotify-tools/inotify-tools.mk b/package/inotify-tools/inotify-tools.mk index 3502525f61..e8b1498e6f 100644 --- a/package/inotify-tools/inotify-tools.mk +++ b/package/inotify-tools/inotify-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -INOTIFY_TOOLS_VERSION = 06007d350faa8731c67e186923ab417486104719 +INOTIFY_TOOLS_VERSION = 1df9af4d6cd0f4af4b1b19254bcf056aed4ae395 INOTIFY_TOOLS_SITE = $(call github,rvoicilas,inotify-tools,$(INOTIFY_TOOLS_VERSION)) INOTIFY_TOOLS_LICENSE = GPL INOTIFY_TOOLS_LICENSE_FILES = COPYING diff --git a/package/input-event-daemon/input-event-daemon.hash b/package/input-event-daemon/input-event-daemon.hash new file mode 100644 index 0000000000..d5364a95e3 --- /dev/null +++ b/package/input-event-daemon/input-event-daemon.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1d9a44160aead88080093f74be9d709fbbc2637f982958e2673d80aedacd0a65 input-event-daemon-v0.1.3.tar.gz diff --git a/package/input-event-daemon/input-event-daemon.mk b/package/input-event-daemon/input-event-daemon.mk index 0d23037ff6..e61c8cc4b5 100644 --- a/package/input-event-daemon/input-event-daemon.mk +++ b/package/input-event-daemon/input-event-daemon.mk @@ -11,7 +11,7 @@ INPUT_EVENT_DAEMON_LICENSE_FILES = README define INPUT_EVENT_DAEMON_BUILD_CMDS touch $(@D)/input-event-table.h - $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) endef diff --git a/package/intltool/Config.in b/package/intltool/Config.in deleted file mode 100644 index 4643a899d7..0000000000 --- a/package/intltool/Config.in +++ /dev/null @@ -1,9 +0,0 @@ -config BR2_PACKAGE_INTLTOOL - bool "intltool" - # Hide from configuration as we only support the host package - # for the moment - depends on BR2_HOST_ONLY - help - Utility scripts for internationalizing XML - - http://www.freedesktop.org/wiki/Software/intltool diff --git a/package/intltool/intltool.mk b/package/intltool/intltool.mk index fb801a17b4..dbef80f985 100644 --- a/package/intltool/intltool.mk +++ b/package/intltool/intltool.mk @@ -11,5 +11,4 @@ INTLTOOL_LICENSE_FILES = COPYING HOST_INTLTOOL_DEPENDENCIES = host-gettext host-libxml-parser-perl -$(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/iodine/iodine.mk b/package/iodine/iodine.mk index 9de54e041e..711d709c1d 100644 --- a/package/iodine/iodine.mk +++ b/package/iodine/iodine.mk @@ -26,7 +26,7 @@ define IODINE_BUILD_CMDS endef define IODINE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) install DESTDIR="$(TARGET_DIR)" prefix=/usr + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install DESTDIR="$(TARGET_DIR)" prefix=/usr endef $(eval $(generic-package)) diff --git a/package/iozone/0002-no-nptl-support.patch b/package/iozone/0002-no-nptl-support.patch deleted file mode 100644 index 493f52cc77..0000000000 --- a/package/iozone/0002-no-nptl-support.patch +++ /dev/null @@ -1,37 +0,0 @@ -Dummy pthread_setaffinity_np() when not available - -On uClibc configurations that do not use the NPTL thread -implementation, pthread_setaffinity_np() is not available. This patch -defines a dummy (empty) implementation of this function for such -cases. - -The only few architectures that do not provide the NPTL thread -implementation are very likely to be non-SMP architectures, and -therefore, setting the affinity of the thread is not doing anything -useful, so having an empty stub for pthread_setaffinity_np() is not a -problem. - -Signed-off-by: Thomas Petazzoni - -Index: b/src/current/iozone.c -=================================================================== ---- a/src/current/iozone.c -+++ b/src/current/iozone.c -@@ -306,6 +306,17 @@ - #endif - #endif - -+#if defined (__linux__) -+#include -+#if defined (__UCLIBC__) && !defined (__UCLIBC_HAS_THREADS_NATIVE__) -+static int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize, -+ const cpu_set_t *cpuset) -+{ -+ return 0; -+} -+#endif -+#endif -+ - #if ((defined(solaris) && defined(__LP64__)) || defined(__s390x__)) - /* If we are building for 64-bit Solaris, all functions that return pointers - * must be declared before they are used; otherwise the compiler will assume diff --git a/package/iozone/Config.in b/package/iozone/Config.in index 8cf50b11e8..33c938ee7f 100644 --- a/package/iozone/Config.in +++ b/package/iozone/Config.in @@ -1,9 +1,13 @@ config BR2_PACKAGE_IOZONE bool "iozone" depends on BR2_USE_MMU # fork() - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL help IOzone is a filesystem benchmark tool. The benchmark generates and measures a variety of file operations http://www.iozone.org/ + +comment "iozone needs a toolchain w/ NPTL" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/iozone/iozone.hash b/package/iozone/iozone.hash index 8d05382ce8..b387588fd6 100644 --- a/package/iozone/iozone.hash +++ b/package/iozone/iozone.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 e8388238326dc29359e5cb9f790d193f1e1bdadfbf260e010c50fa682387faed iozone3_430.tar +sha256 bbbda98d7c052d8654ea23fb2187d831107ab4ac89842fa21509276d9a6915f0 iozone3_446.tar diff --git a/package/iozone/iozone.mk b/package/iozone/iozone.mk index 0662207549..477a60a3bb 100644 --- a/package/iozone/iozone.mk +++ b/package/iozone/iozone.mk @@ -4,18 +4,15 @@ # ################################################################################ -IOZONE_VERSION = 3_430 +IOZONE_VERSION = 3_446 IOZONE_SOURCE = iozone$(IOZONE_VERSION).tar IOZONE_SITE = http://www.iozone.org/src/current IOZONE_LICENSE = IOzone license (NO DERIVED WORKS ALLOWED) # IOzone license details can be found at: # http://www.iozone.org/docs/Iozone_License.txt -# No threading target is non-AIO as well -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) -IOZONE_TARGET = linux-noth # AIO support not available on uClibc, use the linux (non-aio) target. -else ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) IOZONE_TARGET = linux-noaio else IOZONE_TARGET = linux diff --git a/package/iperf/0001-util.h-add-missing-stdbool-header.patch b/package/iperf/0001-util.h-add-missing-stdbool-header.patch new file mode 100644 index 0000000000..6eeed72a6c --- /dev/null +++ b/package/iperf/0001-util.h-add-missing-stdbool-header.patch @@ -0,0 +1,54 @@ +From babf9a5c2bbce4725963b21e47f413962e33ea88 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Sat, 30 Jul 2016 14:24:33 +0200 +Subject: [PATCH] util.h: add missing stdbool header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +C requires the stdbool.h header for the 'bool' type. + +Fixes the following build failure under uClibc-ng C library: + +.../arm-linux-gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c delay.c +In file included from delay.c:55:0: +../include/util.h:73:1: error: unknown type name ‘bool’ + bool setsock_blocking(int fd, bool blocking); + ^ + +Signed-off-by: Baruch Siach +[Thomas: add AC_PROG_CC_C99, since C99 is needed for the bool type.] +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 1 + + include/util.h | 2 ++ + 2 files changed, 3 insertions(+) + +diff --git a/configure.ac b/configure.ac +index d59107a..ba30cb7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -46,6 +46,7 @@ dnl =================================================================== + AC_PROG_CXX + CXXFLAGS=`echo " $CXXFLAGS " | sed -e "s/ -g / /"` # do not want it implicitly + AC_PROG_CC ++AC_PROG_CC_C99 + CFLAGS=`echo " $CFLAGS " | sed -e "s/ -g / /"` # do not want it implicitly + AC_ISC_POSIX + AC_PROG_INSTALL +diff --git a/include/util.h b/include/util.h +index f4ae3d8..91540a9 100644 +--- a/include/util.h ++++ b/include/util.h +@@ -57,6 +57,8 @@ + #include "config.h" + #endif + ++#include ++ + #ifdef __cplusplus + extern "C" { + #endif +-- +2.7.4 + diff --git a/package/iperf/0002-fix-speed-display-in-csv-report.patch b/package/iperf/0002-fix-speed-display-in-csv-report.patch new file mode 100644 index 0000000000..b06c7099e9 --- /dev/null +++ b/package/iperf/0002-fix-speed-display-in-csv-report.patch @@ -0,0 +1,39 @@ +From f035e70b72d4285dcdbd393e680777a927cb9da4 Mon Sep 17 00:00:00 2001 +From: Matt Weber +Date: Thu, 28 Jul 2016 19:04:01 -0500 +Subject: [PATCH] perf: fix "speed" display in csv report + +Some parameters displayed in the CSV reports are declared +as uint64_t, but the printf format doesn't reflect this. + +Submitted bug: https://sourceforge.net/p/iperf/bugs/66/ + +Signed-off-by: Matt Poduska +Signed-off-by: Atul Singh +Signed-off-by: Matthew Weber +--- + src/Locale.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/Locale.c b/src/Locale.c +index b5d42b1..7b924fa 100644 +--- a/src/Locale.c ++++ b/src/Locale.c +@@ -260,11 +260,12 @@ const char reportCSV_bw_format[] = + const char reportCSV_bw_jitter_loss_format[] = + "%s,%s,%d,%.1f-%.1f,%I64d,%I64d,%.3f,%d,%d,%.3f,%d\n"; + #else ++#include "inttypes.h" + const char reportCSV_bw_format[] = +-"%s,%s,%d,%.1f-%.1f,%d,%d\n"; ++"%s,%s,%d,%.1f-%.1f,%" PRId64 ",%" PRId64 "\n"; + + const char reportCSV_bw_jitter_loss_format[] = +-"%s,%s,%d,%.1f-%.1f,%d,%d,%.3f,%d,%d,%.3f,%d\n"; ++"%s,%s,%d,%.1f-%.1f,%" PRId64 ",%" PRId64 ",%.3f,%d,%d,%.3f,%d\n"; + #endif //WIN32 + #endif //HAVE_QUAD_SUPPORT + /* ------------------------------------------------------------------- +-- +1.9.1 + diff --git a/package/iperf/Config.in b/package/iperf/Config.in index 86dd3e97c9..21a2df8ace 100644 --- a/package/iperf/Config.in +++ b/package/iperf/Config.in @@ -7,7 +7,7 @@ config BR2_PACKAGE_IPERF Internet Protocol bandwidth measuring tool for measuring TCP/UDP performance. - http://dast.nlanr.net/projects/iperf/ + https://sourceforge.net/projects/iperf2/ comment "iperf needs a toolchain w/ C++" depends on BR2_USE_MMU diff --git a/package/iperf/iperf.hash b/package/iperf/iperf.hash index 8d93b723d0..3dd491a2c0 100644 --- a/package/iperf/iperf.hash +++ b/package/iperf/iperf.hash @@ -1,2 +1,4 @@ +# From https://sourceforge.net/projects/iperf2/files/ +sha1 9e215f6af8edd97f947f2b0207ff5487845d83d4 iperf-2.0.9.tar.gz # Locally computed: -sha256 636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b iperf-2.0.5.tar.gz +sha256 a5350777b191e910334d3a107b5e5219b72ffa393da4186da1e0a4552aeeded6 iperf-2.0.9.tar.gz diff --git a/package/iperf/iperf.mk b/package/iperf/iperf.mk index 8496b95d83..d2071bd274 100644 --- a/package/iperf/iperf.mk +++ b/package/iperf/iperf.mk @@ -4,15 +4,15 @@ # ################################################################################ -IPERF_VERSION = 2.0.5 -IPERF_SITE = http://downloads.sourceforge.net/project/iperf +IPERF_VERSION = 2.0.9 +IPERF_SITE = http://downloads.sourceforge.net/project/iperf2 IPERF_LICENSE = MIT-like IPERF_LICENSE_FILES = COPYING +# patching configure.ac +IPERF_AUTORECONF = YES IPERF_CONF_ENV = \ - ac_cv_func_malloc_0_nonnull=yes \ - ac_cv_type_bool=yes \ - ac_cv_sizeof_bool=1 + ac_cv_func_malloc_0_nonnull=yes IPERF_CONF_OPTS = \ --disable-web100 diff --git a/package/iperf3/iperf3.hash b/package/iperf3/iperf3.hash index 48a2b2a807..e43210b71a 100644 --- a/package/iperf3/iperf3.hash +++ b/package/iperf3/iperf3.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 48b5c783bb4a9c44f2bdcfe52c5d45b77ab1e1c82de3d0131f692457950811f9 iperf3-3.1.2.tar.gz +# From http://software.es.net/iperf/news.html +sha256 6e1a6200cd38baeab58ef0d7b8769e7aa6410c3a3168e65ea8277a4de79e5500 iperf-3.1.5.tar.gz diff --git a/package/iperf3/iperf3.mk b/package/iperf3/iperf3.mk index 2438955f64..909c104d19 100644 --- a/package/iperf3/iperf3.mk +++ b/package/iperf3/iperf3.mk @@ -4,8 +4,9 @@ # ################################################################################ -IPERF3_VERSION = 3.1.2 -IPERF3_SITE = $(call github,esnet,iperf,$(IPERF3_VERSION)) +IPERF3_VERSION = 3.1.5 +IPERF3_SITE = http://downloads.es.net/pub/iperf +IPERF3_SOURCE = iperf-$(IPERF3_VERSION).tar.gz IPERF3_LICENSE = BSD-3c, BSD-2c, MIT IPERF3_LICENSE_FILES = LICENSE diff --git a/package/ipkg/0001-fix-musl-build.patch b/package/ipkg/0001-fix-musl-build.patch deleted file mode 100644 index fce3ec4afb..0000000000 --- a/package/ipkg/0001-fix-musl-build.patch +++ /dev/null @@ -1,50 +0,0 @@ -Remove __P macro usage to fix musl build - -__P() is used for compatibility with old K&R C compilers. With ANSI C -this macro has no effect. - -This fixes a compilation error with musl libc because of undeclared -__P. - -Signed-off-by: Thomas Petazzoni - -Index: b/md5.c -=================================================================== ---- a/md5.c -+++ b/md5.c -@@ -97,21 +97,21 @@ - - /* Initialize structure containing state of computation. - (RFC 1321, 3.3: Step 3) */ --static void md5_init_ctx __P ((struct md5_ctx *ctx)); -+static void md5_init_ctx (struct md5_ctx *ctx); - - /* Starting with the result of former calls of this function (or the - initialization function update the context for the next LEN bytes - starting at BUFFER. - It is necessary that LEN is a multiple of 64!!! */ --static void md5_process_block __P ((const void *buffer, size_t len, -- struct md5_ctx *ctx)); -+static void md5_process_block (const void *buffer, size_t len, -+ struct md5_ctx *ctx); - - /* Starting with the result of former calls of this function (or the - initialization function update the context for the next LEN bytes - starting at BUFFER. - It is NOT required that LEN is a multiple of 64. */ --static void md5_process_bytes __P ((const void *buffer, size_t len, -- struct md5_ctx *ctx)); -+static void md5_process_bytes (const void *buffer, size_t len, -+ struct md5_ctx *ctx); - - /* Process the remaining bytes in the buffer and put result from CTX - in first 16 bytes following RESBUF. The result is always in little -@@ -120,7 +120,7 @@ - - IMPORTANT: On some systems it is required that RESBUF is correctly - aligned for a 32 bits value. */ --static void *md5_finish_ctx __P ((struct md5_ctx *ctx, void *resbuf)); -+static void *md5_finish_ctx (struct md5_ctx *ctx, void *resbuf); - - //---------------------------------------------------------------------------- - //--------end of md5.h diff --git a/package/ipkg/Config.in b/package/ipkg/Config.in deleted file mode 100644 index 4b2078d9cd..0000000000 --- a/package/ipkg/Config.in +++ /dev/null @@ -1,6 +0,0 @@ -config BR2_PACKAGE_IPKG - bool "ipkg" - help - The Itsy Package Installer from handhelds.org - - http://www.handhelds.org diff --git a/package/ipkg/ipkg-build b/package/ipkg/ipkg-build deleted file mode 100755 index f3f5d0c621..0000000000 --- a/package/ipkg/ipkg-build +++ /dev/null @@ -1,127 +0,0 @@ -#!/bin/sh - -# ipkg-build -- construct a .ipk from a directory -# Carl Worth -# based on a script by Steve Redler IV, steve@sr-tech.com 5-21-2001 -set -e - -ipkg_extract_value() { - sed -e "s/^[^:]*:[[:space:]]*//" -} - -required_field() { - field=$1 - - value=`grep "^$field:" < $CONTROL/control | ipkg_extract_value` - if [ -z "$value" ]; then - echo "ipkg-build: Error: $CONTROL/control is missing field $field" ; - PKG_ERROR=1 - fi - echo $value -} - -pkg_appears_sane() { - local pkg_dir=$1 - - local owd=`pwd` - cd $pkg_dir - - PKG_ERROR=0 - if [ ! -f "$CONTROL/control" ]; then - echo "ipkg-build: Error: Control file $pkg_dir/$CONTROL/control not found." - cd $owd - return 1 - fi - - pkg=`required_field Package` - version=`required_field Version` - arch=`required_field Architecture` - required_field Maintainer >/dev/null - required_field Description >/dev/null - - if echo $pkg | grep '[^a-z0-9.+-]'; then - echo "ipkg-build: Error: Package name $name contains illegal characters, (other than [a-z0-9.+-])" - PKG_ERROR=1; - fi - - local bad_fields=`sed -ne 's/^\([^[:space:]][^:[:space:]]\+[[:space:]]\+\)[^:].*/\1/p' < $CONTROL/control | sed -e 's/\\n//'` - if [ -n "$bad_fields" ]; then - bad_fields=`echo $bad_fields` - echo "ipkg-build: Error: The following fields in $CONTROL/control are missing a ':'" - echo " $bad_fields" - echo "ipkg-build: This may be due to a missing initial space for a multi-line field value" - PKG_ERROR=1 - fi - - for script in $CONTROL/preinst $CONTROL/postinst $CONTROL/prerm $CONTROL/postrm; do - if [ -f $script -a ! -x $script ]; then - echo "ipkg-build: Error: package script $script is not executable" - PKG_ERROR=1 - fi - done - - if [ -f $CONTROL/conffiles ]; then - for cf in `cat $CONTROL/conffiles`; do - if [ ! -f ./$cf ]; then - echo "ipkg-build: Error: $CONTROL/conffiles mentions conffile $cf which does not exist" - PKG_ERROR=1 - fi - done - fi - - cd $owd - return $PKG_ERROR -} - -### -# ipkg-build "main" -### - -case $# in -1) - dest_dir=. - ;; -2) - dest_dir=$2 - ;; -*) - echo "Usage: ipkg-build []" ; - exit 1 - ;; -esac - -pkg_dir=$1 - -if [ ! -d $pkg_dir ]; then - echo "ipkg-build: Error: Directory $pkg_dir does not exist" - exit 1 -fi - -# CONTROL is second so that it takes precedence -CONTROL= -[ -d $pkg_dir/DEBIAN ] && CONTROL=DEBIAN -[ -d $pkg_dir/CONTROL ] && CONTROL=CONTROL -if [ -z "$CONTROL" ]; then - echo "ipkg-build: Error: Directory $pkg_dir has no CONTROL subdirectory." - exit 1 -fi - -if ! pkg_appears_sane $pkg_dir; then - echo "Please fix the above errors and try again." - exit 1 -fi - -tmp_dir=$dest_dir/IPKG_BUILD.$$ -mkdir $tmp_dir - -tar -C $pkg_dir -czf $tmp_dir/data.tar.gz . --exclude=$CONTROL -tar -C $pkg_dir/$CONTROL -czf $tmp_dir/control.tar.gz . - -echo "2.0" > $tmp_dir/debian-binary - -pkg_file=$dest_dir/${pkg}_${version}_${arch}.ipk -tar -C $tmp_dir -czf $pkg_file debian-binary data.tar.gz control.tar.gz -rm $tmp_dir/debian-binary $tmp_dir/data.tar.gz $tmp_dir/control.tar.gz -rmdir $tmp_dir - -echo "Packaged contents of $pkg_dir into $pkg_file" diff --git a/package/ipkg/ipkg.mk b/package/ipkg/ipkg.mk deleted file mode 100644 index 10ef207242..0000000000 --- a/package/ipkg/ipkg.mk +++ /dev/null @@ -1,13 +0,0 @@ -################################################################################ -# -# ipkg -# -################################################################################ - -IPKG_VERSION = 0.99.163 -IPKG_SITE = http://www.handhelds.org/download/packages/ipkg -IPKG_INSTALL_STAGING = YES -IPKG_LICENSE = GPLv2+ -IPKG_LICENSE_FILES = COPYING - -$(eval $(autotools-package)) diff --git a/package/ipmitool/0004-Fix-missing-stddef.h-include.patch b/package/ipmitool/0001-Fix-missing-stddef.h-include.patch similarity index 57% rename from package/ipmitool/0004-Fix-missing-stddef.h-include.patch rename to package/ipmitool/0001-Fix-missing-stddef.h-include.patch index e58c8b09ea..dc3f92e482 100644 --- a/package/ipmitool/0004-Fix-missing-stddef.h-include.patch +++ b/package/ipmitool/0001-Fix-missing-stddef.h-include.patch @@ -1,4 +1,4 @@ -From 2b149f7723fbd6153e6605ea8efb2c9f2940c8e5 Mon Sep 17 00:00:00 2001 +From 04d489936191e685123978a1ca370f9cc30e6a06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Krause?= Date: Mon, 18 Apr 2016 21:17:26 +0200 Subject: [PATCH] Fix missing stddef.h include @@ -16,22 +16,23 @@ https://sourceforge.net/p/ipmitool/mailman/message/35022779/ Signed-off-by: Jörg Krause --- - src/plugins/imb/imbapi.h | 2 ++ - 1 file changed, 2 insertions(+) + src/plugins/imb/imbapi.h | 3 +++ + 1 file changed, 3 insertions(+) diff --git a/src/plugins/imb/imbapi.h b/src/plugins/imb/imbapi.h -index ead8956..8d0c7ae 100644 +index 6ba4121..6b39b47 100644 --- a/src/plugins/imb/imbapi.h +++ b/src/plugins/imb/imbapi.h -@@ -40,6 +40,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - # include - #endif - +@@ -33,6 +33,9 @@ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + *----------------------------------------------------------------------*/ ++ +#include + + #ifndef _WINDEFS_H + #define _WINDEFS_H #ifndef FALSE - #define FALSE 0 - #endif -- -2.8.0 +2.10.2 diff --git a/package/ipmitool/0001-Make-the-package-autoreconfigurable.patch b/package/ipmitool/0001-Make-the-package-autoreconfigurable.patch deleted file mode 100644 index 17b4076269..0000000000 --- a/package/ipmitool/0001-Make-the-package-autoreconfigurable.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 0d4b9d5d547b4a6e79108ac8c455e01f72a9aefa Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sun, 10 Apr 2016 11:47:14 +0200 -Subject: [PATCH 1/3] Make the package autoreconfigurable -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -ipmitool is not a compliant GNU package as it does not provide some necessary -files, like NEWS, AUTHORS, etc. - -Therefor set the Automake strictness to foreign to make the package -autoreconfigurable. - -Upstream status: Pending -https://sourceforge.net/p/ipmitool/mailman/message/35004711/ - -Signed-off-by: Jörg Krause ---- - Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index 94e267a..9f3f7e1 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -33,7 +33,7 @@ DOCLIST = $(top_srcdir)/README $(top_srcdir)/COPYING $(top_srcdir)/AUTHORS $(top - - EXTRA_DIST = $(DOCLIST) - --AUTOMAKE_OPTIONS = dist-bzip2 -+AUTOMAKE_OPTIONS = dist-bzip2 foreign - - MAINTAINERCLEANFILES = Makefile.in aclocal.m4 configure configure-stamp \ - config.guess config.sub depcomp install-sh ltmain.sh missing \ --- -2.8.0 - diff --git a/package/ipmitool/0002-Avoid-wchar_t-redefinition.patch b/package/ipmitool/0002-Avoid-wchar_t-redefinition.patch deleted file mode 100644 index 99598e0a7d..0000000000 --- a/package/ipmitool/0002-Avoid-wchar_t-redefinition.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 7d1863b47877129376f37613d29d3a5ba084af66 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sat, 2 Apr 2016 19:45:14 +0200 -Subject: [PATCH 2/3] Avoid wchar_t redefinition -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The musl C library does not define _WCHAR_T. Use autoconf to check for wchar_t. - -Upstream status: Pending -https://sourceforge.net/p/ipmitool/mailman/message/35007331/ - -Signed-off-by: Jörg Krause ---- - configure.ac | 2 ++ - src/plugins/imb/imbapi.h | 7 ++++++- - 2 files changed, 8 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 1d74fcf..c2ba1eb 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -22,6 +22,8 @@ AC_CHECK_HEADERS([stdlib.h string.h sys/ioctl.h sys/stat.h unistd.h paths.h]) - AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h sys/socket.h]) - AC_CHECK_HEADERS([sys/byteorder.h byteswap.h]) - -+AC_CHECK_TYPES([wchar_t]) -+ - AC_C_CONST - AC_C_INLINE - AC_C_BIGENDIAN -diff --git a/src/plugins/imb/imbapi.h b/src/plugins/imb/imbapi.h -index 74975c6..ead8956 100644 ---- a/src/plugins/imb/imbapi.h -+++ b/src/plugins/imb/imbapi.h -@@ -35,6 +35,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *----------------------------------------------------------------------*/ - #ifndef _WINDEFS_H - #define _WINDEFS_H -+ -+#if HAVE_CONFIG_H -+# include -+#endif -+ - #ifndef FALSE - #define FALSE 0 - #endif -@@ -46,7 +51,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - #endif - #ifndef WIN32 - /* WIN32 defines this in stdio.h */ --#ifndef _WCHAR_T -+#if !defined(HAVE_WCHAR_T) - #define _WCHAR_T - typedef long wchar_t; - #endif --- -2.8.0 - diff --git a/package/ipmitool/0003-Add-missing-linux-param.h-header-include.patch b/package/ipmitool/0003-Add-missing-linux-param.h-header-include.patch deleted file mode 100644 index a3bd7257fb..0000000000 --- a/package/ipmitool/0003-Add-missing-linux-param.h-header-include.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 661095378b74df564bc621ced4db72b688d87399 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sat, 2 Apr 2016 19:47:21 +0200 -Subject: [PATCH 3/3] Add missing linux/param.h header include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes the following build failure under musl: - -imbapi.c: In function 'MapPhysicalMemory': -imbapi.c:109:19: error: 'EXEC_PAGESIZE' undeclared (first use in this function) - # define PAGESIZE EXEC_PAGESIZE - -Upstream status: Pending -https://sourceforge.net/p/ipmitool/mailman/message/35007330/ - -Signed-off-by: Jörg Krause ---- - src/plugins/imb/imbapi.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/plugins/imb/imbapi.c b/src/plugins/imb/imbapi.c -index 899c47a..8a6421d 100644 ---- a/src/plugins/imb/imbapi.c -+++ b/src/plugins/imb/imbapi.c -@@ -95,6 +95,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - #include - #include - #include -+#ifdef __linux__ -+#include -+#endif - #endif - #include "imbapi.h" - #include --- -2.8.0 - diff --git a/package/ipmitool/ipmitool.hash b/package/ipmitool/ipmitool.hash index 9bb852c397..9b16414801 100644 --- a/package/ipmitool/ipmitool.hash +++ b/package/ipmitool/ipmitool.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 3c5da6b067abf475bc24685120ec79f6e4ef6b3ea606aaa267e462023861223e ipmitool-1.8.16.tar.bz2 +sha256 0c1ba3b1555edefb7c32ae8cd6a3e04322056bc087918f07189eeedfc8b81e01 ipmitool-1.8.18.tar.bz2 diff --git a/package/ipmitool/ipmitool.mk b/package/ipmitool/ipmitool.mk index a24658437b..f4dca736cb 100644 --- a/package/ipmitool/ipmitool.mk +++ b/package/ipmitool/ipmitool.mk @@ -4,15 +4,12 @@ # ################################################################################ -IPMITOOL_VERSION = 1.8.16 +IPMITOOL_VERSION = 1.8.18 IPMITOOL_SOURCE = ipmitool-$(IPMITOOL_VERSION).tar.bz2 IPMITOOL_SITE = http://downloads.sourceforge.net/project/ipmitool/ipmitool/$(IPMITOOL_VERSION) IPMITOOL_LICENSE = BSD-3c IPMITOOL_LICENSE_FILES = COPYING -# Patching configure.ac -IPMITOOL_AUTORECONF = YES - ifeq ($(BR2_PACKAGE_IPMITOOL_LANPLUS),y) IPMITOOL_DEPENDENCIES += openssl IPMITOOL_CONF_OPTS += --enable-intf-lanplus diff --git a/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch b/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch deleted file mode 100644 index 35d1d679ba..0000000000 --- a/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch +++ /dev/null @@ -1,38 +0,0 @@ -From: Baruch Siach -Date: Tue, 27 Oct 2015 14:23:44 +0200 -Subject: [PATCH] lib/Makefile.am: fix lanplus disable - -Protect the install target as well when lanplus is disabled. Fixes the -following installation failure when openssl is missing: - -In file included from lanplus.c:78:0: -./inc/ipmitool/ipmi.h:51:25: fatal error: openssl/evp.h: No such file or directory - -Patch status: sent upstream -(http://sourceforge.net/p/ipmiutil/mailman/message/34572580/) - -Signed-off-by: Baruch Siach ---- - lib/Makefile.am | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/lib/Makefile.am b/lib/Makefile.am -index 805a218ab7eb..939594cfd3e5 100644 ---- a/lib/Makefile.am -+++ b/lib/Makefile.am -@@ -51,8 +51,10 @@ distclean: - cd lanplus; make distclean - - install: -- $(MKDIR) ${datato} -- cd lanplus; make install -+ if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ -+ $(MKDIR) ${datato} ; \ -+ cd lanplus; make install ; \ -+ fi - - check: - --- -2.6.1 - diff --git a/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch b/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch deleted file mode 100644 index d6ad6045dd..0000000000 --- a/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch +++ /dev/null @@ -1,45 +0,0 @@ -From: Baruch Siach -Date: Tue, 27 Oct 2015 13:58:24 +0200 -Subject: [PATCH] configure.ac: fix stack protector test - -gcc does not generate stack protection check code for function that does not -use its stack. Some toolchain (most notable uClibc based) accept the --fstack-protector option, but don't provide libssp. The current test will -incorrectly identify this case, leading to link failures like: - -ipmiutil.o: In function `main': -ipmiutil.c:(.text.startup+0x1c0): undefined reference to -`__stack_chk_fail_local' -ialarms.o: In function `get_alarms_picmg': -ialarms.c:(.text+0x1c5): undefined reference to `__stack_chk_fail_local' -ialarms.o: In function `.L46': -ialarms.c:(.text+0x362): undefined reference to `__stack_chk_fail_local' -ialarms.o: In function `get_enc_leds': -ialarms.c:(.text+0x45f): undefined reference to `__stack_chk_fail_local' - -Add stack usage code to the test to correctly identify missing libssp. - -Patch status: sent upstream -(http://sourceforge.net/p/ipmiutil/mailman/message/34572536/) - -Signed-off-by: Baruch Siach ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 41b6ea89167a..f3f60fb9ff69 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -334,7 +334,7 @@ else - rm -f $tmpc $tmpo >/dev/null 2>&1 - echo $ECHO_N "checking compile fortify flags ... $ECHO_C" - cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2" -- echo "int main() { return(1); }" >$tmpc -+ echo "int main() { alloca(100); return(1); }" >$tmpc - $CC -o $tmpo $cfhard $tmpc >/dev/null 2>&1 - if test $? -ne 0 ; then - cfhard= --- -2.6.1 - diff --git a/package/ipmiutil/ipmiutil.hash b/package/ipmiutil/ipmiutil.hash index 35a0bd360c..f9d086b67a 100644 --- a/package/ipmiutil/ipmiutil.hash +++ b/package/ipmiutil/ipmiutil.hash @@ -1,2 +1,4 @@ # From http://sourceforge.net/projects/ipmiutil/files/?source=navbar -sha1 cc26d977afc87717812ef25aa02b2d5ab84843c4 ipmiutil-2.9.7.tar.gz +sha1 f423a77a374b6a37a16496844f1e6e363e7d63fe ipmiutil-2.9.9.tar.gz +# Locally computed +sha256 beace08386a002c6a4bbbf894bda9899ea34fae4c2181c89f29fb1fa136925f6 ipmiutil-2.9.9.tar.gz diff --git a/package/ipmiutil/ipmiutil.mk b/package/ipmiutil/ipmiutil.mk index 30d0f966c6..392856cc9c 100644 --- a/package/ipmiutil/ipmiutil.mk +++ b/package/ipmiutil/ipmiutil.mk @@ -4,11 +4,11 @@ # ################################################################################ -IPMIUTIL_VERSION = 2.9.7 +IPMIUTIL_VERSION = 2.9.9 IPMIUTIL_SITE = http://sourceforge.net/projects/ipmiutil/files IPMIUTIL_LICENSE = BSD-3c IPMIUTIL_LICENSE_FILES = COPYING -# We're patching configure.ac, lib/Makefile.am +# We're patching configure.ac IPMIUTIL_AUTORECONF = YES IPMIUTIL_MAKE = $(MAKE1) diff --git a/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch b/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch new file mode 100644 index 0000000000..c7c6e15596 --- /dev/null +++ b/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch @@ -0,0 +1,38 @@ +From b4edb4eebbfd35934b8bc6d7ee0e00e76a01596c Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Thu, 22 Dec 2016 15:26:30 +0200 +Subject: [PATCH] Add the musl workaround to the libc-compat.h copy + +The libc-compat.h kernel header uses glibc specific macros (__GLIBC__ and +__USE_MISC) to solve conflicts with libc provided headers. This patch makes +libc-compat.h work also for musl libc. + +Signed-off-by: Baruch Siach +--- +Upstream status: libc-compat.h is a local copy of a kernel headers. A proper +musl fix must go to the kernel first. +--- + include/linux/libc-compat.h | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/include/linux/libc-compat.h b/include/linux/libc-compat.h +index f38571dabd8d..30f0b67c7a12 100644 +--- a/include/linux/libc-compat.h ++++ b/include/linux/libc-compat.h +@@ -49,10 +49,12 @@ + #define _LIBC_COMPAT_H + + /* We have included glibc headers... */ +-#if defined(__GLIBC__) ++#if 1 ++#define __USE_MISC + + /* Coordinate with glibc net/if.h header. */ + #if defined(_NET_IF_H) && defined(__USE_MISC) ++#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 0 + + /* GLIBC headers included first so don't define anything + * that would already be defined. */ +-- +2.11.0 + diff --git a/package/iproute2/0001-Avoid-in6_addr-redefinition.patch b/package/iproute2/0001-Avoid-in6_addr-redefinition.patch deleted file mode 100644 index 3417339b2b..0000000000 --- a/package/iproute2/0001-Avoid-in6_addr-redefinition.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 48596709d8ab59727b79a5c6db33ebb251c36543 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Thu, 19 Nov 2015 17:44:25 +0100 -Subject: [PATCH] Avoid in6_addr redefinition -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Due to both and being included, the -in6_addr is being redefined: once from the C library headers and once -from the kernel headers. This causes some build failures with for -example the musl C library: - -In file included from ../include/linux/xfrm.h:4:0, - from xfrm.h:29, - from ipxfrm.c:39: -../include/linux/in6.h:32:8: error: redefinition of ‘struct in6_addr’ - struct in6_addr { - ^ -In file included from .../output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netdb.h:9:0, - from ipxfrm.c:34: -.../output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:24:8: note: originally defined here - struct in6_addr - ^ - -In order to fix this, use just the C library header . - -Original patch taken from -http://git.alpinelinux.org/cgit/aports/tree/main/iproute2/musl-fixes.patch. - -Signed-off-by: Thomas Petazzoni -[Gustavo: drop ipt_kernel_headers.h chunk since no longer necessary] -Signed-off-by: Gustavo Zacarias ---- - include/linux/if_bridge.h | 1 - - include/linux/netfilter.h | 2 -- - include/linux/xfrm.h | 1 - - 3 files changed, 4 deletions(-) - -diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h -index ee197a3..f823aa4 100644 ---- a/include/linux/if_bridge.h -+++ b/include/linux/if_bridge.h -@@ -15,7 +15,6 @@ - - #include - #include --#include - - #define SYSFS_BRIDGE_ATTR "bridge" - #define SYSFS_BRIDGE_FDB "brforward" -diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h -index b71b4c9..3e4e6ae 100644 ---- a/include/linux/netfilter.h -+++ b/include/linux/netfilter.h -@@ -4,8 +4,6 @@ - #include - - #include --#include --#include - - /* Responses from hook functions. */ - #define NF_DROP 0 -diff --git a/include/linux/xfrm.h b/include/linux/xfrm.h -index b8f5451..a9761a5 100644 ---- a/include/linux/xfrm.h -+++ b/include/linux/xfrm.h -@@ -1,7 +1,6 @@ - #ifndef _LINUX_XFRM_H - #define _LINUX_XFRM_H - --#include - #include - - /* All of the structures in this file may not change size as they are --- -2.6.3 - diff --git a/package/iproute2/0003-iproute2-tc_bpf.c-fix-building-with-musl-libc..patch b/package/iproute2/0003-iproute2-tc_bpf.c-fix-building-with-musl-libc..patch deleted file mode 100644 index 0342abef33..0000000000 --- a/package/iproute2/0003-iproute2-tc_bpf.c-fix-building-with-musl-libc..patch +++ /dev/null @@ -1,37 +0,0 @@ -From 01b287582f25cc3a8a36caee5ce13e14b9233f49 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Fri, 8 Apr 2016 09:52:55 -0300 -Subject: [PATCH] iproute2: tc_bpf.c: fix building with musl libc -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -We need limits.h for PATH_MAX, fixes: - -tc_bpf.c: In function ‘bpf_map_selfcheck_pinned’: -tc_bpf.c:222:12: error: ‘PATH_MAX’ undeclared (first use in this -function) - char file[PATH_MAX], buff[4096]; - -Signed-off-by: Gustavo Zacarias ---- -Patch status: submitted upstream - - tc/tc_bpf.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tc/tc_bpf.c b/tc/tc_bpf.c -index d94af82..042e76f 100644 ---- a/tc/tc_bpf.c -+++ b/tc/tc_bpf.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - #ifdef HAVE_ELF - #include --- -2.7.3 - diff --git a/package/iproute2/0003-tc-add-missing-limits.h-header.patch b/package/iproute2/0003-tc-add-missing-limits.h-header.patch new file mode 100644 index 0000000000..b9b27f31a7 --- /dev/null +++ b/package/iproute2/0003-tc-add-missing-limits.h-header.patch @@ -0,0 +1,38 @@ +From 1f4547b0a81db617f4b0d02711d9e39278eb8283 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Thu, 22 Dec 2016 20:45:11 +0200 +Subject: [PATCH] tc: add missing limits.h header + +This fixes under musl build issues like: + +f_matchall.c: In function ‘matchall_parse_opt’: +f_matchall.c:48:12: error: ‘LONG_MIN’ undeclared (first use in this function) + if (h == LONG_MIN || h == LONG_MAX) { + ^ +f_matchall.c:48:12: note: each undeclared identifier is reported only once for each function it appears in +f_matchall.c:48:29: error: ‘LONG_MAX’ undeclared (first use in this function) + if (h == LONG_MIN || h == LONG_MAX) { + ^ + +Signed-off-by: Baruch Siach +--- +Upstream status: posted http://marc.info/?l=linux-netdev&m=148243283002957&w=2 +--- + tc/tc_util.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tc/tc_util.h b/tc/tc_util.h +index f198a4ad5554..4db26c6d5e25 100644 +--- a/tc/tc_util.h ++++ b/tc/tc_util.h +@@ -2,6 +2,7 @@ + #define _TC_UTIL_H_ 1 + + #define MAX_MSG 16384 ++#include + #include + #include + #include +-- +2.11.0 + diff --git a/package/iproute2/0004-iproute-no-iptables.patch b/package/iproute2/0004-iproute-no-iptables.patch deleted file mode 100644 index 7f7f37b1d4..0000000000 --- a/package/iproute2/0004-iproute-no-iptables.patch +++ /dev/null @@ -1,48 +0,0 @@ -Fix build issues when there's no iptables present. - -Patch from Matt Whitlock -See https://bugs.gentoo.org/show_bug.cgi?id=577464 -Status: in theory submitted upstream by Lars Wendler. - ---- iproute2-4.5.0/configure~ 2016-03-14 23:02:31.000000000 +0000 -+++ iproute2-4.5.0/configure 2016-03-17 13:24:17.634743197 +0000 -@@ -169,10 +169,25 @@ - - check_ipt() - { -- if ! grep TC_CONFIG_XT Config > /dev/null -+ if grep -q TC_CONFIG_XT Config - then -+ return -+ fi -+ -+ cat >$TMPDIR/ipttest.c < -+int main() { return 0; } -+EOF -+ -+ if $CC -std=c90 -I$INCLUDE $IPTC -o $TMPDIR/ipttest $TMPDIR/ipttest.c $IPTL \ -+ $(${PKG_CONFIG} libiptc --cflags --libs 2>/dev/null) -ldl >/dev/null 2>&1 -+ then -+ echo "TC_CONFIG_IPT:=y" >>Config - echo "using iptables" -+ else -+ echo "no" - fi -+ rm -f $TMPDIR/ipttest.c $TMPDIR/ipttest - } - - check_ipt_lib_dir() ---- iproute2-4.5.0/tc/Makefile~ 2016-03-14 23:02:31.000000000 +0000 -+++ iproute2-4.5.0/tc/Makefile 2016-03-17 13:18:18.686689985 +0000 -@@ -88,7 +88,9 @@ - CFLAGS += -DTC_CONFIG_XT_H - TCSO += m_xt_old.so - else -- TCMODULES += m_ipt.o -+ ifeq ($(TC_CONFIG_IPT),y) -+ TCMODULES += m_ipt.o -+ endif - endif - endif - endif diff --git a/package/iproute2/iproute2.hash b/package/iproute2/iproute2.hash index 1dafa8dbd8..5cacc7f99c 100644 --- a/package/iproute2/iproute2.hash +++ b/package/iproute2/iproute2.hash @@ -1,2 +1,2 @@ # From https://kernel.org/pub/linux/utils/net/iproute2/sha256sums.asc -sha256 3f15292f53e465cb5bd6652961343ca64eb6936309ae75be5d5a541435bc494a iproute2-4.5.0.tar.xz +sha256 c0f30f043f7767cc1b2cd2197b08d4e9b2392c95823fabe30bbce308c30116c4 iproute2-4.9.0.tar.xz diff --git a/package/iproute2/iproute2.mk b/package/iproute2/iproute2.mk index 91d5033f3d..5ea5299bd3 100644 --- a/package/iproute2/iproute2.mk +++ b/package/iproute2/iproute2.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPROUTE2_VERSION = 4.5.0 +IPROUTE2_VERSION = 4.9.0 IPROUTE2_SOURCE = iproute2-$(IPROUTE2_VERSION).tar.xz IPROUTE2_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/net/iproute2 IPROUTE2_DEPENDENCIES = host-bison host-flex host-pkgconf \ @@ -27,13 +27,13 @@ ifeq ($(BR2_PACKAGE_IPTABLES)x$(BR2_STATIC_LIBS),yx) IPROUTE2_DEPENDENCIES += iptables define IPROUTE2_WITH_IPTABLES # Makefile is busted so it never passes IPT_LIB_DIR properly - $(SED) "s/-DIPT/-DXT/" $(IPROUTE2_DIR)/tc/Makefile + $(SED) "s/-DIPT/-DXT/" $(@D)/tc/Makefile endef else define IPROUTE2_WITH_IPTABLES # em_ipset needs xtables, but configure misdetects it - echo "TC_CONFIG_IPSET:=n" >>$(IPROUTE2_DIR)/Config - echo "TC_CONFIG_XT:=n" >>$(IPROUTE2_DIR)/Config + echo "TC_CONFIG_IPSET:=n" >>$(@D)/Config + echo "TC_CONFIG_XT:=n" >>$(@D)/Config endef endif @@ -42,7 +42,7 @@ ifeq ($(BR2_PACKAGE_BERKELEYDB_COMPAT185)$(BR2_TOOLCHAIN_HAS_THREADS),yy) IPROUTE2_DEPENDENCIES += berkeleydb else define IPROUTE2_DISABLE_ARPD - $(SED) "/^TARGETS=/s: arpd : :" $(IPROUTE2_DIR)/misc/Makefile + echo "HAVE_BERKELEY_DB:=n" >> $(@D)/Config endef endif diff --git a/package/iprutils/Config.in b/package/iprutils/Config.in index 1bc58e814b..42f372cefc 100644 --- a/package/iprutils/Config.in +++ b/package/iprutils/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_IPRUTILS select BR2_PACKAGE_NCURSES_TARGET_MENU select BR2_PACKAGE_LIBSYSFS select BR2_PACKAGE_PCIUTILS + depends on BR2_USE_MMU # fork() depends on !BR2_bfin # pciutils help System utilities for IBM Power RAID devices diff --git a/package/ipsec-tools/ipsec-tools.mk b/package/ipsec-tools/ipsec-tools.mk index 98216eaea6..eb910bc498 100644 --- a/package/ipsec-tools/ipsec-tools.mk +++ b/package/ipsec-tools/ipsec-tools.mk @@ -57,7 +57,7 @@ endif ifneq ($(BR2_PACKAGE_IPSEC_TOOLS_READLINE),y) IPSEC_TOOLS_CONF_OPTS += --without-readline else -IPSEC_DEPENDENCIES += readline +IPSEC_TOOLS_DEPENDENCIES += readline endif ifeq ($(BR2_PACKAGE_IPSEC_TOOLS_HYBRID),y) diff --git a/package/ipset/ipset.hash b/package/ipset/ipset.hash index 844bebba8c..da860e8d05 100644 --- a/package/ipset/ipset.hash +++ b/package/ipset/ipset.hash @@ -1,4 +1,4 @@ -# From ftp://ftp.netfilter.org/pub/ipset/ipset-6.27.tar.bz2.md5sum.txt -md5 c39f8958908b1396e2c69f082b75d924 ipset-6.27.tar.bz2 +# From ftp://ftp.netfilter.org/pub/ipset/ipset-6.30.tar.bz2.md5sum.txt +md5 41c32e3b884ec714f0aac95e7675f9d1 ipset-6.30.tar.bz2 # Calculated based on the hash above -sha256 724897a80395534466142c3542184e5a480a5046140ca2a7d9097690b931b235 ipset-6.27.tar.bz2 +sha256 65bfa43fec3d51a6b4012f3d7e4b93a748df9b71b6cd6c53adbec8083e804a31 ipset-6.30.tar.bz2 diff --git a/package/ipset/ipset.mk b/package/ipset/ipset.mk index fff67e2746..db4952b1d5 100644 --- a/package/ipset/ipset.mk +++ b/package/ipset/ipset.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPSET_VERSION = 6.27 +IPSET_VERSION = 6.30 IPSET_SOURCE = ipset-$(IPSET_VERSION).tar.bz2 IPSET_SITE = http://ipset.netfilter.org IPSET_DEPENDENCIES = libmnl host-pkgconf diff --git a/package/iptables/0001-fix-build-with-musl.patch b/package/iptables/0001-fix-build-with-musl.patch deleted file mode 100644 index d5e0c2ed6c..0000000000 --- a/package/iptables/0001-fix-build-with-musl.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 2f2fde48594ec34e93ab409cd83442efe58e10ad Mon Sep 17 00:00:00 2001 -From: Brendan Heading -Date: Mon, 31 Aug 2015 15:24:44 +0100 -Subject: [PATCH 3/3] fix build with musl - -Add needed headers they are just not needed for glibc6+ but also -for musl -Define additional TCOPTS if not there - -u_initX types are in sys/types.h be explicit about it - -Upstream-Status: Pending - -bh: this is a copy of the patch at the link below, modified to remove -the changes to include/libiptc/ipt_kernel_headers.h as these are -already integrated in the upstream tree. See : - -http://lists.openembedded.org/pipermail/openembedded-core/2015-April/103613.html - -Signed-off-by: Khem Raj -Signed-off-by: Brendan Heading ---- - extensions/libxt_TCPOPTSTRIP.c | 15 +++++++++++++++ - include/linux/netfilter_ipv4/ip_tables.h | 1 + - 2 files changed, 16 insertions(+) - -diff --git a/extensions/libxt_TCPOPTSTRIP.c b/extensions/libxt_TCPOPTSTRIP.c -index 6897857..8a170b2 100644 ---- a/extensions/libxt_TCPOPTSTRIP.c -+++ b/extensions/libxt_TCPOPTSTRIP.c -@@ -12,6 +12,21 @@ - #ifndef TCPOPT_MD5SIG - # define TCPOPT_MD5SIG 19 - #endif -+#ifndef TCPOPT_MAXSEG -+# define TCPOPT_MAXSEG 2 -+#endif -+#ifndef TCPOPT_WINDOW -+# define TCPOPT_WINDOW 3 -+#endif -+#ifndef TCPOPT_SACK_PERMITTED -+# define TCPOPT_SACK_PERMITTED 4 -+#endif -+#ifndef TCPOPT_SACK -+# define TCPOPT_SACK 5 -+#endif -+#ifndef TCPOPT_TIMESTAMP -+# define TCPOPT_TIMESTAMP 8 -+#endif - - enum { - O_STRIP_OPTION = 0, -diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h -index 57fd82a..4807246 100644 ---- a/include/linux/netfilter_ipv4/ip_tables.h -+++ b/include/linux/netfilter_ipv4/ip_tables.h -@@ -15,6 +15,7 @@ - #ifndef _IPTABLES_H - #define _IPTABLES_H - -+#include - #include - - #include --- -2.4.3 - diff --git a/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch b/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch deleted file mode 100644 index 761c04894f..0000000000 --- a/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 4dc8e2aa91bd4151f7e5cd56d88d3731b4c1525e Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 30 Dec 2015 14:39:35 -0300 -Subject: [PATCH] iptables: add xtables-config-parser.h to BUILT_SOURCES - -Otherwise other sources that use it might be built before it's ready leading -to build failure, for example by iptables/nft.c - -Signed-off-by: Gustavo Zacarias ---- -Status: sent upstream (mailing list, no link yet) - - iptables/Makefile.am | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/iptables/Makefile.am b/iptables/Makefile.am -index 3c0faa5..c3eb8a8 100644 ---- a/iptables/Makefile.am -+++ b/iptables/Makefile.am -@@ -4,6 +4,8 @@ AM_CFLAGS = ${regular_CFLAGS} - AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_builddir}/include -I${top_srcdir}/include ${kinclude_CPPFLAGS} ${libmnl_CFLAGS} ${libnftnl_CFLAGS} ${libnetfilter_conntrack_CFLAGS} - AM_YFLAGS = -d - -+BUILT_SOURCES = -+ - xtables_multi_SOURCES = xtables-multi.c iptables-xml.c - xtables_multi_CFLAGS = ${AM_CFLAGS} - xtables_multi_LDADD = ../extensions/libext.a -@@ -27,6 +29,7 @@ xtables_multi_LDADD += ../libxtables/libxtables.la -lm - - # nftables compatibility layer - if ENABLE_NFTABLES -+BUILT_SOURCES += xtables-config-parser.h - xtables_compat_multi_SOURCES = xtables-compat-multi.c iptables-xml.c - xtables_compat_multi_CFLAGS = ${AM_CFLAGS} - xtables_compat_multi_LDADD = ../extensions/libext.a ../extensions/libext_ebt.a --- -2.4.10 - diff --git a/package/iptables/Config.in b/package/iptables/Config.in index c7b69a8d73..cdcd1c2893 100644 --- a/package/iptables/Config.in +++ b/package/iptables/Config.in @@ -22,14 +22,14 @@ config BR2_PACKAGE_IPTABLES_NFTABLES # uses dlfcn depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 select BR2_PACKAGE_LIBMNL select BR2_PACKAGE_LIBNFTNL help Build nftables compat utilities. -comment "nftables compat needs a toolchain w/ wchar, dynamic library, headers >= 3.4" - depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || \ +comment "nftables compat needs a toolchain w/ wchar, dynamic library, headers >= 3.12" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \ !BR2_USE_WCHAR || BR2_STATIC_LIBS endif diff --git a/package/iptables/iptables.hash b/package/iptables/iptables.hash index 18d8b4406c..b673c8abdb 100644 --- a/package/iptables/iptables.hash +++ b/package/iptables/iptables.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/iptables/iptables-1.6.0.tar.bz2.{md5sum,sha1sum} -md5 27ba3451cb622467fc9267a176f19a31 iptables-1.6.0.tar.bz2 -sha1 21a694e75b0d6863cc001f85fb15915d12b8cc22 iptables-1.6.0.tar.bz2 +# From ftp://ftp.netfilter.org/pub/iptables/iptables-1.6.1.tar.bz2.{md5sum,sha1sum} +md5 ab38a33806b6182c6f53d6afb4619add iptables-1.6.1.tar.bz2 +sha1 b2592490ca7a6c2cd0f069e167a4337c86acdf91 iptables-1.6.1.tar.bz2 diff --git a/package/iptables/iptables.mk b/package/iptables/iptables.mk index 12e00f2383..90fab345be 100644 --- a/package/iptables/iptables.mk +++ b/package/iptables/iptables.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPTABLES_VERSION = 1.6.0 +IPTABLES_VERSION = 1.6.1 IPTABLES_SOURCE = iptables-$(IPTABLES_VERSION).tar.bz2 IPTABLES_SITE = http://ftp.netfilter.org/pub/iptables IPTABLES_INSTALL_STAGING = YES @@ -15,8 +15,6 @@ IPTABLES_LICENSE_FILES = COPYING # Building static causes ugly warnings on some plugins IPTABLES_CONF_OPTS = --libexecdir=/usr/lib --with-kernel=$(STAGING_DIR)/usr \ $(if $(BR2_STATIC_LIBS),,--disable-static) -# For 0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch -IPTABLES_AUTORECONF = YES # For connlabel match ifeq ($(BR2_PACKAGE_LIBNETFILTER_CONNTRACK),y) diff --git a/package/iputils/iputils.hash b/package/iputils/iputils.hash index 42ea5fd8d9..d7d3f5cbd1 100644 --- a/package/iputils/iputils.hash +++ b/package/iputils/iputils.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 08b9f686fcc874f75b465f90f3e831aa9ac1f2e043f4bb61e6d99868e8869025 iputils-31d947cf7156cf78d3f57e0bd82b33e6f6ece6b4.tar.gz +sha256 79e22e940b6f52c37810657c8f12e7ba85692b517d6cd6e90cbceac2d94fc5e8 iputils-55828d1fef3fed7f07abcbf7be9282a9662e78c7.tar.gz diff --git a/package/iputils/iputils.mk b/package/iputils/iputils.mk index 18e48b4beb..21f5dcbe06 100644 --- a/package/iputils/iputils.mk +++ b/package/iputils/iputils.mk @@ -11,7 +11,7 @@ # and IPv6 updates. # http://www.spinics.net/lists/netdev/msg279881.html -IPUTILS_VERSION = 31d947cf7156cf78d3f57e0bd82b33e6f6ece6b4 +IPUTILS_VERSION = 55828d1fef3fed7f07abcbf7be9282a9662e78c7 IPUTILS_SITE = $(call github,iputils,iputils,$(IPUTILS_VERSION)) IPUTILS_LICENSE = GPLv2+, BSD-3c, BSD-4c # Only includes a license file for BSD @@ -36,6 +36,13 @@ endif ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) IPUTILS_MAKE_OPTS += USE_GCRYPT=yes IPUTILS_DEPENDENCIES += libgcrypt +# When gettext is enabled (BR2_PACKAGE_GETTEXT=y), and provides libintl +# (BR2_NEEDS_GETTEXT=y), libgpg-error will link with libintl, and libgpg-error +# is pulled in by libgcrypt. Since iputils doesn't use libtool, we have to link +# with libintl explicitly for static linking. +ifeq ($(BR2_STATIC_LIBS)$(BR2_NEEDS_GETTEXT)$(BR2_PACKAGE_GETTEXT),yyy) +IPUTILS_MAKE_OPTS += ADDLIB='-lintl' +endif else IPUTILS_MAKE_OPTS += USE_GCRYPT=no endif @@ -55,7 +62,7 @@ IPUTILS_MAKE_OPTS += USE_CRYPTO=no endif define IPUTILS_BUILD_CMDS - $(MAKE) -C $(@D) $(IPUTILS_MAKE_OPTS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(IPUTILS_MAKE_OPTS) endef define IPUTILS_INSTALL_TARGET_CMDS @@ -66,7 +73,6 @@ define IPUTILS_INSTALL_TARGET_CMDS $(INSTALL) -D -m 755 $(@D)/rdisc $(TARGET_DIR)/sbin/rdisc $(INSTALL) -D -m 755 $(@D)/tftpd $(TARGET_DIR)/usr/sbin/in.tftpd $(INSTALL) -D -m 755 $(@D)/tracepath $(TARGET_DIR)/bin/tracepath - $(INSTALL) -D -m 755 $(@D)/tracepath6 $(TARGET_DIR)/bin/tracepath6 $(INSTALL) -D -m 755 $(@D)/traceroute6 $(TARGET_DIR)/bin/traceroute6 endef diff --git a/package/irda-utils/irda-utils.mk b/package/irda-utils/irda-utils.mk index 2c35dff791..4b1700798f 100644 --- a/package/irda-utils/irda-utils.mk +++ b/package/irda-utils/irda-utils.mk @@ -15,7 +15,7 @@ IRDA_UTILS_CFLAGS += -DNO_FORK=1 endif define IRDA_UTILS_BUILD_CMDS - $(MAKE) \ + $(TARGET_MAKE_ENV) $(MAKE) \ CC="$(TARGET_CC)" \ CFLAGS="$(IRDA_UTILS_CFLAGS)" \ SYS_INCLUDES= \ diff --git a/package/irqbalance/irqbalance.hash b/package/irqbalance/irqbalance.hash new file mode 100644 index 0000000000..032c49152f --- /dev/null +++ b/package/irqbalance/irqbalance.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f1b8115948bb9f0bc36b9d7143ee8be751a294bc189d311408e753acc37169c3 irqbalance-v1.0.9.tar.gz diff --git a/package/irssi/irssi.hash b/package/irssi/irssi.hash index fa49d8594a..b1048bf8f5 100644 --- a/package/irssi/irssi.hash +++ b/package/irssi/irssi.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 c0a177f749757c2d171ebe49ab0f0dd9cf9374dea81ab01904d0549bcb057840 irssi-0.8.18.tar.xz +sha256 e433063b8714dcf17438126902c9a9d5c97944b3185ecd0fc5ae25c4959bf35a irssi-0.8.21.tar.xz diff --git a/package/irssi/irssi.mk b/package/irssi/irssi.mk index 8272e4404f..e467f89890 100644 --- a/package/irssi/irssi.mk +++ b/package/irssi/irssi.mk @@ -4,7 +4,7 @@ # ################################################################################ -IRSSI_VERSION = 0.8.18 +IRSSI_VERSION = 0.8.21 IRSSI_SOURCE = irssi-$(IRSSI_VERSION).tar.xz # Do not use the github helper here. The generated tarball is *NOT* the # same as the one uploaded by upstream for the release. diff --git a/package/isl/isl.mk b/package/isl/isl.mk index bb79039e88..74de125b60 100644 --- a/package/isl/isl.mk +++ b/package/isl/isl.mk @@ -12,7 +12,7 @@ ISL_SOURCE = isl-$(ISL_VERSION).tar.xz ISL_SITE = http://isl.gforge.inria.fr ISL_LICENSE = MIT ISL_LICENSE_FILES = LICENSE -ISL_DEPENDENCIES = gmp +HOST_ISL_DEPENDENCIES = host-gmp # Our libtool patch doesn't apply, and since this package is only # built for the host, we don't really care about it. diff --git a/package/iw/iw.hash b/package/iw/iw.hash index 424a71e5de..414f34225f 100644 --- a/package/iw/iw.hash +++ b/package/iw/iw.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/iw/sha256sums.asc -sha256 a6add81a51667649d8d7cfba783ab6a0f82e250a663a4065b13babdff3f6b220 iw-4.3.tar.xz +sha256 324cc805fad52cba2c16b9ab569906889fb645cc962aac4cfda1db85d2de97ce iw-4.9.tar.xz diff --git a/package/iw/iw.mk b/package/iw/iw.mk index 3c1767ae08..faff5fc717 100644 --- a/package/iw/iw.mk +++ b/package/iw/iw.mk @@ -4,14 +4,16 @@ # ################################################################################ -IW_VERSION = 4.3 +IW_VERSION = 4.9 IW_SOURCE = iw-$(IW_VERSION).tar.xz IW_SITE = $(BR2_KERNEL_MIRROR)/software/network/iw -IW_LICENSE = iw license +IW_LICENSE = ISC IW_LICENSE_FILES = COPYING IW_DEPENDENCIES = host-pkgconf libnl IW_MAKE_OPTS = CC="$(TARGET_CC)" LD="$(TARGET_LD)" LDFLAGS="$(TARGET_LDFLAGS)" -IW_MAKE_ENV = PKG_CONFIG="$(HOST_DIR)/usr/bin/pkg-config" \ +IW_MAKE_ENV = \ + $(TARGET_MAKE_ENV) \ + PKG_CONFIG="$(HOST_DIR)/usr/bin/pkg-config" \ GIT_DIR=$(IW_DIR) define IW_BUILD_CMDS diff --git a/package/jack2/0001-Add-support-for-nios2.patch b/package/jack2/0001-Add-support-for-nios2.patch deleted file mode 100644 index f6d60af215..0000000000 --- a/package/jack2/0001-Add-support-for-nios2.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 3651f95d0433c84d2b67e30e68dd6140585535b0 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Tue, 19 Apr 2016 19:32:35 +0200 -Subject: [PATCH 1/1] Add support for nios2 - -When compiling jack on nios2, compilation fails because NGREGS is not -defined. Since this is only for debug output on segmentation faults, stub -the debug print out like it's been done for other platforms before. - -Inspired by -https://github.com/jackaudio/jack2/commit/d11bb095291d8880508c87adfe625bf2bcab1456 - -Signed-off-by: Bernd Kuhls -[Patch sent upstream: https://github.com/jackaudio/jack2/pull/199] ---- - dbus/sigsegv.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dbus/sigsegv.c b/dbus/sigsegv.c -index 64c3986..ee12f91 100644 ---- a/dbus/sigsegv.c -+++ b/dbus/sigsegv.c -@@ -104,7 +104,7 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) { - jack_error("info.si_errno = %d", info->si_errno); - jack_error("info.si_code = %d (%s)", info->si_code, si_code_str); - jack_error("info.si_addr = %p", info->si_addr); --#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__) -+#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__) && !defined(nios2) - for(i = 0; i < NGREG; i++) - jack_error("reg[%02d] = 0x" REGFORMAT, i, - #if defined(__powerpc64__) --- -2.8.0.rc3 - diff --git a/package/jack2/0001-Improve-check-for-ucontext.patch b/package/jack2/0001-Improve-check-for-ucontext.patch new file mode 100644 index 0000000000..b8aa1da721 --- /dev/null +++ b/package/jack2/0001-Improve-check-for-ucontext.patch @@ -0,0 +1,84 @@ +From ad79670d6d1e7ef2aad6935715921e5317cbe618 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 23 May 2016 22:28:12 +0200 +Subject: [PATCH] Improve check for ucontext + +The ucontext functionality is not available on all CPUs with all C +libraries. Instead of making just assumptions based on the CPU +architecture, this commit adds the necessary checks in wscript to verify +the availability of the ucontext functionality, before using it in +dbus/sigsegv.c. + +This avoids the long list of architecture exclusions, and make it more +robust when building jack2 for new CPU architectures. + +Signed-off-by: Thomas Petazzoni +--- + dbus/sigsegv.c | 12 ++++++------ + wscript | 16 +++++++++++++++- + 2 files changed, 21 insertions(+), 7 deletions(-) + +diff --git a/dbus/sigsegv.c b/dbus/sigsegv.c +index df2c42c..00a62b5 100644 +--- a/dbus/sigsegv.c ++++ b/dbus/sigsegv.c +@@ -106,20 +106,20 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) { + jack_error("info.si_errno = %d", info->si_errno); + jack_error("info.si_code = %d (%s)", info->si_code, si_code_str); + jack_error("info.si_addr = %p", info->si_addr); +-#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__) ++#if defined(HAVE_UCONTEXT) && defined(HAVE_NGREG) + for(i = 0; i < NGREG; i++) + jack_error("reg[%02d] = 0x" REGFORMAT, i, +-#if defined(__powerpc64__) ++#if defined(HAVE_UCONTEXT_GP_REGS) + ucontext->uc_mcontext.gp_regs[i] +-#elif defined(__powerpc__) ++#elif defined(HAVE_UCONTEXT_UC_REGS) + ucontext->uc_mcontext.uc_regs[i] +-#elif defined(__sparc__) && defined(__arch64__) ++#elif defined(HAVE_UCONTEXT_MC_GREGS) + ucontext->uc_mcontext.mc_gregs[i] +-#else ++#elif defined(HAVE_UCONTEXT_GREGS) + ucontext->uc_mcontext.gregs[i] + #endif + ); +-#endif /* alpha, ia64, kFreeBSD, arm, hppa */ ++#endif /* defined(HAVE_UCONTEXT) && defined(HAVE_NGREG) */ + + #if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64) + # if defined(SIGSEGV_STACK_IA64) +diff --git a/wscript b/wscript +index 63ba3aa..34a56fc 100644 +--- a/wscript ++++ b/wscript +@@ -168,10 +168,24 @@ def configure(conf): + + conf.check_cc(header_name='execinfo.h', define_name="HAVE_EXECINFO_H", mandatory=False) + conf.check_cc(header_name='samplerate.h', define_name="HAVE_SAMPLERATE") +- + if conf.is_defined('HAVE_SAMPLERATE'): + conf.env['LIB_SAMPLERATE'] = ['samplerate'] + ++ # test for the availability of ucontext, and how it should be used ++ for t in ("gp_regs", "uc_regs", "mc_gregs", "gregs"): ++ fragment = "#include \n" ++ fragment += "int main() { ucontext_t *ucontext; return (int) ucontext->uc_mcontext.%s[0]; }" % t ++ confvar = "HAVE_UCONTEXT_%s" % t.upper() ++ conf.check_cc(fragment=fragment, define_name=confvar, mandatory=False, ++ msg="Checking for ucontext->uc_mcontext.%s" % t) ++ if conf.is_defined(confvar): ++ conf.define('HAVE_UCONTEXT', 1) ++ ++ fragment = "#include \n" ++ fragment += "int main() { return NGREG; }" ++ conf.check_cc(fragment=fragment, define_name="HAVE_NGREG", mandatory=False, ++ msg="Checking for NGREG") ++ + conf.sub_config('example-clients') + + if conf.check_cfg(package='celt', atleast_version='0.11.0', args='--cflags --libs', mandatory=False): +-- +2.7.4 + diff --git a/package/jack2/0003-tests-define-__STDC_LIMIT_MACROS.patch b/package/jack2/0003-tests-define-__STDC_LIMIT_MACROS.patch new file mode 100644 index 0000000000..e4990b5c34 --- /dev/null +++ b/package/jack2/0003-tests-define-__STDC_LIMIT_MACROS.patch @@ -0,0 +1,41 @@ +From c971aaab74ca6e7d4ac3a06bd26e7309dfc5da45 Mon Sep 17 00:00:00 2001 +From: Rahul Bedarkar +Date: Mon, 22 Aug 2016 19:04:47 +0530 +Subject: [PATCH] tests: define __STDC_LIMIT_MACROS + +With glibc 2.16, we get following build error when building jack2: + + [193/247] cxx: tests/iodelay.cpp -> build/tests/iodelay.cpp.4.o + ../tests/iodelay.cpp:171:43: error: 'UINT32_MAX' was not declared in this scope + ../tests/iodelay.cpp:171:55: error: 'UINT32_MAX' was not declared in this scope + ../tests/iodelay.cpp:172:44: error: 'UINT32_MAX' was not declared in this scope + ../tests/iodelay.cpp:172:56: error: 'UINT32_MAX' was not declared in this scope + +In glibc 2.17 or older version, Header defines these macros +for C++ only if explicitly requested by defining __STDC_LIMIT_MACROS. + +We can't use since it requires C++11 standard. + +This build issue found by Buildroot autobuilder. +http://autobuild.buildroot.net/results/369/369ce208ffea43dad75ba0a13469159b341e3bf5/ + +Signed-off-by: Rahul Bedarkar +--- + tests/iodelay.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/iodelay.cpp b/tests/iodelay.cpp +index 1ef470f..f5c5836 100644 +--- a/tests/iodelay.cpp ++++ b/tests/iodelay.cpp +@@ -20,6 +20,7 @@ + + #include + #include ++#define __STDC_LIMIT_MACROS + #include + #include + #include +-- +2.6.2 + diff --git a/package/jack2/jack2.hash b/package/jack2/jack2.hash new file mode 100644 index 0000000000..1b981a4b83 --- /dev/null +++ b/package/jack2/jack2.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 88f1b6601b7c8950e6a2d5940b423a33ee628ae5583da40bdce3d9317d8c600d jack2-v1.9.10.tar.gz +sha256 f372c4300e3fb2c1ce053e47829df44f3f8b933feb820759392187723ae8e640 ff1ed2c4524095055140370c1008a2d9cccc5645.patch diff --git a/package/jack2/jack2.mk b/package/jack2/jack2.mk index 777a321319..23c9723421 100644 --- a/package/jack2/jack2.mk +++ b/package/jack2/jack2.mk @@ -9,6 +9,9 @@ JACK2_SITE = $(call github,jackaudio,jack2,$(JACK2_VERSION)) JACK2_LICENSE = GPLv2+ (jack server), LGPLv2.1+ (jack library) JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python JACK2_INSTALL_STAGING = YES +JACK2_PATCH = https://github.com/jackaudio/jack2/commit/ff1ed2c4524095055140370c1008a2d9cccc5645.patch + +JACK2_CONF_OPTS = --alsa ifeq ($(BR2_PACKAGE_OPUS),y) JACK2_DEPENDENCIES += opus @@ -41,28 +44,4 @@ endif # gtkiostream, which we do not have, so we don't need to depend on # eigen. -define JACK2_CONFIGURE_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - $(HOST_DIR)/usr/bin/python2 ./waf configure \ - --prefix=/usr \ - --alsa \ - $(JACK2_CONF_OPTS) \ - ) -endef - -define JACK2_BUILD_CMDS - (cd $(@D); $(HOST_DIR)/usr/bin/python2 ./waf build -j $(PARALLEL_JOBS)) -endef - -define JACK2_INSTALL_TARGET_CMDS - (cd $(@D); $(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(TARGET_DIR) \ - install) -endef - -define JACK2_INSTALL_STAGING_CMDS - (cd $(@D); $(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(STAGING_DIR) \ - install) -endef - -$(eval $(generic-package)) +$(eval $(waf-package)) diff --git a/package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch b/package/jamvm/0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch similarity index 50% rename from package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch rename to package/jamvm/0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch index 50f95cde57..78ee9b7e18 100644 --- a/package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch +++ b/package/jamvm/0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch @@ -1,86 +1,108 @@ -From 7152ded5219453c9ff1cd062cecbeaf4d77e4cab Mon Sep 17 00:00:00 2001 +From ecd4eceae98cfb1c83133bdeaa9095546ca8b7c6 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 26 May 2016 15:05:48 +0200 -Subject: [PATCH] Use instead of +Subject: [PATCH] Use when available instead of musl libc (http://musl-libc.org lack the non-standard header, which is used in src/os/linux/{i386,x86_64}/init.c files to setup the floating point precision. This patch makes it use the -standard C header instead. +standard C header instead when available. Original patch at Felix Janda at -https://sourceforge.net/p/jamvm/patches/6/. +https://sourceforge.net/p/jamvm/patches/6/, adapted to still use + if is not provided. Signed-off-by: Thomas Petazzoni --- - src/os/linux/i386/init.c | 12 ++++++------ - src/os/linux/x86_64/init.c | 16 ++++++---------- - 2 files changed, 12 insertions(+), 16 deletions(-) + configure.ac | 2 +- + src/os/linux/i386/init.c | 15 +++++++++++++++ + src/os/linux/x86_64/init.c | 15 +++++++++++++-- + 3 files changed, 29 insertions(+), 3 deletions(-) +diff --git a/configure.ac b/configure.ac +index 19f77e6..ce59a3e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -279,7 +279,7 @@ fi + + dnl Checks for header files. + AC_HEADER_STDC +-AC_CHECK_HEADERS(sys/time.h unistd.h endian.h sys/param.h locale.h alloca.h) ++AC_CHECK_HEADERS(sys/time.h unistd.h endian.h sys/param.h locale.h alloca.h fenv.h) + + if test "$enable_zip" != no; then + AC_CHECK_HEADER(zlib.h,,AC_MSG_ERROR(zlib.h is missing)) diff --git a/src/os/linux/i386/init.c b/src/os/linux/i386/init.c -index d9c6648..94a733e 100644 +index d9c6648..8fefe7d 100644 --- a/src/os/linux/i386/init.c +++ b/src/os/linux/i386/init.c -@@ -19,18 +19,18 @@ +@@ -19,18 +19,33 @@ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ --#include ++#include "config.h" ++ ++#if defined(HAVE_FENV_H) +#include ++#else + #include ++#endif /* Change floating point precision to double (64-bit) from * the extended (80-bit) Linux default. */ void setDoublePrecision() { -- fpu_control_t cw; ++#if defined(HAVE_FENV_H) + fenv_t fenv; - -- _FPU_GETCW(cw); -- cw &= ~_FPU_EXTENDED; -- cw |= _FPU_DOUBLE; -- _FPU_SETCW(cw); ++ + fegetenv(&fenv); + fenv.__control_word &= ~0x300; /* _FPU_EXTENDED */ + fenv.__control_word |= 0x200; /* _FPU_DOUBLE */ + fesetenv(&fenv); ++#else + fpu_control_t cw; + + _FPU_GETCW(cw); + cw &= ~_FPU_EXTENDED; + cw |= _FPU_DOUBLE; + _FPU_SETCW(cw); ++#endif } void initialisePlatform() { diff --git a/src/os/linux/x86_64/init.c b/src/os/linux/x86_64/init.c -index 9d55229..a76a923 100644 +index 9d55229..b42b14e 100644 --- a/src/os/linux/x86_64/init.c +++ b/src/os/linux/x86_64/init.c -@@ -19,9 +19,7 @@ +@@ -19,7 +19,11 @@ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -#ifdef __linux__ --#include --#endif ++#include "config.h" ++ ++#if defined(HAVE_FENV_H) +#include ++#else + #include + #endif - /* Change the x87 FPU precision to double (64-bit) from the extended - (80-bit) Linux default. Note, unlike on i386, my testcases pass -@@ -30,14 +28,12 @@ +@@ -30,7 +34,14 @@ */ void setDoublePrecision() { -#ifdef __linux__ -- fpu_control_t cw; ++#if defined(HAVE_FENV_H) + fenv_t fenv; - -- _FPU_GETCW(cw); -- cw &= ~_FPU_EXTENDED; -- cw |= _FPU_DOUBLE; -- _FPU_SETCW(cw); --#endif ++ + fegetenv(&fenv); + fenv.__control_word &= ~0x300; /*_FPU_EXTENDED */ + fenv.__control_word |= 0x200; /*_FPU_DOUBLE */ + fesetenv(&fenv); - } ++#else + fpu_control_t cw; - void initialisePlatform() { + _FPU_GETCW(cw); -- 2.7.4 diff --git a/package/jamvm/jamvm.mk b/package/jamvm/jamvm.mk index b1520ada49..ee80c80b2f 100644 --- a/package/jamvm/jamvm.mk +++ b/package/jamvm/jamvm.mk @@ -9,6 +9,8 @@ JAMVM_SITE = http://downloads.sourceforge.net/project/jamvm/jamvm/JamVM%20$(JAMV JAMVM_LICENSE = GPLv2+ JAMVM_LICENSE_FILES = COPYING JAMVM_DEPENDENCIES = zlib classpath +# For 0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch +JAMVM_AUTORECONF = YES # int inlining seems to crash jamvm, don't build shared version of internal lib JAMVM_CONF_OPTS = \ --with-classpath-install-dir=/usr \ @@ -22,4 +24,11 @@ ifeq ($(BR2_arm),y) JAMVM_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -marm" endif +# Needed for autoreconf +define JAMVM_CREATE_M4_DIR + mkdir -p $(@D)/m4 +endef + +JAMVM_POST_PATCH_HOOKS += JAMVM_CREATE_M4_DIR + $(eval $(autotools-package)) diff --git a/package/jansson/jansson.hash b/package/jansson/jansson.hash index 013d9296f4..adb345d2f0 100644 --- a/package/jansson/jansson.hash +++ b/package/jansson/jansson.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 7905e6590fb316c0ff943df3dc6a21cd81a59cff7a6d12514054c359d04d78d7 jansson-2.7.tar.gz +sha256 0ad0d074ca049a36637e7abef755d40849ad73e926b93914ce294927b97bd2a5 jansson-2.9.tar.gz diff --git a/package/jansson/jansson.mk b/package/jansson/jansson.mk index 193fafbaa9..5e131188fa 100644 --- a/package/jansson/jansson.mk +++ b/package/jansson/jansson.mk @@ -4,7 +4,7 @@ # ################################################################################ -JANSSON_VERSION = 2.7 +JANSSON_VERSION = 2.9 JANSSON_SITE = http://www.digip.org/jansson/releases JANSSON_LICENSE = MIT JANSSON_LICENSE_FILES = LICENSE diff --git a/package/janus-gateway/0001-disable-ssp.patch b/package/janus-gateway/0001-disable-ssp.patch index 9ef184aa80..f03b58589b 100644 --- a/package/janus-gateway/0001-disable-ssp.patch +++ b/package/janus-gateway/0001-disable-ssp.patch @@ -5,6 +5,8 @@ the package user pass the appropriate CFLAGS to enable SSP if needed. Signed-off-by: Gregory Dymarek Signed-off-by: Thomas Petazzoni +(rebased against v0.1.0) +Signed-off-by: Bernd Kuhls diff -rupN janus-gateway-master.orig/Makefile.am janus-gateway-master/Makefile.am --- janus-gateway-master.orig/Makefile.am 2014-11-27 14:36:31.000000000 +0000 @@ -13,8 +15,8 @@ diff -rupN janus-gateway-master.orig/Makefile.am janus-gateway-master/Makefile.a # some fairly big refactoring though, which can wait. # AM_CFLAGS += -Wshadow -Wstrict-aliasing=2 --AM_CFLAGS += -fstack-protector-all -g -ggdb -fPIC -rdynamic -+AM_CFLAGS += -g -ggdb -fPIC -rdynamic +-AM_CFLAGS += -fstack-protector-all -g -ggdb -fPIC -rdynamic -pthread ++AM_CFLAGS += -g -ggdb -fPIC -rdynamic -pthread # FIXME: make docs work with distcheck DISTCHECK_CONFIGURE_FLAGS = --disable-docs --enable-post-processing diff --git a/package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch b/package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch index 14acae5575..13bc21ea42 100644 --- a/package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch +++ b/package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch @@ -14,6 +14,8 @@ and uses it to detect if the -Wunused-but-set-variable option is supported, and only uses it in this case. Signed-off-by: Thomas Petazzoni +(rebased against v0.1.0) +Signed-off-by: Bernd Kuhls --- Makefile.am | 2 +- configure.ac | 3 ++ @@ -29,11 +31,11 @@ index 5d23e0b..0f51f6a 100644 -Wnested-externs -Wstrict-prototypes -Wunsafe-loop-optimizations \ -Wwrite-strings -Wno-missing-field-initializers -Wno-unused-parameter \ -Wcast-align -Wformat-nonliteral -Wformat-security -Wswitch-default \ -- -Wmissing-include-dirs -Waggregate-return -Wunused-but-set-variable \ -+ -Wmissing-include-dirs -Waggregate-return @GCC_WARN_UNUSED_BUT_SET@ \ +- -Wmissing-include-dirs -Wno-aggregate-return -Wunused-but-set-variable \ ++ -Wmissing-include-dirs -Wno-aggregate-return @GCC_WARN_UNUSED_BUT_SET@ \ -Warray-bounds -Wold-style-definition -Wsign-compare -Wlarger-than=65537 AM_CFLAGS += -Wno-undef # sophiasip is not -Wundef--safe - AM_CFLAGS += -Wredundant-decls # sophiasip also contains redundant declarations + AM_CFLAGS += -Wno-redundant-decls # sophiasip also contains redundant declarations diff --git a/configure.ac b/configure.ac index 17870a7..f9bb1e4 100644 --- a/configure.ac diff --git a/package/janus-gateway/Config.in b/package/janus-gateway/Config.in index 035ee6c334..5c7b63374b 100644 --- a/package/janus-gateway/Config.in +++ b/package/janus-gateway/Config.in @@ -1,13 +1,11 @@ -config BR2_PACKAGE_JANUS_GATEWAY +menuconfig BR2_PACKAGE_JANUS_GATEWAY bool "janus-gateway" - select BR2_PACKAGE_LIBMICROHTTPD select BR2_PACKAGE_JANSSON + select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBNICE - select BR2_PACKAGE_SOFIA_SIP select BR2_PACKAGE_LIBSRTP select BR2_PACKAGE_OPENSSL - select BR2_PACKAGE_DING_LIBS - depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, libmicrohttpd + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_WCHAR # libnice -> libglib2 depends on BR2_USE_MMU # libnice depends on !BR2_STATIC_LIBS # dlopen @@ -17,6 +15,47 @@ config BR2_PACKAGE_JANUS_GATEWAY https://github.com/meetecho/janus-gateway +if BR2_PACKAGE_JANUS_GATEWAY + +comment "plugins" + +config BR2_PACKAGE_JANUS_AUDIO_BRIDGE + bool "audio bridge" + select BR2_PACKAGE_OPUS + +config BR2_PACKAGE_JANUS_ECHO_TEST + bool "echo test" + +config BR2_PACKAGE_JANUS_RECORDPLAY + bool "record and play" + +config BR2_PACKAGE_JANUS_SIP_GATEWAY + bool "sip gateway" + select BR2_PACKAGE_SOFIA_SIP + +config BR2_PACKAGE_JANUS_STREAMING + bool "streaming" + # SO_REUSEPORT + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + +comment "streaming plugin needs a toolchain w/ headers >= 3.9" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9 + +config BR2_PACKAGE_JANUS_TEXT_ROOM + bool "text room" + +config BR2_PACKAGE_JANUS_VIDEO_CALL + bool "video call" + +config BR2_PACKAGE_JANUS_VIDEO_ROOM + bool "video room" + +config BR2_PACKAGE_JANUS_VOICE_MAIL + bool "voice mail" + select BR2_PACKAGE_LIBOGG + +endif + comment "janus-gateway needs a toolchain w/ dynamic library, threads, wchar" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/janus-gateway/janus-gateway.hash b/package/janus-gateway/janus-gateway.hash new file mode 100644 index 0000000000..68b9c3117b --- /dev/null +++ b/package/janus-gateway/janus-gateway.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 5d071592faca2a1574b996b4ca07b6c9e02cd42a719b0dbb4bfb5dfde8d55ff3 janus-gateway-v0.2.1.tar.gz diff --git a/package/janus-gateway/janus-gateway.mk b/package/janus-gateway/janus-gateway.mk index e1361d3dac..212fa4739e 100644 --- a/package/janus-gateway/janus-gateway.mk +++ b/package/janus-gateway/janus-gateway.mk @@ -4,14 +4,14 @@ # ################################################################################ -JANUS_GATEWAY_VERSION = c632c1e9da5ffd8c34df6086a1aa5a8511a2a02d +JANUS_GATEWAY_VERSION = v0.2.1 JANUS_GATEWAY_SITE = $(call github,meetecho,janus-gateway,$(JANUS_GATEWAY_VERSION)) JANUS_GATEWAY_LICENSE = GPLv3 JANUS_GATEWAY_LICENSE_FILES = COPYING # ding-libs provides the ini_config library -JANUS_GATEWAY_DEPENDENCIES = host-pkgconf libmicrohttpd jansson \ - libnice sofia-sip libsrtp host-gengetopt openssl ding-libs +JANUS_GATEWAY_DEPENDENCIES = host-pkgconf jansson libnice \ + libsrtp host-gengetopt libglib2 openssl # Straight out of the repository, no ./configure, and we also patch # configure.ac. @@ -26,27 +26,70 @@ JANUS_GATEWAY_CONF_OPTS = \ --disable-data-channels \ --disable-rabbitmq -ifeq ($(BR2_PACKAGE_LIBWEBSOCK),y) -JANUS_GATEWAY_DEPENDENCIES += libwebsock -JANUS_GATEWAY_CONF_OPTS += --enable-websockets -else -JANUS_GATEWAY_CONF_OPTS += --disable-websockets -endif - -ifeq ($(BR2_PACKAGE_OPUS),y) +ifeq ($(BR2_PACKAGE_JANUS_AUDIO_BRIDGE),y) JANUS_GATEWAY_DEPENDENCIES += opus JANUS_GATEWAY_CONF_OPTS += --enable-plugin-audiobridge else JANUS_GATEWAY_CONF_OPTS += --disable-plugin-audiobridge endif -ifeq ($(BR2_PACKAGE_LIBOGG),y) +ifeq ($(BR2_PACKAGE_JANUS_ECHO_TEST),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-echotest +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-echotest +endif + +ifeq ($(BR2_PACKAGE_JANUS_RECORDPLAY),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-recordplay +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-recordplay +endif + +ifeq ($(BR2_PACKAGE_JANUS_SIP_GATEWAY),y) +JANUS_GATEWAY_DEPENDENCIES += sofia-sip +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-sip +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-sip +endif + +ifeq ($(BR2_PACKAGE_JANUS_STREAMING),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-streaming +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-streaming +endif + +ifeq ($(BR2_PACKAGE_JANUS_TEXT_ROOM),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-textroom +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-textroom +endif + +ifeq ($(BR2_PACKAGE_JANUS_VIDEO_CALL),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-videocall +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-videocall +endif + +ifeq ($(BR2_PACKAGE_JANUS_VIDEO_ROOM),y) +JANUS_GATEWAY_CONF_OPTS += --enable-plugin-videoroom +else +JANUS_GATEWAY_CONF_OPTS += --disable-plugin-videoroom +endif + +ifeq ($(BR2_PACKAGE_JANUS_VOICE_MAIL),y) JANUS_GATEWAY_DEPENDENCIES += libogg JANUS_GATEWAY_CONF_OPTS += --enable-plugin-voicemail else JANUS_GATEWAY_CONF_OPTS += --disable-plugin-voicemail endif +ifeq ($(BR2_PACKAGE_LIBWEBSOCKETS),y) +JANUS_GATEWAY_DEPENDENCIES += libwebsockets +JANUS_GATEWAY_CONF_OPTS += --enable-websockets +else +JANUS_GATEWAY_CONF_OPTS += --disable-websockets +endif + # Parallel build broken JANUS_GATEWAY_MAKE = $(MAKE1) diff --git a/package/jasper/0001-Disable-C-compiler-check.patch b/package/jasper/0001-Disable-C-compiler-check.patch new file mode 100644 index 0000000000..c1f727109c --- /dev/null +++ b/package/jasper/0001-Disable-C-compiler-check.patch @@ -0,0 +1,28 @@ +From e4ed3e2c3fd5a859567f510deeb49a915d96700f Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Sat, 14 Jan 2017 21:06:25 +0200 +Subject: [PATCH] Disable C++ compiler check + +jasper does not use C++ code. Allow use of toolchains without C++ support. + +Signed-off-by: Baruch Siach +--- +Upstream status: https://github.com/mdadams/jasper/pull/110 + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6c99b3e7df31..3ac166b060ad 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,6 +1,6 @@ + cmake_minimum_required (VERSION 2.8.11) + +-project(JasPer) ++project(JasPer C) + + set(CMAKE_MODULE_PATH + ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/build/cmake/modules/") +-- +2.11.0 + diff --git a/package/jasper/0001-fix-CVE-2014-9029.patch b/package/jasper/0001-fix-CVE-2014-9029.patch deleted file mode 100644 index c2e95a8d14..0000000000 --- a/package/jasper/0001-fix-CVE-2014-9029.patch +++ /dev/null @@ -1,36 +0,0 @@ -Fix CVE-2014-9029 - -Patch taken from https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2014-9029 - -Signed-off-by: Baruch Siach ---- - ---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c 2014-11-27 12:45:44.000000000 +0100 -+++ jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c 2014-11-27 12:44:58.000000000 +0100 -@@ -1281,7 +1281,7 @@ static int jpc_dec_process_coc(jpc_dec_t - jpc_coc_t *coc = &ms->parms.coc; - jpc_dec_tile_t *tile; - -- if (JAS_CAST(int, coc->compno) > dec->numcomps) { -+ if (JAS_CAST(int, coc->compno) >= dec->numcomps) { - jas_eprintf("invalid component number in COC marker segment\n"); - return -1; - } -@@ -1307,7 +1307,7 @@ static int jpc_dec_process_rgn(jpc_dec_t - jpc_rgn_t *rgn = &ms->parms.rgn; - jpc_dec_tile_t *tile; - -- if (JAS_CAST(int, rgn->compno) > dec->numcomps) { -+ if (JAS_CAST(int, rgn->compno) >= dec->numcomps) { - jas_eprintf("invalid component number in RGN marker segment\n"); - return -1; - } -@@ -1356,7 +1356,7 @@ static int jpc_dec_process_qcc(jpc_dec_t - jpc_qcc_t *qcc = &ms->parms.qcc; - jpc_dec_tile_t *tile; - -- if (JAS_CAST(int, qcc->compno) > dec->numcomps) { -+ if (JAS_CAST(int, qcc->compno) >= dec->numcomps) { - jas_eprintf("invalid component number in QCC marker segment\n"); - return -1; - } diff --git a/package/jasper/0002-fix-CVE-2014-8138.patch b/package/jasper/0002-fix-CVE-2014-8138.patch deleted file mode 100644 index e107123ce8..0000000000 --- a/package/jasper/0002-fix-CVE-2014-8138.patch +++ /dev/null @@ -1,18 +0,0 @@ -See https://bugzilla.redhat.com/show_bug.cgi?id=1173162 - -Signed-off-by: Gustavo Zacarias - ---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:06:44.000000000 +0100 -+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:06:26.000000000 +0100 -@@ -386,6 +386,11 @@ jas_image_t *jp2_decode(jas_stream_t *in - /* Determine the type of each component. */ - if (dec->cdef) { - for (i = 0; i < dec->numchans; ++i) { -+ /* Is the channel number reasonable? */ -+ if (dec->cdef->data.cdef.ents[i].channo >= dec->numchans) { -+ jas_eprintf("error: invalid channel number in CDEF box\n"); -+ goto error; -+ } - jas_image_setcmpttype(dec->image, - dec->chantocmptlut[dec->cdef->data.cdef.ents[i].channo], - jp2_getct(jas_image_clrspc(dec->image), diff --git a/package/jasper/0003-fix-CVE-2014-8137-1.patch b/package/jasper/0003-fix-CVE-2014-8137-1.patch deleted file mode 100644 index 0253c62839..0000000000 --- a/package/jasper/0003-fix-CVE-2014-8137-1.patch +++ /dev/null @@ -1,47 +0,0 @@ -See https://bugzilla.redhat.com/show_bug.cgi?id=1173157 - -Signed-off-by: Gustavo Zacarias - ---- jasper-1.900.1.orig/src/libjasper/base/jas_icc.c 2014-12-11 14:06:44.000000000 +0100 -+++ jasper-1.900.1/src/libjasper/base/jas_icc.c 2014-12-11 15:16:37.971272386 +0100 -@@ -1009,7 +1009,6 @@ static int jas_icccurv_input(jas_iccattr - return 0; - - error: -- jas_icccurv_destroy(attrval); - return -1; - } - -@@ -1127,7 +1126,6 @@ static int jas_icctxtdesc_input(jas_icca - #endif - return 0; - error: -- jas_icctxtdesc_destroy(attrval); - return -1; - } - -@@ -1206,8 +1204,6 @@ static int jas_icctxt_input(jas_iccattrv - goto error; - return 0; - error: -- if (txt->string) -- jas_free(txt->string); - return -1; - } - -@@ -1328,7 +1324,6 @@ static int jas_icclut8_input(jas_iccattr - goto error; - return 0; - error: -- jas_icclut8_destroy(attrval); - return -1; - } - -@@ -1497,7 +1492,6 @@ static int jas_icclut16_input(jas_iccatt - goto error; - return 0; - error: -- jas_icclut16_destroy(attrval); - return -1; - } - diff --git a/package/jasper/0004-fix-CVE-2014-8137-2.patch b/package/jasper/0004-fix-CVE-2014-8137-2.patch deleted file mode 100644 index e052709d55..0000000000 --- a/package/jasper/0004-fix-CVE-2014-8137-2.patch +++ /dev/null @@ -1,18 +0,0 @@ -See https://bugzilla.redhat.com/show_bug.cgi?id=1173157 - -Signed-off-by: Gustavo Zacarias - ---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:30:54.193209780 +0100 -+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:36:46.313217814 +0100 -@@ -291,7 +291,10 @@ jas_image_t *jp2_decode(jas_stream_t *in - case JP2_COLR_ICC: - iccprof = jas_iccprof_createfrombuf(dec->colr->data.colr.iccp, - dec->colr->data.colr.iccplen); -- assert(iccprof); -+ if (!iccprof) { -+ jas_eprintf("error: failed to parse ICC profile\n"); -+ goto error; -+ } - jas_iccprof_gethdr(iccprof, &icchdr); - jas_eprintf("ICC Profile CS %08x\n", icchdr.colorspc); - jas_image_setclrspc(dec->image, fromiccpcs(icchdr.colorspc)); diff --git a/package/jasper/0005-fix-CVE-2014-8157.patch b/package/jasper/0005-fix-CVE-2014-8157.patch deleted file mode 100644 index ab81674f93..0000000000 --- a/package/jasper/0005-fix-CVE-2014-8157.patch +++ /dev/null @@ -1,17 +0,0 @@ -Fix CVE-2014-8157 - dec->numtiles off-by-one check in jpc_dec_process_sot() -From https://bugzilla.redhat.com/show_bug.cgi?id=1179282 - -Signed-off-by: Gustavo Zacarias - -diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157 jasper-1.900.1/src/libjasper/jpc/jpc_dec.c ---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157 2015-01-19 16:59:36.000000000 +0100 -+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2015-01-19 17:07:41.609863268 +0100 -@@ -489,7 +489,7 @@ static int jpc_dec_process_sot(jpc_dec_t - dec->curtileendoff = 0; - } - -- if (JAS_CAST(int, sot->tileno) > dec->numtiles) { -+ if (JAS_CAST(int, sot->tileno) >= dec->numtiles) { - jas_eprintf("invalid tile number in SOT marker segment\n"); - return -1; - } diff --git a/package/jasper/0006-fix-CVE-2014-8158.patch b/package/jasper/0006-fix-CVE-2014-8158.patch deleted file mode 100644 index 8413d2ef93..0000000000 --- a/package/jasper/0006-fix-CVE-2014-8158.patch +++ /dev/null @@ -1,334 +0,0 @@ -Fix CVE-2014-8158 - unrestricted stack memory use in jpc_qmfb.c -From https://bugzilla.redhat.com/show_bug.cgi?id=1179298 - -Signed-off-by: Gustavo Zacarias - -diff -up jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158 jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c ---- jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158 2015-01-19 17:25:28.730195502 +0100 -+++ jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c 2015-01-19 17:27:20.214663127 +0100 -@@ -306,11 +306,7 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in - { - - int bufsize = JPC_CEILDIVPOW2(numcols, 1); --#if !defined(HAVE_VLA) - jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE]; --#else -- jpc_fix_t splitbuf[bufsize]; --#endif - jpc_fix_t *buf = splitbuf; - register jpc_fix_t *srcptr; - register jpc_fix_t *dstptr; -@@ -318,7 +314,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in - register int m; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Get a buffer. */ - if (bufsize > QMFB_SPLITBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -326,7 +321,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in - abort(); - } - } --#endif - - if (numcols >= 2) { - hstartcol = (numcols + 1 - parity) >> 1; -@@ -360,12 +354,10 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in - } - } - --#if !defined(HAVE_VLA) - /* If the split buffer was allocated on the heap, free this memory. */ - if (buf != splitbuf) { - jas_free(buf); - } --#endif - - } - -@@ -374,11 +366,7 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE]; --#else -- jpc_fix_t splitbuf[bufsize]; --#endif - jpc_fix_t *buf = splitbuf; - register jpc_fix_t *srcptr; - register jpc_fix_t *dstptr; -@@ -386,7 +374,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in - register int m; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Get a buffer. */ - if (bufsize > QMFB_SPLITBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -394,7 +381,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in - abort(); - } - } --#endif - - if (numrows >= 2) { - hstartcol = (numrows + 1 - parity) >> 1; -@@ -428,12 +414,10 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in - } - } - --#if !defined(HAVE_VLA) - /* If the split buffer was allocated on the heap, free this memory. */ - if (buf != splitbuf) { - jas_free(buf); - } --#endif - - } - -@@ -442,11 +426,7 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE]; --#else -- jpc_fix_t splitbuf[bufsize * JPC_QMFB_COLGRPSIZE]; --#endif - jpc_fix_t *buf = splitbuf; - jpc_fix_t *srcptr; - jpc_fix_t *dstptr; -@@ -457,7 +437,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, - int m; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Get a buffer. */ - if (bufsize > QMFB_SPLITBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -465,7 +444,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, - abort(); - } - } --#endif - - if (numrows >= 2) { - hstartcol = (numrows + 1 - parity) >> 1; -@@ -517,12 +495,10 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a, - } - } - --#if !defined(HAVE_VLA) - /* If the split buffer was allocated on the heap, free this memory. */ - if (buf != splitbuf) { - jas_free(buf); - } --#endif - - } - -@@ -531,11 +507,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE]; --#else -- jpc_fix_t splitbuf[bufsize * numcols]; --#endif - jpc_fix_t *buf = splitbuf; - jpc_fix_t *srcptr; - jpc_fix_t *dstptr; -@@ -546,7 +518,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, - int m; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Get a buffer. */ - if (bufsize > QMFB_SPLITBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -554,7 +525,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, - abort(); - } - } --#endif - - if (numrows >= 2) { - hstartcol = (numrows + 1 - parity) >> 1; -@@ -606,12 +576,10 @@ void jpc_qmfb_split_colres(jpc_fix_t *a, - } - } - --#if !defined(HAVE_VLA) - /* If the split buffer was allocated on the heap, free this memory. */ - if (buf != splitbuf) { - jas_free(buf); - } --#endif - - } - -@@ -619,18 +587,13 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int - { - - int bufsize = JPC_CEILDIVPOW2(numcols, 1); --#if !defined(HAVE_VLA) - jpc_fix_t joinbuf[QMFB_JOINBUFSIZE]; --#else -- jpc_fix_t joinbuf[bufsize]; --#endif - jpc_fix_t *buf = joinbuf; - register jpc_fix_t *srcptr; - register jpc_fix_t *dstptr; - register int n; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Allocate memory for the join buffer from the heap. */ - if (bufsize > QMFB_JOINBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -638,7 +601,6 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int - abort(); - } - } --#endif - - hstartcol = (numcols + 1 - parity) >> 1; - -@@ -670,12 +632,10 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int - ++srcptr; - } - --#if !defined(HAVE_VLA) - /* If the join buffer was allocated on the heap, free this memory. */ - if (buf != joinbuf) { - jas_free(buf); - } --#endif - - } - -@@ -684,18 +644,13 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t joinbuf[QMFB_JOINBUFSIZE]; --#else -- jpc_fix_t joinbuf[bufsize]; --#endif - jpc_fix_t *buf = joinbuf; - register jpc_fix_t *srcptr; - register jpc_fix_t *dstptr; - register int n; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Allocate memory for the join buffer from the heap. */ - if (bufsize > QMFB_JOINBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) { -@@ -703,7 +658,6 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int - abort(); - } - } --#endif - - hstartcol = (numrows + 1 - parity) >> 1; - -@@ -735,12 +689,10 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int - ++srcptr; - } - --#if !defined(HAVE_VLA) - /* If the join buffer was allocated on the heap, free this memory. */ - if (buf != joinbuf) { - jas_free(buf); - } --#endif - - } - -@@ -749,11 +701,7 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE]; --#else -- jpc_fix_t joinbuf[bufsize * JPC_QMFB_COLGRPSIZE]; --#endif - jpc_fix_t *buf = joinbuf; - jpc_fix_t *srcptr; - jpc_fix_t *dstptr; -@@ -763,7 +711,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, - register int i; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Allocate memory for the join buffer from the heap. */ - if (bufsize > QMFB_JOINBUFSIZE) { - if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) { -@@ -771,7 +718,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, - abort(); - } - } --#endif - - hstartcol = (numrows + 1 - parity) >> 1; - -@@ -821,12 +767,10 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a, - srcptr += JPC_QMFB_COLGRPSIZE; - } - --#if !defined(HAVE_VLA) - /* If the join buffer was allocated on the heap, free this memory. */ - if (buf != joinbuf) { - jas_free(buf); - } --#endif - - } - -@@ -835,11 +779,7 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, - { - - int bufsize = JPC_CEILDIVPOW2(numrows, 1); --#if !defined(HAVE_VLA) - jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE]; --#else -- jpc_fix_t joinbuf[bufsize * numcols]; --#endif - jpc_fix_t *buf = joinbuf; - jpc_fix_t *srcptr; - jpc_fix_t *dstptr; -@@ -849,7 +789,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, - register int i; - int hstartcol; - --#if !defined(HAVE_VLA) - /* Allocate memory for the join buffer from the heap. */ - if (bufsize > QMFB_JOINBUFSIZE) { - if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) { -@@ -857,7 +796,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, - abort(); - } - } --#endif - - hstartcol = (numrows + 1 - parity) >> 1; - -@@ -907,12 +845,10 @@ void jpc_qmfb_join_colres(jpc_fix_t *a, - srcptr += numcols; - } - --#if !defined(HAVE_VLA) - /* If the join buffer was allocated on the heap, free this memory. */ - if (buf != joinbuf) { - jas_free(buf); - } --#endif - - } - diff --git a/package/jasper/0007-preserve-cflags.patch b/package/jasper/0007-preserve-cflags.patch deleted file mode 100644 index 7e4c4a26f0..0000000000 --- a/package/jasper/0007-preserve-cflags.patch +++ /dev/null @@ -1,27 +0,0 @@ -From: Max Filippov -Subject: Don't overwrite CFLAGS when configured with --enable-debug - -This drops architecture-specific ABI flags, which may be important. - -Signded-off-by: Max Filippov - ---- jasper-1.900.1/configure.ac.orig 2015-05-18 22:27:53.057512760 +0300 -+++ jasper-1.900.1/configure.ac 2015-05-18 22:28:36.090415422 +0300 -@@ -327,7 +327,7 @@ - AC_DEFINE(DEBUG) - AC_DEFINE(DEBUG_OVERFLOW) - if test "$GCC" = yes; then -- CFLAGS="-g -O0" -+ CFLAGS="$CFLAGS -g -O0" - fi - ;; - no) -@@ -357,7 +357,7 @@ - case "${enableval}" in - yes) - if test "$GCC" = yes; then -- CFLAGS="-g -O0" -+ CFLAGS="$CFLAGS -g -O0" - fi - ;; - no) diff --git a/package/jasper/Config.in b/package/jasper/Config.in index 087b520f11..7296936570 100644 --- a/package/jasper/Config.in +++ b/package/jasper/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JASPER bool "jasper" - select BR2_PACKAGE_JPEG help JPEG-2000 decoder diff --git a/package/jasper/jasper.hash b/package/jasper/jasper.hash index 4d9ed7432a..6c3ab473cf 100644 --- a/package/jasper/jasper.hash +++ b/package/jasper/jasper.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 6e9a959bf4f8cb02f77f42d1b9880b8e85d021ac51f43d8787b5438fd2b7a1c5 jasper-1.900.1.tar.bz2 +sha256 54d85428e35263642358a11c312d61cbc054170546fae780e11271df5d1502e8 jasper-2.0.10.tar.gz diff --git a/package/jasper/jasper.mk b/package/jasper/jasper.mk index db86ae88e1..a243b9a1a7 100644 --- a/package/jasper/jasper.mk +++ b/package/jasper/jasper.mk @@ -4,20 +4,25 @@ # ################################################################################ -JASPER_VERSION = 1.900.1 -JASPER_SITE = http://sources.openelec.tv/devel -JASPER_SOURCE = jasper-$(JASPER_VERSION).tar.bz2 +JASPER_VERSION = 2.0.10 +JASPER_SITE = http://www.ece.uvic.ca/~frodo/jasper/software JASPER_INSTALL_STAGING = YES -JASPER_DEPENDENCIES = jpeg -JASPER_LICENSE = MIT +JASPER_LICENSE = JasPer License Version 2.0 JASPER_LICENSE_FILES = LICENSE -# needed to fix rpath issue (http://autobuild.buildroot.net/results/307/307cac65287420252a5bb64715d9a1edd90e72fa/) -JASPER_AUTORECONF = YES +JASPER_SUPPORTS_IN_SOURCE_BUILD = NO +JASPER_CONF_OPTS = \ + -DCMAKE_DISABLE_FIND_PACKAGE_DOXYGEN=TRUE \ + -DCMAKE_DISABLE_FIND_PACKAGE_LATEX=TRUE -# Xtensa gcc is unable to generate correct code with -O0 enabled by -# --enable-debug. Allow package build but disable debug. -ifeq ($(BR2_xtensa)$(BR2_ENABLE_DEBUG),yy) -JASPER_CONF_OPTS += --disable-debug +ifeq ($(BR2_STATIC_LIBS),y) +JASPER_CONF_OPTS += -DJAS_ENABLE_SHARED=OFF endif -$(eval $(autotools-package)) +ifeq ($(BR2_PACKAGE_JPEG),y) +JASPER_CONF_OPTS += -DJAS_ENABLE_LIBJPEG=ON +JASPER_DEPENDENCIES += jpeg +else +JASPER_CONF_OPTS += -DJAS_ENABLE_LIBJPEG=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/jemalloc/0001-Fix-LG_QUANTUM-definition-for-sparc64.patch b/package/jemalloc/0001-Fix-LG_QUANTUM-definition-for-sparc64.patch new file mode 100644 index 0000000000..ef5b857d41 --- /dev/null +++ b/package/jemalloc/0001-Fix-LG_QUANTUM-definition-for-sparc64.patch @@ -0,0 +1,30 @@ +From b3211bd6363ee6884c8db64008dc325a9c711bfb Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan +Date: Thu, 14 Jul 2016 22:44:01 +0200 +Subject: [PATCH] Fix LG_QUANTUM definition for sparc64 + +GCC 4.9.3 cross-compiled for sparc64 defines __sparc_v9__, not +__sparc64__ nor __sparcv9. This prevents LG_QUANTUM from being defined +properly. Adding this new value to the check solves the issue. + +Signed-off-by: Eric Le Bihan +--- + include/jemalloc/internal/jemalloc_internal.h.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/jemalloc/internal/jemalloc_internal.h.in b/include/jemalloc/internal/jemalloc_internal.h.in +index 51bf897..ece15b2 100644 +--- a/include/jemalloc/internal/jemalloc_internal.h.in ++++ b/include/jemalloc/internal/jemalloc_internal.h.in +@@ -234,7 +234,7 @@ typedef unsigned szind_t; + # ifdef __alpha__ + # define LG_QUANTUM 4 + # endif +-# if (defined(__sparc64__) || defined(__sparcv9)) ++# if (defined(__sparc64__) || defined(__sparcv9) || defined(__sparc_v9__)) + # define LG_QUANTUM 4 + # endif + # if (defined(__amd64__) || defined(__x86_64__) || defined(_M_X64)) +-- +2.4.11 + diff --git a/package/jemalloc/Config.in b/package/jemalloc/Config.in new file mode 100644 index 0000000000..b1b92bb7c5 --- /dev/null +++ b/package/jemalloc/Config.in @@ -0,0 +1,24 @@ +config BR2_PACKAGE_JEMALLOC_ARCH_SUPPORTS + bool + default y if BR2_arm || BR2_armeb + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_i386 || BR2_x86_64 + default y if BR2_mips || BR2_mipsel + default y if BR2_sparc64 + default y if BR2_powerpc + default y if BR2_sh4 || BR2sh4eb || BR2_sh4a || BR2_sh4aeb + +config BR2_PACKAGE_JEMALLOC + bool "jemalloc" + depends on BR2_PACKAGE_JEMALLOC_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + This library providing a malloc(3) implementation that emphasizes + fragmentation avoidance and scalable concurrency support. + + http://www.canonware.com/jemalloc/ + +comment "jemalloc needs a toolchain w/ dynamic library, threads" + depends on BR2_PACKAGE_JEMALLOC_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/jemalloc/jemalloc.hash b/package/jemalloc/jemalloc.hash new file mode 100644 index 0000000000..b6c860baa6 --- /dev/null +++ b/package/jemalloc/jemalloc.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 5630650d5c1caab95d2f0898de4fe5ab8519dc680b04963b38bb425ef6a42d57 jemalloc-4.2.1.tar.bz2 diff --git a/package/jemalloc/jemalloc.mk b/package/jemalloc/jemalloc.mk new file mode 100644 index 0000000000..f1c9ffe622 --- /dev/null +++ b/package/jemalloc/jemalloc.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# jemalloc +# +################################################################################ + +JEMALLOC_VERSION = 4.2.1 +JEMALLOC_SOURCE = jemalloc-$(JEMALLOC_VERSION).tar.bz2 +JEMALLOC_SITE = http://www.canonware.com/download/jemalloc +JEMALLOC_LICENSE = BSD-2c +JEMALLOC_LICENSE_FILES = COPYING +JEMALLOC_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_VALGRIND),y) +JEMALLOC_DEPENDENCIES += valgrind +JEMALLOC_CONF_OPTS += --enable-valgrind +else +JEMALLOC_CONF_OPTS += --disable-valgrind +endif + +HOST_JEMALLOC_CONF_OPTS += --disable-valgrind + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/jimtcl/jimtcl.mk b/package/jimtcl/jimtcl.mk index fe35223b43..1c1a6b82a3 100644 --- a/package/jimtcl/jimtcl.mk +++ b/package/jimtcl/jimtcl.mk @@ -51,7 +51,7 @@ endef define JIMTCL_BUILD_CMDS SH_CFLAGS="-fPIC" \ SHOBJ_CFLAGS="-fPIC" \ - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define JIMTCL_INSTALL_STAGING_CMDS diff --git a/package/jpeg-turbo/jpeg-turbo.hash b/package/jpeg-turbo/jpeg-turbo.hash index a38a5afae7..93b245ebdb 100644 --- a/package/jpeg-turbo/jpeg-turbo.hash +++ b/package/jpeg-turbo/jpeg-turbo.hash @@ -1,5 +1,5 @@ -# From http://sourceforge.net/projects/libjpeg-turbo/files/1.4.2/ -sha1 2666158ccd5318513f875867bbc4af52f6eb9f0b libjpeg-turbo-1.4.2.tar.gz -md5 86b0d5f7507c2e6c21c00219162c3c44 libjpeg-turbo-1.4.2.tar.gz +# From http://sourceforge.net/projects/libjpeg-turbo/files/1.5.1/ +sha1 ebb3f9e94044c77831a3e8c809c7ea7506944622 libjpeg-turbo-1.5.1.tar.gz +md5 55deb139b0cac3c8200b75d485fc13f3 libjpeg-turbo-1.5.1.tar.gz # Locally computed -sha256 521bb5d3043e7ac063ce3026d9a59cc2ab2e9636c655a2515af5f4706122233e libjpeg-turbo-1.4.2.tar.gz +sha256 41429d3d253017433f66e3d472b8c7d998491d2f41caa7306b8d9a6f2a2c666c libjpeg-turbo-1.5.1.tar.gz diff --git a/package/jpeg-turbo/jpeg-turbo.mk b/package/jpeg-turbo/jpeg-turbo.mk index 047e925909..e2b7e63b9a 100644 --- a/package/jpeg-turbo/jpeg-turbo.mk +++ b/package/jpeg-turbo/jpeg-turbo.mk @@ -4,15 +4,18 @@ # ################################################################################ -JPEG_TURBO_VERSION = 1.4.2 +JPEG_TURBO_VERSION = 1.5.1 JPEG_TURBO_SOURCE = libjpeg-turbo-$(JPEG_TURBO_VERSION).tar.gz JPEG_TURBO_SITE = http://downloads.sourceforge.net/project/libjpeg-turbo/$(JPEG_TURBO_VERSION) JPEG_TURBO_LICENSE = jpeg-license (BSD-3c-like) -JPEG_TURBO_LICENSE_FILES = README README-turbo.txt +JPEG_TURBO_LICENSE_FILES = LICENSE.md JPEG_TURBO_INSTALL_STAGING = YES +JPEG_TURBO_PROVIDES = jpeg +JPEG_TURBO_DEPENDENCIES = host-pkgconf + JPEG_TURBO_CONF_OPTS = --with-jpeg8 -ifeq ($(BR2_X86_CPU_HAS_MMX)$(BR2_ARM_CPU_HAS_NEON),y) +ifeq ($(BR2_PACKAGE_JPEG_SIMD_SUPPORT),y) JPEG_TURBO_CONF_OPTS += --with-simd # x86 simd support needs nasm JPEG_TURBO_DEPENDENCIES += $(if $(BR2_X86_CPU_HAS_MMX),host-nasm) diff --git a/package/jpeg/Config.in b/package/jpeg/Config.in index f337aeb956..a4a63cc7dc 100644 --- a/package/jpeg/Config.in +++ b/package/jpeg/Config.in @@ -3,13 +3,21 @@ config BR2_PACKAGE_JPEG help Select the desired JPEG library provider. +# jpeg-turbo has simd support for some architectures +config BR2_PACKAGE_JPEG_SIMD_SUPPORT + bool + default y if BR2_X86_CPU_HAS_MMX + default y if BR2_ARM_CPU_HAS_NEON + default y if BR2_POWERPC_CPU_HAS_ALTIVEC + default y if BR2_aarch64 || BR2_aarch64_be + if BR2_PACKAGE_JPEG choice prompt "jpeg variant" - default BR2_PACKAGE_JPEG_TURBO if (BR2_X86_CPU_HAS_MMX || BR2_ARM_CPU_HAS_NEON) + default BR2_PACKAGE_JPEG_TURBO if BR2_PACKAGE_JPEG_SIMD_SUPPORT help - Select the older stable version, or the newer developer version + Select the normal libjpeg or libjpeg-turbo. config BR2_PACKAGE_LIBJPEG bool "jpeg" diff --git a/package/jquery-datetimepicker/jquery-datetimepicker.hash b/package/jquery-datetimepicker/jquery-datetimepicker.hash new file mode 100644 index 0000000000..b6aba87920 --- /dev/null +++ b/package/jquery-datetimepicker/jquery-datetimepicker.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2f362a8acd149d1487a9460942f135d1037f01ee0cbfecba8c352fa2f79c34c9 jquery-datetimepicker-2.4.5.tar.gz diff --git a/package/jquery-keyboard/jquery-keyboard.hash b/package/jquery-keyboard/jquery-keyboard.hash new file mode 100644 index 0000000000..7502867c86 --- /dev/null +++ b/package/jquery-keyboard/jquery-keyboard.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6a20a1cdc9367c218048125eeb6f78d775175a964b3b9b781a931b63c0f98c66 jquery-keyboard-v1.18.12.tar.gz diff --git a/package/jquery-mobile/jquery-mobile.hash b/package/jquery-mobile/jquery-mobile.hash new file mode 100644 index 0000000000..3dfaa07a06 --- /dev/null +++ b/package/jquery-mobile/jquery-mobile.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 7ed156b191dc3e262e3f450aede43adfb738ff0085afed87eb18fe4f43dfc681 jquery.mobile-1.4.3.zip diff --git a/package/jquery-sparkline/jquery-sparkline.hash b/package/jquery-sparkline/jquery-sparkline.hash new file mode 100644 index 0000000000..d8088bce00 --- /dev/null +++ b/package/jquery-sparkline/jquery-sparkline.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 06e0242da172ab85985db3774c54ac1b53391a5b447857a100c5118b8281a543 jquery.sparkline.min.js diff --git a/package/jquery-ui-themes/jquery-ui-themes.hash b/package/jquery-ui-themes/jquery-ui-themes.hash new file mode 100644 index 0000000000..5441789b99 --- /dev/null +++ b/package/jquery-ui-themes/jquery-ui-themes.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 90467a83abcb8d2471b0d53d21b4c09e2cf686d5350e10a6e84fa3f3616a840f jquery-ui-themes-1.10.4.zip diff --git a/package/jquery-ui/jquery-ui.hash b/package/jquery-ui/jquery-ui.hash new file mode 100644 index 0000000000..daf89d095c --- /dev/null +++ b/package/jquery-ui/jquery-ui.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c76f349930245360f4d1dea672b9a587f8938b536a378e20eeff919f7263f99f jquery-ui-1.10.4.zip diff --git a/package/jsmin/Config.in.host b/package/jsmin/Config.in.host new file mode 100644 index 0000000000..25ec9bb859 --- /dev/null +++ b/package/jsmin/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_JSMIN + bool "host jsmin" + help + JSMin is a filter which removes comments and unnecessary + whitespace from JavaScript files. It typically reduces + filesize by half, resulting in faster downloads. It also + encourages a more expressive programming style because it + eliminates the download cost of clean, literate + self-documentation. + + http://www.crockford.com/javascript/jsmin.html diff --git a/package/jsmin/jsmin.hash b/package/jsmin/jsmin.hash new file mode 100644 index 0000000000..6080f109dc --- /dev/null +++ b/package/jsmin/jsmin.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 aae127bf7291a7b2592f36599e5ed6c6423eac7abe0cd5992f82d6d46fe9ed2d jsmin-1bf6ce5f74a9f8752ac7f5d115b8d7ccb31cfe1b.tar.gz diff --git a/package/jsmn/Config.in b/package/jsmn/Config.in new file mode 100644 index 0000000000..ab14273221 --- /dev/null +++ b/package/jsmn/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_JSMN + bool "jsmn" + help + jsmn (pronounced like 'jasmine') is a minimalistic JSON + parser in C. It can be easily integrated into + resource-limited or embedded projects. + + https://github.com/zserge/jsmn/ diff --git a/package/jsmn/jsmn.hash b/package/jsmn/jsmn.hash new file mode 100644 index 0000000000..91f64201e7 --- /dev/null +++ b/package/jsmn/jsmn.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 e08993848b2abab62aa9572a560bb6e5ed4762f8537cd67c4de6cb17e17090a0 jsmn-6021415cc75e7922d45b12935f56348b064d8a7f.tar.gz diff --git a/package/jsmn/jsmn.mk b/package/jsmn/jsmn.mk new file mode 100644 index 0000000000..c98f2798ee --- /dev/null +++ b/package/jsmn/jsmn.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# jsmn +# +################################################################################ + +JSMN_VERSION = 6021415cc75e7922d45b12935f56348b064d8a7f +JSMN_SITE = $(call github,zserge,jsmn,$(JSMN_VERSION)) +JSMN_LICENSE = MIT +JSMN_LICENSE_FILES = LICENSE +# static library only +JSMN_INSTALL_STAGING = YES +JSMN_INSTALL_TARGET = NO + +define JSMN_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define JSMN_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0644 $(@D)/libjsmn.a $(STAGING_DIR)/usr/lib/libjsmn.a + $(INSTALL) -D -m 0644 $(@D)/jsmn.h $(STAGING_DIR)/usr/include/jsmn.h +endef + +$(eval $(generic-package)) diff --git a/package/json-c/json-c.hash b/package/json-c/json-c.hash new file mode 100644 index 0000000000..6550895560 --- /dev/null +++ b/package/json-c/json-c.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 99304a4a633f1ee281d6a521155a182824dd995139d5ed6ee5c93093c281092b json-c-json-c-0.12-20140410.tar.gz diff --git a/package/json-glib/json-glib.hash b/package/json-glib/json-glib.hash index 18e1aa014d..2a5693934b 100644 --- a/package/json-glib/json-glib.hash +++ b/package/json-glib/json-glib.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/json-glib/1.2/json-glib-1.2.0.sha256sum -sha256 99d6dfbe49c08fd7529f1fe8dcb1893b810a1bb222f1e7b65f41507658b8a7d3 json-glib-1.2.0.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/json-glib/1.2/json-glib-1.2.2.sha256sum +sha256 ea128ab52a824fcd06e5448fbb2bd8d9a13740d51c66d445828edba71321a621 json-glib-1.2.2.tar.xz diff --git a/package/json-glib/json-glib.mk b/package/json-glib/json-glib.mk index f7c52c018a..305c9acc79 100644 --- a/package/json-glib/json-glib.mk +++ b/package/json-glib/json-glib.mk @@ -5,7 +5,7 @@ ################################################################################ JSON_GLIB_VERSION_MAJOR = 1.2 -JSON_GLIB_VERSION = $(JSON_GLIB_VERSION_MAJOR).0 +JSON_GLIB_VERSION = $(JSON_GLIB_VERSION_MAJOR).2 JSON_GLIB_SITE = http://ftp.gnome.org/pub/GNOME/sources/json-glib/$(JSON_GLIB_VERSION_MAJOR) JSON_GLIB_SOURCE = json-glib-$(JSON_GLIB_VERSION).tar.xz JSON_GLIB_LICENSE = LGPLv2.1+ diff --git a/package/json-javascript/json-javascript.hash b/package/json-javascript/json-javascript.hash new file mode 100644 index 0000000000..6216445ce0 --- /dev/null +++ b/package/json-javascript/json-javascript.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1a9dd4429e4bb4929dcb438f9591a3625bc8cc161f840b5f843d8b1d2c8dcfe5 json-javascript-3d7767b6b1f3da363c625ff54e63bbf20e9e83ac.tar.gz diff --git a/package/jsoncpp/0001-CMakeLists.txt-Treat-conversion-warning-as-error-onl.patch b/package/jsoncpp/0001-CMakeLists.txt-Treat-conversion-warning-as-error-onl.patch deleted file mode 100644 index 3e009b93a6..0000000000 --- a/package/jsoncpp/0001-CMakeLists.txt-Treat-conversion-warning-as-error-onl.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 98a7f56ed41071240274063b2d4e39e4e1c9589f Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Mon, 25 Apr 2016 19:41:28 +0200 -Subject: [PATCH 1/1] CMakeLists.txt: Treat conversion warning as error only - with JSONCPP_WITH_WARNING_AS_ERROR=On - -Fixes errors when building with buildroot: -http://autobuild.buildroot.net/?reason=jsoncpp-1.7.2 - -Signed-off-by: Bernd Kuhls -(Patch sent upstream: - https://github.com/open-source-parsers/jsoncpp/pull/466) ---- - CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7787850..637fc34 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -107,11 +107,11 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Werror=conversion -Werror=sign-compare") - elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") - # using GCC -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wextra -Werror=conversion") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wextra") - # not yet ready for -Wsign-conversion - - if (JSONCPP_WITH_STRICT_ISO AND NOT JSONCPP_WITH_WARNING_AS_ERROR) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=conversion -pedantic") - endif () - endif() - --- -2.8.0.rc3 - diff --git a/package/jsoncpp/jsoncpp.hash b/package/jsoncpp/jsoncpp.hash index 5b4bbcf7d0..504357f163 100644 --- a/package/jsoncpp/jsoncpp.hash +++ b/package/jsoncpp/jsoncpp.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 2179a7df19c1c6dc87e02c65b847efc914625a9b87df3e443d9610fc70c0f557 jsoncpp-1.7.2.tar.gz +sha256 087640ebcf7fbcfe8e2717a0b9528fff89c52fcf69fa2a18cc2b538008098f97 jsoncpp-1.7.7.tar.gz diff --git a/package/jsoncpp/jsoncpp.mk b/package/jsoncpp/jsoncpp.mk index 34da14c0f6..a9694411c9 100644 --- a/package/jsoncpp/jsoncpp.mk +++ b/package/jsoncpp/jsoncpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -JSONCPP_VERSION = 1.7.2 +JSONCPP_VERSION = 1.7.7 JSONCPP_SITE = $(call github,open-source-parsers,jsoncpp,$(JSONCPP_VERSION)) JSONCPP_LICENSE = Public Domain or MIT JSONCPP_LICENSE_FILES = LICENSE diff --git a/package/kexec-lite/Config.in b/package/kexec-lite/Config.in index fcc0d88be5..97748dcce5 100644 --- a/package/kexec-lite/Config.in +++ b/package/kexec-lite/Config.in @@ -14,7 +14,7 @@ config BR2_PACKAGE_KEXEC_LITE This package is a tiny implementation of the kexec userspace components, for devicetree-based platforms. -comment "kexec-lite needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library" +comment "kexec-lite needs a uClibc or glibc toolchain w/ wchar, dynamic library" depends on BR2_powerpc || BR2_powerpc64 depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR \ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/kexec-lite/kexec-lite.hash b/package/kexec-lite/kexec-lite.hash index e8179b7021..0f212241da 100644 --- a/package/kexec-lite/kexec-lite.hash +++ b/package/kexec-lite/kexec-lite.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 2300187bf25616c382cb2f191a2eb13033e019511854794ce234a76cf9f5ad6b kexec-lite-783fb4a811d0b0f8cc2ed68fa7872dcad56a3944.tar.gz +sha256 5786ddc0c94ead4fd4a1fded44bb1da0c9bc91af08049fed373ea161603e1e1f kexec-lite-86e45a47e8cc1f598ccfa9b873a23067f4ecc36f.tar.gz diff --git a/package/kexec-lite/kexec-lite.mk b/package/kexec-lite/kexec-lite.mk index 27bc20485d..b1b66fd84c 100644 --- a/package/kexec-lite/kexec-lite.mk +++ b/package/kexec-lite/kexec-lite.mk @@ -4,9 +4,10 @@ # ################################################################################ -KEXEC_LITE_VERSION = 783fb4a811d0b0f8cc2ed68fa7872dcad56a3944 +KEXEC_LITE_VERSION = 86e45a47e8cc1f598ccfa9b873a23067f4ecc36f KEXEC_LITE_SITE = $(call github,antonblanchard,kexec-lite,$(KEXEC_LITE_VERSION)) KEXEC_LITE_LICENSE = GPLv2+ +KEXEC_LITE_LICENSE_FILES = COPYING KEXEC_LITE_DEPENDENCIES = elfutils dtc define KEXEC_LITE_BUILD_CMDS diff --git a/package/kexec/kexec.hash b/package/kexec/kexec.hash index 24a71e7a45..9039dad489 100644 --- a/package/kexec/kexec.hash +++ b/package/kexec/kexec.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/kernel/kexec/sha256sums.asc -sha256 b1097986ffdb928cf41a94e8a5dfddc981a8fa710cccf13298e7f8dd939a2ee3 kexec-tools-2.0.11.tar.xz +sha256 ffb2e7e99d9d08754c6bc1922aed3c000094f318665d82a72ecc76c4ff1c0dc6 kexec-tools-2.0.14.tar.xz diff --git a/package/kexec/kexec.mk b/package/kexec/kexec.mk index 0e64c0d4f3..0a8e9f03a1 100644 --- a/package/kexec/kexec.mk +++ b/package/kexec/kexec.mk @@ -4,12 +4,15 @@ # ################################################################################ -KEXEC_VERSION = 2.0.11 +KEXEC_VERSION = 2.0.14 KEXEC_SOURCE = kexec-tools-$(KEXEC_VERSION).tar.xz KEXEC_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/kexec KEXEC_LICENSE = GPLv2 KEXEC_LICENSE_FILES = COPYING +# Makefile expects $STRIP -o to work, so needed for BR2_STRIP_none +KEXEC_MAKE_OPTS = STRIP="$(TARGET_CROSS)strip" + ifeq ($(BR2_PACKAGE_KEXEC_ZLIB),y) KEXEC_CONF_OPTS += --with-zlib KEXEC_DEPENDENCIES = zlib diff --git a/package/keyutils/keyutils.mk b/package/keyutils/keyutils.mk index 7a30ba644d..4a8dbace04 100644 --- a/package/keyutils/keyutils.mk +++ b/package/keyutils/keyutils.mk @@ -28,11 +28,11 @@ define KEYUTILS_BUILD_CMDS endef define KEYUTILS_INSTALL_STAGING_CMDS - $(MAKE) $(KEYUTILS_MAKE_PARAMS) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) $(KEYUTILS_MAKE_PARAMS) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define KEYUTILS_INSTALL_TARGET_CMDS - $(MAKE) $(KEYUTILS_MAKE_PARAMS) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) $(KEYUTILS_MAKE_PARAMS) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/kismet/0005-dumpfile_tuntap-don-t-include-linux-if_tun.h-kernel-.patch b/package/kismet/0005-dumpfile_tuntap-don-t-include-linux-if_tun.h-kernel-.patch new file mode 100644 index 0000000000..be694345d2 --- /dev/null +++ b/package/kismet/0005-dumpfile_tuntap-don-t-include-linux-if_tun.h-kernel-.patch @@ -0,0 +1,51 @@ +From 1466cbbdef835634366b2eb3a284fdff5833338c Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 19 Aug 2016 23:30:06 +0200 +Subject: [PATCH] dumpfile_tuntap: don't include linux/if_tun.h kernel header + +dumpfile_tuntap.h mixes userspace and kernel headers. + +As suggested in the musl wiki [1], remove the linux/include directives +and copy the required definitions. + +[1] http://wiki.musl-libc.org/wiki/FAQ + +Signed-off-by: Romain Naour +--- + dumpfile_tuntap.h | 17 +++++++++-------- + 1 file changed, 9 insertions(+), 8 deletions(-) + +diff --git a/dumpfile_tuntap.h b/dumpfile_tuntap.h +index 37f50b6..8b23a2a 100644 +--- a/dumpfile_tuntap.h ++++ b/dumpfile_tuntap.h +@@ -64,17 +64,18 @@ + #include "packetchain.h" + #include "dumpfile.h" + +-#ifdef SYS_LINUX +-#include ++#ifdef SYS_LINUX ++/* TUNSETIFF ifr flags */ ++#define IFF_TUN 0x0001 ++#define IFF_TAP 0x0002 ++#define IFF_NO_PI 0x1000 + + // Linux IEEE80211 link typ to set + #define LNX_LINKTYPE_80211 801 +-// If the system headers don't have the TUNSETLINK ioctl, define it here, +-// and we'll figure it out at runtime +-#ifndef TUNSETLINK +-#define TUNSETLINK _IOW('T', 205, int) +-#endif +- ++/* Ioctl defines */ ++#define TUNSETNOCSUM _IOW('T', 200, int) ++#define TUNSETIFF _IOW('T', 202, int) ++#define TUNSETLINK _IOW('T', 205, int) + #endif + + struct ipc_dft_open { +-- +2.5.5 + diff --git a/package/kismet/kismet.hash b/package/kismet/kismet.hash new file mode 100644 index 0000000000..e4dc5a4815 --- /dev/null +++ b/package/kismet/kismet.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 23b693baa29549b051e95e9d597b115bd94f7267c4677307ebd87f2a00e5a52b kismet-Kismet-2014-02-R1.tar.gz diff --git a/package/kmod/kmod.hash b/package/kmod/kmod.hash index 75b819e3e3..8220fd493b 100644 --- a/package/kmod/kmod.hash +++ b/package/kmod/kmod.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/kernel/kmod/sha256sums.asc -sha256 ba3b1ddea33228b473189fcb05b809024a3b86e9a7cf37d420cae06beb749f82 kmod-22.tar.xz +sha256 d303d5519faec9d69e1132f6b37db2579db17a7fb5c1517da0115d03ba168155 kmod-23.tar.xz diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk index 2b9d002939..7492b926f0 100644 --- a/package/kmod/kmod.mk +++ b/package/kmod/kmod.mk @@ -4,7 +4,7 @@ # ################################################################################ -KMOD_VERSION = 22 +KMOD_VERSION = 23 KMOD_SOURCE = kmod-$(KMOD_VERSION).tar.xz KMOD_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/kmod KMOD_INSTALL_STAGING = YES @@ -12,7 +12,7 @@ KMOD_DEPENDENCIES = host-pkgconf HOST_KMOD_DEPENDENCIES = host-pkgconf # license info for libkmod only, conditionally add more below -KMOD_LICENSE = LGPLv2.1+ +KMOD_LICENSE = LGPLv2.1+ (library) KMOD_LICENSE_FILES = libkmod/COPYING # static linking not supported, see @@ -40,7 +40,7 @@ endif ifeq ($(BR2_PACKAGE_KMOD_TOOLS),y) # add license info for kmod tools -KMOD_LICENSE += GPLv2+ +KMOD_LICENSE := $(KMOD_LICENSE), GPLv2+ (tools) KMOD_LICENSE_FILES += COPYING # take precedence over busybox implementation diff --git a/package/kmsxx/0001-Fix-LTO-support-for-cross-compilation.patch b/package/kmsxx/0001-Fix-LTO-support-for-cross-compilation.patch new file mode 100644 index 0000000000..280583af14 --- /dev/null +++ b/package/kmsxx/0001-Fix-LTO-support-for-cross-compilation.patch @@ -0,0 +1,45 @@ +From 5da1f631bc753655ac94b08a6233eecd0d451327 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Fri, 26 Aug 2016 21:55:06 +0200 +Subject: [PATCH] Fix LTO support for cross-compilation. + +When cross-compiling, the ar and ranlib to be used for LTO are prefixed +by the cross-tuple. gcc-ar and gcc-ranlib may not exist. Cfr. +http://autobuild.buildroot.net/results/f3c/f3c48da3a9706cd366c0e0a96c3cd0ff959f2a78/ + +Therefore, search for an appropriate lto-ar and lto-ranlib before +enabling LTO. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- +Submitted upstream: https://github.com/tomba/kmsxx/pull/14 +--- + CMakeLists.txt | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e5b5ea5..c61c81d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -39,9 +39,15 @@ if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG) + CHECK_CXX_COMPILER_FLAG("-flto" HAS_LTO_FLAG) + + if (HAS_LTO_FLAG) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto") +- set(CMAKE_AR gcc-ar) +- set(CMAKE_RANLIB gcc-ranlib) ++ find_program(LTO_AR NAMES "${CMAKE_C_COMPILER}-ar" gcc-ar) ++ find_program(LTO_RANLIB NAMES "${CMAKE_C_COMPILER}-ranlib" gcc-ranlib) ++ if (LTO_AR AND LTO_RANLIB) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -flto") ++ set(CMAKE_AR "${LTO_AR}") ++ set(CMAKE_RANLIB "${LTO_RANLIB}") ++ else() ++ message(STATUS "gcc-ar or gcc-ranlib not found, disabling LTO") ++ endif() + endif() + endif() + +-- +2.9.3 + diff --git a/package/kmsxx/Config.in b/package/kmsxx/Config.in new file mode 100644 index 0000000000..1d174c18b1 --- /dev/null +++ b/package/kmsxx/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_KMSXX + bool "kms++" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm + select BR2_PACKAGE_LIBDRM + help + libkms++ is a C++11 library for kernel mode setting. + + Also included are simple test tools for KMS. + + https://github.com/tomba/kmsxx + +if BR2_PACKAGE_KMSXX + +config BR2_PACKAGE_KMSXX_INSTALL_TESTS + bool "Install test programs" + help + This option allows to install the kmsxx test programs. + +endif + +comment "kms++ needs a toolchain w/ threads, C++, gcc >= 4.8, headers >= 3.8" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 diff --git a/package/kmsxx/kmsxx.hash b/package/kmsxx/kmsxx.hash new file mode 100644 index 0000000000..9e75bb9e01 --- /dev/null +++ b/package/kmsxx/kmsxx.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ff8bdb84a738477a8740c835e23c5bb59aac750e9e72a4afcad4ec8820ec7da2 kmsxx-bd5f6471e619a6ba2987bc7f66ef78a531f94d6c.tar.gz diff --git a/package/kmsxx/kmsxx.mk b/package/kmsxx/kmsxx.mk new file mode 100644 index 0000000000..730292eb7e --- /dev/null +++ b/package/kmsxx/kmsxx.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# kmsxx +# +################################################################################ + +KMSXX_VERSION = bd5f6471e619a6ba2987bc7f66ef78a531f94d6c +KMSXX_SITE = $(call github,tomba,kmsxx,$(KMSXX_VERSION)) +KMSXX_LICENSE = MPLv2.0 +KMSXX_LICENSE_FILES = LICENSE +KMSXX_INSTALL_STAGING = YES +KMSXX_DEPENDENCIES = libdrm host-pkgconf +KMSXX_CONF_OPTS = -DKMSXX_ENABLE_PYTHON=OFF + +ifeq ($(BR2_PACKAGE_KMSXX_INSTALL_TESTS),y) +KMSXX_TESTS = \ + fbtestpat kmsblank kmscapture \ + kmsprint kmsview testpat wbcap \ + wbm2m + +define KMSXX_INSTALL_TARGET_TESTS + $(foreach t,$(KMSXX_TESTS),\ + $(INSTALL) -D -m 0755 $(@D)/bin/$(t) \ + $(TARGET_DIR)/usr/bin/$(t) + ) +endef +endif + +KMSXX_LIBS = kms++ kms++util + +define KMSXX_INSTALL_TARGET_CMDS + $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS), + $(foreach l,$(KMSXX_LIBS),\ + $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \ + $(TARGET_DIR)/usr/lib/lib$(l).so + ) + ) + $(KMSXX_INSTALL_TARGET_TESTS) +endef + +define KMSXX_INSTALL_STAGING_CMDS + $(foreach l,$(KMSXX_LIBS),\ + $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS), + $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).so \ + $(STAGING_DIR)/usr/lib/lib$(l).so) + $(if $(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS), + $(INSTALL) -D -m 0755 $(@D)/lib/lib$(l).a \ + $(STAGING_DIR)/usr/lib/lib$(l).a) + mkdir -p $(STAGING_DIR)/usr/include/$(l) + cp -dpfr $(@D)/$(l)/inc/$(l)/* $(STAGING_DIR)/usr/include/$(l)/ + ) +endef + +$(eval $(cmake-package)) diff --git a/package/kodi-addon-xvdr/0001-xbmc-rebrand.patch b/package/kodi-addon-xvdr/0001-xbmc-rebrand.patch deleted file mode 100644 index 6e87b79b64..0000000000 --- a/package/kodi-addon-xvdr/0001-xbmc-rebrand.patch +++ /dev/null @@ -1,19 +0,0 @@ -Update for Kodi - -Ported from OpenELEC: -https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/mediacenter/kodi-addon-xvdr/patches/kodi-addon-xvdr-xbmc-rebrand.patch - -Signed-off-by: Bernd Kuhls - -diff -Naur xbmc-addon-xvdr-2bf2563/configure.ac xbmc-addon-xvdr-2bf2563.patch/configure.ac ---- xbmc-addon-xvdr-2bf2563/configure.ac 2014-10-18 22:02:18.000000000 +0200 -+++ xbmc-addon-xvdr-2bf2563.patch/configure.ac 2014-10-20 03:03:20.525526996 +0200 -@@ -6,7 +6,7 @@ - AC_INIT([xbmc-addon-xvdr], [MAJOR.MINOR.MICRO], [alexander.pipelka@gmail.com]) - - AC_CONFIG_AUX_DIR(autotools) --AC_PREFIX_DEFAULT(/usr/lib/xbmc) -+AC_PREFIX_DEFAULT(/usr/lib/kodi) - - AC_CANONICAL_HOST - AC_CANONICAL_TARGET diff --git a/package/kodi-addon-xvdr/Config.in b/package/kodi-addon-xvdr/Config.in deleted file mode 100644 index 85e9d600c8..0000000000 --- a/package/kodi-addon-xvdr/Config.in +++ /dev/null @@ -1,16 +0,0 @@ -config BR2_PACKAGE_KODI_ADDON_XVDR - bool "kodi-addon-xvdr" - # upstream discontinued the development - depends on BR2_DEPRECATED_SINCE_2016_05 - help - This is a PVR add-on for Kodi to add VDR (http://tvdr.de/) - as a TV/PVR Backend to Kodi. - - It adds support for Live TV watching, replaying of Recordings, - programming Timers and EPG TV Guide to use on same computer or - over the Network. - - https://github.com/pipelka/xbmc-addon-xvdr - - Note: since the VDR server is not packaged in Buildroot, using - this addon requires that a remote VDR server be used. diff --git a/package/kodi-addon-xvdr/kodi-addon-xvdr.hash b/package/kodi-addon-xvdr/kodi-addon-xvdr.hash deleted file mode 100644 index 933c7b8de2..0000000000 --- a/package/kodi-addon-xvdr/kodi-addon-xvdr.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed -sha256 783796eccc19c639c59b7a05cad1df705d557993b15cc7e29f7dbbd8388d698b kodi-addon-xvdr-ae66610bc2e1a3efe49f4fa0db55ff3a7808a247.tar.gz diff --git a/package/kodi-addon-xvdr/kodi-addon-xvdr.mk b/package/kodi-addon-xvdr/kodi-addon-xvdr.mk deleted file mode 100644 index ac7f3cb0b5..0000000000 --- a/package/kodi-addon-xvdr/kodi-addon-xvdr.mk +++ /dev/null @@ -1,26 +0,0 @@ -################################################################################ -# -# kodi-addon-xvdr -# -################################################################################ - -# This cset is on master. When a Jarvis branch is made, we should -# follow it, as incompatible changes in the plugins API can happen -# on the master branch. -KODI_ADDON_XVDR_VERSION = ae66610bc2e1a3efe49f4fa0db55ff3a7808a247 -KODI_ADDON_XVDR_SITE = $(call github,pipelka,xbmc-addon-xvdr,$(KODI_ADDON_XVDR_VERSION)) -KODI_ADDON_XVDR_LICENSE = GPLv2+ -KODI_ADDON_XVDR_LICENSE_FILES = COPYING - -# There's no ./configure in the git tree, we need to generate it -# kodi-addon-xvdr uses a weird autogen.sh script, which -# is even incorrect (it's missing the #! ) Sigh... :-( -# Fortunately, with our little patch, it autoreconfs nicely! :-) -KODI_ADDON_XVDR_AUTORECONF = YES - -# This really is a runtime dependency, but we need KODI to be installed -# first, since we'll install files in KODI's directories _after_ KODI has -# installed his own files -KODI_ADDON_XVDR_DEPENDENCIES = kodi - -$(eval $(autotools-package)) diff --git a/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch b/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch new file mode 100644 index 0000000000..dc428d6ced --- /dev/null +++ b/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch @@ -0,0 +1,82 @@ +From 78571ed421e3fd3d5244cd76670e4e1bab69132f Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Fri, 27 May 2016 17:30:28 +0200 +Subject: [PATCH 1/1] Fix nullpadding issue when reading certain id3v1 tags + +backported from upstream commit to master branch: + +https://github.com/xbmc/xbmc/commit/cdabf9dd9e82f4b2d639fb769db08227a7c52046 + +to fix problems with taglib-1.11: + +http://trac.kodi.tv/ticket/16454 +https://github.com/taglib/taglib/issues/741#issuecomment-218059031 + +Signed-off-by: Bernd Kuhls +--- + xbmc/music/tags/TagLoaderTagLib.cpp | 21 --------------------- + xbmc/music/tags/TagLoaderTagLib.h | 3 +++ + 2 files changed, 3 insertions(+), 21 deletions(-) + +diff --git a/xbmc/music/tags/TagLoaderTagLib.cpp b/xbmc/music/tags/TagLoaderTagLib.cpp +index b78a591..0fc346a 100644 +--- a/xbmc/music/tags/TagLoaderTagLib.cpp ++++ b/xbmc/music/tags/TagLoaderTagLib.cpp +@@ -46,31 +46,12 @@ + #include "utils/URIUtils.h" + #include "utils/log.h" + #include "utils/StringUtils.h" +-#include "utils/CharsetConverter.h" + #include "utils/Base64.h" + #include "settings/AdvancedSettings.h" + + using namespace TagLib; + using namespace MUSIC_INFO; + +-template +-class TagStringHandler : public T +-{ +-public: +- TagStringHandler() {} +- virtual ~TagStringHandler() {} +- virtual String parse(const ByteVector &data) const +- { +- std::string strSource(data.data(), data.size()); +- std::string strUTF8; +- g_charsetConverter.unknownToUTF8(strSource, strUTF8); +- return String(strUTF8, String::UTF8); +- } +-}; +- +-static const TagStringHandler ID3v1StringHandler; +-static const TagStringHandler ID3v2StringHandler; +- + CTagLoaderTagLib::CTagLoaderTagLib() + { + } +@@ -824,8 +805,6 @@ bool CTagLoaderTagLib::Load(const std::string& strFileName, CMusicInfoTag& tag, + return false; + } + +- ID3v1::Tag::setStringHandler(&ID3v1StringHandler); +- ID3v2::Tag::setLatin1StringHandler(&ID3v2StringHandler); + TagLib::File* file = NULL; + TagLib::APE::File* apeFile = NULL; + TagLib::ASF::File* asfFile = NULL; +diff --git a/xbmc/music/tags/TagLoaderTagLib.h b/xbmc/music/tags/TagLoaderTagLib.h +index f83ea4f..0edb84f 100644 +--- a/xbmc/music/tags/TagLoaderTagLib.h ++++ b/xbmc/music/tags/TagLoaderTagLib.h +@@ -44,6 +44,9 @@ + #include + #include "ImusicInfoTagLoader.h" + ++#include ++#include ++ + namespace MUSIC_INFO + { + class CMusicInfoTag; +-- +2.8.1 + diff --git a/package/kodi/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch b/package/kodi/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch new file mode 100644 index 0000000000..a8de36c78b --- /dev/null +++ b/package/kodi/0009-lib-cximage-6.0-fix-compilation-with-gcc6.patch @@ -0,0 +1,1438 @@ +From 8f82e51563f0e1bc9b7a8adf669ad2b66e7ce3e5 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Thu, 28 Apr 2016 17:17:40 +0200 +Subject: [PATCH] lib/cximage-6.0: fix compilation with gcc6 + +For a quick fix I renamed min() to cxmin() and max() to cxmax() to +prevent the conflict with the gcc definition. + +Forum thread for reference: +http://forum.kodi.tv/showthread.php?tid=263884 + +Signed-off-by: Bernd Kuhls +(Patch sent upstream: https://github.com/xbmc/xbmc/pull/9703) +--- + lib/cximage-6.0/CxImage/ximabmp.cpp | 6 +- + lib/cximage-6.0/CxImage/ximadef.h | 8 +- + lib/cximage-6.0/CxImage/ximadsp.cpp | 182 +++++++++++++++++------------------ + lib/cximage-6.0/CxImage/ximage.cpp | 4 +- + lib/cximage-6.0/CxImage/ximagif.cpp | 6 +- + lib/cximage-6.0/CxImage/ximahist.cpp | 12 +-- + lib/cximage-6.0/CxImage/ximaint.cpp | 8 +- + lib/cximage-6.0/CxImage/ximaiter.h | 4 +- + lib/cximage-6.0/CxImage/ximajbg.cpp | 2 +- + lib/cximage-6.0/CxImage/ximapal.cpp | 14 +-- + lib/cximage-6.0/CxImage/ximapng.cpp | 12 +-- + lib/cximage-6.0/CxImage/ximaraw.cpp | 4 +- + lib/cximage-6.0/CxImage/ximasel.cpp | 50 +++++----- + lib/cximage-6.0/CxImage/ximath.cpp | 8 +- + lib/cximage-6.0/CxImage/ximatif.cpp | 6 +- + lib/cximage-6.0/CxImage/ximatran.cpp | 138 +++++++++++++------------- + lib/cximage-6.0/CxImage/ximawnd.cpp | 16 +-- + 17 files changed, 236 insertions(+), 244 deletions(-) + +diff --git a/lib/cximage-6.0/CxImage/ximabmp.cpp b/lib/cximage-6.0/CxImage/ximabmp.cpp +index 726ff91..55842b1 100644 +--- a/lib/cximage-6.0/CxImage/ximabmp.cpp ++++ b/lib/cximage-6.0/CxImage/ximabmp.cpp +@@ -46,7 +46,7 @@ bool CxImageBMP::Encode(CxFile * hFile) + bihtoh(&infohdr); + + // Write the file header +- hFile->Write(&hdr,min(14,sizeof(BITMAPFILEHEADER)),1); ++ hFile->Write(&hdr,cxmin(14,sizeof(BITMAPFILEHEADER)),1); + hFile->Write(&infohdr,sizeof(BITMAPINFOHEADER),1); + //and DIB+ALPHA interlaced + BYTE *srcalpha = AlphaGetPointer(); +@@ -64,7 +64,7 @@ bool CxImageBMP::Encode(CxFile * hFile) + #endif //CXIMAGE_SUPPORT_ALPHA + { + // Write the file header +- hFile->Write(&hdr,min(14,sizeof(BITMAPFILEHEADER)),1); ++ hFile->Write(&hdr,cxmin(14,sizeof(BITMAPFILEHEADER)),1); + //copy attributes + memcpy(pDib,&head,sizeof(BITMAPINFOHEADER)); + bihtoh((BITMAPINFOHEADER*)pDib); +@@ -86,7 +86,7 @@ bool CxImageBMP::Decode(CxFile * hFile) + BITMAPFILEHEADER bf; + DWORD off = hFile->Tell(); // + cx_try { +- if (hFile->Read(&bf,min(14,sizeof(bf)),1)==0) cx_throw("Not a BMP"); ++ if (hFile->Read(&bf,cxmin(14,sizeof(bf)),1)==0) cx_throw("Not a BMP"); + + bf.bfSize = my_ntohl(bf.bfSize); + bf.bfOffBits = my_ntohl(bf.bfOffBits); +diff --git a/lib/cximage-6.0/CxImage/ximadef.h b/lib/cximage-6.0/CxImage/ximadef.h +index fe383bf..53ea452 100644 +--- a/lib/cximage-6.0/CxImage/ximadef.h ++++ b/lib/cximage-6.0/CxImage/ximadef.h +@@ -53,12 +53,8 @@ + #define CXIMAGE_SUPPORT_WINDOWS 0 + #endif + +-#ifndef min +-#define min(a,b) (((a)<(b))?(a):(b)) +-#endif +-#ifndef max +-#define max(a,b) (((a)>(b))?(a):(b)) +-#endif ++#define cxmin(a,b) (((a)<(b))?(a):(b)) ++#define cxmax(a,b) (((a)>(b))?(a):(b)) + + #ifndef PI + #define PI 3.141592653589793f +diff --git a/lib/cximage-6.0/CxImage/ximadsp.cpp b/lib/cximage-6.0/CxImage/ximadsp.cpp +index 8425bb2..813253b 100644 +--- a/lib/cximage-6.0/CxImage/ximadsp.cpp ++++ b/lib/cximage-6.0/CxImage/ximadsp.cpp +@@ -389,8 +389,8 @@ RGBQUAD CxImage::RGBtoHSL(RGBQUAD lRGBColor) + G = lRGBColor.rgbGreen; + B = lRGBColor.rgbBlue; + +- cMax = max( max(R,G), B); /* calculate lightness */ +- cMin = min( min(R,G), B); ++ cMax = cxmax( cxmax(R,G), B); /* calculate lightness */ ++ cMin = cxmin( cxmin(R,G), B); + L = (BYTE)((((cMax+cMin)*HSLMAX)+RGBMAX)/(2*RGBMAX)); + + if (cMax==cMin){ /* r=g=b --> achromatic case */ +@@ -489,9 +489,9 @@ RGBQUAD CxImage::YUVtoRGB(RGBQUAD lYUVColor) + G = (int)( Y - 0.344f * U - 0.714f * V); + B = (int)( Y + 1.770f * U); + +- R= min(255,max(0,R)); +- G= min(255,max(0,G)); +- B= min(255,max(0,B)); ++ R= cxmin(255,cxmax(0,R)); ++ G= cxmin(255,cxmax(0,G)); ++ B= cxmin(255,cxmax(0,B)); + RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0}; + return rgb; + } +@@ -510,9 +510,9 @@ RGBQUAD CxImage::RGBtoYUV(RGBQUAD lRGBColor) + U = (int)((B-Y) * 0.565f + 128); + V = (int)((R-Y) * 0.713f + 128); + +- Y= min(255,max(0,Y)); +- U= min(255,max(0,U)); +- V= min(255,max(0,V)); ++ Y= cxmin(255,cxmax(0,Y)); ++ U= cxmin(255,cxmax(0,U)); ++ V= cxmin(255,cxmax(0,V)); + RGBQUAD yuv={(BYTE)V,(BYTE)U,(BYTE)Y,0}; + return yuv; + } +@@ -528,9 +528,9 @@ RGBQUAD CxImage::YIQtoRGB(RGBQUAD lYIQColor) + G = (int)( Y - 0.273f * I - 0.647f * Q); + B = (int)( Y - 1.104f * I + 1.701f * Q); + +- R= min(255,max(0,R)); +- G= min(255,max(0,G)); +- B= min(255,max(0,B)); ++ R= cxmin(255,cxmax(0,R)); ++ G= cxmin(255,cxmax(0,G)); ++ B= cxmin(255,cxmax(0,B)); + RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0}; + return rgb; + } +@@ -546,9 +546,9 @@ RGBQUAD CxImage::RGBtoYIQ(RGBQUAD lRGBColor) + I = (int)( 0.5960f * R - 0.2742f * G - 0.3219f * B + 128); + Q = (int)( 0.2109f * R - 0.5229f * G + 0.3120f * B + 128); + +- Y= min(255,max(0,Y)); +- I= min(255,max(0,I)); +- Q= min(255,max(0,Q)); ++ Y= cxmin(255,cxmax(0,Y)); ++ I= cxmin(255,cxmax(0,I)); ++ Q= cxmin(255,cxmax(0,Q)); + RGBQUAD yiq={(BYTE)Q,(BYTE)I,(BYTE)Y,0}; + return yiq; + } +@@ -565,9 +565,9 @@ RGBQUAD CxImage::XYZtoRGB(RGBQUAD lXYZColor) + G = (int)( -0.969256f * X + 1.875992f * Y + 0.041556f * Z * k); + B = (int)( 0.055648f * X - 0.204043f * Y + 1.057311f * Z * k); + +- R= min(255,max(0,R)); +- G= min(255,max(0,G)); +- B= min(255,max(0,B)); ++ R= cxmin(255,cxmax(0,R)); ++ G= cxmin(255,cxmax(0,G)); ++ B= cxmin(255,cxmax(0,B)); + RGBQUAD rgb={(BYTE)B,(BYTE)G,(BYTE)R,0}; + return rgb; + } +@@ -583,9 +583,9 @@ RGBQUAD CxImage::RGBtoXYZ(RGBQUAD lRGBColor) + Y = (int)( 0.212671f * R + 0.715160f * G + 0.072169f * B); + Z = (int)((0.019334f * R + 0.119193f * G + 0.950227f * B)*0.918483657f); + +- //X= min(255,max(0,X)); +- //Y= min(255,max(0,Y)); +- //Z= min(255,max(0,Z)); ++ //X= cxmin(255,cxmax(0,X)); ++ //Y= cxmin(255,cxmax(0,Y)); ++ //Z= cxmin(255,cxmax(0,Z)); + RGBQUAD xyz={(BYTE)Z,(BYTE)Y,(BYTE)X,0}; + return xyz; + } +@@ -707,7 +707,7 @@ bool CxImage::Light(long brightness, long contrast) + + BYTE cTable[256]; // + for (int i=0;i<256;i++) { +- cTable[i] = (BYTE)max(0,min(255,(int)((i-128)*c + brightness + 0.5f))); ++ cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)((i-128)*c + brightness + 0.5f))); + } + + return Lut(cTable); +@@ -830,11 +830,11 @@ bool CxImage::Filter(long* kernel, long Ksize, long Kfactor, long Koffset) + } + } + if (Kfactor==0 || ksumcur==0){ +- cPtr2[iY1] = (BYTE)min(255, max(0,(int)(b + Koffset))); ++ cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)(b + Koffset))); + } else if (ksumtot == ksumcur) { +- cPtr2[iY1] = (BYTE)min(255, max(0,(int)(b/Kfactor + Koffset))); ++ cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)(b/Kfactor + Koffset))); + } else { +- cPtr2[iY1] = (BYTE)min(255, max(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset))); ++ cPtr2[iY1] = (BYTE)cxmin(255, cxmax(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset))); + } + } + } +@@ -863,17 +863,17 @@ bool CxImage::Filter(long* kernel, long Ksize, long Kfactor, long Koffset) + } + } + if (Kfactor==0 || ksumcur==0){ +- c.rgbRed = (BYTE)min(255, max(0,(int)(r + Koffset))); +- c.rgbGreen = (BYTE)min(255, max(0,(int)(g + Koffset))); +- c.rgbBlue = (BYTE)min(255, max(0,(int)(b + Koffset))); ++ c.rgbRed = (BYTE)cxmin(255, cxmax(0,(int)(r + Koffset))); ++ c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(g + Koffset))); ++ c.rgbBlue = (BYTE)cxmin(255, cxmax(0,(int)(b + Koffset))); + } else if (ksumtot == ksumcur) { +- c.rgbRed = (BYTE)min(255, max(0,(int)(r/Kfactor + Koffset))); +- c.rgbGreen = (BYTE)min(255, max(0,(int)(g/Kfactor + Koffset))); +- c.rgbBlue = (BYTE)min(255, max(0,(int)(b/Kfactor + Koffset))); ++ c.rgbRed = (BYTE)cxmin(255, cxmax(0,(int)(r/Kfactor + Koffset))); ++ c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(g/Kfactor + Koffset))); ++ c.rgbBlue = (BYTE)cxmin(255, cxmax(0,(int)(b/Kfactor + Koffset))); + } else { +- c.rgbRed = (BYTE)min(255, max(0,(int)((r*ksumtot)/(ksumcur*Kfactor) + Koffset))); +- c.rgbGreen = (BYTE)min(255, max(0,(int)((g*ksumtot)/(ksumcur*Kfactor) + Koffset))); +- c.rgbBlue = (BYTE)min(255, max(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset))); ++ c.rgbRed = (BYTE)cxmin(255, cxmax(0,(int)((r*ksumtot)/(ksumcur*Kfactor) + Koffset))); ++ c.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)((g*ksumtot)/(ksumcur*Kfactor) + Koffset))); ++ c.rgbBlue = (BYTE)cxmin(255, cxmax(0,(int)((b*ksumtot)/(ksumcur*Kfactor) + Koffset))); + } + tmp.BlindSetPixelColor(x,y,c); + } +@@ -1078,8 +1078,8 @@ bool CxImage::Edge(long Ksize) + // + void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffset, bool bMixAlpha) + { +- long lWide = min(GetWidth(),imgsrc2.GetWidth()-lXOffset); +- long lHeight = min(GetHeight(),imgsrc2.GetHeight()-lYOffset); ++ long lWide = cxmin(GetWidth(),imgsrc2.GetWidth()-lXOffset); ++ long lHeight = cxmin(GetHeight(),imgsrc2.GetHeight()-lYOffset); + + bool bEditAlpha = imgsrc2.AlphaIsValid() & bMixAlpha; + +@@ -1112,16 +1112,16 @@ void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffse + if (bEditAlpha) rgbDest.rgbReserved = (BYTE)((rgb1.rgbReserved+rgb2.rgbReserved)/2); + break; + case OpAdd: +- rgbDest.rgbBlue = (BYTE)max(0,min(255,rgb1.rgbBlue+rgb2.rgbBlue)); +- rgbDest.rgbGreen = (BYTE)max(0,min(255,rgb1.rgbGreen+rgb2.rgbGreen)); +- rgbDest.rgbRed = (BYTE)max(0,min(255,rgb1.rgbRed+rgb2.rgbRed)); +- if (bEditAlpha) rgbDest.rgbReserved = (BYTE)max(0,min(255,rgb1.rgbReserved+rgb2.rgbReserved)); ++ rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,rgb1.rgbBlue+rgb2.rgbBlue)); ++ rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,rgb1.rgbGreen+rgb2.rgbGreen)); ++ rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,rgb1.rgbRed+rgb2.rgbRed)); ++ if (bEditAlpha) rgbDest.rgbReserved = (BYTE)cxmax(0,cxmin(255,rgb1.rgbReserved+rgb2.rgbReserved)); + break; + case OpSub: +- rgbDest.rgbBlue = (BYTE)max(0,min(255,rgb1.rgbBlue-rgb2.rgbBlue)); +- rgbDest.rgbGreen = (BYTE)max(0,min(255,rgb1.rgbGreen-rgb2.rgbGreen)); +- rgbDest.rgbRed = (BYTE)max(0,min(255,rgb1.rgbRed-rgb2.rgbRed)); +- if (bEditAlpha) rgbDest.rgbReserved = (BYTE)max(0,min(255,rgb1.rgbReserved-rgb2.rgbReserved)); ++ rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,rgb1.rgbBlue-rgb2.rgbBlue)); ++ rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,rgb1.rgbGreen-rgb2.rgbGreen)); ++ rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,rgb1.rgbRed-rgb2.rgbRed)); ++ if (bEditAlpha) rgbDest.rgbReserved = (BYTE)cxmax(0,cxmin(255,rgb1.rgbReserved-rgb2.rgbReserved)); + break; + case OpAnd: + rgbDest.rgbBlue = (BYTE)(rgb1.rgbBlue&rgb2.rgbBlue); +@@ -1202,11 +1202,11 @@ void CxImage::Mix(CxImage & imgsrc2, ImageOpType op, long lXOffset, long lYOffse + double dSmallAmt = dSmall*((double)rgb2.rgbBlue); + + if( lAverage < lThresh+1){ +- rgbDest.rgbBlue = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbBlue) + ++ rgbDest.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbBlue) + + dSmallAmt))); +- rgbDest.rgbGreen = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbGreen) + ++ rgbDest.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbGreen) + + dSmallAmt))); +- rgbDest.rgbRed = (BYTE)max(0,min(255,(int)(dLarge*((double)rgb1.rgbRed) + ++ rgbDest.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(dLarge*((double)rgb1.rgbRed) + + dSmallAmt))); + } + else +@@ -1274,9 +1274,9 @@ bool CxImage::ShiftRGB(long r, long g, long b) + #endif //CXIMAGE_SUPPORT_SELECTION + { + color = BlindGetPixelColor(x,y); +- color.rgbRed = (BYTE)max(0,min(255,(int)(color.rgbRed + r))); +- color.rgbGreen = (BYTE)max(0,min(255,(int)(color.rgbGreen + g))); +- color.rgbBlue = (BYTE)max(0,min(255,(int)(color.rgbBlue + b))); ++ color.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbRed + r))); ++ color.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbGreen + g))); ++ color.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbBlue + b))); + BlindSetPixelColor(x,y,color); + } + } +@@ -1284,9 +1284,9 @@ bool CxImage::ShiftRGB(long r, long g, long b) + } else { + for(DWORD j=0; j + for (int i=0;i<256;i++) { +- cTable[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax))); ++ cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax))); + } + + return Lut(cTable); +@@ -1337,21 +1337,21 @@ bool CxImage::GammaRGB(float gammaR, float gammaG, float gammaB) + dMax = pow(255.0, dinvgamma) / 255.0; + BYTE cTableR[256]; + for (i=0;i<256;i++) { +- cTableR[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax))); ++ cTableR[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax))); + } + + dinvgamma = 1/gammaG; + dMax = pow(255.0, dinvgamma) / 255.0; + BYTE cTableG[256]; + for (i=0;i<256;i++) { +- cTableG[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax))); ++ cTableG[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax))); + } + + dinvgamma = 1/gammaB; + dMax = pow(255.0, dinvgamma) / 255.0; + BYTE cTableB[256]; + for (i=0;i<256;i++) { +- cTableB[i] = (BYTE)max(0,min(255,(int)( pow((double)i, dinvgamma) / dMax))); ++ cTableB[i] = (BYTE)cxmax(0,cxmin(255,(int)( pow((double)i, dinvgamma) / dMax))); + } + + return Lut(cTableR, cTableG, cTableB); +@@ -1442,11 +1442,11 @@ bool CxImage::Noise(long level) + { + color = BlindGetPixelColor(x,y); + n=(long)((rand()/(float)RAND_MAX - 0.5)*level); +- color.rgbRed = (BYTE)max(0,min(255,(int)(color.rgbRed + n))); ++ color.rgbRed = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbRed + n))); + n=(long)((rand()/(float)RAND_MAX - 0.5)*level); +- color.rgbGreen = (BYTE)max(0,min(255,(int)(color.rgbGreen + n))); ++ color.rgbGreen = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbGreen + n))); + n=(long)((rand()/(float)RAND_MAX - 0.5)*level); +- color.rgbBlue = (BYTE)max(0,min(255,(int)(color.rgbBlue + n))); ++ color.rgbBlue = (BYTE)cxmax(0,cxmin(255,(int)(color.rgbBlue + n))); + BlindSetPixelColor(x,y,color); + } + } +@@ -1561,8 +1561,8 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage + + //DFT buffers + double *real2,*imag2; +- real2 = (double*)malloc(max(w,h) * sizeof(double)); +- imag2 = (double*)malloc(max(w,h) * sizeof(double)); ++ real2 = (double*)malloc(cxmax(w,h) * sizeof(double)); ++ imag2 = (double*)malloc(cxmax(w,h) * sizeof(double)); + + /* Transform the rows */ + real = (double *)malloc(w * sizeof(double)); +@@ -1617,7 +1617,7 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage + + /* converting from double to byte, there is a HUGE loss in the dynamics + "nn" tries to keep an acceptable SNR, but 8bit=48dB: don't ask more */ +- double nn=pow((double)2,(double)log((double)max(w,h))/(double)log((double)2)-4); ++ double nn=pow((double)2,(double)log((double)cxmax(w,h))/(double)log((double)2)-4); + //reversed gain for reversed transform + if (direction==-1) nn=1/nn; + //bMagnitude : just to see it on the screen +@@ -1626,15 +1626,15 @@ bool CxImage::FFT2(CxImage* srcReal, CxImage* srcImag, CxImage* dstReal, CxImage + for (j=0;jSetPixelIndex(k,j,(BYTE)max(0,min(255,(nn*(3+log(_cabs(grid[k][j]))))))); ++ tmpReal->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(nn*(3+log(_cabs(grid[k][j]))))))); + if (grid[k][j].x==0){ +- tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128+(atan(grid[k][j].y/0.0000000001)*nn))))); ++ tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128+(atan(grid[k][j].y/0.0000000001)*nn))))); + } else { +- tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128+(atan(grid[k][j].y/grid[k][j].x)*nn))))); ++ tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128+(atan(grid[k][j].y/grid[k][j].x)*nn))))); + } + } else { +- tmpReal->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128 + grid[k][j].x*nn)))); +- tmpImag->SetPixelIndex(k,j,(BYTE)max(0,min(255,(128 + grid[k][j].y*nn)))); ++ tmpReal->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128 + grid[k][j].x*nn)))); ++ tmpImag->SetPixelIndex(k,j,(BYTE)cxmax(0,cxmin(255,(128 + grid[k][j].y*nn)))); + } + } + } +@@ -1922,7 +1922,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius) + + correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy); + +- tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5)))); ++ tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5)))); + } + } + +@@ -1943,7 +1943,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius) + + correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy); + +- tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5)))); ++ tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5)))); + } + } + for (x=0;x<=w;x+=w){ +@@ -1963,7 +1963,7 @@ bool CxImage::RepairChannel(CxImage *ch, float radius) + + correction = ((1.0+iy*iy)*ixx - ix*iy*ixy + (1.0+ix*ix)*iyy)/(1.0+ix*ix+iy*iy); + +- tmp.BlindSetPixelIndex(x,y,(BYTE)min(255,max(0,(xy0 + radius * correction + 0.5)))); ++ tmp.BlindSetPixelIndex(x,y,(BYTE)cxmin(255,cxmax(0,(xy0 + radius * correction + 0.5)))); + } + } + +@@ -2621,8 +2621,8 @@ bool CxImage::SelectiveBlur(float radius, BYTE threshold, CxImage* iDst) + } + + //build the difference mask +- BYTE thresh_dw = (BYTE)max( 0 ,(int)(128 - threshold)); +- BYTE thresh_up = (BYTE)min(255,(int)(128 + threshold)); ++ BYTE thresh_dw = (BYTE)cxmax( 0 ,(int)(128 - threshold)); ++ BYTE thresh_up = (BYTE)cxmin(255,(int)(128 + threshold)); + long kernel[]={-100,-100,-100,-100,801,-100,-100,-100,-100}; + if (!Tmp.Filter(kernel,3,800,128)){ + delete [] pPalette; +@@ -2755,7 +2755,7 @@ bool CxImage::UnsharpMask(float radius /*= 5.0*/, float amount /*= 0.5*/, int th + if (abs(diff) < threshold){ + dest_row[z] = cur_row[z]; + } else { +- dest_row[z] = (BYTE)min(255, max(0,(int)(cur_row[z] + amount * diff))); ++ dest_row[z] = (BYTE)cxmin(255, cxmax(0,(int)(cur_row[z] + amount * diff))); + } + } + } +@@ -2952,7 +2952,7 @@ bool CxImage::RedEyeRemove(float strength) + float a = 1.0f-5.0f*((float)((x-0.5f*(xmax+xmin))*(x-0.5f*(xmax+xmin))+(y-0.5f*(ymax+ymin))*(y-0.5f*(ymax+ymin))))/((float)((xmax-xmin)*(ymax-ymin))); + if (a<0) a=0; + color = BlindGetPixelColor(x,y); +- color.rgbRed = (BYTE)(a*min(color.rgbGreen,color.rgbBlue)+(1.0f-a)*color.rgbRed); ++ color.rgbRed = (BYTE)(a*cxmin(color.rgbGreen,color.rgbBlue)+(1.0f-a)*color.rgbRed); + BlindSetPixelColor(x,y,color); + } + } +@@ -2990,7 +2990,7 @@ bool CxImage::Saturate(const long saturation, const long colorspace) + case 1: + { + for (int i=0;i<256;i++) { +- cTable[i] = (BYTE)max(0,min(255,(int)(i + saturation))); ++ cTable[i] = (BYTE)cxmax(0,cxmin(255,(int)(i + saturation))); + } + for(long y=ymin; yleft,0); +- xmax = min(pBox->right,head.biWidth); +- ymin = max(pBox->bottom,0); +- ymax = min(pBox->top,head.biHeight); ++ xmin = cxmax(pBox->left,0); ++ xmax = cxmin(pBox->right,head.biWidth); ++ ymin = cxmax(pBox->bottom,0); ++ ymax = cxmin(pBox->top,head.biHeight); + } else { + xmin = ymin = 0; + xmax = head.biWidth; ymax=head.biHeight; +@@ -3463,7 +3463,7 @@ bool CxImage::AdaptiveThreshold(long method, long nBoxSize, CxImage* pContrastMa + r.top = r.bottom + nBoxSize; + int threshold = OptimalThreshold(method, &r, pContrastMask); + if (threshold <0) return false; +- mask.SetPixelIndex(x,y,(BYTE)max(0,min(255,nBias+((1.0f-fGlobalLocalBalance)*threshold + fGlobalLocalBalance*globalthreshold)))); ++ mask.SetPixelIndex(x,y,(BYTE)cxmax(0,cxmin(255,nBias+((1.0f-fGlobalLocalBalance)*threshold + fGlobalLocalBalance*globalthreshold)))); + } + } + +@@ -3490,10 +3490,6 @@ bool CxImage::AdaptiveThreshold(long method, long nBoxSize, CxImage* pContrastMa + * Note: nOpacity=0 && bSelectFilledArea=true act as a "magic wand" + * \return true if everything is ok + */ +-#if defined(XBMC) && !defined(_WIN32) +-int max(int a, int b) { return a > b ? a : b; } +-int min(int a, int b) { return a < b ? a : b; } +-#endif + + bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFillColor, const BYTE nTolerance, + BYTE nOpacity, const bool bSelectFilledArea, const BYTE nSelectionLevel) +@@ -3538,8 +3534,8 @@ bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFil + if (IsIndexed()){ //--- Generic indexed image, no tolerance OR Grayscale image with tolerance + BYTE idxRef = GetPixelIndex(xStart,yStart); + BYTE idxFill = GetNearestIndex(cFillColor); +- BYTE idxMin = (BYTE)min(255, max(0,(int)(idxRef - nTolerance))); +- BYTE idxMax = (BYTE)min(255, max(0,(int)(idxRef + nTolerance))); ++ BYTE idxMin = (BYTE)cxmin(255, cxmax(0,(int)(idxRef - nTolerance))); ++ BYTE idxMax = (BYTE)cxmin(255, cxmax(0,(int)(idxRef + nTolerance))); + + while(!q.empty()) + { +@@ -3575,12 +3571,12 @@ bool CxImage::FloodFill(const long xStart, const long yStart, const RGBQUAD cFil + } else { //--- RGB image + RGBQUAD cRef = GetPixelColor(xStart,yStart); + RGBQUAD cRefMin, cRefMax; +- cRefMin.rgbRed = (BYTE)min(255, max(0,(int)(cRef.rgbRed - nTolerance))); +- cRefMin.rgbGreen = (BYTE)min(255, max(0,(int)(cRef.rgbGreen - nTolerance))); +- cRefMin.rgbBlue = (BYTE)min(255, max(0,(int)(cRef.rgbBlue - nTolerance))); +- cRefMax.rgbRed = (BYTE)min(255, max(0,(int)(cRef.rgbRed + nTolerance))); +- cRefMax.rgbGreen = (BYTE)min(255, max(0,(int)(cRef.rgbGreen + nTolerance))); +- cRefMax.rgbBlue = (BYTE)min(255, max(0,(int)(cRef.rgbBlue + nTolerance))); ++ cRefMin.rgbRed = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbRed - nTolerance))); ++ cRefMin.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbGreen - nTolerance))); ++ cRefMin.rgbBlue = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbBlue - nTolerance))); ++ cRefMax.rgbRed = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbRed + nTolerance))); ++ cRefMax.rgbGreen = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbGreen + nTolerance))); ++ cRefMax.rgbBlue = (BYTE)cxmin(255, cxmax(0,(int)(cRef.rgbBlue + nTolerance))); + + while(!q.empty()) + { +diff --git a/lib/cximage-6.0/CxImage/ximage.cpp b/lib/cximage-6.0/CxImage/ximage.cpp +index e81d3c6..26c6993 100644 +--- a/lib/cximage-6.0/CxImage/ximage.cpp ++++ b/lib/cximage-6.0/CxImage/ximage.cpp +@@ -460,7 +460,7 @@ bool CxImage::CreateFromArray(BYTE* pArray,DWORD dwWidth,DWORD dwHeight,DWORD dw + src+=4; + } + } else { +- memcpy(dst,src,min(info.dwEffWidth,dwBytesperline)); ++ memcpy(dst,src,cxmin(info.dwEffWidth,dwBytesperline)); + } + } + return true; +@@ -500,7 +500,7 @@ bool CxImage::CreateFromMatrix(BYTE** ppMatrix,DWORD dwWidth,DWORD dwHeight,DWOR + src+=4; + } + } else { +- memcpy(dst,src,min(info.dwEffWidth,dwBytesperline)); ++ memcpy(dst,src,cxmin(info.dwEffWidth,dwBytesperline)); + } + } + } +diff --git a/lib/cximage-6.0/CxImage/ximagif.cpp b/lib/cximage-6.0/CxImage/ximagif.cpp +index b89e061..64b1ccc 100644 +--- a/lib/cximage-6.0/CxImage/ximagif.cpp ++++ b/lib/cximage-6.0/CxImage/ximagif.cpp +@@ -478,7 +478,7 @@ bool CxImageGIF::Encode(CxFile * fp, CxImage ** pImages, int pagecount, bool bLo + ghost.EncodeHeader(fp); + + if (m_loops!=1){ +- ghost.SetLoops(max(0,m_loops-1)); ++ ghost.SetLoops(cxmax(0,m_loops-1)); + ghost.EncodeLoopExtension(fp); + } + +@@ -1340,10 +1340,10 @@ void CxImageGIF::GetComment(char* sz_comment_out) + //////////////////////////////////////////////////////////////////////////////// + void CxImageGIF::GifMix(CxImage & imgsrc2, struct_image & imgdesc) + { +- long ymin = max(0,(long)(GetHeight()-imgdesc.t - imgdesc.h)); ++ long ymin = cxmax(0,(long)(GetHeight()-imgdesc.t - imgdesc.h)); + long ymax = GetHeight()-imgdesc.t; + long xmin = imgdesc.l; +- long xmax = min(GetWidth(), (DWORD)(imgdesc.l + imgdesc.w)); ++ long xmax = cxmin(GetWidth(), (DWORD)(imgdesc.l + imgdesc.w)); + + long ibg2= imgsrc2.GetTransIndex(); + BYTE i2; +diff --git a/lib/cximage-6.0/CxImage/ximahist.cpp b/lib/cximage-6.0/CxImage/ximahist.cpp +index a2aed03..5391107 100644 +--- a/lib/cximage-6.0/CxImage/ximahist.cpp ++++ b/lib/cximage-6.0/CxImage/ximahist.cpp +@@ -110,7 +110,7 @@ bool CxImage::HistogramStretch(long method, double threshold) + // calculate LUT + BYTE lut[256]; + for (x = 0; x <256; x++){ +- lut[x] = (BYTE)max(0,min(255,(255 * (x - minc) / (maxc - minc)))); ++ lut[x] = (BYTE)cxmax(0,cxmin(255,(255 * (x - minc) / (maxc - minc)))); + } + + for (y=0; yGetEffWidth(); +- else n = min(n,(int)ima->GetEffWidth()); ++ else n = cxmin(n,(int)ima->GetEffWidth()); + + if ((IterImage!=NULL)&&(buf!=NULL)&&(n>0)) memcpy(IterImage,buf,n); + } +@@ -148,7 +148,7 @@ inline void CImageIterator::SetRow(BYTE *buf, int n) + inline void CImageIterator::GetRow(BYTE *buf, int n) + { + if ((IterImage!=NULL)&&(buf!=NULL)&&(n>0)) +- memcpy(buf,IterImage,min(n,(int)ima->GetEffWidth())); ++ memcpy(buf,IterImage,cxmin(n,(int)ima->GetEffWidth())); + } + ///////////////////////////////////////////////////////////////////// + inline BYTE* CImageIterator::GetRow() +diff --git a/lib/cximage-6.0/CxImage/ximajbg.cpp b/lib/cximage-6.0/CxImage/ximajbg.cpp +index 06fb9bf..8a01e28 100644 +--- a/lib/cximage-6.0/CxImage/ximajbg.cpp ++++ b/lib/cximage-6.0/CxImage/ximajbg.cpp +@@ -145,7 +145,7 @@ bool CxImageJBG::Encode(CxFile * hFile) + jbg_enc_init(&jbig_state, w, h, planes, &buffer, jbig_data_out, hFile); + + //jbg_enc_layers(&jbig_state, 2); +- //jbg_enc_lrlmax(&jbig_state, 800, 600); ++ //jbg_enc_lrlcxmax(&jbig_state, 800, 600); + + // Specify a few other options (each is ignored if negative) + int dl = -1, dh = -1, d = -1, l0 = -1, mx = -1; +diff --git a/lib/cximage-6.0/CxImage/ximapal.cpp b/lib/cximage-6.0/CxImage/ximapal.cpp +index b3bd3da..3788c98 100644 +--- a/lib/cximage-6.0/CxImage/ximapal.cpp ++++ b/lib/cximage-6.0/CxImage/ximapal.cpp +@@ -398,8 +398,8 @@ void CxImage::RGBtoBGR(BYTE *buffer, int length) + { + if (buffer && (head.biClrUsed==0)){ + BYTE temp; +- length = min(length,(int)info.dwEffWidth); +- length = min(length,(int)(3*head.biWidth)); ++ length = cxmin(length,(int)info.dwEffWidth); ++ length = cxmin(length,(int)(3*head.biWidth)); + for (int i=0;i needed for grayscale PNGs + + #ifdef USE_NEW_LIBPNG_API +- int nshift = max(0,(_bit_depth>>3)-1)<<3; ++ int nshift = cxmax(0,(_bit_depth>>3)-1)<<3; + #else +- int nshift = max(0,(info_ptr->bit_depth>>3)-1)<<3; ++ int nshift = cxmax(0,(info_ptr->bit_depth>>3)-1)<<3; + #endif + + #ifdef USE_NEW_LIBPNG_API +@@ -255,10 +255,10 @@ bool CxImagePNG::Decode(CxFile *hFile) + if (pal){ + DWORD ip; + #ifdef USE_NEW_LIBPNG_API +- for (ip=0;ipnum_trans);ip++) ++ for (ip=0;ipnum_trans);ip++) + #if PNG_LIBPNG_VER > 10399 + pal[ip].rgbReserved=info_ptr->trans_alpha[ip]; + #else +@@ -737,9 +737,9 @@ bool CxImagePNG::Encode(CxFile *hFile) + #endif // CXIMAGE_SUPPORT_ALPHA // + + #ifdef USE_NEW_LIBPNG_API +- int row_size = max(info.dwEffWidth, (_width * _channels * _bit_depth / 8)); ++ int row_size = cxmax(info.dwEffWidth, (_width * _channels * _bit_depth / 8)); + #else +- int row_size = max(info.dwEffWidth, info_ptr->width*info_ptr->channels*(info_ptr->bit_depth/8)); ++ int row_size = cxmax(info.dwEffWidth, info_ptr->width*info_ptr->channels*(info_ptr->bit_depth/8)); + info_ptr->rowbytes = row_size; + #endif + BYTE *row_pointers = new BYTE[row_size]; +diff --git a/lib/cximage-6.0/CxImage/ximaraw.cpp b/lib/cximage-6.0/CxImage/ximaraw.cpp +index fd86f96..52d964d 100644 +--- a/lib/cximage-6.0/CxImage/ximaraw.cpp ++++ b/lib/cximage-6.0/CxImage/ximaraw.cpp +@@ -216,7 +216,7 @@ bool CxImageRAW::Decode(CxFile *hFile) + + DWORD size = dcr.width * (dcr.colors*dcr.opt.output_bps/8); + RGBtoBGR(ppm,size); +- memcpy(GetBits(dcr.height - 1 - row), ppm, min(size,GetEffWidth())); ++ memcpy(GetBits(dcr.height - 1 - row), ppm, cxmin(size,GetEffWidth())); + } + free (ppm); + +@@ -298,7 +298,7 @@ bool CxImageRAW::GetExifThumbnail(const char *filename, const char *outname, int + // Resizing. + if (image.GetWidth() > 256 || image.GetHeight() > 256) + { +- float amount = 256.0f / max(image.GetWidth(), image.GetHeight()); ++ float amount = 256.0f / cxmax(image.GetWidth(), image.GetHeight()); + image.Resample((long)(image.GetWidth() * amount), (long)(image.GetHeight() * amount), 0); + } + +diff --git a/lib/cximage-6.0/CxImage/ximasel.cpp b/lib/cximage-6.0/CxImage/ximasel.cpp +index 3a7c9a1..37cd10f 100644 +--- a/lib/cximage-6.0/CxImage/ximasel.cpp ++++ b/lib/cximage-6.0/CxImage/ximasel.cpp +@@ -113,15 +113,15 @@ bool CxImage::SelectionAddRect(RECT r, BYTE level) + if (r.left r2.left) info.rSelectionBox.left = max(0L,min(head.biWidth,r2.left)); +- if (info.rSelectionBox.right <= r2.right) info.rSelectionBox.right = max(0L,min(head.biWidth,r2.right+1)); +- if (info.rSelectionBox.bottom > r2.bottom) info.rSelectionBox.bottom = max(0L,min(head.biHeight,r2.bottom)); ++ if (info.rSelectionBox.top <= r2.top) info.rSelectionBox.top = cxmax(0L,cxmin(head.biHeight,r2.top+1)); ++ if (info.rSelectionBox.left > r2.left) info.rSelectionBox.left = cxmax(0L,cxmin(head.biWidth,r2.left)); ++ if (info.rSelectionBox.right <= r2.right) info.rSelectionBox.right = cxmax(0L,cxmin(head.biWidth,r2.right+1)); ++ if (info.rSelectionBox.bottom > r2.bottom) info.rSelectionBox.bottom = cxmax(0L,cxmin(head.biHeight,r2.bottom)); + +- long ymin = max(0L,min(head.biHeight,r2.bottom)); +- long ymax = max(0L,min(head.biHeight,r2.top+1)); +- long xmin = max(0L,min(head.biWidth,r2.left)); +- long xmax = max(0L,min(head.biWidth,r2.right+1)); ++ long ymin = cxmax(0L,cxmin(head.biHeight,r2.bottom)); ++ long ymax = cxmax(0L,cxmin(head.biHeight,r2.top+1)); ++ long xmin = cxmax(0L,cxmin(head.biWidth,r2.left)); ++ long xmax = cxmax(0L,cxmin(head.biWidth,r2.right+1)); + + for (long y=ymin; y (xcenter - xradius)) info.rSelectionBox.left = max(0L,min(head.biWidth,(xcenter - xradius))); +- if (info.rSelectionBox.right <= (xcenter + xradius)) info.rSelectionBox.right = max(0L,min(head.biWidth,(xcenter + xradius + 1))); +- if (info.rSelectionBox.bottom > (ycenter - yradius)) info.rSelectionBox.bottom = max(0L,min(head.biHeight,(ycenter - yradius))); +- if (info.rSelectionBox.top <= (ycenter + yradius)) info.rSelectionBox.top = max(0L,min(head.biHeight,(ycenter + yradius + 1))); ++ if (info.rSelectionBox.left > (xcenter - xradius)) info.rSelectionBox.left = cxmax(0L,cxmin(head.biWidth,(xcenter - xradius))); ++ if (info.rSelectionBox.right <= (xcenter + xradius)) info.rSelectionBox.right = cxmax(0L,cxmin(head.biWidth,(xcenter + xradius + 1))); ++ if (info.rSelectionBox.bottom > (ycenter - yradius)) info.rSelectionBox.bottom = cxmax(0L,cxmin(head.biHeight,(ycenter - yradius))); ++ if (info.rSelectionBox.top <= (ycenter + yradius)) info.rSelectionBox.top = cxmax(0L,cxmin(head.biHeight,(ycenter + yradius + 1))); + +- long xmin = max(0L,min(head.biWidth,xcenter - xradius)); +- long xmax = max(0L,min(head.biWidth,xcenter + xradius + 1)); +- long ymin = max(0L,min(head.biHeight,ycenter - yradius)); +- long ymax = max(0L,min(head.biHeight,ycenter + yradius + 1)); ++ long xmin = cxmax(0L,cxmin(head.biWidth,xcenter - xradius)); ++ long xmax = cxmax(0L,cxmin(head.biWidth,xcenter + xradius + 1)); ++ long ymin = cxmax(0L,cxmin(head.biHeight,ycenter - yradius)); ++ long ymax = cxmax(0L,cxmin(head.biHeight,ycenter + yradius + 1)); + + long y,yo; +- for (y=ymin; yx < next->x) {r2.left=current->x; r2.right=next->x; } else {r2.left=next->x ; r2.right=current->x; } + if (current->y < next->y) {r2.bottom=current->y; r2.top=next->y; } else {r2.bottom=next->y ; r2.top=current->y; } +- if (localbox.top < r2.top) localbox.top = max(0L,min(head.biHeight-1,r2.top+1)); +- if (localbox.left > r2.left) localbox.left = max(0L,min(head.biWidth-1,r2.left-1)); +- if (localbox.right < r2.right) localbox.right = max(0L,min(head.biWidth-1,r2.right+1)); +- if (localbox.bottom > r2.bottom) localbox.bottom = max(0L,min(head.biHeight-1,r2.bottom-1)); ++ if (localbox.top < r2.top) localbox.top = cxmax(0L,cxmin(head.biHeight-1,r2.top+1)); ++ if (localbox.left > r2.left) localbox.left = cxmax(0L,cxmin(head.biWidth-1,r2.left-1)); ++ if (localbox.right < r2.right) localbox.right = cxmax(0L,cxmin(head.biWidth-1,r2.right+1)); ++ if (localbox.bottom > r2.bottom) localbox.bottom = cxmax(0L,cxmin(head.biHeight-1,r2.bottom-1)); + + i++; + } +@@ -385,10 +385,10 @@ bool CxImage::SelectionAddPolygon(POINT *points, long npoints, BYTE level) + for (x=localbox.left; x<=localbox.right; x++) + if (plocal[x + yoffset]!=1) pSelection[x + yoffset]=level; + } +- if (info.rSelectionBox.top <= localbox.top) info.rSelectionBox.top = min(head.biHeight,localbox.top + 1); +- if (info.rSelectionBox.left > localbox.left) info.rSelectionBox.left = min(head.biWidth,localbox.left); +- if (info.rSelectionBox.right <= localbox.right) info.rSelectionBox.right = min(head.biWidth,localbox.right + 1); +- if (info.rSelectionBox.bottom > localbox.bottom) info.rSelectionBox.bottom = min(head.biHeight,localbox.bottom); ++ if (info.rSelectionBox.top <= localbox.top) info.rSelectionBox.top = cxmin(head.biHeight,localbox.top + 1); ++ if (info.rSelectionBox.left > localbox.left) info.rSelectionBox.left = cxmin(head.biWidth,localbox.left); ++ if (info.rSelectionBox.right <= localbox.right) info.rSelectionBox.right = cxmin(head.biWidth,localbox.right + 1); ++ if (info.rSelectionBox.bottom > localbox.bottom) info.rSelectionBox.bottom = cxmin(head.biHeight,localbox.bottom); + + free(plocal); + free(pix); +diff --git a/lib/cximage-6.0/CxImage/ximath.cpp b/lib/cximage-6.0/CxImage/ximath.cpp +index 37533e2..f84eb72 100644 +--- a/lib/cximage-6.0/CxImage/ximath.cpp ++++ b/lib/cximage-6.0/CxImage/ximath.cpp +@@ -64,10 +64,10 @@ CxRect2 CxRect2::CrossSection(CxRect2 const &r2) const + */ + { + CxRect2 cs; +- cs.botLeft.x=max(botLeft.x, r2.botLeft.x); +- cs.botLeft.y=max(botLeft.y, r2.botLeft.y); +- cs.topRight.x=min(topRight.x, r2.topRight.x); +- cs.topRight.y=min(topRight.y, r2.topRight.y); ++ cs.botLeft.x=cxmax(botLeft.x, r2.botLeft.x); ++ cs.botLeft.y=cxmax(botLeft.y, r2.botLeft.y); ++ cs.topRight.x=cxmin(topRight.x, r2.topRight.x); ++ cs.topRight.y=cxmin(topRight.y, r2.topRight.y); + if (cs.botLeft.x<=cs.topRight.x && cs.botLeft.y<=cs.topRight.y) { + return cs; + } else { +diff --git a/lib/cximage-6.0/CxImage/ximatif.cpp b/lib/cximage-6.0/CxImage/ximatif.cpp +index 658392a..002766c 100644 +--- a/lib/cximage-6.0/CxImage/ximatif.cpp ++++ b/lib/cximage-6.0/CxImage/ximatif.cpp +@@ -470,9 +470,9 @@ bool CxImageTIF::Decode(CxFile * hFile) + if ( cb > 0.00304 ) cb = 1.055 * pow(cb,0.41667) - 0.055; + else cb = 12.92 * cb; + +- c.rgbRed =(BYTE)max(0,min(255,(int)(cr*255))); +- c.rgbGreen=(BYTE)max(0,min(255,(int)(cg*255))); +- c.rgbBlue =(BYTE)max(0,min(255,(int)(cb*255))); ++ c.rgbRed =(BYTE)cxmax(0,cxmin(255,(int)(cr*255))); ++ c.rgbGreen=(BYTE)cxmax(0,cxmin(255,(int)(cg*255))); ++ c.rgbBlue =(BYTE)cxmax(0,cxmin(255,(int)(cb*255))); + + SetPixelColor(xi,yi,c); + #if CXIMAGE_SUPPORT_ALPHA +diff --git a/lib/cximage-6.0/CxImage/ximatran.cpp b/lib/cximage-6.0/CxImage/ximatran.cpp +index 64a71e7..84d5e03 100644 +--- a/lib/cximage-6.0/CxImage/ximatran.cpp ++++ b/lib/cximage-6.0/CxImage/ximatran.cpp +@@ -302,12 +302,12 @@ bool CxImage::RotateLeft(CxImage* iDst) + for (ys = 0; ys < newHeight; ys+=RBLOCK) { + if (head.biBitCount==24) { + //RGB24 optimized pixel access: +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ //do rotation ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ //do rotation + info.nProgress = (long)(100*x/newWidth); + x2=newWidth-x-1; + dstPtr = (BYTE*) imgDest.BlindGetPixelPointer(x,ys); + srcPtr = (BYTE*) BlindGetPixelPointer(ys, x2); +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + //imgDest.SetPixelColor(x, y, GetPixelColor(y, x2)); + *(dstPtr) = *(srcPtr); + *(dstPtr+1) = *(srcPtr+1); +@@ -318,19 +318,19 @@ bool CxImage::RotateLeft(CxImage* iDst) + }//for x + } else { + //anything else than 24bpp (and 1bpp): palette +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + info.nProgress = (long)(100*x/newWidth); // + x2=newWidth-x-1; +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + imgDest.SetPixelIndex(x, y, BlindGetPixelIndex(y, x2)); + }//for y + }//for x + }//if (version selection) + #if CXIMAGE_SUPPORT_ALPHA + if (AlphaIsValid()) { +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + x2=newWidth-x-1; +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + imgDest.AlphaSet(x,y,BlindAlphaGet(y, x2)); + }//for y + }//for x +@@ -343,9 +343,9 @@ bool CxImage::RotateLeft(CxImage* iDst) + imgDest.info.rSelectionBox.right = newWidth-info.rSelectionBox.bottom; + imgDest.info.rSelectionBox.bottom = info.rSelectionBox.left; + imgDest.info.rSelectionBox.top = info.rSelectionBox.right; +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + x2=newWidth-x-1; +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + imgDest.SelectionSet(x,y,BlindSelectionGet(y, x2)); + }//for y + }//for x +@@ -447,12 +447,12 @@ bool CxImage::RotateRight(CxImage* iDst) + for (ys = 0; ys < newHeight; ys+=RBLOCK) { + if (head.biBitCount==24) { + //RGB24 optimized pixel access: +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + info.nProgress = (long)(100*y/newHeight); // + y2=newHeight-y-1; + dstPtr = (BYTE*) imgDest.BlindGetPixelPointer(xs,y); + srcPtr = (BYTE*) BlindGetPixelPointer(y2, xs); +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + //imgDest.SetPixelColor(x, y, GetPixelColor(y2, x)); + *(dstPtr) = *(srcPtr); + *(dstPtr+1) = *(srcPtr+1); +@@ -463,19 +463,19 @@ bool CxImage::RotateRight(CxImage* iDst) + }//for y + } else { + //anything else than BW & RGB24: palette +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + info.nProgress = (long)(100*y/newHeight); // + y2=newHeight-y-1; +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + imgDest.SetPixelIndex(x, y, BlindGetPixelIndex(y2, x)); + }//for x + }//for y + }//if + #if CXIMAGE_SUPPORT_ALPHA + if (AlphaIsValid()){ +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + y2=newHeight-y-1; +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + imgDest.AlphaSet(x,y,BlindAlphaGet(y2, x)); + }//for x + }//for y +@@ -488,9 +488,9 @@ bool CxImage::RotateRight(CxImage* iDst) + imgDest.info.rSelectionBox.right = info.rSelectionBox.top; + imgDest.info.rSelectionBox.bottom = newHeight-info.rSelectionBox.right; + imgDest.info.rSelectionBox.top = newHeight-info.rSelectionBox.left; +- for (y = ys; y < min(newHeight, ys+RBLOCK); y++){ ++ for (y = ys; y < cxmin(newHeight, ys+RBLOCK); y++){ + y2=newHeight-y-1; +- for (x = xs; x < min(newWidth, xs+RBLOCK); x++){ ++ for (x = xs; x < cxmin(newWidth, xs+RBLOCK); x++){ + imgDest.SelectionSet(x,y,BlindSelectionGet(y2, x)); + }//for x + }//for y +@@ -608,10 +608,10 @@ bool CxImage::Rotate(float angle, CxImage* iDst) + newP4.x = (float)(p4.x*cos_angle - p4.y*sin_angle); + newP4.y = (float)(p4.x*sin_angle + p4.y*cos_angle); + +- leftTop.x = min(min(newP1.x,newP2.x),min(newP3.x,newP4.x)); +- leftTop.y = min(min(newP1.y,newP2.y),min(newP3.y,newP4.y)); +- rightBottom.x = max(max(newP1.x,newP2.x),max(newP3.x,newP4.x)); +- rightBottom.y = max(max(newP1.y,newP2.y),max(newP3.y,newP4.y)); ++ leftTop.x = cxmin(cxmin(newP1.x,newP2.x),cxmin(newP3.x,newP4.x)); ++ leftTop.y = cxmin(cxmin(newP1.y,newP2.y),cxmin(newP3.y,newP4.y)); ++ rightBottom.x = cxmax(cxmax(newP1.x,newP2.x),cxmax(newP3.x,newP4.x)); ++ rightBottom.y = cxmax(cxmax(newP1.y,newP2.y),cxmax(newP3.y,newP4.y)); + leftBottom.x = leftTop.x; + leftBottom.y = rightBottom.y; + rightTop.x = rightBottom.x; +@@ -740,10 +740,10 @@ bool CxImage::Rotate2(float angle, + }//if + + //(read new dimensions from location of corners) +- float minx = (float) min(min(newp[0].x,newp[1].x),min(newp[2].x,newp[3].x)); +- float miny = (float) min(min(newp[0].y,newp[1].y),min(newp[2].y,newp[3].y)); +- float maxx = (float) max(max(newp[0].x,newp[1].x),max(newp[2].x,newp[3].x)); +- float maxy = (float) max(max(newp[0].y,newp[1].y),max(newp[2].y,newp[3].y)); ++ float minx = (float) cxmin(cxmin(newp[0].x,newp[1].x),cxmin(newp[2].x,newp[3].x)); ++ float miny = (float) cxmin(cxmin(newp[0].y,newp[1].y),cxmin(newp[2].y,newp[3].y)); ++ float maxx = (float) cxmax(cxmax(newp[0].x,newp[1].x),cxmax(newp[2].x,newp[3].x)); ++ float maxy = (float) cxmax(cxmax(newp[0].y,newp[1].y),cxmax(newp[2].y,newp[3].y)); + int newWidth = (int) floor(maxx-minx+0.5f); + int newHeight= (int) floor(maxy-miny+0.5f); + float ssx=((maxx+minx)- ((float) newWidth-1))/2.0f; //start for x +@@ -1003,12 +1003,12 @@ bool CxImage::Resample(long newx, long newy, int mode, CxImage* iDst) + if (info.nEscape) break; + fY = y * yScale; + ifY = (int)fY; +- ifY1 = min(ymax, ifY+1); ++ ifY1 = cxmin(ymax, ifY+1); + dy = fY - ifY; + for(long x=0; x 1 && fy > 1) { +@@ -813,7 +813,7 @@ long CxImage::Draw(HDC hdc, long x, long y, long cx, long cy, RECT* pClipRect, b + + for(yy=0;yy>8); +-- +2.8.0.rc3 + diff --git a/package/kodi/0010-curl-support-version-7.5.0-and-upwards.patch b/package/kodi/0010-curl-support-version-7.5.0-and-upwards.patch new file mode 100644 index 0000000000..b6743ae532 --- /dev/null +++ b/package/kodi/0010-curl-support-version-7.5.0-and-upwards.patch @@ -0,0 +1,34 @@ +From 7d3c70b163bc67aeb1fdef8fd2347b39f311c584 Mon Sep 17 00:00:00 2001 +From: fritsch +Date: Sun, 24 Jul 2016 20:24:07 +0200 +Subject: [PATCH] Curl: Adjust multi_cleanup method which returns CURLMcode + +Signed-off-by: Bernd Kuhls +(backported from upstream commit: + https://github.com/xbmc/xbmc/commit/2a8d3e7f6cffea52740b8392a3be8ec251d5ff70) +--- + xbmc/filesystem/DllLibCurl.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h +index db97f92..9e78a91 100644 +--- a/xbmc/filesystem/DllLibCurl.h ++++ b/xbmc/filesystem/DllLibCurl.h +@@ -52,7 +52,7 @@ namespace XCURL + virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0; + virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0; + virtual CURLMsg* multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0; +- virtual void multi_cleanup(CURL_HANDLE * handle )=0; ++ virtual CURLMcode multi_cleanup(CURLM * handle )=0; + virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0; + virtual void slist_free_all(struct curl_slist *)=0; + }; +@@ -77,7 +77,7 @@ namespace XCURL + DEFINE_METHOD5(CURLMcode, multi_fdset, (CURLM *p1, fd_set *p2, fd_set *p3, fd_set *p4, int *p5)) + DEFINE_METHOD2(CURLMcode, multi_timeout, (CURLM *p1, long *p2)) + DEFINE_METHOD2(CURLMsg*, multi_info_read, (CURLM *p1, int *p2)) +- DEFINE_METHOD1(void, multi_cleanup, (CURLM *p1)) ++ DEFINE_METHOD1(CURLMcode, multi_cleanup, (CURLM *p1)) + DEFINE_METHOD2(struct curl_slist*, slist_append, (struct curl_slist * p1, const char * p2)) + DEFINE_METHOD1(void, slist_free_all, (struct curl_slist * p1)) + DEFINE_METHOD1(const char *, easy_strerror, (CURLcode p1)) diff --git a/package/kodi/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch b/package/kodi/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch new file mode 100644 index 0000000000..a3a9d50ed1 --- /dev/null +++ b/package/kodi/0011-xbmc_pvr_types.h-Fix-compilation-with-gcc6.patch @@ -0,0 +1,30 @@ +From a17e8d39cf01e26955574acd236b4ef5b54b8c3b Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Mon, 5 Sep 2016 12:34:20 +0200 +Subject: [PATCH 2/2] xbmc_pvr_types.h: Fix compilation with gcc6 + +Backport of upstream commit from master branch: +https://github.com/xbmc/xbmc/commit/c8a346109926fa03bf6882c0b6e3885af0e0f8ed + +This patch can be removed when Kodi is bumped to 17.0-Krypton. + +Signed-off-by: Bernd Kuhls +--- + xbmc/addons/include/xbmc_pvr_types.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/xbmc/addons/include/xbmc_pvr_types.h b/xbmc/addons/include/xbmc_pvr_types.h +index c5ab20b..e518de1 100644 +--- a/xbmc/addons/include/xbmc_pvr_types.h ++++ b/xbmc/addons/include/xbmc_pvr_types.h +@@ -34,6 +34,7 @@ + #endif + #include + #include ++#include + + #include "xbmc_addon_types.h" + #include "xbmc_epg_types.h" +-- +2.9.3 + diff --git a/package/kodi/0012-Fix_includes_in_amcodec.patch b/package/kodi/0012-Fix_includes_in_amcodec.patch new file mode 100644 index 0000000000..4a6d44f686 --- /dev/null +++ b/package/kodi/0012-Fix_includes_in_amcodec.patch @@ -0,0 +1,38 @@ +commit 4bbb21aa5cee6b2f40759aa8b1bd65246a237f79 +Author: Alex Deryskyba +Date: Wed May 4 01:38:27 2016 +0200 + + [aml] Fix includes in amcodec/codec.h to make them relative + +[Taken from upstream commit +https://github.com/xbmc/xbmc/commit/4bbb21aa5cee6b2f40759aa8b1bd65246a237f79.] +Signed-off-by: Dagg Stompler + +diff --git a/tools/depends/target/libamplayer/libamplayer/include/amcodec/codec.h b/tools/depends/target/libamplayer/libamplayer/include/amcodec/codec.h +index 187d4d5..632c24e 100644 +--- a/tools/depends/target/libamplayer/libamplayer/include/amcodec/codec.h ++++ b/tools/depends/target/libamplayer/libamplayer/include/amcodec/codec.h +@@ -12,8 +12,8 @@ + #ifndef CODEC_CTRL_H_ + #define CODEC_CTRL_H_ + +-#include +-#include ++#include "codec_type.h" ++#include "codec_error.h" + + + int codec_init(codec_para_t *); +diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in +index a1a3447..1bf5a89 100644 +--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in ++++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile.in +@@ -24,8 +24,6 @@ endif + ifeq (@USE_LIBAMCODEC@,1) + SRCS += AMLCodec.cpp + SRCS += DVDVideoCodecAmlogic.cpp +-INCLUDES += -I$(prefix)/include/amcodec +-INCLUDES += -I$(prefix)/include/amplayer + endif + + ifeq (@USE_ANDROID@,1) diff --git a/package/kodi/Config.in b/package/kodi/Config.in index d9760cac52..f2a3e2e032 100644 --- a/package/kodi/Config.in +++ b/package/kodi/Config.in @@ -1,18 +1,19 @@ config BR2_PACKAGE_KODI_ARCH_SUPPORTS bool + depends on BR2_USE_MMU # libcdio, and others default y if (BR2_arm || (BR2_mipsel && BR2_TOOLCHAIN_USES_GLIBC) || BR2_i386 || BR2_x86_64) \ && BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS \ - && BR2_PACKAGE_BOOST_ARCH_SUPPORTS \ && BR2_TOOLCHAIN_HAS_SYNC_8 -comment "kodi needs a uClibc or (e)glibc toolchain w/ C++, threads, wchar, dynamic library, gcc >= 4.7, host gcc >= 4.6" +comment "kodi needs python w/ .py modules, a uClibc or glibc toolchain w/ C++, threads, wchar, dynamic library, gcc >= 4.7, host gcc >= 4.6" depends on BR2_PACKAGE_KODI_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !BR2_HOST_GCC_AT_LEAST_4_6 \ || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \ - || BR2_TOOLCHAIN_USES_MUSL - depends on BR2_USE_MMU + || BR2_TOOLCHAIN_USES_MUSL \ + || !BR2_PACKAGE_PYTHON \ + || BR2_PACKAGE_PYTHON_PYC_ONLY config BR2_PACKAGE_KODI_EGL_GLES bool @@ -43,10 +44,11 @@ menuconfig BR2_PACKAGE_KODI depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_PACKAGE_KODI_EGL_GLES || BR2_PACKAGE_KODI_GL - depends on BR2_USE_MMU # python depends on BR2_USE_WCHAR - depends on !BR2_STATIC_LIBS # python + depends on !BR2_STATIC_LIBS # libsquish, and others depends on BR2_PACKAGE_KODI_ARCH_SUPPORTS + depends on BR2_PACKAGE_PYTHON + depends on !BR2_PACKAGE_PYTHON_PYC_ONLY select BR2_NEEDS_HOST_JAVA select BR2_PACKAGE_BOOST select BR2_PACKAGE_BOOST_THREAD @@ -84,7 +86,6 @@ menuconfig BR2_PACKAGE_KODI select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_PCRE select BR2_PACKAGE_PCRE_UCP - select BR2_PACKAGE_PYTHON select BR2_PACKAGE_PYTHON_BSDDB select BR2_PACKAGE_PYTHON_BZIP2 select BR2_PACKAGE_PYTHON_CURSES @@ -159,6 +160,7 @@ config BR2_PACKAGE_KODI_LIRC config BR2_PACKAGE_KODI_LIBMICROHTTPD bool "web server" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt, libmicrohttpd select BR2_PACKAGE_LIBMICROHTTPD help Enable webserver feature @@ -174,6 +176,18 @@ config BR2_PACKAGE_KODI_LIBNFS comment "nfs support needs a toolchain w/ threads support" depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) +config BR2_PACKAGE_KODI_MYSQL + bool "mysql" + select BR2_PACKAGE_MYSQL + help + Enable MySQL support + +config BR2_PACKAGE_KODI_NONFREE + bool "nonfree components" + help + Enable components with non-free licenses. This option + currently only controls support for RAR archives. + config BR2_PACKAGE_KODI_RTMPDUMP bool "rtmp" select BR2_PACKAGE_RTMPDUMP @@ -188,16 +202,9 @@ config BR2_PACKAGE_KODI_LIBSHAIRPLAY Enable Shairport support. Select this if you want to stream content from an Apple device. -comment "samba support needs a (e)glibc or uClibc toolchain w/ RPC" - depends on (!BR2_TOOLCHAIN_USES_GLIBC && \ - !BR2_TOOLCHAIN_USES_UCLIBC) || !BR2_TOOLCHAIN_HAS_NATIVE_RPC - config BR2_PACKAGE_KODI_LIBSMBCLIENT bool "samba" - depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - select BR2_PACKAGE_SAMBA4 + depends on BR2_PACKAGE_SAMBA4 help Enable Samba support @@ -216,6 +223,9 @@ config BR2_PACKAGE_KODI_LIBTHEORA config BR2_PACKAGE_KODI_LIBUSB bool "usb" + # https://github.com/xbmc/xbmc/blob/Jarvis/configure.ac#L1554 + # "if libudev is available, we don't need libusb" + depends on !BR2_PACKAGE_HAS_UDEV select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT help @@ -227,6 +237,21 @@ config BR2_PACKAGE_KODI_LIBVA help Enable libva support. +config BR2_PACKAGE_KODI_LIBVDPAU + bool "vdpau" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBVDPAU + help + Enable libvdpau support. + +comment "libvdpau support needs X.org" + depends on !BR2_PACKAGE_XORG7 + +config BR2_PACKAGE_KODI_UPNP + bool "upnp" + help + Enable UPnP support + config BR2_PACKAGE_KODI_OPTICALDRIVE bool @@ -254,7 +279,6 @@ menu "Audio encoder addons" endmenu menu "PVR addons" - source "package/kodi-addon-xvdr/Config.in" source "package/kodi-pvr-argustv/Config.in" source "package/kodi-pvr-dvblink/Config.in" source "package/kodi-pvr-dvbviewer/Config.in" diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk index e163c24018..de4d308f6b 100644 --- a/package/kodi/kodi.mk +++ b/package/kodi/kodi.mk @@ -10,13 +10,54 @@ KODI_LICENSE = GPLv2 KODI_LICENSE_FILES = LICENSE.GPL # needed for binary addons KODI_INSTALL_STAGING = YES -KODI_DEPENDENCIES = host-gawk host-gettext host-gperf host-zip host-giflib \ - host-libjpeg host-lzo host-nasm host-libpng host-swig -KODI_DEPENDENCIES += boost bzip2 expat ffmpeg fontconfig freetype giflib jasper jpeg \ - libass libcdio libcrossguid libcurl libdcadec libfribidi libgcrypt libmpeg2 \ - libogg libplist libpng libsamplerate libsquish libvorbis libxml2 \ - libxslt lzo ncurses openssl pcre python readline sqlite taglib tiff \ - tinyxml yajl zlib +KODI_DEPENDENCIES = \ + boost \ + bzip2 \ + expat \ + ffmpeg \ + fontconfig \ + freetype \ + giflib \ + host-gawk \ + host-gettext \ + host-giflib \ + host-gperf \ + host-libjpeg \ + host-libpng \ + host-lzo \ + host-nasm \ + host-swig \ + host-zip \ + jasper \ + jpeg \ + libass \ + libcdio \ + libcrossguid \ + libcurl \ + libdcadec \ + libfribidi \ + libgcrypt \ + libmpeg2 \ + libogg \ + libplist \ + libpng \ + libsamplerate \ + libsquish \ + libvorbis \ + libxml2 \ + libxslt \ + lzo \ + ncurses \ + openssl \ + pcre \ + python \ + readline \ + sqlite \ + taglib \ + tiff \ + tinyxml \ + yajl \ + zlib KODI_CONF_ENV = \ PYTHON_VERSION="$(PYTHON_VERSION_MAJOR)" \ @@ -33,11 +74,10 @@ KODI_CONF_OPTS += \ --disable-joystick \ --disable-openmax \ --disable-pulse \ - --disable-vdpau \ --disable-vtbdecoder \ --enable-optimizations -ifeq ($(BR2_PACKAGE_MYSQL),y) +ifeq ($(BR2_PACKAGE_KODI_MYSQL),y) KODI_CONF_OPTS += --enable-mysql KODI_CONF_ENV += ac_cv_path_MYSQL_CONFIG="$(STAGING_DIR)/usr/bin/mysql_config" KODI_DEPENDENCIES += mysql @@ -45,19 +85,45 @@ else KODI_CONF_OPTS += --disable-mysql endif +ifeq ($(BR2_PACKAGE_KODI_NONFREE),y) +KODI_CONF_OPTS += --enable-non-free +KODI_LICENSE := $(KODI_LICENSE), unrar +KODI_LICENSE_FILES += lib/UnrarXLib/license.txt +else +KODI_CONF_OPTS += --disable-non-free +endif + ifeq ($(BR2_PACKAGE_RPI_USERLAND),y) KODI_DEPENDENCIES += rpi-userland KODI_CONF_OPTS += --with-platform=raspberry-pi --enable-player=omxplayer -KODI_CONF_ENV += INCLUDES="-I$(STAGING_DIR)/usr/include/interface/vcos/pthreads \ - -I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux" \ - LIBS="-lvcos -lvchostif" +KODI_INCLUDES += \ + -I$(STAGING_DIR)/usr/include/interface/vcos/pthreads \ + -I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux +KODI_LIBS = -lvcos -lvchostif endif -ifeq ($(BR2_PACKAGE_LIBFSLVPUWRAP),y) -KODI_DEPENDENCIES += libfslvpuwrap +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +KODI_DEPENDENCIES += udev +KODI_CONF_OPTS += --enable-udev +else +KODI_CONF_OPTS += --disable-udev +endif + +ifeq ($(BR2_PACKAGE_IMX_VPUWRAP),y) +KODI_DEPENDENCIES += imx-vpuwrap KODI_CONF_OPTS += --enable-codec=imxvpu endif +ifeq ($(BR2_PACKAGE_LIBAMCODEC),y) +KODI_DEPENDENCIES += libamcodec +KODI_CONF_OPTS += --enable-codec=amcodec +KODI_INCLUDES += -I$(STAGING_DIR)/usr/include/amcodec +endif + +KODI_CONF_ENV += \ + INCLUDES="$(KODI_INCLUDES)" \ + LIBS="$(KODI_LIBS)" + ifeq ($(BR2_PACKAGE_LIBCAP),y) KODI_CONF_OPTS += --enable-libcap KODI_DEPENDENCIES += libcap @@ -187,6 +253,19 @@ else KODI_CONF_OPTS += --disable-vaapi endif +ifeq ($(BR2_PACKAGE_KODI_LIBVDPAU),y) +KODI_DEPENDENCIES += libvdpau +KODI_CONF_OPTS += --enable-vdpau +else +KODI_CONF_OPTS += --disable-vdpau +endif + +ifeq ($(BR2_PACKAGE_KODI_UPNP),y) +KODI_CONF_OPTS += --enable-upnp +else +KODI_CONF_OPTS += --disable-upnp +endif + ifeq ($(BR2_PACKAGE_KODI_OPTICALDRIVE),y) KODI_CONF_OPTS += --enable-optical-drive --enable-dvdcss else diff --git a/package/ktap/ktap.hash b/package/ktap/ktap.hash new file mode 100644 index 0000000000..d58bd85b43 --- /dev/null +++ b/package/ktap/ktap.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 bc8b03a53c430ae4fcf594ffdf31e2b2ed47a8fee25dd8fea60aa34f75441707 ktap-eb66d40310c93dc82bc8eac889744c1ed1f01f7b.tar.gz diff --git a/package/kvm-unit-tests/0001-remove-werror.patch b/package/kvm-unit-tests/0001-remove-werror.patch new file mode 100644 index 0000000000..058a640d76 --- /dev/null +++ b/package/kvm-unit-tests/0001-remove-werror.patch @@ -0,0 +1,17 @@ +Remove -Werror to avoid build failures + +Signed-off-by: Thomas Petazzoni + +Index: b/Makefile +=================================================================== +--- a/Makefile ++++ b/Makefile +@@ -45,7 +45,7 @@ + > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;) + + CFLAGS += -g +-CFLAGS += $(autodepend-flags) -Wall -Werror -Wno-frame-address ++CFLAGS += $(autodepend-flags) -Wall -Wno-frame-address + frame-pointer-flag=-f$(if $(KEEP_FRAME_POINTER),no-,)omit-frame-pointer + fomit_frame_pointer := $(call cc-option, $(frame-pointer-flag), "") + fnostack_protector := $(call cc-option, -fno-stack-protector, "") diff --git a/package/kvm-unit-tests/Config.in b/package/kvm-unit-tests/Config.in new file mode 100644 index 0000000000..72656462e1 --- /dev/null +++ b/package/kvm-unit-tests/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_KVM_UNIT_TESTS + bool "kvm-unit-tests" + select BR2_HOSTARCH_NEEDS_IA32_COMPILER if BR2_x86_64=y + # on i386 and x86-64, __builtin_reachable is used, so we need + # gcc 4.5 at least. on i386, we use the target gcc, while on + # x86-64 we use the host gcc (see .mk file for details) + # On ARM, it uses virtualization extensions + depends on BR2_cortex_a7 || BR2_cortex_a12 || \ + BR2_cortex_a15 || BR2_cortex_a17 || \ + (BR2_i386 && BR2_TOOLCHAIN_GCC_AT_LEAST_4_5) || \ + BR2_powerpc64 || \ + BR2_powerpc64le || \ + (BR2_x86_64 && BR2_HOST_GCC_AT_LEAST_4_5) + help + kvm-unit-tests is a project as old as KVM. As its name + suggests, it's purpose is to provide unit tests for KVM. The + unit tests are tiny guest operating systems that generally + execute only tens of lines of C and assembler test code in + order to obtain its PASS/FAIL result. Unit tests provide KVM + and virt hardware functional testing by targeting the + features through minimal implementations of their use per + the hardware specification. The simplicity of unit tests + make them easy to verify they are correct, easy to maintain, + and easy to use in timing measurements. Unit tests are also + often used for quick and dirty bug reproducers. The + reproducers may then be kept as regression tests. It's + strongly encouraged that patches implementing new KVM + features are submitted with accompanying unit tests. + + http://www.linux-kvm.org/page/KVM-unit-tests diff --git a/package/kvm-unit-tests/kvm-unit-tests.mk b/package/kvm-unit-tests/kvm-unit-tests.mk new file mode 100644 index 0000000000..0ddb017802 --- /dev/null +++ b/package/kvm-unit-tests/kvm-unit-tests.mk @@ -0,0 +1,57 @@ +################################################################################ +# +# kvm-unit-tests +# +################################################################################ + +KVM_UNIT_TESTS_VERSION = 5731572b2ac23eb410732110b93425b5bb7f27dd +KVM_UNIT_TESTS_SITE = $(BR2_KERNEL_MIRROR)/scm/virt/kvm/kvm-unit-tests.git +KVM_UNIT_TESTS_SITE_METHOD = git +KVM_UNIT_TESTS_LICENSE = LGPLv2 +KVM_UNIT_TESTS_LICENSE_FILES = COPYRIGHT + +ifeq ($(BR2_arm),y) +KVM_UNIT_TESTS_ARCH = arm +else ifeq ($(BR2_i386),y) +KVM_UNIT_TESTS_ARCH = i386 +else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) +KVM_UNIT_TESTS_ARCH = ppc64 +else ifeq ($(BR2_x86_64),y) +KVM_UNIT_TESTS_ARCH = x86_64 +endif + +ifeq ($(BR2_ENDIAN),"LITTLE") +KVM_UNIT_TESTS_ENDIAN = little +else +KVM_UNIT_TESTS_ENDIAN = big +endif + +KVM_UNIT_TESTS_CONF_OPTS =\ + --arch="$(KVM_UNIT_TESTS_ARCH)" \ + --processor="$(call qstrip,$(BR2_GCC_TARGET_CPU))" \ + --endian="$(KVM_UNIT_TESTS_ENDIAN)" + +# For all architectures but x86-64, we use the target +# compiler. However, for x86-64, we use the host compiler, as +# kvm-unit-tests builds 32 bit code, which Buildroot toolchains for +# x86-64 cannot do. +ifneq ($(BR2_x86_64),y) +KVM_UNIT_TESTS_CONF_OPTS += --cross-prefix="$(TARGET_CROSS)" +endif + +define KVM_UNIT_TESTS_CONFIGURE_CMDS + cd $(@D) && ./configure $(KVM_UNIT_TESTS_CONF_OPTS) +endef + +define KVM_UNIT_TESTS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) standalone +endef + +define KVM_UNIT_TESTS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR)/usr/share/kvm-unit-tests/ \ + install +endef + +# Does use configure script but not an autotools one +$(eval $(generic-package)) diff --git a/package/kvmtool/Config.in b/package/kvmtool/Config.in index f047c755cc..d2290c5d8c 100644 --- a/package/kvmtool/Config.in +++ b/package/kvmtool/Config.in @@ -19,12 +19,12 @@ config BR2_PACKAGE_KVMTOOL https://git.kernel.org/cgit/linux/kernel/git/will/kvmtool.git/tree/README -comment "kvmtool needs a (e)glibc or musl toolchain" +comment "kvmtool needs a glibc or musl toolchain" depends on BR2_USE_MMU depends on BR2_i386 || BR2_mips || BR2_x86_64 depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) -comment "kvmtool needs a (e)glibc or musl toolchain w/ dynamic library" +comment "kvmtool needs a glibc or musl toolchain w/ dynamic library" depends on BR2_USE_MMU depends on BR2_aarch64 || BR2_arm || BR2_armeb depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || \ diff --git a/package/kvmtool/kvmtool.mk b/package/kvmtool/kvmtool.mk index 7f682db625..12454e1bfd 100644 --- a/package/kvmtool/kvmtool.mk +++ b/package/kvmtool/kvmtool.mk @@ -4,7 +4,7 @@ # ################################################################################ -KVMTOOL_VERSION = 372f583d359a5bdcbbe7268809c8d1dc179c64d2 +KVMTOOL_VERSION = bed2bd9e1fbef5819090feeada7b86eed97ca5e2 KVMTOOL_SITE = $(BR2_KERNEL_MIRROR)/scm/linux/kernel/git/will/kvmtool.git KVMTOOL_SITE_METHOD = git KVMTOOL_DEPENDENCIES = \ diff --git a/package/lapack/Config.in b/package/lapack/Config.in new file mode 100644 index 0000000000..b5eca492e8 --- /dev/null +++ b/package/lapack/Config.in @@ -0,0 +1,21 @@ +comment "lapack/blas needs a toolchain w/ fortran" + depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) + depends on !BR2_TOOLCHAIN_HAS_FORTRAN + +config BR2_PACKAGE_LAPACK + bool "lapack/blas" + depends on BR2_TOOLCHAIN_HAS_FORTRAN + # _fpu_control is used on PowerPC, but not available with uClibc + depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) + help + LAPACK and BLAS FORTRAN implementation. This package + installs two libraries: libblas and liblapack. + + http://www.netlib.org/lapack/ + +config BR2_PACKAGE_LAPACK_COMPLEX + bool "Complex/Complex16 support" + depends on BR2_PACKAGE_LAPACK + default y + help + Builds support for COMPLEX and COMPLEX16 data types. diff --git a/package/lapack/lapack.hash b/package/lapack/lapack.hash new file mode 100644 index 0000000000..e57cebcba0 --- /dev/null +++ b/package/lapack/lapack.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 888a50d787a9d828074db581c80b2d22bdb91435a673b1bf6cd6eb51aa50d1de lapack-3.6.1.tgz diff --git a/package/lapack/lapack.mk b/package/lapack/lapack.mk new file mode 100644 index 0000000000..56008e1410 --- /dev/null +++ b/package/lapack/lapack.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# lapack +# +################################################################################ + +LAPACK_VERSION = 3.6.1 +LAPACK_SOURCE = lapack-$(LAPACK_VERSION).tgz +LAPACK_LICENSE = BSD-3c +LAPACK_LICENSE_FILES = LICENSE +LAPACK_SITE = http://www.netlib.org/lapack +LAPACK_INSTALL_STAGING = YES +LAPACK_CONF_OPTS = -DLAPACKE=ON -DCBLAS=ON + +ifeq ($(BR2_PACKAGE_LAPACK_COMPLEX),y) +LAPACK_CONF_OPTS += -DBUILD_COMPLEX=ON -DBUILD_COMPLEX16=ON +else +LAPACK_CONF_OPTS += -DBUILD_COMPLEX=OFF -DBUILD_COMPLEX16=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/latencytop/latencytop.hash b/package/latencytop/latencytop.hash new file mode 100644 index 0000000000..4be004cafc --- /dev/null +++ b/package/latencytop/latencytop.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9e7f72fbea7bd918e71212a1eabaad8488d2c602205d2e3c95d62cd57e9203ef latencytop-0.5.tar.gz diff --git a/package/latencytop/latencytop.mk b/package/latencytop/latencytop.mk index 935b2a3c04..644a84f162 100644 --- a/package/latencytop/latencytop.mk +++ b/package/latencytop/latencytop.mk @@ -17,7 +17,7 @@ define LATENCYTOP_BUILD_CMDS endef define LATENCYTOP_INSTALL_TARGET_CMDS - $(MAKE) install -C $(@D) DESTDIR=$(TARGET_DIR) HAS_GTK_GUI= + $(TARGET_CONFIGURE_OPTS) $(MAKE) install -C $(@D) DESTDIR=$(TARGET_DIR) HAS_GTK_GUI= endef $(eval $(generic-package)) diff --git a/package/lcdapi/0001-Remove-installation-of-docs-examples.patch b/package/lcdapi/0001-Remove-installation-of-docs-examples.patch deleted file mode 100644 index dcadcf4a1b..0000000000 --- a/package/lcdapi/0001-Remove-installation-of-docs-examples.patch +++ /dev/null @@ -1,39 +0,0 @@ -From ede0fa7d410be407164b68570a1540378bf0bd09 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sat, 19 Jul 2014 10:40:59 +0200 -Subject: [PATCH] Remove installation of docs/examples - -They get installed in the wrong directory, i.e if DESTDIR is -/path/to/output/target, they will be installed in -/path/to/output/target./examples and /path/to/output/target./docs. - -Since we don't need docs and examples in Buildroot anyway, simply get -rid of them. - -Signed-off-by: Thomas Petazzoni ---- - Makefile.am | 11 ----------- - 1 file changed, 11 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index c56860a..6b1267b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -69,14 +69,3 @@ liblcdapi_la_CXXFLAGS = \ - -g0 -DNODEBUG -Os - - ACLOCAL_AMFLAGS = -I m4 -- --docsdir = $(top_srcdir)/docs --exampledir = $(top_srcdir)/example --dist_docs_DATA = \ -- docs/Makefile.am \ -- docs/Makefile.in \ -- docs/Doxyfile.in --dist_example_DATA = \ -- example/client.cpp \ -- example/Makefile.am \ -- example/Makefile.in --- -2.0.0 - diff --git a/package/lcdapi/lcdapi.hash b/package/lcdapi/lcdapi.hash new file mode 100644 index 0000000000..98c42f8f54 --- /dev/null +++ b/package/lcdapi/lcdapi.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 fa26b53fd543ebab825d55cafb4c88af6a71ac3dcf86d4e8bcd3592be4212b55 lcdapi-v0.10.tar.gz diff --git a/package/lcdapi/lcdapi.mk b/package/lcdapi/lcdapi.mk index bcf5c4770a..5d8c2ee571 100644 --- a/package/lcdapi/lcdapi.mk +++ b/package/lcdapi/lcdapi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LCDAPI_VERSION = dbbdca06f271b8cf81b4817a9da3d558cfe59905 +LCDAPI_VERSION = v0.10 LCDAPI_SITE = $(call github,spdawson,lcdapi,$(LCDAPI_VERSION)) LCDAPI_LICENSE = LGPLv2.1+ LCDAPI_LICENSE_FILES = COPYING diff --git a/package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch b/package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch new file mode 100644 index 0000000000..f8c0d00d30 --- /dev/null +++ b/package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch @@ -0,0 +1,26 @@ +From 0b55fd4e0935a0231ca258fde631a95215df2f72 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Fri, 11 Nov 2016 23:29:56 +0100 +Subject: [PATCH] Fix lcms2.pc.in thread library dependency. + +Needed (sometimes) for static linking. + +Signed-off-by: Peter Seiderer +--- + lcms2.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lcms2.pc.in b/lcms2.pc.in +index b715f59..5b4213c 100644 +--- a/lcms2.pc.in ++++ b/lcms2.pc.in +@@ -7,5 +7,5 @@ Name: @PACKAGE@ + Description: LCMS Color Management Library + Version: @VERSION@ + Libs: -L${libdir} -llcms2 +-Libs.private: @LIB_MATH@ ++Libs.private: @LIB_MATH@ @LIB_THREAD@ + Cflags: -I${includedir} +-- +2.8.1 + diff --git a/package/lcms2/0002-Added-an-extra-check-to-MLU-bounds.patch b/package/lcms2/0002-Added-an-extra-check-to-MLU-bounds.patch new file mode 100644 index 0000000000..9a5d9dd4e9 --- /dev/null +++ b/package/lcms2/0002-Added-an-extra-check-to-MLU-bounds.patch @@ -0,0 +1,27 @@ +From 5ca71a7bc18b6897ab21d815d15e218e204581e2 Mon Sep 17 00:00:00 2001 +From: Marti +Date: Mon, 15 Aug 2016 23:31:39 +0200 +Subject: [PATCH] Added an extra check to MLU bounds + +Thanks to Ibrahim el-sayed for spotting the bug + +Signed-off-by: Peter Korsgaard +--- + src/cmstypes.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/cmstypes.c b/src/cmstypes.c +index cb61860..c7328b9 100644 +--- a/src/cmstypes.c ++++ b/src/cmstypes.c +@@ -1460,6 +1460,7 @@ void *Type_MLU_Read(struct _cms_typehandler_struct* self, cmsIOHANDLER* io, cmsU + + // Check for overflow + if (Offset < (SizeOfHeader + 8)) goto Error; ++ if ((Offset + Len) > SizeOfTag + 8) goto Error; + + // True begin of the string + BeginOfThisString = Offset - SizeOfHeader - 8; +-- +2.11.0 + diff --git a/package/lcms2/lcms2.hash b/package/lcms2/lcms2.hash index 908822f8c1..1cf1017c54 100644 --- a/package/lcms2/lcms2.hash +++ b/package/lcms2/lcms2.hash @@ -1,5 +1,4 @@ -# From http://sourceforge.net/projects/lcms/files/lcms/2.7/ -sha1 625f0d74bad4a0f6f917120fd992437d26f754d2 lcms2-2.7.tar.gz -md5 06c1626f625424a811fb4b5eb070839d lcms2-2.7.tar.gz +# From https://sourceforge.net/projects/lcms/files/lcms/2.8 +sha1 e9535ec4a572b8fc7a1c405c35e6f4dc97714197 lcms2-2.8.tar.gz # Locally computed: -sha256 4524234ae7de185e6b6da5d31d6875085b2198bc63b1211f7dde6e2d197d6a53 lcms2-2.7.tar.gz +sha256 66d02b229d2ea9474e62c2b6cd6720fde946155cd1d0d2bffdab829790a0fb22 lcms2-2.8.tar.gz diff --git a/package/lcms2/lcms2.mk b/package/lcms2/lcms2.mk index 265af29098..9a4cf5ed24 100644 --- a/package/lcms2/lcms2.mk +++ b/package/lcms2/lcms2.mk @@ -4,14 +4,12 @@ # ################################################################################ -LCMS2_VERSION = 2.7 -LCMS2_SITE = http://downloads.sourceforge.net/lcms/lcms +LCMS2_VERSION = 2.8 +LCMS2_SITE = http://downloads.sourceforge.net/project/lcms/lcms/$(LCMS2_VERSION) LCMS2_LICENSE = MIT LCMS2_LICENSE_FILES = COPYING LCMS2_INSTALL_STAGING = YES -LCMS2_CONF_OPTS = \ - ifeq ($(BR2_PACKAGE_JPEG),y) LCMS2_CONF_OPTS += --with-jpeg LCMS2_DEPENDENCIES += jpeg diff --git a/package/leafnode2/leafnode2.mk b/package/leafnode2/leafnode2.mk index 5b9b85482b..0c20fd03cf 100644 --- a/package/leafnode2/leafnode2.mk +++ b/package/leafnode2/leafnode2.mk @@ -6,7 +6,7 @@ LEAFNODE2_VERSION = 2.0.0.alpha20140727b LEAFNODE2_SOURCE = leafnode-$(LEAFNODE2_VERSION).tar.bz2 -LEAFNODE2_SITE = http://www.dt.e-technik.tu-dortmund.de/~ma/leafnode/beta +LEAFNODE2_SITE = http://krusty.dt.e-technik.tu-dortmund.de/~ma/leafnode/beta LEAFNODE2_LICENSE = LGPLv2.1 LEAFNODE2_LICENSE_FILES = COPYING COPYING.LGPL LEAFNODE2_DEPENDENCIES = host-pcre pcre diff --git a/package/less/Config.in b/package/less/Config.in index b7aa152aea..caf688aea0 100644 --- a/package/less/Config.in +++ b/package/less/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LESS bool "less" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_NCURSES help Excellent text file viewer. diff --git a/package/leveldb/0002-Add-install-recipe.patch b/package/leveldb/0002-Add-install-recipe.patch index 38c2ca8d3d..f65916f1eb 100644 --- a/package/leveldb/0002-Add-install-recipe.patch +++ b/package/leveldb/0002-Add-install-recipe.patch @@ -1,40 +1,40 @@ -From 818d59f093100d5f39db34d5686a9d983172d307 Mon Sep 17 00:00:00 2001 +From bf646b73391d3d2d0b9780a399dd24880c66b9ab Mon Sep 17 00:00:00 2001 From: Steve James Date: Sun, 5 Apr 2015 16:30:46 +0200 Subject: [PATCH 2/2] Add install recipe -Upstream-Status: Submitted [https://github.com/google/leveldb/pull/276] +Upstream-Status: Rejected [https://github.com/google/leveldb/pull/276] Signed-off-by: Steve James Signed-off-by: Thomas Petazzoni +[baruch: update for v1.19] +Signed-off-by: Baruch Siach --- - Makefile | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) + Makefile | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) diff --git a/Makefile b/Makefile -index 2bd2cad..530f2c3 100644 +index 07a5a1ead6fd..c87023db527a 100644 --- a/Makefile +++ b/Makefile -@@ -225,3 +225,19 @@ else - .c.o: - $(CC) $(CFLAGS) -c $< -o $@ - endif +@@ -412,3 +412,17 @@ $(SHARED_OUTDIR)/%.o: %.cc + + $(SHARED_OUTDIR)/%.o: %.c + $(CC) $(CFLAGS) $(PLATFORM_SHARED_CFLAGS) -c $< -o $@ + +INSTALL_ROOT = / +INSTALL_PREFIX= usr/local + -+install: $(SHARED) $(LIBRARY) ++install: all + install -d -m 0755 $(INSTALL_ROOT)$(INSTALL_PREFIX)/include/leveldb + install -D -m 0644 include/leveldb/*.h $(INSTALL_ROOT)$(INSTALL_PREFIX)/include/leveldb + install -d -m 0755 $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib -+ ifneq (,$(LIBRARY)) -+ install -m 0644 $(LIBRARY) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib -+ endif -+ ifneq (,$(SHARED)) -+ install -m 0755 $(SHARED3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib -+ ln -sf $(SHARED3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib/$(SHARED1) -+ ln -sf $(SHARED3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib/$(SHARED2) -+ endif ++ install -m 0644 $(STATIC_OUTDIR)/libleveldb.a $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib ++ifneq (,$(SHARED_LIBS)) ++ install -m 0755 $(SHARED_OUTDIR)/$(SHARED_LIB3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib ++ ln -sf $(SHARED_LIB3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib/$(SHARED_LIB1) ++ ln -sf $(SHARED_LIB3) $(INSTALL_ROOT)$(INSTALL_PREFIX)/lib/$(SHARED_LIB2) ++endif -- 2.1.0 diff --git a/package/leveldb/leveldb.hash b/package/leveldb/leveldb.hash new file mode 100644 index 0000000000..4af30fbe6f --- /dev/null +++ b/package/leveldb/leveldb.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 7d7a14ae825e66aabeb156c1c3fae9f9a76d640ef6b40ede74cc73da937e5202 leveldb-v1.19.tar.gz diff --git a/package/leveldb/leveldb.mk b/package/leveldb/leveldb.mk index e2c267b82b..ca2ed703a0 100644 --- a/package/leveldb/leveldb.mk +++ b/package/leveldb/leveldb.mk @@ -4,24 +4,16 @@ # ################################################################################ -LEVELDB_VERSION = v1.18 +LEVELDB_VERSION = v1.19 LEVELDB_SITE = $(call github,google,leveldb,$(LEVELDB_VERSION)) LEVELDB_LICENSE = BSD-3c LEVELDB_LICENSE_FILES = LICENSE LEVELDB_INSTALL_STAGING = YES LEVELDB_DEPENDENCIES = snappy -# We will pass optimisation level via CFLAGS so remove leveldb default -LEVELDB_MAKE_ARGS += OPTIM= - -# Disable the static library for shared only build -ifeq ($(BR2_SHARED_LIBS),y) -LEVELDB_MAKE_ARGS += LIBRARY= -endif - # Disable the shared library for static only build ifeq ($(BR2_STATIC_LIBS),y) -LEVELDB_MAKE_ARGS += SHARED= +LEVELDB_MAKE_ARGS += SHARED_LIBS= SHARED_PROGRAMS= endif define LEVELDB_BUILD_CMDS diff --git a/package/lft/Config.in b/package/lft/Config.in new file mode 100644 index 0000000000..9ed7b8bd69 --- /dev/null +++ b/package/lft/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_LFT + bool "lft" + select BR2_PACKAGE_LIBPCAP + help + LFT, short for Layer Four Traceroute, is a sort of + 'traceroute' that often works much faster (than the + commonly-used Van Jacobson method) and goes through many + configurations of packet-filters (firewalls). + + http://pwhois.org/lft/ diff --git a/package/lft/lft.hash b/package/lft/lft.hash new file mode 100644 index 0000000000..b045e7c96a --- /dev/null +++ b/package/lft/lft.hash @@ -0,0 +1,2 @@ +# Locally calculated, matches download from fossies.org and pwhois.org +sha256 d182d6774e64dcdeb19ed1a598fa588e57ddb6cbb6847d9277c405d3a4597d89 lft-3.77.tar.gz diff --git a/package/lft/lft.mk b/package/lft/lft.mk new file mode 100644 index 0000000000..72f43fa209 --- /dev/null +++ b/package/lft/lft.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# lft +# +################################################################################ + +LFT_VERSION = 3.77 +LFT_SITE = http://pwhois.org/get +LFT_DEPENDENCIES = libpcap +LFT_LICENSE = VOSTROM Public License for Open Source +LFT_LICENSE_FILES = COPYING +LFT_CONF_OPTS = --with-pcap=$(STAGING_DIR)/usr +LFT_MAKE_ENV = STRIP=true + +ifeq ($(BR2_STATIC_LIBS),y) +LFT_CONF_OPTS += LIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`" +endif + +$(eval $(autotools-package)) diff --git a/package/lftp/0001-fix-static-link-with-readline.patch b/package/lftp/0001-fix-static-link-with-readline.patch new file mode 100644 index 0000000000..339239668e --- /dev/null +++ b/package/lftp/0001-fix-static-link-with-readline.patch @@ -0,0 +1,40 @@ +fix static link with readline + +When readline is static library, we need to link against ncurses +because readline needs ncurses. It is because, dependent library's +symbols are not resolved when static library is built. Those symbols +are resolved program tries to link with static library. + +We can't pass linker flags for ncurses by setting LIBS environment +variable via _CONF_ENV because it looks like build system is not +taking that into account and even though it would have been, order of +linking is important. + +We can't also pass linker flags for ncurses via --with-readline-libs +conf options because it causes lftp_LIB_READLINE macro to take readline +headers from host machine if available. To use --with-readline-libs +we need to set --with-readline=yes and --with-readline-inc to include +dir. But when --with-readline=yes, readline_prefix is computed based +on if headers can be found in /usr/local or /usr. If readline is +installed on host machine, then configure fails since we are using +headers for host machine. If headers are not found in /usr/local or /usr +then only path specified --with-readline-inc is taken into account. +So specifying linker flags for ncurses via --with-readline-libs will +not work in all cases. + +So it looks like, updating linker flags directly is only option to fix +static link issue against readline. + +Signed-off-by: Rahul Bedarkar + +--- lftp-4.7.3/m4/lftp_lib_readline.m4.old 2016-08-08 19:49:12.217596470 +0530 ++++ lftp-4.7.3/m4/lftp_lib_readline.m4 2016-08-08 19:49:46.265596398 +0530 +@@ -108,7 +108,7 @@ AC_DEFUN([lftp_LIB_READLINE], + readline_include_dir="$readline_include_dir/readline" + fi + readline_ld_flags="-L$readline_prefix/lib" +- readline_lib_flags="-lreadline" ++ readline_lib_flags="-lreadline -lncurses" + run_readline_test="yes" + elif test "$readline_requested" = "yes"; then + if test -n "$readline_include_dir" -a -n "$readline_lib_flags"; then diff --git a/package/lftp/0002-fix-gcc-6-conflicts-signbit.patch b/package/lftp/0002-fix-gcc-6-conflicts-signbit.patch new file mode 100644 index 0000000000..e906c7ac80 --- /dev/null +++ b/package/lftp/0002-fix-gcc-6-conflicts-signbit.patch @@ -0,0 +1,57 @@ +Use instead of to fix gcc 6.x build + +This patch fixes the following build issue: + +../lib/math.h:2577:1: error: ‘int signbit(float)’ conflicts with a previous declaration + +that occurs with gcc 6.x. + +Patch taken from +https://raw.githubusercontent.com/openembedded/meta-openembedded/master/meta-networking/recipes-connectivity/lftp/files/fix-gcc-6-conflicts-signbit.patch + +Signed-off-by: Thomas Petazzoni + +--- lftp-4.6.3a/src/NetAccess.cc.orig 2016-06-18 10:25:51.063358981 -0400 ++++ lftp-4.6.3a/src/NetAccess.cc 2016-06-18 10:26:04.143359209 -0400 +@@ -21,7 +21,7 @@ + + #include + #include +-#include ++#include + #include + + #include "NetAccess.h" +--- lftp-4.6.3a/src/Speedometer.cc.orig 2016-06-18 10:24:58.895358073 -0400 ++++ lftp-4.6.3a/src/Speedometer.cc 2016-06-18 10:25:10.879358281 -0400 +@@ -18,7 +18,7 @@ + */ + + #include +-#include ++#include + #include + #include "Speedometer.h" + #include "misc.h" +--- lftp-4.6.3a/src/FileCopy.cc.orig 2016-06-18 10:24:15.939357325 -0400 ++++ lftp-4.6.3a/src/FileCopy.cc 2016-06-18 10:24:24.583357475 -0400 +@@ -36,7 +36,7 @@ + #include + #include + #include +-#include ++#include + #include + #include "FileCopy.h" + #include "url.h" +--- lftp-4.6.3a/src/ResMgr.cc.orig 2016-06-18 10:23:31.387356549 -0400 ++++ lftp-4.6.3a/src/ResMgr.cc 2016-06-18 10:23:41.771356729 -0400 +@@ -23,7 +23,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include diff --git a/package/lftp/lftp.hash b/package/lftp/lftp.hash index 4c5d799591..0e0f927a56 100644 --- a/package/lftp/lftp.hash +++ b/package/lftp/lftp.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 1e7cb674c83ace48172263f86847ed04bb6ab2f24116b11a8505f70a15e8805c lftp-4.6.4.tar.xz +# Locally calculated after checking gpg signature +sha256 bf67c4d128b6f769a4082947376a9679c5ee3463a24ab761a0757f75d70bd92c lftp-4.7.4.tar.xz diff --git a/package/lftp/lftp.mk b/package/lftp/lftp.mk index 5051f707a9..a7e1f92619 100644 --- a/package/lftp/lftp.mk +++ b/package/lftp/lftp.mk @@ -4,15 +4,21 @@ # ################################################################################ -LFTP_VERSION = 4.6.4 +LFTP_VERSION = 4.7.4 LFTP_SOURCE = lftp-$(LFTP_VERSION).tar.xz LFTP_SITE = http://lftp.yar.ru/ftp LFTP_LICENSE = GPLv3+ LFTP_LICENSE_FILES = COPYING -# Needed so that our libtool patch applies properly +# Needed so that our libtool patch applies properly, and for patch +# 0001-fix-static-link-with-readline.patch. LFTP_AUTORECONF = YES LFTP_DEPENDENCIES = readline zlib host-pkgconf +# Help lftp finding readline and zlib +LFTP_CONF_OPTS = \ + --with-readline=$(STAGING_DIR)/usr \ + --with-zlib=$(STAGING_DIR)/usr + ifneq ($(BR2_STATIC_LIBS),y) LFTP_CONF_OPTS += --with-modules endif diff --git a/package/libaacs/Config.in b/package/libaacs/Config.in new file mode 100644 index 0000000000..d59b6da64b --- /dev/null +++ b/package/libaacs/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_LIBAACS + bool "libaacs" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LIBGCRYPT + help + libaacs is a research project to implement the Advanced Access + Content System specification. + NB: this project doesn't offer any key or certificate that + could be used to decode encrypted copyrighted material. + + http://www.videolan.org/developers/libaacs.html + +comment "libaacs needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libaacs/libaacs.hash b/package/libaacs/libaacs.hash new file mode 100644 index 0000000000..7160c6a907 --- /dev/null +++ b/package/libaacs/libaacs.hash @@ -0,0 +1,2 @@ +# From http://download.videolan.org/pub/videolan/libaacs/0.8.1/libaacs-0.8.1.tar.bz2.sha512 +sha512 dd677627f073460b719b9f836b026acc3e23b166c7b16bd205cf2ca97c376095980532fb15087c0d77b30c712cd5a5dd90b2cc2ae3128da717621ebd825afcc4 libaacs-0.8.1.tar.bz2 diff --git a/package/libaacs/libaacs.mk b/package/libaacs/libaacs.mk new file mode 100644 index 0000000000..df611543ec --- /dev/null +++ b/package/libaacs/libaacs.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# libaacs +# +################################################################################ + +LIBAACS_VERSION = 0.8.1 +LIBAACS_SITE = http://download.videolan.org/pub/videolan/libaacs/$(LIBAACS_VERSION) +LIBAACS_SOURCE = libaacs-$(LIBAACS_VERSION).tar.bz2 +LIBAACS_LICENSE = LGPLv2.1+ +LIBAACS_LICENSE_FILES = COPYING +LIBAACS_INSTALL_STAGING = YES +LIBAACS_DEPENDENCIES = host-bison host-flex libgcrypt +LIBAACS_CONF_OPTS = \ + --disable-werror \ + --disable-extra-warnings \ + --disable-optimizations \ + --disable-examples \ + --disable-debug \ + --with-gnu-ld \ + --with-libgcrypt-prefix=$(STAGING_DIR)/usr \ + --with-gpg-error-prefix=$(STAGING_DIR)/usr + +$(eval $(autotools-package)) diff --git a/package/libaio/0002-src-Makefile-add-ENABLE_SHARED-boolean-to-allow-stat.patch b/package/libaio/0002-src-Makefile-add-ENABLE_SHARED-boolean-to-allow-stat.patch new file mode 100644 index 0000000000..50703c3f53 --- /dev/null +++ b/package/libaio/0002-src-Makefile-add-ENABLE_SHARED-boolean-to-allow-stat.patch @@ -0,0 +1,56 @@ +From 14dee5707716629b1bc8d06b93cdfe9ea1a3b813 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 29 Aug 2016 22:14:26 +0200 +Subject: [PATCH] src/Makefile: add ENABLE_SHARED boolean to allow static-only + build + +Currently, the libaio builds sytem builds a shared library +unconditionally. In some environments, this is not possible or +desirable. This commit adds a new Makefile variable, ENABLE_SHARED, +which defaults to "1" (i.e shared library enabled) and that allows to +override this behavior, and therefore to disable the build and +installation of the shared library. + +Signed-off-by: Thomas Petazzoni +--- + src/Makefile | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index eadb336..cfab240 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -8,12 +8,17 @@ SO_CFLAGS=-shared $(CFLAGS) + L_CFLAGS=$(CFLAGS) + LINK_FLAGS= + LINK_FLAGS+=$(LDFLAGS) ++ENABLE_SHARED ?= 1 + + soname=libaio.so.1 + minor=0 + micro=1 + libname=$(soname).$(minor).$(micro) +-all_targets += libaio.a $(libname) ++all_targets += libaio.a ++ ++ifeq ($(ENABLE_SHARED),1) ++all_targets += $(libname) ++endif + + all: $(all_targets) + +@@ -55,9 +60,11 @@ $(libname): $(libaio_sobjs) libaio.map + install: $(all_targets) + install -D -m 644 libaio.h $(includedir)/libaio.h + install -D -m 644 libaio.a $(libdir)/libaio.a ++ifeq ($(ENABLE_SHARED),1) + install -D -m 755 $(libname) $(libdir)/$(libname) + ln -sf $(libname) $(libdir)/$(soname) + ln -sf $(libname) $(libdir)/libaio.so ++endif + + $(libaio_objs): libaio.h + +-- +2.7.4 + diff --git a/package/libaio/libaio.mk b/package/libaio/libaio.mk index 9b28f0562a..5ebe1b7eea 100644 --- a/package/libaio/libaio.mk +++ b/package/libaio/libaio.mk @@ -11,16 +11,28 @@ LIBAIO_INSTALL_STAGING = YES LIBAIO_LICENSE = LGPLv2.1+ LIBAIO_LICENSE_FILES = COPYING +LIBAIO_CONFIGURE_OPTS = $(TARGET_CONFIGURE_OPTS) + +ifeq ($(BR2_STATIC_LIBS),y) +LIBAIO_CONFIGURE_OPTS += ENABLE_SHARED=0 +endif + +# On PowerPC, a weird toolchain issue causes -Os builds to produce +# references to hidden symbols, so we're forcing -O2 +ifeq ($(BR2_powerpc),y) +LIBAIO_CONFIGURE_OPTS += CFLAGS="$(subst -Os,-O2,$(TARGET_CFLAGS))" +endif + define LIBAIO_BUILD_CMDS - $(TARGET_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) + $(LIBAIO_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define LIBAIO_INSTALL_STAGING_CMDS - $(TARGET_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(LIBAIO_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define LIBAIO_INSTALL_TARGET_CMDS - $(TARGET_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(LIBAIO_CONFIGURE_OPTS) $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/libamcodec/Config.in b/package/libamcodec/Config.in new file mode 100644 index 0000000000..45846e6d29 --- /dev/null +++ b/package/libamcodec/Config.in @@ -0,0 +1,14 @@ +comment "libamcodec needs a toolchain w/ threads, dynamic library" + depends on BR2_arm || BR2_aarch64 + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + +config BR2_PACKAGE_LIBAMCODEC + bool "libamcodec" + depends on BR2_arm || BR2_aarch64 + depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib + depends on !BR2_STATIC_LIBS # dlfcn.h + select BR2_PACKAGE_ALSA_LIB + help + Interface library for Amlogic media codecs + + https://github.com/mdrjr/c2_aml_libs.git diff --git a/package/libamcodec/libamcodec.hash b/package/libamcodec/libamcodec.hash new file mode 100644 index 0000000000..a76d20a953 --- /dev/null +++ b/package/libamcodec/libamcodec.hash @@ -0,0 +1,2 @@ +# Locally computed hash +sha256 2c9812154b6dfd6a6c9c43aa334d0d03f299379fdf83c20121ad3f3d3f97c666 libamcodec-296f39bc6fc47ddf5d88b9fd3cfb82a5b39048ca.tar.gz diff --git a/package/libamcodec/libamcodec.mk b/package/libamcodec/libamcodec.mk new file mode 100644 index 0000000000..3fab228fd4 --- /dev/null +++ b/package/libamcodec/libamcodec.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# libamcodec +# +################################################################################ + +LIBAMCODEC_VERSION = 296f39bc6fc47ddf5d88b9fd3cfb82a5b39048ca +LIBAMCODEC_SITE = $(call github,mdrjr,c2_aml_libs,$(LIBAMCODEC_VERSION)) +LIBAMCODEC_DEPENDENCIES = alsa-lib +LIBAMCODEC_LICENSE = Unclear +LIBAMCODEC_INSTALL_STAGING = YES + +# This package uses the AML_LIBS_STAGING_DIR variable to construct the +# header and library paths used when compiling +define LIBAMCODEC_BUILD_CMDS + $(foreach d,amavutils amadec amcodec,\ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + -C $(@D)/$(d) AML_LIBS_STAGING_DIR=$(STAGING_DIR) + ) +endef + +define LIBAMCODEC_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0755 $(@D)/amavutils/libamavutils.so $(STAGING_DIR)/usr/lib/libamavutils.so + $(INSTALL) -D -m 0555 $(@D)/amadec/libamadec.so $(STAGING_DIR)/usr/lib/libamadec.so + $(INSTALL) -D -m 0555 $(@D)/amcodec/libamcodec.so $(STAGING_DIR)/usr/lib/libamcodec.so + mkdir -p $(STAGING_DIR)/usr/include/amcodec + cp -rf $(@D)/amcodec/include/* $(STAGING_DIR)/usr/include/amcodec +endef + +define LIBAMCODEC_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/amavutils/libamavutils.so $(TARGET_DIR)/usr/lib/libamavutils.so + $(INSTALL) -D -m 0555 $(@D)/amadec/libamadec.so $(TARGET_DIR)/usr/lib/libamadec.so + $(INSTALL) -D -m 0555 $(@D)/amcodec/libamcodec.so $(TARGET_DIR)/usr/lib/libamcodec.so +endef + +$(eval $(generic-package)) diff --git a/package/libarchive/0001-fix-CVE-2016-1541.patch b/package/libarchive/0001-fix-CVE-2016-1541.patch deleted file mode 100644 index ef2448c04b..0000000000 --- a/package/libarchive/0001-fix-CVE-2016-1541.patch +++ /dev/null @@ -1,71 +0,0 @@ -From d0331e8e5b05b475f20b1f3101fe1ad772d7e7e7 Mon Sep 17 00:00:00 2001 -From: Tim Kientzle -Date: Sun, 24 Apr 2016 17:13:45 -0700 -Subject: [PATCH] Issue #656: Fix CVE-2016-1541, VU#862384 - -When reading OS X metadata entries in Zip archives that were stored -without compression, libarchive would use the uncompressed entry size -to allocate a buffer but would use the compressed entry size to limit -the amount of data copied into that buffer. Since the compressed -and uncompressed sizes are provided by data in the archive itself, -an attacker could manipulate these values to write data beyond -the end of the allocated buffer. - -This fix provides three new checks to guard against such -manipulation and to make libarchive generally more robust when -handling this type of entry: - 1. If an OS X metadata entry is stored without compression, - abort the entire archive if the compressed and uncompressed - data sizes do not match. - 2. When sanity-checking the size of an OS X metadata entry, - abort this entry if either the compressed or uncompressed - size is larger than 4MB. - 3. When copying data into the allocated buffer, check the copy - size against both the compressed entry size and uncompressed - entry size. - -Signed-off-by: Gustavo Zacarias ---- -Status: from upstream https://github.com/libarchive/libarchive/issues/656 - - libarchive/archive_read_support_format_zip.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -diff --git a/libarchive/archive_read_support_format_zip.c b/libarchive/archive_read_support_format_zip.c -index 0f8262c..0a0be96 100644 ---- a/libarchive/archive_read_support_format_zip.c -+++ b/libarchive/archive_read_support_format_zip.c -@@ -2778,6 +2778,11 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry, - - switch(rsrc->compression) { - case 0: /* No compression. */ -+ if (rsrc->uncompressed_size != rsrc->compressed_size) { -+ archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, -+ "Malformed OS X metadata entry: inconsistent size"); -+ return (ARCHIVE_FATAL); -+ } - #ifdef HAVE_ZLIB_H - case 8: /* Deflate compression. */ - #endif -@@ -2798,6 +2803,12 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry, - (intmax_t)rsrc->uncompressed_size); - return (ARCHIVE_WARN); - } -+ if (rsrc->compressed_size > (4 * 1024 * 1024)) { -+ archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, -+ "Mac metadata is too large: %jd > 4M bytes", -+ (intmax_t)rsrc->compressed_size); -+ return (ARCHIVE_WARN); -+ } - - metadata = malloc((size_t)rsrc->uncompressed_size); - if (metadata == NULL) { -@@ -2836,6 +2847,8 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry, - bytes_avail = remaining_bytes; - switch(rsrc->compression) { - case 0: /* No compression. */ -+ if ((size_t)bytes_avail > metadata_bytes) -+ bytes_avail = metadata_bytes; - memcpy(mp, p, bytes_avail); - bytes_used = (size_t)bytes_avail; - metadata_bytes -= bytes_used; diff --git a/package/libarchive/Config.in b/package/libarchive/Config.in index 81b5936ce8..fd429acb60 100644 --- a/package/libarchive/Config.in +++ b/package/libarchive/Config.in @@ -24,4 +24,10 @@ config BR2_PACKAGE_LIBARCHIVE_BSDCPIO The 'bsdcpio' program is a different interface to essentially the same functionality as 'bsdtar'. +config BR2_PACKAGE_LIBARCHIVE_BSDCAT + bool "bsdcat" + help + The 'bsdcat' program is a simple replacement tool + for zcat, bzcat, xzcat, and such. + endif diff --git a/package/libarchive/libarchive.hash b/package/libarchive/libarchive.hash index 5f96211507..2c39bd3e07 100644 --- a/package/libarchive/libarchive.hash +++ b/package/libarchive/libarchive.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 eb87eacd8fe49e8d90c8fdc189813023ccc319c5e752b01fb6ad0cc7b2c53d5e libarchive-3.1.2.tar.gz +sha256 72ee1a4e3fd534525f13a0ba1aa7b05b203d186e0c6072a8a4738649d0b3cfd2 libarchive-3.2.1.tar.gz diff --git a/package/libarchive/libarchive.mk b/package/libarchive/libarchive.mk index 726142b217..bcf92f907a 100644 --- a/package/libarchive/libarchive.mk +++ b/package/libarchive/libarchive.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBARCHIVE_VERSION = 3.1.2 +LIBARCHIVE_VERSION = 3.2.1 LIBARCHIVE_SITE = http://www.libarchive.org/downloads LIBARCHIVE_INSTALL_STAGING = YES LIBARCHIVE_LICENSE = BSD-2c, BSD-3c @@ -30,6 +30,16 @@ else LIBARCHIVE_CONF_OPTS += --disable-bsdcpio endif +ifeq ($(BR2_PACKAGE_LIBARCHIVE_BSDCAT),y) +ifeq ($(BR2_STATIC_LIBS),y) +LIBARCHIVE_CONF_OPTS += --enable-bsdcat=static +else +LIBARCHIVE_CONF_OPTS += --enable-bsdcat=shared +endif +else +LIBARCHIVE_CONF_OPTS += --disable-bsdcat +endif + ifeq ($(BR2_PACKAGE_ACL),y) LIBARCHIVE_DEPENDENCIES += acl else @@ -92,11 +102,30 @@ else LIBARCHIVE_CONF_OPTS += --without-zlib endif -ifeq ($(BR2_PACKAGE_XZ),y) +# libarchive requires LZMA with thread support in the toolchain +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS)$(BR2_PACKAGE_XZ),yy) LIBARCHIVE_DEPENDENCIES += xz LIBARCHIVE_CONF_OPTS += --with-lzma else LIBARCHIVE_CONF_OPTS += --without-lzma endif +# The only user of host-libarchive needs zlib support +HOST_LIBARCHIVE_DEPENDENCIES = host-zlib +HOST_LIBARCHIVE_CONF_OPTS = \ + --disable-bsdtar \ + --disable-bsdcpio \ + --disable-bsdcat \ + --disable-acl \ + --disable-xattr \ + --without-bz2lib \ + --without-expat \ + --without-libiconv-prefix \ + --without-xml2 \ + --without-lzo2 \ + --without-nettle \ + --without-openssl \ + --without-lzma + $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/libasplib/0001-asplib_CPUTimer.h-Fix-time.h-include.patch b/package/libasplib/0001-asplib_CPUTimer.h-Fix-time.h-include.patch new file mode 100644 index 0000000000..c91ddbfab3 --- /dev/null +++ b/package/libasplib/0001-asplib_CPUTimer.h-Fix-time.h-include.patch @@ -0,0 +1,39 @@ +From 7291289ba0c052e45e2a0330642318798d6a4caf Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Fri, 27 Jan 2017 16:02:27 +0100 +Subject: [PATCH 1/1] asplib_CPUTimer.h: Fix time.h include + +According to https://linux.die.net/man/3/clock_gettime time.h needs to +be included instead of sys/time.h. + +This patch fixes a build error found by buildroot autobuilders: + +http://autobuild.buildroot.net/results/cc0/cc0b928ee24a526b7c82fd3f391e2be024a14578// + +/home/peko/autobuild/instance-1/output/build/libasplib-be7fac89218a84b75f7598e3d76625ece99296f2/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.cpp: In member function 'void asplib::CCPUTimer::start_Timer()': +/home/peko/autobuild/instance-1/output/build/libasplib-be7fac89218a84b75f7598e3d76625ece99296f2/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.cpp:69:19: error: 'CLOCK_REALTIME' was not declared in this scope + clock_gettime(CLOCK_REALTIME, &m_startTime); + +Patch sent upstream: https://github.com/AchimTuran/asplib/pull/34 + +Signed-off-by: Bernd Kuhls +--- + asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.h b/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.h +index a61ff49..a9676e0 100644 +--- a/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.h ++++ b/asplib_modules/Timer/asplib/Timer/asplib_CPUTimer.h +@@ -29,7 +29,7 @@ + #include + #include + #elif defined(TARGET_LINUX) +- #include ++ #include + #endif + + namespace asplib +-- +2.11.0 + diff --git a/package/libasplib/libasplib.hash b/package/libasplib/libasplib.hash index bbd027dda5..76534e528d 100644 --- a/package/libasplib/libasplib.hash +++ b/package/libasplib/libasplib.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 ccc2718c79a8d684317cc1987ede88b198e1602df47d0f18f03d474eda00af9c libasplib-f7219142e790a329b002a94f3db943abcb183739.tar.gz +sha256 68e117348fa17592dde7672477e927119a0e477103ced1d3a57d92e30880a147 libasplib-be7fac89218a84b75f7598e3d76625ece99296f2.tar.gz diff --git a/package/libasplib/libasplib.mk b/package/libasplib/libasplib.mk index 41aeaeb8a2..b3b1fdb30f 100644 --- a/package/libasplib/libasplib.mk +++ b/package/libasplib/libasplib.mk @@ -4,10 +4,25 @@ # ################################################################################ -LIBASPLIB_VERSION = f7219142e790a329b002a94f3db943abcb183739 +LIBASPLIB_VERSION = be7fac89218a84b75f7598e3d76625ece99296f2 LIBASPLIB_SITE = $(call github,AchimTuran,asplib,$(LIBASPLIB_VERSION)) LIBASPLIB_LICENSE = GPLv3+ LIBASPLIB_LICENSE_FILES = LICENSE LIBASPLIB_INSTALL_STAGING = YES +LIBASPLIB_CONF_OPTS = \ + -DASPLIB_MODULES_TO_BUILD=some \ + -DBUILD_BIQUAD=ON \ + -DBUILD_IIR=ON \ + -DBUILD_LOGGER=ON \ + -DBUILD_SIGNALS=ON \ + -DBUILD_TIMER=ON + +# Internal error, aborting at dw2gencfi.c:214 in emit_expr_encoded +ifeq ($(BR2_m68k_cf),y) +LIBASPLIB_CXXFLAGS += -fno-dwarf2-cfi-asm +endif + +LIBASPLIB_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(LIBASPLIB_CXXFLAGS)" + $(eval $(cmake-package)) diff --git a/package/libass/libass.hash b/package/libass/libass.hash index 5dddc403ca..d1e9022c82 100644 --- a/package/libass/libass.hash +++ b/package/libass/libass.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 d698d0a6adca7c36c5a86b540d67b05bfd36cebc3c351ab7646497c43fe1face libass-0.13.2.tar.xz +sha256 d84a2fc89011b99d87fc47af91906622707c165d1860e9f774825ebbbc9c9fb6 libass-0.13.4.tar.xz diff --git a/package/libass/libass.mk b/package/libass/libass.mk index 716bca6b4f..9fe967fdc0 100644 --- a/package/libass/libass.mk +++ b/package/libass/libass.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBASS_VERSION = 0.13.2 +LIBASS_VERSION = 0.13.4 LIBASS_SOURCE = libass-$(LIBASS_VERSION).tar.xz # Do not use the github helper here, the generated tarball is *NOT* # the same as the one uploaded by upstream for the release. diff --git a/package/libassuan/Config.in b/package/libassuan/Config.in index 4f0a6ba0b7..012e65c4b6 100644 --- a/package/libassuan/Config.in +++ b/package/libassuan/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBASSUAN bool "libassuan" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error depends on BR2_USE_MMU # fork() select BR2_PACKAGE_LIBGPG_ERROR help diff --git a/package/libassuan/libassuan.hash b/package/libassuan/libassuan.hash index a019f76c89..01ade11f26 100644 --- a/package/libassuan/libassuan.hash +++ b/package/libassuan/libassuan.hash @@ -1,2 +1,2 @@ # From https://www.gnupg.org/download/integrity_check.html -sha1 c21b86482f6a3624c2b46b91e20f8415f244233a libassuan-2.2.1.tar.bz2 +sha1 27391cf4a820b5350ea789c30661830c9a271518 libassuan-2.4.3.tar.bz2 diff --git a/package/libassuan/libassuan.mk b/package/libassuan/libassuan.mk index 3656ea579f..c4d2e4f4f3 100644 --- a/package/libassuan/libassuan.mk +++ b/package/libassuan/libassuan.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBASSUAN_VERSION = 2.2.1 +LIBASSUAN_VERSION = 2.4.3 LIBASSUAN_SITE = ftp://ftp.gnupg.org/gcrypt/libassuan LIBASSUAN_SOURCE = libassuan-$(LIBASSUAN_VERSION).tar.bz2 LIBASSUAN_LICENSE = LGPLv2.1+ (library), GPLv3 (tests, doc) diff --git a/package/libatomic_ops/Config.in b/package/libatomic_ops/Config.in index c6fe7a03b4..e9206f3395 100644 --- a/package/libatomic_ops/Config.in +++ b/package/libatomic_ops/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS bool - default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_sparc64 || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 + default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_sparc64 || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + # Unsupported for MIPS R6 + depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6 config BR2_PACKAGE_LIBATOMIC_OPS bool "libatomic_ops" diff --git a/package/libatomic_ops/libatomic_ops.hash b/package/libatomic_ops/libatomic_ops.hash new file mode 100644 index 0000000000..47a281ddf2 --- /dev/null +++ b/package/libatomic_ops/libatomic_ops.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ef8335676f18a111f885d48810ab090fb6bfad94e5a5dd76cdccd2a536828662 libatomic_ops-libatomic_ops-7_4_4.tar.gz diff --git a/package/libatomic_ops/libatomic_ops.mk b/package/libatomic_ops/libatomic_ops.mk index fd45726750..b5e217237c 100644 --- a/package/libatomic_ops/libatomic_ops.mk +++ b/package/libatomic_ops/libatomic_ops.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBATOMIC_OPS_VERSION = libatomic_ops-7_4_2 +LIBATOMIC_OPS_VERSION = libatomic_ops-7_4_4 LIBATOMIC_OPS_SITE = $(call github,ivmai,libatomic_ops,$(LIBATOMIC_OPS_VERSION)) LIBATOMIC_OPS_AUTORECONF = YES diff --git a/package/libbdplus/Config.in b/package/libbdplus/Config.in new file mode 100644 index 0000000000..2d314d13e4 --- /dev/null +++ b/package/libbdplus/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBBDPLUS + bool "libbdplus" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LIBGCRYPT + help + libbdplus is a research project to implement the BD+ System + Specifications. + This research project provides, through an open-source + library, a way to understand how the BD+ works. + NB: this project doesn't offer any key, configuration file or + certificate that could be used to decode encrypted copyrighted + material. + + http://www.videolan.org/developers/libbdplus.html + +comment "libbdplus needs a toolchain w/ threads, dynamic library" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libbdplus/libbdplus.hash b/package/libbdplus/libbdplus.hash new file mode 100644 index 0000000000..552cd71c89 --- /dev/null +++ b/package/libbdplus/libbdplus.hash @@ -0,0 +1,2 @@ +# From http://download.videolan.org/pub/videolan/libbdplus/0.1.2/libbdplus-0.1.2.tar.bz2.sha512 +sha512 e00e7bc9f52b9275646593b753ba646b052255be94a7241965f4dbe4734f8f6a072973ed4b9997957f939236b0633897c295749f79e232188430795be5b5087b libbdplus-0.1.2.tar.bz2 diff --git a/package/libbdplus/libbdplus.mk b/package/libbdplus/libbdplus.mk new file mode 100644 index 0000000000..45913edda6 --- /dev/null +++ b/package/libbdplus/libbdplus.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# libbdplus +# +################################################################################ + +LIBBDPLUS_VERSION = 0.1.2 +LIBBDPLUS_SITE = http://download.videolan.org/pub/videolan/libbdplus/$(LIBBDPLUS_VERSION) +LIBBDPLUS_SOURCE = libbdplus-$(LIBBDPLUS_VERSION).tar.bz2 +LIBBDPLUS_LICENSE = LGPLv2.1+ +LIBBDPLUS_LICENSE_FILES = COPYING +LIBBDPLUS_INSTALL_STAGING = YES +LIBBDPLUS_DEPENDENCIES = libgcrypt +LIBBDPLUS_CONF_OPTS = \ + --disable-werror \ + --disable-extra-warnings \ + --disable-optimizations \ + --disable-examples \ + --disable-debug \ + --with-gnu-ld \ + --with-libgcrypt-prefix=$(STAGING_DIR)/usr \ + --with-gpg-error-prefix=$(STAGING_DIR)/usr + +ifeq ($(BR2_PACKAGE_LIBAACS),y) +LIBBDPLUS_DEPENDENCIES += libaacs +LIBBDPLUS_CONF_OPTS += --with-libaacs +else +LIBBDPLUS_CONF_OPTS += --without-libaacs +endif + +$(eval $(autotools-package)) diff --git a/package/libbluray/Config.in b/package/libbluray/Config.in index 357a562d9c..b95893560b 100644 --- a/package/libbluray/Config.in +++ b/package/libbluray/Config.in @@ -8,5 +8,4 @@ config BR2_PACKAGE_LIBBLURAY http://www.videolan.org/developers/libbluray.html comment "libbluray needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libbluray/libbluray.hash b/package/libbluray/libbluray.hash index 9acd89d2fd..ea0df505dd 100644 --- a/package/libbluray/libbluray.hash +++ b/package/libbluray/libbluray.hash @@ -1,2 +1,2 @@ -# From http://get.videolan.org/libbluray/0.9.2/libbluray-0.9.2.tar.bz2.sha512 -sha512 f7fda2ef4c0ec70eb9a38aed0e76d21d8784410cb13713e7ee66ecd23a1cc58325977b046d40c526554a4a4e4cf96706a233e15451bf34892aff201b47e25aef libbluray-0.9.2.tar.bz2 +# From http://get.videolan.org/libbluray/0.9.3/libbluray-0.9.3.tar.bz2.sha512 +sha512 1e308b85c51d43b23b186fdd2631f963d4c25de8aff29f335e131b32a175434ee21460a7aa470c508ad13662cf9052649bb4eb974dbd709eb9e6797fb84e0823 libbluray-0.9.3.tar.bz2 diff --git a/package/libbluray/libbluray.mk b/package/libbluray/libbluray.mk index 2cc27f1084..dfe58f4e1c 100644 --- a/package/libbluray/libbluray.mk +++ b/package/libbluray/libbluray.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBBLURAY_VERSION = 0.9.2 +LIBBLURAY_VERSION = 0.9.3 LIBBLURAY_SITE = http://get.videolan.org/libbluray/$(LIBBLURAY_VERSION) LIBBLURAY_SOURCE = libbluray-$(LIBBLURAY_VERSION).tar.bz2 LIBBLURAY_INSTALL_STAGING = YES diff --git a/package/libbsd/0001-build-clock_gettime-might-need-librt.patch b/package/libbsd/0001-build-clock_gettime-might-need-librt.patch deleted file mode 100644 index ad6fcdbdf0..0000000000 --- a/package/libbsd/0001-build-clock_gettime-might-need-librt.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 188049ac7adcabfa66e5b6a674ac28a2f7da81f3 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Fri, 12 Feb 2016 11:06:58 -0300 -Subject: [PATCH] build: clock_gettime might need librt - -In older glibc versions (< 2.17) clock_gettime is in librt. -Add a check for this to avoid build breakage for programs/libraries that -use libbsd on such systems. - -Signed-off-by: Gustavo Zacarias ---- -Patch status: submitted upstream - - configure.ac | 5 +++++ - src/Makefile.am | 2 ++ - 2 files changed, 7 insertions(+) - -diff --git a/configure.ac b/configure.ac -index d334774..1862d19 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -44,6 +44,11 @@ AC_SUBST([TESTU01_LIBS]) - AM_CONDITIONAL([HAVE_LIBTESTU01], - [test "x$ac_cv_lib_testu01_unif01_CreateExternGenBits" = "xyes"]) - -+# In old glibc versions (< 2.17) clock_gettime() is in librt -+AC_SEARCH_LIBS([clock_gettime], [rt], -+ [LIB_CLOCK_GETTIME="-lrt"]) -+AC_SUBST([LIB_CLOCK_GETTIME]) -+ - # Checks for header files. - AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h]) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 4649937..6b705f0 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -52,6 +52,8 @@ hash/md5hl.c: $(srcdir)/hash/helper.c - libbsd_la_DEPENDENCIES = \ - $(libbsd_la_included_sources) \ - libbsd.map -+libbsd_la_LIBADD = \ -+ $(LIB_CLOCK_GETTIME) - libbsd_la_LDFLAGS = \ - -Wl,--version-script=$(srcdir)/libbsd.map \ - -version-number $(LIBBSD_ABI) --- -2.4.10 - diff --git a/package/libbsd/Config.in b/package/libbsd/Config.in index dd2c19c183..9b5b89812f 100644 --- a/package/libbsd/Config.in +++ b/package/libbsd/Config.in @@ -17,6 +17,6 @@ config BR2_PACKAGE_LIBBSD http://libbsd.freedesktop.org/ -comment "libbsd needs an (e)glibc toolchain w/ threads" +comment "libbsd needs a glibc toolchain w/ threads" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libbsd/libbsd.hash b/package/libbsd/libbsd.hash index f77c0aa4d6..bc6c7cfb82 100644 --- a/package/libbsd/libbsd.hash +++ b/package/libbsd/libbsd.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b2f644cae94a6e2fe109449c20ad79a0f6ee4faec2205b07eefa0020565e250a libbsd-0.8.2.tar.xz +sha256 934b634f4dfd865b6482650b8f522c70ae65c463529de8be907b53c89c3a34a8 libbsd-0.8.3.tar.xz diff --git a/package/libbsd/libbsd.mk b/package/libbsd/libbsd.mk index f750d752fe..a932f2b483 100644 --- a/package/libbsd/libbsd.mk +++ b/package/libbsd/libbsd.mk @@ -4,13 +4,11 @@ # ################################################################################ -LIBBSD_VERSION = 0.8.2 +LIBBSD_VERSION = 0.8.3 LIBBSD_SOURCE = libbsd-$(LIBBSD_VERSION).tar.xz LIBBSD_SITE = http://libbsd.freedesktop.org/releases LIBBSD_LICENSE = BSD-3c, MIT LIBBSD_LICENSE_FILES = COPYING LIBBSD_INSTALL_STAGING = YES -# For 0001-build-clock_gettime-might-need-librt.patch -LIBBSD_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libcap-ng/0001-add-missing-include.patch b/package/libcap-ng/0001-add-missing-include.patch deleted file mode 100644 index c30c40dc18..0000000000 --- a/package/libcap-ng/0001-add-missing-include.patch +++ /dev/null @@ -1,22 +0,0 @@ -Add missing include - -This include is needed to get the pid_t definition, at least with the -musl C library. - -Patch inspired from Alpine Linux patch -http://git.alpinelinux.org/cgit/aports/tree/main/libcap-ng/fix-includes.patch. - -Signed-off-by: Thomas Petazzoni - -Index: b/utils/proc-llist.h -=================================================================== ---- a/utils/proc-llist.h -+++ b/utils/proc-llist.h -@@ -26,6 +26,7 @@ - - #include "config.h" - -+#include - - /* This is the node of the linked list. Any data elements that are per - * record goes here. */ diff --git a/package/libcap-ng/libcap-ng.hash b/package/libcap-ng/libcap-ng.hash index ecea6e8841..b433b75063 100644 --- a/package/libcap-ng/libcap-ng.hash +++ b/package/libcap-ng/libcap-ng.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 615549ce39b333f6b78baee0c0b4ef18bc726c6bf1cca123dfd89dd963f6d06b libcap-ng-0.7.7.tar.gz +sha256 c21af997445cd4107a55d386f955c5ea6f6e96ead693e9151277c0ab5f97d05f libcap-ng-0.7.8.tar.gz diff --git a/package/libcap-ng/libcap-ng.mk b/package/libcap-ng/libcap-ng.mk index d78f5dc660..19cc27d56f 100644 --- a/package/libcap-ng/libcap-ng.mk +++ b/package/libcap-ng/libcap-ng.mk @@ -4,9 +4,9 @@ # ################################################################################ -LIBCAP_NG_VERSION = 0.7.7 +LIBCAP_NG_VERSION = 0.7.8 LIBCAP_NG_SITE = http://people.redhat.com/sgrubb/libcap-ng -LIBCAP_NG_LICENSE = GPLv2+ LGPLv2.1+ +LIBCAP_NG_LICENSE = GPLv2+ (programs), LGPLv2.1+ (library) LIBCAP_NG_LICENSE_FILES = COPYING COPYING.LIB LIBCAP_NG_INSTALL_STAGING = YES diff --git a/package/libcdio/libcdio.hash b/package/libcdio/libcdio.hash index cc87ffb9cb..35c632a906 100644 --- a/package/libcdio/libcdio.hash +++ b/package/libcdio/libcdio.hash @@ -1,2 +1,2 @@ # Locally calculated after checking signature -sha256 4972cd22fd8d0e8bff922d35c7a645be0db0ab0e7b3dfaecc9cd8272429d6975 libcdio-0.93.tar.gz +sha256 96e2c903f866ae96f9f5b9048fa32db0921464a2286f5b586c0f02699710025a libcdio-0.94.tar.gz diff --git a/package/libcdio/libcdio.mk b/package/libcdio/libcdio.mk index 03e6002079..4a7c6745cc 100644 --- a/package/libcdio/libcdio.mk +++ b/package/libcdio/libcdio.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCDIO_VERSION = 0.93 +LIBCDIO_VERSION = 0.94 LIBCDIO_SITE = $(BR2_GNU_MIRROR)/libcdio LIBCDIO_INSTALL_STAGING = YES LIBCDIO_LICENSE = GPLv3+ diff --git a/package/libcec/libcec.hash b/package/libcec/libcec.hash index 377f343a22..5416c20fec 100644 --- a/package/libcec/libcec.hash +++ b/package/libcec/libcec.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 0f29d5a2d155b507807ba896bc3b3e50a0ab56bf8f543a2bf5c2798c790292b5 libcec-2c675dac48387c48c7f43c5d2547ef0c4ef5c7dd.tar.gz +sha256 b8b8dd31f3ebdd5472f03ab7d401600ea0d959b1288b9ca24bf457ef60e2ba27 libcec-4.0.2.tar.gz diff --git a/package/libcec/libcec.mk b/package/libcec/libcec.mk index b762d88d71..f00e10f5d2 100644 --- a/package/libcec/libcec.mk +++ b/package/libcec/libcec.mk @@ -4,13 +4,11 @@ # ################################################################################ -LIBCEC_VERSION = 2c675dac48387c48c7f43c5d2547ef0c4ef5c7dd -LIBCEC_SITE = $(call github,Pulse-Eight,libcec,$(LIBCEC_VERSION)) +LIBCEC_VERSION = 4.0.2 +LIBCEC_SITE = $(call github,Pulse-Eight,libcec,libcec-$(LIBCEC_VERSION)) LIBCEC_LICENSE = GPLv2+ LIBCEC_LICENSE_FILES = COPYING -# Autoreconf required due to being a dev tarball and not a release tarball. -LIBCEC_AUTORECONF = YES LIBCEC_INSTALL_STAGING = YES LIBCEC_DEPENDENCIES = host-pkgconf libplatform @@ -29,8 +27,9 @@ endif ifeq ($(BR2_PACKAGE_RPI_USERLAND),y) LIBCEC_DEPENDENCIES += rpi-userland LIBCEC_CONF_OPTS += \ - -DCMAKE_C_FLAGS="-lvcos -lvchiq_arm" \ - -DCMAKE_CXX_FLAGS="-I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux \ + -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) -lvcos -lvchiq_arm" \ + -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) \ + -I$(STAGING_DIR)/usr/include/interface/vmcs_host/linux \ -I$(STAGING_DIR)/usr/include/interface/vcos/pthreads" endif diff --git a/package/libcgroup/Config.in b/package/libcgroup/Config.in index d02c2829ad..03efa71e6b 100644 --- a/package/libcgroup/Config.in +++ b/package/libcgroup/Config.in @@ -18,5 +18,5 @@ config BR2_PACKAGE_LIBCGROUP_TOOLS endif -comment "libcgroup needs an (e)glibc toolchain w/ C++" +comment "libcgroup needs a glibc toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libcli/libcli.hash b/package/libcli/libcli.hash new file mode 100644 index 0000000000..f6ea12ad37 --- /dev/null +++ b/package/libcli/libcli.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3c801cb0112b6b5e07bdc3b98c034b36df6f33a8ed95ce74520b704bdbc0f36d libcli-c63c9d35144939c8b4fa3c5394aed2e29ff517b0.tar.gz diff --git a/package/libcoap/0001-configure-only-add-Wunused-result-if-supported-by-th.patch b/package/libcoap/0001-configure-only-add-Wunused-result-if-supported-by-th.patch new file mode 100644 index 0000000000..bc93890450 --- /dev/null +++ b/package/libcoap/0001-configure-only-add-Wunused-result-if-supported-by-th.patch @@ -0,0 +1,38 @@ +From d5914ecbb0285aea1eb2b9432d6e91155877fd95 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 9 Jun 2016 21:53:59 +0200 +Subject: [PATCH] configure: only add -Wunused-result if supported by the + compiler + +Old gcc versions such as 4.3.x do not support -Wunused-result, so +instead of unconditionally using this warning, only use it if supported +by the compiler. + +Signed-off-by: Thomas Petazzoni +--- +Submitted upstream: https://github.com/obgm/libcoap/pull/32 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index f4452ac..6354fcf 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -110,12 +110,12 @@ WARNING_CFLAGS="\ + -Wswitch-default \ + -Wswitch-enum \ + -Wunused \ +--Wunused-result \ + " + + # check whether or not the compiler supports -Wlogical-op (clang does not...) + AX_CHECK_COMPILE_FLAG([-Wlogical-op], [WARNING_CFLAGS="$WARNING_CFLAGS -Wlogical-op"],,[-Werror]) + AX_CHECK_COMPILE_FLAG([-fdiagnostics-color], [CFLAGS="$CFLAGS -fdiagnostics-color"],,[-Werror]) ++AX_CHECK_COMPILE_FLAG([-Wunused-result], [WARNING_CFLAGS="$WARNING_CFLAGS -Wunused-result"]) + + AC_SUBST([WARNING_CFLAGS]) + +-- +2.7.4 + diff --git a/package/libcoap/Config.in b/package/libcoap/Config.in new file mode 100644 index 0000000000..c089b550ab --- /dev/null +++ b/package/libcoap/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBCOAP + bool "libcoap" + help + libcoap is a C implementation of a lightweight application-protocol + for devices that are constrained their resources such as computing + power, RF range, memory, bandwith, or network packet sizes. This + protocol, CoAP, is standardized by the IETF as RFC 7252. For further + information related to CoAP, see . + + https://github.com/obgm/libcoap diff --git a/package/libcoap/libcoap.hash b/package/libcoap/libcoap.hash new file mode 100644 index 0000000000..dce491b5bc --- /dev/null +++ b/package/libcoap/libcoap.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f66e91742c2b027fcd7c575d8e7b53d79d3624aad1b3baba481dd88f6e2bc44d libcoap-c909bf802034b7762a2182848304b2530e58444f.tar.gz diff --git a/package/libcoap/libcoap.mk b/package/libcoap/libcoap.mk new file mode 100644 index 0000000000..ef9b731b86 --- /dev/null +++ b/package/libcoap/libcoap.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# libcoap +# +################################################################################ + +LIBCOAP_VERSION = c909bf802034b7762a2182848304b2530e58444f +LIBCOAP_SITE = $(call github,obgm,libcoap,$(LIBCOAP_VERSION)) +LIBCOAP_INSTALL_STAGING = YES +LIBCOAP_LICENSE = GPLv2+ or BSD-2c +LIBCOAP_LICENSE_FILES = COPYING LICENSE.GPL LICENSE.BSD +LIBCOAP_CONF_OPTS = --disable-examples +LIBCOAP_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/libcofi/Config.in b/package/libcofi/Config.in index e9914d6e0f..df9ab71b93 100644 --- a/package/libcofi/Config.in +++ b/package/libcofi/Config.in @@ -1,8 +1,14 @@ config BR2_PACKAGE_LIBCOFI bool "libcofi" depends on BR2_arm + # builds a shared library + depends on !BR2_STATIC_LIBS help A replacement for memcpy and memset functionality for the Raspberry Pi with the intention of gaining greater performance. https://github.com/simonjhall/copies-and-fills + +comment "libcofi needs a toolchain w/ dynamic library" + depends on BR2_arm + depends on BR2_STATIC_LIBS diff --git a/package/libcofi/libcofi.hash b/package/libcofi/libcofi.hash new file mode 100644 index 0000000000..1baaece4cb --- /dev/null +++ b/package/libcofi/libcofi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 72ec89c19267612b316ec9c5835c07212b8f0a377c5b4c20b6e46e69a6e4a5e5 libcofi-7313fbe12b0593034d0a1b606bf33c7cf4ababce.tar.gz diff --git a/package/libconfuse/libconfuse.hash b/package/libconfuse/libconfuse.hash index 3e221d2a9c..ec485a1908 100644 --- a/package/libconfuse/libconfuse.hash +++ b/package/libconfuse/libconfuse.hash @@ -1,2 +1,3 @@ -# From https://github.com/martinh/libconfuse/releases/download/v2.8/confuse-2.8.tar.xz.md5 -md5 cb552c5737a72ef164733f0118971eb0 confuse-2.8.tar.xz +# From https://github.com/martinh/libconfuse/releases/download/v3.0/confuse-3.0.tar.xz.md5, sha256 locally computed. +md5 c534b51a2118ed57031dc548032304a3 confuse-3.0.tar.xz +sha256 bb75174e02aa8b44fa1a872a47beeea1f5fe715ab669694c97803eb6127cc861 confuse-3.0.tar.xz diff --git a/package/libconfuse/libconfuse.mk b/package/libconfuse/libconfuse.mk index 1a01896ebc..2908af3292 100644 --- a/package/libconfuse/libconfuse.mk +++ b/package/libconfuse/libconfuse.mk @@ -4,14 +4,19 @@ # ################################################################################ -LIBCONFUSE_VERSION = 2.8 +LIBCONFUSE_VERSION = 3.0 LIBCONFUSE_SOURCE = confuse-$(LIBCONFUSE_VERSION).tar.xz LIBCONFUSE_SITE = https://github.com/martinh/libconfuse/releases/download/v$(LIBCONFUSE_VERSION) LIBCONFUSE_INSTALL_STAGING = YES LIBCONFUSE_CONF_OPTS = --disable-rpath LIBCONFUSE_DEPENDENCIES = host-flex +HOST_LIBCONFUSE_DEPENDENCIES = host-flex LIBCONFUSE_LICENSE = ISC LIBCONFUSE_LICENSE_FILES = LICENSE +ifeq ($(BR2_PACKAGE_GETTEXT),y) +LIBCONFUSE_DEPENDENCIES += gettext +endif + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/libcroco/libcroco.mk b/package/libcroco/libcroco.mk index c4cb6762d8..39dd52795e 100644 --- a/package/libcroco/libcroco.mk +++ b/package/libcroco/libcroco.mk @@ -10,6 +10,7 @@ LIBCROCO_SITE = http://ftp.gnome.org/pub/gnome/sources/libcroco/$(LIBCROCO_VERSI LIBCROCO_SOURCE = libcroco-$(LIBCROCO_VERSION).tar.xz LIBCROCO_INSTALL_STAGING = YES LIBCROCO_DEPENDENCIES = host-pkgconf libglib2 libxml2 +HOST_LIBCROCO_DEPENDENCIES = host-pkgconf host-libglib2 host-libxml2 LIBCROCO_CONFIG_SCRIPTS = croco-$(LIBCROCO_VERSION_MAJOR)-config # NEWS states that it's only LGPL # Source code says v2.1+ even though COPYING.LIB is v2 diff --git a/package/libcrossguid/Config.in b/package/libcrossguid/Config.in index 61ca781aef..49060bc837 100644 --- a/package/libcrossguid/Config.in +++ b/package/libcrossguid/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_LIBCROSSGUID bool "libcrossguid" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 - depends on BR2_USE_WCHAR # util-linux select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID help @@ -10,6 +9,5 @@ config BR2_PACKAGE_LIBCROSSGUID https://github.com/graeme-hill/crossguid -comment "libcrossguid needs a toolchain w/ C++, wchar, gcc >= 4.7" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ - || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 +comment "libcrossguid needs a toolchain w/ C++, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/libcrossguid/libcrossguid.hash b/package/libcrossguid/libcrossguid.hash new file mode 100644 index 0000000000..a991da56a0 --- /dev/null +++ b/package/libcrossguid/libcrossguid.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 022c9f02cc36e865cd8fd0111a597ff2bd91988deeb348dbe2aba64aed1abd99 libcrossguid-8f399e8bd4252be9952f3dfa8199924cc8487ca4.tar.gz diff --git a/package/libcurl/Config.in b/package/libcurl/Config.in index 026ae0154b..fc1527f0d9 100644 --- a/package/libcurl/Config.in +++ b/package/libcurl/Config.in @@ -13,4 +13,9 @@ config BR2_PACKAGE_CURL help Install curl binary as well +config BR2_PACKAGE_LIBCURL_VERBOSE + bool "enable verbose strings" + help + Enable verbose text strings + endif diff --git a/package/libcurl/libcurl.hash b/package/libcurl/libcurl.hash index f9b90c0b4d..7a942f238b 100644 --- a/package/libcurl/libcurl.hash +++ b/package/libcurl/libcurl.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 eb63cec4bef692eab9db459033f409533e6d10e20942f4b060b32819e81885f1 curl-7.49.1.tar.bz2 +sha256 d16185a767cb2c1ba3d5b9096ec54e5ec198b213f45864a38b3bda4bbf87389b curl-7.52.1.tar.bz2 diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index 942c677191..a9fba26627 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -4,9 +4,9 @@ # ################################################################################ -LIBCURL_VERSION = 7.49.1 +LIBCURL_VERSION = 7.52.1 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.bz2 -LIBCURL_SITE = http://curl.haxx.se/download +LIBCURL_SITE = https://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ $(if $(BR2_PACKAGE_ZLIB),zlib) \ $(if $(BR2_PACKAGE_LIBIDN),libidn) \ @@ -19,8 +19,15 @@ LIBCURL_INSTALL_STAGING = YES # on non-MMU platforms. Moreover, this authentication method is # probably almost never used. See # http://curl.haxx.se/docs/manpage.html#--ntlm. -LIBCURL_CONF_OPTS = --disable-verbose --disable-manual --disable-ntlm-wb \ +LIBCURL_CONF_OPTS = --disable-manual --disable-ntlm-wb \ --enable-hidden-symbols --with-random=/dev/urandom --disable-curldebug + +ifeq ($(BR2_PACKAGE_LIBCURL_VERBOSE),y) +LIBCURL_CONF_OPTS += --enable-verbose +else +LIBCURL_CONF_OPTS += --disable-verbose +endif + LIBCURL_CONFIG_SCRIPTS = curl-config ifeq ($(BR2_PACKAGE_OPENSSL),y) diff --git a/package/libdri2/libdri2.hash b/package/libdri2/libdri2.hash new file mode 100644 index 0000000000..03a37ad44f --- /dev/null +++ b/package/libdri2/libdri2.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 7c427f5c3fbda3d1df1dc77129e87605f4af1f3ad2adf2653c560d1703aa4395 libdri2-4f1eef3183df2b270c3d5cbef07343ee5127a6a4.tar.gz diff --git a/package/libdrm/0003-xf86atomic-require-CAS-support-in-libatomic_ops.patch b/package/libdrm/0002-xf86atomic-require-CAS-support-in-libatomic_ops.patch similarity index 100% rename from package/libdrm/0003-xf86atomic-require-CAS-support-in-libatomic_ops.patch rename to package/libdrm/0002-xf86atomic-require-CAS-support-in-libatomic_ops.patch diff --git a/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch b/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch deleted file mode 100644 index 03b4524510..0000000000 --- a/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 3fed80daf1dcb0b5d20e623d27228726c735e138 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 27 Sep 2015 19:09:47 +0200 -Subject: [PATCH 1/1] xf86drm.c: Include limits.h to fix build error on Solaris - and with musl - -musl's strict implementation requires #include for PATH_MAX. - -Patch suggested by evgeny for Solaris: -https://bugs.freedesktop.org/show_bug.cgi?id=92082 - -Signed-off-by: Bernd Kuhls ---- - xf86drm.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/xf86drm.c b/xf86drm.c -index a9f5c29..ec985eb 100644 ---- a/xf86drm.c -+++ b/xf86drm.c -@@ -53,6 +53,7 @@ - #include - #include - #include -+#include - #ifdef HAVE_SYS_MKDEV_H - # include /* defines major(), minor(), and makedev() on Solaris */ - #endif --- -2.5.3 - diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in index 7c2a82859f..81fc5ccf9f 100644 --- a/package/libdrm/Config.in +++ b/package/libdrm/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_LIBDRM +menuconfig BR2_PACKAGE_LIBDRM bool "libdrm" select BR2_PACKAGE_LIBPTHREAD_STUBS depends on BR2_TOOLCHAIN_HAS_THREADS # libpthread-stubs @@ -18,13 +18,6 @@ config BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC bool select BR2_PACKAGE_LIBATOMIC_OPS if !BR2_TOOLCHAIN_HAS_SYNC_4 -config BR2_PACKAGE_LIBDRM_INSTALL_TESTS - bool "Install test programs" - help - This option allows to install the libdrm test programs. - -menu "DRM Drivers" - config BR2_PACKAGE_LIBDRM_INTEL bool "intel" select BR2_PACKAGE_LIBPCIACCESS @@ -69,6 +62,14 @@ config BR2_PACKAGE_LIBDRM_OMAP help Install the TI OMAP driver using an experimental API. +config BR2_PACKAGE_LIBDRM_ETNAVIV + bool "etnaviv (experimental)" + depends on BR2_arm + depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC + select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC + help + Install the Etnaviv/Vivante driver using an experimental API. + config BR2_PACKAGE_LIBDRM_EXYNOS bool "exynos (experimental)" depends on BR2_arm @@ -97,7 +98,10 @@ config BR2_PACKAGE_LIBDRM_VC4 help Install vc4 (Raspberry Pi) driver. -endmenu +config BR2_PACKAGE_LIBDRM_INSTALL_TESTS + bool "Install test programs" + help + This option allows to install the libdrm test programs. endif diff --git a/package/libdrm/libdrm.hash b/package/libdrm/libdrm.hash index 8bd3d95f37..dc10b295f2 100644 --- a/package/libdrm/libdrm.hash +++ b/package/libdrm/libdrm.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/dri-devel/2016-April/106211.html -sha256 5b4bd9a5922929bc716411cb74061fbf31b06ba36feb89bc1358a91a8d0ca9df libdrm-2.4.68.tar.bz2 +# From https://lists.freedesktop.org/archives/dri-devel/2017-January/131209.html +sha256 2d5a500eef412cc287d12268eed79d571e262d4957a2ec9258073f305985054f libdrm-2.4.75.tar.bz2 diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk index 50fa7ef92f..ae7b75bad9 100644 --- a/package/libdrm/libdrm.mk +++ b/package/libdrm/libdrm.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBDRM_VERSION = 2.4.68 +LIBDRM_VERSION = 2.4.75 LIBDRM_SOURCE = libdrm-$(LIBDRM_VERSION).tar.bz2 LIBDRM_SITE = http://dri.freedesktop.org/libdrm LIBDRM_LICENSE = MIT @@ -65,6 +65,12 @@ else LIBDRM_CONF_OPTS += --disable-omap-experimental-api endif +ifeq ($(BR2_PACKAGE_LIBDRM_ETNAVIV),y) +LIBDRM_CONF_OPTS += --enable-etnaviv-experimental-api +else +LIBDRM_CONF_OPTS += --disable-etnaviv-experimental-api +endif + ifeq ($(BR2_PACKAGE_LIBDRM_EXYNOS),y) LIBDRM_CONF_OPTS += --enable-exynos-experimental-api else diff --git a/package/libdvbcsa/0001-altivec-powerpc64.patch b/package/libdvbcsa/0001-altivec-powerpc64.patch new file mode 100644 index 0000000000..3605c146a7 --- /dev/null +++ b/package/libdvbcsa/0001-altivec-powerpc64.patch @@ -0,0 +1,33 @@ +Fix compile on powerpc64/powerpc64le w/ altivec + +Correct the type of some vectors passed to vec_slo() or vec_sro(), which only +takes a char vector. + +Signed-off-by: Sam Bobroff + +--- a/src/dvbcsa_bs_altivec.h 2016-11-28 14:33:34.410021500 +1100 ++++ b/src/dvbcsa_bs_altivec.h 2016-11-28 14:34:25.442238715 +1100 +@@ -64,7 +64,7 @@ + } + case 0x29: { + dvbcsa_bs_word_t x = vec_splat_u8(10); +- return (dvbcsa_bs_word_t)vec_add(vec_splat_u8(0x1),vec_rl(x,x)); ++ return (dvbcsa_bs_word_t)vec_add((dvbcsa_bs_word_t)vec_splat_u8(0x1),vec_rl(x,x)); + } + case 0x40: { + dvbcsa_bs_word_t x = vec_splat_u8(4); +@@ -99,10 +99,10 @@ + #define SHVAL_14 BS_VAL8(0e) + #define SHVAL_7 BS_VAL8(07) + +-#define BS_SHL(a, n) ({ dvbcsa_bs_word_t x = SHVAL_##n; vec_sll(vec_slo((a), x), x); }) +-#define BS_SHR(a, n) ({ dvbcsa_bs_word_t x = SHVAL_##n; vec_srl(vec_sro((a), x), x); }) +-#define BS_SHL8(a, n) ({ dvbcsa_bs_word_t x = vec_splat_u8(n*2); x = vec_add(x,x); x = vec_add(x,x); vec_slo((a), x); }) +-#define BS_SHR8(a, n) ({ dvbcsa_bs_word_t x = vec_splat_u8(n*2); x = vec_add(x,x); x = vec_add(x,x); vec_sro((a), x); }) ++#define BS_SHL(a, n) ({ vector unsigned char x = SHVAL_##n; vec_sll(vec_slo((a), x), x); }) ++#define BS_SHR(a, n) ({ vector unsigned char x = SHVAL_##n; vec_srl(vec_sro((a), x), x); }) ++#define BS_SHL8(a, n) ({ vector unsigned char x = vec_splat_u8(n*2); x = vec_add(x,x); x = vec_add(x,x); vec_slo((a), x); }) ++#define BS_SHR8(a, n) ({ vector unsigned char x = vec_splat_u8(n*2); x = vec_add(x,x); x = vec_add(x,x); vec_sro((a), x); }) + + #define BS_EXTRACT8(a, n) ((uint8_t*)&(a))[15 - (n)] + diff --git a/package/libdvbcsa/libdvbcsa.mk b/package/libdvbcsa/libdvbcsa.mk index 1472537938..dfbb4c2257 100644 --- a/package/libdvbcsa/libdvbcsa.mk +++ b/package/libdvbcsa/libdvbcsa.mk @@ -24,6 +24,7 @@ endif ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) LIBDVBCSA_CONF_OPTS += --enable-altivec +LIBDVBCSA_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -flax-vector-conversions" else LIBDVBCSA_CONF_OPTS += --disable-altivec endif diff --git a/package/libdvdcss/Config.in b/package/libdvdcss/Config.in new file mode 100644 index 0000000000..a8c3b84cf5 --- /dev/null +++ b/package/libdvdcss/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIBDVDCSS + bool "libdvdcss" + help + libdvdcss is a simple library designed for accessing DVDs like + a block device without having to bother about the decryption. + + http://www.videolan.org/developers/libdvdcss.html diff --git a/package/libdvdcss/libdvdcss.hash b/package/libdvdcss/libdvdcss.hash new file mode 100644 index 0000000000..57abd77a29 --- /dev/null +++ b/package/libdvdcss/libdvdcss.hash @@ -0,0 +1,2 @@ +# From http://download.videolan.org/pub/videolan/libdvdcss/1.4.0/libdvdcss-1.4.0.tar.bz2.sha256 +sha256 2089375984800df29a4817b37f3123c1706723342d6dab4d0a8b75c25c2c845a libdvdcss-1.4.0.tar.bz2 diff --git a/package/libdvdcss/libdvdcss.mk b/package/libdvdcss/libdvdcss.mk new file mode 100644 index 0000000000..8e1c92995d --- /dev/null +++ b/package/libdvdcss/libdvdcss.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# libdvdcss +# +################################################################################ + +LIBDVDCSS_VERSION = 1.4.0 +LIBDVDCSS_SOURCE = libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2 +LIBDVDCSS_SITE = http://www.videolan.org/pub/videolan/libdvdcss/$(LIBDVDCSS_VERSION) +LIBDVDCSS_INSTALL_STAGING = YES +LIBDVDCSS_LICENSE = GPLv2+ +LIBDVDCSS_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/libdvdnav/0001-do-not-match-nios2-as-os2.patch b/package/libdvdnav/0001-do-not-match-nios2-as-os2.patch new file mode 100644 index 0000000000..27030bb239 --- /dev/null +++ b/package/libdvdnav/0001-do-not-match-nios2-as-os2.patch @@ -0,0 +1,16 @@ +Fix misdetection while nios2 cross-compile + +Signed-off-bye: Waldemar Brodkorb + +diff -Nur libdvdnav-5.0.3.orig/configure.ac libdvdnav-5.0.3/configure.ac +--- libdvdnav-5.0.3.orig/configure.ac 2015-01-27 16:57:43.000000000 +0100 ++++ libdvdnav-5.0.3/configure.ac 2016-07-31 11:48:09.312947473 +0200 +@@ -73,7 +73,7 @@ + [*mingw32* | *cygwin*], [AC_CHECK_FUNCS(gettimeofday)]) + + AS_CASE([$host], +- [*os2*], [LDFLAGS="$LDFLAGS -no-undefined"]) ++ [*-os2*], [LDFLAGS="$LDFLAGS -no-undefined"]) + + dnl --------------------------------------------- + dnl threads diff --git a/package/libdvdnav/0001-fix-os2-support.patch b/package/libdvdnav/0001-fix-os2-support.patch deleted file mode 100644 index 0f75f2fbd7..0000000000 --- a/package/libdvdnav/0001-fix-os2-support.patch +++ /dev/null @@ -1,32 +0,0 @@ -configure: fix build on NIOS II platform - -NIOS II is a CPU architecture from Altera, which uses 'nios2' as the -architecture part of the tuple. Unfortunately, 'nios2' matches the -current '*os2*' test done by libdvdnav's configure script to detect -the OS/2 operating system. This leads to build issues as the build -process of libdvdnav then tries to use OS/2 specific compiler -options, that do not exist in the gcc used for Linux/NIOS2. - -To fix this, this patch makes the test for OS/2 a little bit more -specific: in the case of the OS/2 operating system, the OS part of the -tuple contains just 'os2' (confirmed by looking at config.guess and -config.sub in the gnuconfig project). So using '*-os2-*' will properly -match the OS/2 operating system but not the NIOS II architecture. - -Upstream-status: not needed, newer upstream versions no longer have - this test -Signed-off-by: Thomas Petazzoni - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -166,7 +166,7 @@ - *cygwin*) - LDFLAGS="-no-undefined $LDFLAGS" - ;; -- *os2*) -+ *-os2-*) - LDFLAGS="-no-undefined -Zbin-files $LDFLAGS" - ;; - *) diff --git a/package/libdvdnav/Config.in b/package/libdvdnav/Config.in index fb13bc022a..8cfcb4a6de 100644 --- a/package/libdvdnav/Config.in +++ b/package/libdvdnav/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_LIBDVDNAV bool "libdvdnav" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_STATIC_LIBS # libdvdread select BR2_PACKAGE_LIBDVDREAD help libdvdnav is a library that allows easy use of sophisticated @@ -10,5 +9,5 @@ config BR2_PACKAGE_LIBDVDNAV http://www.mplayerhq.hu -comment "libdvdnav needs a toolchain w/ dynamic library, threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "libdvdnav needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libdvdnav/libdvdnav.hash b/package/libdvdnav/libdvdnav.hash index 4a0d851b22..d3b6fdb810 100644 --- a/package/libdvdnav/libdvdnav.hash +++ b/package/libdvdnav/libdvdnav.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 7fca272ecc3241b6de41bbbf7ac9a303ba25cb9e0c82aa23901d3104887f2372 libdvdnav-4.2.1.tar.xz +# From http://download.videolan.org/pub/videolan/libdvdnav/5.0.3/libdvdnav-5.0.3.tar.bz2.sha256 +sha256 5097023e3d2b36944c763f1df707ee06b19dc639b2b68fb30113a5f2cbf60b6d libdvdnav-5.0.3.tar.bz2 diff --git a/package/libdvdnav/libdvdnav.mk b/package/libdvdnav/libdvdnav.mk index 2ff2ce911b..b53f0c821b 100644 --- a/package/libdvdnav/libdvdnav.mk +++ b/package/libdvdnav/libdvdnav.mk @@ -4,19 +4,14 @@ # ################################################################################ -LIBDVDNAV_VERSION = 4.2.1 -LIBDVDNAV_SOURCE = libdvdnav-$(LIBDVDNAV_VERSION).tar.xz -LIBDVDNAV_SITE = http://dvdnav.mplayerhq.hu/releases -# configure not shipped -LIBDVDNAV_AUTORECONF = YES +LIBDVDNAV_VERSION = 5.0.3 +LIBDVDNAV_SOURCE = libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2 +LIBDVDNAV_SITE = http://www.videolan.org/pub/videolan/libdvdnav/$(LIBDVDNAV_VERSION) LIBDVDNAV_INSTALL_STAGING = YES -LIBDVDNAV_CONFIG_SCRIPTS = dvdnav-config LIBDVDNAV_DEPENDENCIES = libdvdread host-pkgconf LIBDVDNAV_LICENSE = GPLv2+ LIBDVDNAV_LICENSE_FILES = COPYING - -# By default libdvdnav tries to find dvdread-config in $PATH. Because -# of cross compilation, we prefer using pkg-config. -LIBDVDNAV_CONF_OPTS = --with-dvdread-config="$(PKG_CONFIG_HOST_BINARY) dvdread" +# 0001-do-not-match-nios2-as-os2.patch +LIBDVDNAV_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libdvdread/0001-fix-os2-support.patch b/package/libdvdread/0001-fix-os2-support.patch deleted file mode 100644 index 755bfaf3ee..0000000000 --- a/package/libdvdread/0001-fix-os2-support.patch +++ /dev/null @@ -1,31 +0,0 @@ -configure: fix build on NIOS II platform - -NIOS II is a CPU architecture from Altera, which uses 'nios2' as the -architecture part of the tuple. Unfortunately, 'nios2' matches the -current '*os2*' test done by libdvdread's configure script to detect -the OS/2 operating system. This leads to build issues as the build -process of libdvdread then tries to use OS/2 specific compiler -options, that do not exist in the gcc used for Linux/NIOS2. - -To fix this, this patch makes the test for OS/2 a little bit more -specific: in the case of the OS/2 operating system, the OS part of the -tuple contains just 'os2' (confirmed by looking at config.guess and -config.sub in the gnuconfig project). So using '*-os2-*' will properly -match the OS/2 operating system but not the NIOS II architecture. - -Upstream-status: submitted -Signed-off-by: Thomas Petazzoni - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -146,7 +146,7 @@ - *cygwin*) - LDFLAGS="-no-undefined $LDFLAGS" - ;; -- *os2*) -+ *-os2-*) - LDFLAGS="-no-undefined -Zbin-files $LDFLAGS" - ;; - *) diff --git a/package/libdvdread/Config.in b/package/libdvdread/Config.in index 1326709ff0..91bec83a40 100644 --- a/package/libdvdread/Config.in +++ b/package/libdvdread/Config.in @@ -1,11 +1,8 @@ config BR2_PACKAGE_LIBDVDREAD bool "libdvdread" - depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_LIBDVDCSS help libdvdread provides a simple foundation for reading DVD-Video images. http://www.mplayerhq.hu/MPlayer/releases/dvdnav/ - -comment "libdvdread needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS diff --git a/package/libdvdread/libdvdread.hash b/package/libdvdread/libdvdread.hash index 11cc1ceadc..bef93fc015 100644 --- a/package/libdvdread/libdvdread.hash +++ b/package/libdvdread/libdvdread.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 af9b98f049580a6521d56c978b736d3d609562dd12955e11d50e26d97542dcd4 libdvdread-4.2.1.tar.xz +# From http://download.videolan.org/pub/videolan/libdvdread/5.0.0/libdvdread-5.0.3.tar.bz2.sha256 +sha256 321cdf2dbdc83c96572bc583cd27d8c660ddb540ff16672ecb28607d018ed82b libdvdread-5.0.3.tar.bz2 diff --git a/package/libdvdread/libdvdread.mk b/package/libdvdread/libdvdread.mk index 665846092b..adf79d852e 100644 --- a/package/libdvdread/libdvdread.mk +++ b/package/libdvdread/libdvdread.mk @@ -4,14 +4,13 @@ # ################################################################################ -LIBDVDREAD_VERSION = 4.2.1 -LIBDVDREAD_SOURCE = libdvdread-$(LIBDVDREAD_VERSION).tar.xz -LIBDVDREAD_SITE = http://dvdnav.mplayerhq.hu/releases -# configure not shipped -LIBDVDREAD_AUTORECONF = YES +LIBDVDREAD_VERSION = 5.0.3 +LIBDVDREAD_SOURCE = libdvdread-$(LIBDVDREAD_VERSION).tar.bz2 +LIBDVDREAD_SITE = http://www.videolan.org/pub/videolan/libdvdread/$(LIBDVDREAD_VERSION) LIBDVDREAD_INSTALL_STAGING = YES -LIBDVDREAD_CONFIG_SCRIPTS = dvdread-config LIBDVDREAD_LICENSE = GPLv2+ LIBDVDREAD_LICENSE_FILES = COPYING +LIBDVDREAD_CONF_OPTS = --with-libdvdcss +LIBDVDREAD_DEPENDENCIES = libdvdcss host-pkgconf $(eval $(autotools-package)) diff --git a/package/libebur128/Config.in b/package/libebur128/Config.in new file mode 100644 index 0000000000..1a6a74363f --- /dev/null +++ b/package/libebur128/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LIBEBUR128 + bool "libebur128" + # build system has no support to disable shared linking + # leading to a build error with a static-only toolchain + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_SPEEX + help + libebur128 is a library that implements the EBU R 128 standard + for loudness normalization. + + https://github.com/jiixyj/libebur128 + +comment "libebur128 needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libebur128/libebur128.mk b/package/libebur128/libebur128.mk new file mode 100644 index 0000000000..f5ada311f7 --- /dev/null +++ b/package/libebur128/libebur128.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# libebur128 +# +################################################################################ + +LIBEBUR128_VERSION = v1.1.0 +LIBEBUR128_SITE = $(call github,jiixyj,libebur128,$(LIBEBUR128_VERSION)) +LIBEBUR128_LICENSE = MIT +LIBEBUR128_LICENSE_FILES = COPYING +LIBEBUR128_INSTALL_STAGING = YES +LIBEBUR128_DEPENDENCIES = speex + +$(eval $(cmake-package)) diff --git a/package/libenca/libenca.hash b/package/libenca/libenca.hash new file mode 100644 index 0000000000..1a03c8fa46 --- /dev/null +++ b/package/libenca/libenca.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3a487eca40b41021e2e4b7a6440b97d822e6532db5464471f572ecf77295e8b8 enca-1.19.tar.xz diff --git a/package/libenca/libenca.mk b/package/libenca/libenca.mk index 184cac943a..b87427a35c 100644 --- a/package/libenca/libenca.mk +++ b/package/libenca/libenca.mk @@ -4,8 +4,9 @@ # ################################################################################ -LIBENCA_VERSION = 1.16 -LIBENCA_SITE = $(call github,nijel,enca,$(LIBENCA_VERSION)) +LIBENCA_VERSION = 1.19 +LIBENCA_SITE = http://dl.cihar.com/enca +LIBENCA_SOURCE = enca-$(LIBENCA_VERSION).tar.xz LIBENCA_INSTALL_STAGING = YES LIBENCA_LICENSE = GPLv2 LIBENCA_LICENSE_FILES = COPYING diff --git a/package/libepoxy/libepoxy.hash b/package/libepoxy/libepoxy.hash new file mode 100644 index 0000000000..cb35cd4020 --- /dev/null +++ b/package/libepoxy/libepoxy.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6700ddedffb827b42c72cce1e0be6fba67b678b19bf256e1b5efd3ea38cc2bb4 libepoxy-v1.3.1.tar.gz diff --git a/package/libevas-generic-loaders/Config.in b/package/libevas-generic-loaders/Config.in deleted file mode 100644 index c171d47193..0000000000 --- a/package/libevas-generic-loaders/Config.in +++ /dev/null @@ -1,41 +0,0 @@ -config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS - bool "libevas generic loaders" - depends on BR2_PACKAGE_EFL - select BR2_PACKAGE_ZLIB - help - These are additional "generic" loaders for Evas that are - stand-alone executables that evas may run from its generic - loader module. - - https://www.enlightenment.org/ - -if BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS - -config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_LIBRAW - bool "libraw loader" - depends on BR2_INSTALL_LIBSTDCPP # libraw - select BR2_PACKAGE_LIBRAW - help - This option enables the Evas generic Libraw loader - -comment "libraw loader needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP - -config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG - bool "SVG loader" - depends on BR2_USE_MMU # librsvg -> glib2 - depends on BR2_USE_WCHAR # librsvg -> glib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # librsvg -> glib2 - depends on BR2_INSTALL_LIBSTDCPP # librsvg -> pango - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz - select BR2_PACKAGE_LIBRSVG - select BR2_PACKAGE_CAIRO - help - This option enables the Evas generic SVG loader - -comment "SVG loader needs a toolchain w/ wchar, threads, C++" - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP - -endif diff --git a/package/libevas-generic-loaders/libevas-generic-loaders.hash b/package/libevas-generic-loaders/libevas-generic-loaders.hash deleted file mode 100644 index 32723ba9b3..0000000000 --- a/package/libevas-generic-loaders/libevas-generic-loaders.hash +++ /dev/null @@ -1,2 +0,0 @@ -# From https://download.enlightenment.org/rel/libs/evas_generic_loaders/evas_generic_loaders-1.15.0.tar.xz.sha256 -sha256 1e539e4d4d4e1590345caeb7fdd84f47ec7cd63bb76b6b7107a87420a401fd7f evas_generic_loaders-1.15.0.tar.xz diff --git a/package/libevas-generic-loaders/libevas-generic-loaders.mk b/package/libevas-generic-loaders/libevas-generic-loaders.mk deleted file mode 100644 index ff8ea372ad..0000000000 --- a/package/libevas-generic-loaders/libevas-generic-loaders.mk +++ /dev/null @@ -1,38 +0,0 @@ -################################################################################ -# -# libevas-generic-loaders -# -################################################################################ - -LIBEVAS_GENERIC_LOADERS_VERSION = 1.15.0 -LIBEVAS_GENERIC_LOADERS_SOURCE = evas_generic_loaders-$(LIBEVAS_GENERIC_LOADERS_VERSION).tar.xz -LIBEVAS_GENERIC_LOADERS_SITE = http://download.enlightenment.org/rel/libs/evas_generic_loaders -LIBEVAS_GENERIC_LOADERS_LICENSE = GPLv2 -LIBEVAS_GENERIC_LOADERS_LICENSE_FILES = COPYING - -LIBEVAS_GENERIC_LOADERS_INSTALL_STAGING = YES - -LIBEVAS_GENERIC_LOADERS_DEPENDENCIES = host-pkgconf efl zlib - -# poppler >= 0.32 is not supported by the current version of -# libevas-generic-loaders. -LIBEVAS_GENERIC_LOADERS_CONF_OPTS += \ - --disable-poppler \ - --disable-spectre \ - --disable-gstreamer - -ifeq ($(BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_LIBRAW),y) -LIBEVAS_GENERIC_LOADERS_DEPENDENCIES += libraw -LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --enable-libraw -else -LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --disable-libraw -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG),y) -LIBEVAS_GENERIC_LOADERS_DEPENDENCIES += librsvg cairo -LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --enable-svg -else -LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --disable-svg -endif - -$(eval $(autotools-package)) diff --git a/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch b/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch index 405dff0e5a..6a829175c3 100644 --- a/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch +++ b/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch @@ -1,18 +1,18 @@ -From 95527e43845a5063a6125d7779a30d44c3b437ac Mon Sep 17 00:00:00 2001 +From fe965061b4306e3ca811ff86dc1ca29f7db9af18 Mon Sep 17 00:00:00 2001 From: Peter Seiderer Date: Sun, 11 Oct 2015 13:33:19 +0200 Subject: [PATCH] configure: add '--disable-runtime-tests' option Signed-off-by: Peter Seiderer --- - configure.ac | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) + configure.ac | 15 +++++++++++---- + 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac -index 54a2510..286737b 100644 +index c1a9111..8fe7b8b 100644 --- a/configure.ac +++ b/configure.ac -@@ -74,7 +74,14 @@ else +@@ -76,13 +76,20 @@ else AC_MSG_WARN([check not found - skipping building unit tests]) fi AM_CONDITIONAL(HAVE_VALGRIND, [test "x$VALGRIND" != "x"]) @@ -27,16 +27,25 @@ index 54a2510..286737b 100644 +AM_CONDITIONAL(ENABLE_RUNTIME_TESTS, [test "x${enable_runtime_tests}x$HAVE_CHECK" = "xyesxyes"]) AM_CONDITIONAL(ENABLE_STATIC_LINK_TEST, [test "x$enable_static" = "xyes"]) + AC_ARG_ENABLE([test-run], + AS_HELP_STRING([--enable-test-run], [For internal use only]), + [run_tests="$enableval"], [run_tests="yes"]) +-AM_CONDITIONAL(RUN_TESTS, [test "x$run_tests" = "xyes"]) ++AM_CONDITIONAL(RUN_TESTS, [test "x${enable_runtime_tests}x$run_tests" = "xyesxyes"]) + with_cflags="" -@@ -159,7 +166,7 @@ AC_MSG_RESULT([ + if test "x$GCC" = "xyes"; then +@@ -167,8 +174,8 @@ AC_MSG_RESULT([ Libdir ${libdir} Build documentation ${have_doxygen} - Enable unit-tests ${HAVE_CHECK} +- Run unit-tests ${run_tests} + Enable unit-tests ${HAVE_CHECK} (runtime-tests: ${enable_runtime_tests}) ++ Run unit-tests ${run_tests} (runtime-tests: ${enable_runtime_tests}) Enable profiling ${enable_gcov} Static library symbol check ${static_symbol_leaks_test} ]) -- -2.1.4 +2.11.0 diff --git a/package/libevdev/libevdev.hash b/package/libevdev/libevdev.hash index 20ca4fbecb..613866cfb6 100644 --- a/package/libevdev/libevdev.hash +++ b/package/libevdev/libevdev.hash @@ -1,2 +1,2 @@ -# Hash from http://lists.freedesktop.org/archives/input-tools/2016-January/001240.html -sha256 7b2ae1a0c7f9f7a96198ddc8fd167f090f233d6cbd8168b847e4f968445132d3 libevdev-1.4.6.tar.xz +# Hash from https://lists.freedesktop.org/archives/input-tools/2017-January/001380.html +sha256 ecec7e9d66b1d3692f10b3b20aa97fb25e874a784c5552a7b1698091fef5a688 libevdev-1.5.6.tar.xz diff --git a/package/libevdev/libevdev.mk b/package/libevdev/libevdev.mk index 5513191a06..01ee7fbaae 100644 --- a/package/libevdev/libevdev.mk +++ b/package/libevdev/libevdev.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBEVDEV_VERSION = 1.4.6 +LIBEVDEV_VERSION = 1.5.6 LIBEVDEV_SITE = http://www.freedesktop.org/software/libevdev LIBEVDEV_SOURCE = libevdev-$(LIBEVDEV_VERSION).tar.xz LIBEVDEV_LICENSE = X11 diff --git a/package/libevent/0001-Disable-building-test-programs.patch b/package/libevent/0001-Disable-building-test-programs.patch index eb1acfd676..a1ce774640 100644 --- a/package/libevent/0001-Disable-building-test-programs.patch +++ b/package/libevent/0001-Disable-building-test-programs.patch @@ -8,6 +8,8 @@ Moreover, these programs use fork() function that is not available on MMU-less architectures. Signed-off-by: Gilles Talis +[aduskett@gmail.com: Updated for 2.1.8] +Signed-off-by: Adam Duskett --- Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -16,12 +18,11 @@ diff --git a/Makefile.am b/Makefile.am index 42879a3..dc90359 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -126,7 +126,7 @@ else - noinst_LTLIBRARIES = $(LIBEVENT_LIBS_LA) - endif - --SUBDIRS = . include sample test -+SUBDIRS = . include sample +@@ -144,7 +144,6 @@ + BUILT_SOURCES = + include include/include.am + include sample/include.am +-include test/include.am if BUILD_WIN32 diff --git a/package/libevent/libevent.hash b/package/libevent/libevent.hash index 633cf5b8fa..21381c87b3 100644 --- a/package/libevent/libevent.hash +++ b/package/libevent/libevent.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/levent/files/libevent/libevent-2.0/ -md5 c4c56f986aa985677ca1db89630a2e11 libevent-2.0.22-stable.tar.gz -sha1 a586882bc93a208318c70fc7077ed8fca9862864 libevent-2.0.22-stable.tar.gz +# locally computed +md5 f3eeaed018542963b7d2416ef1135ecc libevent-2.1.8-stable.tar.gz +sha1 2a1b8bb7a262d3fd0ed6a080a20991a6eed675ec libevent-2.1.8-stable.tar.gz diff --git a/package/libevent/libevent.mk b/package/libevent/libevent.mk index 820beea9c5..5458ce316a 100644 --- a/package/libevent/libevent.mk +++ b/package/libevent/libevent.mk @@ -4,13 +4,14 @@ # ################################################################################ -LIBEVENT_VERSION = 2.0.22-stable +LIBEVENT_VERSION = 2.1.8-stable LIBEVENT_SITE = https://github.com/libevent/libevent/releases/download/release-$(LIBEVENT_VERSION) LIBEVENT_INSTALL_STAGING = YES LIBEVENT_LICENSE = BSD-3c, OpenBSD LIBEVENT_LICENSE_FILES = LICENSE # For 0001-Disable-building-test-programs.patch LIBEVENT_AUTORECONF = YES +LIBEVENT_CONF_OPTS = --disable-samples define LIBEVENT_REMOVE_PYSCRIPT rm $(TARGET_DIR)/usr/bin/event_rpcgen.py @@ -23,13 +24,8 @@ LIBEVENT_POST_INSTALL_TARGET_HOOKS += LIBEVENT_REMOVE_PYSCRIPT endif ifeq ($(BR2_PACKAGE_OPENSSL),y) -LIBEVENT_DEPENDENCIES += openssl +LIBEVENT_DEPENDENCIES += host-pkgconf openssl LIBEVENT_CONF_OPTS += --enable-openssl -# openssl needs zlib but configure forgets to link against it causing -# openssl detection to fail -ifeq ($(BR2_STATIC_LIBS),y) -LIBEVENT_CONF_ENV += OPENSSL_LIBADD='-lz' -endif else LIBEVENT_CONF_OPTS += --disable-openssl endif diff --git a/package/libfastjson/0001-m4-fix-detection-of-atomics.patch b/package/libfastjson/0001-m4-fix-detection-of-atomics.patch new file mode 100644 index 0000000000..1fdbf1923f --- /dev/null +++ b/package/libfastjson/0001-m4-fix-detection-of-atomics.patch @@ -0,0 +1,86 @@ +From df087711cf7be55268a55e7820f4d928cb34c078 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sat, 9 Jul 2016 20:44:36 +0200 +Subject: [PATCH] m4: fix detection of atomics + +In cross-compilation, it is impossible to run code at configure time to +detect the target specifics. + +As such, AC_TRY_RUN fails miserably to detect reliably that atomic +intrisics are present in a toolchain, and decides they are not just +because this is cross-compilation. + +Instead of AC_TRY_RUN, use AC_LINK_IFELSE that does not need to actually +run code, since all we're interested in is whether the intrisics are +present (or not). Fix both the 32- and 64-bit variants, even if the +latter is not used currently. + +Fixes build failures detected by the Buildroot autobuilders, like: + http://autobuild.buildroot.org/results/23a/23ac0e742ed3a70ae4d038f8c9eadc23e708f671/build-end.log + http://autobuild.buildroot.org/results/192/1923d0b570adba494f83747a9610ea6ec35f5223/build-end.log + +and many other cases, espcially on architectures where such intrisics are +present, but where the toolchain does not have threads (and anyway, it +is much more efficient to use the intrisics rather than use mutexes). + +Signed-off-by: "Yann E. MORIN" +--- +Patch sent upstream: + https://github.com/rsyslog/libfastjson/pull/109 + +--- + m4/atomic_operations.m4 | 6 ++---- + m4/atomic_operations_64bit.m4 | 6 ++---- + 2 files changed, 4 insertions(+), 8 deletions(-) + +diff --git a/m4/atomic_operations.m4 b/m4/atomic_operations.m4 +index ad0ee60..7d2bca6 100644 +--- a/m4/atomic_operations.m4 ++++ b/m4/atomic_operations.m4 +@@ -9,9 +9,7 @@ + # + AC_DEFUN([RS_ATOMIC_OPERATIONS], + [AC_CACHE_CHECK([whether the compiler provides atomic builtins], [ap_cv_atomic_builtins], +-[AC_TRY_RUN([ +-int main() +-{ ++[AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[ + unsigned long val = 1010, tmp, *mem = &val; + + if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020) +@@ -44,7 +42,7 @@ int main() + return 1; + + return 0; +-}], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no], [ap_cv_atomic_builtins=no])]) ++]])], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no])]) + + if test "$ap_cv_atomic_builtins" = "yes"; then + AC_DEFINE(HAVE_ATOMIC_BUILTINS, 1, [Define if compiler provides atomic builtins]) +diff --git a/m4/atomic_operations_64bit.m4 b/m4/atomic_operations_64bit.m4 +index 9fbef0a..d01a977 100644 +--- a/m4/atomic_operations_64bit.m4 ++++ b/m4/atomic_operations_64bit.m4 +@@ -9,9 +9,7 @@ + # + AC_DEFUN([RS_ATOMIC_OPERATIONS_64BIT], + [AC_CACHE_CHECK([whether the compiler provides atomic builtins for 64 bit data types], [ap_cv_atomic_builtins_64], +-[AC_TRY_RUN([ +-int main() +-{ ++[AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[ + unsigned long long val = 1010, tmp, *mem = &val; + + if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020) +@@ -44,7 +42,7 @@ int main() + return 1; + + return 0; +-}], [ap_cv_atomic_builtins_64=yes], [ap_cv_atomic_builtins_64=no], [ap_cv_atomic_builtins_64=no])]) ++]])], [ap_cv_atomic_builtins_64=yes], [ap_cv_atomic_builtins_64=no])]) + + if test "$ap_cv_atomic_builtins_64" = "yes"; then + AC_DEFINE(HAVE_ATOMIC_BUILTINS64, 1, [Define if compiler provides 64 bit atomic builtins]) +-- +2.7.4 + diff --git a/package/libfastjson/Config.in b/package/libfastjson/Config.in new file mode 100644 index 0000000000..fbc9b1d68a --- /dev/null +++ b/package/libfastjson/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_LIBFASTJSON + bool "libfastjson" + # uses the __sync_*_4 intrisics, or pthreads to emulate atomicity + depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_THREADS + help + Libfastjson - A fast json library for C + + Libfastjson is a fork from json-c. The aim of this project + is not to provide a slightly modified clone of json-c. + Its aim is to provide: + + - a small library with essential json handling functions + - sufficiently good json support (not 100% standards compliant) + - be very fast in processing + + https://github.com/rsyslog/libfastjson/ diff --git a/package/libfastjson/libfastjson.hash b/package/libfastjson/libfastjson.hash new file mode 100644 index 0000000000..427db9c702 --- /dev/null +++ b/package/libfastjson/libfastjson.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 03ef63dcc88417e71c19ce4436804159e3397e3a20d3529efef6a43c3bef5c8d libfastjson-v0.99.4.tar.gz diff --git a/package/libfastjson/libfastjson.mk b/package/libfastjson/libfastjson.mk new file mode 100644 index 0000000000..b1cdd6a158 --- /dev/null +++ b/package/libfastjson/libfastjson.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# libfastjson +# +################################################################################ + +LIBFASTJSON_VERSION = v0.99.4 +LIBFASTJSON_SITE = $(call github,rsyslog,libfastjson,$(LIBFASTJSON_VERSION)) +LIBFASTJSON_INSTALL_STAGING = YES +# From git +LIBFASTJSON_AUTORECONF = YES +LIBFASTJSON_LICENSE = MIT +LIBFASTJSON_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/libffi/0004-m68k-support-ISA-A-Coldfire-CPUs.patch b/package/libffi/0004-m68k-support-ISA-A-Coldfire-CPUs.patch new file mode 100644 index 0000000000..9308c8951a --- /dev/null +++ b/package/libffi/0004-m68k-support-ISA-A-Coldfire-CPUs.patch @@ -0,0 +1,77 @@ +From 733bb188b898385cfb5ad28cc0e3ecaf38237350 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Sat, 20 Aug 2016 00:52:19 +0200 +Subject: [PATCH] m68k: support ISA-A Coldfire CPUs + +Fix compilation for m68k/coldfire CPUs like mcf5208. + +Signed-off-by: Waldemar Brodkorb +Signed-off-by: Thorsten Glaser +--- + src/m68k/sysv.S | 29 ++++++++++++++++++++++++++++- + 1 file changed, 28 insertions(+), 1 deletion(-) + +diff --git a/src/m68k/sysv.S b/src/m68k/sysv.S +index ec2b14f..ea40f11 100644 +--- a/src/m68k/sysv.S ++++ b/src/m68k/sysv.S +@@ -3,7 +3,7 @@ + sysv.S - Copyright (c) 2012 Alan Hourihane + Copyright (c) 1998, 2012 Andreas Schwab + Copyright (c) 2008 Red Hat, Inc. +- Copyright (c) 2012 Thorsten Glaser ++ Copyright (c) 2012, 2016 Thorsten Glaser + + m68k Foreign Function Interface + +@@ -72,6 +72,15 @@ CALLFUNC(ffi_call_SYSV): + pea 4(%sp) + #if !defined __PIC__ + jsr CALLFUNC(ffi_prep_args) ++#elif defined(__uClinux__) && defined(__ID_SHARED_LIBRARY__) ++ move.l _current_shared_library_a5_offset_(%a5),%a0 ++ move.l CALLFUNC(ffi_prep_args@GOT)(%a0),%a0 ++ jsr (%a0) ++#elif defined(__mcoldfire__) && !defined(__mcfisab__) && !defined(__mcfisac__) ++ move.l #_GLOBAL_OFFSET_TABLE_@GOTPC,%a0 ++ lea (-6,%pc,%a0),%a0 ++ move.l CALLFUNC(ffi_prep_args@GOT)(%a0),%a0 ++ jsr (%a0) + #else + bsr.l CALLFUNC(ffi_prep_args@PLTPC) + #endif +@@ -215,6 +224,15 @@ CALLFUNC(ffi_closure_SYSV): + move.l %a0,-(%sp) + #if !defined __PIC__ + jsr CALLFUNC(ffi_closure_SYSV_inner) ++#elif defined(__uClinux__) && defined(__ID_SHARED_LIBRARY__) ++ move.l _current_shared_library_a5_offset_(%a5),%a0 ++ move.l CALLFUNC(ffi_closure_SYSV_inner@GOT)(%a0),%a0 ++ jsr (%a0) ++#elif defined(__mcoldfire__) && !defined(__mcfisab__) && !defined(__mcfisac__) ++ move.l #_GLOBAL_OFFSET_TABLE_@GOTPC,%a0 ++ lea (-6,%pc,%a0),%a0 ++ move.l CALLFUNC(ffi_closure_SYSV_inner@GOT)(%a0),%a0 ++ jsr (%a0) + #else + bsr.l CALLFUNC(ffi_closure_SYSV_inner@PLTPC) + #endif +@@ -317,6 +335,15 @@ CALLFUNC(ffi_closure_struct_SYSV): + move.l %a0,-(%sp) + #if !defined __PIC__ + jsr CALLFUNC(ffi_closure_SYSV_inner) ++#elif defined(__uClinux__) && defined(__ID_SHARED_LIBRARY__) ++ move.l _current_shared_library_a5_offset_(%a5),%a0 ++ move.l CALLFUNC(ffi_closure_SYSV_inner@GOT)(%a0),%a0 ++ jsr (%a0) ++#elif defined(__mcoldfire__) && !defined(__mcfisab__) && !defined(__mcfisac__) ++ move.l #_GLOBAL_OFFSET_TABLE_@GOTPC,%a0 ++ lea (-6,%pc,%a0),%a0 ++ move.l CALLFUNC(ffi_closure_SYSV_inner@GOT)(%a0),%a0 ++ jsr (%a0) + #else + bsr.l CALLFUNC(ffi_closure_SYSV_inner@PLTPC) + #endif +-- +1.7.10.4 + diff --git a/package/libfm-extra/Config.in b/package/libfm-extra/Config.in index f0e0b631d7..79465f9750 100644 --- a/package/libfm-extra/Config.in +++ b/package/libfm-extra/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_LIBFM_EXTRA depends on BR2_USE_MMU # libglib2 help The libfm-extra package contains a library and other files - required by menu-cache-gen libexec of menu-cache-1.0.0 + required by menu-cache-gen libexec of menu-cache http://wiki.lxde.org/en/Libfm diff --git a/package/libfm-extra/libfm-extra.hash b/package/libfm-extra/libfm-extra.hash index 5311deccfa..8a78adebb4 100644 --- a/package/libfm-extra/libfm-extra.hash +++ b/package/libfm-extra/libfm-extra.hash @@ -1,2 +1,3 @@ -# From http://blog.lxde.org/?p=1280 -sha1 c3f2f34086761d89d6aba549883610084ba00750 libfm-1.2.3.tar.xz +# From https://sourceforge.net/projects/pcmanfm/files/PCManFM%20%2B%20Libfm%20%28tarball%20release%29/LibFM/ +md5 74997d75e7e87dc73398746fd373bf52 libfm-1.2.4.tar.xz +sha1 2f8183389c8e74edb15c6c8ab260df5dd39f3b2d libfm-1.2.4.tar.xz diff --git a/package/libfm-extra/libfm-extra.mk b/package/libfm-extra/libfm-extra.mk index f5b1928868..0e7a7dc0a6 100644 --- a/package/libfm-extra/libfm-extra.mk +++ b/package/libfm-extra/libfm-extra.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFM_EXTRA_VERSION = 1.2.3 +LIBFM_EXTRA_VERSION = 1.2.4 LIBFM_EXTRA_SOURCE = libfm-$(LIBFM_EXTRA_VERSION).tar.xz LIBFM_EXTRA_SITE = http://sourceforge.net/projects/pcmanfm/files LIBFM_EXTRA_DEPENDENCIES = libglib2 host-intltool diff --git a/package/libfm/Config.in b/package/libfm/Config.in index 603b4d51ee..0463d1c5d7 100644 --- a/package/libfm/Config.in +++ b/package/libfm/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBFM bool "libfm" select BR2_PACKAGE_MENU_CACHE select BR2_PACKAGE_LIBGLIB2 - select BR2_PACKAGE_LIBGTK2 + select BR2_PACKAGE_LIBGTK2 if !BR2_PACKAGE_LIBGTK3_X11 select BR2_PACKAGE_CAIRO depends on BR2_PACKAGE_XORG7 depends on BR2_USE_WCHAR # libglib2 diff --git a/package/libfm/libfm.hash b/package/libfm/libfm.hash index 5311deccfa..8a78adebb4 100644 --- a/package/libfm/libfm.hash +++ b/package/libfm/libfm.hash @@ -1,2 +1,3 @@ -# From http://blog.lxde.org/?p=1280 -sha1 c3f2f34086761d89d6aba549883610084ba00750 libfm-1.2.3.tar.xz +# From https://sourceforge.net/projects/pcmanfm/files/PCManFM%20%2B%20Libfm%20%28tarball%20release%29/LibFM/ +md5 74997d75e7e87dc73398746fd373bf52 libfm-1.2.4.tar.xz +sha1 2f8183389c8e74edb15c6c8ab260df5dd39f3b2d libfm-1.2.4.tar.xz diff --git a/package/libfm/libfm.mk b/package/libfm/libfm.mk index e8410d0288..633a844d8d 100644 --- a/package/libfm/libfm.mk +++ b/package/libfm/libfm.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBFM_VERSION = 1.2.3 +LIBFM_VERSION = 1.2.4 LIBFM_SOURCE = libfm-$(LIBFM_VERSION).tar.xz LIBFM_SITE = http://sourceforge.net/projects/pcmanfm/files -LIBFM_DEPENDENCIES = menu-cache libgtk2 libglib2 cairo +LIBFM_DEPENDENCIES = menu-cache libglib2 cairo LIBFM_LICENSE = GPLv2+, LGPLv2.1+ LIBFM_LICENSE_FILES = COPYING src/extra/fm-xml-file.c LIBFM_INSTALL_STAGING = YES @@ -19,4 +19,12 @@ else LIBFM_CONF_OPTS += --disable-exif endif +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +LIBFM_CONF_OPTS += --with-gtk=3 +LIBFM_DEPENDENCIES += libgtk3 +else +LIBFM_CONF_OPTS += --with-gtk=2 +LIBFM_DEPENDENCIES += libgtk2 +endif + $(eval $(autotools-package)) diff --git a/package/libfreeimage/0004-fix-gcc-6.patch b/package/libfreeimage/0004-fix-gcc-6.patch new file mode 100644 index 0000000000..0f10dec715 --- /dev/null +++ b/package/libfreeimage/0004-fix-gcc-6.patch @@ -0,0 +1,31 @@ +libraw/dc_raw: fix gcc-6 failures + +With gcc-6, it is no longer allowed to narrow the type of constants in +a constant array declaration. + +Fixes: + http://autobuild.buildroot.org/results/081/0811531872f69f9febbdc482dfbdd7fb5c35d1c8/build-end.log + +Signed-off-by: "Yann E. MORIN" + +diff -durN a/Source/LibRawLite/internal/dcraw_common.cpp b/Source/LibRawLite/internal/dcraw_common.cpp +--- a/Source/LibRawLite/internal/dcraw_common.cpp ++++ b/Source/LibRawLite/internal/dcraw_common.cpp +@@ -2479,7 +2479,7 @@ + + void CLASS kodak_radc_load_raw() + { +- static const char src[] = { ++ static const signed char src[] = { + 1,1, 2,3, 3,4, 4,2, 5,7, 6,5, 7,6, 7,8, + 1,0, 2,1, 3,3, 4,4, 5,2, 6,7, 7,6, 8,5, 8,8, + 2,1, 2,3, 3,0, 3,2, 3,4, 4,6, 5,5, 6,7, 6,8, +@@ -4519,7 +4519,7 @@ + */ + void CLASS vng_interpolate() + { +- static const signed char *cp, terms[] = { ++ static const int *cp, terms[] = { + -2,-2,+0,-1,0,0x01, -2,-2,+0,+0,1,0x01, -2,-1,-1,+0,0,0x01, + -2,-1,+0,-1,0,0x02, -2,-1,+0,+0,0,0x03, -2,-1,+0,+1,1,0x01, + -2,+0,+0,-1,0,0x06, -2,+0,+0,+0,1,0x02, -2,+0,+0,+1,0,0x03, diff --git a/package/libfreeimage/libfreeimage.mk b/package/libfreeimage/libfreeimage.mk index 2849e94f22..fe79689fdd 100644 --- a/package/libfreeimage/libfreeimage.mk +++ b/package/libfreeimage/libfreeimage.mk @@ -22,11 +22,11 @@ define LIBFREEIMAGE_BUILD_CMDS endef define LIBFREEIMAGE_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define LIBFREEIMAGE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/libfribidi/libfribidi.mk b/package/libfribidi/libfribidi.mk index 4e82a5e4df..751a1b6066 100644 --- a/package/libfribidi/libfribidi.mk +++ b/package/libfribidi/libfribidi.mk @@ -14,11 +14,9 @@ LIBFRIBIDI_INSTALL_STAGING = YES # Run autoreconf to regenerate ltmain.sh. LIBFRIBIDI_AUTORECONF = YES LIBFRIBIDI_DEPENDENCIES = host-pkgconf - -ifeq ($(BR2_PACKAGE_LIBGLIB2),y) -LIBFRIBIDI_DEPENDENCIES += libglib2 -else -LIBFRIBIDI_CONF_OPTS += --with-glib=no -endif +# libglib2 dependency causes a build failure, and this optional +# dependency is going to be removed upstream, see +# https://github.com/behdad/fribidi/pull/14 +LIBFRIBIDI_CONF_OPTS = --with-glib=no $(eval $(autotools-package)) diff --git a/package/libfslcodec/Config.in b/package/libfslcodec/Config.in deleted file mode 100644 index d2007fe1ea..0000000000 --- a/package/libfslcodec/Config.in +++ /dev/null @@ -1,13 +0,0 @@ -config BR2_PACKAGE_LIBFSLCODEC - bool "libfslcodec" - depends on BR2_arm # Only relevant for i.MX - depends on BR2_TOOLCHAIN_USES_GLIBC # prebuilt binaries - help - Binary codec libraries for the Freescale i.MX SoCs. - - This library is provided by Freescale as-is and doesn't have - an upstream. - -comment "libfslcodec needs an (e)glibc toolchain" - depends on BR2_arm - depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libfslcodec/libfslcodec.hash b/package/libfslcodec/libfslcodec.hash deleted file mode 100644 index fd934f7506..0000000000 --- a/package/libfslcodec/libfslcodec.hash +++ /dev/null @@ -1,2 +0,0 @@ -# locally computed -sha256 544ffc5989bce18ca50c7a826cc03370b1cf8455335e4291ef0c0779b4c33de0 libfslcodec-4.0.8.bin diff --git a/package/libfslcodec/libfslcodec.mk b/package/libfslcodec/libfslcodec.mk deleted file mode 100644 index 502390fb99..0000000000 --- a/package/libfslcodec/libfslcodec.mk +++ /dev/null @@ -1,23 +0,0 @@ -################################################################################ -# -# libfslcodec -# -################################################################################ - -LIBFSLCODEC_VERSION = 4.0.8 -LIBFSLCODEC_SITE = $(FREESCALE_IMX_SITE) -LIBFSLCODEC_SOURCE = libfslcodec-$(LIBFSLCODEC_VERSION).bin -LIBFSLCODEC_INSTALL_STAGING = YES - -LIBFSLCODEC_LICENSE = Freescale Semiconductor Software License Agreement, BSD-3c (flac, ogg headers) -LIBFSLCODEC_LICENSE_FILES = EULA COPYING -LIBFSLCODEC_REDISTRIBUTE = NO - -define LIBFSLCODEC_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(LIBFSLCODEC_SOURCE)) -endef - -# FIXME The Makefile installs both the arm9 and arm11 versions of the -# libraries, but we only need one of them. - -$(eval $(autotools-package)) diff --git a/package/libfslparser/Config.in b/package/libfslparser/Config.in deleted file mode 100644 index e3ab980ec9..0000000000 --- a/package/libfslparser/Config.in +++ /dev/null @@ -1,8 +0,0 @@ -config BR2_PACKAGE_LIBFSLPARSER - bool "libfslparser" - depends on BR2_arm # Only relevant for i.MX - help - Binary parser libraries for the Freescale i.MX SoCs. - - This library is provided by Freescale as-is and doesn't have - an upstream. diff --git a/package/libfslparser/libfslparser.hash b/package/libfslparser/libfslparser.hash deleted file mode 100644 index c49345fa09..0000000000 --- a/package/libfslparser/libfslparser.hash +++ /dev/null @@ -1,2 +0,0 @@ -# locally computed -sha256 a04621783c84a9776216caff9563c7f840fddd584b0b2d27738d6ca6d2c77f32 libfslparser-4.0.8.bin diff --git a/package/libfslparser/libfslparser.mk b/package/libfslparser/libfslparser.mk deleted file mode 100644 index 44e6039c6a..0000000000 --- a/package/libfslparser/libfslparser.mk +++ /dev/null @@ -1,23 +0,0 @@ -################################################################################ -# -# libfslparser -# -################################################################################ - -LIBFSLPARSER_VERSION = 4.0.8 -LIBFSLPARSER_SITE = $(FREESCALE_IMX_SITE) -LIBFSLPARSER_SOURCE = libfslparser-$(LIBFSLPARSER_VERSION).bin -LIBFSLPARSER_INSTALL_STAGING = YES - -LIBFSLPARSER_LICENSE = Freescale Semiconductor Software License Agreement -LIBFSLPARSER_LICENSE_FILES = EULA COPYING -LIBFSLPARSER_REDISTRIBUTE = NO - -define LIBFSLPARSER_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(LIBFSLPARSER_SOURCE)) -endef - -# The Makefile installs several versions of the libraries, but we only -# need one of them, depending on the platform. - -$(eval $(autotools-package)) diff --git a/package/libfslvpuwrap/libfslvpuwrap.hash b/package/libfslvpuwrap/libfslvpuwrap.hash deleted file mode 100644 index e98707731f..0000000000 --- a/package/libfslvpuwrap/libfslvpuwrap.hash +++ /dev/null @@ -1,2 +0,0 @@ -# locally computed -sha256 0717faccb5413dc95ce9ad919400095ecf722320478c924366793a6cc450ae16 libfslvpuwrap-1.0.62.bin diff --git a/package/libfslvpuwrap/libfslvpuwrap.mk b/package/libfslvpuwrap/libfslvpuwrap.mk deleted file mode 100644 index 12a4e864c8..0000000000 --- a/package/libfslvpuwrap/libfslvpuwrap.mk +++ /dev/null @@ -1,21 +0,0 @@ -################################################################################ -# -# libfslvpuwrap -# -################################################################################ - -LIBFSLVPUWRAP_VERSION = 1.0.62 -LIBFSLVPUWRAP_SITE = $(FREESCALE_IMX_SITE) -LIBFSLVPUWRAP_SOURCE = libfslvpuwrap-$(LIBFSLVPUWRAP_VERSION).bin -LIBFSLVPUWRAP_DEPENDENCIES = imx-vpu -LIBFSLVPUWRAP_INSTALL_STAGING = YES - -LIBFSLVPUWRAP_LICENSE = Freescale Semiconductor Software License Agreement -LIBFSLVPUWRAP_LICENSE_FILES = EULA COPYING -LIBFSLVPUWRAP_REDISTRIBUTE = NO - -define LIBFSLVPUWRAP_EXTRACT_CMDS - $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(LIBFSLVPUWRAP_SOURCE)) -endef - -$(eval $(autotools-package)) diff --git a/package/libftdi/Config.in b/package/libftdi/Config.in index 8e02cb914c..beb42d34c5 100644 --- a/package/libftdi/Config.in +++ b/package/libftdi/Config.in @@ -13,14 +13,12 @@ if BR2_PACKAGE_LIBFTDI config BR2_PACKAGE_LIBTFDI_CPP bool "C++ bindings" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on BR2_USE_WCHAR select BR2_PACKAGE_BOOST help C++ bindings for libftdi comment "libftdi C++ bindings need a toolchain w/ wchar, C++" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP endif # BR2_PACKAGE_LIBFTDI diff --git a/package/libftdi/libftdi.mk b/package/libftdi/libftdi.mk index 28f20e3547..c1952ac68b 100644 --- a/package/libftdi/libftdi.mk +++ b/package/libftdi/libftdi.mk @@ -7,18 +7,19 @@ LIBFTDI_VERSION = 0.20 LIBFTDI_SITE = http://www.intra2net.com/en/developer/libftdi/download LIBFTDI_DEPENDENCIES = libusb-compat libusb +HOST_LIBFTDI_DEPENDENCIES = host-libusb-compat host-libusb LIBFTDI_INSTALL_STAGING = YES LIBFTDI_CONFIG_SCRIPTS = libftdi-config LIBFTDI_AUTORECONF = YES -LIBFDTI_CONF_OPTS = --without-examples +LIBFTDI_CONF_OPTS = --without-examples # configure detect it automaticaly so we need to force it ifeq ($(BR2_PACKAGE_LIBTFDI_CPP),y) LIBFTDI_DEPENDENCIES += boost -LIBFDTI_CONF_OPTS += --enable-libftdipp +LIBFTDI_CONF_OPTS += --enable-libftdipp else -LIBFDTI_CONF_OPTS += --disable-libftdipp +LIBFTDI_CONF_OPTS += --disable-libftdipp endif $(eval $(autotools-package)) diff --git a/package/libftdi1/Config.in b/package/libftdi1/Config.in index 61d4c1cf20..aca797b62a 100644 --- a/package/libftdi1/Config.in +++ b/package/libftdi1/Config.in @@ -14,14 +14,12 @@ config BR2_PACKAGE_LIBFTDI1_LIBFTDIPP1 select BR2_PACKAGE_BOOST depends on BR2_INSTALL_LIBSTDCPP # boost depends on BR2_TOOLCHAIN_HAS_THREADS # boost - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on BR2_USE_WCHAR # boost help C++ bindings for libftdi comment "libftdipp1 needs a toolchain w/ C++, wchar" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS config BR2_PACKAGE_LIBFTDI1_PYTHON_BINDINGS bool "python bindings" diff --git a/package/libftdi1/libftdi1.hash b/package/libftdi1/libftdi1.hash index e53bc8f7ed..0a89182449 100644 --- a/package/libftdi1/libftdi1.hash +++ b/package/libftdi1/libftdi1.hash @@ -1,2 +1,2 @@ # Locally computed (after checking the signature from http://www.intra2net.com/en/developer/libftdi/download.php) -sha256 a6ea795c829219015eb372b03008351cee3fb39f684bff3bf8a4620b558488d6 libftdi1-1.2.tar.bz2 +sha256 9a8c95c94bfbcf36584a0a58a6e2003d9b133213d9202b76aec76302ffaa81f4 libftdi1-1.3.tar.bz2 diff --git a/package/libftdi1/libftdi1.mk b/package/libftdi1/libftdi1.mk index e77f37bb58..26aa293b33 100644 --- a/package/libftdi1/libftdi1.mk +++ b/package/libftdi1/libftdi1.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFTDI1_VERSION = 1.2 +LIBFTDI1_VERSION = 1.3 LIBFTDI1_SOURCE = libftdi1-$(LIBFTDI1_VERSION).tar.bz2 LIBFTDI1_SITE = http://www.intra2net.com/en/developer/libftdi/download LIBFTDI1_INSTALL_STAGING = YES diff --git a/package/libfuse/libfuse.hash b/package/libfuse/libfuse.hash index d00d723083..60bdf63990 100644 --- a/package/libfuse/libfuse.hash +++ b/package/libfuse/libfuse.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 0cb48bbc7106632d15a0c6bb582496c9884b869e329428891fe075a9e916f16b fuse-2.9.6.tar.gz +sha256 832432d1ad4f833c20e13b57cf40ce5277a9d33e483205fc63c78111b3358874 fuse-2.9.7.tar.gz diff --git a/package/libfuse/libfuse.mk b/package/libfuse/libfuse.mk index 1709b56330..57aabcd97a 100644 --- a/package/libfuse/libfuse.mk +++ b/package/libfuse/libfuse.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFUSE_VERSION = 2.9.6 +LIBFUSE_VERSION = 2.9.7 LIBFUSE_SOURCE = fuse-$(LIBFUSE_VERSION).tar.gz LIBFUSE_SITE = https://github.com/libfuse/libfuse/releases/download/fuse-$(LIBFUSE_VERSION) LIBFUSE_LICENSE = GPLv2, LGPLv2.1 diff --git a/package/libgail/0001-Relax-X11-dependencies.patch b/package/libgail/0001-Relax-X11-dependencies.patch deleted file mode 100644 index 97e56560d6..0000000000 --- a/package/libgail/0001-Relax-X11-dependencies.patch +++ /dev/null @@ -1,42 +0,0 @@ -From cca72c48b5643fa62e1d55b7b181e147f5ba7fe9 Mon Sep 17 00:00:00 2001 -From: Lionel Landwerlin -Date: Sun, 28 Mar 2010 21:47:38 +0200 -Subject: [PATCH] Relax X11 dependency - -Signed-off-by: Lionel Landwerlin ---- - configure.in | 4 +++- - gail/gailwindow.c | 2 +- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/configure.in b/configure.in -index 3801655..abaf417 100644 ---- a/configure.in -+++ b/configure.in -@@ -86,7 +86,9 @@ GTK_REQUIRED_VERSION=2.9.4 - PKG_CHECK_MODULES(DEP, $ATK_PACKAGES >= $ATK_REQUIRED_VERSION \ - $GTK_PACKAGES >= $GTK_REQUIRED_VERSION) - --if test "$gail_native_win32" != "yes"; then -+AC_ARG_ENABLE(x, [ --disable-x disable x11 backend ],x11_backend=no,x11_backend=yes) -+ -+if test "$gail_native_win32" != "yes" -a "$x11_backend" != "no"; then - - PKG_CHECK_MODULES(X, x11, :, [ - # pkg-config modules not found (only present since X11R7 aka Xorg); use -diff --git a/gail/gailwindow.c b/gail/gailwindow.c -index 616b25e..add454b 100644 ---- a/gail/gailwindow.c -+++ b/gail/gailwindow.c -@@ -1071,7 +1071,7 @@ gail_window_get_mdi_zorder (AtkComponent *component) - return get_window_zorder (widget->window); - } - --#elif defined (GDK_WINDOWING_WIN32) -+#elif defined (GDK_WINDOWING_WIN32) || defined (GDK_WINDOWING_DIRECTFB) - - static gint - gail_window_get_mdi_zorder (AtkComponent *component) --- -1.7.0.2 - diff --git a/package/libgail/Config.in b/package/libgail/Config.in deleted file mode 100644 index 821a922fa5..0000000000 --- a/package/libgail/Config.in +++ /dev/null @@ -1,31 +0,0 @@ -config BR2_PACKAGE_LIBGAIL - bool "libgail" - depends on BR2_USE_WCHAR # pango -> libglib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # pango -> libglib2 - depends on BR2_USE_MMU # pango -> libglib2 - depends on BR2_INSTALL_LIBSTDCPP # pango -> freetype - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz - depends on BR2_PACKAGE_LIBGTK2 - depends on BR2_DEPRECATED_SINCE_2015_08 - select BR2_PACKAGE_PANGO - help - GAIL provides accessibility support for gtk+ and - libgnomecanvas by implementing AtkObjects for widgets in - gtk+ and libgnomecanvas. - - The GAIL library is a GTK+ module. For example, if the - module is loaded in a program which calls - gtk_widget_get_accessible() for a GtkEntry an instance of - GailEntry is returned. This module is normally used with the - atk-bridge GTK+ module from at-spi to allow an assistive - technology, e.g a screenreader, to query or drive the - program. - - http://developer.gnome.org/projects/gap - -comment "libgail needs a toolchain w/ C++, wchar, threads" - depends on BR2_PACKAGE_LIBGTK2 - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_USE_MMU - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on BR2_DEPRECATED_SINCE_2015_08 diff --git a/package/libgail/libgail.hash b/package/libgail/libgail.hash deleted file mode 100644 index 5cfd7525bd..0000000000 --- a/package/libgail/libgail.hash +++ /dev/null @@ -1,2 +0,0 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gail/1.22/gail-1.22.3.sha256sum -sha256 03f03029277eb4f0e2c15a825fe716245d8647ede0435645475110289b059ae8 gail-1.22.3.tar.bz2 diff --git a/package/libgail/libgail.mk b/package/libgail/libgail.mk deleted file mode 100644 index 4c5c8684e9..0000000000 --- a/package/libgail/libgail.mk +++ /dev/null @@ -1,22 +0,0 @@ -################################################################################ -# -# libgail -# -################################################################################ - -LIBGAIL_VERSION_MAJOR = 1.22 -LIBGAIL_VERSION = $(LIBGAIL_VERSION_MAJOR).3 -LIBGAIL_SOURCE = gail-$(LIBGAIL_VERSION).tar.bz2 -LIBGAIL_SITE = http://ftp.gnome.org/pub/gnome/sources/gail/$(LIBGAIL_VERSION_MAJOR) -LIBGAIL_AUTORECONF = YES -LIBGAIL_INSTALL_STAGING = YES -LIBGAIL_LICENSE = LGPLv2+ -LIBGAIL_LICENSE_FILES = COPYING - -ifneq ($(BR2_PACKAGE_XLIB_LIBX11),y) -LIBGAIL_CONF_OPTS += --disable-x -endif - -LIBGAIL_DEPENDENCIES = host-pkgconf libgtk2 pango - -$(eval $(autotools-package)) diff --git a/package/libgcrypt/Config.in b/package/libgcrypt/Config.in index dd8f270116..d3e5d4f7a2 100644 --- a/package/libgcrypt/Config.in +++ b/package/libgcrypt/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBGCRYPT bool "libgcrypt" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error select BR2_PACKAGE_LIBGPG_ERROR help LibGCrypt is GNU's basic cryptographic library. diff --git a/package/libgcrypt/libgcrypt.hash b/package/libgcrypt/libgcrypt.hash index 272d332353..48bbd6af54 100644 --- a/package/libgcrypt/libgcrypt.hash +++ b/package/libgcrypt/libgcrypt.hash @@ -1,4 +1,2 @@ -# From https://lists.gnupg.org/pipermail/gnupg-announce/2016q1/000384.html -sha1 c3a5a13e717f7b3e3895650afc1b6e0d3fe9c726 libgcrypt-1.6.5.tar.bz2 -# Calculated based on the hash above -sha256 f49ebc5842d455ae7019def33eb5a014a0f07a2a8353dc3aa50a76fd1dafa924 libgcrypt-1.6.5.tar.bz2 +# Locally calculated +sha256 626aafee84af9d2ce253d2c143dc1c0902dda045780cc241f39970fc60be05bc libgcrypt-1.7.6.tar.bz2 diff --git a/package/libgcrypt/libgcrypt.mk b/package/libgcrypt/libgcrypt.mk index 7c27a22320..a034358b3d 100644 --- a/package/libgcrypt/libgcrypt.mk +++ b/package/libgcrypt/libgcrypt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGCRYPT_VERSION = 1.6.5 +LIBGCRYPT_VERSION = 1.7.6 LIBGCRYPT_SOURCE = libgcrypt-$(LIBGCRYPT_VERSION).tar.bz2 LIBGCRYPT_LICENSE = LGPLv2.1+ LIBGCRYPT_LICENSE_FILES = COPYING.LIB @@ -18,6 +18,11 @@ LIBGCRYPT_CONF_ENV = \ LIBGCRYPT_CONF_OPTS = \ --with-gpg-error-prefix=$(STAGING_DIR)/usr +# Libgcrypt doesn't support assembly for coldfire +ifeq ($(BR2_m68k_cf),y) +LIBGCRYPT_CONF_OPTS += --disable-asm +endif + # Code doesn't build in thumb mode ifeq ($(BR2_arm),y) LIBGCRYPT_CONF_ENV += CFLAGS="$(patsubst -mthumb,,$(TARGET_CFLAGS))" diff --git a/package/libgee/libgee.hash b/package/libgee/libgee.hash index 4c38c7833e..83ac810156 100644 --- a/package/libgee/libgee.hash +++ b/package/libgee/libgee.hash @@ -1,2 +1,2 @@ -# From http://ftp.acc.umu.se/pub/gnome/sources/libgee/0.18/libgee-0.18.0.sha256sum -sha256 4ad99ef937d071b4883c061df40bfe233f7649d50c354cf81235f180b4244399 libgee-0.18.0.tar.xz +# From http://ftp.acc.umu.se/pub/gnome/sources/libgee/0.18/libgee-0.18.1.sha256sum +sha256 99686bbe5a9c89ba9502c25f61314ee8efa0dd2a1159c9a639afc1458c2839a2 libgee-0.18.1.tar.xz diff --git a/package/libgee/libgee.mk b/package/libgee/libgee.mk index 1df322c018..1df54d2b34 100644 --- a/package/libgee/libgee.mk +++ b/package/libgee/libgee.mk @@ -5,7 +5,7 @@ ################################################################################ LIBGEE_VERSION_MAJOR = 0.18 -LIBGEE_VERSION = $(LIBGEE_VERSION_MAJOR).0 +LIBGEE_VERSION = $(LIBGEE_VERSION_MAJOR).1 LIBGEE_SITE = http://ftp.gnome.org/pub/gnome/sources/libgee/$(LIBGEE_VERSION_MAJOR) LIBGEE_SOURCE = libgee-$(LIBGEE_VERSION).tar.xz LIBGEE_DEPENDENCIES = host-pkgconf host-vala libglib2 diff --git a/package/libglew/libglew.hash b/package/libglew/libglew.hash index 5e12785cb1..44684ffc83 100644 --- a/package/libglew/libglew.hash +++ b/package/libglew/libglew.hash @@ -1,2 +1,5 @@ +# From https://sourceforge.net/projects/glew/files/glew/2.0.0/ +sha1 6e15c84f7e1fad34cd3679f784a233744ddf048f glew-2.0.0.tgz +md5 2a2cd7c98f13854d2fcddae0d2b20411 glew-2.0.0.tgz # Locally computed: -sha256 aa25dc48ed84b0b64b8d41cdd42c8f40f149c37fa2ffa39cd97f42c78d128bc7 glew-1.13.0.tgz +sha256 c572c30a4e64689c342ba1624130ac98936d7af90c3103f9ce12b8a0c5736764 glew-2.0.0.tgz diff --git a/package/libglew/libglew.mk b/package/libglew/libglew.mk index dc73f39621..7af3affb91 100644 --- a/package/libglew/libglew.mk +++ b/package/libglew/libglew.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGLEW_VERSION = 1.13.0 +LIBGLEW_VERSION = 2.0.0 LIBGLEW_SOURCE = glew-$(LIBGLEW_VERSION).tgz LIBGLEW_SITE = http://sourceforge.net/projects/glew/files/glew/$(LIBGLEW_VERSION) LIBGLEW_LICENSE = BSD-3c, MIT diff --git a/package/libglib2/0003-gio-2.0.pc-include-libmount-in-Libs.private.patch b/package/libglib2/0003-gio-2.0.pc-include-libmount-in-Libs.private.patch new file mode 100644 index 0000000000..364e179345 --- /dev/null +++ b/package/libglib2/0003-gio-2.0.pc-include-libmount-in-Libs.private.patch @@ -0,0 +1,32 @@ +From ee32416dec8462ee27c3c254100cf980b0889ce0 Mon Sep 17 00:00:00 2001 +From: Rahul Bedarkar +Date: Tue, 18 Oct 2016 23:04:50 +0530 +Subject: [PATCH] gio-2.0.pc: include libmount in Libs.private + +This helps with static linking. When application statically links with +libgio, it needs to link against libmount explicitly. When it is +mentioned in Libs.private, build system can figure out with which extra +libs to link against with help of pkg-config. + +This build failure is detected by Buildroot autobuilder: +http://autobuild.buildroot.net/results/fdf/fdf26abbed0014606a7788ce5d60828a0e871186 + +Signed-off-by: Rahul Bedarkar +--- + gio-2.0.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gio-2.0.pc.in b/gio-2.0.pc.in +index 899af0c..7574eb7 100644 +--- a/gio-2.0.pc.in ++++ b/gio-2.0.pc.in +@@ -14,5 +14,5 @@ Version: @VERSION@ + Requires: glib-2.0 gobject-2.0 + Requires.private: gmodule-no-export-2.0 + Libs: -L${libdir} -lgio-2.0 +-Libs.private: @ZLIB_LIBS@ @NETWORK_LIBS@ @SELINUX_LIBS@ @COCOA_LIBS@ @CARBON_LIBS@ ++Libs.private: @ZLIB_LIBS@ @NETWORK_LIBS@ @SELINUX_LIBS@ @COCOA_LIBS@ @CARBON_LIBS@ @LIBMOUNT_LIBS@ + Cflags: +-- +2.6.2 + diff --git a/package/libglib2/Config.in b/package/libglib2/Config.in index 84ee816a89..80c7d6749b 100644 --- a/package/libglib2/Config.in +++ b/package/libglib2/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBFFI select BR2_PACKAGE_PCRE select BR2_PACKAGE_PCRE_UCP + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT select BR2_PACKAGE_ZLIB depends on BR2_USE_WCHAR # gettext depends on BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libglib2/libglib2.hash b/package/libglib2/libglib2.hash index 6463759f24..94bf8700b3 100644 --- a/package/libglib2/libglib2.hash +++ b/package/libglib2/libglib2.hash @@ -1,2 +1,2 @@ -# https://download.gnome.org/sources/glib/2.48/glib-2.48.1.sha256sum -sha256 74411bff489cb2a3527bac743a51018841a56a4d896cc1e0d0d54f8166a14612 glib-2.48.1.tar.xz +# https://download.gnome.org/sources/glib/2.50/glib-2.50.2.sha256sum +sha256 be68737c1f268c05493e503b3b654d2b7f43d7d0b8c5556f7e4651b870acfbf5 glib-2.50.2.tar.xz diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk index b479bae32a..ddd1f39652 100644 --- a/package/libglib2/libglib2.mk +++ b/package/libglib2/libglib2.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBGLIB2_VERSION_MAJOR = 2.48 -LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).1 +LIBGLIB2_VERSION_MAJOR = 2.50 +LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).2 LIBGLIB2_SOURCE = glib-$(LIBGLIB2_VERSION).tar.xz LIBGLIB2_SITE = http://ftp.gnome.org/pub/gnome/sources/glib/$(LIBGLIB2_VERSION_MAJOR) LIBGLIB2_LICENSE = LGPLv2+ @@ -102,10 +102,15 @@ HOST_LIBGLIB2_CONF_OPTS = \ LIBGLIB2_DEPENDENCIES = \ host-pkgconf host-libglib2 host-gettext \ - libffi pcre zlib $(if $(BR2_NEEDS_GETTEXT),gettext) + libffi pcre util-linux zlib $(if $(BR2_NEEDS_GETTEXT),gettext) HOST_LIBGLIB2_DEPENDENCIES = \ - host-gettext host-libffi host-pcre host-pkgconf host-zlib + host-gettext \ + host-libffi \ + host-pcre \ + host-pkgconf \ + host-util-linux \ + host-zlib LIBGLIB2_CONF_OPTS = \ --with-pcre=system @@ -160,10 +165,8 @@ define LIBGLIB2_COMPILE_SCHEMAS --targetdir=$(TARGET_DIR)/usr/share/glib-2.0/schemas endef -ifeq ($(BR2_PACKAGE_LIBGLIB2),y) -TARGET_FINALIZE_HOOKS += LIBGLIB2_REMOVE_TARGET_SCHEMAS -TARGET_FINALIZE_HOOKS += LIBGLIB2_COMPILE_SCHEMAS -endif +LIBGLIB2_TARGET_FINALIZE_HOOKS += LIBGLIB2_REMOVE_TARGET_SCHEMAS +LIBGLIB2_TARGET_FINALIZE_HOOKS += LIBGLIB2_COMPILE_SCHEMAS $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/libglob/Config.in b/package/libglob/Config.in new file mode 100644 index 0000000000..029ed6a1d3 --- /dev/null +++ b/package/libglob/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_LIBGLOB + bool "libglob" + help + OpenBSD implementation of glob(3). diff --git a/package/libglob/libglob.hash b/package/libglob/libglob.hash new file mode 100644 index 0000000000..0b394075f4 --- /dev/null +++ b/package/libglob/libglob.hash @@ -0,0 +1,2 @@ +# Locally calculated: +sha256 4f1b204dad065689941c64828a92441fb316c9c7539b39525fa728125da65e22 libglob-1.0.tar.gz diff --git a/package/libglob/libglob.mk b/package/libglob/libglob.mk new file mode 100644 index 0000000000..cd6922e0e7 --- /dev/null +++ b/package/libglob/libglob.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# libglob +# +################################################################################ + +LIBGLOB_VERSION = 1.0 +LIBGLOB_SITE = $(call github,voidlinux,libglob,$(LIBGLOB_VERSION)) +LIBGLOB_LICENSE = BSD-3c +LIBGLOB_LICENSE_FILES = LICENSE +LIBGLOB_INSTALL_STAGING = YES + +ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +LIBGLOB_MAKE_TARGETS += libglob.so +# $1: destination directory +define LIBGLOB_INSTALL_SHARED + $(INSTALL) -m 0755 -D $(@D)/libglob.so.0.0.0 \ + $(1)/usr/lib/libglob.so.0.0.0 + ln -sf libglob.so.0.0.0 $(1)/usr/lib/libglob.so.0 + ln -sf libglob.so.0.0.0 $(1)/usr/lib/libglob.so +endef +endif + +ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +LIBGLOB_MAKE_TARGETS += libglob.a +# $1: destination directory +define LIBGLOB_INSTALL_STATIC + $(INSTALL) -m 0644 -D $(@D)/libglob.a $(1)/usr/lib/libglob.a +endef +endif + +define LIBGLOB_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(LIBGLOB_MAKE_TARGETS) +endef + +define LIBGLOB_INSTALL_STAGING_CMDS + $(INSTALL) -m 0644 -D $(@D)/glob.h \ + $(STAGING_DIR)/usr/include/libglob/glob.h + $(call LIBGLOB_INSTALL_SHARED,$(STAGING_DIR)) + $(call LIBGLOB_INSTALL_STATIC,$(STAGING_DIR)) +endef + +define LIBGLOB_INSTALL_TARGET_CMDS + $(call LIBGLOB_INSTALL_SHARED,$(TARGET_DIR)) +endef + +$(eval $(generic-package)) diff --git a/package/libglu/libglu.hash b/package/libglu/libglu.hash new file mode 100644 index 0000000000..784386e0ca --- /dev/null +++ b/package/libglu/libglu.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 3d19cca9b26ec4048dd22e3d294acd43e080a3205a29ff47765bd514571ea8f9 glu-9.0.0.tar.gz diff --git a/package/libgpg-error/0001-avoid-breakage-with-gcc-5.patch b/package/libgpg-error/0001-avoid-breakage-with-gcc-5.patch deleted file mode 100644 index 96dc569cb3..0000000000 --- a/package/libgpg-error/0001-avoid-breakage-with-gcc-5.patch +++ /dev/null @@ -1,56 +0,0 @@ -Patch ported from Debian -http://anonscm.debian.org/cgit/pkg-gnupg/libgpg-error.git/diff/?id=c3d7571 - -Signed-off-by: Bernd Kuhls - - -From 91da4f5dbbc9d93975ef9753652a4e71719f9f27 Mon Sep 17 00:00:00 2001 -From: Daniel Kahn Gillmor -Date: Mon, 16 Mar 2015 13:26:00 -0400 -Subject: [LIBGPG-ERROR PATCH] avoid breakage with gcc 5 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - - * src/Makefile.am: add -P to the C preprocessor when building - mkerrcodes.h, to avoid a noisy intermediate pipeline. - --- - -With gcc 5 without this patch, we see many errors like the following: - -gcc -I. -I. -o mkerrcodes ./mkerrcodes.c -In file included from ./mkerrcodes.c:26:0: -./mkerrcodes.h:9:5: error: expected expression before ‘,’ token - { , "GPG_ERR_E2BIG" }, - ^ -./mkerrcodes.h:10:5: error: expected expression before ‘,’ token - { , "GPG_ERR_EACCES" }, - ^ - -This patch cleans up the generated mkerrcodes.h by making the -intermediate stage clean for all the versions of gcc i tested (4.x and -5). - -Debian-Bug-Id: 777374 -Signed-Off-By: Daniel Kahn Gillmor ---- - src/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 99c2c53..f847a80 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -213,7 +213,7 @@ code-to-errno.h: Makefile mkerrnos.awk errnos.in - # It is correct to use $(CPP). We want the host's idea of the error codes. - mkerrcodes.h: Makefile mkerrcodes.awk $(gpg_extra_headers) - $(AWK) -f $(srcdir)/mkerrcodes1.awk $(srcdir)/errnos.in >_$@ -- $(CPP) $(CPPFLAGS) $(extra_cppflags) _$@ | grep GPG_ERR_ | \ -+ $(CPP) $(CPPFLAGS) $(extra_cppflags) -P _$@ | grep GPG_ERR_ | \ - $(AWK) -f $(srcdir)/mkerrcodes.awk >$@ - -rm _$@ - --- -2.1.4 - diff --git a/package/libgpg-error/Config.in b/package/libgpg-error/Config.in index 8287f98b0f..40424e41cf 100644 --- a/package/libgpg-error/Config.in +++ b/package/libgpg-error/Config.in @@ -1,7 +1,49 @@ +config BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS + bool + # see src/syscfg/ + default y if \ + BR2_aarch64 || BR2_aarch64_eb || BR2_arm || \ + BR2_armeb || BR2_i386 || BR2_mips || \ + BR2_mipsel || BR2_mips64 || BR2_mips64el || \ + BR2_m68k || BR2_nios2 || BR2_powerpc || \ + BR2_powerpc64 || BR2_powerpc64le || BR2_sh4 || \ + BR2_sh4eb || BR2_sh4a || BR2_sh4aeb || \ + BR2_sparc || BR2_sparc64 || BR2_x86_64 + config BR2_PACKAGE_LIBGPG_ERROR bool "libgpg-error" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS help Libgpg-error is a small library with error codes and descriptions shared by most GnuPG related software. - ftp://gd.tuwien.ac.at/privacy/gnupg/libgpg-error + https://www.gnupg.org/related_software/libgpg-error + +config BR2_PACKAGE_LIBGPG_ERROR_SYSCFG + string + default "aarch64-unknown-linux-gnu" \ + if BR2_aarch64 || BR2_aarch64_eb + default "arm-unknown-linux-gnueabi" \ + if BR2_arm || BR2_armeb + default "i686-pc-linux-gnu" \ + if BR2_i386 + default "mips-unknown-linux-gnu" \ + if BR2_mips || BR2_mipsel + default "mips64el-unknown-linux-gnuabi64" \ + if BR2_mips64 || BR2_mips64el + default "m68k-unknown-linux-gnu" \ + if BR2_m68k + default "nios2-unknown-linux-gnu" \ + if BR2_nios2 + default "powerpc-unknown-linux-gnu" \ + if BR2_powerpc + default "powerpc64-unknown-linux-gnu" \ + if BR2_powerpc64 || BR2_powerpc64le + default "sh4-unknown-linux-gnu" \ + if BR2_sh4 || BR2_sh4eb || BR2_sh4a || BR2_sh4aeb + default "sparc-unknown-linux-gnu" \ + if BR2_sparc + default "sparc64-unknown-linux-gnu" \ + if BR2_sparc64 + default "x86_64-pc-linux-gnu" \ + if BR2_x86_64 diff --git a/package/libgpg-error/libgpg-error.hash b/package/libgpg-error/libgpg-error.hash index 76aff5d751..dac36db09f 100644 --- a/package/libgpg-error/libgpg-error.hash +++ b/package/libgpg-error/libgpg-error.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 fa6fbf315efa33a943751e3c4d04ea3d41ddf4bdee5727de3c0978277d52923b libgpg-error-1.12.tar.gz +sha256 3df7432dc17ef66c764c3fc4a1d309a9b4a0485c914ecfdb61b71e9bf45fd930 libgpg-error-1.26.tar.gz diff --git a/package/libgpg-error/libgpg-error.mk b/package/libgpg-error/libgpg-error.mk index 52b7058e81..5126c0a81a 100644 --- a/package/libgpg-error/libgpg-error.mk +++ b/package/libgpg-error/libgpg-error.mk @@ -4,14 +4,24 @@ # ################################################################################ -LIBGPG_ERROR_VERSION = 1.12 +LIBGPG_ERROR_VERSION = 1.26 LIBGPG_ERROR_SITE = ftp://ftp.gnupg.org/gcrypt/libgpg-error -LIBGPG_ERROR_LICENSE = LGPLv2.1+ -LIBGPG_ERROR_LICENSE_FILES = COPYING.LIB +LIBGPG_ERROR_LICENSE = GPLv2+, LGPLv2.1+ +LIBGPG_ERROR_LICENSE_FILES = COPYING COPYING.LIB LIBGPG_ERROR_INSTALL_STAGING = YES LIBGPG_ERROR_CONFIG_SCRIPTS = gpg-error-config -# we patch src/Makefile.am -LIBGPG_ERROR_AUTORECONF = YES -LIBGPG_ERROR_GETTEXTIZE = YES + +ifeq ($(BR2_PACKAGE_GETTEXT),y) +LIBGPG_ERROR_DEPENDENCIES += gettext +endif + +define LIBGPG_ERROR_FIX_CROSS_COMPILATION + cd $(@D)/src/syscfg && \ + ln -s lock-obj-pub.$(call qstrip, $(BR2_PACKAGE_LIBGPG_ERROR_SYSCFG)).h \ + lock-obj-pub.$(GNU_TARGET_NAME).h +endef +LIBGPG_ERROR_PRE_CONFIGURE_HOOKS += LIBGPG_ERROR_FIX_CROSS_COMPILATION + +LIBGPG_ERROR_CONF_OPTS = --disable-tests $(eval $(autotools-package)) diff --git a/package/libgpgme/Config.in b/package/libgpgme/Config.in index e176dacd13..4aabd06367 100644 --- a/package/libgpgme/Config.in +++ b/package/libgpgme/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBGPGME bool "libgpgme" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error depends on BR2_USE_MMU # libassuan #gnupg is not needed to build, but at runtime. select BR2_PACKAGE_GNUPG if !BR2_PACKAGE_GNUPG2 diff --git a/package/libgpgme/libgpgme.hash b/package/libgpgme/libgpgme.hash index a7efbf6d24..5ef7b0e5ce 100644 --- a/package/libgpgme/libgpgme.hash +++ b/package/libgpgme/libgpgme.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 0b3d3d5107680c594777aae65882a1ff6dd1ba629a83432e719c8b82a743c207 gpgme-1.5.5.tar.bz2 +sha256 d0abe1449395315eac37e4e45076bbb82732cedf94210937b37776e10cdc2bb6 gpgme-1.7.1.tar.bz2 diff --git a/package/libgpgme/libgpgme.mk b/package/libgpgme/libgpgme.mk index 574ddd6be1..84f4d22977 100644 --- a/package/libgpgme/libgpgme.mk +++ b/package/libgpgme/libgpgme.mk @@ -4,13 +4,14 @@ # ################################################################################ -LIBGPGME_VERSION = 1.5.5 +LIBGPGME_VERSION = 1.7.1 LIBGPGME_SITE = ftp://ftp.gnupg.org/gcrypt/gpgme LIBGPGME_SOURCE = gpgme-$(LIBGPGME_VERSION).tar.bz2 LIBGPGME_LICENSE = LGPLv2.1+ LIBGPGME_LICENSE_FILES = COPYING.LESSER LIBGPGME_INSTALL_STAGING = YES LIBGPGME_DEPENDENCIES = libassuan libgpg-error +LIBGPGME_LANGUAGE_BINDINGS = cl # libgpgme, needs to know the gpg binary path on the target. LIBGPGME_CONF_OPTS = --with-gpg=/usr/bin/gpg \ @@ -19,7 +20,13 @@ LIBGPGME_CONF_OPTS = --with-gpg=/usr/bin/gpg \ --disable-gpgsm-test \ --disable-gpgconf-test \ --disable-g13-test \ - --disable-gpg-test + --disable-gpg-test \ + --enable-languages=$(LIBGPGME_LANGUAGE_BINDINGS) + +# C++ bindings require a C++11 capable gcc +ifeq ($(BR2_INSTALL_LIBSTDCPP)$(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),yy) +LIBGPGME_LANGUAGE_BINDINGS := $(LIBGPGME_LANGUAGE_BINDINGS),cpp +endif # Handle argp-standalone or it errors out during build ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) diff --git a/package/libgpiod/Config.in b/package/libgpiod/Config.in new file mode 100644 index 0000000000..63a7cb6e78 --- /dev/null +++ b/package/libgpiod/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBGPIOD + bool "libgpiod" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + help + This is a C library that abstracts the GPIO character + device operations on linux. + + https://github.com/brgl/libgpiod + +if BR2_PACKAGE_LIBGPIOD + +config BR2_PACKAGE_LIBGPIOD_TOOLS + bool "install tools" + help + Include a set of command-line tools for managing GPIOs. + +endif + +comment "libgpiod needs kernel headers >= 4.8" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 diff --git a/package/libgpiod/libgpiod.hash b/package/libgpiod/libgpiod.hash new file mode 100644 index 0000000000..9901be6ace --- /dev/null +++ b/package/libgpiod/libgpiod.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 c9a60e1073aacb25b4ad06d513f31416335b5a710f869cb7e838d2abb62e1e00 libgpiod-v0.1.2.tar.gz diff --git a/package/libgpiod/libgpiod.mk b/package/libgpiod/libgpiod.mk new file mode 100644 index 0000000000..dbf9511f44 --- /dev/null +++ b/package/libgpiod/libgpiod.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# libgpiod +# +################################################################################ + +LIBGPIOD_VERSION = v0.1.2 +LIBGPIOD_SITE = $(call github,brgl,libgpiod,$(LIBGPIOD_VERSION)) +LIBGPIOD_LICENSE = GPLv3+ +LIBGPIOD_LICENSE_FILES = COPYING +# fetched from github, no configure script provided +LIBGPIOD_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_LIBGPIOD_TOOLS),y) +LIBGPIOD_CONF_OPTS += --enable-tools +else +LIBGPIOD_CONF_OPTS += --disable-tools +endif + +$(eval $(autotools-package)) diff --git a/package/libgsm/0001-misc.patch b/package/libgsm/0001-misc.patch new file mode 100644 index 0000000000..735d74449e --- /dev/null +++ b/package/libgsm/0001-misc.patch @@ -0,0 +1,205 @@ +Misc fixes from Archlinux + +Patch from: + https://git.archlinux.org/svntogit/packages.git/plain/gsm/trunk/gsm.patch + +Signed-off-by: "Yann E. MORIN" + +--- a/Makefile 2006-04-26 15:14:26.000000000 -0400 ++++ b/Makefile 2010-06-19 16:53:25.000000000 -0400 +@@ -44,7 +44,7 @@ + # CCFLAGS = -c -O + + CC = gcc -ansi -pedantic +-CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1 ++CCFLAGS = -c -O2 -fPIC -DNeedFunctionPrototypes=1 + + LD = $(CC) + +@@ -96,11 +96,11 @@ + # Other tools + + SHELL = /bin/sh +-LN = ln ++LN = ln -s -f + BASENAME = basename + AR = ar + ARFLAGS = cr +-RMFLAGS = ++RMFLAGS = -f + FIND = find + COMPRESS = compress + COMPRESSFLAGS = +@@ -139,7 +139,7 @@ + + # Targets + +-LIBGSM = $(LIB)/libgsm.a ++LIBGSMSO = $(LIB)/libgsm.so + + TOAST = $(BIN)/toast + UNTOAST = $(BIN)/untoast +@@ -257,7 +257,7 @@ + # Install targets + + GSM_INSTALL_TARGETS = \ +- $(GSM_INSTALL_LIB)/libgsm.a \ ++ $(GSM_INSTALL_LIB)/libgsm.so \ + $(GSM_INSTALL_INC)/gsm.h \ + $(GSM_INSTALL_MAN)/gsm.3 \ + $(GSM_INSTALL_MAN)/gsm_explode.3 \ +@@ -279,7 +279,7 @@ + + # Target rules + +-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST) ++all: $(LIBGSMSO) $(TOAST) $(TCAT) $(UNTOAST) + @-echo $(ROOT): Done. + + tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result +@@ -299,24 +299,23 @@ + + # The basic API: libgsm + +-$(LIBGSM): $(LIB) $(GSM_OBJECTS) +- -rm $(RMFLAGS) $(LIBGSM) +- $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS) +- $(RANLIB) $(LIBGSM) +- ++$(LIBGSMSO): $(LIB) $(GSM_OBJECTS) ++ $(LD) -shared -Wl,-soname,libgsm.so.1 -o $@.1.0.13 $(GSM_OBJECTS) ++ $(LN) libgsm.so.1.0.13 $(LIBGSMSO).1 ++ $(LN) libgsm.so.1.0.13 $(LIBGSMSO) + + # Toast, Untoast and Tcat -- the compress-like frontends to gsm. + +-$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSM) +- $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB) ++$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSMSO) ++ $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSMSO) $(LDLIB) + + $(UNTOAST): $(BIN) $(TOAST) + -rm $(RMFLAGS) $(UNTOAST) +- $(LN) $(TOAST) $(UNTOAST) ++ $(LN) toast $(UNTOAST) + + $(TCAT): $(BIN) $(TOAST) + -rm $(RMFLAGS) $(TCAT) +- $(LN) $(TOAST) $(TCAT) ++ $(LN) toast $(TCAT) + + + # The local bin and lib directories +@@ -351,53 +350,54 @@ + fi + + $(TOAST_INSTALL_BIN)/toast: $(TOAST) +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $(TOAST) $@ + chmod 755 $@ + + $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast +- -rm $@ +- ln $? $@ ++ -rm $(RMFLAGS) $@ ++ $(LN) toast $@ + + $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast +- -rm $@ +- ln $? $@ ++ -rm $(RMFLAGS) $@ ++ $(LN) toast $@ + + $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1 +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + + $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3 +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + + $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3 +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + + $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3 +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + + $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3 +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + + $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h +- -rm $@ +- cp $? $@ +- chmod 444 $@ +- +-$(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM) +- -rm $@ ++ -rm $(RMFLAGS) $@ + cp $? $@ + chmod 444 $@ + ++$(GSM_INSTALL_LIB)/libgsm.so: $(LIBGSMSO) ++ -rm $(RMFLAGS) $@ $@.1 $@.1.0.13 ++ cp $?.1.0.13 $@.1.0.13 ++ chmod 755 $@.1.0.13 ++ $(LN) libgsm.so.1.0.13 $@ ++ $(LN) libgsm.so.1.0.13 $@.1 + + # Distribution + +@@ -425,7 +425,7 @@ + -print | xargs rm $(RMFLAGS) + + clean: semi-clean +- -rm $(RMFLAGS) $(LIBGSM) $(ADDTST)/add \ ++ -rm $(RMFLAGS) $(LIBGSMSO)* $(ADDTST)/add \ + $(TOAST) $(TCAT) $(UNTOAST) \ + $(ROOT)/gsm-1.0.tar.Z + +@@ -473,22 +473,22 @@ + $(TST)/test-result: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/run + ( cd $(TST); ./run ) + +-$(TST)/lin2txt: $(TST)/lin2txt.o $(LIBGSM) ++$(TST)/lin2txt: $(TST)/lin2txt.o $(LIBGSMSO) + $(LD) $(LFLAGS) -o $(TST)/lin2txt \ +- $(TST)/lin2txt.o $(LIBGSM) $(LDLIB) ++ $(TST)/lin2txt.o $(LIBGSMSO) $(LDLIB) + +-$(TST)/lin2cod: $(TST)/lin2cod.o $(LIBGSM) ++$(TST)/lin2cod: $(TST)/lin2cod.o $(LIBGSMSO) + $(LD) $(LFLAGS) -o $(TST)/lin2cod \ +- $(TST)/lin2cod.o $(LIBGSM) $(LDLIB) ++ $(TST)/lin2cod.o $(LIBGSMSO) $(LDLIB) + +-$(TST)/gsm2cod: $(TST)/gsm2cod.o $(LIBGSM) ++$(TST)/gsm2cod: $(TST)/gsm2cod.o $(LIBGSMSO) + $(LD) $(LFLAGS) -o $(TST)/gsm2cod \ +- $(TST)/gsm2cod.o $(LIBGSM) $(LDLIB) ++ $(TST)/gsm2cod.o $(LIBGSMSO) $(LDLIB) + +-$(TST)/cod2txt: $(TST)/cod2txt.o $(LIBGSM) ++$(TST)/cod2txt: $(TST)/cod2txt.o $(LIBGSMSO) + $(LD) $(LFLAGS) -o $(TST)/cod2txt \ +- $(TST)/cod2txt.o $(LIBGSM) $(LDLIB) ++ $(TST)/cod2txt.o $(LIBGSMSO) $(LDLIB) + +-$(TST)/cod2lin: $(TST)/cod2lin.o $(LIBGSM) ++$(TST)/cod2lin: $(TST)/cod2lin.o $(LIBGSMSO) + $(LD) $(LFLAGS) -o $(TST)/cod2lin \ +- $(TST)/cod2lin.o $(LIBGSM) $(LDLIB) ++ $(TST)/cod2lin.o $(LIBGSMSO) $(LDLIB) diff --git a/package/libgsm/Config.in b/package/libgsm/Config.in new file mode 100644 index 0000000000..c6edefe67f --- /dev/null +++ b/package/libgsm/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBGSM + bool "libgsm" + depends on !BR2_STATIC_LIBS + help + Shared libraries for GSM 06.10 lossy speech compression. + + http://www.quut.com/gsm + +comment "libgsm needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libgsm/libgsm.hash b/package/libgsm/libgsm.hash new file mode 100644 index 0000000000..bcfb6505ce --- /dev/null +++ b/package/libgsm/libgsm.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 725a3768a1e23ab8648b4df9d470aed38eb1635af3cbc8d0b64fef077236f4ce gsm-1.0.16.tar.gz diff --git a/package/libgsm/libgsm.mk b/package/libgsm/libgsm.mk new file mode 100644 index 0000000000..8e8335a03c --- /dev/null +++ b/package/libgsm/libgsm.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# libgsm +# +################################################################################ + +LIBGSM_VERSION = 1.0.16 +LIBGSM_SOURCE = gsm-$(LIBGSM_VERSION).tar.gz +LIBGSM_SITE = http://www.quut.com/gsm +LIBGSM_LICENSE = gsm +LIBGSM_LICENSE_FILES = COPYRIGHT +LIBGSM_INSTALL_STAGING = YES + +define LIBGSM_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) -C $(@D) +endef + +# Install targets are not safe for parallel jobs. However, since there's +# just only a bunch of files to install, just do it manually. Note that, +# even though the package version is '1.0.16', the solib is generated as +# '1.0.13' and its SONAME is just '1'. +# +# For staging, we install all the .so symlinks, and the header. +define LIBGSM_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0644 $(@D)/inc/gsm.h $(STAGING_DIR)/usr/include/gsm.h + $(INSTALL) -D -m 0644 $(@D)/lib/libgsm.so.1.0.13 $(STAGING_DIR)/usr/lib/libgsm.so.1.0.13 + ln -sf libgsm.so.1.0.13 $(STAGING_DIR)/usr/lib/libgsm.so.1 + ln -sf libgsm.so.1.0.13 $(STAGING_DIR)/usr/lib/libgsm.so +endef + +# Install targets are not safe for parallel jobs. However, since there's +# just only a bunch of files to install, just do it manually. Note that, +# even though the package version is '1.0.16', the solib is versioned as +# '1.0.13' and its SONAME is just versioned with '1'. +# +# For target, we just need the library to be installed as its SONAME, and +# the programs. +define LIBGSM_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0644 $(@D)/lib/libgsm.so.1.0.13 $(TARGET_DIR)/usr/lib/libgsm.so.1 + $(INSTALL) -D -m 0755 $(@D)/bin/toast $(TARGET_DIR)/usr/bin/toast + $(INSTALL) -D -m 0755 $(@D)/bin/tcat $(TARGET_DIR)/usr/bin/tcat + $(INSTALL) -D -m 0755 $(@D)/bin/untoast $(TARGET_DIR)/usr/bin/untoast +endef + +$(eval $(generic-package)) diff --git a/package/libgtk2/libgtk2.hash b/package/libgtk2/libgtk2.hash index 175702f751..3388c5cda2 100644 --- a/package/libgtk2/libgtk2.hash +++ b/package/libgtk2/libgtk2.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-2.24.30.sha256sum -sha256 0d15cec3b6d55c60eac205b1f3ba81a1ed4eadd9d0f8e7c508bc7065d0c4ca50 gtk+-2.24.30.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-2.24.31.sha256sum +sha256 68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658 gtk+-2.24.31.tar.xz diff --git a/package/libgtk2/libgtk2.mk b/package/libgtk2/libgtk2.mk index 94fa97f204..cf8b2f4eee 100644 --- a/package/libgtk2/libgtk2.mk +++ b/package/libgtk2/libgtk2.mk @@ -5,7 +5,7 @@ ################################################################################ LIBGTK2_VERSION_MAJOR = 2.24 -LIBGTK2_VERSION = $(LIBGTK2_VERSION_MAJOR).30 +LIBGTK2_VERSION = $(LIBGTK2_VERSION_MAJOR).31 LIBGTK2_SOURCE = gtk+-$(LIBGTK2_VERSION).tar.xz LIBGTK2_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk+/$(LIBGTK2_VERSION_MAJOR) LIBGTK2_INSTALL_STAGING = YES diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in index 39105acd9b..738f865099 100644 --- a/package/libgtk3/Config.in +++ b/package/libgtk3/Config.in @@ -4,10 +4,10 @@ comment "libgtk3 needs a toolchain w/ wchar, threads, C++" depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS -comment "libgtk3 needs an OpenGL or OpenGL EGL backend provided by mesa3d" +comment "libgtk3 needs an OpenGL or an OpenGL-EGL/wayland backend" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL && \ + depends on !BR2_PACKAGE_HAS_LIBEGL_WAYLAND && \ !BR2_PACKAGE_HAS_LIBGL config BR2_PACKAGE_LIBGTK3 @@ -29,7 +29,7 @@ config BR2_PACKAGE_LIBGTK3 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz - depends on BR2_PACKAGE_MESA3D_OPENGL_EGL || \ + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ BR2_PACKAGE_HAS_LIBGL help The GTK+ version 3 graphical user interface library @@ -65,7 +65,7 @@ comment "Wayland GDK backend needs an OpenGL EGL backend provided by mesa3d w/ h config BR2_PACKAGE_LIBGTK3_WAYLAND bool "Wayland GDK backend" default y - depends on BR2_PACKAGE_MESA3D_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 select BR2_PACKAGE_WAYLAND select BR2_PACKAGE_WAYLAND_PROTOCOLS diff --git a/package/libgtk3/libgtk3.hash b/package/libgtk3/libgtk3.hash index 78bfc868ba..12a25c9cfc 100644 --- a/package/libgtk3/libgtk3.hash +++ b/package/libgtk3/libgtk3.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gtk+/3.20/gtk+-3.20.4.sha256sum -sha256 e7e3aaf54a54dd1c1ca0588939254abe31329e0bcd280a12290d5306b41ea03f gtk+-3.20.4.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gtk+/3.22/gtk+-3.22.7.sha256sum +sha256 a3a27564bfb1679ebbc75c37cd2bcd6e727c8bdfbcd3984d29305bf9ee60d432 gtk+-3.22.7.tar.xz diff --git a/package/libgtk3/libgtk3.mk b/package/libgtk3/libgtk3.mk index 0ba7928fa3..a1b8fc60a2 100644 --- a/package/libgtk3/libgtk3.mk +++ b/package/libgtk3/libgtk3.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBGTK3_VERSION_MAJOR = 3.20 -LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).4 +LIBGTK3_VERSION_MAJOR = 3.22 +LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).7 LIBGTK3_SOURCE = gtk+-$(LIBGTK3_VERSION).tar.xz LIBGTK3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk+/$(LIBGTK3_VERSION_MAJOR) LIBGTK3_LICENSE = LGPLv2+ @@ -182,13 +182,11 @@ endef # Create icon-theme.cache for each of the icon directories/themes # It's not strictly necessary but speeds up lookups -ifeq ($(BR2_PACKAGE_LIBGTK3),y) define LIBGTK3_UPDATE_ICON_CACHE find $(TARGET_DIR)/usr/share/icons -maxdepth 1 -mindepth 1 -type d \ -exec $(HOST_DIR)/usr/bin/gtk-update-icon-cache {} \; endef -TARGET_FINALIZE_HOOKS += LIBGTK3_UPDATE_ICON_CACHE -endif +LIBGTK3_TARGET_FINALIZE_HOOKS += LIBGTK3_UPDATE_ICON_CACHE $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/libgudev/Config.in b/package/libgudev/Config.in index ecaacf5fd2..21606ac4cc 100644 --- a/package/libgudev/Config.in +++ b/package/libgudev/Config.in @@ -11,9 +11,6 @@ config BR2_PACKAGE_LIBGUDEV It's now a project on its own. Required for building some programs that use udev, when using systemd. - When systemd is not used, libgudev is directly provided by - eudev. - https://wiki.gnome.org/Projects/libgudev comment "libgudev needs udev /dev handling and a toolchain w/ wchar, threads" diff --git a/package/libhid/libhid.hash b/package/libhid/libhid.hash new file mode 100644 index 0000000000..7a843b60f4 --- /dev/null +++ b/package/libhid/libhid.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 f6809ab3b9c907cbb05ceba9ee6ca23a705f85fd71588518e14b3a7d9f2550e5 libhid-0.2.16.tar.gz diff --git a/package/libical/Config.in b/package/libical/Config.in index 48170e9f87..3220d5bee1 100644 --- a/package/libical/Config.in +++ b/package/libical/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_LIBICAL depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR + select BR2_TARGET_TZ_INFO help libical is an Open Source (MPL/LGPL) implementation of the IETF's iCalendar Calendaring and Scheduling protocols. diff --git a/package/libical/libical.mk b/package/libical/libical.mk index e8cb3f8d79..a511039569 100644 --- a/package/libical/libical.mk +++ b/package/libical/libical.mk @@ -13,5 +13,7 @@ LIBICAL_LICENSE_FILES = LICENSE # building without this option is broken, it is used by # Gentoo/alpinelinux as well LIBICAL_CONF_OPTS = -DSHARED_ONLY=true +# never build time zone info, always use system's tzinfo +LIBICAL_CONF_OPTS += -DUSE_BUILTIN_TZDATA=false $(eval $(cmake-package)) diff --git a/package/libidn/libidn.hash b/package/libidn/libidn.hash index 20c844e121..4658a3e857 100644 --- a/package/libidn/libidn.hash +++ b/package/libidn/libidn.hash @@ -1,2 +1,4 @@ -# From http://lists.nongnu.org/archive/html/help-libidn/2015-08/msg00001.html -sha1 ddd018611b98af7c67d434aa42d15d39f45129f5 libidn-1.32.tar.gz +# From http://lists.nongnu.org/archive/html/help-libidn/2016-07/msg00009.html +sha1 57872fdc665dcc585e16f4ac0bb35374b1103f7e libidn-1.33.tar.gz +# Calculated based on the hash above +sha256 44a7aab635bb721ceef6beecc4d49dfd19478325e1b47f3196f7d2acc4930e19 libidn-1.33.tar.gz diff --git a/package/libidn/libidn.mk b/package/libidn/libidn.mk index ab43949355..99c9e2cb80 100644 --- a/package/libidn/libidn.mk +++ b/package/libidn/libidn.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBIDN_VERSION = 1.32 +LIBIDN_VERSION = 1.33 LIBIDN_SITE = $(BR2_GNU_MIRROR)/libidn LIBIDN_INSTALL_STAGING = YES LIBIDN_CONF_ENV = EMACS="no" diff --git a/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch b/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch deleted file mode 100644 index 9f441698f8..0000000000 --- a/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4f849e1d2287206cfb7ff0fdeca96c22383b0d53 Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Mon, 29 Dec 2014 19:05:13 +0100 -Subject: [PATCH] cmake: libxml2 detection: try first the CMake module from - libxml2 - -Libxml2 >=2.9.2 provides its own CMake module, so check for it before -falling back on the CMake's module FindLibXml2.cmake. - -Signed-off-by: Samuel Martin ---- - CMakeLists.txt | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 393fee3..b4f1d26 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -38,7 +38,19 @@ endif() - find_library(AVAHI_CLIENT_LIBRARIES avahi-client) - find_library(AVAHI_COMMON_LIBRARIES avahi-common) - find_library(PTHREAD_LIBRARIES pthread) --include(FindLibXml2) -+ -+# Since libxml2-2.9.2, libxml2 provides its own LibXml2-config.cmake, with all -+# variables correctly set. -+# So, try first to find the CMake module provided by libxml2 package, then fallback -+# on the CMake's FindLibXml2.cmake module (which can lack some definition, especially -+# in static build case). -+find_package(LibXml2 QUIET NO_MODULE) -+if(DEFINED LIBXML2_VERSION_STRING) -+ set(LIBXML2_FOUND ON) -+ set(LIBXML2_INCLUDE_DIR ${LIBXML2_INCLUDE_DIRS}) -+else() -+ include(FindLibXml2) -+endif() - - set(LIBIIO_CFILES channel.c device.c context.c buffer.c utilities.c) - set(LIBIIO_HEADERS iio.h) --- -2.2.1 - diff --git a/package/libiio/0001-utilities.c-Add-a-check-for-newlocale-function.patch b/package/libiio/0001-utilities.c-Add-a-check-for-newlocale-function.patch new file mode 100644 index 0000000000..cea22cbcac --- /dev/null +++ b/package/libiio/0001-utilities.c-Add-a-check-for-newlocale-function.patch @@ -0,0 +1,55 @@ +From 913c2cc740d60450e91e066cf38f5654936a6015 Mon Sep 17 00:00:00 2001 +From: Paul Cercueil +Date: Mon, 6 Feb 2017 14:04:47 +0100 +Subject: [PATCH] utilities.c: Add a check for newlocale() function + +uClibc might define __UCLIBC_HAS_LOCALE__, without actually providing +the locale_t type or the setlocale() function. + +Signed-off-by: Paul Cercueil +--- + CMakeLists.txt | 1 + + iio-config.h.cmakein | 1 + + utilities.c | 2 +- + 3 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index cb3a48f..b24eff3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -66,6 +66,7 @@ endif() + include(CheckSymbolExists) + check_symbol_exists(strdup "string.h" HAS_STRDUP) + check_symbol_exists(strerror_r "string.h" HAS_STRERROR_R) ++check_symbol_exists(newlocale "locale.h" HAS_NEWLOCALE) + + IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + option(WITH_IIOD "Build the IIO Daemon" ON) +diff --git a/iio-config.h.cmakein b/iio-config.h.cmakein +index 1b8608e..6700326 100644 +--- a/iio-config.h.cmakein ++++ b/iio-config.h.cmakein +@@ -21,6 +21,7 @@ + #cmakedefine HAS_PIPE2 + #cmakedefine HAS_STRDUP + #cmakedefine HAS_STRERROR_R ++#cmakedefine HAS_NEWLOCALE + #cmakedefine HAS_PTHREAD_SETNAME_NP + #cmakedefine HAVE_IPV6 + #cmakedefine HAVE_AVAHI +diff --git a/utilities.c b/utilities.c +index 88b8257..21dbd10 100644 +--- a/utilities.c ++++ b/utilities.c +@@ -34,7 +34,7 @@ + #endif + + #ifdef LOCALE_SUPPORT +-#if defined(__MINGW32__) ++#if defined(__MINGW32__) || (!defined(_WIN32) && !defined(HAS_NEWLOCALE)) + static int read_double_locale(const char *str, double *val) + { + char *end, *old_locale; +-- +2.11.0 + diff --git a/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch b/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch deleted file mode 100644 index 4839a394cc..0000000000 --- a/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 2e6fa357ffbe755bfecaecad4fc82e3307fe2831 Mon Sep 17 00:00:00 2001 -From: Paul Cercueil -Date: Wed, 22 Jul 2015 10:25:01 +0200 -Subject: [PATCH] CMake: Fix build on UNIX systems without a C++ compiler - -Signed-off-by: Paul Cercueil ---- - bindings/csharp/CMakeLists.txt | 2 +- - bindings/python/CMakeLists.txt | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/bindings/csharp/CMakeLists.txt b/bindings/csharp/CMakeLists.txt -index 8aafb8f..fceab88 100644 ---- a/bindings/csharp/CMakeLists.txt -+++ b/bindings/csharp/CMakeLists.txt -@@ -1,5 +1,5 @@ - cmake_minimum_required(VERSION 2.8.7) --project(libiio-sharp) -+project(libiio-sharp LANGUAGES NONE) - - find_program(MCS_EXECUTABLE - NAMES mcs csc -diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt -index 22ffdb4..76ceae8 100644 ---- a/bindings/python/CMakeLists.txt -+++ b/bindings/python/CMakeLists.txt -@@ -1,5 +1,5 @@ - cmake_minimum_required(VERSION 2.8.7) --project(libiio-py) -+project(libiio-py LANGUAGES NONE) - - include(FindPythonInterp) - --- -2.1.4 - diff --git a/package/libiio/Config.in b/package/libiio/Config.in index 99da4c1c10..6f6af16852 100644 --- a/package/libiio/Config.in +++ b/package/libiio/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LIBIIO bool "libiio" - select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND if !BR2_PACKAGE_LIBIIO_NETWORK_BACKEND + select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND if !BR2_PACKAGE_LIBIIO_XML_BACKEND help Libiio is a library to ease the development of software interfacing Linux Industrial I/O (IIO) devices. @@ -15,27 +15,74 @@ config BR2_PACKAGE_LIBIIO_LOCAL_BACKEND help Enable the local backend of the library. -config BR2_PACKAGE_LIBIIO_NETWORK_BACKEND - bool "Network backend" +config BR2_PACKAGE_LIBIIO_XML_BACKEND + bool "XML backend" select BR2_PACKAGE_LIBXML2 default y + help + Enable the XML backend of the library. + +config BR2_PACKAGE_LIBIIO_NETWORK_BACKEND + bool "Network backend" + select BR2_PACKAGE_LIBIIO_XML_BACKEND + default y help Enable the network backend of the library. +config BR2_PACKAGE_LIBIIO_USB_BACKEND + bool "USB backend" + depends on BR2_TOOLCHAIN_HAS_THREADS # from libusb + select BR2_PACKAGE_LIBIIO_XML_BACKEND + select BR2_PACKAGE_LIBUSB + default y + help + Enable the USB backend of the library. + +comment "The USB backend needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_LIBIIO_SERIAL_BACKEND + bool "Serial backend" + select BR2_PACKAGE_LIBIIO_XML_BACKEND + select BR2_PACKAGE_LIBSERIALPORT + default y + help + Enable the serial backend of the library. + config BR2_PACKAGE_LIBIIO_IIOD bool "IIO Daemon" select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_bfin default y help Install the IIO Daemon. +config BR2_PACKAGE_LIBIIO_IIOD_USBD + bool "USB support in the IIO Daemon (FunctionFS)" + depends on BR2_PACKAGE_LIBIIO_IIOD + depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 # usb_functionfs_descs_head_v2 + select BR2_PACKAGE_LIBAIO + help + Add support for USB through FunctionFS with IIOD. + +comment "USB support in the IIO Daemon requires libaio, headers >= 3.18" + depends on BR2_PACKAGE_LIBIIO_IIOD + depends on !BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + comment "IIO Daemon needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_bfin + +comment "IIO Daemon is not yet available on Blackfin" + depends on BR2_bfin config BR2_PACKAGE_LIBIIO_TESTS bool "Install test programs" select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND + select BR2_PACKAGE_LIBIIO_XML_BACKEND select BR2_PACKAGE_LIBIIO_NETWORK_BACKEND depends on BR2_TOOLCHAIN_HAS_THREADS help diff --git a/package/libiio/libiio.hash b/package/libiio/libiio.hash index 28b9c63e62..e5387861aa 100644 --- a/package/libiio/libiio.hash +++ b/package/libiio/libiio.hash @@ -1,2 +1,2 @@ -# From https://github.com/analogdevicesinc/libiio/archive/v0.5/ -sha256 c41cdcfeae8717e72f1100b4dac9d7cc9d86f4e0731da3354149cb7e051666f3 libiio-0.5.tar.gz +# From https://github.com/analogdevicesinc/libiio/archive/v0.9/ +sha256 b6184876d192fbfd51e3a0a29736fa1be2dbaf07370cf861797076f40a85f823 libiio-0.9.tar.gz diff --git a/package/libiio/libiio.mk b/package/libiio/libiio.mk index 0e92b738a8..8977610999 100644 --- a/package/libiio/libiio.mk +++ b/package/libiio/libiio.mk @@ -4,22 +4,39 @@ # ################################################################################ -LIBIIO_VERSION = 0.5 +LIBIIO_VERSION = 0.9 LIBIIO_SITE = $(call github,analogdevicesinc,libiio,v$(LIBIIO_VERSION)) LIBIIO_INSTALL_STAGING = YES LIBIIO_LICENSE = LGPLv2.1+ -LIBIIO_LICENSE_FILES = COPYING +LIBIIO_LICENSE_FILES = COPYING.txt LIBIIO_CONF_OPTS = -DENABLE_IPV6=ON \ -DWITH_LOCAL_BACKEND=$(if $(BR2_PACKAGE_LIBIIO_LOCAL_BACKEND),ON,OFF) \ + -DWITH_NETWORK_BACKEND=$(if $(BR2_PACKAGE_LIBIIO_NETWORK_BACKEND),ON,OFF) \ + -DWITH_MATLAB_BINDINGS_API=OFF \ + -DINSTALL_UDEV_RULE=$(if $(BR2_PACKAGE_HAS_UDEV),ON,OFF) \ -DWITH_TESTS=$(if $(BR2_PACKAGE_LIBIIO_TESTS),ON,OFF) \ -DWITH_DOC=OFF -ifeq ($(BR2_PACKAGE_LIBIIO_NETWORK_BACKEND),y) +ifeq ($(BR2_PACKAGE_LIBIIO_XML_BACKEND),y) LIBIIO_DEPENDENCIES += libxml2 -LIBIIO_CONF_OPTS += -DWITH_NETWORK_BACKEND=ON +LIBIIO_CONF_OPTS += -DWITH_XML_BACKEND=ON else -LIBIIO_CONF_OPTS += -DWITH_NETWORK_BACKEND=OFF +LIBIIO_CONF_OPTS += -DWITH_XML_BACKEND=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBIIO_USB_BACKEND),y) +LIBIIO_DEPENDENCIES += libusb +LIBIIO_CONF_OPTS += -DWITH_USB_BACKEND=ON +else +LIBIIO_CONF_OPTS += -DWITH_USB_BACKEND=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBIIO_SERIAL_BACKEND),y) +LIBIIO_DEPENDENCIES += libserialport +LIBIIO_CONF_OPTS += -DWITH_SERIAL_BACKEND=ON +else +LIBIIO_CONF_OPTS += -DWITH_SERIAL_BACKEND=OFF endif ifeq ($(BR2_PACKAGE_LIBIIO_IIOD),y) @@ -29,6 +46,13 @@ else LIBIIO_CONF_OPTS += -DWITH_IIOD=OFF endif +ifeq ($(BR2_PACKAGE_LIBIIO_IIOD_USBD),y) +LIBIIO_DEPENDENCIES += libaio +LIBIIO_CONF_OPTS += -DWITH_IIOD_USBD=ON +else +LIBIIO_CONF_OPTS += -DWITH_IIOD_USBD=OFF +endif + # Avahi support in libiio requires avahi-client, which needs avahi-daemon ifeq ($(BR2_PACKAGE_AVAHI)$(BR2_PACKAGE_AVAHI_DAEMON),yy) LIBIIO_DEPENDENCIES += avahi @@ -64,13 +88,6 @@ define LIBIIO_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/libiio/S99iiod \ $(TARGET_DIR)/etc/init.d/S99iiod endef -define LIBIIO_INSTALL_INIT_SYSTEMD - $(INSTALL) -d $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants - $(INSTALL) -D -m 0644 $(@D)/debian/iiod.service \ - $(TARGET_DIR)/usr/lib/systemd/system/iiod.service - ln -fs ../../../../usr/lib/systemd/system/iiod.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/iiod.service -endef endif $(eval $(cmake-package)) diff --git a/package/libimxvpuapi/libimxvpuapi.hash b/package/libimxvpuapi/libimxvpuapi.hash index fd90a20564..c8cabcf285 100644 --- a/package/libimxvpuapi/libimxvpuapi.hash +++ b/package/libimxvpuapi/libimxvpuapi.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 8d7aeed88c06fda44318cef9565ae47b86461bd309908b1103a7974ed0822a8d libimxvpuapi-0.10.1.tar.gz +sha256 8e6dc4105db6164c0de72fd60eb73f4ba1632f7ba5052b1abc834b462b566da2 libimxvpuapi-0.10.2.tar.gz diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk index e0d8cc981f..fde4429375 100644 --- a/package/libimxvpuapi/libimxvpuapi.mk +++ b/package/libimxvpuapi/libimxvpuapi.mk @@ -4,32 +4,11 @@ # ################################################################################ -LIBIMXVPUAPI_VERSION = 0.10.1 +LIBIMXVPUAPI_VERSION = 0.10.2 LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION)) LIBIMXVPUAPI_LICENSE = LGPLv2.1+ LIBIMXVPUAPI_LICENSE_FILES = LICENSE LIBIMXVPUAPI_DEPENDENCIES = host-pkgconf host-python imx-vpu LIBIMXVPUAPI_INSTALL_STAGING = YES -define LIBIMXVPUAPI_CONFIGURE_CMDS - cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) $(HOST_DIR)/usr/bin/python2 ./waf configure \ - --prefix=/usr --libdir=/usr/lib -endef - -define LIBIMXVPUAPI_BUILD_CMDS - cd $(@D); \ - $(HOST_DIR)/usr/bin/python2 ./waf build -j $(PARALLEL_JOBS) -endef - -define LIBIMXVPUAPI_INSTALL_STAGING_CMDS - cd $(@D); \ - $(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(STAGING_DIR) install -endef - -define LIBIMXVPUAPI_INSTALL_TARGET_CMDS - cd $(@D); \ - $(HOST_DIR)/usr/bin/python2 ./waf --destdir=$(TARGET_DIR) install -endef - -$(eval $(generic-package)) +$(eval $(waf-package)) diff --git a/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch b/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch deleted file mode 100644 index e36862a12d..0000000000 --- a/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch +++ /dev/null @@ -1,77 +0,0 @@ -From bf4a4a4e2b0479322fe16c9e1f15f146daa893ee Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Thu, 21 Aug 2014 18:18:16 +0200 -Subject: [PATCH] rename log_msg to libinput_log_msg - -This fixes a conflict between libevdev and libinput on the definition -of the log_msg() symbol. - -http://autobuild.buildroot.net/results/c13/c133b7c706ee31302125df8ca94f4d0f0152c6c6/build-end.log - -Signed-off-by: Romain Naour -[yann.morin.1998@free.fr: rebase on-top of 0.6.0] -Signed-off-by: "Yann E. MORIN" -[ps.report@gmx.net: rebase on top of 0.7.0] -Signed-off-by: Peter Seiderer ---- - src/libinput-private.h | 14 +++++++------- - src/libinput.c | 2 +- - 2 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/src/libinput-private.h b/src/libinput-private.h -index b36dc95..98f91b3 100644 ---- a/src/libinput-private.h -+++ b/src/libinput-private.h -@@ -259,12 +259,12 @@ - - typedef void (*libinput_source_dispatch_t)(void *data); - --#define log_debug(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__) --#define log_info(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__) --#define log_error(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, __VA_ARGS__) --#define log_bug_kernel(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "kernel bug: " __VA_ARGS__) --#define log_bug_libinput(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "libinput bug: " __VA_ARGS__) --#define log_bug_client(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "client bug: " __VA_ARGS__) -+#define log_debug(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__) -+#define log_info(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__) -+#define log_error(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, __VA_ARGS__) -+#define log_bug_kernel(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "kernel bug: " __VA_ARGS__) -+#define log_bug_libinput(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "libinput bug: " __VA_ARGS__) -+#define log_bug_client(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "client bug: " __VA_ARGS__) - - #define log_debug_ratelimit(li_, r_, ...) log_msg_ratelimit((li_), (r_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__) - #define log_info_ratelimit(li_, r_, ...) log_msg_ratelimit((li_), (r_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__) -@@ -281,7 +281,7 @@ - LIBINPUT_ATTRIBUTE_PRINTF(4, 5); - - void --log_msg(struct libinput *libinput, -+libinput_log_msg(struct libinput *libinput, - enum libinput_log_priority priority, - const char *format, ...) - LIBINPUT_ATTRIBUTE_PRINTF(3, 4); -diff --git a/src/libinput.c b/src/libinput.c -index 279cce0..5748e5e 100644 ---- a/src/libinput.c -+++ b/src/libinput.c -@@ -155,7 +155,7 @@ - } - - void --log_msg(struct libinput *libinput, -+libinput_log_msg(struct libinput *libinput, - enum libinput_log_priority priority, - const char *format, ...) - { -@@ -184,7 +184,7 @@ - va_end(args); - - if (state == RATELIMIT_THRESHOLD) -- log_msg(libinput, -+ libinput_log_msg(libinput, - priority, - "WARNING: log rate limit exceeded (%d msgs per %dms). Discarding future messages.\n", - ratelimit->burst, --- -2.1.2 - diff --git a/package/libinput/0002-Add-configure.ac-check-for-static_assert.patch b/package/libinput/0002-Add-configure.ac-check-for-static_assert.patch deleted file mode 100644 index 4df47b9a2b..0000000000 --- a/package/libinput/0002-Add-configure.ac-check-for-static_assert.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 0df21f54942dc82ddde4095824e7b65efb96d261 Mon Sep 17 00:00:00 2001 -From: Peter Hutterer -Date: Mon, 16 May 2016 13:32:07 +1000 -Subject: [PATCH] Add configure.ac check for static_assert - -Part of C11, defined via assert.h. - -Signed-off-by: Peter Hutterer -Signed-off-by: Baruch Siach ---- -Patch status: suggested upstream -(https://lists.freedesktop.org/archives/wayland-devel/2016-May/028881.html) - - configure.ac | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 602a86026544..28a5197cfa2e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -55,6 +55,10 @@ AC_CHECK_DECL(TFD_CLOEXEC,[], - AC_CHECK_DECL(CLOCK_MONOTONIC,[], - [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile libinput")], - [[#include ]]) -+AC_CHECK_DECL(static_assert, [], -+ [AC_DEFINE(static_assert(...), [/* */], [noop static_assert() replacement]), -+ AC_MSG_RESULT([no])], -+ [[#include ]]) - - PKG_PROG_PKG_CONFIG() - PKG_CHECK_MODULES(MTDEV, [mtdev >= 1.1.0]) --- -2.8.1 - diff --git a/package/libinput/libinput.hash b/package/libinput/libinput.hash index 43fcf5ddec..dd3573f2e1 100644 --- a/package/libinput/libinput.hash +++ b/package/libinput/libinput.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2016-April/028215.html -sha256 aee3650ad2a864ab9a10e7e63df543cc2b475f6bf3974751037a2df325dabbb1 libinput-1.2.4.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2017-January/032746.html +sha256 b7534f518d735c643aedca2fb4694683dfddc8d0600cfb628c87a18e65255832 libinput-1.6.0.tar.xz diff --git a/package/libinput/libinput.mk b/package/libinput/libinput.mk index bd8fe2cbcc..52aca9acfd 100644 --- a/package/libinput/libinput.mk +++ b/package/libinput/libinput.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBINPUT_VERSION = 1.2.4 +LIBINPUT_VERSION = 1.6.0 LIBINPUT_SOURCE = libinput-$(LIBINPUT_VERSION).tar.xz LIBINPUT_SITE = http://www.freedesktop.org/software/libinput LIBINPUT_DEPENDENCIES = host-pkgconf libevdev mtdev udev @@ -13,8 +13,6 @@ LIBINPUT_LICENSE = MIT LIBINPUT_LICENSE_FILES = COPYING # Tests need fork, so just disable them everywhere. LIBINPUT_CONF_OPTS = --disable-tests --disable-libwacom -# Patching configure.ac -LIBINPUT_AUTORECONF = YES ifeq ($(BR2_PACKAGE_LIBGTK3),y) LIBINPUT_CONF_OPTS += --enable-event-gui diff --git a/package/libiqrf/libiqrf.hash b/package/libiqrf/libiqrf.hash new file mode 100644 index 0000000000..12d526c83c --- /dev/null +++ b/package/libiqrf/libiqrf.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 8111031dd9dd6093a1927eb32dd7476fe22cfee9190043aa8e4c88003c104b16 libiqrf-v0.1.2.tar.gz diff --git a/package/libiscsi/0001-Do-not-use-I-usr-include.-This-is-unsafe-when-cross-compiling.patch b/package/libiscsi/0001-Do-not-use-I-usr-include.-This-is-unsafe-when-cross-compiling.patch new file mode 100644 index 0000000000..dc047ef49c --- /dev/null +++ b/package/libiscsi/0001-Do-not-use-I-usr-include.-This-is-unsafe-when-cross-compiling.patch @@ -0,0 +1,67 @@ +From f27bdf64f0c375352ca42928071a9178a5a04c46 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Sun, 16 Oct 2016 10:53:13 +0100 +Subject: [PATCH] Do not use -I/usr/include. This is unsafe when cross-compiling. + +Upstream status: PR sent (https://github.com/sahlberg/libiscsi/pull/219) + +Signed-off-by: Vicente Olivert Riera +--- + examples/Makefile.am | 2 +- + lib/Makefile.am | 2 +- + tests/Makefile.am | 2 +- + utils/Makefile.am | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/examples/Makefile.am b/examples/Makefile.am +index 0de0b1f..42ad818 100644 +--- a/examples/Makefile.am ++++ b/examples/Makefile.am +@@ -1,6 +1,6 @@ + AM_CPPFLAGS=-I. -I${srcdir}/../include "-D_U_=__attribute__((unused))" \ + "-D_R_(A,B)=__attribute__((format(printf,A,B)))" +-AM_CFLAGS=$(WARN_CFLAGS) -I/usr/include ++AM_CFLAGS=$(WARN_CFLAGS) + LDADD = ../lib/libiscsi.la + + noinst_PROGRAMS = iscsiclient iscsi-dd +diff --git a/lib/Makefile.am b/lib/Makefile.am +index d612fb7..47ffc33 100644 +--- a/lib/Makefile.am ++++ b/lib/Makefile.am +@@ -29,7 +29,7 @@ libiscsi_la_CPPFLAGS = -I${srcdir}/../include -I$(srcdir)/include \ + "-D_U_=__attribute__((unused))" \ + "-D_R_(A,B)=__attribute__((format(printf,A,B)))" + +-AM_CFLAGS=$(WARN_CFLAGS) -I/usr/include ++AM_CFLAGS=$(WARN_CFLAGS) + + dist_noinst_DATA = libiscsi.syms libiscsi.def + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 9d699fc..b4cbf21 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1,6 +1,6 @@ + AM_CPPFLAGS = -I../include "-D_U_=__attribute__((unused))" \ + "-D_R_(A,B)=__attribute__((format(printf,A,B)))" +-AM_CFLAGS = $(WARN_CFLAGS) -I/usr/include ++AM_CFLAGS = $(WARN_CFLAGS) + LDADD = ../lib/libiscsi.la + + noinst_PROGRAMS = prog_reconnect prog_reconnect_timeout prog_noop_reply \ +diff --git a/utils/Makefile.am b/utils/Makefile.am +index 657ca9d..bde1c81 100644 +--- a/utils/Makefile.am ++++ b/utils/Makefile.am +@@ -1,6 +1,6 @@ + AM_CPPFLAGS = -I${srcdir}/../include "-D_U_=__attribute__((unused))" \ + "-D_R_(A,B)=__attribute__((format(printf,A,B)))" +-AM_CFLAGS = $(WARN_CFLAGS) -I/usr/include ++AM_CFLAGS = $(WARN_CFLAGS) + LDADD = ../lib/libiscsi.la + + bin_PROGRAMS = iscsi-inq iscsi-ls iscsi-perf iscsi-readcapacity16 \ +-- +2.10.0 + diff --git a/package/libiscsi/libiscsi.hash b/package/libiscsi/libiscsi.hash index 8ccc264784..4f7d1af50e 100644 --- a/package/libiscsi/libiscsi.hash +++ b/package/libiscsi/libiscsi.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 26aa5583053d4fe0d4686f76a76c216c7dce00130f008e652ece305b88758ff1 libiscsi-1.15.0.tar.gz +sha256 464d104e12533dc11f0dd7662cbc2f01c132f94aa4f5bd519e3413ef485830e8 libiscsi-1.18.0.tar.gz diff --git a/package/libiscsi/libiscsi.mk b/package/libiscsi/libiscsi.mk index 71c10c1014..4c8a229265 100644 --- a/package/libiscsi/libiscsi.mk +++ b/package/libiscsi/libiscsi.mk @@ -4,14 +4,17 @@ # ################################################################################ -LIBISCSI_VERSION = 1.15.0 -LIBISCSI_SITE = https://sites.google.com/site/libiscsitarballs/libiscsitarballs +LIBISCSI_VERSION = 1.18.0 +LIBISCSI_SITE = $(call github,sahlberg,libiscsi,$(LIBISCSI_VERSION)) LIBISCSI_LICENSE = GPLv2+, LGPLv2.1+ LIBISCSI_LICENSE_FILES = COPYING LICENCE-GPL-2.txt LICENCE-LGPL-2.1.txt LIBISCSI_INSTALL_STAGING = YES +LIBISCSI_AUTORECONF = YES -# Force libiscsi to use gcc as the linker, otherwise it uses directly -# ld, which doesn't work for certain architectures. -LIBISCSI_CONF_ENV = LD="$(TARGET_CC)" +# We need to create the m4 directory to make autoreconf work properly. +define LIBISCSI_CREATE_M4_DIR + mkdir -p $(@D)/m4 +endef +LIBISCSI_POST_PATCH_HOOKS += LIBISCSI_CREATE_M4_DIR $(eval $(autotools-package)) diff --git a/package/libite/Config.in b/package/libite/Config.in new file mode 100644 index 0000000000..80d29791db --- /dev/null +++ b/package/libite/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_LIBITE + bool "libite" + help + Libite is a lightweight library of frog DNA. It can be used + to fill the gaps in any dinosaur project. It holds useful + functions and macros developed by both Finit and the OpenBSD + project. Most notably the string functions: strlcpy(3), + strlcat(3) and the highly useful *BSD sys/queue.h and + sys/tree.h API's. + + Libite is the frog DNA missing in GNU libc. However, -lite + does not aim to become another GLIB! One noticeable gap in + GLIBC is the missing _SAFE macros in the BSD sys/queue.h API + - highly recommended when traversing lists to delete/free + nodes. + + https://github.com/troglobit/libite diff --git a/package/libite/libite.hash b/package/libite/libite.hash new file mode 100644 index 0000000000..67ad009bf5 --- /dev/null +++ b/package/libite/libite.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 b27e4af69e9e5b4d00924538d3a41b53752082cc439b9246edec5501aff2f22f libite-v1.8.2.tar.gz diff --git a/package/libite/libite.mk b/package/libite/libite.mk new file mode 100644 index 0000000000..b56c430b06 --- /dev/null +++ b/package/libite/libite.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# libite +# +################################################################################ + +LIBITE_VERSION = v1.8.2 +LIBITE_SITE = $(call github,troglobit,libite,$(LIBITE_VERSION)) +LIBITE_LICENSE = MIT, X11, ISC, BSD-2c +LIBITE_LICENSE_FILES = LICENSE chomp.c pidfile.c +LIBITE_INSTALL_STAGING = YES +LIBITE_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/libjpeg/libjpeg.mk b/package/libjpeg/libjpeg.mk index 14aba61fd4..b8f4bac56e 100644 --- a/package/libjpeg/libjpeg.mk +++ b/package/libjpeg/libjpeg.mk @@ -10,6 +10,7 @@ LIBJPEG_SOURCE = jpegsrc.v$(LIBJPEG_VERSION).tar.gz LIBJPEG_LICENSE = jpeg-license (BSD-3c-like) LIBJPEG_LICENSE_FILES = README LIBJPEG_INSTALL_STAGING = YES +LIBJPEG_PROVIDES = jpeg define LIBJPEG_REMOVE_USELESS_TOOLS rm -f $(addprefix $(TARGET_DIR)/usr/bin/,cjpeg djpeg jpegtran rdjpgcom wrjpgcom) diff --git a/package/libksba/Config.in b/package/libksba/Config.in index 780fed9b6a..1f25d6dbe2 100644 --- a/package/libksba/Config.in +++ b/package/libksba/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBKSBA bool "libksba" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error select BR2_PACKAGE_LIBGPG_ERROR help CMS and X.509 library diff --git a/package/libksba/libksba.hash b/package/libksba/libksba.hash index 92abbab6ea..f0a38f3de3 100644 --- a/package/libksba/libksba.hash +++ b/package/libksba/libksba.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 f6c2883cebec5608692d8730843d87f237c0964d923bbe7aa89c05f20558ad4f libksba-1.3.4.tar.bz2 +sha256 41444fd7a6ff73a79ad9728f985e71c9ba8cd3e5e53358e70d5f066d35c1a340 libksba-1.3.5.tar.bz2 diff --git a/package/libksba/libksba.mk b/package/libksba/libksba.mk index 40a8c9b5a4..e29b6ae1dd 100644 --- a/package/libksba/libksba.mk +++ b/package/libksba/libksba.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBKSBA_VERSION = 1.3.4 +LIBKSBA_VERSION = 1.3.5 LIBKSBA_SOURCE = libksba-$(LIBKSBA_VERSION).tar.bz2 LIBKSBA_SITE = ftp://ftp.gnupg.org/gcrypt/libksba LIBKSBA_LICENSE = LGPLv3+ or GPLv2+ (library, headers), GPLv3+ (manual, tests, build system) diff --git a/package/libllcp/libllcp.hash b/package/libllcp/libllcp.hash new file mode 100644 index 0000000000..47c909f1e6 --- /dev/null +++ b/package/libllcp/libllcp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 4336533304a11ecb3041d211ccecd7759b7c7aad4f44037721803e2da1094d22 libllcp-05dfa8003433a7070bfd8ae02efdb0203bbf34aa.tar.gz diff --git a/package/liblockfile/liblockfile.mk b/package/liblockfile/liblockfile.mk index 8de598f19b..e42b83066c 100644 --- a/package/liblockfile/liblockfile.mk +++ b/package/liblockfile/liblockfile.mk @@ -18,7 +18,7 @@ LIBLOCKFILE_CONF_OPTS = --mandir=/usr/share/man define LIBLOCKFILE_INSTALL_STAGING_CMDS mkdir -p $(addprefix $(STAGING_DIR)/usr/share/man/man,1 3) rm -f $(STAGING_DIR)/usr/lib/liblockfile.so - $(MAKE) -C $(LIBLOCKFILE_DIR) ROOT=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(LIBLOCKFILE_DIR) ROOT=$(STAGING_DIR) install ln -sf liblockfile.so $(STAGING_DIR)/usr/lib/liblockfile.so.1 endef diff --git a/package/liblog4c-localtime/liblog4c-localtime.hash b/package/liblog4c-localtime/liblog4c-localtime.hash new file mode 100644 index 0000000000..2e4e6417ce --- /dev/null +++ b/package/liblog4c-localtime/liblog4c-localtime.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a1f68d8251509c0171f8bfea42f9e2a5255a4185f7dcbe67f584aa09709b2496 liblog4c-localtime-v1.0.tar.gz diff --git a/package/liblogging/Config.in b/package/liblogging/Config.in index 12ee950dc8..23c3c1ad2d 100644 --- a/package/liblogging/Config.in +++ b/package/liblogging/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_LIBLOGGING bool "liblogging" - select BR2_PACKAGE_SYSTEMD_COMPAT if BR2_INIT_SYSTEMD help Liblogging is an easy to use library for logging. It offers an enhanced replacement diff --git a/package/libmad/Config.in b/package/libmad/Config.in index 7d66976c1b..f93f54ab12 100644 --- a/package/libmad/Config.in +++ b/package/libmad/Config.in @@ -37,6 +37,8 @@ config BR2_PACKAGE_LIBMAD_SSO config BR2_PACKAGE_LIBMAD_ASO bool "Architecture-specific optimizations" + # arm optimization needs classic arm instructions support + depends on !(BR2_arm && !BR2_ARM_CPU_HAS_ARM) default y help Use certain architecture-specific optimizations. diff --git a/package/libmbim/libmbim.hash b/package/libmbim/libmbim.hash index 2c10b4f2db..21921c9df4 100644 --- a/package/libmbim/libmbim.hash +++ b/package/libmbim/libmbim.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 7bd9af154e88ee1cccaf2fedd05e0f5cb82e3359ab6ad2a75cfec98bf57f973a libmbim-1.12.4.tar.xz +sha256 ca8d52a95a18cbabae8f15f83f1572316e888b6504f946e6645d24405127ab5b libmbim-1.14.0.tar.xz diff --git a/package/libmbim/libmbim.mk b/package/libmbim/libmbim.mk index 746596ed98..0f757c0284 100644 --- a/package/libmbim/libmbim.mk +++ b/package/libmbim/libmbim.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBMBIM_VERSION = 1.12.4 +LIBMBIM_VERSION = 1.14.0 LIBMBIM_SITE = http://www.freedesktop.org/software/libmbim LIBMBIM_SOURCE = libmbim-$(LIBMBIM_VERSION).tar.xz LIBMBIM_LICENSE = LGPLv2+ (library), GPLv2+ (programs) diff --git a/package/libmemcached/libmemcached.mk b/package/libmemcached/libmemcached.mk index a5ea4f5d3e..36d0913962 100644 --- a/package/libmemcached/libmemcached.mk +++ b/package/libmemcached/libmemcached.mk @@ -18,9 +18,7 @@ LIBMEMCACHED_AUTORECONF = YES LIBMEMCACHED_LICENSE = BSD-3c LIBMEMCACHED_LICENSE_FILES = COPYING -# Help libmemcached to understand that -fPIE and -pie should not be -# used when linking statically. -ifeq ($(BR2_STATIC_LIBS),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) LIBMEMCACHED_CONF_ENV += \ ax_cv_check_cflags__Werror__fPIE=no \ ax_cv_check_cflags__Werror__pie=no \ diff --git a/package/libmicrohttpd/Config.in b/package/libmicrohttpd/Config.in index ec0b715fb5..302dbb7ac8 100644 --- a/package/libmicrohttpd/Config.in +++ b/package/libmicrohttpd/Config.in @@ -11,6 +11,7 @@ if BR2_PACKAGE_LIBMICROHTTPD config BR2_PACKAGE_LIBMICROHTTPD_SSL bool "https support" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt depends on BR2_USE_WCHAR select BR2_PACKAGE_GNUTLS select BR2_PACKAGE_LIBGCRYPT diff --git a/package/libmicrohttpd/libmicrohttpd.hash b/package/libmicrohttpd/libmicrohttpd.hash index f0f15012ff..5c15b9dfde 100644 --- a/package/libmicrohttpd/libmicrohttpd.hash +++ b/package/libmicrohttpd/libmicrohttpd.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 87667e158f2bf8c691a002e256ffe30885d4121a9ee4143af0320c47cdf8a2a4 libmicrohttpd-0.9.48.tar.gz +# Locally calculated +sha256 54797f6e763d417627f89f60e4ae0a431dab0523f92f83def23ea02d0defafea libmicrohttpd-0.9.52.tar.gz diff --git a/package/libmicrohttpd/libmicrohttpd.mk b/package/libmicrohttpd/libmicrohttpd.mk index 9c41b89405..83791b34f7 100644 --- a/package/libmicrohttpd/libmicrohttpd.mk +++ b/package/libmicrohttpd/libmicrohttpd.mk @@ -4,11 +4,22 @@ # ################################################################################ -LIBMICROHTTPD_VERSION = 0.9.48 +LIBMICROHTTPD_VERSION = 0.9.52 LIBMICROHTTPD_SITE = $(BR2_GNU_MIRROR)/libmicrohttpd LIBMICROHTTPD_LICENSE_FILES = COPYING LIBMICROHTTPD_INSTALL_STAGING = YES LIBMICROHTTPD_CONF_OPTS = --disable-curl --disable-examples +LIBMICROHTTPD_CFLAGS = $(TARGET_CFLAGS) -std=c99 + +# gcc on arc and bfin doesn't define _REENTRANT when -pthread is +# passed while it should. Compensate this defiency here otherwise +# libmicrohttpd configure script doesn't find that thread support is +# enabled. +ifeq ($(BR2_arc)$(BR2_bfin),y) +LIBMICROHTTPD_CFLAGS += -D_REENTRANT +endif + +LIBMICROHTTPD_CONF_ENV += CFLAGS="$(LIBMICROHTTPD_CFLAGS)" ifeq ($(BR2_PACKAGE_LIBMICROHTTPD_SSL),y) LIBMICROHTTPD_LICENSE = LGPLv2.1+ diff --git a/package/libminiupnpc/Config.in b/package/libminiupnpc/Config.in new file mode 100644 index 0000000000..c241707392 --- /dev/null +++ b/package/libminiupnpc/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBMINIUPNPC + bool "libminiupnpc" + depends on !BR2_BINFMT_FLAT + depends on !BR2_STATIC_LIBS + help + The UPnP protocol is supported by most home adsl/cable routers + and Microsoft Windows 2K/XP. The aim of the MiniUPnP project is + to bring a free software solution to support the "Internet + Gateway Device" part of the protocol. + + Miniupnpc aims at the simplest library possible, with the + smallest footprint and no dependencies to other libraries such + as XML parsers or HTTP implementations. All the code is pure + ANSI C. + + http://miniupnp.free.fr + +comment "libminiupnpc needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + depends on !BR2_BINFMT_FLAT diff --git a/package/libminiupnpc/libminiupnpc.hash b/package/libminiupnpc/libminiupnpc.hash new file mode 100644 index 0000000000..985d69d45f --- /dev/null +++ b/package/libminiupnpc/libminiupnpc.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 d434ceb8986efbe199c5ca53f90ed53eab290b1e6d0530b717eb6fa49d61f93b miniupnpc-2.0.tar.gz diff --git a/package/libminiupnpc/libminiupnpc.mk b/package/libminiupnpc/libminiupnpc.mk new file mode 100644 index 0000000000..0eb7cf6397 --- /dev/null +++ b/package/libminiupnpc/libminiupnpc.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# libminiupnpc +# +################################################################################ + +LIBMINIUPNPC_VERSION = 2.0 +LIBMINIUPNPC_SOURCE = miniupnpc-$(LIBMINIUPNPC_VERSION).tar.gz +LIBMINIUPNPC_SITE = http://miniupnp.free.fr/files +LIBMINIUPNPC_INSTALL_STAGING = YES +LIBMINIUPNPC_LICENSE = BSD-3c +LIBMINIUPNPC_LICENSE_FILES = LICENSE + +$(eval $(cmake-package)) diff --git a/package/libmnl/0001-uclinux.patch b/package/libmnl/0001-uclinux.patch deleted file mode 100644 index e8f97c6c17..0000000000 --- a/package/libmnl/0001-uclinux.patch +++ /dev/null @@ -1,26 +0,0 @@ -From ae2acfa7d287e3ffc0bb66091059b86f62775bd5 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 10 Sep 2013 15:24:47 -0300 -Subject: [PATCH] configure: uclinux is also linux - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index dcd3cf8..313a015 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -17,7 +17,7 @@ AC_DISABLE_STATIC - LT_INIT - CHECK_GCC_FVISIBILITY - case "$host" in --*-*-linux*) ;; -+*-*-linux* | *-*-uclinux*) ;; - *) AC_MSG_ERROR([Linux only, dude!]);; - esac - --- -1.8.1.5 - diff --git a/package/libmnl/libmnl.hash b/package/libmnl/libmnl.hash index c16dfe7ae6..98385b857c 100644 --- a/package/libmnl/libmnl.hash +++ b/package/libmnl/libmnl.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/libmnl/libmnl-1.0.3.tar.bz2.{md5sum,sha1sum} -md5 7d95fc3bea3365bc03c48e484224f65f libmnl-1.0.3.tar.bz2 -sha1 c27e25f67c6422ebf893fc3a844af8085a1c5b63 libmnl-1.0.3.tar.bz2 +# From ftp://ftp.netfilter.org/pub/libmnl/libmnl-1.0.4.tar.bz2.{md5sum,sha1sum} +md5 be9b4b5328c6da1bda565ac5dffadb2d libmnl-1.0.4.tar.bz2 +sha1 2db40dea612e88c62fd321906be40ab5f8f1685a libmnl-1.0.4.tar.bz2 diff --git a/package/libmnl/libmnl.mk b/package/libmnl/libmnl.mk index b16c5345c0..407c4f19ba 100644 --- a/package/libmnl/libmnl.mk +++ b/package/libmnl/libmnl.mk @@ -4,11 +4,10 @@ # ################################################################################ -LIBMNL_VERSION = 1.0.3 +LIBMNL_VERSION = 1.0.4 LIBMNL_SOURCE = libmnl-$(LIBMNL_VERSION).tar.bz2 LIBMNL_SITE = http://netfilter.org/projects/libmnl/files LIBMNL_INSTALL_STAGING = YES -LIBMNL_AUTORECONF = YES LIBMNL_LICENSE = LGPLv2.1+ LIBMNL_LICENSE_FILES = COPYING diff --git a/package/libmpeg2/0003-fix-arm-detection.patch b/package/libmpeg2/0003-fix-arm-detection.patch new file mode 100644 index 0000000000..69ec4547de --- /dev/null +++ b/package/libmpeg2/0003-fix-arm-detection.patch @@ -0,0 +1,39 @@ +Improve the ARM detection to work on Thumb-only architecture + +The ARM-specific assembly code doesn't build on Thumb-only +architectures such as ARMv7-M, but the configure script assumes that +if the host tuple is arm*, then it can build and use the ARM optimized +code. + +This patch improves the configure.ac detection logic, by building one +of the instruction of the optimized assembly code, and using this to +decide whether or not the optimizations should be enabled. + +Signed-off-by: Thomas Petazzoni + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -101,8 +101,10 @@ + alpha*) + AC_DEFINE([ARCH_ALPHA],,[alpha architecture]);; + arm*) +- arm_conditional=: +- AC_DEFINE([ARCH_ARM],,[ARM architecture]);; ++ AC_TRY_LINK([], [asm(".syntax divided\nstmfd sp!,{r4-r11,lr}")], ++ [AC_DEFINE([ARCH_ARM],,[ARM architecture]) ++ use_arm_optimization=yes], ++ [use_arm_optimization=no]) + esac + elif test x"$CC" = x"tendracc"; then + dnl TenDRA portability checking compiler +@@ -122,7 +124,7 @@ + esac + fi + +-AM_CONDITIONAL(ARCH_ARM, ${arm_conditional}) ++AM_CONDITIONAL(ARCH_ARM, test "${use_arm_optimization}" = "yes") + + dnl Checks for libtool - this must be done after we set cflags + AC_LIBTOOL_WIN32_DLL diff --git a/package/libnatpmp/Config.in b/package/libnatpmp/Config.in new file mode 100644 index 0000000000..879e5ee1ac --- /dev/null +++ b/package/libnatpmp/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_LIBNATPMP + bool "libnatpmp" + depends on !BR2_BINFMT_FLAT + depends on !BR2_STATIC_LIBS + help + libnatpmp is an attempt to make a portable and fully compliant + implementation of the NAT-PMP protocol for the client side. It + is based on non blocking sockets and all calls of the API are + asynchronous. It is therefore very easy to integrate the + NAT-PMP code to any event driven code. + + http://miniupnp.free.fr/libnatpmp.html + +comment "libnatpmp needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + depends on !BR2_BINFMT_FLAT diff --git a/package/libnatpmp/libnatpmp.hash b/package/libnatpmp/libnatpmp.hash new file mode 100644 index 0000000000..a5cab3ce26 --- /dev/null +++ b/package/libnatpmp/libnatpmp.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 e1aa9c4c4219bc06943d6b2130f664daee213fb262fcb94dd355815b8f4536b0 libnatpmp-20150609.tar.gz diff --git a/package/libnatpmp/libnatpmp.mk b/package/libnatpmp/libnatpmp.mk new file mode 100644 index 0000000000..cdd65e96cd --- /dev/null +++ b/package/libnatpmp/libnatpmp.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# libnatpmp +# +################################################################################ + +LIBNATPMP_VERSION = 20150609 +LIBNATPMP_SITE = http://miniupnp.free.fr/files +LIBNATPMP_INSTALL_STAGING = YES +LIBNATPMP_LICENSE = BSD-3c +LIBNATPMP_LICENSE_FILES = LICENSE + +define LIBNATPMP_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + CC="$(TARGET_CC)" +endef + +define LIBNATPMP_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=$(STAGING_DIR) \ + HEADERS='declspec.h natpmp.h' \ + $(TARGET_CONFIGURE_OPTS) install +endef + +define LIBNATPMP_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=$(TARGET_DIR) \ + $(TARGET_CONFIGURE_OPTS) install +endef + +$(eval $(generic-package)) diff --git a/package/libndp/libndp.hash b/package/libndp/libndp.hash new file mode 100644 index 0000000000..51e312dd79 --- /dev/null +++ b/package/libndp/libndp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 42c0a8938d4302c72a42e2d954deef7e4903bb3974da6804a929a3cd0b5b6aa7 libndp-v1.5.tar.gz diff --git a/package/libnet/0001-support-musl-libc.patch b/package/libnet/0001-support-musl-libc.patch new file mode 100644 index 0000000000..0704157bb5 --- /dev/null +++ b/package/libnet/0001-support-musl-libc.patch @@ -0,0 +1,50 @@ +From ffd7fab744a9ad2893169a8fb6244074604d5d0d Mon Sep 17 00:00:00 2001 +From: rofl0r +Date: Tue, 12 Aug 2014 21:51:39 +0200 +Subject: [PATCH] Support musl libc, remove support for glibc < 2.1 + +The workarounds for glibc < 2.1 (was released february 1999) break the +build with musl libc. + +It is very unlikely that 2.0 or earlier is still in use, and if so, +1) that's a big security hole +2) code wouldnt compile anyway since noone tested build in the last decade +3) user of it wouldn't expect anyway to get bleeding edge sw built on it, + so he would just use the latest version that works for him. + +Closes #52 +--- + libnet/src/libnet_link_linux.c | 11 ----------- + 1 file changed, 11 deletions(-) + +diff --git a/libnet/src/libnet_link_linux.c b/libnet/src/libnet_link_linux.c +index 054458d..3c6df3c 100644 +--- a/src/libnet_link_linux.c ++++ b/src/libnet_link_linux.c +@@ -30,26 +30,15 @@ + #include + + #include +-#if (__GLIBC__) + #include + #include +-#else +-#include +-#include +-#endif + + #if (HAVE_PACKET_SOCKET) + #ifndef SOL_PACKET + #define SOL_PACKET 263 + #endif /* SOL_PACKET */ +-#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 + #include + #include /* the L2 protocols */ +-#else +-#include +-#include +-#include /* The L2 protocols */ +-#endif + #endif /* HAVE_PACKET_SOCKET */ + + #include "../include/libnet.h" diff --git a/package/libnet/Config.in b/package/libnet/Config.in index 8a881286e7..7186972b7e 100644 --- a/package/libnet/Config.in +++ b/package/libnet/Config.in @@ -1,12 +1,7 @@ config BR2_PACKAGE_LIBNET bool "libnet" - # Build with musl fails due to header issues - depends on !BR2_TOOLCHAIN_USES_MUSL help libnet provides a portable framework for low-level network packet construction. http://sourceforge.net/projects/libnet-dev - -comment "libnet needs a (e)glibc or uClibc toolchain" - depends on BR2_TOOLCHAIN_USES_MUSL diff --git a/package/libnetfilter_acct/0001-uclinux.patch b/package/libnetfilter_acct/0001-uclinux.patch deleted file mode 100644 index 070f02cdce..0000000000 --- a/package/libnetfilter_acct/0001-uclinux.patch +++ /dev/null @@ -1,26 +0,0 @@ -From bfcaf00a8c972e2c10412d917f08626eb05079c7 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 10 Sep 2013 15:32:03 -0300 -Subject: [PATCH] configure: uclinux is also linux - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index ad1bef8..24a7bb9 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -22,7 +22,7 @@ AC_DISABLE_STATIC - LT_INIT - CHECK_GCC_FVISIBILITY - case "$host" in --*-*-linux*) ;; -+*-*-linux* | *-*-uclinux*) ;; - *) AC_MSG_ERROR([Linux only, dude!]);; - esac - --- -1.8.1.5 - diff --git a/package/libnetfilter_acct/libnetfilter_acct.hash b/package/libnetfilter_acct/libnetfilter_acct.hash index 852617c0b0..7c38664612 100644 --- a/package/libnetfilter_acct/libnetfilter_acct.hash +++ b/package/libnetfilter_acct/libnetfilter_acct.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/libnetfilter_acct/libnetfilter_acct-1.0.2.tar.bz2.{md5sum,sha1sum} -md5 2118d9514c079839ebd9cb3144ad2ad7 libnetfilter_acct-1.0.2.tar.bz2 -sha1 ca0186912b5ee57088a20dd0a5b78606fd6af02e libnetfilter_acct-1.0.2.tar.bz2 +# From ftp://ftp.netfilter.org/pub/libnetfilter_acct/libnetfilter_acct-1.0.3.tar.bz2.{md5sum,sha1sum} +md5 814b2972b2f5c740ff87510bc109168b libnetfilter_acct-1.0.3.tar.bz2 +sha1 4b9073e4aa989b0f000c8da1ab01b22fceed52b2 libnetfilter_acct-1.0.3.tar.bz2 diff --git a/package/libnetfilter_acct/libnetfilter_acct.mk b/package/libnetfilter_acct/libnetfilter_acct.mk index 5adb6e0dfe..c2fa234778 100644 --- a/package/libnetfilter_acct/libnetfilter_acct.mk +++ b/package/libnetfilter_acct/libnetfilter_acct.mk @@ -4,12 +4,11 @@ # ################################################################################ -LIBNETFILTER_ACCT_VERSION = 1.0.2 +LIBNETFILTER_ACCT_VERSION = 1.0.3 LIBNETFILTER_ACCT_SOURCE = libnetfilter_acct-$(LIBNETFILTER_ACCT_VERSION).tar.bz2 LIBNETFILTER_ACCT_SITE = http://www.netfilter.org/projects/libnetfilter_acct/files LIBNETFILTER_ACCT_INSTALL_STAGING = YES LIBNETFILTER_ACCT_DEPENDENCIES = host-pkgconf libmnl -LIBNETFILTER_ACCT_AUTORECONF = YES LIBNETFILTER_ACCT_LICENSE = LGPLv2.1+ LIBNETFILTER_ACCT_LICENSE_FILES = COPYING diff --git a/package/libnetfilter_conntrack/libnetfilter_conntrack.hash b/package/libnetfilter_conntrack/libnetfilter_conntrack.hash index 67d1e408a1..de9d1d3fcf 100644 --- a/package/libnetfilter_conntrack/libnetfilter_conntrack.hash +++ b/package/libnetfilter_conntrack/libnetfilter_conntrack.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/libnetfilter_conntrack-1.0.5.tar.bz2.{md5sum,sha1sum} -md5 6aa1bd3c1d0723235ac897087b4cd4e5 libnetfilter_conntrack-1.0.5.tar.bz2 -sha1 9aed8733d98af39d57fffd929c2bea70f1dcba06 libnetfilter_conntrack-1.0.5.tar.bz2 +# From ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/libnetfilter_conntrack-1.0.6.tar.bz2.{md5sum,sha1sum} +md5 7139c5f408dd9606ffecfd5dcda8175b libnetfilter_conntrack-1.0.6.tar.bz2 +sha1 015f985a8e171889a67769ba02d070eca53bac07 libnetfilter_conntrack-1.0.6.tar.bz2 diff --git a/package/libnetfilter_conntrack/libnetfilter_conntrack.mk b/package/libnetfilter_conntrack/libnetfilter_conntrack.mk index 33f129404e..ec05f6dc32 100644 --- a/package/libnetfilter_conntrack/libnetfilter_conntrack.mk +++ b/package/libnetfilter_conntrack/libnetfilter_conntrack.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNETFILTER_CONNTRACK_VERSION = 1.0.5 +LIBNETFILTER_CONNTRACK_VERSION = 1.0.6 LIBNETFILTER_CONNTRACK_SOURCE = libnetfilter_conntrack-$(LIBNETFILTER_CONNTRACK_VERSION).tar.bz2 LIBNETFILTER_CONNTRACK_SITE = http://www.netfilter.org/projects/libnetfilter_conntrack/files LIBNETFILTER_CONNTRACK_INSTALL_STAGING = YES diff --git a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch index 26c9d2e646..6f5be4e7ef 100644 --- a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch +++ b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch @@ -1,7 +1,7 @@ -From 85dfe7dcd20c54e6d75d66a400f7ae038a52239b Mon Sep 17 00:00:00 2001 +From 610d015143e88629eab07067a4ae0c1d7548cfaf Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni -Date: Mon, 29 Dec 2014 15:31:40 +0100 -Subject: [PATCH 1/2] Rename xfree() to libnftnl_xfree() to avoid symbol naming +Date: Thu, 2 Jun 2016 23:03:27 -0300 +Subject: [PATCH] Rename xfree() to libnftnl_xfree() to avoid symbol naming conflict When ELF binaries and shared libraries are used, the internal @@ -20,34 +20,37 @@ To solve this, this patch renames the libnftnl xfree() function to libnftnl_xfree(). Signed-off-by: Thomas Petazzoni -[Gustavo: update for version 1.0.5] - -Signed-off-by: Thomas Petazzoni +[Gustavo: update for version 1.0.7] +Signed-off-by: Gustavo Zacarias --- include/utils.h | 2 +- - src/chain.c | 28 ++++++++++++++-------------- + src/chain.c | 36 ++++++++++++++++++------------------ src/common.c | 2 +- src/expr.c | 4 ++-- - src/expr/data_reg.c | 4 ++-- + src/expr/data_reg.c | 2 +- + src/expr/dynset.c | 2 +- src/expr/immediate.c | 2 +- src/expr/log.c | 6 +++--- + src/expr/lookup.c | 2 +- src/expr/match.c | 6 +++--- src/expr/target.c | 6 +++--- src/gen.c | 2 +- - src/mxml.c | 2 +- - src/rule.c | 26 +++++++++++++------------- + src/object.c | 14 +++++++------- + src/rule.c | 32 ++++++++++++++++---------------- src/ruleset.c | 2 +- - src/set.c | 22 +++++++++++----------- - src/set_elem.c | 16 ++++++++-------- + src/set.c | 26 +++++++++++++------------- + src/set_elem.c | 28 ++++++++++++++-------------- src/table.c | 14 +++++++------- + src/trace.c | 14 +++++++------- + src/udata.c | 2 +- src/utils.c | 2 +- - 17 files changed, 73 insertions(+), 73 deletions(-) + 21 files changed, 103 insertions(+), 103 deletions(-) diff --git a/include/utils.h b/include/utils.h -index f7436fa..e03ee3b 100644 +index 924df32..f02fce7 100644 --- a/include/utils.h +++ b/include/utils.h -@@ -17,7 +17,7 @@ +@@ -19,7 +19,7 @@ #define __noreturn __attribute__((__noreturn__)) @@ -57,141 +60,164 @@ index f7436fa..e03ee3b 100644 #define div_round_up(n, d) (((n) + (d) - 1) / (d)) diff --git a/src/chain.c b/src/chain.c -index 8a8e8b8..37a27b1 100644 +index 49cd094..444cb79 100644 --- a/src/chain.c +++ b/src/chain.c -@@ -96,13 +96,13 @@ EXPORT_SYMBOL(nftnl_chain_alloc, nft_chain_alloc); - void nftnl_chain_free(struct nftnl_chain *c) +@@ -96,14 +96,14 @@ EXPORT_SYMBOL_ALIAS(nftnl_chain_alloc, nft_chain_alloc); + void nftnl_chain_free(const struct nftnl_chain *c) { - if (c->table != NULL) + if (c->flags & (1 << NFTNL_CHAIN_NAME)) +- xfree(c->name); ++ nftnl_xfree(c->name); + if (c->flags & (1 << NFTNL_CHAIN_TABLE)) - xfree(c->table); + nftnl_xfree(c->table); - if (c->type != NULL) + if (c->flags & (1 << NFTNL_CHAIN_TYPE)) - xfree(c->type); + nftnl_xfree(c->type); - if (c->dev != NULL) + if (c->flags & (1 << NFTNL_CHAIN_DEV)) - xfree(c->dev); -+ nftnl_xfree(c->dev); - - xfree(c); ++ nftnl_xfree(c->dev); + nftnl_xfree(c); } - EXPORT_SYMBOL(nftnl_chain_free, nft_chain_free); + EXPORT_SYMBOL_ALIAS(nftnl_chain_free, nft_chain_free); + +@@ -120,15 +120,15 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) -@@ -120,7 +120,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) switch (attr) { - case NFTNL_CHAIN_TABLE: - if (c->table) { -- xfree(c->table); -+ nftnl_xfree(c->table); - c->table = NULL; - } + case NFTNL_CHAIN_NAME: +- xfree(c->name); ++ nftnl_xfree(c->name); break; -@@ -128,7 +128,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) + case NFTNL_CHAIN_TABLE: +- xfree(c->table); ++ nftnl_xfree(c->table); + break; + case NFTNL_CHAIN_USE: break; case NFTNL_CHAIN_TYPE: - if (c->type) { -- xfree(c->type); -+ nftnl_xfree(c->type); - c->type = NULL; - } +- xfree(c->type); ++ nftnl_xfree(c->type); break; -@@ -143,7 +143,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) + case NFTNL_CHAIN_HOOKNUM: + case NFTNL_CHAIN_PRIO: +@@ -139,7 +139,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) + case NFTNL_CHAIN_FAMILY: break; case NFTNL_CHAIN_DEV: - if (c->dev) { -- xfree(c->dev); -+ nftnl_xfree(c->dev); - c->dev = NULL; - } +- xfree(c->dev); ++ nftnl_xfree(c->dev); break; -@@ -179,7 +179,7 @@ void nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, + default: + return; +@@ -168,7 +168,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, + switch(attr) { + case NFTNL_CHAIN_NAME: + if (c->flags & (1 << NFTNL_CHAIN_NAME)) +- xfree(c->name); ++ nftnl_xfree(c->name); + + c->name = strdup(data); + if (!c->name) +@@ -176,7 +176,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, break; case NFTNL_CHAIN_TABLE: - if (c->table) + if (c->flags & (1 << NFTNL_CHAIN_TABLE)) - xfree(c->table); + nftnl_xfree(c->table); c->table = strdup(data); - break; -@@ -209,13 +209,13 @@ void nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, + if (!c->table) +@@ -208,7 +208,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, break; case NFTNL_CHAIN_TYPE: - if (c->type) + if (c->flags & (1 << NFTNL_CHAIN_TYPE)) - xfree(c->type); + nftnl_xfree(c->type); c->type = strdup(data); + if (!c->type) +@@ -216,7 +216,7 @@ int nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, break; case NFTNL_CHAIN_DEV: - if (c->dev) + if (c->flags & (1 << NFTNL_CHAIN_DEV)) - xfree(c->dev); + nftnl_xfree(c->dev); c->dev = strdup(data); - break; -@@ -535,7 +535,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) - c->flags |= (1 << NFTNL_CHAIN_NAME); + if (!c->dev) +@@ -540,7 +540,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) + + if (tb[NFTA_CHAIN_NAME]) { + if (c->flags & (1 << NFTNL_CHAIN_NAME)) +- xfree(c->name); ++ nftnl_xfree(c->name); + c->name = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_NAME])); + if (!c->name) + return -1; +@@ -548,7 +548,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) } if (tb[NFTA_CHAIN_TABLE]) { -- xfree(c->table); -+ nftnl_xfree(c->table); + if (c->flags & (1 << NFTNL_CHAIN_TABLE)) +- xfree(c->table); ++ nftnl_xfree(c->table); c->table = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TABLE])); - c->flags |= (1 << NFTNL_CHAIN_TABLE); - } -@@ -562,7 +562,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) - c->flags |= (1 << NFTNL_CHAIN_HANDLE); + if (!c->table) + return -1; +@@ -578,7 +578,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) } if (tb[NFTA_CHAIN_TYPE]) { -- xfree(c->type); -+ nftnl_xfree(c->type); + if (c->flags & (1 << NFTNL_CHAIN_TYPE)) +- xfree(c->type); ++ nftnl_xfree(c->type); c->type = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TYPE])); - c->flags |= (1 << NFTNL_CHAIN_TYPE); - } -@@ -976,7 +976,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list) + if (!c->type) + return -1; +@@ -889,7 +889,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list) list_del(&r->head); nftnl_chain_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nftnl_chain_list_free, nft_chain_list_free); + EXPORT_SYMBOL_ALIAS(nftnl_chain_list_free, nft_chain_list_free); -@@ -1061,6 +1061,6 @@ EXPORT_SYMBOL(nftnl_chain_list_iter_next, nft_chain_list_iter_next); +@@ -975,6 +975,6 @@ EXPORT_SYMBOL_ALIAS(nftnl_chain_list_iter_next, nft_chain_list_iter_next); void nftnl_chain_list_iter_destroy(struct nftnl_chain_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_chain_list_iter_destroy, nft_chain_list_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_chain_list_iter_destroy, nft_chain_list_iter_destroy); diff --git a/src/common.c b/src/common.c -index 43d2cfd..0bc814d 100644 +index bf4176c..98f8012 100644 --- a/src/common.c +++ b/src/common.c -@@ -58,7 +58,7 @@ EXPORT_SYMBOL(nftnl_parse_err_alloc, nft_parse_err_alloc); +@@ -58,7 +58,7 @@ EXPORT_SYMBOL_ALIAS(nftnl_parse_err_alloc, nft_parse_err_alloc); void nftnl_parse_err_free(struct nftnl_parse_err *err) { - xfree(err); + nftnl_xfree(err); } - EXPORT_SYMBOL(nftnl_parse_err_free, nft_parse_err_free); + EXPORT_SYMBOL_ALIAS(nftnl_parse_err_free, nft_parse_err_free); diff --git a/src/expr.c b/src/expr.c -index 3249a5c..8563d9e 100644 +index 8d5c562..47ecd3d 100644 --- a/src/expr.c +++ b/src/expr.c -@@ -50,7 +50,7 @@ void nftnl_expr_free(struct nftnl_expr *expr) +@@ -50,7 +50,7 @@ void nftnl_expr_free(const struct nftnl_expr *expr) if (expr->ops->free) expr->ops->free(expr); - xfree(expr); + nftnl_xfree(expr); } - EXPORT_SYMBOL(nftnl_expr_free, nft_rule_expr_free); + EXPORT_SYMBOL_ALIAS(nftnl_expr_free, nft_rule_expr_free); -@@ -257,7 +257,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr) +@@ -270,7 +270,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr) return expr; err2: @@ -201,19 +227,10 @@ index 3249a5c..8563d9e 100644 return NULL; } diff --git a/src/expr/data_reg.c b/src/expr/data_reg.c -index b85d2ef..32becb4 100644 +index 0249258..994b388 100644 --- a/src/expr/data_reg.c +++ b/src/expr/data_reg.c -@@ -123,7 +123,7 @@ static int nftnl_data_reg_verdict_xml_parse(union nftnl_data_reg *reg, - NFTNL_XML_OPT, err); - if (chain != NULL) { - if (reg->chain) -- xfree(reg->chain); -+ nftnl_xfree(reg->chain); - - reg->chain = strdup(chain); - } -@@ -504,7 +504,7 @@ void nftnl_free_verdict(union nftnl_data_reg *data) +@@ -376,7 +376,7 @@ void nftnl_free_verdict(const union nftnl_data_reg *data) switch(data->verdict) { case NFT_JUMP: case NFT_GOTO: @@ -222,33 +239,46 @@ index b85d2ef..32becb4 100644 break; default: break; +diff --git a/src/expr/dynset.c b/src/expr/dynset.c +index 20a5004..f3d46a7 100644 +--- a/src/expr/dynset.c ++++ b/src/expr/dynset.c +@@ -330,7 +330,7 @@ static void nftnl_expr_dynset_free(const struct nftnl_expr *e) + { + struct nftnl_expr_dynset *dynset = nftnl_expr_data(e); + +- xfree(dynset->set_name); ++ nftnl_xfree(dynset->set_name); + } + + static bool nftnl_expr_dynset_cmp(const struct nftnl_expr *e1, diff --git a/src/expr/immediate.c b/src/expr/immediate.c -index c2fb9ad..4a8cd83 100644 +index 0b188cc..6c17f68 100644 --- a/src/expr/immediate.c +++ b/src/expr/immediate.c @@ -44,7 +44,7 @@ nftnl_expr_immediate_set(struct nftnl_expr *e, uint16_t type, break; case NFTNL_EXPR_IMM_CHAIN: - if (imm->data.chain) + if (e->flags & (1 << NFTNL_EXPR_IMM_CHAIN)) - xfree(imm->data.chain); + nftnl_xfree(imm->data.chain); imm->data.chain = strdup(data); - break; + if (!imm->data.chain) diff --git a/src/expr/log.c b/src/expr/log.c -index f615d8e..1957aa6 100644 +index b642255..2b24b6d 100644 --- a/src/expr/log.c +++ b/src/expr/log.c -@@ -38,7 +38,7 @@ static int nftnl_expr_log_set(struct nftnl_expr *e, uint16_t type, +@@ -39,7 +39,7 @@ static int nftnl_expr_log_set(struct nftnl_expr *e, uint16_t type, switch(type) { case NFTNL_EXPR_LOG_PREFIX: - if (log->prefix) + if (log->flags & (1 << NFTNL_EXPR_LOG_PREFIX)) - xfree(log->prefix); + nftnl_xfree(log->prefix); log->prefix = strdup(data); - break; -@@ -152,7 +152,7 @@ nftnl_expr_log_parse(struct nftnl_expr *e, struct nlattr *attr) + if (!log->prefix) +@@ -155,7 +155,7 @@ nftnl_expr_log_parse(struct nftnl_expr *e, struct nlattr *attr) if (tb[NFTA_LOG_PREFIX]) { if (log->prefix) @@ -256,8 +286,8 @@ index f615d8e..1957aa6 100644 + nftnl_xfree(log->prefix); log->prefix = strdup(mnl_attr_get_str(tb[NFTA_LOG_PREFIX])); - e->flags |= (1 << NFTNL_EXPR_LOG_PREFIX); -@@ -329,7 +329,7 @@ static void nftnl_expr_log_free(struct nftnl_expr *e) + if (!log->prefix) +@@ -316,7 +316,7 @@ static void nftnl_expr_log_free(const struct nftnl_expr *e) { struct nftnl_expr_log *log = nftnl_expr_data(e); @@ -265,15 +295,28 @@ index f615d8e..1957aa6 100644 + nftnl_xfree(log->prefix); } - struct expr_ops expr_ops_log = { + static bool nftnl_expr_log_cmp(const struct nftnl_expr *e1, +diff --git a/src/expr/lookup.c b/src/expr/lookup.c +index 861815f..1955ed3 100644 +--- a/src/expr/lookup.c ++++ b/src/expr/lookup.c +@@ -259,7 +259,7 @@ static void nftnl_expr_lookup_free(const struct nftnl_expr *e) + { + struct nftnl_expr_lookup *lookup = nftnl_expr_data(e); + +- xfree(lookup->set_name); ++ nftnl_xfree(lookup->set_name); + } + + static bool nftnl_expr_lookup_cmp(const struct nftnl_expr *e1, diff --git a/src/expr/match.c b/src/expr/match.c -index ddecb43..2071b3c 100644 +index dd09e1e..09e35c5 100644 --- a/src/expr/match.c +++ b/src/expr/match.c @@ -50,7 +50,7 @@ nftnl_expr_match_set(struct nftnl_expr *e, uint16_t type, break; case NFTNL_EXPR_MT_INFO: - if (mt->data) + if (e->flags & (1 << NFTNL_EXPR_MT_INFO)) - xfree(mt->data); + nftnl_xfree(mt->data); @@ -282,13 +325,13 @@ index ddecb43..2071b3c 100644 @@ -147,7 +147,7 @@ static int nftnl_expr_match_parse(struct nftnl_expr *e, struct nlattr *attr) void *match_data; - if (match->data) + if (e->flags & (1 << NFTNL_EXPR_MT_INFO)) - xfree(match->data); + nftnl_xfree(match->data); match_data = calloc(1, len); if (match_data == NULL) -@@ -237,7 +237,7 @@ static void nftnl_expr_match_free(struct nftnl_expr *e) +@@ -217,7 +217,7 @@ static void nftnl_expr_match_free(const struct nftnl_expr *e) { struct nftnl_expr_match *match = nftnl_expr_data(e); @@ -296,15 +339,15 @@ index ddecb43..2071b3c 100644 + nftnl_xfree(match->data); } - struct expr_ops expr_ops_match = { + static bool nftnl_expr_match_cmp(const struct nftnl_expr *e1, diff --git a/src/expr/target.c b/src/expr/target.c -index cbbee60..064f56a 100644 +index ed4bf7d..5e28925 100644 --- a/src/expr/target.c +++ b/src/expr/target.c @@ -50,7 +50,7 @@ nftnl_expr_target_set(struct nftnl_expr *e, uint16_t type, break; case NFTNL_EXPR_TG_INFO: - if (tg->data) + if (e->flags & (1 << NFTNL_EXPR_TG_INFO)) - xfree(tg->data); + nftnl_xfree(tg->data); @@ -319,7 +362,7 @@ index cbbee60..064f56a 100644 target_data = calloc(1, len); if (target_data == NULL) -@@ -238,7 +238,7 @@ static void nftnl_expr_target_free(struct nftnl_expr *e) +@@ -217,7 +217,7 @@ static void nftnl_expr_target_free(const struct nftnl_expr *e) { struct nftnl_expr_target *target = nftnl_expr_data(e); @@ -327,158 +370,218 @@ index cbbee60..064f56a 100644 + nftnl_xfree(target->data); } - struct expr_ops expr_ops_target = { + static bool nftnl_expr_target_cmp(const struct nftnl_expr *e1, diff --git a/src/gen.c b/src/gen.c -index eb3b70d..dac3e47 100644 +index c69d2f8..0143ea0 100644 --- a/src/gen.c +++ b/src/gen.c -@@ -37,7 +37,7 @@ EXPORT_SYMBOL(nftnl_gen_alloc, nft_gen_alloc); +@@ -37,7 +37,7 @@ EXPORT_SYMBOL_ALIAS(nftnl_gen_alloc, nft_gen_alloc); - void nftnl_gen_free(struct nftnl_gen *gen) + void nftnl_gen_free(const struct nftnl_gen *gen) { - xfree(gen); + nftnl_xfree(gen); } - EXPORT_SYMBOL(nftnl_gen_free, nft_gen_free); + EXPORT_SYMBOL_ALIAS(nftnl_gen_free, nft_gen_free); -diff --git a/src/mxml.c b/src/mxml.c -index 51dbf1b..5b2aa57 100644 ---- a/src/mxml.c -+++ b/src/mxml.c -@@ -85,7 +85,7 @@ struct nftnl_expr *nftnl_mxml_expr_parse(mxml_node_t *node, - goto err_expr; +diff --git a/src/object.c b/src/object.c +index 0d3dc2b..542211c 100644 +--- a/src/object.c ++++ b/src/object.c +@@ -47,11 +47,11 @@ EXPORT_SYMBOL(nftnl_obj_alloc); + void nftnl_obj_free(const struct nftnl_obj *obj) + { + if (obj->flags & (1 << NFTNL_OBJ_TABLE)) +- xfree(obj->table); ++ nftnl_xfree(obj->table); + if (obj->flags & (1 << NFTNL_OBJ_NAME)) +- xfree(obj->name); ++ nftnl_xfree(obj->name); - tree = mxmlLoadString(NULL, xml_text, MXML_OPAQUE_CALLBACK); -- xfree(xml_text); -+ nftnl_xfree(xml_text); +- xfree(obj); ++ nftnl_xfree(obj); + } + EXPORT_SYMBOL(nftnl_obj_free); - if (tree == NULL) - goto err_expr; +@@ -74,11 +74,11 @@ void nftnl_obj_set_data(struct nftnl_obj *obj, uint16_t attr, + + switch (attr) { + case NFTNL_OBJ_TABLE: +- xfree(obj->table); ++ nftnl_xfree(obj->table); + obj->table = strdup(data); + break; + case NFTNL_OBJ_NAME: +- xfree(obj->name); ++ nftnl_xfree(obj->name); + obj->name = strdup(data); + break; + case NFTNL_OBJ_TYPE: +@@ -486,7 +486,7 @@ void nftnl_obj_list_free(struct nftnl_obj_list *list) + list_del(&r->head); + nftnl_obj_free(r); + } +- xfree(list); ++ nftnl_xfree(list); + } + EXPORT_SYMBOL(nftnl_obj_list_free); + +@@ -573,6 +573,6 @@ EXPORT_SYMBOL(nftnl_obj_list_iter_next); + + void nftnl_obj_list_iter_destroy(struct nftnl_obj_list_iter *iter) + { +- xfree(iter); ++ nftnl_xfree(iter); + } + EXPORT_SYMBOL(nftnl_obj_list_iter_destroy); diff --git a/src/rule.c b/src/rule.c -index 0fb27ed..f8e33ff 100644 +index 22026a4..256b699 100644 --- a/src/rule.c +++ b/src/rule.c -@@ -72,11 +72,11 @@ void nftnl_rule_free(struct nftnl_rule *r) +@@ -72,13 +72,13 @@ void nftnl_rule_free(const struct nftnl_rule *r) nftnl_expr_free(e); - if (r->table != NULL) + if (r->flags & (1 << (NFTNL_RULE_TABLE))) - xfree(r->table); + nftnl_xfree(r->table); - if (r->chain != NULL) + if (r->flags & (1 << (NFTNL_RULE_CHAIN))) - xfree(r->chain); + nftnl_xfree(r->chain); + if (r->flags & (1 << (NFTNL_RULE_USERDATA))) +- xfree(r->user.data); ++ nftnl_xfree(r->user.data); - xfree(r); + nftnl_xfree(r); } - EXPORT_SYMBOL(nftnl_rule_free, nft_rule_free); + EXPORT_SYMBOL_ALIAS(nftnl_rule_free, nft_rule_free); + +@@ -95,10 +95,10 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) -@@ -94,13 +94,13 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) switch (attr) { case NFTNL_RULE_TABLE: - if (r->table) { -- xfree(r->table); -+ nftnl_xfree(r->table); - r->table = NULL; - } +- xfree(r->table); ++ nftnl_xfree(r->table); break; case NFTNL_RULE_CHAIN: - if (r->chain) { -- xfree(r->chain); -+ nftnl_xfree(r->chain); - r->chain = NULL; - } +- xfree(r->chain); ++ nftnl_xfree(r->chain); break; -@@ -136,13 +136,13 @@ void nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, + case NFTNL_RULE_HANDLE: + case NFTNL_RULE_COMPAT_PROTO: +@@ -107,7 +107,7 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) + case NFTNL_RULE_FAMILY: + break; + case NFTNL_RULE_USERDATA: +- xfree(r->user.data); ++ nftnl_xfree(r->user.data); + break; + } + +@@ -132,7 +132,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, switch(attr) { case NFTNL_RULE_TABLE: - if (r->table) + if (r->flags & (1 << NFTNL_RULE_TABLE)) - xfree(r->table); + nftnl_xfree(r->table); r->table = strdup(data); + if (!r->table) +@@ -140,7 +140,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, break; case NFTNL_RULE_CHAIN: - if (r->chain) + if (r->flags & (1 << NFTNL_RULE_CHAIN)) - xfree(r->chain); + nftnl_xfree(r->chain); r->chain = strdup(data); + if (!r->chain) +@@ -163,7 +163,7 @@ int nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, break; -@@ -425,12 +425,12 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) - return -1; + case NFTNL_RULE_USERDATA: + if (r->flags & (1 << NFTNL_RULE_USERDATA)) +- xfree(r->user.data); ++ nftnl_xfree(r->user.data); + + r->user.data = malloc(data_len); + if (!r->user.data) +@@ -436,7 +436,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) if (tb[NFTA_RULE_TABLE]) { -- xfree(r->table); -+ nftnl_xfree(r->table); + if (r->flags & (1 << NFTNL_RULE_TABLE)) +- xfree(r->table); ++ nftnl_xfree(r->table); r->table = strdup(mnl_attr_get_str(tb[NFTA_RULE_TABLE])); - r->flags |= (1 << NFTNL_RULE_TABLE); + if (!r->table) + return -1; +@@ -444,7 +444,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) } if (tb[NFTA_RULE_CHAIN]) { -- xfree(r->chain); -+ nftnl_xfree(r->chain); + if (r->flags & (1 << NFTNL_RULE_CHAIN)) +- xfree(r->chain); ++ nftnl_xfree(r->chain); r->chain = strdup(mnl_attr_get_str(tb[NFTA_RULE_CHAIN])); - r->flags |= (1 << NFTNL_RULE_CHAIN); - } -@@ -451,7 +451,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) + if (!r->chain) + return -1; +@@ -473,7 +473,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) mnl_attr_get_payload(tb[NFTA_RULE_USERDATA]); - if (r->user.data) + if (r->flags & (1 << NFTNL_RULE_USERDATA)) - xfree(r->user.data); + nftnl_xfree(r->user.data); r->user.len = mnl_attr_get_payload_len(tb[NFTA_RULE_USERDATA]); -@@ -1042,7 +1042,7 @@ EXPORT_SYMBOL(nftnl_expr_iter_next, nft_rule_expr_iter_next); +@@ -915,7 +915,7 @@ EXPORT_SYMBOL_ALIAS(nftnl_expr_iter_next, nft_rule_expr_iter_next); void nftnl_expr_iter_destroy(struct nftnl_expr_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_expr_iter_destroy, nft_rule_expr_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_expr_iter_destroy, nft_rule_expr_iter_destroy); -@@ -1072,7 +1072,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list) +@@ -976,7 +976,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list) list_del(&r->head); nftnl_rule_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nftnl_rule_list_free, nft_rule_list_free); + EXPORT_SYMBOL_ALIAS(nftnl_rule_list_free, nft_rule_list_free); -@@ -1163,6 +1163,6 @@ EXPORT_SYMBOL(nftnl_rule_list_iter_next, nft_rule_list_iter_next); +@@ -1068,6 +1068,6 @@ EXPORT_SYMBOL_ALIAS(nftnl_rule_list_iter_next, nft_rule_list_iter_next); - void nftnl_rule_list_iter_destroy(struct nftnl_rule_list_iter *iter) + void nftnl_rule_list_iter_destroy(const struct nftnl_rule_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_rule_list_iter_destroy, nft_rule_list_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_rule_list_iter_destroy, nft_rule_list_iter_destroy); diff --git a/src/ruleset.c b/src/ruleset.c -index 7b1ab7a..b8188de 100644 +index b6ca565..0867e2a 100644 --- a/src/ruleset.c +++ b/src/ruleset.c -@@ -74,7 +74,7 @@ void nftnl_ruleset_free(struct nftnl_ruleset *r) +@@ -71,7 +71,7 @@ void nftnl_ruleset_free(const struct nftnl_ruleset *r) nftnl_set_list_free(r->set_list); if (r->flags & (1 << NFTNL_RULESET_RULELIST)) nftnl_rule_list_free(r->rule_list); - xfree(r); + nftnl_xfree(r); } - EXPORT_SYMBOL(nftnl_ruleset_free, nft_ruleset_free); + EXPORT_SYMBOL_ALIAS(nftnl_ruleset_free, nft_ruleset_free); diff --git a/src/set.c b/src/set.c -index f5a9454..4eff325 100644 +index 14d28b5..0e93503 100644 --- a/src/set.c +++ b/src/set.c -@@ -45,15 +45,15 @@ void nftnl_set_free(struct nftnl_set *s) +@@ -45,15 +45,15 @@ void nftnl_set_free(const struct nftnl_set *s) struct nftnl_set_elem *elem, *tmp; - if (s->table != NULL) + if (s->flags & (1 << NFTNL_SET_TABLE)) - xfree(s->table); + nftnl_xfree(s->table); - if (s->name != NULL) + if (s->flags & (1 << NFTNL_SET_NAME)) - xfree(s->name); + nftnl_xfree(s->name); @@ -489,154 +592,214 @@ index f5a9454..4eff325 100644 - xfree(s); + nftnl_xfree(s); } - EXPORT_SYMBOL(nftnl_set_free, nft_set_free); + EXPORT_SYMBOL_ALIAS(nftnl_set_free, nft_set_free); -@@ -69,14 +69,14 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) +@@ -70,10 +70,10 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) + + switch (attr) { case NFTNL_SET_TABLE: - if (s->flags & (1 << NFTNL_SET_TABLE)) - if (s->table) { -- xfree(s->table); -+ nftnl_xfree(s->table); - s->table = NULL; - } +- xfree(s->table); ++ nftnl_xfree(s->table); break; case NFTNL_SET_NAME: - if (s->flags & (1 << NFTNL_SET_NAME)) - if (s->name) { -- xfree(s->name); -+ nftnl_xfree(s->name); - s->name = NULL; - } +- xfree(s->name); ++ nftnl_xfree(s->name); break; -@@ -124,13 +124,13 @@ void nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, + case NFTNL_SET_FLAGS: + case NFTNL_SET_KEY_TYPE: +@@ -89,7 +89,7 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) + case NFTNL_SET_GC_INTERVAL: + break; + case NFTNL_SET_USERDATA: +- xfree(s->user.data); ++ nftnl_xfree(s->user.data); + break; + default: + return; +@@ -122,7 +122,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, switch(attr) { case NFTNL_SET_TABLE: - if (s->table) + if (s->flags & (1 << NFTNL_SET_TABLE)) - xfree(s->table); + nftnl_xfree(s->table); s->table = strdup(data); + if (!s->table) +@@ -130,7 +130,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, break; case NFTNL_SET_NAME: - if (s->name) + if (s->flags & (1 << NFTNL_SET_NAME)) - xfree(s->name); + nftnl_xfree(s->name); s->name = strdup(data); + if (!s->name) +@@ -174,7 +174,7 @@ int nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, break; -@@ -435,12 +435,12 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - return -1; + case NFTNL_SET_USERDATA: + if (s->flags & (1 << NFTNL_SET_USERDATA)) +- xfree(s->user.data); ++ nftnl_xfree(s->user.data); + + s->user.data = malloc(data_len); + if (!s->user.data) +@@ -474,7 +474,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) if (tb[NFTA_SET_TABLE]) { -- xfree(s->table); -+ nftnl_xfree(s->table); + if (s->flags & (1 << NFTNL_SET_TABLE)) +- xfree(s->table); ++ nftnl_xfree(s->table); s->table = strdup(mnl_attr_get_str(tb[NFTA_SET_TABLE])); - s->flags |= (1 << NFTNL_SET_TABLE); + if (!s->table) + return -1; +@@ -482,7 +482,7 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) } if (tb[NFTA_SET_NAME]) { -- xfree(s->name); -+ nftnl_xfree(s->name); + if (s->flags & (1 << NFTNL_SET_NAME)) +- xfree(s->name); ++ nftnl_xfree(s->name); s->name = strdup(mnl_attr_get_str(tb[NFTA_SET_NAME])); - s->flags |= (1 << NFTNL_SET_NAME); - } -@@ -1085,7 +1085,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list) + if (!s->name) + return -1; +@@ -972,7 +972,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list) list_del(&s->head); nftnl_set_free(s); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nftnl_set_list_free, nft_set_list_free); + EXPORT_SYMBOL_ALIAS(nftnl_set_list_free, nft_set_list_free); -@@ -1175,7 +1175,7 @@ EXPORT_SYMBOL(nftnl_set_list_iter_next, nft_set_list_iter_next); +@@ -1064,7 +1064,7 @@ EXPORT_SYMBOL_ALIAS(nftnl_set_list_iter_next, nft_set_list_iter_next); - void nftnl_set_list_iter_destroy(struct nftnl_set_list_iter *iter) + void nftnl_set_list_iter_destroy(const struct nftnl_set_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_set_list_iter_destroy, nft_set_list_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_set_list_iter_destroy, nft_set_list_iter_destroy); diff --git a/src/set_elem.c b/src/set_elem.c -index 293ce15..4e20159 100644 +index fa87476..6d404bd 100644 --- a/src/set_elem.c +++ b/src/set_elem.c -@@ -43,7 +43,7 @@ void nftnl_set_elem_free(struct nftnl_set_elem *s) +@@ -42,18 +42,18 @@ EXPORT_SYMBOL_ALIAS(nftnl_set_elem_alloc, nft_set_elem_alloc); + void nftnl_set_elem_free(struct nftnl_set_elem *s) { - if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) { - if (s->data.chain) { -- xfree(s->data.chain); -+ nftnl_xfree(s->data.chain); - s->data.chain = NULL; - } - } -@@ -51,7 +51,7 @@ void nftnl_set_elem_free(struct nftnl_set_elem *s) + if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) +- xfree(s->data.chain); ++ nftnl_xfree(s->data.chain); + if (s->flags & (1 << NFTNL_SET_ELEM_EXPR)) nftnl_expr_free(s->expr); + if (s->flags & (1 << NFTNL_SET_ELEM_USERDATA)) +- xfree(s->user.data); ++ nftnl_xfree(s->user.data); + + if (s->flags & (1 << NFTNL_SET_ELEM_OBJREF)) +- xfree(s->objref); ++ nftnl_xfree(s->objref); + - xfree(s); + nftnl_xfree(s); } - EXPORT_SYMBOL(nftnl_set_elem_free, nft_set_elem_free); + EXPORT_SYMBOL_ALIAS(nftnl_set_elem_free, nft_set_elem_free); -@@ -67,7 +67,7 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) +@@ -70,7 +70,7 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) + + switch (attr) { case NFTNL_SET_ELEM_CHAIN: - if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) { - if (s->data.chain) { -- xfree(s->data.chain); -+ nftnl_xfree(s->data.chain); - s->data.chain = NULL; - } - } -@@ -110,7 +110,7 @@ void nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, +- xfree(s->data.chain); ++ nftnl_xfree(s->data.chain); + break; + case NFTNL_SET_ELEM_FLAGS: + case NFTNL_SET_ELEM_KEY: /* NFTA_SET_ELEM_KEY */ +@@ -80,13 +80,13 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) + case NFTNL_SET_ELEM_EXPIRATION: /* NFTA_SET_ELEM_EXPIRATION */ + break; + case NFTNL_SET_ELEM_USERDATA: /* NFTA_SET_ELEM_USERDATA */ +- xfree(s->user.data); ++ nftnl_xfree(s->user.data); + break; + case NFTNL_SET_ELEM_EXPR: + nftnl_expr_free(s->expr); + break; + case NFTNL_SET_ELEM_OBJREF: +- xfree(s->objref); ++ nftnl_xfree(s->objref); + break; + default: + return; +@@ -112,7 +112,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, break; case NFTNL_SET_ELEM_CHAIN: /* NFTA_SET_ELEM_DATA */ - if (s->data.chain) + if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) - xfree(s->data.chain); + nftnl_xfree(s->data.chain); s->data.chain = strdup(data); + if (!s->data.chain) +@@ -127,7 +127,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, break; -@@ -390,7 +390,7 @@ static int nftnl_set_elems_parse2(struct nftnl_set *s, const struct nlattr *nest + case NFTNL_SET_ELEM_USERDATA: /* NFTA_SET_ELEM_USERDATA */ + if (s->flags & (1 << NFTNL_SET_ELEM_USERDATA)) +- xfree(s->user.data); ++ nftnl_xfree(s->user.data); + + s->user.data = malloc(data_len); + if (!s->user.data) +@@ -137,7 +137,7 @@ int nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, + break; + case NFTNL_SET_ELEM_OBJREF: + if (s->flags & (1 << NFTNL_SET_ELEM_OBJREF)) +- xfree(s->objref); ++ nftnl_xfree(s->objref); + + s->objref = strdup(data); + if (!s->objref) +@@ -431,7 +431,7 @@ static int nftnl_set_elems_parse2(struct nftnl_set *s, const struct nlattr *nest mnl_attr_get_payload(tb[NFTA_SET_ELEM_USERDATA]); - if (e->user.data) + if (e->flags & (1 << NFTNL_RULE_USERDATA)) - xfree(e->user.data); + nftnl_xfree(e->user.data); e->user.len = mnl_attr_get_payload_len(tb[NFTA_SET_ELEM_USERDATA]); e->user.data = malloc(e->user.len); -@@ -462,13 +462,13 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) - return -1; +@@ -515,7 +515,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) if (tb[NFTA_SET_ELEM_LIST_TABLE]) { -- xfree(s->table); -+ nftnl_xfree(s->table); + if (s->flags & (1 << NFTNL_SET_TABLE)) +- xfree(s->table); ++ nftnl_xfree(s->table); s->table = strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_TABLE])); - s->flags |= (1 << NFTNL_SET_TABLE); + if (!s->table) +@@ -524,7 +524,7 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) } if (tb[NFTA_SET_ELEM_LIST_SET]) { -- xfree(s->name); -+ nftnl_xfree(s->name); + if (s->flags & (1 << NFTNL_SET_NAME)) +- xfree(s->name); ++ nftnl_xfree(s->name); s->name = strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_SET])); - s->flags |= (1 << NFTNL_SET_NAME); -@@ -853,7 +853,7 @@ EXPORT_SYMBOL(nftnl_set_elems_iter_next, nft_set_elems_iter_next); + if (!s->name) +@@ -810,7 +810,7 @@ EXPORT_SYMBOL_ALIAS(nftnl_set_elems_iter_next, nft_set_elems_iter_next); void nftnl_set_elems_iter_destroy(struct nftnl_set_elems_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_set_elems_iter_destroy, nft_set_elems_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_set_elems_iter_destroy, nft_set_elems_iter_destroy); diff --git a/src/table.c b/src/table.c -index 28f6bd6..6aa2eb5 100644 +index 4286d51..1e15ea7 100644 --- a/src/table.c +++ b/src/table.c -@@ -45,9 +45,9 @@ EXPORT_SYMBOL(nftnl_table_alloc, nft_table_alloc); - void nftnl_table_free(struct nftnl_table *t) +@@ -45,9 +45,9 @@ EXPORT_SYMBOL_ALIAS(nftnl_table_alloc, nft_table_alloc); + void nftnl_table_free(const struct nftnl_table *t) { if (t->flags & (1 << NFTNL_TABLE_NAME)) - xfree(t->name); @@ -645,57 +808,95 @@ index 28f6bd6..6aa2eb5 100644 - xfree(t); + nftnl_xfree(t); } - EXPORT_SYMBOL(nftnl_table_free, nft_table_free); + EXPORT_SYMBOL_ALIAS(nftnl_table_free, nft_table_free); + +@@ -64,7 +64,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr) -@@ -65,7 +65,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr) switch (attr) { case NFTNL_TABLE_NAME: - if (t->name) { -- xfree(t->name); -+ nftnl_xfree(t->name); - t->name = NULL; - } +- xfree(t->name); ++ nftnl_xfree(t->name); break; -@@ -95,7 +95,7 @@ void nftnl_table_set_data(struct nftnl_table *t, uint16_t attr, + case NFTNL_TABLE_FLAGS: + case NFTNL_TABLE_FAMILY: +@@ -90,7 +90,7 @@ int nftnl_table_set_data(struct nftnl_table *t, uint16_t attr, switch (attr) { case NFTNL_TABLE_NAME: - if (t->name) + if (t->flags & (1 << NFTNL_TABLE_NAME)) - xfree(t->name); + nftnl_xfree(t->name); t->name = strdup(data); - break; + if (!t->name) @@ -229,7 +229,7 @@ int nftnl_table_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_table *t) - return -1; if (tb[NFTA_TABLE_NAME]) { -- xfree(t->name); -+ nftnl_xfree(t->name); + if (t->flags & (1 << NFTNL_TABLE_NAME)) +- xfree(t->name); ++ nftnl_xfree(t->name); t->name = strdup(mnl_attr_get_str(tb[NFTA_TABLE_NAME])); - t->flags |= (1 << NFTNL_TABLE_NAME); - } -@@ -496,7 +496,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list) + if (!t->name) + return -1; +@@ -448,7 +448,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list) list_del(&r->head); nftnl_table_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nftnl_table_list_free, nft_table_list_free); + EXPORT_SYMBOL_ALIAS(nftnl_table_list_free, nft_table_list_free); -@@ -581,6 +581,6 @@ EXPORT_SYMBOL(nftnl_table_list_iter_next, nft_table_list_iter_next); +@@ -534,6 +534,6 @@ EXPORT_SYMBOL_ALIAS(nftnl_table_list_iter_next, nft_table_list_iter_next); - void nftnl_table_list_iter_destroy(struct nftnl_table_list_iter *iter) + void nftnl_table_list_iter_destroy(const struct nftnl_table_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nftnl_table_list_iter_destroy, nft_table_list_iter_destroy); + EXPORT_SYMBOL_ALIAS(nftnl_table_list_iter_destroy, nft_table_list_iter_destroy); +diff --git a/src/trace.c b/src/trace.c +index bd05d3c..abfc533 100644 +--- a/src/trace.c ++++ b/src/trace.c +@@ -61,13 +61,13 @@ struct nftnl_trace *nftnl_trace_alloc(void) + EXPORT_SYMBOL(nftnl_trace_free); + void nftnl_trace_free(const struct nftnl_trace *t) + { +- xfree(t->chain); +- xfree(t->table); +- xfree(t->jump_target); +- xfree(t->ll.data); +- xfree(t->nh.data); +- xfree(t->th.data); +- xfree(t); ++ nftnl_xfree(t->chain); ++ nftnl_xfree(t->table); ++ nftnl_xfree(t->jump_target); ++ nftnl_xfree(t->ll.data); ++ nftnl_xfree(t->nh.data); ++ nftnl_xfree(t->th.data); ++ nftnl_xfree(t); + } + + EXPORT_SYMBOL(nftnl_trace_is_set); +diff --git a/src/udata.c b/src/udata.c +index 60c2f34..ec1f7dc 100644 +--- a/src/udata.c ++++ b/src/udata.c +@@ -32,7 +32,7 @@ EXPORT_SYMBOL(nftnl_udata_buf_alloc); + + void nftnl_udata_buf_free(const struct nftnl_udata_buf *buf) + { +- xfree(buf); ++ nftnl_xfree(buf); + } + EXPORT_SYMBOL(nftnl_udata_buf_free); + diff --git a/src/utils.c b/src/utils.c -index c241e5f..ba44a60 100644 +index 3e44960..08f668f 100644 --- a/src/utils.c +++ b/src/utils.c -@@ -249,7 +249,7 @@ int nftnl_fprintf(FILE *fp, void *obj, uint32_t cmd, uint32_t type, uint32_t fla +@@ -264,7 +264,7 @@ int nftnl_fprintf(FILE *fp, const void *obj, uint32_t cmd, uint32_t type, out: if (buf != _buf) @@ -705,5 +906,5 @@ index c241e5f..ba44a60 100644 return ret; } -- -2.4.9 +2.10.2 diff --git a/package/libnftnl/Config.in b/package/libnftnl/Config.in index 365ab10201..d4c9a1bb54 100644 --- a/package/libnftnl/Config.in +++ b/package/libnftnl/Config.in @@ -1,9 +1,9 @@ -comment "libnftnl needs a toolchain w/ headers >= 3.1" - depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 +comment "libnftnl needs a toolchain w/ headers >= 3.12" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 config BR2_PACKAGE_LIBNFTNL bool "libnftnl" - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 select BR2_PACKAGE_LIBMNL help libnftnl is a userspace library providing a low-level diff --git a/package/libnftnl/libnftnl.hash b/package/libnftnl/libnftnl.hash index 50896fba86..63271e0f75 100644 --- a/package/libnftnl/libnftnl.hash +++ b/package/libnftnl/libnftnl.hash @@ -1,2 +1,2 @@ -# From http://www.netfilter.org/projects/libnftnl/downloads.html#libnftnl-1.0.5 -sha1 2ae3172251574ee36077af760933ec0369960a17 libnftnl-1.0.5.tar.bz2 +# From http://www.netfilter.org/projects/libnftnl/downloads.html#libnftnl-1.0.7 +sha1 381b2b3cbb3fad186cb3f57bbf32d70f0b3c3c8e libnftnl-1.0.7.tar.bz2 diff --git a/package/libnftnl/libnftnl.mk b/package/libnftnl/libnftnl.mk index 37c82d3a6a..0e1ddf8bc6 100644 --- a/package/libnftnl/libnftnl.mk +++ b/package/libnftnl/libnftnl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNFTNL_VERSION = 1.0.5 +LIBNFTNL_VERSION = 1.0.7 LIBNFTNL_SITE = http://netfilter.org/projects/libnftnl/files LIBNFTNL_SOURCE = libnftnl-$(LIBNFTNL_VERSION).tar.bz2 LIBNFTNL_LICENSE = GPLv2+ diff --git a/package/libnice/0001-configure-Fix-configure-failure-when-building-without-.patch b/package/libnice/0001-configure-Fix-configure-failure-when-building-without-.patch new file mode 100644 index 0000000000..f6b2eb4cb9 --- /dev/null +++ b/package/libnice/0001-configure-Fix-configure-failure-when-building-without-.patch @@ -0,0 +1,45 @@ +From 81a929ac141aae66b6450e8ce93cb357ed404cda Mon Sep 17 00:00:00 2001 +From: Timo Gurr +Date: Mon, 1 Jun 2015 16:10:16 +0200 +Subject: [PATCH] configure: Fix configure failure when building without + gstreamer support + +Error introduced in 20ea22e0a11a9bdfe4d8125b68083249b694338a, resulting in a +configure/build error when building without gstreamer: + +configure: error: conditional "HAVE_GST_CHECK" was never defined. +Usually this means the macro was only invoked conditionally. + +https://bugs.freedesktop.org/show_bug.cgi?id=90801 +Signed-off-by: Gustavo Zacarias +--- +Patch status: upstream + + configure.ac | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 6031cec..64a571f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -231,9 +231,6 @@ AS_IF([test "$with_gstreamer" != no], [ + [ + have_gst_check=no + ]) +- +- AM_CONDITIONAL(HAVE_GST_CHECK, test "$have_gst_check" = yes) +- + ]) + + AS_IF([test "$with_gstreamer010" != no], [ +@@ -260,6 +257,7 @@ AC_SUBST(gstplugindir) + AC_SUBST(gstplugin010dir) + + AM_CONDITIONAL(WITH_GSTREAMER, test "$with_gstreamer" = yes) ++AM_CONDITIONAL(HAVE_GST_CHECK, test "$have_gst_check" = yes) + AM_CONDITIONAL(WITH_GSTREAMER010, test "$with_gstreamer010" = yes) + + GUPNP_IGD_REQUIRED=0.2.4 +-- +2.10.2 + diff --git a/package/libnice/libnice.hash b/package/libnice/libnice.hash index bb419b9d73..d08c2d7839 100644 --- a/package/libnice/libnice.hash +++ b/package/libnice/libnice.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 9da7f09909902d535389d929c3e4d69129528fb18438a6c8565ec812d9904ddf libnice-0.1.8.tar.gz +# Locally computed after checking pgp signature +sha256 61112d9f3be933a827c8365f20551563953af6718057928f51f487bfe88419e1 libnice-0.1.13.tar.gz diff --git a/package/libnice/libnice.mk b/package/libnice/libnice.mk index 68f5eaef59..3df596a867 100644 --- a/package/libnice/libnice.mk +++ b/package/libnice/libnice.mk @@ -4,12 +4,14 @@ # ################################################################################ -LIBNICE_VERSION = 0.1.8 +LIBNICE_VERSION = 0.1.13 LIBNICE_SITE = http://nice.freedesktop.org/releases LIBNICE_LICENSE = MPLv1.1 or LGPLv2.1 LIBNICE_LICENSE_FILES = COPYING COPYING.MPL COPYING.LGPL LIBNICE_DEPENDENCIES = libglib2 host-pkgconf LIBNICE_INSTALL_STAGING = YES +# For 0001-configure-Fix-configure-failure-when-building-without-.patch +LIBNICE_AUTORECONF = YES LIBNICE_CONF_OPTS = \ --without-gstreamer \ --without-gstreamer-0.10 \ diff --git a/package/libnspr/libnspr.hash b/package/libnspr/libnspr.hash index f513213d25..a4b19b7f9c 100644 --- a/package/libnspr/libnspr.hash +++ b/package/libnspr/libnspr.hash @@ -1,2 +1,2 @@ -# From https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.12/src/SHA256SUMS -sha256 e0b10a1e569153668ff8bdea6c7e491b389fab69c2f18285a1ebf7c2ea4269de nspr-4.12.tar.gz +# From https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.13.1/src/SHA256SUMS +sha256 5e4c1751339a76e7c772c0c04747488d7f8c98980b434dc846977e43117833ab nspr-4.13.1.tar.gz diff --git a/package/libnspr/libnspr.mk b/package/libnspr/libnspr.mk index 0311f8fc98..d95f970988 100644 --- a/package/libnspr/libnspr.mk +++ b/package/libnspr/libnspr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSPR_VERSION = 4.12 +LIBNSPR_VERSION = 4.13.1 LIBNSPR_SOURCE = nspr-$(LIBNSPR_VERSION).tar.gz LIBNSPR_SITE = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$(LIBNSPR_VERSION)/src LIBNSPR_SUBDIR = nspr diff --git a/package/libnss/0003-it-uninitialized-fix.patch b/package/libnss/0003-it-uninitialized-fix.patch new file mode 100644 index 0000000000..7736c6a939 --- /dev/null +++ b/package/libnss/0003-it-uninitialized-fix.patch @@ -0,0 +1,24 @@ +# HG changeset patch +# User catdesk +# Date 1477710600 -7200 +# Sat Oct 29 05:10:00 2016 +0200 +# Node ID b9ef971b94ab110302d49255339077bc1b4aed7f +# Parent eb8c96563cd70aa69d48b01516085f7d2fb46178 +Bug 1313846 - Declare 'it = NULL' earlier. r=franziskus + +[Thomas: patch taken from upstream mercurial repository, revision +12791.] +Signed-off-by: Thomas Petazzoni + +diff -r eb8c96563cd7 -r b9ef971b94ab lib/jar/jarfile.c +--- a/nss/lib/jar/jarfile.c Mon Oct 31 17:31:20 2016 +0100 ++++ b/nss/lib/jar/jarfile.c Sat Oct 29 05:10:00 2016 +0200 +@@ -657,7 +657,7 @@ + jar_listzip(JAR *jar, JAR_FILE fp) + { + ZZLink *ent; +- JAR_Item *it; ++ JAR_Item *it = NULL; + JAR_Physical *phy = NULL; + struct ZipLocal *Local = PORT_ZNew(struct ZipLocal); + struct ZipCentral *Central = PORT_ZNew(struct ZipCentral); diff --git a/package/libnss/libnss.hash b/package/libnss/libnss.hash index 8e03faf31c..975e52d238 100644 --- a/package/libnss/libnss.hash +++ b/package/libnss/libnss.hash @@ -1,2 +1,2 @@ -# From https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_23_RTM/src/SHA256SUMS -sha256 94b383e31c9671e9dfcca81084a8a813817e8f05a57f54533509b318d26e11cf nss-3.23.tar.gz +# From https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_27_2_RTM/src/SHA256SUMS +sha256 dc8ac8524469d0230274fd13a53fdcd74efe4aa67205dde1a4a92be87dc28524 nss-3.27.2.tar.gz diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk index e2bbf1f39f..4a40b0a8d7 100644 --- a/package/libnss/libnss.mk +++ b/package/libnss/libnss.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSS_VERSION = 3.23 +LIBNSS_VERSION = 3.27.2 LIBNSS_SOURCE = nss-$(LIBNSS_VERSION).tar.gz LIBNSS_SITE = https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(subst .,_,$(LIBNSS_VERSION))_RTM/src LIBNSS_DISTDIR = dist @@ -45,12 +45,12 @@ endif endif define LIBNSS_BUILD_CMDS - $(MAKE1) -C $(@D)/nss coreconf \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/nss coreconf \ SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \ DIST=$(@D)/$(LIBNSS_DISTDIR) \ CHECKLOC= \ $(LIBNSS_BUILD_VARS) - $(MAKE1) -C $(@D)/nss lib/dbm all \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/nss lib/dbm all \ SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \ DIST=$(@D)/$(LIBNSS_DISTDIR) \ CHECKLOC= \ diff --git a/package/libopenh264/libopenh264.hash b/package/libopenh264/libopenh264.hash new file mode 100644 index 0000000000..2fc76ecc1a --- /dev/null +++ b/package/libopenh264/libopenh264.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 65d307bf312543ad6e98ec02abb7c27d8fd2c9740fd069d7249844612674a2c7 libopenh264-v1.6.0.tar.gz diff --git a/package/libopenh264/libopenh264.mk b/package/libopenh264/libopenh264.mk index cbe30bcc8e..40bbf80e25 100644 --- a/package/libopenh264/libopenh264.mk +++ b/package/libopenh264/libopenh264.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBOPENH264_VERSION = v1.4.0 +LIBOPENH264_VERSION = v1.6.0 LIBOPENH264_SITE = $(call github,cisco,openh264,$(LIBOPENH264_VERSION)) LIBOPENH264_LICENSE = BSD-2c LIBOPENH264_LICENSE_FILES = LICENSE diff --git a/package/liboping/0001-configure-also-check-for-clockgettime.patch b/package/liboping/0001-configure-also-check-for-clockgettime.patch new file mode 100644 index 0000000000..b2c585559a --- /dev/null +++ b/package/liboping/0001-configure-also-check-for-clockgettime.patch @@ -0,0 +1,39 @@ +From a45f3610beba1f7e6e1a038e3a1fe4150057c262 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Tue, 5 Jul 2016 15:31:28 +0200 +Subject: [PATCH] configure: also check for clockgettime() + +clock_gettime() is also in -lrt so we also need to check for it. + +Signed-off-by: "Yann E. MORIN" +--- + configure.ac | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f83f5ab..3b6ae09 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -199,12 +199,16 @@ fi + + AC_SUBST(LIBOPING_PC_LIBS_PRIVATE) + +-nanosleep_needs_rt="no" ++needs_rt="no" + AC_CHECK_FUNCS(nanosleep, [], + AC_CHECK_LIB(rt, nanosleep, +- [nanosleep_needs_rt="yes"], ++ [needs_rt="yes"], + AC_MSG_ERROR(cannot find nanosleep))) +-AM_CONDITIONAL(BUILD_WITH_LIBRT, test "x$nanosleep_needs_rt" = "xyes") ++AC_CHECK_FUNCS(clock_gettime, [], ++ AC_CHECK_LIB(rt, clock_gettime, ++ [needs_rt="yes"], ++ AC_MSG_ERROR(cannot find clock_gettime))) ++AM_CONDITIONAL(BUILD_WITH_LIBRT, test "x$needs_rt" = "xyes") + + with_ncurses="no" + AC_CHECK_HEADERS(ncursesw/ncurses.h ncurses.h, [with_ncurses="yes"], []) +-- +2.7.4 + diff --git a/package/liboping/liboping.hash b/package/liboping/liboping.hash index 536f6aef50..3e796cca62 100644 --- a/package/liboping/liboping.hash +++ b/package/liboping/liboping.hash @@ -1,2 +1,2 @@ # From http://noping.cc/#download -sha256 824792ae7fc5e9569bacc4167b89de31f6ba8476de44760f0bc272682e894b41 liboping-1.8.0.tar.gz +sha256 44bb1d88b56b88fda5533edb3aa005c69b3cd396f20453a157d7e31e536f3530 liboping-1.9.0.tar.bz2 diff --git a/package/liboping/liboping.mk b/package/liboping/liboping.mk index 94de73c373..dd70387199 100644 --- a/package/liboping/liboping.mk +++ b/package/liboping/liboping.mk @@ -4,12 +4,15 @@ # ################################################################################ -LIBOPING_VERSION = 1.8.0 +LIBOPING_VERSION = 1.9.0 LIBOPING_SITE = http://noping.cc/files +LIBOPING_SOURCE = liboping-$(LIBOPING_VERSION).tar.bz2 LIBOPING_INSTALL_STAGING = YES LIBOPING_DEPENDENCIES = $(if $(BR2_PACKAGE_NCURSES),ncurses) LIBOPING_CONF_OPTS = --without-perl-bindings LIBOPING_LICENSE = LGPLv2.1+, GPLv2 LIBOPING_LICENSE_FILES = COPYING +LIBOPING_AUTORECONF = YES + $(eval $(autotools-package)) diff --git a/package/libpam-tacplus/libpam-tacplus.hash b/package/libpam-tacplus/libpam-tacplus.hash new file mode 100644 index 0000000000..c8a772322e --- /dev/null +++ b/package/libpam-tacplus/libpam-tacplus.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 747f7ad980a3726ed3abc5fec92e867efa8af8c53caac547cab7eb6af5ce0edf libpam-tacplus-1.3.9.tar.gz diff --git a/package/libpcap/0001-remove-libnl-include-path.patch b/package/libpcap/0001-remove-libnl-include-path.patch deleted file mode 100644 index d0760d4f9d..0000000000 --- a/package/libpcap/0001-remove-libnl-include-path.patch +++ /dev/null @@ -1,25 +0,0 @@ -Remove hardcoded path to libnl3 include directory - -Signed-off-by: Thomas Petazzoni -[Gustavo: update for 1.7.2] - -diff -Nura libpcap-1.7.2.orig/configure.in libpcap-1.7.2/configure.in ---- libpcap-1.7.2.orig/configure.in 2015-03-14 08:02:05.538706347 -0300 -+++ libpcap-1.7.2/configure.in 2015-03-14 08:17:22.637519050 -0300 -@@ -461,14 +461,13 @@ - # - # Yes, we have libnl 3.x. - # -- LIBS="${libnldir} -lnl-genl-3 -lnl-3 $LIBS" -+ LIBS="-lnl-genl-3 -lnl-3 $LIBS" - AC_DEFINE(HAVE_LIBNL,1,[if libnl exists]) - AC_DEFINE(HAVE_LIBNL_3_x,1,[if libnl exists and is version 3.x]) - AC_DEFINE(HAVE_LIBNL_NLE,1,[libnl has NLE_FAILURE]) - AC_DEFINE(HAVE_LIBNL_SOCKETS,1,[libnl has new-style socket api]) -- V_INCLS="$V_INCLS ${incdir}" - have_any_nl="yes" -- ],[], ${incdir} ${libnldir} -lnl-genl-3 -lnl-3 ) -+ ],[], -lnl-genl-3 -lnl-3 ) - - if test x$have_any_nl = xno ; then - # diff --git a/package/libpcap/0002-configure.in-fix-detect-of-if_bonding.h-on-uclinux.patch b/package/libpcap/0002-configure.in-fix-detect-of-if_bonding.h-on-uclinux.patch deleted file mode 100644 index 7838c6f256..0000000000 --- a/package/libpcap/0002-configure.in-fix-detect-of-if_bonding.h-on-uclinux.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 5b8dc4eaeab60d5effc33055e5bce9ac0d98d339 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Tue, 2 Jun 2015 21:39:15 +0300 -Subject: [PATCH] configure.in: fix detect of if_bonding.h on uclinux - -noMMU Linux (uClinux) is also Linux - -Upstream status: https://github.com/the-tcpdump-group/libpcap/pull/440 - -Signed-off-by: Baruch Siach ---- - configure.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.in b/configure.in -index be4b29e2f8ba..31287d0dbe61 100644 ---- a/configure.in -+++ b/configure.in -@@ -149,7 +149,7 @@ struct rtentry; - fi - - case "$host_os" in --linux*) -+linux*|uclinux*) - AC_CHECK_HEADERS(linux/sockios.h linux/if_bonding.h,,, - [ - #include --- -2.1.4 - diff --git a/package/libpcap/libpcap.hash b/package/libpcap/libpcap.hash index 5ce53673b8..6894046aff 100644 --- a/package/libpcap/libpcap.hash +++ b/package/libpcap/libpcap.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 7ad3112187e88328b85e46dce7a9b949632af18ee74d97ffc3f2b41fe7f448b0 libpcap-1.7.4.tar.gz +sha256 673dbc69fdc3f5a86fb5759ab19899039a8e5e6c631749e48dcd9c6f0c83541e libpcap-1.8.1.tar.gz diff --git a/package/libpcap/libpcap.mk b/package/libpcap/libpcap.mk index 4c7a66c09d..2583087953 100644 --- a/package/libpcap/libpcap.mk +++ b/package/libpcap/libpcap.mk @@ -4,17 +4,14 @@ # ################################################################################ -LIBPCAP_VERSION = 1.7.4 +LIBPCAP_VERSION = 1.8.1 LIBPCAP_SITE = http://www.tcpdump.org/release LIBPCAP_LICENSE = BSD-3c LIBPCAP_LICENSE_FILES = LICENSE LIBPCAP_INSTALL_STAGING = YES LIBPCAP_DEPENDENCIES = zlib host-flex host-bison -# We're patching configure.in -LIBPCAP_AUTORECONF = YES LIBPCAP_CONF_ENV = \ - ac_cv_linux_vers=2 \ ac_cv_header_linux_wireless_h=yes \ CFLAGS="$(LIBPCAP_CFLAGS)" LIBPCAP_CFLAGS = $(TARGET_CFLAGS) @@ -51,6 +48,7 @@ endif ifeq ($(BR2_PACKAGE_LIBNL),y) LIBPCAP_DEPENDENCIES += libnl LIBPCAP_CFLAGS += "-I$(STAGING_DIR)/usr/include/libnl3" +LIBPCAP_CONF_OPTS += --with-libnl=$(STAGING_DIR)/usr else LIBPCAP_CONF_OPTS += --without-libnl endif diff --git a/package/libpfm4/libpfm4.mk b/package/libpfm4/libpfm4.mk index 147be7c2b9..913fc35831 100644 --- a/package/libpfm4/libpfm4.mk +++ b/package/libpfm4/libpfm4.mk @@ -17,15 +17,15 @@ LIBPFM4_FLAGS = SYS=Linux ARCH=$(BR2_ARCH) \ DBG= define LIBPFM4_BUILD_CMDS - $(MAKE) -C $(@D) $(LIBPFM4_FLAGS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBPFM4_FLAGS) endef define LIBPFM4_INSTALL_STAGING_CMDS - make -C $(@D) $(LIBPFM4_FLAGS) PREFIX=$(STAGING_DIR)/usr install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBPFM4_FLAGS) PREFIX=$(STAGING_DIR)/usr install endef define LIBPFM4_INSTALL_TARGET_CMDS - make -C $(@D) $(LIBPFM4_FLAGS) PREFIX=$(TARGET_DIR)/usr install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBPFM4_FLAGS) PREFIX=$(TARGET_DIR)/usr install endef $(eval $(generic-package)) diff --git a/package/libphidget/libphidget.hash b/package/libphidget/libphidget.hash new file mode 100644 index 0000000000..a89ba367ed --- /dev/null +++ b/package/libphidget/libphidget.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 2d496828a085ada8ff139da9306bd2b8cb987798fee93caf0089dc399195e238 libphidget_2.1.8.20140319.tar.gz diff --git a/package/libpjsip/0001-Use-mutex-types-compatible-with-musl-fixes-musl-buil.patch b/package/libpjsip/0001-Use-mutex-types-compatible-with-musl-fixes-musl-buil.patch deleted file mode 100644 index ab3444b710..0000000000 --- a/package/libpjsip/0001-Use-mutex-types-compatible-with-musl-fixes-musl-buil.patch +++ /dev/null @@ -1,53 +0,0 @@ -From ba1057d74aac6c2dde5477bd6a2deea79f14962c Mon Sep 17 00:00:00 2001 -From: Luca Ceresoli -Date: Sat, 12 Mar 2016 15:19:34 +0100 -Subject: [PATCH 1/2] Use mutex types compatible with musl (fixes musl build) - -PTHREAD_MUTEX_FAST_NP and PTHREAD_MUTEX_RECURSIVE_NP are not defined -in the musl C library. Use values that map to the same mutex type in -GNU libc and uClibc-ng. - -Fixes the following build errors when building with musl: - - ../src/pj/os_core_unix.c: In function 'init_mutex': - ../src/pj/os_core_unix.c:1128:40: error: 'PTHREAD_MUTEX_FAST_NP' undeclared (first use in this function) - rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_FAST_NP); - ^ - ../src/pj/os_core_unix.c:1128:40: note: each undeclared identifier is reported only once for each function it appears in - ../src/pj/os_core_unix.c:1138:40: error: 'PTHREAD_MUTEX_RECURSIVE_NP' undeclared (first use in this function) - rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); - ^ - -Original patch: -http://git.alpinelinux.org/cgit/aports/plain/main/pjproject/musl-fixes.patch - -Signed-off-by: Luca Ceresoli ---- - pjlib/src/pj/os_core_unix.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/pjlib/src/pj/os_core_unix.c b/pjlib/src/pj/os_core_unix.c -index 1c87b2f..f08ba27 100644 ---- a/pjlib/src/pj/os_core_unix.c -+++ b/pjlib/src/pj/os_core_unix.c -@@ -1125,7 +1125,7 @@ static pj_status_t init_mutex(pj_mutex_t *mutex, const char *name, int type) - if (type == PJ_MUTEX_SIMPLE) { - #if (defined(PJ_LINUX) && PJ_LINUX!=0) || \ - defined(PJ_HAS_PTHREAD_MUTEXATTR_SETTYPE) -- rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_FAST_NP); -+ rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL); - #elif (defined(PJ_RTEMS) && PJ_RTEMS!=0) || \ - defined(PJ_PTHREAD_MUTEXATTR_T_HAS_RECURSIVE) - /* Nothing to do, default is simple */ -@@ -1135,7 +1135,7 @@ static pj_status_t init_mutex(pj_mutex_t *mutex, const char *name, int type) - } else { - #if (defined(PJ_LINUX) && PJ_LINUX!=0) || \ - defined(PJ_HAS_PTHREAD_MUTEXATTR_SETTYPE) -- rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); -+ rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); - #elif (defined(PJ_RTEMS) && PJ_RTEMS!=0) || \ - defined(PJ_PTHREAD_MUTEXATTR_T_HAS_RECURSIVE) - // Phil Torre : --- -1.9.1 - diff --git a/package/libpjsip/0002-Replace-__sched_priority-with-sched_priority-fixes-m.patch b/package/libpjsip/0002-Replace-__sched_priority-with-sched_priority-fixes-m.patch deleted file mode 100644 index e1cb00229a..0000000000 --- a/package/libpjsip/0002-Replace-__sched_priority-with-sched_priority-fixes-m.patch +++ /dev/null @@ -1,82 +0,0 @@ -From cca93ce25f993c97ef3d96fa32461d5717c30518 Mon Sep 17 00:00:00 2001 -From: Luca Ceresoli -Date: Sat, 12 Mar 2016 15:31:47 +0100 -Subject: [PATCH 2/2] Replace __sched_priority with sched_priority(fixes musl - build) - -The musl C library defines sched_priority, not __sched_priority as GNU -libc and uClibc-ng do. Use sched_priority instead. - -This does not break compatibility with GNU libc and uClibc-ng because -both define in sched.h: - - #define sched_priority __sched_priority - -Fixes the following build errors when building with musl: - - ../src/samples/siprtp.c: In function 'boost_priority': - ../src/samples/siprtp.c:1137:7: error: 'struct sched_param' has no member named '__sched_priority' - tp.__sched_priority = max_prio; - ^ - In file included from /home/murray/devel/buildroot/test-musl-eabi/build/libpjsip-2.4.5/pjlib/include/pj/except.h:30:0, - from /home/murray/devel/buildroot/test-musl-eabi/build/libpjsip-2.4.5/pjlib/include/pjlib.h:35, - from ../src/samples/siprtp.c:76: - ../src/samples/siprtp.c:1146:18: error: 'struct sched_param' has no member named '__sched_priority' - policy, tp.__sched_priority)); - ^ - -Original patch: -http://git.alpinelinux.org/cgit/aports/plain/main/pjproject/musl-fixes.patch - -Signed-off-by: Luca Ceresoli ---- - pjsip-apps/src/samples/siprtp.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/pjsip-apps/src/samples/siprtp.c b/pjsip-apps/src/samples/siprtp.c -index 796464f..6e32a8f 100644 ---- a/pjsip-apps/src/samples/siprtp.c -+++ b/pjsip-apps/src/samples/siprtp.c -@@ -1134,7 +1134,7 @@ static void boost_priority(void) - PJ_RETURN_OS_ERROR(rc)); - return; - } -- tp.__sched_priority = max_prio; -+ tp.sched_priority = max_prio; - - rc = sched_setscheduler(0, POLICY, &tp); - if (rc != 0) { -@@ -1143,7 +1143,7 @@ static void boost_priority(void) - } - - PJ_LOG(4, (THIS_FILE, "New process policy=%d, priority=%d", -- policy, tp.__sched_priority)); -+ policy, tp.sched_priority)); - - /* - * Adjust thread scheduling algorithm and priority -@@ -1156,10 +1156,10 @@ static void boost_priority(void) - } - - PJ_LOG(4, (THIS_FILE, "Old thread policy=%d, priority=%d", -- policy, tp.__sched_priority)); -+ policy, tp.sched_priority)); - - policy = POLICY; -- tp.__sched_priority = max_prio; -+ tp.sched_priority = max_prio; - - rc = pthread_setschedparam(pthread_self(), policy, &tp); - if (rc != 0) { -@@ -1169,7 +1169,7 @@ static void boost_priority(void) - } - - PJ_LOG(4, (THIS_FILE, "New thread policy=%d, priority=%d", -- policy, tp.__sched_priority)); -+ policy, tp.sched_priority)); - } - - #else --- -1.9.1 - diff --git a/package/libpjsip/libpjsip.hash b/package/libpjsip/libpjsip.hash index e0d3d14323..ec636a8562 100644 --- a/package/libpjsip/libpjsip.hash +++ b/package/libpjsip/libpjsip.hash @@ -1,5 +1,5 @@ -# From http://www.pjsip.org/release/2.4.5/MD5SUM.TXT -md5 f58b3485977b3a700256203a554b3869 pjproject-2.4.5.tar.bz2 +# From http://www.pjsip.org/release/2.6/MD5SUM.TXT +md5 c347a672679e7875ce572e18517884b2 pjproject-2.6.tar.bz2 # Locally computed -sha256 086f5e70dcaee312b66ddc24dac6ef85e6f1fec4eed00ff2915cebe0ee3cdd8d pjproject-2.4.5.tar.bz2 +sha256 2f5a1da1c174d845871c758bd80fbb580fca7799d3cfaa0d3c4e082b5161c7b4 pjproject-2.6.tar.bz2 diff --git a/package/libpjsip/libpjsip.mk b/package/libpjsip/libpjsip.mk index ebb5897d09..b0d06099bb 100644 --- a/package/libpjsip/libpjsip.mk +++ b/package/libpjsip/libpjsip.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBPJSIP_VERSION = 2.4.5 +LIBPJSIP_VERSION = 2.6 LIBPJSIP_SOURCE = pjproject-$(LIBPJSIP_VERSION).tar.bz2 LIBPJSIP_SITE = http://www.pjsip.org/release/$(LIBPJSIP_VERSION) LIBPJSIP_DEPENDENCIES = libsrtp @@ -13,9 +13,16 @@ LIBPJSIP_LICENSE_FILES = COPYING LIBPJSIP_INSTALL_STAGING = YES LIBPJSIP_MAKE = $(MAKE1) +LIBPJSIP_CFLAGS = $(TARGET_CFLAGS) -DPJ_HAS_IPV6=1 + +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +LIBPJSIP_CFLAGS += -mxgot +endif + LIBPJSIP_CONF_ENV = \ LD="$(TARGET_CC)" \ - CFLAGS="$(TARGET_CFLAGS) -DPJ_HAS_IPV6=1" + CFLAGS="$(LIBPJSIP_CFLAGS)" LIBPJSIP_CONF_OPTS = \ --disable-sound \ @@ -27,7 +34,30 @@ LIBPJSIP_CONF_OPTS = \ --disable-opencore-amr \ --disable-g7221-codec \ --disable-ilbc-codec \ - --with-external-srtp=$(STAGING_DIR)/usr + --disable-libwebrtc \ + --disable-opus \ + --disable-oss \ + --disable-ext-sound \ + --disable-small-filter \ + --disable-large-filter \ + --disable-g711-codec \ + --disable-l16-codec \ + --disable-g722-codec \ + --disable-libsamplerate \ + --disable-sdl \ + --disable-ffmpeg \ + --disable-v4l2 \ + --disable-openh264 \ + --disable-libyuv \ + --disable-ipp \ + --disable-ssl \ + --disable-silk \ + --with-external-srtp + +# Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will +# both enable it. But that's OK, epoll is better than the alternative, +# so we want to use it. +LIBPJSIP_CONF_OPTS += --enable-epoll ifeq ($(BR2_PACKAGE_OPENSSL),y) LIBPJSIP_DEPENDENCIES += openssl diff --git a/package/libplatform/0001-p8-platform-config-fix-lookup-paths.patch b/package/libplatform/0001-p8-platform-config-fix-lookup-paths.patch new file mode 100644 index 0000000000..d487fd942e --- /dev/null +++ b/package/libplatform/0001-p8-platform-config-fix-lookup-paths.patch @@ -0,0 +1,38 @@ +From 01b5478638c705af29f09ad4ed70289f70a21dcf Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Mon, 6 Feb 2017 14:04:47 +0100 +Subject: [PATCH] p8-platform-config: fix lookup paths + +Use the proper methods to find the headers and the library. + +Signed-off-by: Samuel Martin +Signed-off-by: "Yann E. MORIN" +--- + p8-platform-config.cmake.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/p8-platform-config.cmake.in b/p8-platform-config.cmake.in +index 47f30f1..f59418d 100644 +--- a/p8-platform-config.cmake.in ++++ b/p8-platform-config.cmake.in +@@ -10,7 +10,7 @@ + # + # propagate these properties from one build system to the other + set (p8-platform_VERSION "@p8-platform_VERSION_MAJOR@.@p8-platform_VERSION_MINOR@") +-set (p8-platform_INCLUDE_DIRS @p8-platform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX@/include) ++find_path (p8-platform_INCLUDE_DIRS p8-platform/os.h) + set (p8-platform_LIBRARY_DIRS "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@") + set (p8-platform_LINKER_FLAGS "@p8-platform_LINKER_FLAGS@") + set (p8-platform_CONFIG_VARS "@p8-platform_CONFIG_VARS@") +@@ -19,7 +19,7 @@ set (p8-platform_CONFIG_VARS "@p8-platform_CONFIG_VARS@") + if(WIN32) + set (p8-platform_LIBRARY "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/p8-platform.lib") + else(WIN32) +- set (p8-platform_LIBRARY "-L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lp8-platform") ++ find_library (p8-platform_LIBRARY p8-platform) + endif(WIN32) + set (p8-platform_LIBRARIES ${p8-platform_LIBRARY} "@p8-platform_LIBRARIES@") + mark_as_advanced (p8-platform_LIBRARY) +-- +2.7.4 + diff --git a/package/libplatform/0001-platform-config.cmake-fix-paths-for-cross-compilatio.patch b/package/libplatform/0001-platform-config.cmake-fix-paths-for-cross-compilatio.patch deleted file mode 100644 index 89f35bdb3d..0000000000 --- a/package/libplatform/0001-platform-config.cmake-fix-paths-for-cross-compilatio.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 65ba437ed5514dd5762a796d349ed5db49e40fe7 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Wed, 29 Jul 2015 21:26:16 +0200 -Subject: [PATCH] platform-config.cmake: fix paths for cross-compilation - -Headers and library paths in platform-config.cmake must take into -account ${CMAKE_FIND_ROOT_PATH} to work in cross-compilation. - -Signed-off-by: Thomas Petazzoni ---- - platform-config.cmake.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/platform-config.cmake.in b/platform-config.cmake.in -index 7fe35fe..78b5085 100644 ---- a/platform-config.cmake.in -+++ b/platform-config.cmake.in -@@ -10,16 +10,16 @@ - # - # propagate these properties from one build system to the other - set (platform_VERSION "@platform_VERSION_MAJOR@.@platform_VERSION_MINOR@") --set (platform_INCLUDE_DIRS @platform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX@/include) -+set (platform_INCLUDE_DIRS ${CMAKE_FIND_ROOT_PATH}/@platform_INCLUDE_DIRS@ ${CMAKE_FIND_ROOT_PATH}/@CMAKE_INSTALL_PREFIX@/include) - set (platform_LIBRARY_DIRS "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@") - set (platform_LINKER_FLAGS "@platform_LINKER_FLAGS@") - set (platform_CONFIG_VARS "@platform_CONFIG_VARS@") - - # libraries come from the build tree where this file was generated - if(WIN32) -- set (platform_LIBRARY "@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/platform.lib") -+ set (platform_LIBRARY "${CMAKE_FIND_ROOT_PATH}/@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/platform.lib") - else(WIN32) -- set (platform_LIBRARY "-L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lplatform") -+ set (platform_LIBRARY "-L${CMAKE_FIND_ROOT_PATH}/@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lplatform") - endif(WIN32) - set (platform_LIBRARIES ${platform_LIBRARY} "@platform_LIBRARIES@") - mark_as_advanced (platform_LIBRARY) --- -2.5.0 - diff --git a/package/libplatform/libplatform.hash b/package/libplatform/libplatform.hash index 8975dfd8ab..e3d5ed5a91 100644 --- a/package/libplatform/libplatform.hash +++ b/package/libplatform/libplatform.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 3603ead8b16a48cb35b1e6dea330a693f10552b1a6ea036c5db9ec248cd8baf5 libplatform-feafe68e3e0b02c3261aefb3d711863ef6fadd38.tar.gz +sha256 88711f1b949285867538a0b2e4189532778e1515325dfa1851eae9d18b6affd9 libplatform-2.1.0.tar.gz diff --git a/package/libplatform/libplatform.mk b/package/libplatform/libplatform.mk index 6d549151d7..d9cd582f71 100644 --- a/package/libplatform/libplatform.mk +++ b/package/libplatform/libplatform.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBPLATFORM_VERSION = feafe68e3e0b02c3261aefb3d711863ef6fadd38 -LIBPLATFORM_SITE = $(call github,Pulse-Eight,platform,$(LIBPLATFORM_VERSION)) -LIBPLATFORM_LICENSE = GPLv2+, PHP license v3.01 -LIBPLATFORM_LICENSE_FILES = src/os.h src/util/fstrcmp.c +LIBPLATFORM_VERSION = 2.1.0 +LIBPLATFORM_SITE = $(call github,Pulse-Eight,platform,p8-platform-$(LIBPLATFORM_VERSION)) +LIBPLATFORM_LICENSE = GPLv2+ +LIBPLATFORM_LICENSE_FILES = src/os.h LIBPLATFORM_INSTALL_STAGING = YES $(eval $(cmake-package)) diff --git a/package/libplayer/Config.in b/package/libplayer/Config.in index aa599ae55c..37fbb26c5b 100644 --- a/package/libplayer/Config.in +++ b/package/libplayer/Config.in @@ -11,12 +11,8 @@ config BR2_PACKAGE_LIBPLAYER if BR2_PACKAGE_LIBPLAYER config BR2_PACKAGE_LIBPLAYER_MPLAYER bool "mplayer backend" - # mplayer - depends on !(BR2_bfin || BR2_sh2a || BR2_sh4a || BR2_sh4aeb || \ - BR2_microblaze || BR2_aarch64 || BR2_nios2) - # mplayer - # Broken support for +Date: Thu, 26 May 2016 16:26:18 -0300 +Subject: [PATCH] Disable pngfix and png-fix-itxt + +Disable the new pngfix and png-fix-itxt tools: they take up space, fail +to build on some oddball toolchain configurations and aren't +expected/needed in a non-interactive embedded system. + +[Julien: update for 1.6.25] +Signed-off-by: Julien Boibessot + +Signed-off-by: Gustavo Zacarias +--- + Makefile.am | 2 +- + Makefile.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 7212951..3430dca 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -18,7 +18,7 @@ check_PROGRAMS += timepng + endif + + # Utilities - installed +-bin_PROGRAMS= pngfix png-fix-itxt ++bin_PROGRAMS= + + # This ensures that pnglibconf.h gets built at the start of 'make all' or + # 'make check', but it does not add dependencies to the individual programs, +diff --git a/Makefile.in b/Makefile.in +index a66f6aa..4e67782 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -104,7 +104,7 @@ check_PROGRAMS = pngtest$(EXEEXT) pngunknown$(EXEEXT) \ + pngstest$(EXEEXT) pngvalid$(EXEEXT) pngimage$(EXEEXT) \ + pngcp$(EXEEXT) $(am__EXEEXT_1) + @HAVE_CLOCK_GETTIME_TRUE@am__append_1 = timepng +-bin_PROGRAMS = pngfix$(EXEEXT) png-fix-itxt$(EXEEXT) ++bin_PROGRAMS = + @PNG_ARM_NEON_TRUE@am__append_2 = arm/arm_init.c\ + @PNG_ARM_NEON_TRUE@ arm/filter_neon.S arm/filter_neon_intrinsics.c + +-- +2.7.3 + diff --git a/package/libpng/0001-disable-tools.patch b/package/libpng/0001-disable-tools.patch deleted file mode 100644 index e30eca9ffc..0000000000 --- a/package/libpng/0001-disable-tools.patch +++ /dev/null @@ -1,30 +0,0 @@ -Disable the new pngfix and png-fix-itxt tools: they take up space, fail to -build on some oddball toolchain configurations and aren't expected/needed -in a non-interactive embedded system. - -Signed-off-by: Gustavo Zacarias - -diff -Nura libpng-1.6.10.orig/Makefile.am libpng-1.6.10/Makefile.am ---- libpng-1.6.10.orig/Makefile.am 2014-03-17 08:51:25.812005079 -0300 -+++ libpng-1.6.10/Makefile.am 2014-03-17 09:14:28.807586433 -0300 -@@ -10,7 +10,7 @@ - check_PROGRAMS= pngtest pngunknown pngstest pngvalid pngimage - - # Utilities - installed --bin_PROGRAMS= pngfix png-fix-itxt -+bin_PROGRAMS= - - # This ensures that pnglibconf.h gets built at the start of 'make all' or - # 'make check', but it does not add dependencies to the individual programs, -diff -Nura libpng-1.6.10.orig/Makefile.in libpng-1.6.10/Makefile.in ---- libpng-1.6.10.orig/Makefile.in 2014-03-17 08:51:25.807005070 -0300 -+++ libpng-1.6.10/Makefile.in 2014-03-17 09:14:44.846617623 -0300 -@@ -87,7 +87,7 @@ - host_triplet = @host@ - check_PROGRAMS = pngtest$(EXEEXT) pngunknown$(EXEEXT) \ - pngstest$(EXEEXT) pngvalid$(EXEEXT) pngimage$(EXEEXT) --bin_PROGRAMS = pngfix$(EXEEXT) png-fix-itxt$(EXEEXT) -+bin_PROGRAMS = - @PNG_ARM_NEON_TRUE@am__append_1 = arm/arm_init.c\ - @PNG_ARM_NEON_TRUE@ arm/filter_neon.S arm/filter_neon_intrinsics.c - diff --git a/package/libpng/0002-ignore-symbol-prefix.patch b/package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch similarity index 61% rename from package/libpng/0002-ignore-symbol-prefix.patch rename to package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch index 5a8ede58a9..2a9bfd1e1d 100644 --- a/package/libpng/0002-ignore-symbol-prefix.patch +++ b/package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch @@ -1,7 +1,7 @@ -From dbfea83a7436cbac34cc883ab2b7befacaf02c40 Mon Sep 17 00:00:00 2001 -From: Danomi Manchego -Date: Tue, 23 Jun 2015 13:54:42 -0400 -Subject: libpng: don't append prefix to symbol names in version script +From 473fdecd9a580b45251480b8ccbbb1927c598310 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Thu, 26 May 2016 16:27:13 -0300 +Subject: [PATCH] Don't append prefix to symbol names in version script Even if Blackfin GNU toolchain add prefix '_' to all symbols, symbol prefix is not accepted in the link flag --version-script. @@ -9,19 +9,23 @@ Don't append prefix in the symbols in the version script file. Original patch by: Sonic Zhang -Rebase to apply cleanly. +[Gustavo: update for 1.6.22] +Signed-off-by: Gustavo Zacarias -Signed-off-by: Danomi Manchego +[Julien: update for 1.6.25] +Signed-off-by: Julien Boibessot + +Signed-off-by: Gustavo Zacarias --- - Makefile.am | 2 +- - Makefile.in | 2 +- + Makefile.am | 2 +- + Makefile.in | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am -index dcc5439..e543c81 100644 +index 3430dca..db6a7a2 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -231,7 +231,7 @@ contrib/tools/pngfix.o: pnglibconf.h +@@ -245,7 +245,7 @@ contrib/tools/pngfix.o: pnglibconf.h # interfering with the symbol file format. SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\ -DPNGLIB_VERSION='@PNGLIB_VERSION@'\ @@ -31,18 +35,18 @@ index dcc5439..e543c81 100644 if DO_PNG_PREFIX diff --git a/Makefile.in b/Makefile.in -index 975f931..a3e0552 100644 +index 4e67782..5f468d9 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -747,7 +747,7 @@ SUFFIXES = .chk .out +@@ -766,7 +766,7 @@ SUFFIXES = .chk .out # interfering with the symbol file format. SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0' \ -DPNGLIB_VERSION='@PNGLIB_VERSION@' \ - -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)' -DPNG_NO_USE_READ_MACROS \ + -DSYMBOL_PREFIX='' -DPNG_NO_USE_READ_MACROS \ - -DPNG_BUILDING_SYMBOL_TABLE $(am__append_5) + -DPNG_BUILDING_SYMBOL_TABLE $(am__append_7) # EXT_LIST is a list of the possibly library directory extensions, this exists -- -1.7.9.5 +2.7.3 diff --git a/package/libpng/libpng.hash b/package/libpng/libpng.hash index 3b2db43ce5..e5bd6ba03f 100644 --- a/package/libpng/libpng.hash +++ b/package/libpng/libpng.hash @@ -1,3 +1,4 @@ -# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.21/ -md5 3bacb4728f6694a64ad9052769d6a4ce libpng-1.6.21.tar.xz -sha1 978b2f4e007eda56032001493ddb97d20f0ab291 libpng-1.6.21.tar.xz +# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.28/ +sha1 ff4dceadb15e2c929ad26283118d56f66f4a6cff libpng-1.6.28.tar.xz +# Locally computed: +sha256 d8d3ec9de6b5db740fefac702c37ffcf96ae46cb17c18c1544635a3852f78f7a libpng-1.6.28.tar.xz diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk index 7ce4a3a693..c562965ab2 100644 --- a/package/libpng/libpng.mk +++ b/package/libpng/libpng.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBPNG_VERSION = 1.6.21 +LIBPNG_VERSION = 1.6.28 LIBPNG_SERIES = 16 LIBPNG_SOURCE = libpng-$(LIBPNG_VERSION).tar.xz LIBPNG_SITE = http://downloads.sourceforge.net/project/libpng/libpng${LIBPNG_SERIES}/$(LIBPNG_VERSION) @@ -12,6 +12,7 @@ LIBPNG_LICENSE = libpng license LIBPNG_LICENSE_FILES = LICENSE LIBPNG_INSTALL_STAGING = YES LIBPNG_DEPENDENCIES = host-pkgconf zlib +HOST_LIBPNG_DEPENDENCIES = host-pkgconf host-zlib LIBPNG_CONFIG_SCRIPTS = libpng$(LIBPNG_SERIES)-config libpng-config LIBPNG_CONF_OPTS = $(if $(BR2_ARM_CPU_HAS_NEON),--enable-arm-neon=yes,--enable-arm-neon=no) diff --git a/package/libpqxx/Config.in b/package/libpqxx/Config.in new file mode 100644 index 0000000000..ddf14fd6ce --- /dev/null +++ b/package/libpqxx/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_LIBPQXX + bool "libpqxx" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_POSTGRESQL + help + libpqxx is the official C++ client API for PostgreSQL, the + enterprise-strength open-source relational database. + + http://pqxx.org/development/libpqxx/ + +comment "libpqxx needs toolchain w/ C++ support" + depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_POSTGRESQL diff --git a/package/libpqxx/libpqxx.hash b/package/libpqxx/libpqxx.hash new file mode 100644 index 0000000000..65c50c6752 --- /dev/null +++ b/package/libpqxx/libpqxx.hash @@ -0,0 +1,4 @@ +# From: http://pqxx.org/download/software/libpqxx/libpqxx-4.0.1.tar.gz.md5sum +md5 6ea888b9ba85dd7cef1b182dc5f223a2 libpqxx-4.0.1.tar.gz +# Locally computed after verifying md5sum: +sha256 097ceda2797761ce517faa5bee186c883df1c407cb2aada613a16773afeedc38 libpqxx-4.0.1.tar.gz diff --git a/package/libpqxx/libpqxx.mk b/package/libpqxx/libpqxx.mk new file mode 100644 index 0000000000..058719038e --- /dev/null +++ b/package/libpqxx/libpqxx.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# libpqxx +# +################################################################################ + +LIBPQXX_VERSION = 4.0.1 +LIBPQXX_SITE = http://pqxx.org/download/software/libpqxx +LIBPQXX_INSTALL_STAGING = YES +LIBPQXX_DEPENDENCIES = postgresql +LIBPQXX_LICENSE = BSD-3c +LIBPQXX_LICENSE_FILES = COPYING + +LIBPQXX_CONF_ENV += ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config + +$(eval $(autotools-package)) diff --git a/package/libqmi/libqmi.hash b/package/libqmi/libqmi.hash index 4a335b6e14..08da1ae219 100644 --- a/package/libqmi/libqmi.hash +++ b/package/libqmi/libqmi.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 6283b80aea1b2721523e5229087764b4d6a1c9f53488690fa16a11adff4a0040 libqmi-1.14.2.tar.xz +sha256 7ab6bb47fd23bf4d3fa17424e40ea5552d08b19e5ee4f125f21f316c8086ba2a libqmi-1.16.0.tar.xz diff --git a/package/libqmi/libqmi.mk b/package/libqmi/libqmi.mk index 7c46037035..825493eea6 100644 --- a/package/libqmi/libqmi.mk +++ b/package/libqmi/libqmi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBQMI_VERSION = 1.14.2 +LIBQMI_VERSION = 1.16.0 LIBQMI_SITE = http://www.freedesktop.org/software/libqmi LIBQMI_SOURCE = libqmi-$(LIBQMI_VERSION).tar.xz LIBQMI_LICENSE = LGPLv2+ (library), GPLv2+ (programs) diff --git a/package/libraw/libraw.hash b/package/libraw/libraw.hash index e23ca9ce2c..29794252f1 100644 --- a/package/libraw/libraw.hash +++ b/package/libraw/libraw.hash @@ -1,2 +1,3 @@ # Locally calculated sha256 e599651a4cc37e00cfc2d2b56be87c3a4e4dae2c360b680fe9ab3f93d07cdea1 LibRaw-0.17.1.tar.gz +sha256 3c09bc4d70268e78798696c5ea3a8cc65fe4e161811d5321fc3ef2ca012d8fd1 0001-Fix_gcc6_narrowing_conversion.patch?id=d890937aaca6359df45a66b35e547c94ca564823 diff --git a/package/libraw/libraw.mk b/package/libraw/libraw.mk index 7fc4709e8f..d76a1808d5 100644 --- a/package/libraw/libraw.mk +++ b/package/libraw/libraw.mk @@ -7,6 +7,9 @@ LIBRAW_VERSION = 0.17.1 LIBRAW_SOURCE = LibRaw-$(LIBRAW_VERSION).tar.gz LIBRAW_SITE = http://www.libraw.org/data +LIBRAW_PATCH = \ + https://anonscm.debian.org/cgit/pkg-phototools/libraw.git/plain/debian/patches/0001-Fix_gcc6_narrowing_conversion.patch?id=d890937aaca6359df45a66b35e547c94ca564823 + LIBRAW_INSTALL_STAGING = YES # we patch configure.ac LIBRAW_AUTORECONF = YES diff --git a/package/librsvg/librsvg.hash b/package/librsvg/librsvg.hash index 71d96c881b..f9844b2362 100644 --- a/package/librsvg/librsvg.hash +++ b/package/librsvg/librsvg.hash @@ -1,2 +1,2 @@ -# From http://ftp.acc.umu.se/pub/gnome/sources/librsvg/2.40/librsvg-2.40.15.sha256sum -sha256 d9cac4a123eec6e553a26e120979bab7425def9ae7ce7c079eba5e4a45db05f4 librsvg-2.40.15.tar.xz +# From http://ftp.acc.umu.se/pub/gnome/sources/librsvg/2.40/librsvg-2.40.16.sha256sum +sha256 d48bcf6b03fa98f07df10332fb49d8c010786ddca6ab34cbba217684f533ff2e librsvg-2.40.16.tar.xz diff --git a/package/librsvg/librsvg.mk b/package/librsvg/librsvg.mk index dadffe8dec..b711de47cd 100644 --- a/package/librsvg/librsvg.mk +++ b/package/librsvg/librsvg.mk @@ -5,7 +5,7 @@ ################################################################################ LIBRSVG_VERSION_MAJOR = 2.40 -LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).15 +LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).16 LIBRSVG_SITE = http://ftp.gnome.org/pub/gnome/sources/librsvg/$(LIBRSVG_VERSION_MAJOR) LIBRSVG_SOURCE = librsvg-$(LIBRSVG_VERSION).tar.xz LIBRSVG_INSTALL_STAGING = YES diff --git a/package/librtas/Config.in b/package/librtas/Config.in index 2e6063f830..fb0ac766bf 100644 --- a/package/librtas/Config.in +++ b/package/librtas/Config.in @@ -9,6 +9,6 @@ config BR2_PACKAGE_LIBRTAS http://librtas.sourceforge.net/ -comment "librtas needs an (e)glibc toolchain" +comment "librtas needs a glibc toolchain" depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/librtas/librtas.mk b/package/librtas/librtas.mk index 6e1ebd1f0c..46c4cb4bb7 100644 --- a/package/librtas/librtas.mk +++ b/package/librtas/librtas.mk @@ -15,11 +15,11 @@ define LIBRTAS_BUILD_CMDS endef define LIBRTAS_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define LIBRTAS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/librtlsdr/librtlsdr.hash b/package/librtlsdr/librtlsdr.hash new file mode 100644 index 0000000000..24bca467b1 --- /dev/null +++ b/package/librtlsdr/librtlsdr.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 98fb5c34ac94d6f2235a0bb41a08f8bed7949e1d1b91ea57a7c1110191ea58de librtlsdr-v0.5.3.tar.gz diff --git a/package/libseccomp/0002-musl.patch b/package/libseccomp/0002-musl.patch deleted file mode 100644 index 9858d76099..0000000000 --- a/package/libseccomp/0002-musl.patch +++ /dev/null @@ -1,28 +0,0 @@ -From eb5382287cd25235e760b5da4939510b11bbf2a1 Mon Sep 17 00:00:00 2001 -From: Kylie McClain -Date: Fri, 1 Jan 2016 13:12:59 -0500 -Subject: [PATCH] system.h: Remove conflicting kernel header include - -This fixes building on musl libc, since musl does not include kernel -headers. I've tested this as working on both glibc and musl. - -Signed-off-by: Kylie McClain -[Bernd: downloaded from upstream PR: - https://github.com/seccomp/libseccomp/pull/23] -Signed-off-by: Bernd Kuhls ---- - src/system.h | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/system.h b/src/system.h -index 4660679..e84b0a0 100644 ---- a/src/system.h -+++ b/src/system.h -@@ -23,7 +23,6 @@ - #define _SYSTEM_H - - #include --#include - - #include "configure.h" - diff --git a/package/libseccomp/Config.in b/package/libseccomp/Config.in index 4c34c54665..ddfe9f07c0 100644 --- a/package/libseccomp/Config.in +++ b/package/libseccomp/Config.in @@ -1,7 +1,8 @@ config BR2_PACKAGE_LIBSECCOMP bool "libseccomp" depends on BR2_aarch64 || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_i386 || BR2_x86_64 + BR2_mips64el || BR2_i386 || BR2_x86_64 || BR2_powerpc64 || \ + BR2_powerpc depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 help High level interface to the Linux Kernel's seccomp filter diff --git a/package/libseccomp/libseccomp.hash b/package/libseccomp/libseccomp.hash new file mode 100644 index 0000000000..ef390ff562 --- /dev/null +++ b/package/libseccomp/libseccomp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 09864282ae579c34bd5ef75ef3487200adfecaa51f5cffc7c7ad1ed2f89f5d6c libseccomp-v2.3.1.tar.gz diff --git a/package/libseccomp/libseccomp.mk b/package/libseccomp/libseccomp.mk index 69559f73f9..03fc6cf800 100644 --- a/package/libseccomp/libseccomp.mk +++ b/package/libseccomp/libseccomp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSECCOMP_VERSION = v2.2.3 +LIBSECCOMP_VERSION = v2.3.1 LIBSECCOMP_SITE = $(call github,seccomp,libseccomp,$(LIBSECCOMP_VERSION)) LIBSECCOMP_LICENSE = LGPLv2.1 LIBSECCOMP_LICENSE_FILES = LICENSE diff --git a/package/libselinux/0001-libselinux-src-regex.c-support-old-compilers-for-the.patch b/package/libselinux/0001-libselinux-src-regex.c-support-old-compilers-for-the.patch new file mode 100644 index 0000000000..3bda607512 --- /dev/null +++ b/package/libselinux/0001-libselinux-src-regex.c-support-old-compilers-for-the.patch @@ -0,0 +1,47 @@ +From e0803c0bdbb1abf06b6b5bb1b52fdb733505b8f7 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 25 Jan 2017 22:41:02 +1300 +Subject: [PATCH] src/regex.c: support old compilers for the endian + check + +libselinux 2.6 has added some code in regex.c that uses __BYTE_ORDER__ +to determine the system endianness. Unfortunately, this definition +provided directly by the compiler doesn't exist in older gcc versions +such as gcc 4.4. + +In order to address this, this commit extends the logic to use + definitions if __BYTE_ORDER__ is not provided by the +compiler. This allows libselinux to build properly with gcc 4.4. + +Signed-off-by: Thomas Petazzoni +--- + src/regex.c | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/src/regex.c b/src/regex.c +index a3b427b..0c5ad27 100644 +--- a/src/regex.c ++++ b/src/regex.c +@@ -13,7 +13,18 @@ + #endif + + #ifndef __BYTE_ORDER__ +-#error __BYTE_ORDER__ not defined. Unable to determine endianness. ++ ++/* If the compiler doesn't define __BYTE_ORDER__, try to use the C ++ * library header definitions. */ ++#include ++#ifndef __BYTE_ORDER ++#error Neither __BYTE_ORDER__ nor __BYTE_ORDER defined. Unable to determine endianness. ++#endif ++ ++#define __ORDER_LITTLE_ENDIAN __LITTLE_ENDIAN ++#define __ORDER_BIG_ENDIAN __BIG_ENDIAN ++#define __BYTE_ORDER__ __BYTE_ORDER ++ + #endif + + #ifdef USE_PCRE2 +-- +2.7.4 + diff --git a/package/libselinux/0003-revert-ln-relative.patch b/package/libselinux/0003-revert-ln-relative.patch new file mode 100644 index 0000000000..b8ad07000a --- /dev/null +++ b/package/libselinux/0003-revert-ln-relative.patch @@ -0,0 +1,24 @@ +Makefile: revert libselinux: use ln --relative to create .so symlinks + +This reverts 71393a181d63c9baae5fe8dcaeb9411d1f253998 + +ln --relative is too recent to be available in all distributions, +especially enterprise-grade distros that can stick around as long as +they are maintained (up to 10 years in some cases?). + +For the sake of Buildroot, revert the upstream patch. + +Signed-off-by: "Yann E. MORIN" + +diff -durN a/src/Makefile b/src/Makefile +--- a/src/Makefile ++++ b/src/Makefile +@@ -151,7 +151,7 @@ + install -m 755 $(LIBSO) $(SHLIBDIR) + test -d $(LIBDIR)/pkgconfig || install -m 755 -d $(LIBDIR)/pkgconfig + install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig +- ln -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET) ++ cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET) + + install-pywrap: pywrap + test -d $(PYLIBDIR)/site-packages/selinux || install -m 755 -d $(PYLIBDIR)/site-packages/selinux diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in index bc8298db4c..c88669b439 100644 --- a/package/libselinux/Config.in +++ b/package/libselinux/Config.in @@ -4,6 +4,8 @@ config BR2_PACKAGE_LIBSELINUX select BR2_PACKAGE_PCRE depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + # Uses , not available in musl or uClibc + depends on BR2_TOOLCHAIN_USES_GLIBC # Toolchain issue: "fixup not contained within frag" depends on !BR2_arc help @@ -17,6 +19,7 @@ config BR2_PACKAGE_LIBSELINUX http://selinuxproject.org/page/Main_Page -comment "libselinux needs a toolchain w/ threads, dynamic library" +comment "libselinux needs a glibc toolchain w/ threads, dynamic library" depends on !BR2_arc - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libselinux/libselinux.hash b/package/libselinux/libselinux.hash index 861c327ffa..76130b2dc0 100644 --- a/package/libselinux/libselinux.hash +++ b/package/libselinux/libselinux.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 57aad47c06b7ec18a76e8d9870539277a84cb40109cfdcf70ed3260bdb04447a libselinux-2.1.13.tar.gz +sha256 4ea2dde50665c202253ba5caac7738370ea0337c47b251ba981c60d24e1a118a libselinux-2.6.tar.gz diff --git a/package/libselinux/libselinux.mk b/package/libselinux/libselinux.mk index d4b96c47d1..44120c4d3b 100644 --- a/package/libselinux/libselinux.mk +++ b/package/libselinux/libselinux.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBSELINUX_VERSION = 2.1.13 -LIBSELINUX_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423 +LIBSELINUX_VERSION = 2.6 +LIBSELINUX_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 LIBSELINUX_LICENSE = Public Domain LIBSELINUX_LICENSE_FILES = LICENSE @@ -13,23 +13,28 @@ LIBSELINUX_DEPENDENCIES = libsepol pcre LIBSELINUX_INSTALL_STAGING = YES +# Filter out D_FILE_OFFSET_BITS=64. This fixes errors caused by glibc 2.22. LIBSELINUX_MAKE_OPTS = \ $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS))" \ LDFLAGS="$(TARGET_LDFLAGS) -lpcre -lpthread" \ ARCH=$(KERNEL_ARCH) define LIBSELINUX_BUILD_CMDS # DESTDIR is needed during the compile to compute library and # header paths. - $(MAKE) -C $(@D) $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(STAGING_DIR) all + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(STAGING_DIR) all endef define LIBSELINUX_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install endef define LIBSELINUX_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(LIBSELINUX_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install # Create the selinuxfs mount point if [ ! -d "$(TARGET_DIR)/selinux" ]; then mkdir $(TARGET_DIR)/selinux; fi if ! grep -q "selinuxfs" $(TARGET_DIR)/etc/fstab; then \ @@ -62,18 +67,22 @@ HOST_LIBSELINUX_MAKE_OPTS = \ define HOST_LIBSELINUX_BUILD_CMDS # DESTDIR is needed during the compile to compute library and # header paths. - $(MAKE1) -C $(@D) $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \ + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \ + $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \ SHLIBDIR=$(HOST_DIR)/usr/lib all # Generate python interface wrapper - $(MAKE1) -C $(@D) $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) swigify pywrap + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) \ + $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) swigify pywrap endef define HOST_LIBSELINUX_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \ + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) \ SHLIBDIR=$(HOST_DIR)/usr/lib SBINDIR=$(HOST_DIR)/usr/sbin install (cd $(HOST_DIR)/usr/lib; $(HOSTLN) -sf libselinux.so.1 libselinux.so) # Install python interface wrapper - $(MAKE) -C $(@D) $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) install-pywrap + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + $(HOST_LIBSELINUX_MAKE_OPTS) DESTDIR=$(HOST_DIR) install-pywrap endef $(eval $(generic-package)) diff --git a/package/libsemanage/0001-execption-lib-path-fix.patch b/package/libsemanage/0001-execption-lib-path-fix.patch deleted file mode 100644 index cbcbea5995..0000000000 --- a/package/libsemanage/0001-execption-lib-path-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -Patch to correct a missing header file issue. - -Signed-off-by Clayton Shotwell - ---- a/src/exception.sh 2011-12-21 11:46:04.000000000 -0600 -+++ b/src/exception.sh 2012-08-27 11:29:58.000000000 -0500 -@@ -9,6 +9,6 @@ - } - " - } --gcc -x c -c - -aux-info temp.aux < ../include/semanage/semanage.h -+gcc -x c -c - -aux-info temp.aux -I../include < ../include/semanage/semanage.h - for i in `awk '/extern int/ { print $6 }' temp.aux`; do except $i ; done - rm -f -- temp.aux -.o diff --git a/package/libsemanage/0002-workaround-blackfin-issue.patch b/package/libsemanage/0001-workaround-blackfin-issue.patch similarity index 89% rename from package/libsemanage/0002-workaround-blackfin-issue.patch rename to package/libsemanage/0001-workaround-blackfin-issue.patch index 5d00c6983b..7ce960665c 100644 --- a/package/libsemanage/0002-workaround-blackfin-issue.patch +++ b/package/libsemanage/0001-workaround-blackfin-issue.patch @@ -8,14 +8,15 @@ symbols are visible in the final DSO, which is not a problem for proper execution, it just isn't as clean. Signed-off-by: Thomas Petazzoni +Signed-off-by: Adam Duskett Index: b/src/dso.h =================================================================== --- a/src/dso.h +++ b/src/dso.h @@ -1,7 +1,7 @@ - #ifndef _SELINUX_DSO_H - #define _SELINUX_DSO_H 1 + #ifndef _SEPOL_DSO_H + #define _SEPOL_DSO_H 1 -#ifdef SHARED +#if defined(SHARED) && !defined(__bfin__) diff --git a/package/libsemanage/Config.in b/package/libsemanage/Config.in index 5e9ad8fee5..4318dbfc5f 100644 --- a/package/libsemanage/Config.in +++ b/package/libsemanage/Config.in @@ -1,11 +1,16 @@ config BR2_PACKAGE_LIBSEMANAGE bool "libsemanage" + select BR2_PACKAGE_AUDIT select BR2_PACKAGE_LIBSELINUX select BR2_PACKAGE_USTR select BR2_PACKAGE_BZIP2 + depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_USES_MUSL # getpwent_r() + # - libselinux needs fts.h (not available in uClibc/musl) + # - libsemanage itself needs getpwent_r() not available in musl + # - audit is not available on musl + depends on BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_arc help libsemanage is the policy management library. It uses @@ -18,7 +23,8 @@ config BR2_PACKAGE_LIBSEMANAGE http://selinuxproject.org/page/Main_Page -comment "libsemanage needs a toolchain w/ threads, dynamic library" +comment "libsemanage needs a glibc toolchain w/ threads, dynamic library" depends on !BR2_arc - depends on !BR2_TOOLCHAIN_USES_MUSL - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libsemanage/libsemanage.hash b/package/libsemanage/libsemanage.hash index d4204d1b62..62f4d833a5 100644 --- a/package/libsemanage/libsemanage.hash +++ b/package/libsemanage/libsemanage.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 de2e8077245581e94576276f54e80a53c23c28d6961d2dfbe2f004eaba452e91 libsemanage-2.1.10.tar.gz +sha256 4f81541047290b751f2ffb926fcd381c186f22db18d9fe671b0b4a6a54e8cfce libsemanage-2.6.tar.gz diff --git a/package/libsemanage/libsemanage.mk b/package/libsemanage/libsemanage.mk index 197c14e422..754559445d 100644 --- a/package/libsemanage/libsemanage.mk +++ b/package/libsemanage/libsemanage.mk @@ -4,11 +4,11 @@ # ################################################################################ -LIBSEMANAGE_VERSION = 2.1.10 -LIBSEMANAGE_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423 +LIBSEMANAGE_VERSION = 2.6 +LIBSEMANAGE_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 LIBSEMANAGE_LICENSE = LGPLv2.1+ LIBSEMANAGE_LICENSE_FILES = COPYING -LIBSEMANAGE_DEPENDENCIES = host-bison host-flex libselinux ustr bzip2 +LIBSEMANAGE_DEPENDENCIES = host-bison host-flex audit libselinux ustr bzip2 LIBSEMANAGE_INSTALL_STAGING = YES LIBSEMANAGE_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) @@ -16,18 +16,18 @@ LIBSEMANAGE_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) define LIBSEMANAGE_BUILD_CMDS # DESTDIR is needed during the compile to compute library and # header paths. - $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(STAGING_DIR) all + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(STAGING_DIR) all endef define LIBSEMANAGE_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install endef define LIBSEMANAGE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install endef -HOST_LIBSEMANAGE_DEPENDENCIES = host-bison host-libsepol host-libselinux \ +HOST_LIBSEMANAGE_DEPENDENCIES = host-bison host-audit host-libsepol host-libselinux \ host-ustr host-bzip2 host-swig HOST_LIBSEMANAGE_MAKE_OPTS += $(HOST_CONFIGURE_OPTS) \ SWIG_LIB="$(HOST_DIR)/usr/share/swig/$(SWIG_VERSION)/" @@ -49,13 +49,13 @@ endif define HOST_LIBSEMANAGE_BUILD_CMDS # DESTDIR is needed during the compile to compute library and # header paths. - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) all - $(MAKE) -C $(@D) $(HOST_LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(HOST_DIR) swigify pywrap + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) all + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(HOST_DIR) swigify pywrap endef define HOST_LIBSEMANAGE_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) install - $(MAKE) -C $(@D) $(HOST_LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(HOST_DIR) install-pywrap + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_LIBSEMANAGE_MAKE_OPTS) DESTDIR=$(HOST_DIR) install-pywrap endef $(eval $(generic-package)) diff --git a/package/libsepol/0001-support-static-only.patch b/package/libsepol/0001-support-static-only.patch index b9746807ba..3e6d555e96 100644 --- a/package/libsepol/0001-support-static-only.patch +++ b/package/libsepol/0001-support-static-only.patch @@ -7,26 +7,30 @@ libraries. It allows to support cases where the target architecture does not have support for shared libraries. Signed-off-by: Thomas Petazzoni +Signed-off-by: Adam Duskett Index: b/src/Makefile =================================================================== + +diff --git a/src/Makefile b/src/Makefile +index db6c2ba..0006285 100644 --- a/src/Makefile +++ b/src/Makefile -@@ -17,7 +17,12 @@ - CFLAGS ?= -Werror -Wall -W -Wundef -Wshadow -Wmissing-noreturn -Wmissing-format-attribute - override CFLAGS += -I. -I../include -D_GNU_SOURCE +@@ -30,8 +30,12 @@ LOBJS += $(sort $(patsubst %.c,%.lo,$(wildcard $(CILDIR)/src/*.c) $(CIL_GENERATE + override CFLAGS += -I$(CILDIR)/include + endif --all: $(LIBA) $(LIBSO) $(LIBPC) +ALL_TARGETS = $(LIBA) $(LIBPC) +ifeq ($(STATIC),) +ALL_TARGETS += $(LIBSO) +endif -+ + +-all: $(LIBA) $(LIBSO) $(LIBPC) +all: $(ALL_TARGETS) + $(LIBA): $(OBJS) - $(AR) rcs $@ $^ -@@ -39,11 +44,13 @@ +@@ -66,11 +70,13 @@ install: all test -d $(LIBDIR) || install -m 755 -d $(LIBDIR) install -m 644 $(LIBA) $(LIBDIR) @@ -37,7 +41,7 @@ Index: b/src/Makefile +ifeq ($(STATIC),) + test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR) + install -m 755 $(LIBSO) $(SHLIBDIR) - cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET) + ln -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET) +endif relabel: diff --git a/package/libsepol/0002-workaround-blackfin-issue.patch b/package/libsepol/0002-workaround-blackfin-issue.patch index 5d00c6983b..3c3bd4827f 100644 --- a/package/libsepol/0002-workaround-blackfin-issue.patch +++ b/package/libsepol/0002-workaround-blackfin-issue.patch @@ -8,17 +8,19 @@ symbols are visible in the final DSO, which is not a problem for proper execution, it just isn't as clean. Signed-off-by: Thomas Petazzoni +Signed-off-by: Adam Duskett Index: b/src/dso.h =================================================================== --- a/src/dso.h +++ b/src/dso.h -@@ -1,7 +1,7 @@ - #ifndef _SELINUX_DSO_H - #define _SELINUX_DSO_H 1 +@@ -5,7 +5,7 @@ + #define DISABLE_SYMVER 1 + #endif -#ifdef SHARED +#if defined(SHARED) && !defined(__bfin__) # define hidden __attribute__ ((visibility ("hidden"))) # define hidden_proto(fct) __hidden_proto (fct, fct##_internal) # define __hidden_proto(fct, internal) \ + diff --git a/package/libsepol/0003-revert-ln-relative.patch b/package/libsepol/0003-revert-ln-relative.patch new file mode 100644 index 0000000000..0902d8d40e --- /dev/null +++ b/package/libsepol/0003-revert-ln-relative.patch @@ -0,0 +1,24 @@ +Makefile: revert libsepol: use ln --relative to create .so symlinks + +This reverts 71393a181d63c9baae5fe8dcaeb9411d1f253998 + +ln --relative is too recent to be available in all distributions, +especially enterprise-grade distros that can stick around as long as +they are maintained (up to 10 years in some cases?). + +For the sake of Buildroot, revert the upstream patch. + +Signed-off-by: "Yann E. MORIN" + +diff -durN a/src/Makefile b/src/Makefile +--- a/src/Makefile ++++ b/src/Makefile +@@ -77,7 +77,7 @@ + ifeq ($(STATIC),) + test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR) + install -m 755 $(LIBSO) $(SHLIBDIR) +- ln -sf --relative $(SHLIBDIR)/$(LIBSO) $(LIBDIR)/$(TARGET) ++ cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET) + endif + + relabel: diff --git a/package/libsepol/libsepol.hash b/package/libsepol/libsepol.hash index df5dabdf68..6c705067a2 100644 --- a/package/libsepol/libsepol.hash +++ b/package/libsepol/libsepol.hash @@ -1,2 +1,2 @@ # From https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 290d17f583635a4a5d8a2141511272adf0571c4205cdea38b5a68df20d58a70b libsepol-2.1.9.tar.gz +sha256 d856d6506054f52abeaa3543ea2f2344595a3dc05d0d873ed7f724f7a16b1874 libsepol-2.6.tar.gz diff --git a/package/libsepol/libsepol.mk b/package/libsepol/libsepol.mk index 1e709c6186..61d1e611de 100644 --- a/package/libsepol/libsepol.mk +++ b/package/libsepol/libsepol.mk @@ -4,12 +4,14 @@ # ################################################################################ -LIBSEPOL_VERSION = 2.1.9 -LIBSEPOL_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423 +LIBSEPOL_VERSION = 2.6 +LIBSEPOL_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 LIBSEPOL_LICENSE = LGPLv2.1+ LIBSEPOL_LICENSE_FILES = COPYING LIBSEPOL_INSTALL_STAGING = YES +LIBSEPOL_DEPENDENCIES = host-flex +HOST_LIBSEPOL_DEPENDENCIES = host-flex LIBSEPOL_MAKE_FLAGS = $(TARGET_CONFIGURE_OPTS) @@ -20,23 +22,23 @@ endif define LIBSEPOL_BUILD_CMDS # DESTDIR is needed during the compile to compute library and # header paths. - $(MAKE) -C $(@D) $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(STAGING_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(STAGING_DIR) endef define LIBSEPOL_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) install $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(STAGING_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(STAGING_DIR) endef define LIBSEPOL_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) install $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(TARGET_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install $(LIBSEPOL_MAKE_FLAGS) DESTDIR=$(TARGET_DIR) endef define HOST_LIBSEPOL_BUILD_CMDS - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) endef define HOST_LIBSEPOL_INSTALL_CMDS - $(MAKE) -C $(@D) install $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) mv $(HOST_DIR)/lib/libsepol.so.1 $(HOST_DIR)/usr/lib (cd $(HOST_DIR)/usr/lib; rm -f libsepol.so; ln -s libsepol.so.1 libsepol.so) -rmdir $(HOST_DIR)/lib diff --git a/package/libserial/Config.in b/package/libserial/Config.in index df5d1b5432..bd936b93b8 100644 --- a/package/libserial/Config.in +++ b/package/libserial/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_LIBSERIAL bool "libserial" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS # boost depends on BR2_TOOLCHAIN_HAS_THREADS # boost depends on BR2_USE_WCHAR # boost select BR2_PACKAGE_BOOST @@ -12,5 +11,4 @@ config BR2_PACKAGE_LIBSERIAL http://libserial.sourceforge.net/ comment "libserial needs a toolchain w/ C++, threads, wchar" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/libserialport/0001-uclinux-detection.patch b/package/libserialport/0001-uclinux-detection.patch new file mode 100644 index 0000000000..7d7199c1f0 --- /dev/null +++ b/package/libserialport/0001-uclinux-detection.patch @@ -0,0 +1,26 @@ +From faab9aa5879fab93556b7a3a6f24070eeb3cbf15 Mon Sep 17 00:00:00 2001 +From: Paul Cercueil +Date: Mon, 29 Aug 2016 11:11:01 +0200 +Subject: [PATCH] Fix Linux files not compiled in with a toolchain for ucLinux + +Signed-off-by: Paul Cercueil +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index f6b66e8..de6f5b9 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -74,7 +74,7 @@ AC_DEFINE_UNQUOTED([SP_LIB_VERSION_REVISION], [$SP_LIB_VERSION_REVISION], [.]) + AC_DEFINE_UNQUOTED([SP_LIB_VERSION_AGE], [$SP_LIB_VERSION_AGE], [.]) + AC_DEFINE_UNQUOTED([SP_LIB_VERSION_STRING], ["$SP_LIB_VERSION"], [.]) + +-AM_CONDITIONAL([LINUX], [test -z "${host_os##linux*}"]) ++AM_CONDITIONAL([LINUX], [test -z "${host_os##linux*}" || test -z "${host_os##uclinux*}"]) + AM_CONDITIONAL([WIN32], [test -z "${host_os##mingw*}" || test -z "${host_os##cygwin*}"]) + AM_CONDITIONAL([MACOSX], [test -z "${host_os##darwin*}"]) + AM_CONDITIONAL([FREEBSD], [test -z "${host_os##freebsd*}"]) +-- +2.8.1 + diff --git a/package/libserialport/libserialport.mk b/package/libserialport/libserialport.mk index d8c3a3d173..86ae17f549 100644 --- a/package/libserialport/libserialport.mk +++ b/package/libserialport/libserialport.mk @@ -10,5 +10,6 @@ LIBSERIALPORT_LICENSE = LGPLv3+ LIBSERIALPORT_LICENSE_FILES = COPYING LIBSERIALPORT_INSTALL_STAGING = YES LIBSERIALPORT_DEPENDENCIES = host-pkgconf +LIBSERIALPORT_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libsha1/libsha1.hash b/package/libsha1/libsha1.hash new file mode 100644 index 0000000000..6d597abffb --- /dev/null +++ b/package/libsha1/libsha1.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ef4c75007ac41c3dc09e0225943c789ba2b9c632a6cd7b548e0519477ac2f768 libsha1-0.3.tar.gz diff --git a/package/libshairplay/libshairplay.hash b/package/libshairplay/libshairplay.hash new file mode 100644 index 0000000000..19261f98bf --- /dev/null +++ b/package/libshairplay/libshairplay.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 49ac0e0470ec6367f720c7b79a09165138f57b60f5949a2d9c38be5823d13294 libshairplay-ce80e005908f41d0e6fde1c4a21e9cb8ee54007b.tar.gz diff --git a/package/libshairplay/libshairplay.mk b/package/libshairplay/libshairplay.mk index 35bbeac9d6..4bdd1a04e0 100644 --- a/package/libshairplay/libshairplay.mk +++ b/package/libshairplay/libshairplay.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSHAIRPLAY_VERSION = 64d59e3087f829006d091fa0d114efb50972a2bf +LIBSHAIRPLAY_VERSION = ce80e005908f41d0e6fde1c4a21e9cb8ee54007b LIBSHAIRPLAY_SITE = $(call github,juhovh,shairplay,$(LIBSHAIRPLAY_VERSION)) LIBSHAIRPLAY_INSTALL_STAGING = YES LIBSHAIRPLAY_AUTORECONF = YES diff --git a/package/libshout/0001-Fix-THEORA-SPEEX-_LDFLAGS-typo.patch b/package/libshout/0001-Fix-THEORA-SPEEX-_LDFLAGS-typo.patch new file mode 100644 index 0000000000..4d173c51e9 --- /dev/null +++ b/package/libshout/0001-Fix-THEORA-SPEEX-_LDFLAGS-typo.patch @@ -0,0 +1,45 @@ +From d96a3cafeebeb80b4796bacbe0e6da0bbd3ee48e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Sun, 28 Aug 2016 00:39:55 +0200 +Subject: [PATCH 1/2] Fix {THEORA,SPEEX}_LDFLAGS typo +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Needed to properly link against libshout, otherwise the build fails with: + + error: LDFLAGS: No such file or directory + +Upstream status: pending +https://github.com/xiph/Icecast-libshout/pull/4 + +Signed-off-by: Jörg Krause +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 87a7f55..85f18ad 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -134,7 +134,7 @@ PKG_CHECK_MODULES(THEORA, theora, [ + ]) + fi + XIPH_VAR_APPEND([XIPH_CPPFLAGS],[$THEORA_CFLAGS]) +-XIPH_VAR_PREPEND([XIPH_LIBS],[$THEORA LDFLAGS $THEORA_LIBS]) ++XIPH_VAR_PREPEND([XIPH_LIBS],[$THEORA_LDFLAGS $THEORA_LIBS]) + AM_CONDITIONAL([HAVE_THEORA], [test -n "$THEORA_LIBS"]) + if test -n "$THEORA_LIBS" + then +@@ -153,7 +153,7 @@ PKG_CHECK_MODULES(SPEEX, speex, [ + ]) + fi + XIPH_VAR_APPEND([XIPH_CPPFLAGS],[$SPEEX_CFLAGS]) +-XIPH_VAR_PREPEND([XIPH_LIBS],[$SPEEX LDFLAGS $SPEEX_LIBS]) ++XIPH_VAR_PREPEND([XIPH_LIBS],[$SPEEX_LDFLAGS $SPEEX_LIBS]) + AM_CONDITIONAL([HAVE_SPEEX], [test -n "$SPEEX_LIBS"]) + if test -n "$SPEEX_LIBS" + then +-- +2.9.3 + diff --git a/package/libshout/0002-Make-sure-SHOUT_REQUIRES-contains-OpenSSL.patch b/package/libshout/0002-Make-sure-SHOUT_REQUIRES-contains-OpenSSL.patch new file mode 100644 index 0000000000..08d7fa9176 --- /dev/null +++ b/package/libshout/0002-Make-sure-SHOUT_REQUIRES-contains-OpenSSL.patch @@ -0,0 +1,55 @@ +From 69774132422af1d017008eb5daed8e2099d2fa0a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Wed, 31 Aug 2016 21:55:51 +0200 +Subject: [PATCH 2/2] Make sure @SHOUT_REQUIRES@ contains OpenSSL +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Static linking userspace programs such as mpd against libshout +currently doesn't work out of the box, because libshout is linked +against libssl, but this isn't expressed in libshouts pkg-config +file: + +``` +/usr/lib/libshout.a(tls.o): In function `tls_check_cert': +tls.c:(.text+0x10): undefined reference to `SSL_get_peer_certificate' +tls.c:(.text+0x24): undefined reference to `SSL_get_verify_result' +tls.c:(.text+0x4c): undefined reference to `X509_get_subject_name' +tls.c:(.text+0x60): undefined reference to `X509_NAME_get_text_by_NID' +tls.c:(.text+0x118): undefined reference to `X509_NAME_get_entry' +tls.c:(.text+0x11c): undefined reference to `X509_NAME_ENTRY_get_data' +tls.c:(.text+0x120): undefined reference to `ASN1_STRING_length' +tls.c:(.text+0x148): undefined reference to `X509_free' +tls.c:(.text+0x178): undefined reference to `X509_NAME_get_index_by_NID' +``` + +Since OpenSSL installs its own .pc files, make sure that @SHOUT_REQUIRES@ +contains `ssl`. + +Upstream status: pending +https://github.com/xiph/Icecast-libshout/pull/5 + +Signed-off-by: Jörg Krause +--- + configure.ac | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 85f18ad..2b9c505 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -197,6 +197,10 @@ XIPH_PATH_OPENSSL([ + ]) + AC_SUBST([SHOUT_TLS]) + AM_CONDITIONAL([HAVE_TLS], [test -n "$OPENSSL_LIBS"]) ++if test "$SHOUT_TLS" = "1" ++then ++ SHOUT_REQUIRES="$SHOUT_REQUIRES, libssl" ++fi + + SHOUT_VERSION="$VERSION" + SHOUT_CPPFLAGS="-I$shout_includedir $VORBIS_CFLAGS $PTHREAD_CPPFLAGS" +-- +2.9.3 + diff --git a/package/libshout/libshout.mk b/package/libshout/libshout.mk index 029c134412..bf85595204 100644 --- a/package/libshout/libshout.mk +++ b/package/libshout/libshout.mk @@ -11,6 +11,9 @@ LIBSHOUT_LICENSE_FILES = COPYING LIBSHOUT_INSTALL_STAGING = YES LIBSHOUT_DEPENDENCIES = host-pkgconf libogg libvorbis +# patching configure.ac +LIBSHOUT_AUTORECONF = YES + ifeq ($(BR2_PACKAGE_LIBTHEORA),y) LIBSHOUT_CONF_OPTS += --enable-theora LIBSHOUT_DEPENDENCIES += libtheora @@ -25,4 +28,11 @@ else LIBSHOUT_CONF_OPTS += --disable-speex endif +ifeq ($(BR2_PACKAGE_OPENSSL),y) +LIBSHOUT_CONF_OPTS += --with-openssl +LIBSHOUT_DEPENDENCIES += openssl +else +LIBSHOUT_CONF_OPTS += --without-openssl +endif + $(eval $(autotools-package)) diff --git a/package/libsidplay2/0003-gcc6.patch b/package/libsidplay2/0003-gcc6.patch new file mode 100644 index 0000000000..53601f6d4f --- /dev/null +++ b/package/libsidplay2/0003-gcc6.patch @@ -0,0 +1,44 @@ +Fix build with gcc6 + +gcc6 triggers an error during build: + +xsid.cpp:101:1: error: narrowing conversion of ''\200'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] + }; + ^ +xsid.cpp:101:1: error: narrowing conversion of ''\224'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] +xsid.cpp:101:1: error: narrowing conversion of ''\251'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] +xsid.cpp:101:1: error: narrowing conversion of ''\274'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] +xsid.cpp:101:1: error: narrowing conversion of ''\316'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] +xsid.cpp:101:1: error: narrowing conversion of ''\341'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] +xsid.cpp:101:1: error: narrowing conversion of ''\362'' from 'char' to 'int8_t {aka signed char}' inside { } [-Wnarrowing] + +To fix the problem change the array type from int8_t to char as proposed +by Khem Raj: +http://lists.busybox.net/pipermail/buildroot/2016-August/169540.html + +Signed-off-by: Bernd Kuhls + +diff -uNr sidplay-libs-2.1.1.org/libsidplay/src/xsid/xsid.cpp sidplay-libs-2.1.1/libsidplay/src/xsid/xsid.cpp +--- sidplay-libs-2.1.1.org/libsidplay/src/xsid/xsid.cpp 2004-06-14 22:08:02.000000000 +0200 ++++ sidplay-libs-2.1.1/libsidplay/src/xsid/xsid.cpp 2016-08-12 18:10:20.000000000 +0200 +@@ -94,7 +94,7 @@ + '\x08', '\x19', '\x2a', '\x3b', '\x4c', '\x5d', '\x6e', '\x7f' + }; + */ +-const int8_t XSID::sampleConvertTable[16] = ++const char XSID::sampleConvertTable[16] = + { + '\x80', '\x94', '\xa9', '\xbc', '\xce', '\xe1', '\xf2', '\x03', + '\x1b', '\x2a', '\x3b', '\x49', '\x58', '\x66', '\x73', '\x7f' +diff -uNr sidplay-libs-2.1.1.org/libsidplay/src/xsid/xsid.h sidplay-libs-2.1.1/libsidplay/src/xsid/xsid.h +--- sidplay-libs-2.1.1.org/libsidplay/src/xsid/xsid.h 2004-06-14 22:08:02.000000000 +0200 ++++ sidplay-libs-2.1.1/libsidplay/src/xsid/xsid.h 2016-08-12 18:11:01.000000000 +0200 +@@ -238,7 +238,7 @@ + uint8_t sidData0x18; + bool _sidSamples; + int8_t sampleOffset; +- static const int8_t sampleConvertTable[16]; ++ static const char sampleConvertTable[16]; + bool wasRunning; + + private: diff --git a/package/libsigc/Config.in b/package/libsigc/Config.in index 41ea19e227..f38749b4d9 100644 --- a/package/libsigc/Config.in +++ b/package/libsigc/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LIBSIGC bool "libsigc++" - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_INSTALL_LIBSTDCPP help libsigc++ implements a typesafe callback system for standard C++. @@ -10,5 +10,5 @@ config BR2_PACKAGE_LIBSIGC http://libsigc.sourceforge.net/ -comment "libsigc++ needs a toolchain w/ C++, gcc >= 4.7" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 +comment "libsigc++ needs a toolchain w/ C++, gcc >= 4.8" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/libsigc/libsigc.hash b/package/libsigc/libsigc.hash index c452414067..a630534e84 100644 --- a/package/libsigc/libsigc.hash +++ b/package/libsigc/libsigc.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/libsigc++/2.8/libsigc++-2.8.0.sha256sum -sha256 774980d027c52947cb9ee4fac6ffe2ca60cc2f753068a89dfd281c83dbff9651 libsigc++-2.8.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/libsigc++/2.10/libsigc++-2.10.0.sha256sum +sha256 f843d6346260bfcb4426259e314512b99e296e8ca241d771d21ac64f28298d81 libsigc++-2.10.0.tar.xz diff --git a/package/libsigc/libsigc.mk b/package/libsigc/libsigc.mk index f3ca97022f..590cbaa583 100644 --- a/package/libsigc/libsigc.mk +++ b/package/libsigc/libsigc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSIGC_VERSION_MAJOR = 2.8 +LIBSIGC_VERSION_MAJOR = 2.10 LIBSIGC_VERSION = $(LIBSIGC_VERSION_MAJOR).0 LIBSIGC_SOURCE = libsigc++-$(LIBSIGC_VERSION).tar.xz LIBSIGC_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsigc++/$(LIBSIGC_VERSION_MAJOR) diff --git a/package/libsigrokdecode/libsigrokdecode.hash b/package/libsigrokdecode/libsigrokdecode.hash index 3ac8a7628d..ccb2016837 100644 --- a/package/libsigrokdecode/libsigrokdecode.hash +++ b/package/libsigrokdecode/libsigrokdecode.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 fd7e9d1b73245e844ead97a16d5321c766196f946c9b28a8646cab2e98ec3537 libsigrokdecode-0.4.0.tar.gz +sha256 065f70c10971173d86e03a8cf5534e600c7a622775113997d8061572135d4a95 libsigrokdecode-0.4.1.tar.gz diff --git a/package/libsigrokdecode/libsigrokdecode.mk b/package/libsigrokdecode/libsigrokdecode.mk index b8b3c59a88..7006b0c6e8 100644 --- a/package/libsigrokdecode/libsigrokdecode.mk +++ b/package/libsigrokdecode/libsigrokdecode.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSIGROKDECODE_VERSION = 0.4.0 +LIBSIGROKDECODE_VERSION = 0.4.1 LIBSIGROKDECODE_SITE = http://sigrok.org/download/source/libsigrokdecode LIBSIGROKDECODE_LICENSE = GPLv3+ LIBSIGROKDECODE_LICENSE_FILES = COPYING diff --git a/package/libsigsegv/Config.in b/package/libsigsegv/Config.in index e96ba5f017..f258dc9e8a 100644 --- a/package/libsigsegv/Config.in +++ b/package/libsigsegv/Config.in @@ -1,14 +1,20 @@ +config BR2_PACKAGE_LIBSIGSEGV_ARCH_SUPPORTS + bool + # with glibc/musl, ucontext is available for all supported + # architectures + default y if BR2_TOOLCHAIN_USES_GLIBC + default y if BR2_TOOLCHAIN_USES_MUSL + # with uclibc, ucontext is only available for a subset of the + # supported architectures + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_ARM_CPU_HAS_ARM || BR2_i386 || \ + BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ + BR2_sparc || BR2_x86_64) + config BR2_PACKAGE_LIBSIGSEGV bool "libsigsegv" - depends on !BR2_xtensa - depends on !BR2_arc # no ucontext_i.sym file - depends on !BR2_microblaze - # No ucontext support in uclibc for powerpc, sparc and superh - depends on !((BR2_powerpc || BR2_sh || BR2_sparc ) && BR2_TOOLCHAIN_USES_UCLIBC) + depends on BR2_PACKAGE_LIBSIGSEGV_ARCH_SUPPORTS help Library for handling page faults in user mode. - http://libsigsegv.sourceforge.net/ - -comment "libsigsegv needs an (e)glibc toolchain" - depends on (BR2_powerpc || BR2_sh || BR2_sparc) && BR2_TOOLCHAIN_USES_UCLIBC + http://www.gnu.org/software/libsigsegv/ diff --git a/package/libsndfile/libsndfile.hash b/package/libsndfile/libsndfile.hash index 04d091b58b..a87b7c3085 100644 --- a/package/libsndfile/libsndfile.hash +++ b/package/libsndfile/libsndfile.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 cd6520ec763d1a45573885ecb1f8e4e42505ac12180268482a44b28484a25092 libsndfile-1.0.26.tar.gz +sha256 a391952f27f4a92ceb2b4c06493ac107896ed6c76be9a613a4731f076d30fac0 libsndfile-1.0.27.tar.gz diff --git a/package/libsndfile/libsndfile.mk b/package/libsndfile/libsndfile.mk index 107a356604..c5cd1de10f 100644 --- a/package/libsndfile/libsndfile.mk +++ b/package/libsndfile/libsndfile.mk @@ -4,10 +4,15 @@ # ################################################################################ -LIBSNDFILE_VERSION = 1.0.26 +LIBSNDFILE_VERSION = 1.0.27 LIBSNDFILE_SITE = http://www.mega-nerd.com/libsndfile/files LIBSNDFILE_INSTALL_STAGING = YES LIBSNDFILE_LICENSE = LGPLv2.1+ LIBSNDFILE_LICENSE_FILES = COPYING +LIBSNDFILE_CONF_OPTS = \ + --disable-sqlite \ + --disable-alsa \ + --disable-external-libs + $(eval $(autotools-package)) diff --git a/package/libsoc/libsoc.hash b/package/libsoc/libsoc.hash index e6a85771f3..77f2fad79c 100644 --- a/package/libsoc/libsoc.hash +++ b/package/libsoc/libsoc.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 fc7f4c4ec5cc694833f27d91603aaaa6a43e8100ab26bac47f553753c8d45ac0 libsoc-0.7.1.tar.gz +# Locally computed: +sha256 8df626bde365b94a805e1c323104c63a7429ec64c9df815cd1d9b9c4b317e066 libsoc-0.8.2.tar.gz diff --git a/package/libsoc/libsoc.mk b/package/libsoc/libsoc.mk index 84e281fb69..03bef043d9 100644 --- a/package/libsoc/libsoc.mk +++ b/package/libsoc/libsoc.mk @@ -4,11 +4,23 @@ # ################################################################################ -LIBSOC_VERSION = 0.7.1 +LIBSOC_VERSION = 0.8.2 LIBSOC_SITE = $(call github,jackmitch,libsoc,$(LIBSOC_VERSION)) LIBSOC_LICENSE = LGPLv2.1 -LIBSOC_LICENSE_FILES = COPYING +LIBSOC_LICENSE_FILES = LICENCE LIBSOC_AUTORECONF = YES LIBSOC_INSTALL_STAGING = YES +# Install Python 2 bindings +ifeq ($(BR2_PACKAGE_PYTHON),y) +LIBSOC_DEPENDENCIES += python +LIBSOC_CONF_OPTS += --enable-python=2 +# Install Python 3 bindings +else ifeq ($(BR2_PACKAGE_PYTHON3),y) +LIBSOC_DEPENDENCIES += python3 +LIBSOC_CONF_OPTS += --enable-python=3 +else +LIBSOC_CONF_OPTS += --disable-python +endif + $(eval $(autotools-package)) diff --git a/package/libsodium/libsodium.hash b/package/libsodium/libsodium.hash index 8b7955519c..3b129a0ca7 100644 --- a/package/libsodium/libsodium.hash +++ b/package/libsodium/libsodium.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 c0f191d2527852641e0a996b7b106d2e04cbc76ea50731b2d0babd3409301926 libsodium-1.0.8.tar.gz +sha256 a14549db3c49f6ae2170cbbf4664bd48ace50681045e8dbea7c8d9fb96f9c765 libsodium-1.0.11.tar.gz diff --git a/package/libsodium/libsodium.mk b/package/libsodium/libsodium.mk index bd6f58d343..1d21bb3d86 100644 --- a/package/libsodium/libsodium.mk +++ b/package/libsodium/libsodium.mk @@ -4,14 +4,15 @@ # ################################################################################ -LIBSODIUM_VERSION = 1.0.8 +LIBSODIUM_VERSION = 1.0.11 LIBSODIUM_SITE = https://download.libsodium.org/libsodium/releases LIBSODIUM_LICENSE = ISC LIBSODIUM_LICENSE_FILES = LICENSE LIBSODIUM_INSTALL_STAGING = YES -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) LIBSODIUM_CONF_OPTS += --disable-pie endif $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/libsoup/libsoup.hash b/package/libsoup/libsoup.hash index 45cee4216d..b42cf2f711 100644 --- a/package/libsoup/libsoup.hash +++ b/package/libsoup/libsoup.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/libsoup/2.54/libsoup-2.54.1.sha256sum -sha256 47b42c232034734d66e5f093025843a5d8cc4b2357c011085a2fd04ef02dd633 libsoup-2.54.1.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/libsoup/2.56/libsoup-2.56.0.sha256sum +sha256 d8216b71de8247bc6f274ec054c08547b2e04369c1f8add713e9350c8ef81fe5 libsoup-2.56.0.tar.xz diff --git a/package/libsoup/libsoup.mk b/package/libsoup/libsoup.mk index 5f5156b6e8..f6e92f8a3b 100644 --- a/package/libsoup/libsoup.mk +++ b/package/libsoup/libsoup.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBSOUP_VERSION_MAJOR = 2.54 -LIBSOUP_VERSION = $(LIBSOUP_VERSION_MAJOR).1 +LIBSOUP_VERSION_MAJOR = 2.56 +LIBSOUP_VERSION = $(LIBSOUP_VERSION_MAJOR).0 LIBSOUP_SOURCE = libsoup-$(LIBSOUP_VERSION).tar.xz LIBSOUP_SITE = http://ftp.gnome.org/pub/gnome/sources/libsoup/$(LIBSOUP_VERSION_MAJOR) LIBSOUP_LICENSE = LGPLv2+ diff --git a/package/libssh/Config.in b/package/libssh/Config.in index 3357fb9e92..3dbfa7d561 100644 --- a/package/libssh/Config.in +++ b/package/libssh/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_LIBSSH depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_THREADS # Either OpenSSL or libgcrypt are mandatory - select BR2_PACKAGE_LIBGCRYPT if !BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_LIBGCRYPT help libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side. With libssh, diff --git a/package/libssh/libssh.mk b/package/libssh/libssh.mk index 29bbf4e9f2..429e3c17c8 100644 --- a/package/libssh/libssh.mk +++ b/package/libssh/libssh.mk @@ -23,14 +23,14 @@ else LIBSSH_CONF_OPTS += -DWITH_ZLIB=OFF endif +# Dependency is either on libgcrypt or openssl, guaranteed in Config.in. +# Favour libgcrypt. ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) LIBSSH_CONF_OPTS += -DWITH_GCRYPT=ON LIBSSH_DEPENDENCIES += libgcrypt else LIBSSH_CONF_OPTS += -DWITH_GCRYPT=OFF -ifeq ($(BR2_PACKAGE_OPENSSL),y) LIBSSH_DEPENDENCIES += openssl endif -endif $(eval $(cmake-package)) diff --git a/package/libssh2/Config.in b/package/libssh2/Config.in index 017fd4061a..2944624e0a 100644 --- a/package/libssh2/Config.in +++ b/package/libssh2/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LIBSSH2 bool "libssh2" - select BR2_PACKAGE_LIBGCRYPT if !BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_LIBGCRYPT help libssh2 is a client-side C library implementing the SSH2 protocol as defined by Internet Drafts: SECSH-TRANS(22), diff --git a/package/libssh2/libssh2.mk b/package/libssh2/libssh2.mk index 221fac473c..847c2f1b8e 100644 --- a/package/libssh2/libssh2.mk +++ b/package/libssh2/libssh2.mk @@ -11,8 +11,8 @@ LIBSSH2_LICENSE_FILES = COPYING LIBSSH2_INSTALL_STAGING = YES LIBSSH2_CONF_OPTS = --disable-examples-build -# libssh2 must use either libgcrypt or OpenSSL -# Only select openssl if libgcrypt is not selected +# Dependency is either on libgcrypt or openssl, guaranteed in Config.in. +# Favour libgcrypt. ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) LIBSSH2_DEPENDENCIES += libgcrypt LIBSSH2_CONF_OPTS += --with-libgcrypt \ diff --git a/package/libstrophe/libstrophe.hash b/package/libstrophe/libstrophe.hash new file mode 100644 index 0000000000..d840303940 --- /dev/null +++ b/package/libstrophe/libstrophe.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 08f4a85ef419a8bdf08b6afa8f7b2a0e5e180fdc9c16cede81af672ec10e21e7 libstrophe-0.8.8.tar.gz +sha256 00936397cbb75ef168992868ae559b141b505d3a06f08163012b240390efa553 b08766c8e46956daba010044b00c97f78b598780.patch diff --git a/package/libtasn1/0001-configure-don-t-add-Werror-to-build-flags.patch b/package/libtasn1/0001-configure-don-t-add-Werror-to-build-flags.patch new file mode 100644 index 0000000000..387ba7aa3b --- /dev/null +++ b/package/libtasn1/0001-configure-don-t-add-Werror-to-build-flags.patch @@ -0,0 +1,28 @@ +From dd091c8af163213e12aa92f61bc4916e0f102633 Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Tue, 26 Jul 2016 08:45:33 +0200 +Subject: [PATCH] configure: don't add -Werror to build flags + +Signed-off-by: Gustavo Zacarias +--- +Patch status: upstream + + configure.ac | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 7a14e04..066f5fe 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -70,8 +70,6 @@ AC_ARG_ENABLE([gcc-warnings], + ) + + if test "$gl_gcc_warnings" = yes; then +- gl_WARN_ADD([-Werror], [WERROR_CFLAGS]) +- + nw="$nw -Wsystem-headers" # Don't let system headers trigger warnings + nw="$nw -Wc++-compat" # We don't care strongly about C++ compilers + nw="$nw -Wtraditional" # Warns on #elif which we use often +-- +2.7.3 + diff --git a/package/libtasn1/libtasn1.hash b/package/libtasn1/libtasn1.hash index dc65210387..5b2100e87d 100644 --- a/package/libtasn1/libtasn1.hash +++ b/package/libtasn1/libtasn1.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 fa802fc94d79baa00e7397cedf29eb6827d4bd8b4dd77b577373577c93a8c513 libtasn1-4.8.tar.gz +sha256 4f6f7a8fd691ac2b8307c8ca365bad711db607d4ad5966f6938a9d2ecd65c920 libtasn1-4.9.tar.gz diff --git a/package/libtasn1/libtasn1.mk b/package/libtasn1/libtasn1.mk index c51d8c0072..ac99868a21 100644 --- a/package/libtasn1/libtasn1.mk +++ b/package/libtasn1/libtasn1.mk @@ -4,13 +4,15 @@ # ################################################################################ -LIBTASN1_VERSION = 4.8 -LIBTASN1_SITE = http://ftp.gnu.org/gnu/libtasn1 +LIBTASN1_VERSION = 4.9 +LIBTASN1_SITE = $(BR2_GNU_MIRROR)/libtasn1 LIBTASN1_DEPENDENCIES = host-bison -LIBTASN1_LICENSE = GPLv3+, LGPLv2.1+ +LIBTASN1_LICENSE = GPLv3+ (tests, tools), LGPLv2.1+ (library) LIBTASN1_LICENSE_FILES = COPYING COPYING.LIB LIBTASN1_INSTALL_STAGING = YES # 'missing' fallback logic botched so disable it completely LIBTASN1_CONF_ENV = MAKEINFO="true" +# For 0001-configure-don-t-add-Werror-to-build-flags.patch +LIBTASN1_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libtomcrypt/libtomcrypt.mk b/package/libtomcrypt/libtomcrypt.mk index 53dbfd504b..8cc02b28d3 100644 --- a/package/libtomcrypt/libtomcrypt.mk +++ b/package/libtomcrypt/libtomcrypt.mk @@ -17,11 +17,11 @@ LIBTOMCRYPT_CFLAGS = -I./src/headers $(TARGET_CFLAGS) -DLTC_SOURCE -DLTM_DESC \ $(if $(BR2_USE_WCHAR),,-DLTC_NO_WCHAR) define LIBTOMCRYPT_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="$(LIBTOMCRYPT_CFLAGS)" + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="$(LIBTOMCRYPT_CFLAGS)" endef define LIBTOMCRYPT_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)" NODOCS=1 INSTALL_USER=$(shell id -u) INSTALL_GROUP=$(shell id -g) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)" NODOCS=1 INSTALL_USER=$(shell id -u) INSTALL_GROUP=$(shell id -g) install endef $(eval $(generic-package)) diff --git a/package/libtommath/libtommath.mk b/package/libtommath/libtommath.mk index eb3b00e861..2fc8c39c6e 100644 --- a/package/libtommath/libtommath.mk +++ b/package/libtommath/libtommath.mk @@ -13,11 +13,11 @@ LIBTOMMATH_INSTALL_STAGING = YES LIBTOMMATH_INSTALL_TARGET = NO # only static library define LIBTOMMATH_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="-I./ -fPIC $(TARGET_CFLAGS)" + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) CFLAGS="-I./ -fPIC $(TARGET_CFLAGS)" endef define LIBTOMMATH_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(STAGING_DIR)" install endef $(eval $(generic-package)) diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk index 8688f8b20c..1d066bd1ec 100644 --- a/package/libtool/libtool.mk +++ b/package/libtool/libtool.mk @@ -10,6 +10,7 @@ LIBTOOL_SITE = $(BR2_GNU_MIRROR)/libtool LIBTOOL_INSTALL_STAGING = YES LIBTOOL_CONF_ENV = HELP2MAN=true LIBTOOL_DEPENDENCIES = host-m4 +HOST_LIBTOOL_DEPENDENCIES = host-m4 LIBTOOL_LICENSE = GPLv2+ LIBTOOL_LICENSE_FILES = COPYING diff --git a/package/libtpl/libtpl.hash b/package/libtpl/libtpl.hash new file mode 100644 index 0000000000..7df62f204c --- /dev/null +++ b/package/libtpl/libtpl.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 0b3750bf62f56be4c42f83c89d8449b24f1c5f1605a104801d70f2f3c06fb2ff libtpl-v1.6.1.tar.gz diff --git a/package/libubox/libubox.mk b/package/libubox/libubox.mk index 4c56951a3d..00392c3112 100644 --- a/package/libubox/libubox.mk +++ b/package/libubox/libubox.mk @@ -4,9 +4,9 @@ # ################################################################################ -LIBUBOX_VERSION = e88d816d6e462180f0337565e04e36be58a63309 +LIBUBOX_VERSION = 290c64ef5b5c3e75be851594f269d6a9568e64e5 LIBUBOX_SITE = git://git.openwrt.org/project/libubox.git -LIBUBOX_LICENSE = LGPLv2.1, GPLv2, BSD-3c, MIT +LIBUBOX_LICENSE = ISC, BSD-3c LIBUBOX_INSTALL_STAGING = YES LIBUBOX_DEPENDENCIES = $(if $(BR2_PACKAGE_JSON_C),json-c) diff --git a/package/libuci/libuci.mk b/package/libuci/libuci.mk index 8c060d5984..664704571c 100644 --- a/package/libuci/libuci.mk +++ b/package/libuci/libuci.mk @@ -6,7 +6,7 @@ LIBUCI_VERSION = e339407372ffc70b1451e4eda218c01aa95a6a7f LIBUCI_SITE = git://nbd.name/uci.git -LIBUCI_LICENSE = LGPLv2.1 +LIBUCI_LICENSE = LGPLv2.1, GPLv2 (tools) LIBUCI_INSTALL_STAGING = YES LIBUCI_DEPENDENCIES = libubox @@ -15,6 +15,7 @@ LIBUCI_DEPENDENCIES += lua LIBUCI_CONF_OPTS += -DBUILD_LUA=ON \ -DLUAPATH=/usr/lib/lua/5.1 \ -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include +LIBUCI_LICENSE := $(LIBUCI_LICENSE), GPLv2 (lua bindings) else LIBUCI_CONF_OPTS += -DBUILD_LUA=OFF endif diff --git a/package/libucl/libucl.hash b/package/libucl/libucl.hash new file mode 100644 index 0000000000..bd2ca13bf3 --- /dev/null +++ b/package/libucl/libucl.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2f69995c7f8320350f56c1183c395cc4a2a958331f22d60b7839a117c9c601e1 libucl-0.7.3.tar.gz diff --git a/package/libuio/0001-configure-remove-po-Makefile.in.patch b/package/libuio/0001-configure-remove-po-Makefile.in.patch new file mode 100644 index 0000000000..067465cc31 --- /dev/null +++ b/package/libuio/0001-configure-remove-po-Makefile.in.patch @@ -0,0 +1,26 @@ +From c5fa0b778e1c2a7d03ff6e661bdfa2faef878f68 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 1 Jul 2016 17:56:30 +0200 +Subject: [PATCH] configure: remove po/Makefile.in + +The file po/Makefile.in is automatically added to AC_OUTPUT while using gettexize + +Signed-off-by: Romain Naour +--- + configure.ac | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f7fb40f..a25e463 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -55,5 +55,4 @@ dnl last but not least + AC_OUTPUT([Makefile + libuio.dox + libuio-uninstalled.pc +- libuio.pc +- po/Makefile.in]) ++ libuio.pc]) +-- +2.5.5 + diff --git a/package/libuio/0002-fix-build-with-musl.patch b/package/libuio/0002-fix-build-with-musl.patch new file mode 100644 index 0000000000..6e5b168c14 --- /dev/null +++ b/package/libuio/0002-fix-build-with-musl.patch @@ -0,0 +1,57 @@ +From c378ee112857128002754c616acb6841ee32aaf6 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 2 Jul 2016 10:52:28 +0200 +Subject: [PATCH] fix build with musl + +limits.h header is missing in attr.c, base.c and helper.c to provide +PATH_MAX. + +Fixes: +http://autobuild.buildroot.net/results/702/7023104e6018ea46c54073ddbe5119d0f66ae5a3 + +Signed-off-by: Romain Naour +--- + attr.c | 1 + + base.c | 1 + + helper.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/attr.c b/attr.c +index 4245140..7512f4e 100644 +--- a/attr.c ++++ b/attr.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/base.c b/base.c +index 14ebcee..4ce7301 100644 +--- a/base.c ++++ b/base.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/helper.c b/helper.c +index 170f084..1fb0b4c 100644 +--- a/helper.c ++++ b/helper.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include +-- +2.5.5 + diff --git a/package/libuio/Config.in b/package/libuio/Config.in new file mode 100644 index 0000000000..a96df54b12 --- /dev/null +++ b/package/libuio/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LIBUIO + bool "libuio" + select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE + help + libuio is a light-weight C programming library to handle UIO + (Userspace I/O) device discovery and binding task. + + http://github.com/Linutronix/libuio diff --git a/package/libuio/libuio.hash b/package/libuio/libuio.hash new file mode 100644 index 0000000000..6afe7dea8b --- /dev/null +++ b/package/libuio/libuio.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 57f9617f75d20f7912b270568cffdf098fe9d0c1ca690c002e949be8424aa4e6 libuio-940861de278cb794bf9d775b76a4d1d4f9108607.tar.gz diff --git a/package/libuio/libuio.mk b/package/libuio/libuio.mk new file mode 100644 index 0000000000..6d07f1fa86 --- /dev/null +++ b/package/libuio/libuio.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# libuio +# +################################################################################ + +# v0.2.7 +LIBUIO_VERSION = 940861de278cb794bf9d775b76a4d1d4f9108607 +LIBUIO_SITE = $(call github,Linutronix,libuio,$(LIBUIO_VERSION)) +LIBUIO_LICENSE = LGPLv2.1 (library), GPLv2 (programs) +LIBUIO_LICENSE_FILES = COPYING +LIBUIO_CONF_OPTS = --with-glib=no --without-werror +LIBUIO_INSTALL_STAGING = YES + +# Fetched from github, no pre-generated configure script provided +LIBUIO_GETTEXTIZE = YES +LIBUIO_AUTORECONF = YES + +# Avoid build issue when makeinfo is missing +LIBUIO_CONF_ENV += MAKEINFO=true + +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) +LIBUIO_DEPENDENCIES += argp-standalone +LIBUIO_LIBS += -largp +endif + +# libuio pulls in libintl if needed, so ensure we also +# link against it, otherwise static linking fails +ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) +LIBUIO_DEPENDENCIES += gettext +LIBUIO_LIBS += -lintl +endif + +LIBUIO_CONF_ENV += LIBS="$(LIBUIO_LIBS)" + +$(eval $(autotools-package)) diff --git a/package/libump/Config.in b/package/libump/Config.in index 10232b3f93..696ccf3b11 100644 --- a/package/libump/Config.in +++ b/package/libump/Config.in @@ -8,6 +8,6 @@ config BR2_PACKAGE_LIBUMP http://github.com/linux-sunxi/libump -comment "libump needs a (e)glibc toolchain" +comment "libump needs a glibc toolchain" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libump/libump.hash b/package/libump/libump.hash new file mode 100644 index 0000000000..5d2ad2eb3e --- /dev/null +++ b/package/libump/libump.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 745bbb3e6a6b2b1d8caec75d2f2e884691ceefa5c2be0480baed31dba66cf450 libump-ec0680628744f30b8fac35e41a7bd8e23e59c39f.tar.gz diff --git a/package/libunistring/libunistring.hash b/package/libunistring/libunistring.hash index ba4b642dcb..15e35cb81c 100644 --- a/package/libunistring/libunistring.hash +++ b/package/libunistring/libunistring.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 2df42eae46743e3f91201bf5c100041540a7704e8b9abfd57c972b2d544de41b libunistring-0.9.6.tar.xz +sha256 2e3764512aaf2ce598af5a38818c0ea23dedf1ff5460070d1b6cee5c3336e797 libunistring-0.9.7.tar.xz diff --git a/package/libunistring/libunistring.mk b/package/libunistring/libunistring.mk index bb1641e04f..ce58b471f6 100644 --- a/package/libunistring/libunistring.mk +++ b/package/libunistring/libunistring.mk @@ -4,11 +4,11 @@ # ################################################################################ -LIBUNISTRING_VERSION = 0.9.6 +LIBUNISTRING_VERSION = 0.9.7 LIBUNISTRING_SITE = $(BR2_GNU_MIRROR)/libunistring LIBUNISTRING_SOURCE = libunistring-$(LIBUNISTRING_VERSION).tar.xz LIBUNISTRING_INSTALL_STAGING = YES -LIBUNISTRING_LICENSE = LGPLv3+ +LIBUNISTRING_LICENSE = LGPLv3+ or GPLv2 LIBUNISTRING_LICENSE_FILES = COPYING.LIB ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) diff --git a/package/libunwind/Config.in b/package/libunwind/Config.in index 593172fc23..5527a2bc21 100644 --- a/package/libunwind/Config.in +++ b/package/libunwind/Config.in @@ -10,13 +10,16 @@ config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS bool default y if BR2_TOOLCHAIN_USES_GLIBC && \ - (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + (((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM) || \ + BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_i386 || BR2_x86_64) default y if BR2_TOOLCHAIN_USES_UCLIBC && \ - (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + (((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM) || \ + BR2_i386 || BR2_mips || BR2_mipsel || \ BR2_mips64 || BR2_mips64el || BR2_x86_64) default y if BR2_TOOLCHAIN_USES_MUSL && \ - (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64) + (((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM) || \ + BR2_i386 || BR2_x86_64) config BR2_PACKAGE_LIBUNWIND bool "libunwind" diff --git a/package/libupnp/libupnp.hash b/package/libupnp/libupnp.hash index 59f7d7b5fe..df39f327b6 100644 --- a/package/libupnp/libupnp.hash +++ b/package/libupnp/libupnp.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 b3142b39601243b50532eec90f4a27dba85eb86f58d4b849ac94edeb29d9b22a libupnp-1.6.19.tar.bz2 +sha256 af3f3c0846a1d75baeadae4aa5a2bda427567e2a1fb4559bf73ccff0a4f9a39b libupnp-1.6.21.tar.bz2 diff --git a/package/libupnp/libupnp.mk b/package/libupnp/libupnp.mk index 48233b61db..8236cee1fe 100644 --- a/package/libupnp/libupnp.mk +++ b/package/libupnp/libupnp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUPNP_VERSION = 1.6.19 +LIBUPNP_VERSION = 1.6.21 LIBUPNP_SOURCE = libupnp-$(LIBUPNP_VERSION).tar.bz2 LIBUPNP_SITE = http://downloads.sourceforge.net/project/pupnp/pupnp/libUPnP%20$(LIBUPNP_VERSION) LIBUPNP_CONF_ENV = ac_cv_lib_compat_ftime=no diff --git a/package/libupnpp/libupnpp.hash b/package/libupnpp/libupnpp.hash index 685ccf4b86..dde4c4f67c 100644 --- a/package/libupnpp/libupnpp.hash +++ b/package/libupnpp/libupnpp.hash @@ -1,2 +1,2 @@ -# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/libupnpp-0.14.1.tar.gz.sha256 -sha256 ffb33379f3734419de683b0adca5228e802c64d3960681c15f3a8de7d7e315d1 libupnpp-0.14.1.tar.gz +# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/libupnpp-0.15.1.tar.gz.sha256 +sha256 c558e6285d61485e656bc973511396665b68b1d5cfa34db5fa4e64e0f2026c3a libupnpp-0.15.1.tar.gz diff --git a/package/libupnpp/libupnpp.mk b/package/libupnpp/libupnpp.mk index 1525f8169b..0cb3eae2ca 100644 --- a/package/libupnpp/libupnpp.mk +++ b/package/libupnpp/libupnpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUPNPP_VERSION = 0.14.1 +LIBUPNPP_VERSION = 0.15.1 LIBUPNPP_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads LIBUPNPP_LICENSE = GPLv2+ LIBUPNPP_LICENSE_FILES = COPYING diff --git a/package/liburcu/0002-support-aarch64.patch b/package/liburcu/0002-support-aarch64.patch deleted file mode 100644 index 6830e25ebe..0000000000 --- a/package/liburcu/0002-support-aarch64.patch +++ /dev/null @@ -1,21 +0,0 @@ -libucru: recognize aarch64 - -Make the same as "arm" internally. - -Upstream-Status: Pending - -Signed-off-by: joe.slater@windriver.com -[moved to buildroot from openembedded-core] -Signed-off-by: Ben Shelton - - ---- a/configure.ac -+++ b/configure.ac -@@ -77,6 +77,7 @@ AS_CASE([$host_cpu], - [alpha*], [ARCHTYPE="alpha"], - [ia64], [ARCHTYPE="gcc"], - [arm*], [ARCHTYPE="arm"], -+ [aarch64], [ARCHTYPE="arm"], - [mips*], [ARCHTYPE="mips"], - [tile*], [ARCHTYPE="gcc"], - [ARCHTYPE="unknown"] diff --git a/package/liburcu/Config.in b/package/liburcu/Config.in index 49510da495..b5b6326878 100644 --- a/package/liburcu/Config.in +++ b/package/liburcu/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS bool depends on BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_powerpc || BR2_x86_64 + depends on BR2_USE_MMU # fork() in test default y config BR2_PACKAGE_LIBURCU diff --git a/package/liburcu/liburcu.hash b/package/liburcu/liburcu.hash index 64ba90195a..5866d805ca 100644 --- a/package/liburcu/liburcu.hash +++ b/package/liburcu/liburcu.hash @@ -1,4 +1,4 @@ -# http://www.lttng.org/files/urcu/userspace-rcu-0.8.7.tar.bz2.sha1 -sha1 5306999b8a3296f3dea91246d92e0a993d732898 userspace-rcu-0.8.7.tar.bz2 +# http://www.lttng.org/files/urcu/userspace-rcu-0.9.2.tar.bz2.sha1 +sha1 61d1d0d1b955c7a67a7253317647304d04b400a0 userspace-rcu-0.9.2.tar.bz2 # Locally generated -sha256 b523f22c4726ca6bb77a77d258e76d8c33c89724433bd65313024b98e55c4295 userspace-rcu-0.8.7.tar.bz2 +sha256 8f7fa313b1e0a3f742cea24ce63a39c0efe63e615a769e2961e55bd2663ecaa3 userspace-rcu-0.9.2.tar.bz2 diff --git a/package/liburcu/liburcu.mk b/package/liburcu/liburcu.mk index c886a1cf0e..33a301df17 100644 --- a/package/liburcu/liburcu.mk +++ b/package/liburcu/liburcu.mk @@ -4,13 +4,12 @@ # ################################################################################ -LIBURCU_VERSION = 0.8.7 +LIBURCU_VERSION = 0.9.2 LIBURCU_SITE = http://lttng.org/files/urcu LIBURCU_SOURCE = userspace-rcu-$(LIBURCU_VERSION).tar.bz2 LIBURCU_LICENSE = LGPLv2.1+ for the library; MIT-like license for few source files listed in LICENSE; GPLv2+ for test; GPLv3 for few *.m4 files LIBURCU_LICENSE_FILES = lgpl-2.1.txt lgpl-relicensing.txt gpl-2.0.txt LICENSE -LIBURCU_AUTORECONF = YES LIBURCU_INSTALL_STAGING = YES $(eval $(autotools-package)) diff --git a/package/libusb-compat/libusb-compat.mk b/package/libusb-compat/libusb-compat.mk index a98eb0924f..26107be861 100644 --- a/package/libusb-compat/libusb-compat.mk +++ b/package/libusb-compat/libusb-compat.mk @@ -9,6 +9,7 @@ LIBUSB_COMPAT_VERSION = $(LIBUSB_COMPAT_VERSION_MAJOR).5 LIBUSB_COMPAT_SOURCE = libusb-compat-$(LIBUSB_COMPAT_VERSION).tar.bz2 LIBUSB_COMPAT_SITE = http://downloads.sourceforge.net/project/libusb/libusb-compat-$(LIBUSB_COMPAT_VERSION_MAJOR)/libusb-compat-$(LIBUSB_COMPAT_VERSION) LIBUSB_COMPAT_DEPENDENCIES = host-pkgconf libusb +HOST_LIBUSB_COMPAT_DEPENDENCIES = host-pkgconf host-libusb LIBUSB_COMPAT_INSTALL_STAGING = YES LIBUSB_COMPAT_CONFIG_SCRIPTS = libusb-config LIBUSB_COMPAT_LICENSE = LGPLv2.1+ diff --git a/package/libusb/0001-parallel-make.patch b/package/libusb/0001-parallel-make.patch new file mode 100644 index 0000000000..a326e99516 --- /dev/null +++ b/package/libusb/0001-parallel-make.patch @@ -0,0 +1,162 @@ +Fix parallel build + +This patch is a partial backport of +https://github.com/libusb/libusb/commit/3dc781ce3ecd0315cfc0b4fdcef9e062990f289b + +Signed-off-by: Jeroen Roovers + +--- a/configure.ac ++++ b/configure.ac +@@ -36,6 +36,7 @@ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RU + + AC_PREREQ([2.50]) + AC_PROG_CC ++AC_PROG_CXX + LT_INIT + LT_LANG([Windows Resource]) + AC_C_INLINE +@@ -91,7 +92,6 @@ case $host in + ;; + *-haiku*) + AC_MSG_RESULT([Haiku]) +- AC_CONFIG_SUBDIRS([libusb/os/haiku]) + backend="haiku" + threads="posix" + ;; +@@ -193,6 +193,7 @@ AM_CONDITIONAL(OS_HAIKU, test "x$backend + AM_CONDITIONAL(THREADS_POSIX, test "x$threads" = xposix) + AM_CONDITIONAL(CREATE_IMPORT_LIB, test "x$create_import_lib" = "xyes") + AM_CONDITIONAL(USE_UDEV, test "x$enable_udev" = xyes) ++AM_CONDITIONAL(USE_USBDK, test "x$enable_usbdk" = xyes) + if test "$threads" = posix; then + AC_DEFINE(THREADS_POSIX, 1, [Use POSIX Threads]) + fi +--- a/libusb/Makefile.am ++++ b/libusb/Makefile.am +@@ -4,58 +4,66 @@ AUTOMAKE_OPTIONS = subdir-objects + + lib_LTLIBRARIES = libusb-1.0.la + +-POSIX_POLL_SRC = os/poll_posix.c +-LINUX_USBFS_SRC = os/linux_usbfs.c +-DARWIN_USB_SRC = os/darwin_usb.c ++POSIX_POLL_SRC = os/poll_posix.h os/poll_posix.c ++POSIX_THREADS_SRC = os/threads_posix.h os/threads_posix.c ++WINDOWS_POLL_SRC = os/poll_windows.h os/poll_windows.c ++WINDOWS_THREADS_SRC = os/threads_windows.h os/threads_windows.c ++LINUX_USBFS_SRC = os/linux_usbfs.h os/linux_usbfs.c ++DARWIN_USB_SRC = os/darwin_usb.h os/darwin_usb.c + OPENBSD_USB_SRC = os/openbsd_usb.c + NETBSD_USB_SRC = os/netbsd_usb.c +-WINDOWS_USB_SRC = os/poll_windows.c os/windows_usb.c libusb-1.0.rc libusb-1.0.def +-WINCE_USB_SRC = os/wince_usb.c os/wince_usb.h +- +-DIST_SUBDIRS = +- +-EXTRA_DIST = $(LINUX_USBFS_SRC) $(DARWIN_USB_SRC) $(OPENBSD_USB_SRC) \ +- $(NETBSD_USB_SRC) $(WINDOWS_USB_SRC) $(WINCE_USB_SRC) \ +- $(POSIX_POLL_SRC) \ +- os/threads_posix.c os/threads_windows.c \ ++WINDOWS_COMMON_SRC = os/windows_nt_common.h os/windows_nt_common.c \ ++ os/windows_common.h libusb-1.0.rc libusb-1.0.def ++WINDOWS_USB_SRC = os/windows_winusb.h os/windows_winusb.c ++WINDOWS_USBDK_SRC = os/windows_usbdk.h os/windows_usbdk.c ++WINCE_USB_SRC = os/wince_usb.h os/wince_usb.c ++HAIKU_USB_SRC = os/haiku_usb.h os/haiku_usb_backend.cpp \ ++ os/haiku_usb_raw.h os/haiku_usb_raw.cpp os/haiku_pollfs.cpp ++ ++EXTRA_DIST = $(POSIX_POLL_SRC) $(POSIX_THREADS_SRC) \ ++ $(WINDOWS_POLL_SRC) $(WINDOWS_THREADS_SRC) \ ++ $(LINUX_USBFS_SRC) $(DARWIN_USB_SRC) \ ++ $(OPENBSD_USB_SRC) $(NETBSD_USB_SRC) \ ++ $(WINDOWS_COMMON_SRC) $(WINDOWS_USB_SRC) $(WINDOWS_USBDK_SRC) \ ++ $(WINCE_USB_SRC) $(HAIKU_USB_SRC) \ + os/linux_udev.c os/linux_netlink.c + +-dist-hook: +- cp -r os/haiku $(distdir)/os/haiku +- rm -rf $(distdir)/os/haiku/autom4te.cache +- + if OS_LINUX + + if USE_UDEV +-OS_SRC = $(LINUX_USBFS_SRC) $(POSIX_POLL_SRC) \ +- os/linux_udev.c ++OS_SRC = $(LINUX_USBFS_SRC) os/linux_udev.c + else +-OS_SRC = $(LINUX_USBFS_SRC) $(POSIX_POLL_SRC) \ +- os/linux_netlink.c ++OS_SRC = $(LINUX_USBFS_SRC) os/linux_netlink.c + endif + + endif + + if OS_DARWIN +-OS_SRC = $(DARWIN_USB_SRC) $(POSIX_POLL_SRC) ++OS_SRC = $(DARWIN_USB_SRC) + AM_CFLAGS_EXT = -no-cpp-precomp + endif + + if OS_OPENBSD +-OS_SRC = $(OPENBSD_USB_SRC) $(POSIX_POLL_SRC) ++OS_SRC = $(OPENBSD_USB_SRC) + endif + + if OS_NETBSD +-OS_SRC = $(NETBSD_USB_SRC) $(POSIX_POLL_SRC) ++OS_SRC = $(NETBSD_USB_SRC) + endif + + if OS_HAIKU +-OS_SRC = $(POSIX_POLL_SRC) +-SUBDIRS = os/haiku ++noinst_LTLIBRARIES = libusb_haiku.la ++libusb_haiku_la_SOURCES = $(HAIKU_USB_SRC) ++libusb_1_0_la_LIBADD = libusb_haiku.la + endif + + if OS_WINDOWS +-OS_SRC = $(WINDOWS_USB_SRC) ++ ++if USE_USBDK ++OS_SRC = $(WINDOWS_USBDK_SRC) $(WINDOWS_COMMON_SRC) ++else ++OS_SRC = $(WINDOWS_USB_SRC) $(WINDOWS_COMMON_SRC) ++endif + + .rc.lo: + $(AM_V_GEN)$(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --tag=RC --mode=compile $(RC) $(RCFLAGS) -i $< -o $@ +@@ -69,22 +77,23 @@ if CREATE_IMPORT_LIB + $(AM_V_GEN)$(DLLTOOL) $(DLLTOOLFLAGS) --kill-at --input-def $(srcdir)/libusb-1.0.def --dllname $@ --output-lib .libs/$@.a + endif + ++if OS_WINDOWS ++POLL_SRC = $(WINDOWS_POLL_SRC) ++else ++POLL_SRC = $(POSIX_POLL_SRC) ++endif ++ + if THREADS_POSIX +-THREADS_SRC = os/threads_posix.h os/threads_posix.c ++THREADS_SRC = $(POSIX_THREADS_SRC) + else +-THREADS_SRC = os/threads_windows.h os/threads_windows.c ++THREADS_SRC = $(WINDOWS_THREADS_SRC) + endif + + libusb_1_0_la_CFLAGS = $(AM_CFLAGS) + libusb_1_0_la_LDFLAGS = $(LTLDFLAGS) +-libusb_1_0_la_SOURCES = libusbi.h core.c descriptor.c io.c strerror.c sync.c \ +- os/linux_usbfs.h os/darwin_usb.h os/windows_usb.h os/windows_common.h \ +- hotplug.h hotplug.c $(THREADS_SRC) $(OS_SRC) \ +- os/poll_posix.h os/poll_windows.h +- +-if OS_HAIKU +-libusb_1_0_la_LIBADD = os/haiku/libhaikuusb.la +-endif ++libusb_1_0_la_SOURCES = libusbi.h libusb.h version.h version_nano.h \ ++ core.c descriptor.c hotplug.h hotplug.c io.c strerror.c sync.c \ ++ $(POLL_SRC) $(THREADS_SRC) $(OS_SRC) + + hdrdir = $(includedir)/libusb-1.0 + hdr_HEADERS = libusb.h diff --git a/package/libusb/libusb.hash b/package/libusb/libusb.hash index 175273818e..c809896f7a 100644 --- a/package/libusb/libusb.hash +++ b/package/libusb/libusb.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 6c502c816002f90d4f76050a6429c3a7e0d84204222cbff2dce95dd773ba6840 libusb-1.0.19.tar.bz2 +sha256 cb057190ba0a961768224e4dc6883104c6f945b2bf2ef90d7da39e7c1834f7ff libusb-1.0.20.tar.bz2 diff --git a/package/libusb/libusb.mk b/package/libusb/libusb.mk index d24a6343eb..4d05feb801 100644 --- a/package/libusb/libusb.mk +++ b/package/libusb/libusb.mk @@ -5,13 +5,15 @@ ################################################################################ LIBUSB_VERSION_MAJOR = 1.0 -LIBUSB_VERSION = $(LIBUSB_VERSION_MAJOR).19 +LIBUSB_VERSION = $(LIBUSB_VERSION_MAJOR).20 LIBUSB_SOURCE = libusb-$(LIBUSB_VERSION).tar.bz2 -LIBUSB_SITE = http://downloads.sourceforge.net/project/libusb/libusb-$(LIBUSB_VERSION_MAJOR)/libusb-$(LIBUSB_VERSION) +LIBUSB_SITE = https://github.com/libusb/libusb/releases/download/v$(LIBUSB_VERSION) LIBUSB_LICENSE = LGPLv2.1+ LIBUSB_LICENSE_FILES = COPYING LIBUSB_DEPENDENCIES = host-pkgconf LIBUSB_INSTALL_STAGING = YES +# 0001-parallel-make.patch +LIBUSB_AUTORECONF = YES # Avoid the discovery of udev for the host variant HOST_LIBUSB_CONF_OPTS = --disable-udev diff --git a/package/libuv/Config.in b/package/libuv/Config.in index 26cb97eecf..93fbd56557 100644 --- a/package/libuv/Config.in +++ b/package/libuv/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LIBUV bool "libuv" - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # pthread_barrier_* depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS help @@ -9,6 +9,6 @@ config BR2_PACKAGE_LIBUV https://github.com/libuv/libuv -comment "libuv needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "libuv needs a toolchain w/ NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU diff --git a/package/libuv/libuv.hash b/package/libuv/libuv.hash index 9758d76a81..9ad1c8a771 100644 --- a/package/libuv/libuv.hash +++ b/package/libuv/libuv.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 f8b8272a0d80138b709d38fad2baf771899eed61e7f9578d17898b07a1a2a5eb libuv-v1.9.0.tar.gz +sha256 6ec7eec6ecc24b1a8ffedebedb2fe9313fffb5410de89aaf784dd01080411c7a libuv-v1.11.0.tar.gz diff --git a/package/libuv/libuv.mk b/package/libuv/libuv.mk index 45b301f68a..6f6a1cc9fa 100644 --- a/package/libuv/libuv.mk +++ b/package/libuv/libuv.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUV_VERSION = v1.9.0 +LIBUV_VERSION = v1.11.0 LIBUV_SITE = $(call github,libuv,libuv,$(LIBUV_VERSION)) LIBUV_DEPENDENCIES = host-pkgconf LIBUV_INSTALL_STAGING = YES diff --git a/package/libv4l/libv4l.hash b/package/libv4l/libv4l.hash index d58296f90c..c02fa0aedc 100644 --- a/package/libv4l/libv4l.hash +++ b/package/libv4l/libv4l.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 78ead27ee58a701d7c6342303cf4520bdd4a2b88a7813bc99a0b389307e4336b v4l-utils-1.10.0.tar.bz2 +sha256 ac9f8c88bfffa3a7e85c0edd04f7d3d54e6a30c214e79f2c6ecc6fbf57cb229d v4l-utils-1.12.2.tar.bz2 diff --git a/package/libv4l/libv4l.mk b/package/libv4l/libv4l.mk index bdd28bf8dc..4fec14f384 100644 --- a/package/libv4l/libv4l.mk +++ b/package/libv4l/libv4l.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBV4L_VERSION = 1.10.0 +LIBV4L_VERSION = 1.12.2 LIBV4L_SOURCE = v4l-utils-$(LIBV4L_VERSION).tar.bz2 LIBV4L_SITE = http://linuxtv.org/downloads/v4l-utils LIBV4L_INSTALL_STAGING = YES @@ -18,6 +18,10 @@ LIBV4L_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' LIBV4L_LICENSE = GPLv2+ (utilities), LGPLv2.1+ (libraries) LIBV4L_LICENSE_FILES = COPYING COPYING.libv4l lib/libv4l1/libv4l1-kernelcode-license.txt +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +LIBV4L_DEPENDENCIES += alsa-lib +endif + ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) LIBV4L_DEPENDENCIES += argp-standalone LIBV4L_LIBS += -largp @@ -32,6 +36,10 @@ else LIBV4L_CONF_OPTS += --without-jpeg endif +ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) +LIBV4L_DEPENDENCIES += libgl +endif + ifeq ($(BR2_PACKAGE_HAS_UDEV),y) LIBV4L_CONF_OPTS += --with-libudev LIBV4L_DEPENDENCIES += udev @@ -39,6 +47,10 @@ else LIBV4L_CONF_OPTS += --without-libudev endif +ifeq ($(BR2_PACKAGE_LIBGLU),y) +LIBV4L_DEPENDENCIES += libglu +endif + ifeq ($(BR2_PACKAGE_LIBV4L_UTILS),y) LIBV4L_CONF_OPTS += --enable-v4l-utils # clock_gettime is used, which is provided by librt for glibc < 2.17 @@ -54,7 +66,11 @@ LIBV4L_CONF_ENV += \ ac_cv_prog_MOC=$(HOST_DIR)/usr/bin/moc \ ac_cv_prog_RCC=$(HOST_DIR)/usr/bin/rcc \ ac_cv_prog_UIC=$(HOST_DIR)/usr/bin/uic -else ifeq ($(BR2_PACKAGE_QT_GUI_MODULE),y) +# qt5 needs c++11 (since qt-5.7) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +LIBV4L_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" +endif +else ifeq ($(BR2_PACKAGE_QT_OPENGL_GL_DESKTOP),y) LIBV4L_CONF_OPTS += --enable-qv4l2 LIBV4L_DEPENDENCIES += qt else diff --git a/package/libva-intel-driver/libva-intel-driver.hash b/package/libva-intel-driver/libva-intel-driver.hash index 9d77aeddce..10664d051b 100644 --- a/package/libva-intel-driver/libva-intel-driver.hash +++ b/package/libva-intel-driver/libva-intel-driver.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/libva/2016-March/003886.html -sha1 6766ff2e8134e09e9204ec9ccd3b8d550890d5d2 libva-intel-driver-1.7.0.tar.bz2 +# From https://lists.freedesktop.org/archives/libva/2016-November/004731.html +sha1 5100f187afc4e39fce5664b96fe11a38faa9afaa libva-intel-driver-1.7.3.tar.bz2 diff --git a/package/libva-intel-driver/libva-intel-driver.mk b/package/libva-intel-driver/libva-intel-driver.mk index e930adefd8..86f6eaa60e 100644 --- a/package/libva-intel-driver/libva-intel-driver.mk +++ b/package/libva-intel-driver/libva-intel-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVA_INTEL_DRIVER_VERSION = 1.7.0 +LIBVA_INTEL_DRIVER_VERSION = 1.7.3 LIBVA_INTEL_DRIVER_SOURCE = libva-intel-driver-$(LIBVA_INTEL_DRIVER_VERSION).tar.bz2 LIBVA_INTEL_DRIVER_SITE = http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver LIBVA_INTEL_DRIVER_LICENSE = MIT diff --git a/package/libva/libva.hash b/package/libva/libva.hash index 02113651ba..e63f4dbd83 100644 --- a/package/libva/libva.hash +++ b/package/libva/libva.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/libva/2016-March/003885.html -sha1 e1e440da60b11986afb54fc130c7707f11827298 libva-1.7.0.tar.bz2 +# From https://lists.freedesktop.org/archives/libva/2016-November/004730.html +sha1 18e46f3d5a0e971eb0ec9fe14bc021e69eb13fb8 libva-1.7.3.tar.bz2 diff --git a/package/libva/libva.mk b/package/libva/libva.mk index e11bed3c96..cf42b70e84 100644 --- a/package/libva/libva.mk +++ b/package/libva/libva.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVA_VERSION = 1.7.0 +LIBVA_VERSION = 1.7.3 LIBVA_SOURCE = libva-$(LIBVA_VERSION).tar.bz2 LIBVA_SITE = http://www.freedesktop.org/software/vaapi/releases/libva LIBVA_LICENSE = MIT diff --git a/package/libvdpau/0001-missing-configh-include.patch b/package/libvdpau/0001-missing-configh-include.patch new file mode 100755 index 0000000000..f96c6fa7bc --- /dev/null +++ b/package/libvdpau/0001-missing-configh-include.patch @@ -0,0 +1,29 @@ +From: Rico Tzschichholz +Date: Tue, 1 Sep 2015 10:45:11 +0200 +Subject: mesa_dri2: Add missing include of config.h to define _GNU_SOURCE + +Fix build with -Wimplicit-function-declaration while secure_getenv() is +guarded by __USE_GNU. + +Reviewed-by: Aaron Plattner +Tested-by: Stefan Dirsch +(cherry picked from commit 1cda354bdfd0c9ca107293b84b52f4464fdbedcc) +Signed-off-by: Damien Lanson +--- + src/mesa_dri2.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/mesa_dri2.c b/src/mesa_dri2.c +index 51e8794..420ccee 100644 +--- a/src/mesa_dri2.c ++++ b/src/mesa_dri2.c +@@ -33,6 +33,9 @@ + * and José Hiram Soltren (jsoltren@nvidia.com) + */ + ++#ifdef HAVE_CONFIG_H ++#include "config.h" ++#endif + + #define NEED_REPLIES + #include diff --git a/package/libvdpau/0002-link-with-libx11.patch b/package/libvdpau/0002-link-with-libx11.patch new file mode 100755 index 0000000000..cfb39731c7 --- /dev/null +++ b/package/libvdpau/0002-link-with-libx11.patch @@ -0,0 +1,33 @@ +Subject: Link libvdpao with libX11 since it uses symbols from it +Author: Russ Allbery +Forwarded: no + +libvdpau uses the symbols: + + _XEatData + _XReply + _XFlush + _XReadPad + XFree + +which are provided by libX11, but wasn't linking with it directly, resulting +in warnings during the package build (and possibly errors later with better +linkers). + +[Patch taken from +https://anonscm.debian.org/cgit/pkg-nvidia/libvdpau.git/tree/debian/patches/link-with-libx11.patch.] + +Signed-off-by: Damien Lanson + +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -22,7 +22,8 @@ endif + libvdpau_la_LIBADD = \ + $(DLOPEN_LIBS) \ + $(PTHREAD_LIBS) \ +- $(XEXT_LIBS) ++ $(XEXT_LIBS) \ ++ $(X11_LIBS) + + libvdpau_la_LDFLAGS = -version-info 1:0:0 -no-undefined + diff --git a/package/libvdpau/0003-vdpau-module-searchpath.patch b/package/libvdpau/0003-vdpau-module-searchpath.patch new file mode 100755 index 0000000000..bd835153d0 --- /dev/null +++ b/package/libvdpau/0003-vdpau-module-searchpath.patch @@ -0,0 +1,48 @@ +From: Andreas Beckmann +Subject: search the vdpau module in multiple directories + start searching the vdpau module in ${ORIGIN}/vdpau, then the MODULEDIR and + finally fall back to /usr/lib/vdpau + +[Patch taken from +https://anonscm.debian.org/cgit/pkg-nvidia/libvdpau.git/tree/debian/patches/vdpau-module-searchpath.patch.] + +Signed-off-by: Damien Lanson + +--- a/src/vdpau_wrapper.c ++++ b/src/vdpau_wrapper.c +@@ -103,6 +103,13 @@ static char * _vdp_get_driver_name_from_ + return driver_name; + } + ++static char const * _vdpau_module_search_paths[] = { ++ "${ORIGIN}/vdpau", ++ VDPAU_MODULEDIR, ++ "/usr/lib/vdpau", ++ NULL ++}; ++ + static VdpStatus _vdp_open_driver( + Display * display, + int screen) +@@ -117,6 +127,7 @@ static VdpStatus _vdp_open_driver( + char vdpau_driver_lib[PATH_MAX]; + char const * vdpau_trace; + char const * func_name; ++ char const ** module_path; + + vdpau_driver = secure_getenv("VDPAU_DRIVER"); + if (vdpau_driver) { +@@ -138,9 +146,11 @@ static VdpStatus _vdp_open_driver( + + /* Fallback to VDPAU_MODULEDIR when VDPAU_DRIVER_PATH is not set, + * or if we fail to create the driver path/dlopen the library. */ +- if (!_vdp_driver_dll) { ++ for (module_path = _vdpau_module_search_paths; ++ !_vdp_driver_dll && *module_path; ++ ++module_path) { + if (snprintf(vdpau_driver_lib, sizeof(vdpau_driver_lib), +- DRIVER_LIB_FORMAT, VDPAU_MODULEDIR, vdpau_driver) >= ++ DRIVER_LIB_FORMAT, *module_path, vdpau_driver) >= + sizeof(vdpau_driver_lib)) { + fprintf(stderr, "Failed to construct driver path: path too long\n"); + } diff --git a/package/libvdpau/Config.in b/package/libvdpau/Config.in new file mode 100755 index 0000000000..b5430abb5a --- /dev/null +++ b/package/libvdpau/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_LIBVDPAU + bool "libvdpau" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + help + VDPAU is the Video Decode and Presentation API for UNIX. + It provides an interface to video decode acceleration and + presentation hardware present in modern GPUs. + + http://freedesktop.org/wiki/Software/VDPAU + +comment "libvdpau needs a toolchain w/ threads, C++" + depends on BR2_PACKAGE_XORG7 + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/libvdpau/libvdpau.hash b/package/libvdpau/libvdpau.hash new file mode 100755 index 0000000000..55dc6a7e84 --- /dev/null +++ b/package/libvdpau/libvdpau.hash @@ -0,0 +1,4 @@ +# From https://lists.freedesktop.org/archives/xorg-announce/2015-August/002630.html +md5 2fa0b05a4f4d06791eec83bc9c854d14 libvdpau-1.1.1.tar.bz2 +sha1 86516e2a962fd34f65d49115d6ddf15fd912f579 libvdpau-1.1.1.tar.bz2 +sha256 857a01932609225b9a3a5bf222b85e39b55c08787d0ad427dbd9ec033d58d736 libvdpau-1.1.1.tar.bz2 diff --git a/package/libvdpau/libvdpau.mk b/package/libvdpau/libvdpau.mk new file mode 100755 index 0000000000..f29da1e406 --- /dev/null +++ b/package/libvdpau/libvdpau.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# libvdpau +# +################################################################################ + +LIBVDPAU_VERSION = 1.1.1 +LIBVDPAU_SOURCE = libvdpau-$(LIBVDPAU_VERSION).tar.bz2 +LIBVDPAU_SITE = http://people.freedesktop.org/~aplattner/vdpau +LIBVDPAU_LICENSE = MIT +LIBVDPAU_LICENSE_FILES = COPYING +LIBVDPAU_INSTALL_STAGING = YES + +# autoreconf for patch 0002-link-with-libx11.patch +LIBVDPAU_AUTORECONF = YES + +LIBVDPAU_DEPENDENCIES = host-pkgconf xlib_libX11 xlib_libXext + +LIBVDPAU_CONF_OPTS = --with-module-dir=/usr/lib/vdpau + +ifeq ($(BR2_PACKAGE_XPROTO_DRI2PROTO),y) +LIBVDPAU_DEPENDENCIES += xproto_dri2proto +LIBVDPAU_CONF_OPTS += --enable-dri2 +else +LIBVDPAU_CONF_OPTS += --disable-dri2 +endif + +$(eval $(autotools-package)) diff --git a/package/libvncserver/libvncserver.hash b/package/libvncserver/libvncserver.hash index 23d5fb080b..8d994e4b6a 100644 --- a/package/libvncserver/libvncserver.hash +++ b/package/libvncserver/libvncserver.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 ed10819a5bfbf269969f97f075939cc38273cc1b6d28bccfb0999fba489411f7 LibVNCServer-0.9.10.tar.gz +sha256 193d630372722a532136fd25c5326b2ca1a636cbb8bf9bb115ef869c804d2894 LibVNCServer-0.9.11.tar.gz diff --git a/package/libvncserver/libvncserver.mk b/package/libvncserver/libvncserver.mk index 92cb1e1aa6..d3f0657a5d 100644 --- a/package/libvncserver/libvncserver.mk +++ b/package/libvncserver/libvncserver.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVNCSERVER_VERSION = 0.9.10 +LIBVNCSERVER_VERSION = 0.9.11 LIBVNCSERVER_SOURCE = LibVNCServer-$(LIBVNCSERVER_VERSION).tar.gz LIBVNCSERVER_SITE = https://github.com/LibVNC/libvncserver/archive LIBVNCSERVER_LICENSE = GPLv2+ diff --git a/package/libvpx/0001-vpx_mem-vpx_mem.h-Fix-compilation-with-uClibc.patch b/package/libvpx/0001-vpx_mem-vpx_mem.h-Fix-compilation-with-uClibc.patch new file mode 100644 index 0000000000..20f08c905a --- /dev/null +++ b/package/libvpx/0001-vpx_mem-vpx_mem.h-Fix-compilation-with-uClibc.patch @@ -0,0 +1,30 @@ +From 90845a3a263e0f37b9c756c0b01377b9d1a225c9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 31 Jul 2016 10:37:05 +0200 +Subject: [PATCH] vpx_mem/vpx_mem.h: do not include + +The header does not exist in most C libraries, and including +it causes build failures. + +Signed-off-by: Bernd Kuhls +--- + vpx_mem/vpx_mem.h | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/vpx_mem/vpx_mem.h b/vpx_mem/vpx_mem.h +index c14f288..82df745 100644 +--- a/vpx_mem/vpx_mem.h ++++ b/vpx_mem/vpx_mem.h +@@ -12,9 +12,6 @@ + #define VPX_MEM_VPX_MEM_H_ + + #include "vpx_config.h" +-#if defined(__uClinux__) +-# include +-#endif + + #include + #include +-- +2.8.1 + diff --git a/package/libvpx/Config.in b/package/libvpx/Config.in index 6b0400c0a2..67a4c578f4 100644 --- a/package/libvpx/Config.in +++ b/package/libvpx/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBVPX bool "libvpx" + depends on !BR2_bfin depends on BR2_TOOLCHAIN_HAS_THREADS help A high-quality, open video format that's freely available to @@ -8,4 +9,5 @@ config BR2_PACKAGE_LIBVPX http://webmproject.org comment "libvpx needs a toolchain w/ threads" + depends on !BR2_bfin depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libvpx/libvpx.hash b/package/libvpx/libvpx.hash index 44cd994e10..f0240d69ec 100644 --- a/package/libvpx/libvpx.hash +++ b/package/libvpx/libvpx.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 f582d9b2d60a592a4a3d8c32965ca2d2167e9ade38c6c30bac8801ff66a118e4 libvpx-1.4.0.tar.bz2 +sha256 d0afbb5eb1ecae68f8d578abace160a97e2e8a230e3028cf4db115d59a695aad libvpx-1.6.0.tar.bz2 diff --git a/package/libvpx/libvpx.mk b/package/libvpx/libvpx.mk index 066b037fb8..4ad5522498 100644 --- a/package/libvpx/libvpx.mk +++ b/package/libvpx/libvpx.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVPX_VERSION = 1.4.0 +LIBVPX_VERSION = 1.6.0 LIBVPX_SOURCE = libvpx-$(LIBVPX_VERSION).tar.bz2 LIBVPX_SITE = http://storage.googleapis.com/downloads.webmproject.org/releases/webm LIBVPX_LICENSE = BSD-3c diff --git a/package/libwebsock/libwebsock.hash b/package/libwebsock/libwebsock.hash new file mode 100644 index 0000000000..b94b738101 --- /dev/null +++ b/package/libwebsock/libwebsock.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 34cf8376446e2371c9af47394043a30dc16af7ed5437d56bc6135c5dfda9ed22 libwebsock-3c1615eeadb0b582b63851073bfe3e5132f31ebc.tar.gz diff --git a/package/libwebsockets/libwebsockets.hash b/package/libwebsockets/libwebsockets.hash index c931a0db71..cbd1101d75 100644 --- a/package/libwebsockets/libwebsockets.hash +++ b/package/libwebsockets/libwebsockets.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 e91f59fb6238462b4ffdfef2482239558b8a02198c9c6076eb3f86eb1c4e935d libwebsockets-v1.7.5.tar.gz +sha256 bcc96aaa609daae4d3f7ab1ee480126709ef4f6a8bf9c85de40aae48e38cce66 libwebsockets-v2.1.0.tar.gz diff --git a/package/libwebsockets/libwebsockets.mk b/package/libwebsockets/libwebsockets.mk index 5bb7ae44a2..bf46291ad4 100644 --- a/package/libwebsockets/libwebsockets.mk +++ b/package/libwebsockets/libwebsockets.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBWEBSOCKETS_VERSION = v1.7.5 +LIBWEBSOCKETS_VERSION = v2.1.0 LIBWEBSOCKETS_SITE = $(call github,warmcat,libwebsockets,$(LIBWEBSOCKETS_VERSION)) LIBWEBSOCKETS_LICENSE = LGPLv2.1 with exceptions LIBWEBSOCKETS_LICENSE_FILES = LICENSE diff --git a/package/libxkbcommon/libxkbcommon.hash b/package/libxkbcommon/libxkbcommon.hash index 693630a776..525f9ffd20 100644 --- a/package/libxkbcommon/libxkbcommon.hash +++ b/package/libxkbcommon/libxkbcommon.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2016-April/027962.html -sha256 5b0887b080b42169096a61106661f8d35bae783f8b6c58f97ebcd3af83ea8760 libxkbcommon-0.6.1.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2017-January/032725.html +sha256 ba59305d2e19e47c27ea065c2e0df96ebac6a3c6e97e28ae5620073b6084e68b libxkbcommon-0.7.1.tar.xz diff --git a/package/libxkbcommon/libxkbcommon.mk b/package/libxkbcommon/libxkbcommon.mk index 1f80348069..c39a7c0c55 100644 --- a/package/libxkbcommon/libxkbcommon.mk +++ b/package/libxkbcommon/libxkbcommon.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXKBCOMMON_VERSION = 0.6.1 +LIBXKBCOMMON_VERSION = 0.7.1 LIBXKBCOMMON_SITE = http://xkbcommon.org/download LIBXKBCOMMON_SOURCE = libxkbcommon-$(LIBXKBCOMMON_VERSION).tar.xz LIBXKBCOMMON_LICENSE = MIT/X11 diff --git a/package/libxml-parser-perl/libxml-parser-perl.hash b/package/libxml-parser-perl/libxml-parser-perl.hash index 4a8c0d305d..d8e0df5a27 100644 --- a/package/libxml-parser-perl/libxml-parser-perl.hash +++ b/package/libxml-parser-perl/libxml-parser-perl.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 b48197cd2265a26c5f016489f11a7b450d8833cb8b3d6a46ee15975740894de9 XML-Parser-2.41.tar.gz +sha256 1ae9d07ee9c35326b3d9aad56eae71a6730a73a116b9fe9e8a4758b7cc033216 XML-Parser-2.44.tar.gz diff --git a/package/libxml-parser-perl/libxml-parser-perl.mk b/package/libxml-parser-perl/libxml-parser-perl.mk index 5c2ac546b4..e512815e3f 100644 --- a/package/libxml-parser-perl/libxml-parser-perl.mk +++ b/package/libxml-parser-perl/libxml-parser-perl.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBXML_PARSER_PERL_VERSION = 2.41 +LIBXML_PARSER_PERL_VERSION = 2.44 LIBXML_PARSER_PERL_SOURCE = XML-Parser-$(LIBXML_PARSER_PERL_VERSION).tar.gz LIBXML_PARSER_PERL_SITE = $(BR2_CPAN_MIRROR)/authors/id/T/TO/TODDR -LIBXML_PARSER_PERL_DEPENDENCIES = expat +HOST_LIBXML_PARSER_PERL_DEPENDENCIES = host-expat LIBXML_PARSER_PERL_LICENSE = Artistic or GPLv1+ LIBXML_PARSER_PERL_RUN_PERL = `which perl` diff --git a/package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch b/package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch new file mode 100644 index 0000000000..42570c6350 --- /dev/null +++ b/package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch @@ -0,0 +1,178 @@ +From 9ab01a277d71f54d3143c2cf333c5c2e9aaedd9e Mon Sep 17 00:00:00 2001 +From: Nick Wellnhofer +Date: Tue, 28 Jun 2016 14:22:23 +0200 +Subject: [PATCH] Fix XPointer paths beginning with range-to + +The old code would invoke the broken xmlXPtrRangeToFunction. range-to +isn't really a function but a special kind of location step. Remove +this function and always handle range-to in the XPath code. + +The old xmlXPtrRangeToFunction could also be abused to trigger a +use-after-free error with the potential for remote code execution. + +Found with afl-fuzz. + +Fixes CVE-2016-5131. + +Signed-off-by: Baruch Siach +--- +Patch status: upstream commit 9ab01a277d7 + + result/XPath/xptr/vidbase | 13 ++++++++ + test/XPath/xptr/vidbase | 1 + + xpath.c | 7 ++++- + xpointer.c | 76 ++++------------------------------------------- + 4 files changed, 26 insertions(+), 71 deletions(-) + +diff --git a/result/XPath/xptr/vidbase b/result/XPath/xptr/vidbase +index 8b9e92d66d97..f19193e70edb 100644 +--- a/result/XPath/xptr/vidbase ++++ b/result/XPath/xptr/vidbase +@@ -17,3 +17,16 @@ Object is a Location Set: + To node + ELEMENT p + ++ ++======================== ++Expression: xpointer(range-to(id('chapter2'))) ++Object is a Location Set: ++1 : Object is a range : ++ From node ++ / ++ To node ++ ELEMENT chapter ++ ATTRIBUTE id ++ TEXT ++ content=chapter2 ++ +diff --git a/test/XPath/xptr/vidbase b/test/XPath/xptr/vidbase +index b1463830570a..884b1065d7fd 100644 +--- a/test/XPath/xptr/vidbase ++++ b/test/XPath/xptr/vidbase +@@ -1,2 +1,3 @@ + xpointer(id('chapter1')/p) + xpointer(id('chapter1')/p[1]/range-to(following-sibling::p[2])) ++xpointer(range-to(id('chapter2'))) +diff --git a/xpath.c b/xpath.c +index d992841ef0c2..5a01b1b399a2 100644 +--- a/xpath.c ++++ b/xpath.c +@@ -10691,13 +10691,18 @@ xmlXPathCompPathExpr(xmlXPathParserContextPtr ctxt) { + lc = 1; + break; + } else if ((NXT(len) == '(')) { +- /* Note Type or Function */ ++ /* Node Type or Function */ + if (xmlXPathIsNodeType(name)) { + #ifdef DEBUG_STEP + xmlGenericError(xmlGenericErrorContext, + "PathExpr: Type search\n"); + #endif + lc = 1; ++#ifdef LIBXML_XPTR_ENABLED ++ } else if (ctxt->xptr && ++ xmlStrEqual(name, BAD_CAST "range-to")) { ++ lc = 1; ++#endif + } else { + #ifdef DEBUG_STEP + xmlGenericError(xmlGenericErrorContext, +diff --git a/xpointer.c b/xpointer.c +index 676c5105837a..d74174a318f1 100644 +--- a/xpointer.c ++++ b/xpointer.c +@@ -1332,8 +1332,6 @@ xmlXPtrNewContext(xmlDocPtr doc, xmlNodePtr here, xmlNodePtr origin) { + ret->here = here; + ret->origin = origin; + +- xmlXPathRegisterFunc(ret, (xmlChar *)"range-to", +- xmlXPtrRangeToFunction); + xmlXPathRegisterFunc(ret, (xmlChar *)"range", + xmlXPtrRangeFunction); + xmlXPathRegisterFunc(ret, (xmlChar *)"range-inside", +@@ -2243,76 +2241,14 @@ xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs) { + * @nargs: the number of args + * + * Implement the range-to() XPointer function ++ * ++ * Obsolete. range-to is not a real function but a special type of location ++ * step which is handled in xpath.c. + */ + void +-xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt, int nargs) { +- xmlXPathObjectPtr range; +- const xmlChar *cur; +- xmlXPathObjectPtr res, obj; +- xmlXPathObjectPtr tmp; +- xmlLocationSetPtr newset = NULL; +- xmlNodeSetPtr oldset; +- int i; +- +- if (ctxt == NULL) return; +- CHECK_ARITY(1); +- /* +- * Save the expression pointer since we will have to evaluate +- * it multiple times. Initialize the new set. +- */ +- CHECK_TYPE(XPATH_NODESET); +- obj = valuePop(ctxt); +- oldset = obj->nodesetval; +- ctxt->context->node = NULL; +- +- cur = ctxt->cur; +- newset = xmlXPtrLocationSetCreate(NULL); +- +- for (i = 0; i < oldset->nodeNr; i++) { +- ctxt->cur = cur; +- +- /* +- * Run the evaluation with a node list made of a single item +- * in the nodeset. +- */ +- ctxt->context->node = oldset->nodeTab[i]; +- tmp = xmlXPathNewNodeSet(ctxt->context->node); +- valuePush(ctxt, tmp); +- +- xmlXPathEvalExpr(ctxt); +- CHECK_ERROR; +- +- /* +- * The result of the evaluation need to be tested to +- * decided whether the filter succeeded or not +- */ +- res = valuePop(ctxt); +- range = xmlXPtrNewRangeNodeObject(oldset->nodeTab[i], res); +- if (range != NULL) { +- xmlXPtrLocationSetAdd(newset, range); +- } +- +- /* +- * Cleanup +- */ +- if (res != NULL) +- xmlXPathFreeObject(res); +- if (ctxt->value == tmp) { +- res = valuePop(ctxt); +- xmlXPathFreeObject(res); +- } +- +- ctxt->context->node = NULL; +- } +- +- /* +- * The result is used as the new evaluation set. +- */ +- xmlXPathFreeObject(obj); +- ctxt->context->node = NULL; +- ctxt->context->contextSize = -1; +- ctxt->context->proximityPosition = -1; +- valuePush(ctxt, xmlXPtrWrapLocationSet(newset)); ++xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt, ++ int nargs ATTRIBUTE_UNUSED) { ++ XP_ERROR(XPATH_EXPR_ERROR); + } + + /** +-- +2.10.2 + diff --git a/package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch b/package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch new file mode 100644 index 0000000000..45c1a07ca4 --- /dev/null +++ b/package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch @@ -0,0 +1,253 @@ +From c1d1f7121194036608bf555f08d3062a36fd344b Mon Sep 17 00:00:00 2001 +From: Nick Wellnhofer +Date: Tue, 28 Jun 2016 18:34:52 +0200 +Subject: [PATCH] Disallow namespace nodes in XPointer ranges + +Namespace nodes must be copied to avoid use-after-free errors. +But they don't necessarily have a physical representation in a +document, so simply disallow them in XPointer ranges. + +Found with afl-fuzz. + +Fixes CVE-2016-4658. + +Signed-off-by: Baruch Siach +--- +Patch status: upstream commit c1d1f712119403 + + xpointer.c | 149 +++++++++++++++++++++++-------------------------------------- + 1 file changed, 56 insertions(+), 93 deletions(-) + +diff --git a/xpointer.c b/xpointer.c +index a7b03fbdae16..694d120e2e0b 100644 +--- a/xpointer.c ++++ b/xpointer.c +@@ -320,6 +320,45 @@ xmlXPtrRangesEqual(xmlXPathObjectPtr range1, xmlXPathObjectPtr range2) { + } + + /** ++ * xmlXPtrNewRangeInternal: ++ * @start: the starting node ++ * @startindex: the start index ++ * @end: the ending point ++ * @endindex: the ending index ++ * ++ * Internal function to create a new xmlXPathObjectPtr of type range ++ * ++ * Returns the newly created object. ++ */ ++static xmlXPathObjectPtr ++xmlXPtrNewRangeInternal(xmlNodePtr start, int startindex, ++ xmlNodePtr end, int endindex) { ++ xmlXPathObjectPtr ret; ++ ++ /* ++ * Namespace nodes must be copied (see xmlXPathNodeSetDupNs). ++ * Disallow them for now. ++ */ ++ if ((start != NULL) && (start->type == XML_NAMESPACE_DECL)) ++ return(NULL); ++ if ((end != NULL) && (end->type == XML_NAMESPACE_DECL)) ++ return(NULL); ++ ++ ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); ++ if (ret == NULL) { ++ xmlXPtrErrMemory("allocating range"); ++ return(NULL); ++ } ++ memset(ret, 0, sizeof(xmlXPathObject)); ++ ret->type = XPATH_RANGE; ++ ret->user = start; ++ ret->index = startindex; ++ ret->user2 = end; ++ ret->index2 = endindex; ++ return(ret); ++} ++ ++/** + * xmlXPtrNewRange: + * @start: the starting node + * @startindex: the start index +@@ -344,17 +383,7 @@ xmlXPtrNewRange(xmlNodePtr start, int startindex, + if (endindex < 0) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start; +- ret->index = startindex; +- ret->user2 = end; +- ret->index2 = endindex; ++ ret = xmlXPtrNewRangeInternal(start, startindex, end, endindex); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +@@ -381,17 +410,8 @@ xmlXPtrNewRangePoints(xmlXPathObjectPtr start, xmlXPathObjectPtr end) { + if (end->type != XPATH_POINT) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start->user; +- ret->index = start->index; +- ret->user2 = end->user; +- ret->index2 = end->index; ++ ret = xmlXPtrNewRangeInternal(start->user, start->index, end->user, ++ end->index); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +@@ -416,17 +436,7 @@ xmlXPtrNewRangePointNode(xmlXPathObjectPtr start, xmlNodePtr end) { + if (start->type != XPATH_POINT) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start->user; +- ret->index = start->index; +- ret->user2 = end; +- ret->index2 = -1; ++ ret = xmlXPtrNewRangeInternal(start->user, start->index, end, -1); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +@@ -453,17 +463,7 @@ xmlXPtrNewRangeNodePoint(xmlNodePtr start, xmlXPathObjectPtr end) { + if (end->type != XPATH_POINT) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start; +- ret->index = -1; +- ret->user2 = end->user; +- ret->index2 = end->index; ++ ret = xmlXPtrNewRangeInternal(start, -1, end->user, end->index); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +@@ -486,17 +486,7 @@ xmlXPtrNewRangeNodes(xmlNodePtr start, xmlNodePtr end) { + if (end == NULL) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start; +- ret->index = -1; +- ret->user2 = end; +- ret->index2 = -1; ++ ret = xmlXPtrNewRangeInternal(start, -1, end, -1); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +@@ -516,17 +506,7 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) { + if (start == NULL) + return(NULL); + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start; +- ret->index = -1; +- ret->user2 = NULL; +- ret->index2 = -1; ++ ret = xmlXPtrNewRangeInternal(start, -1, NULL, -1); + return(ret); + } + +@@ -541,6 +521,8 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) { + */ + xmlXPathObjectPtr + xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) { ++ xmlNodePtr endNode; ++ int endIndex; + xmlXPathObjectPtr ret; + + if (start == NULL) +@@ -549,7 +531,12 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) { + return(NULL); + switch (end->type) { + case XPATH_POINT: ++ endNode = end->user; ++ endIndex = end->index; ++ break; + case XPATH_RANGE: ++ endNode = end->user2; ++ endIndex = end->index2; + break; + case XPATH_NODESET: + /* +@@ -557,39 +544,15 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) { + */ + if (end->nodesetval->nodeNr <= 0) + return(NULL); ++ endNode = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1]; ++ endIndex = -1; + break; + default: + /* TODO */ + return(NULL); + } + +- ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject)); +- if (ret == NULL) { +- xmlXPtrErrMemory("allocating range"); +- return(NULL); +- } +- memset(ret, 0 , (size_t) sizeof(xmlXPathObject)); +- ret->type = XPATH_RANGE; +- ret->user = start; +- ret->index = -1; +- switch (end->type) { +- case XPATH_POINT: +- ret->user2 = end->user; +- ret->index2 = end->index; +- break; +- case XPATH_RANGE: +- ret->user2 = end->user2; +- ret->index2 = end->index2; +- break; +- case XPATH_NODESET: { +- ret->user2 = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1]; +- ret->index2 = -1; +- break; +- } +- default: +- STRANGE +- return(NULL); +- } ++ ret = xmlXPtrNewRangeInternal(start, -1, endNode, endIndex); + xmlXPtrRangeCheckOrder(ret); + return(ret); + } +-- +2.10.2 + diff --git a/package/libxml2/libxml2.mk b/package/libxml2/libxml2.mk index ed6f9af49b..2a7153ad17 100644 --- a/package/libxml2/libxml2.mk +++ b/package/libxml2/libxml2.mk @@ -11,6 +11,11 @@ LIBXML2_LICENSE = MIT LIBXML2_LICENSE_FILES = COPYING LIBXML2_CONFIG_SCRIPTS = xml2-config +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +LIBXML2_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mxgot" +endif + LIBXML2_CONF_OPTS = --with-gnu-ld --without-python --without-debug HOST_LIBXML2_DEPENDENCIES = host-pkgconf diff --git a/package/libxmlrpc/0001-fix-gennmtab-build.patch b/package/libxmlrpc/0001-fix-gennmtab-build.patch index 8cdd9329f5..e98e5cbf58 100644 --- a/package/libxmlrpc/0001-fix-gennmtab-build.patch +++ b/package/libxmlrpc/0001-fix-gennmtab-build.patch @@ -19,7 +19,7 @@ Index: b/lib/expat/gennmtab/Makefile + $(CC_FOR_BUILD) -c $< -o $@ $(CFLAGS_FOR_BUILD) $(INCLUDES) gennmtab:%:%.o -- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS) $^ +- $(BUILDTOOL_CCLD) -o $@ $(LDFLAGS_ALL) $^ + $(CC_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $^ include depend.mk diff --git a/package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch b/package/libxmlrpc/0002-config.mk.in-fix-shared-libraries-build-for-uClibc.patch similarity index 100% rename from package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch rename to package/libxmlrpc/0002-config.mk.in-fix-shared-libraries-build-for-uClibc.patch diff --git a/package/libxmlrpc/0002-fix-non-cplusplus-build.patch b/package/libxmlrpc/0002-fix-non-cplusplus-build.patch deleted file mode 100644 index efeb9cc83f..0000000000 --- a/package/libxmlrpc/0002-fix-non-cplusplus-build.patch +++ /dev/null @@ -1,27 +0,0 @@ -Handle builds without C++ - -libxmlrpc nicely handles the fact of being built without C++ support, -except for one location, fixed by this patch. - -Signed-off-by: Thomas Petazzoni - -Index: b/lib/util/Makefile -=================================================================== ---- a/lib/util/Makefile -+++ b/lib/util/Makefile -@@ -41,11 +41,14 @@ - LIBOBJS = \ - casprintf.o \ - cmdline_parser.o \ -- cmdline_parser_cpp.o \ - getoptx.o \ - string_parser.o \ - stripcaseeq.o \ - -+ifeq ($(ENABLE_CPLUSPLUS),yes) -+LIBOBJS += cmdline_parser_cpp.o -+endif -+ - .PHONY: all - all: $(LIBOBJS) - diff --git a/package/libxmlrpc/0003-fix-ar-ranlib-handling.patch b/package/libxmlrpc/0003-fix-ar-ranlib-handling.patch new file mode 100644 index 0000000000..1e58d24780 --- /dev/null +++ b/package/libxmlrpc/0003-fix-ar-ranlib-handling.patch @@ -0,0 +1,28 @@ +Fix detection of AR and RANLIB + +The configure.in script assumes that ranlib and ar are necessarily +prefixed by ${ac_tool_prefix}, which is the value of --host. However, +it's not necessarily the case. + +So instead, use AC_CHECK_TOOL to check for AR, and AC_PROG_RANLIB to +check for RANLIB. + +Signed-off-by: Thomas Petazzoni + +Index: b/configure.in +=================================================================== +--- a/configure.in ++++ b/configure.in +@@ -621,10 +621,8 @@ + BUILDDIR=$(pwd) + AC_SUBST(BUILDDIR) + +-AR=${ac_tool_prefix}ar +-AC_SUBST([AR]) +-RANLIB=${ac_tool_prefix}ranlib +-AC_SUBST([RANLIB]) ++AC_CHECK_TOOL([AR], [ar]) ++AC_PROG_RANLIB + + dnl ======================================================================= + dnl Output our results. diff --git a/package/libxmlrpc/0003-non-wchar-build.patch b/package/libxmlrpc/0003-non-wchar-build.patch deleted file mode 100644 index 1f04353061..0000000000 --- a/package/libxmlrpc/0003-non-wchar-build.patch +++ /dev/null @@ -1,24 +0,0 @@ -Disable wide-char specific code - -The vast majority of the libxmlrpc code nicely handles the absence of -wide char support, except at one location, which is fixed by this -patch. - -Signed-off-by: Thomas Petazzoni - -Index: b/src/xmlrpc_decompose.c -=================================================================== ---- a/src/xmlrpc_decompose.c -+++ b/src/xmlrpc_decompose.c -@@ -217,7 +217,11 @@ - xmlrpc_strfree(*decompRootP->store.Tstring.valueP); - break; - case 'w': -+#if HAVE_UNICODE_WCHAR - free((void*)*decompRootP->store.TwideString.valueP); -+#else -+ XMLRPC_ASSERT(false); -+#endif - break; - case '6': - free((void*)*decompRootP->store.TbitString.valueP); diff --git a/package/libxmlrpc/0004-use-correct-curl-config.patch b/package/libxmlrpc/0004-use-correct-curl-config.patch index b5816432d8..f2f1c557ba 100644 --- a/package/libxmlrpc/0004-use-correct-curl-config.patch +++ b/package/libxmlrpc/0004-use-correct-curl-config.patch @@ -12,15 +12,15 @@ Index: b/src/Makefile =================================================================== --- a/src/Makefile +++ b/src/Makefile -@@ -56,7 +56,7 @@ - TRANSPORT_MODS += blddir/lib/curl_transport/curltransaction - TRANSPORT_MODS += blddir/lib/curl_transport/curlmulti - TRANSPORT_MODS += blddir/lib/curl_transport/lock_pthread +@@ -57,7 +57,7 @@ + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/xmlrpc_curl_transport + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curltransaction + TRANSPORT_MODS += $(BLDDIR)/lib/curl_transport/curlmulti - TRANSPORT_LIBDEP += $(shell curl-config --libs) + TRANSPORT_LIBDEP += $(shell $CURL_CONFIG --libs) + TRANSPORT_INCLUDES += -Isrcdir/lib/curl_transport endif ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) - TRANSPORT_MODS += blddir/lib/libwww_transport/xmlrpc_libwww_transport Index: b/config.mk.in =================================================================== --- a/config.mk.in @@ -68,29 +68,3 @@ Index: b/lib/curl_transport/Makefile # We expect that curl-config --cflags just gives us -I options, because # we need just the -I options for 'make dep'. Plus, it's scary to think # of what any other compiler flag would do to our compile. -Index: b/src/cpp/test/Makefile -=================================================================== ---- a/src/cpp/test/Makefile -+++ b/src/cpp/test/Makefile -@@ -20,7 +20,7 @@ - LIBS := $(shell $(XMLRPC_C_CONFIG) client --ldadd) - - ifeq ($(MUST_BUILD_CURL_CLIENT),yes) -- LIBS += $(shell curl-config --libs) -+ LIBS += $(shell $(CURL_CONFIG) --libs) - endif - ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) - LIBS += $(shell libwww-config --libs) -Index: b/tools/common.mk -=================================================================== ---- a/tools/common.mk -+++ b/tools/common.mk -@@ -15,7 +15,7 @@ - CLIENT_LDLIBS += $(shell libwww-config --libs) - endif - ifeq ($(MUST_BUILD_CURL_CLIENT),yes) -- CLIENT_LDLIBS += $(shell curl-config --libs) -+ CLIENT_LDLIBS += $(shell $(CURL_CONFIG) --libs) - endif - ifeq ($(MUST_BUILD_WININET_CLIENT),yes) - CLIENT_LDLIBS += $(shell wininet-config --libs) diff --git a/package/libxmlrpc/libxmlrpc.hash b/package/libxmlrpc/libxmlrpc.hash index d37fcfc95c..3003622ac8 100644 --- a/package/libxmlrpc/libxmlrpc.hash +++ b/package/libxmlrpc/libxmlrpc.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 8ae6ed4ec57d50ed132b1150fc5258346eef3e291501a564f14fa97586902f98 xmlrpc-c-1.25.30.tgz +sha256 d830f3264a832dfe09f629cc64036acfd08121692526d0fabe090f7ff881ce08 xmlrpc-c-1.39.12.tgz diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk index 03a709597b..738ae9a811 100644 --- a/package/libxmlrpc/libxmlrpc.mk +++ b/package/libxmlrpc/libxmlrpc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXMLRPC_VERSION = 1.25.30 +LIBXMLRPC_VERSION = 1.39.12 LIBXMLRPC_SOURCE = xmlrpc-c-$(LIBXMLRPC_VERSION).tgz LIBXMLRPC_SITE = http://downloads.sourceforge.net/project/xmlrpc-c/Xmlrpc-c%20Super%20Stable/$(LIBXMLRPC_VERSION) LIBXMLRPC_LICENSE = BSD-3c (xml-rpc main code and abyss web server), BSD like (lib/expat), Python 1.5.2 license (parts of xmlrpc_base64.c) diff --git a/package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch b/package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch new file mode 100644 index 0000000000..1ad494a6c0 --- /dev/null +++ b/package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch @@ -0,0 +1,35 @@ +From eb1030de31165b68487f288308f9d1810fed6880 Mon Sep 17 00:00:00 2001 +From: Nick Wellnhofer +Date: Fri, 10 Jun 2016 14:23:58 +0200 +Subject: [PATCH] Fix heap overread in xsltFormatNumberConversion + +An empty decimal-separator could cause a heap overread. This can be +exploited to leak a couple of bytes after the buffer that holds the +pattern string. + +Found with afl-fuzz and ASan. + +Signed-off-by: Baruch Siach +--- +Patch status: upstream commit eb1030de311 + + libxslt/numbers.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/libxslt/numbers.c b/libxslt/numbers.c +index d1549b46ca26..e78c46b6357b 100644 +--- a/libxslt/numbers.c ++++ b/libxslt/numbers.c +@@ -1090,7 +1090,8 @@ xsltFormatNumberConversion(xsltDecimalFormatPtr self, + } + + /* We have finished the integer part, now work on fraction */ +- if (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) { ++ if ( (*the_format != 0) && ++ (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) ) { + format_info.add_decimal = TRUE; + the_format += xsltUTF8Size(the_format); /* Skip over the decimal */ + } +-- +2.10.2 + diff --git a/package/libxslt/Config.in b/package/libxslt/Config.in index ee2f66c36e..dfe5b99f04 100644 --- a/package/libxslt/Config.in +++ b/package/libxslt/Config.in @@ -13,4 +13,4 @@ config BR2_PACKAGE_LIBXSLT to describe how the document is transformed into another XML document that uses the formatting vocabulary. - http://www.w3.org/TR/xslt + http://xmlsoft.org/xslt/ diff --git a/package/libxslt/libxslt.mk b/package/libxslt/libxslt.mk index 868ba6a10f..d89dde8d00 100644 --- a/package/libxslt/libxslt.mk +++ b/package/libxslt/libxslt.mk @@ -19,6 +19,12 @@ LIBXSLT_CONF_OPTS = \ LIBXSLT_CONFIG_SCRIPTS = xslt-config LIBXSLT_DEPENDENCIES = libxml2 +# GCC bug with Os/O2/O3, PR77311 +# error: unable to find a register to spill in class 'CCREGS' +ifeq ($(BR2_bfin),y) +LIBXSLT_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O1" +endif + # If we have enabled libgcrypt then use it, else disable crypto support. ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) LIBXSLT_DEPENDENCIES += libgcrypt diff --git a/package/lightning/Config.in b/package/lightning/Config.in index 6750114be2..d85c964e18 100644 --- a/package/lightning/Config.in +++ b/package/lightning/Config.in @@ -20,13 +20,13 @@ config BR2_PACKAGE_LIGHTNING_DISASSEMBLER bool "enable disassembler" select BR2_PACKAGE_BINUTILS select BR2_PACKAGE_ZLIB - depends on !BR2_aarch64 && !BR2_nios2 # binutils + depends on !BR2_nios2 # binutils depends on BR2_USE_WCHAR # binutils help Enable the GNU lightning disassembler. comment "lightning disassembler needs a toolchain w/ wchar" - depends on !BR2_aarch64 && !BR2_nios2 + depends on !BR2_nios2 depends on !BR2_USE_WCHAR endif diff --git a/package/lightning/lightning.mk b/package/lightning/lightning.mk index b74147a62d..052e593be3 100644 --- a/package/lightning/lightning.mk +++ b/package/lightning/lightning.mk @@ -5,7 +5,7 @@ ################################################################################ LIGHTNING_VERSION = 2.1.0 -LIGHTNING_SITE = http://ftp.gnu.org/gnu/lightning +LIGHTNING_SITE = $(BR2_GNU_MIRROR)/lightning LIGHTNING_LICENSE = LGPLv3+ LIGHTNING_LICENSE_FILES = COPYING.LESSER LIGHTNING_INSTALL_STAGING = YES diff --git a/package/lighttpd/0002-compat-latest-lua.patch b/package/lighttpd/0002-compat-latest-lua.patch deleted file mode 100644 index ddbbfc2d87..0000000000 --- a/package/lighttpd/0002-compat-latest-lua.patch +++ /dev/null @@ -1,1398 +0,0 @@ -add handling for lua 5.2 and 5.3 - -Fetch from: https://redmine.lighttpd.net/projects/lighttpd/repository/revisions/3070 - -Signed-off-by: Francois Perrad - -Index: lighttpd-1.4.37/src/mod_magnet_cache.c -=================================================================== ---- lighttpd-1.4.37/src/mod_magnet_cache.c (revision 3069) -+++ lighttpd-1.4.37/src/mod_magnet_cache.c (revision 3070) -@@ -68,6 +68,7 @@ - /* oops, the script failed last time */ - - if (lua_gettop(sc->L) == 0) break; -+ force_assert(lua_gettop(sc->L) == 1); - - if (HANDLER_ERROR == stat_cache_get_entry(srv, con, sc->name, &sce)) { - lua_pop(sc->L, 1); /* pop the old function */ -@@ -81,7 +82,6 @@ - } - - force_assert(lua_isfunction(sc->L, -1)); -- lua_pushvalue(sc->L, -1); /* copy the function-reference */ - - return sc->L; - } -@@ -114,7 +114,6 @@ - - if (0 != luaL_loadfile(sc->L, name->ptr)) { - /* oops, an error, return it */ -- - return sc->L; - } - -@@ -122,14 +121,7 @@ - buffer_copy_buffer(sc->etag, sce->etag); - } - -- /** -- * pcall() needs the function on the stack -- * -- * as pcall() will pop the script from the stack when done, we have to -- * duplicate it here -- */ - force_assert(lua_isfunction(sc->L, -1)); -- lua_pushvalue(sc->L, -1); /* copy the function-reference */ - - return sc->L; - } -Index: lighttpd-1.4.37/src/mod_cml_lua.c -=================================================================== ---- lighttpd-1.4.37/src/mod_cml_lua.c (revision 3069) -+++ lighttpd-1.4.37/src/mod_cml_lua.c (revision 3070) -@@ -28,67 +28,35 @@ - #include - #include - --typedef struct { -- stream st; -- int done; --} readme; -- --static const char * load_file(lua_State *L, void *data, size_t *size) { -- readme *rm = data; -- -- UNUSED(L); -- -- if (rm->done) return 0; -- -- *size = rm->st.size; -- rm->done = 1; -- return rm->st.start; --} -- - static int lua_to_c_get_string(lua_State *L, const char *varname, buffer *b) { -- int curelem; -+ int curelem = lua_gettop(L); -+ int result; - -- lua_pushstring(L, varname); -+ lua_getglobal(L, varname); - -- curelem = lua_gettop(L); -- lua_gettable(L, LUA_GLOBALSINDEX); -- -- /* it should be a table */ -- if (!lua_isstring(L, curelem)) { -- lua_settop(L, curelem - 1); -- -- return -1; -+ if (lua_isstring(L, curelem)) { -+ buffer_copy_string(b, lua_tostring(L, curelem)); -+ result = 0; -+ } else { -+ result = -1; - } - -- buffer_copy_string(b, lua_tostring(L, curelem)); -- - lua_pop(L, 1); -- -- force_assert(curelem - 1 == lua_gettop(L)); -- -- return 0; -+ force_assert(curelem == lua_gettop(L)); -+ return result; - } - - static int lua_to_c_is_table(lua_State *L, const char *varname) { -- int curelem; -+ int curelem = lua_gettop(L); -+ int result; - -- lua_pushstring(L, varname); -+ lua_getglobal(L, varname); - -- curelem = lua_gettop(L); -- lua_gettable(L, LUA_GLOBALSINDEX); -+ result = lua_istable(L, curelem) ? 1 : 0; - -- /* it should be a table */ -- if (!lua_istable(L, curelem)) { -- lua_settop(L, curelem - 1); -- -- return 0; -- } -- -- lua_settop(L, curelem - 1); -- -- force_assert(curelem - 1 == lua_gettop(L)); -- -- return 1; -+ lua_pop(L, 1); -+ force_assert(curelem == lua_gettop(L)); -+ return result; - } - - static int c_to_lua_push(lua_State *L, int tbl, const char *key, size_t key_len, const char *val, size_t val_len) { -@@ -99,7 +67,6 @@ - return 0; - } - -- - static int cache_export_get_params(lua_State *L, int tbl, buffer *qrystr) { - size_t is_key = 1; - size_t i, len; -@@ -143,83 +110,12 @@ - - return 0; - } --#if 0 --int cache_export_cookie_params(server *srv, connection *con, plugin_data *p) { -- data_unset *d; - -- UNUSED(srv); -- -- if (NULL != (d = array_get_element(con->request.headers, "Cookie"))) { -- data_string *ds = (data_string *)d; -- size_t key = 0, value = 0; -- size_t is_key = 1, is_sid = 0; -- size_t i; -- -- /* found COOKIE */ -- if (!DATA_IS_STRING(d)) return -1; -- if (ds->value->used == 0) return -1; -- -- if (ds->value->ptr[0] == '\0' || -- ds->value->ptr[0] == '=' || -- ds->value->ptr[0] == ';') return -1; -- -- buffer_reset(p->session_id); -- for (i = 0; i < ds->value->used; i++) { -- switch(ds->value->ptr[i]) { -- case '=': -- if (is_key) { -- if (0 == strncmp(ds->value->ptr + key, "PHPSESSID", i - key)) { -- /* found PHP-session-id-key */ -- is_sid = 1; -- } -- value = i + 1; -- -- is_key = 0; -- } -- -- break; -- case ';': -- if (is_sid) { -- buffer_copy_string_len(p->session_id, ds->value->ptr + value, i - value); -- } -- -- is_sid = 0; -- key = i + 1; -- value = 0; -- is_key = 1; -- break; -- case ' ': -- if (is_key == 1 && key == i) key = i + 1; -- if (is_key == 0 && value == i) value = i + 1; -- break; -- case '\0': -- if (is_sid) { -- buffer_copy_string_len(p->session_id, ds->value->ptr + value, i - value); -- } -- /* fin */ -- break; -- } -- } -- } -- -- return 0; --} --#endif -- - int cache_parse_lua(server *srv, connection *con, plugin_data *p, buffer *fn) { - lua_State *L; -- readme rm; - int ret = -1; - buffer *b; -- int header_tbl = 0; - -- rm.done = 0; -- if (-1 == stream_open(&rm.st, fn)) { -- log_error_write(srv, __FILE__, __LINE__, "sbss", -- "opening lua cml file ", fn, "failed:", strerror(errno)); -- return -1; -- } -- - b = buffer_init(); - /* push the lua file to the interpreter and see what happends */ - L = luaL_newstate(); -@@ -233,73 +129,77 @@ - lua_register(L, "dir_files", f_dir_files); - - #ifdef HAVE_MEMCACHE_H -- lua_pushliteral(L, "memcache_get_long"); - lua_pushlightuserdata(L, p->conf.mc); - lua_pushcclosure(L, f_memcache_get_long, 1); -- lua_settable(L, LUA_GLOBALSINDEX); -+ lua_setglobal(L, "memcache_get_long"); - -- lua_pushliteral(L, "memcache_get_string"); - lua_pushlightuserdata(L, p->conf.mc); - lua_pushcclosure(L, f_memcache_get_string, 1); -- lua_settable(L, LUA_GLOBALSINDEX); -+ lua_setglobal(L, "memcache_get_string"); - -- lua_pushliteral(L, "memcache_exists"); - lua_pushlightuserdata(L, p->conf.mc); - lua_pushcclosure(L, f_memcache_exists, 1); -- lua_settable(L, LUA_GLOBALSINDEX); -+ lua_setglobal(L, "memcache_exists"); - #endif -+ - /* register CGI environment */ -- lua_pushliteral(L, "request"); - lua_newtable(L); -- lua_settable(L, LUA_GLOBALSINDEX); -+ { -+ int header_tbl = lua_gettop(L); - -- lua_pushliteral(L, "request"); -- header_tbl = lua_gettop(L); -- lua_gettable(L, LUA_GLOBALSINDEX); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("REQUEST_URI"), CONST_BUF_LEN(con->request.orig_uri)); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_FILENAME"), CONST_BUF_LEN(con->physical.path)); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("DOCUMENT_ROOT"), CONST_BUF_LEN(con->physical.doc_root)); -+ if (!buffer_string_is_empty(con->request.pathinfo)) { -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); -+ } - -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("REQUEST_URI"), CONST_BUF_LEN(con->request.orig_uri)); -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_FILENAME"), CONST_BUF_LEN(con->physical.path)); -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("DOCUMENT_ROOT"), CONST_BUF_LEN(con->physical.doc_root)); -- if (!buffer_string_is_empty(con->request.pathinfo)) { -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("CWD"), CONST_BUF_LEN(p->basedir)); -+ c_to_lua_push(L, header_tbl, CONST_STR_LEN("BASEURL"), CONST_BUF_LEN(p->baseurl)); - } -+ lua_setglobal(L, "request"); - -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("CWD"), CONST_BUF_LEN(p->basedir)); -- c_to_lua_push(L, header_tbl, CONST_STR_LEN("BASEURL"), CONST_BUF_LEN(p->baseurl)); -- - /* register GET parameter */ -- lua_pushliteral(L, "get"); - lua_newtable(L); -- lua_settable(L, LUA_GLOBALSINDEX); -+ { -+ int get_tbl = lua_gettop(L); - -- lua_pushliteral(L, "get"); -- header_tbl = lua_gettop(L); -- lua_gettable(L, LUA_GLOBALSINDEX); -+ buffer_copy_buffer(b, con->uri.query); -+ cache_export_get_params(L, get_tbl, b); -+ buffer_reset(b); -+ } -+ lua_setglobal(L, "get"); - -- buffer_copy_buffer(b, con->uri.query); -- cache_export_get_params(L, header_tbl, b); -- buffer_reset(b); -- - /* 2 default constants */ -- lua_pushliteral(L, "CACHE_HIT"); -- lua_pushnumber(L, 0); -- lua_settable(L, LUA_GLOBALSINDEX); -+ lua_pushinteger(L, 0); -+ lua_setglobal(L, "CACHE_HIT"); - -- lua_pushliteral(L, "CACHE_MISS"); -- lua_pushnumber(L, 1); -- lua_settable(L, LUA_GLOBALSINDEX); -+ lua_pushinteger(L, 1); -+ lua_setglobal(L, "CACHE_MISS"); - - /* load lua program */ -- if (lua_load(L, load_file, &rm, fn->ptr) || lua_pcall(L,0,1,0)) { -- log_error_write(srv, __FILE__, __LINE__, "s", -- lua_tostring(L,-1)); -+ ret = luaL_loadfile(L, fn->ptr); -+ if (0 != ret) { -+ log_error_write(srv, __FILE__, __LINE__, "sbsS", -+ "failed loading cml_lua script", -+ fn, -+ ":", -+ lua_tostring(L, -1)); -+ goto error; -+ } - -+ if (lua_pcall(L, 0, 1, 0)) { -+ log_error_write(srv, __FILE__, __LINE__, "sbsS", -+ "failed running cml_lua script", -+ fn, -+ ":", -+ lua_tostring(L, -1)); - goto error; - } - - /* get return value */ -- ret = (int)lua_tonumber(L, -1); -+ ret = (int)lua_tointeger(L, -1); - lua_pop(L, 1); - - /* fetch the data from lua */ -@@ -323,10 +223,8 @@ - goto error; - } - -- lua_pushstring(L, "output_include"); -- -+ lua_getglobal(L, "output_include"); - curelem = lua_gettop(L); -- lua_gettable(L, LUA_GLOBALSINDEX); - - /* HOW-TO build a etag ? - * as we don't just have one file we have to take the stat() -@@ -441,7 +339,6 @@ - error: - lua_close(L); - -- stream_close(&rm.st); - buffer_free(b); - - return ret /* cache-error */; -Index: lighttpd-1.4.37/src/mod_magnet.c -=================================================================== ---- lighttpd-1.4.37/src/mod_magnet.c (revision 3069) -+++ lighttpd-1.4.37/src/mod_magnet.c (revision 3070) -@@ -20,6 +20,9 @@ - #include - #include - -+#define LUA_RIDX_LIGHTTPD_SERVER "lighty.srv" -+#define LUA_RIDX_LIGHTTPD_CONNECTION "lighty.con" -+ - #define MAGNET_CONFIG_RAW_URL "magnet.attract-raw-url-to" - #define MAGNET_CONFIG_PHYSICAL_PATH "magnet.attract-physical-path-to" - #define MAGNET_RESTART_REQUEST 99 -@@ -159,23 +162,57 @@ - } - #undef PATCH - --/* See http://lua-users.org/wiki/GeneralizedPairsAndIpairs for implementation details. */ -+static void magnet_get_global_table(lua_State *L) { /* (-0, +1, e) */ -+#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 502 -+ lua_geti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS); -+#else -+ lua_pushvalue(L, LUA_GLOBALSINDEX); -+#endif -+} - --/* Override the default pairs() function to allow us to use a __pairs metakey */ -+static void magnet_setfenv_mainfn(lua_State *L, int funcIndex) { /* (-1, 0, -) */ -+#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 502 -+ /* set "_ENV" upvalue, which should be the first upvalue of a "main" lua -+ * function if it uses any global names -+ */ -+ -+ const char* first_upvalue_name = lua_getupvalue(L, funcIndex, 1); -+ if (NULL == first_upvalue_name) return; /* doesn't have any upvalues */ -+ lua_pop(L, 1); /* only need the name of the upvalue, not the value */ -+ -+ if (0 != strcmp(first_upvalue_name, "_ENV")) return; -+ -+ if (NULL == lua_setupvalue(L, funcIndex, 1)) { -+ /* pop value if lua_setupvalue didn't set the (not existing) upvalue */ -+ lua_pop(L, 1); -+ } -+#else -+ lua_setfenv(L, funcIndex); -+#endif -+} -+ -+#if !defined(LUA_VERSION_NUM) || LUA_VERSION_NUM < 502 -+/* lua 5.2 already supports __pairs */ -+ -+/* See http://lua-users.org/wiki/GeneralizedPairsAndIpairs for implementation details. -+ * Override the default pairs() function to allow us to use a __pairs metakey -+ */ - static int magnet_pairs(lua_State *L) { -- luaL_checkany(L, 1); -+ luaL_checkany(L, 1); /* "self" */ - - if (luaL_getmetafield(L, 1, "__pairs")) { -- lua_insert(L, 1); -- lua_call(L, lua_gettop(L) - 1, LUA_MULTRET); -- return lua_gettop(L); -+ /* call __pairs(self) */ -+ lua_pushvalue(L, 1); -+ lua_call(L, 1, 3); - } else { -+ /* call (self) */ - lua_pushvalue(L, lua_upvalueindex(1)); -- lua_insert(L, 1); -- lua_call(L, lua_gettop(L) - 1, LUA_MULTRET); -- return lua_gettop(L); -+ lua_pushvalue(L, 1); -+ lua_call(L, 1, 3); - } -+ return 3; - } -+#endif - - /* Define a function that will iterate over an array* (in upval 1) using current position (upval 2) */ - static int magnet_array_next(lua_State *L) { -@@ -229,40 +266,63 @@ - return 1; - } - --static int magnet_print(lua_State *L) { -- const char *s = luaL_checkstring(L, 1); -+static server* magnet_get_server(lua_State *L) { - server *srv; - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -+ lua_getfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_SERVER); - srv = lua_touserdata(L, -1); - lua_pop(L, 1); - -- log_error_write(srv, __FILE__, __LINE__, "ss", -- "(lua-print)", s); -+ return srv; -+} - -+static connection* magnet_get_connection(lua_State *L) { -+ connection *con; -+ -+ lua_getfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_CONNECTION); -+ con = lua_touserdata(L, -1); -+ lua_pop(L, 1); -+ -+ return con; -+} -+ -+typedef struct { -+ const char *ptr; -+ size_t len; -+} const_buffer; -+ -+static const_buffer magnet_checkconstbuffer(lua_State *L, int index) { -+ const_buffer cb; -+ cb.ptr = luaL_checklstring(L, index, &cb.len); -+ return cb; -+} -+ -+static buffer* magnet_checkbuffer(lua_State *L, int index) { -+ const_buffer cb = magnet_checkconstbuffer(L, index); -+ buffer *b = buffer_init(); -+ buffer_copy_string_len(b, cb.ptr, cb.len); -+ return b; -+} -+ -+static int magnet_print(lua_State *L) { -+ buffer *b = magnet_checkbuffer(L, 1); -+ -+ log_error_write(magnet_get_server(L), __FILE__, __LINE__, "sB", -+ "(lua-print)", -+ b); -+ -+ buffer_free(b); -+ - return 0; - } - - static int magnet_stat(lua_State *L) { -- const char *s = luaL_checkstring(L, 1); -- server *srv; -- connection *con; -- buffer *sb; -+ buffer *sb = magnet_checkbuffer(L, 1); -+ server *srv = magnet_get_server(L); -+ connection *con = magnet_get_connection(L); - stat_cache_entry *sce = NULL; - handler_t res; - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -- -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- -- sb = buffer_init_string(s); - res = stat_cache_get_entry(srv, con, sb, &sce); - buffer_free(sb); - -@@ -271,7 +331,7 @@ - return 1; - } - -- lua_newtable(L); -+ lua_newtable(L); // return value - - lua_pushboolean(L, S_ISREG(sce->st.st_mode)); - lua_setfield(L, -2, "is_file"); -@@ -315,7 +375,6 @@ - lua_pushinteger(L, sce->st.st_ino); - lua_setfield(L, -2, "st_ino"); - -- - if (!buffer_string_is_empty(sce->etag)) { - /* we have to mutate the etag */ - buffer *b = buffer_init(); -@@ -340,31 +399,24 @@ - - - static int magnet_atpanic(lua_State *L) { -- const char *s = luaL_checkstring(L, 1); -- server *srv; -+ buffer *b = magnet_checkbuffer(L, 1); - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -+ log_error_write(magnet_get_server(L), __FILE__, __LINE__, "sB", -+ "(lua-atpanic)", -+ b); - -- log_error_write(srv, __FILE__, __LINE__, "ss", -- "(lua-atpanic)", s); -+ buffer_free(b); - - longjmp(exceptionjmp, 1); - } - - static int magnet_reqhdr_get(lua_State *L) { -- connection *con; -+ connection *con = magnet_get_connection(L); - data_string *ds; - -+ /* __index: param 1 is the (empty) table the value was not found in */ - const char *key = luaL_checkstring(L, 2); - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - if (NULL != (ds = (data_string *)array_get_element(con->request.headers, key))) { - if (!buffer_is_empty(ds->value)) { - lua_pushlstring(L, CONST_BUF_LEN(ds->value)); -@@ -378,60 +430,40 @@ - } - - static int magnet_reqhdr_pairs(lua_State *L) { -- connection *con; -+ connection *con = magnet_get_connection(L); - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - return magnet_array_pairs(L, con->request.headers); - } - - static int magnet_status_get(lua_State *L) { - data_integer *di; -- server *srv; -- size_t key_len = 0; -+ server *srv = magnet_get_server(L); - -- const char *key = luaL_checklstring(L, 2, &key_len); -+ /* __index: param 1 is the (empty) table the value was not found in */ -+ const_buffer key = magnet_checkconstbuffer(L, 2); - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -+ di = status_counter_get_counter(srv, key.ptr, key.len); - -- di = status_counter_get_counter(srv, key, key_len); -+ lua_pushinteger(L, (lua_Integer)di->value); - -- lua_pushnumber(L, (double)di->value); -- - return 1; - } - - static int magnet_status_set(lua_State *L) { -- size_t key_len = 0; -- server *srv; -+ server *srv = magnet_get_server(L); - -- const char *key = luaL_checklstring(L, 2, &key_len); -- int counter = luaL_checkint(L, 3); -+ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ -+ const_buffer key = magnet_checkconstbuffer(L, 2); -+ int counter = (int) luaL_checkinteger(L, 3); - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -+ status_counter_set(srv, key.ptr, key.len, counter); - -- status_counter_set(srv, key, key_len, counter); -- - return 0; - } - - static int magnet_status_pairs(lua_State *L) { -- server *srv; -+ server *srv = magnet_get_server(L); - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - return magnet_array_pairs(L, srv->status); - } - -@@ -534,22 +566,13 @@ - } - - static int magnet_env_get(lua_State *L) { -- server *srv; -- connection *con; -+ server *srv = magnet_get_server(L); -+ connection *con = magnet_get_connection(L); - -+ /* __index: param 1 is the (empty) table the value was not found in */ - const char *key = luaL_checkstring(L, 2); - buffer *dest = NULL; - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -- -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - dest = magnet_env_get_buffer(srv, con, key); - - if (!buffer_is_empty(dest)) { -@@ -562,25 +585,22 @@ - } - - static int magnet_env_set(lua_State *L) { -- server *srv; -- connection *con; -+ server *srv = magnet_get_server(L); -+ connection *con = magnet_get_connection(L); - -+ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ - const char *key = luaL_checkstring(L, 2); -- const char *val = luaL_checkstring(L, 3); - buffer *dest = NULL; - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -+ luaL_checkany(L, 3); /* nil or a string */ - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - if (NULL != (dest = magnet_env_get_buffer(srv, con, key))) { -- buffer_copy_string(dest, val); -+ if (lua_isnil(L, 3)) { -+ buffer_reset(dest); -+ } else { -+ const_buffer val = magnet_checkconstbuffer(L, 3); -+ buffer_copy_string_len(dest, val.ptr, val.len); -+ } - } else { - /* couldn't save */ - -@@ -591,28 +611,24 @@ - } - - static int magnet_env_next(lua_State *L) { -- server *srv; -- connection *con; -- int pos = lua_tointeger(L, lua_upvalueindex(1)); -+ server *srv = magnet_get_server(L); -+ connection *con = magnet_get_connection(L); -+ const int pos = lua_tointeger(L, lua_upvalueindex(1)); - - buffer *dest; - -- lua_pushstring(L, "lighty.srv"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- srv = lua_touserdata(L, -1); -- lua_pop(L, 1); -- -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- -+ /* ignore previous key: use upvalue for current pos */ - lua_settop(L, 0); - - if (NULL == magnet_env[pos].name) return 0; /* end of list */ -+ /* Update our positional upval to reflect our new current position */ -+ lua_pushinteger(L, pos + 1); -+ lua_replace(L, lua_upvalueindex(1)); - -+ /* key to return */ - lua_pushstring(L, magnet_env[pos].name); - -+ /* get value */ - dest = magnet_env_get_buffer_by_id(srv, con, magnet_env[pos].type); - if (!buffer_is_empty(dest)) { - lua_pushlstring(L, CONST_BUF_LEN(dest)); -@@ -620,12 +636,7 @@ - lua_pushnil(L); - } - -- /* Update our positional upval to reflect our new current position */ -- pos++; -- lua_pushinteger(L, pos); -- lua_replace(L, lua_upvalueindex(1)); -- -- /* Returning 2 items on the stack (key, value) */ -+ /* return 2 items on the stack (key, value) */ - return 2; - } - -@@ -636,16 +647,12 @@ - } - - static int magnet_cgi_get(lua_State *L) { -- connection *con; -+ connection *con = magnet_get_connection(L); - data_string *ds; - -+ /* __index: param 1 is the (empty) table the value was not found in */ - const char *key = luaL_checkstring(L, 2); - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - ds = (data_string *)array_get_element(con->environment, key); - if (NULL != ds && !buffer_is_empty(ds->value)) - lua_pushlstring(L, CONST_BUF_LEN(ds->value)); -@@ -656,47 +663,28 @@ - } - - static int magnet_cgi_set(lua_State *L) { -- connection *con; -+ connection *con = magnet_get_connection(L); - -- const char *key = luaL_checkstring(L, 2); -- const char *val = luaL_checkstring(L, 3); -+ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ -+ const_buffer key = magnet_checkconstbuffer(L, 2); -+ const_buffer val = magnet_checkconstbuffer(L, 2); - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -+ array_set_key_value(con->environment, key.ptr, key.len, val.ptr, val.len); - -- array_set_key_value(con->environment, key, strlen(key), val, strlen(val)); -- - return 0; - } - - static int magnet_cgi_pairs(lua_State *L) { -- connection *con; -+ connection *con = magnet_get_connection(L); - -- lua_pushstring(L, "lighty.con"); -- lua_gettable(L, LUA_REGISTRYINDEX); -- con = lua_touserdata(L, -1); -- lua_pop(L, 1); -- - return magnet_array_pairs(L, con->environment); - } - - --static int magnet_copy_response_header(server *srv, connection *con, plugin_data *p, lua_State *L) { -- UNUSED(p); -- /** -- * get the environment of the function -- */ -+static int magnet_copy_response_header(server *srv, connection *con, lua_State *L, int lighty_table_ndx) { -+ force_assert(lua_istable(L, lighty_table_ndx)); - -- lua_getfenv(L, -1); /* -1 is the function */ -- -- /* lighty.header */ -- -- lua_getfield(L, -1, "lighty"); /* lighty.* from the env */ -- force_assert(lua_istable(L, -1)); -- -- lua_getfield(L, -1, "header"); /* lighty.header */ -+ lua_getfield(L, lighty_table_ndx, "header"); /* lighty.header */ - if (lua_istable(L, -1)) { - /* header is found, and is a table */ - -@@ -703,23 +691,17 @@ - lua_pushnil(L); - while (lua_next(L, -2) != 0) { - if (lua_isstring(L, -1) && lua_isstring(L, -2)) { -- const char *key, *val; -- size_t key_len, val_len; -+ const_buffer key = magnet_checkconstbuffer(L, -2); -+ const_buffer val = magnet_checkconstbuffer(L, -1); - -- key = lua_tolstring(L, -2, &key_len); -- val = lua_tolstring(L, -1, &val_len); -- -- response_header_overwrite(srv, con, key, key_len, val, val_len); -+ response_header_overwrite(srv, con, key.ptr, key.len, val.ptr, val.len); - } - - lua_pop(L, 1); - } - } -+ lua_pop(L, 1); /* pop lighty.header */ - -- lua_pop(L, 1); /* pop the header-table */ -- lua_pop(L, 1); /* pop the lighty-env */ -- lua_pop(L, 1); /* pop the function env */ -- - return 0; - } - -@@ -732,22 +714,13 @@ - * - * return 200 - */ --static int magnet_attach_content(server *srv, connection *con, plugin_data *p, lua_State *L) { -- UNUSED(p); -- /** -- * get the environment of the function -- */ -+static int magnet_attach_content(server *srv, connection *con, lua_State *L, int lighty_table_ndx) { -+ force_assert(lua_istable(L, lighty_table_ndx)); - -- force_assert(lua_isfunction(L, -1)); -- lua_getfenv(L, -1); /* -1 is the function */ -- -- lua_getfield(L, -1, "lighty"); /* lighty.* from the env */ -- force_assert(lua_istable(L, -1)); -- -- lua_getfield(L, -1, "content"); /* lighty.content */ -+ lua_getfield(L, lighty_table_ndx, "content"); /* lighty.content */ - if (lua_istable(L, -1)) { - int i; -- /* header is found, and is a table */ -+ /* content is found, and is a table */ - - for (i = 1; ; i++) { - lua_rawgeti(L, -1, i); -@@ -754,10 +727,9 @@ - - /* -1 is the value and should be the value ... aka a table */ - if (lua_isstring(L, -1)) { -- size_t s_len = 0; -- const char *s = lua_tolstring(L, -1, &s_len); -+ const_buffer data = magnet_checkconstbuffer(L, -1); - -- chunkqueue_append_mem(con->write_queue, s, s_len); -+ chunkqueue_append_mem(con->write_queue, data.ptr, data.len); - } else if (lua_istable(L, -1)) { - lua_getfield(L, -1, "filename"); - lua_getfield(L, -2, "length"); -@@ -766,36 +738,24 @@ - if (lua_isstring(L, -3)) { /* filename has to be a string */ - buffer *fn; - stat_cache_entry *sce; -- const char *fn_str; - handler_t res; - -- fn_str = lua_tostring(L, -3); -- fn = buffer_init_string(fn_str); -+ fn = magnet_checkbuffer(L, -3); - - res = stat_cache_get_entry(srv, con, fn, &sce); - - if (HANDLER_GO_ON == res) { -- off_t off = 0; -- off_t len = 0; -+ off_t off = (off_t) luaL_optinteger(L, -1, 0); -+ off_t len = (off_t) luaL_optinteger(L, -2, (lua_Integer) sce->st.st_size); - -- if (lua_isnumber(L, -1)) { -- off = lua_tonumber(L, -1); -- } -- -- if (lua_isnumber(L, -2)) { -- len = lua_tonumber(L, -2); -- } else { -- len = sce->st.st_size; -- } -- - if (off < 0) { - buffer_free(fn); -- return luaL_error(L, "offset for '%s' is negative", fn_str); -+ return luaL_error(L, "offset for '%s' is negative", lua_tostring(L, -3)); - } - - if (len < off) { - buffer_free(fn); -- return luaL_error(L, "offset > length for '%s'", fn_str); -+ return luaL_error(L, "offset > length for '%s'", lua_tostring(L, -3)); - } - - chunkqueue_append_file(con->write_queue, fn, off, len - off); -@@ -803,40 +763,34 @@ - - buffer_free(fn); - } else { -- lua_pop(L, 3 + 2); /* correct the stack */ -- - return luaL_error(L, "content[%d] is a table and requires the field \"filename\"", i); - } - - lua_pop(L, 3); - } else if (lua_isnil(L, -1)) { -- /* oops, end of list */ -+ /* end of list */ - - lua_pop(L, 1); - - break; - } else { -- lua_pop(L, 4); -- - return luaL_error(L, "content[%d] is neither a string nor a table: ", i); - } - -- lua_pop(L, 1); /* pop the content[...] table */ -+ lua_pop(L, 1); /* pop the content[...] entry value */ - } - } else { - return luaL_error(L, "lighty.content has to be a table"); - } -- lua_pop(L, 1); /* pop the header-table */ -- lua_pop(L, 1); /* pop the lighty-table */ -- lua_pop(L, 1); /* php the function env */ -+ lua_pop(L, 1); /* pop lighty.content */ - - return 0; - } - --static int traceback (lua_State *L) { -+static int traceback(lua_State *L) { - if (!lua_isstring(L, 1)) /* 'message' not a string? */ - return 1; /* keep it intact */ -- lua_getfield(L, LUA_GLOBALSINDEX, "debug"); -+ lua_getglobal(L, "debug"); - if (!lua_istable(L, -1)) { - lua_pop(L, 1); - return 1; -@@ -852,6 +806,10 @@ - return 1; - } - -+/* push traceback function before calling lua_pcall after narg arguments -+ * have been pushed (inserts it before the arguments). returns index for -+ * traceback function ("msgh" in lua_pcall) -+ */ - static int push_traceback(lua_State *L, int narg) { - int base = lua_gettop(L) - narg; /* function index */ - lua_pushcfunction(L, traceback); -@@ -861,11 +819,11 @@ - - static handler_t magnet_attract(server *srv, connection *con, plugin_data *p, buffer *name) { - lua_State *L; -- int lua_return_value = -1; -- int errfunc; -+ int lua_return_value; -+ const int func_ndx = 1; -+ const int lighty_table_ndx = 2; -+ - /* get the script-context */ -- -- - L = script_cache_get_script(srv, con, p->cache, name); - - if (lua_isstring(L, -1)) { -@@ -878,7 +836,7 @@ - - lua_pop(L, 1); - -- force_assert(lua_gettop(L) == 0); /* only the function should be on the stack */ -+ force_assert(lua_gettop(L) == 0); /* only the error should have been on the stack */ - - con->http_status = 500; - con->mode = DIRECT; -@@ -886,13 +844,14 @@ - return HANDLER_FINISHED; - } - -- lua_pushstring(L, "lighty.srv"); -+ force_assert(lua_gettop(L) == 1); -+ force_assert(lua_isfunction(L, func_ndx)); -+ - lua_pushlightuserdata(L, srv); -- lua_settable(L, LUA_REGISTRYINDEX); /* registery[] = srv */ -+ lua_setfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_SERVER); - -- lua_pushstring(L, "lighty.con"); - lua_pushlightuserdata(L, con); -- lua_settable(L, LUA_REGISTRYINDEX); /* registery[] = con */ -+ lua_setfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_CONNECTION); - - lua_atpanic(L, magnet_atpanic); - -@@ -901,7 +860,7 @@ - * - * setmetatable({}, {__index = _G}) - * -- * if a function, symbol is not defined in our env, __index will lookup -+ * if a function symbol is not defined in our env, __index will lookup - * in the global env. - * - * all variables created in the script-env will be thrown -@@ -914,9 +873,13 @@ - lua_setfield(L, -2, "print"); /* -1 is the env we want to set(sp -= 1) */ - - /** -- * lighty.request[] has the HTTP-request headers -- * lighty.content[] is a table of string/file -- * lighty.header[] is a array to set response headers -+ * lighty.request[] (ro) has the HTTP-request headers -+ * lighty.env[] (rw) has various url/physical file paths and -+ * request meta data; might contain nil values -+ * lighty.req_env[] (ro) has the cgi environment -+ * lighty.status[] (ro) has the status counters -+ * lighty.content[] (rw) is a table of string/file -+ * lighty.header[] (rw) is a array to set response headers - */ - - lua_newtable(L); /* lighty.* (sp += 1) */ -@@ -931,7 +894,7 @@ - lua_setfield(L, -2, "request"); /* content = {} (sp -= 1) */ - - lua_newtable(L); /* {} (sp += 1) */ -- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ -+ lua_newtable(L); /* the meta-table for the env-table (sp += 1) */ - lua_pushcfunction(L, magnet_env_get); /* (sp += 1) */ - lua_setfield(L, -2, "__index"); /* (sp -= 1) */ - lua_pushcfunction(L, magnet_env_set); /* (sp += 1) */ -@@ -938,11 +901,11 @@ - lua_setfield(L, -2, "__newindex"); /* (sp -= 1) */ - lua_pushcfunction(L, magnet_env_pairs); /* (sp += 1) */ - lua_setfield(L, -2, "__pairs"); /* (sp -= 1) */ -- lua_setmetatable(L, -2); /* tie the metatable to request (sp -= 1) */ -+ lua_setmetatable(L, -2); /* tie the metatable to env (sp -= 1) */ - lua_setfield(L, -2, "env"); /* content = {} (sp -= 1) */ - - lua_newtable(L); /* {} (sp += 1) */ -- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ -+ lua_newtable(L); /* the meta-table for the req_env-table (sp += 1) */ - lua_pushcfunction(L, magnet_cgi_get); /* (sp += 1) */ - lua_setfield(L, -2, "__index"); /* (sp -= 1) */ - lua_pushcfunction(L, magnet_cgi_set); /* (sp += 1) */ -@@ -953,7 +916,7 @@ - lua_setfield(L, -2, "req_env"); /* content = {} (sp -= 1) */ - - lua_newtable(L); /* {} (sp += 1) */ -- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ -+ lua_newtable(L); /* the meta-table for the status-table (sp += 1) */ - lua_pushcfunction(L, magnet_status_get); /* (sp += 1) */ - lua_setfield(L, -2, "__index"); /* (sp -= 1) */ - lua_pushcfunction(L, magnet_status_set); /* (sp += 1) */ -@@ -960,7 +923,7 @@ - lua_setfield(L, -2, "__newindex"); /* (sp -= 1) */ - lua_pushcfunction(L, magnet_status_pairs); /* (sp += 1) */ - lua_setfield(L, -2, "__pairs"); /* (sp -= 1) */ -- lua_setmetatable(L, -2); /* tie the metatable to request (sp -= 1) */ -+ lua_setmetatable(L, -2); /* tie the metatable to statzs (sp -= 1) */ - lua_setfield(L, -2, "status"); /* content = {} (sp -= 1) */ - - /* add empty 'content' and 'header' tables */ -@@ -976,78 +939,92 @@ - lua_pushcfunction(L, magnet_stat); /* (sp += 1) */ - lua_setfield(L, -2, "stat"); /* -1 is the env we want to set (sp -= 1) */ - -+ /* insert lighty table at index 2 */ -+ lua_pushvalue(L, -1); -+ lua_insert(L, lighty_table_ndx); -+ - lua_setfield(L, -2, "lighty"); /* lighty.* (sp -= 1) */ - -- /* override the default pairs() function to our __pairs capable version */ -+#if !defined(LUA_VERSION_NUM) || LUA_VERSION_NUM < 502 -+ /* override the default pairs() function to our __pairs capable version; -+ * not needed for lua 5.2+ -+ */ - lua_getglobal(L, "pairs"); /* push original pairs() (sp += 1) */ - lua_pushcclosure(L, magnet_pairs, 1); - lua_setfield(L, -2, "pairs"); /* (sp -= 1) */ -+#endif - - lua_newtable(L); /* the meta-table for the new env (sp += 1) */ -- lua_pushvalue(L, LUA_GLOBALSINDEX); /* (sp += 1) */ -+ magnet_get_global_table(L); /* (sp += 1) */ - lua_setfield(L, -2, "__index"); /* { __index = _G } (sp -= 1) */ - lua_setmetatable(L, -2); /* setmetatable({}, {__index = _G}) (sp -= 1) */ - -+ magnet_setfenv_mainfn(L, 1); /* (sp -= 1) */ - -- lua_setfenv(L, -2); /* on the stack should be a modified env (sp -= 1) */ -- -- errfunc = push_traceback(L, 0); -- if (lua_pcall(L, 0, 1, errfunc)) { -+ /* pcall will destroy the func value, duplicate it */ /* (sp += 1) */ -+ lua_pushvalue(L, func_ndx); -+ { -+ int errfunc = push_traceback(L, 0); -+ int ret = lua_pcall(L, 0, 1, errfunc); - lua_remove(L, errfunc); -- log_error_write(srv, __FILE__, __LINE__, -- "ss", -- "lua_pcall():", -- lua_tostring(L, -1)); -- lua_pop(L, 1); /* remove the error-msg and the function copy from the stack */ - -- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ -+ /* reset environment */ -+ magnet_get_global_table(L); /* (sp += 1) */ -+ magnet_setfenv_mainfn(L, 1); /* (sp -= 1) */ - -- con->http_status = 500; -- con->mode = DIRECT; -+ if (0 != ret) { -+ log_error_write(srv, __FILE__, __LINE__, -+ "ss", -+ "lua_pcall():", -+ lua_tostring(L, -1)); -+ lua_pop(L, 2); /* remove the error-msg and the lighty table at index 2 */ - -- return HANDLER_FINISHED; -- } -- lua_remove(L, errfunc); -+ force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ - -- /* we should have the function-copy and the return value on the stack */ -- force_assert(lua_gettop(L) == 2); -+ con->http_status = 500; -+ con->mode = DIRECT; - -- if (lua_isnumber(L, -1)) { -- /* if the ret-value is a number, take it */ -- lua_return_value = (int)lua_tonumber(L, -1); -+ return HANDLER_FINISHED; -+ } - } -- lua_pop(L, 1); /* pop the ret-value */ - -- magnet_copy_response_header(srv, con, p, L); -+ /* we should have the function, the lighty table and the return value on the stack */ -+ force_assert(lua_gettop(L) == 3); - -- if (lua_return_value > 99) { -- con->http_status = lua_return_value; -- con->file_finished = 1; -+ lua_return_value = (int) luaL_optinteger(L, -1, -1); -+ lua_pop(L, 1); /* pop return value */ - -- /* try { ...*/ -- if (0 == setjmp(exceptionjmp)) { -- magnet_attach_content(srv, con, p, L); -- if (!chunkqueue_is_empty(con->write_queue)) { -- con->mode = p->id; -+ magnet_copy_response_header(srv, con, L, lighty_table_ndx); -+ -+ { -+ handler_t result = HANDLER_GO_ON; -+ -+ if (lua_return_value > 99) { -+ con->http_status = lua_return_value; -+ con->file_finished = 1; -+ -+ /* try { ...*/ -+ if (0 == setjmp(exceptionjmp)) { -+ magnet_attach_content(srv, con, L, lighty_table_ndx); -+ if (!chunkqueue_is_empty(con->write_queue)) { -+ con->mode = p->id; -+ } -+ } else { -+ lua_settop(L, 2); /* remove all but function and lighty table */ -+ /* } catch () { */ -+ con->http_status = 500; -+ con->mode = DIRECT; - } -- } else { -- /* } catch () { */ -- con->http_status = 500; -- con->mode = DIRECT; -+ -+ result = HANDLER_FINISHED; -+ } else if (MAGNET_RESTART_REQUEST == lua_return_value) { -+ result = HANDLER_COMEBACK; - } - -- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ -+ lua_pop(L, 1); /* pop the lighty table */ -+ force_assert(lua_gettop(L) == 1); /* only the function should remain on the stack */ - -- /* we are finished */ -- return HANDLER_FINISHED; -- } else if (MAGNET_RESTART_REQUEST == lua_return_value) { -- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ -- -- return HANDLER_COMEBACK; -- } else { -- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ -- -- return HANDLER_GO_ON; -+ return result; - } - } - -Index: lighttpd-1.4.37/src/mod_cml_funcs.c -=================================================================== ---- lighttpd-1.4.37/src/mod_cml_funcs.c (revision 3069) -+++ lighttpd-1.4.37/src/mod_cml_funcs.c (revision 3070) -@@ -37,6 +37,8 @@ - HASH HA1; - char hex[33]; - int n = lua_gettop(L); -+ size_t s_len; -+ const char *s; - - if (n != 1) { - lua_pushstring(L, "md5: expected one argument"); -@@ -48,8 +50,10 @@ - lua_error(L); - } - -+ s = lua_tolstring(L, 1, &s_len); -+ - li_MD5_Init(&Md5Ctx); -- li_MD5_Update(&Md5Ctx, (unsigned char *)lua_tostring(L, 1), lua_strlen(L, 1)); -+ li_MD5_Update(&Md5Ctx, (unsigned char *) s, (unsigned int) s_len); - li_MD5_Final(HA1, &Md5Ctx); - - li_tohex(hex, (const char*) HA1, 16); -@@ -79,7 +83,7 @@ - return 1; - } - -- lua_pushnumber(L, st.st_mtime); -+ lua_pushinteger(L, st.st_mtime); - - return 1; - } -@@ -121,7 +125,7 @@ - return 1; - } - -- /* push d into registry */ -+ /* push d into userdata */ - lua_pushlightuserdata(L, d); - lua_pushcclosure(L, f_dir_files_iter, 1); - -@@ -147,7 +151,7 @@ - return 1; - } - -- lua_pushnumber(L, S_ISREG(st.st_mode)); -+ lua_pushinteger(L, S_ISREG(st.st_mode)); - - return 1; - } -@@ -171,7 +175,7 @@ - return 1; - } - -- lua_pushnumber(L, S_ISDIR(st.st_mode)); -+ lua_pushinteger(L, S_ISDIR(st.st_mode)); - - return 1; - } -@@ -183,6 +187,8 @@ - char *r; - int n = lua_gettop(L); - struct memcache *mc; -+ size_t s_len; -+ const char *s; - - if (!lua_islightuserdata(L, lua_upvalueindex(1))) { - lua_pushstring(L, "where is my userdata ?"); -@@ -201,9 +207,8 @@ - lua_error(L); - } - -- if (NULL == (r = mc_aget(mc, -- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { -- -+ s = lua_tolstring(L, 1, &s_len); -+ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { - lua_pushboolean(L, 0); - return 1; - } -@@ -217,6 +222,8 @@ - int f_memcache_get_string(lua_State *L) { - char *r; - int n = lua_gettop(L); -+ size_t s_len; -+ const char *s; - - struct memcache *mc; - -@@ -238,8 +245,8 @@ - lua_error(L); - } - -- if (NULL == (r = mc_aget(mc, -- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { -+ s = lua_tolstring(L, 1, &s_len); -+ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { - lua_pushnil(L); - return 1; - } -@@ -254,6 +261,8 @@ - int f_memcache_get_long(lua_State *L) { - char *r; - int n = lua_gettop(L); -+ size_t s_len; -+ const char *s; - - struct memcache *mc; - -@@ -275,13 +284,13 @@ - lua_error(L); - } - -- if (NULL == (r = mc_aget(mc, -- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { -+ s = lua_tolstring(L, 1, &s_len); -+ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { - lua_pushnil(L); - return 1; - } - -- lua_pushnumber(L, strtol(r, NULL, 10)); -+ lua_pushinteger(L, strtol(r, NULL, 10)); - - free(r); - diff --git a/package/lighttpd/lighttpd.hash b/package/lighttpd/lighttpd.hash index 7ae17f2307..36783ff18b 100644 --- a/package/lighttpd/lighttpd.hash +++ b/package/lighttpd/lighttpd.hash @@ -1,2 +1,2 @@ # From http://www.lighttpd.net/ -sha256 7eb9a1853c3d6dd5851682b0733a729ba4158d6bdff80974d5ef5f1f6887365b lighttpd-1.4.39.tar.xz +sha256 1c97225deea33eefba6d4158c2cef27913d47553263516bbe9d2e2760fc43a3f lighttpd-1.4.45.tar.xz diff --git a/package/lighttpd/lighttpd.mk b/package/lighttpd/lighttpd.mk index 01463737f3..b3127ef268 100644 --- a/package/lighttpd/lighttpd.mk +++ b/package/lighttpd/lighttpd.mk @@ -5,7 +5,7 @@ ################################################################################ LIGHTTPD_VERSION_MAJOR = 1.4 -LIGHTTPD_VERSION = $(LIGHTTPD_VERSION_MAJOR).39 +LIGHTTPD_VERSION = $(LIGHTTPD_VERSION_MAJOR).45 LIGHTTPD_SOURCE = lighttpd-$(LIGHTTPD_VERSION).tar.xz LIGHTTPD_SITE = http://download.lighttpd.net/lighttpd/releases-$(LIGHTTPD_VERSION_MAJOR).x LIGHTTPD_LICENSE = BSD-3c @@ -46,7 +46,13 @@ endif ifeq ($(BR2_PACKAGE_LIGHTTPD_WEBDAV),y) LIGHTTPD_DEPENDENCIES += libxml2 sqlite -LIGHTTPD_CONF_OPTS += --with-webdav-props --with-webdav-locks +LIGHTTPD_CONF_OPTS += --with-webdav-props +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) +LIGHTTPD_CONF_OPTS += --with-webdav-locks +LIGHTTPD_DEPENDENCIES += util-linux +else +LIGHTTPD_CONF_OPTS += --without-webdav-locks +endif else LIGHTTPD_CONF_OPTS += --without-webdav-props --without-webdav-locks endif diff --git a/package/linenoise/linenoise.hash b/package/linenoise/linenoise.hash new file mode 100644 index 0000000000..7837bc68f4 --- /dev/null +++ b/package/linenoise/linenoise.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f5054a4fe120d43d85427cf58af93e56b9bb80389d507a9bec9b75531a340014 linenoise-1.0.tar.gz diff --git a/package/linknx/0002-src-suncalc.cpp-fix-build-with-gcc-6.x.patch b/package/linknx/0002-src-suncalc.cpp-fix-build-with-gcc-6.x.patch new file mode 100644 index 0000000000..d204a02269 --- /dev/null +++ b/package/linknx/0002-src-suncalc.cpp-fix-build-with-gcc-6.x.patch @@ -0,0 +1,42 @@ +From ff52cf04c6fa8b3352544447abf429bfa6000dc8 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 20 Aug 2016 12:13:04 +0200 +Subject: [PATCH] src/suncalc.cpp: fix build with gcc 6.x + +src/suncalc.cpp currently includes , but this causes a build +failure with gcc 6.x, and should be used instead. The build +failure is: + +/home/test/autobuild/run/instance-0/output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.1.1/cmath:101:37: error: '__is_integer' was not declared in this scope + typename __gnu_cxx::__enable_if<__is_integer<_Tp>::__value, + ^~~~~~~~~~~~ + +Signed-off-by: Thomas Petazzoni +--- + src/suncalc.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/suncalc.cpp b/src/suncalc.cpp +index ea2366a..b553f96 100644 +--- a/src/suncalc.cpp ++++ b/src/suncalc.cpp +@@ -22,6 +22,8 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + ++#include ++ + #include "suncalc.h" + #include "services.h" + +@@ -44,7 +46,6 @@ Released to the public domain by Paul Schlyter, December 1992 + + + #include +-#include + #include + #include + #include +-- +2.7.4 + diff --git a/package/linknx/Config.in b/package/linknx/Config.in index ca55c8bfb2..e85838990e 100644 --- a/package/linknx/Config.in +++ b/package/linknx/Config.in @@ -11,6 +11,7 @@ config BR2_PACKAGE_LINKNX to EIB/KNX installation. http://linknx.sourceforge.net/ + https://github.com/linknx/linknx comment "linknx needs a toolchain w/ C++" depends on BR2_USE_MMU diff --git a/package/links/links.hash b/package/links/links.hash index 2d9a7b3236..a63af4c808 100644 --- a/package/links/links.hash +++ b/package/links/links.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 98411811ded1e8028f5aed708dd7d8ec0ae63ce24c2991a0241a989b7d09d84e links-2.12.tar.bz2 +sha256 f70d0678ef1c5550953bdc27b12e72d5de86e53b05dd59b0fc7f07c507f244b8 links-2.14.tar.bz2 diff --git a/package/links/links.mk b/package/links/links.mk index ab2b583599..ce0e638f95 100644 --- a/package/links/links.mk +++ b/package/links/links.mk @@ -4,7 +4,7 @@ # ################################################################################ -LINKS_VERSION = 2.12 +LINKS_VERSION = 2.14 LINKS_SOURCE = links-$(LINKS_VERSION).tar.bz2 LINKS_SITE = http://links.twibright.com/download LINKS_DEPENDENCIES = host-pkgconf diff --git a/package/linux-backports/linux-backports.mk b/package/linux-backports/linux-backports.mk index 58cd50f2c4..6f599a8a85 100644 --- a/package/linux-backports/linux-backports.mk +++ b/package/linux-backports/linux-backports.mk @@ -46,7 +46,7 @@ LINUX_BACKPORTS_MODULE_MAKE_OPTS = $(LINUX_BACKPORTS_MAKE_OPTS) # generated by running silentoldconfig, but that's not the case for # linux-backports: it uses a hand-crafted rule to generate that file. define LINUX_BACKPORTS_KCONFIG_FIXUP_CMDS - $(MAKE) -C $(@D) $(LINUX_BACKPORTS_MAKE_OPTS) backport-include/backport/autoconf.h + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LINUX_BACKPORTS_MAKE_OPTS) backport-include/backport/autoconf.h endef # Checks to give errors that the user can understand diff --git a/package/linux-firmware/Config.in b/package/linux-firmware/Config.in index f56f31df67..e9a4dfbf84 100644 --- a/package/linux-firmware/Config.in +++ b/package/linux-firmware/Config.in @@ -19,6 +19,11 @@ endmenu # Audio menu "Video firmware" +config BR2_PACKAGE_LINUX_FIRMWARE_I915 + bool "Intel i915 video card firmware" + help + Firmware files for the Intel i915 video cards. + config BR2_PACKAGE_LINUX_FIRMWARE_RADEON bool "AMD Radeon video card firmware" help @@ -26,6 +31,16 @@ config BR2_PACKAGE_LINUX_FIRMWARE_RADEON endmenu # Video +menu "Bluetooth firmware" + +config BR2_PACKAGE_LINUX_FIRMWARE_IBT + bool "Intel Wireless Bluetooth" + help + Firmware files for Intel 3160/7260/7265/8260/8265 Wireless + bluetooth support. + +endmenu # Bluetooth + menu "WiFi firmware" config BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_6002 @@ -161,6 +176,11 @@ config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797 help Firmware files for the Marvell Wifi-Ex 8797 module on USB. +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8801 + bool "Marvell Wifi-Ex 8801 USB" + help + Firmware files for the Marvell Wifi-Ex 8801 module on USB. + config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8887 bool "Marvell Wifi-Ex 8887 SDIO" help diff --git a/package/linux-firmware/linux-firmware.hash b/package/linux-firmware/linux-firmware.hash new file mode 100644 index 0000000000..e8ee2b72a1 --- /dev/null +++ b/package/linux-firmware/linux-firmware.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 256378564e36b8f222adb8fbe746529e73413c6cbe2b0e5574f41dfd62d92577 linux-firmware-6d3bc8886517d171068fd1263176b8b5c51df204.tar.gz diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk index 140184870b..7706bd5c50 100644 --- a/package/linux-firmware/linux-firmware.mk +++ b/package/linux-firmware/linux-firmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -LINUX_FIRMWARE_VERSION = b0668886def608d352cd0263a7ef04e64e25574a +LINUX_FIRMWARE_VERSION = 6d3bc8886517d171068fd1263176b8b5c51df204 LINUX_FIRMWARE_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git LINUX_FIRMWARE_SITE_METHOD = git @@ -14,11 +14,22 @@ LINUX_FIRMWARE_FILES += intel/fw_sst_0f28.bin-48kHz_i2s_master LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.fw_sst_0f28 endif +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_I915),y) +LINUX_FIRMWARE_DIRS += i915 +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.i915 +endif + ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RADEON),y) LINUX_FIRMWARE_DIRS += radeon LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.radeon endif +# Intel Wireless Bluetooth +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IBT),y) +LINUX_FIRMWARE_FILES += intel/ibt-* +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.ibt_firmware +endif + # rt2501/rt61 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61),y) LINUX_FIRMWARE_FILES += rt2561.bin rt2561s.bin rt2661.bin @@ -141,6 +152,12 @@ LINUX_FIRMWARE_FILES += mrvl/usb8797_uapsta.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell endif +# usb8801 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8801),y) +LINUX_FIRMWARE_FILES += mrvl/usb8801_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + # sd8887 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8887),y) LINUX_FIRMWARE_FILES += mrvl/sd8887_uapsta.bin @@ -283,10 +300,7 @@ LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.iwlwifi_firmware endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BNX2X),y) -LINUX_FIRMWARE_FILES += \ - bnx2x/bnx2x-e1-7.10.51.0.fw \ - bnx2x/bnx2x-e1h-7.10.51.0.fw \ - bnx2x/bnx2x-e2-7.10.51.0.fw +LINUX_FIRMWARE_FILES += bnx2x/* # No license file; the license is in the file WHENCE # which is installed unconditionally endif @@ -305,6 +319,9 @@ endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169),y) LINUX_FIRMWARE_FILES += \ + rtl_nic/rtl8105e-1.fw \ + rtl_nic/rtl8106e-1.fw \ + rtl_nic/rtl8106e-2.fw \ rtl_nic/rtl8168d-1.fw \ rtl_nic/rtl8168d-2.fw \ rtl_nic/rtl8168e-1.fw \ @@ -312,14 +329,13 @@ LINUX_FIRMWARE_FILES += \ rtl_nic/rtl8168e-3.fw \ rtl_nic/rtl8168f-1.fw \ rtl_nic/rtl8168f-2.fw \ - rtl_nic/rtl8105e-1.fw \ + rtl_nic/rtl8168g-2.fw \ + rtl_nic/rtl8168g-3.fw \ + rtl_nic/rtl8168h-1.fw \ + rtl_nic/rtl8168h-2.fw \ rtl_nic/rtl8402-1.fw \ rtl_nic/rtl8411-1.fw \ - rtl_nic/rtl8411-2.fw \ - rtl_nic/rtl8106e-1.fw \ - rtl_nic/rtl8106e-2.fw \ - rtl_nic/rtl8168g-2.fw \ - rtl_nic/rtl8168g-3.fw + rtl_nic/rtl8411-2.fw endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_XCx000),y) @@ -375,7 +391,8 @@ LINUX_FIRMWARE_FILES += \ brcm/brcmfmac43242a.bin brcm/brcmfmac43340-sdio.bin \ brcm/brcmfmac43362-sdio.bin brcm/brcmfmac43455-sdio.bin \ brcm/brcmfmac43569.bin brcm/brcmfmac43570-pcie.bin \ - brcm/brcmfmac43602-pcie.ap.bin brcm/brcmfmac43602-pcie.bin + brcm/brcmfmac43602-pcie.ap.bin brcm/brcmfmac43602-pcie.bin \ + brcm/brcmfmac43430-sdio.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.broadcom_bcm43xx endif diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host index ac89a6b50c..b1d117a8ca 100644 --- a/package/linux-headers/Config.in.host +++ b/package/linux-headers/Config.in.host @@ -1,19 +1,29 @@ +comment "Kernel Header Options" + config BR2_PACKAGE_HOST_LINUX_HEADERS bool -comment "Kernel Header Options" - choice prompt "Kernel Headers" default BR2_KERNEL_HEADERS_AS_KERNEL if BR2_LINUX_KERNEL - default BR2_KERNEL_HEADERS_4_5 + default BR2_KERNEL_HEADERS_4_9 help - Select the version of kernel header files you wish to use. - You must select the correct set of header files to match - the kernel you intend to use on your target system. + Select the kernel version to get headers from. + + The kernel headers must be at least as old as the oldest kernel + you intend to run on your target. + + If you use Buildroot to build a kernel, then you can use + the sources from that kernel as source for the headers. + + If you choose a custom version of the kernel headers, or choose + to use the same sources as the kernel, you'll have to select + (below) the series of that kernel, so that Buildroot can show + or hide packages that have strong requirements on the kernel + headers. config BR2_KERNEL_HEADERS_AS_KERNEL - bool "Same as kernel" + bool "Same as kernel being built" depends on BR2_LINUX_KERNEL config BR2_KERNEL_HEADERS_3_2 @@ -36,47 +46,26 @@ choice depends on !BR2_nios2 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 - config BR2_KERNEL_HEADERS_3_14 - bool "Linux 3.14.x kernel headers" - depends on !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 - config BR2_KERNEL_HEADERS_3_18 bool "Linux 3.18.x kernel headers" depends on !BR2_nios2 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 - config BR2_KERNEL_HEADERS_3_19 - bool "Linux 3.19.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2015_08 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 - - config BR2_KERNEL_HEADERS_4_0 - bool "Linux 4.0.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2015_08 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 - config BR2_KERNEL_HEADERS_4_1 bool "Linux 4.1.x kernel headers" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 - config BR2_KERNEL_HEADERS_4_2 - bool "Linux 4.2.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2016_02 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 - - config BR2_KERNEL_HEADERS_4_3 - bool "Linux 4.3.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2016_05 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 - config BR2_KERNEL_HEADERS_4_4 bool "Linux 4.4.x kernel headers" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 - config BR2_KERNEL_HEADERS_4_5 - bool "Linux 4.5.x kernel headers" - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + config BR2_KERNEL_HEADERS_4_8 + bool "Linux 4.8.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + + config BR2_KERNEL_HEADERS_4_9 + bool "Linux 4.9.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 config BR2_KERNEL_HEADERS_VERSION bool "Manually specified Linux version" @@ -92,13 +81,28 @@ config BR2_DEFAULT_KERNEL_VERSION choice bool "Custom kernel headers series" depends on BR2_KERNEL_HEADERS_VERSION || BR2_KERNEL_HEADERS_AS_KERNEL - default BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_REALLY_OLD help - Set to the kernel headers series you manually set above. + Specify the kernel headers series you manually selected, above. This is used to hide/show some packages that have strict requirements on the version of kernel headers. +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9 + bool "4.9.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_8 + bool "4.8.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_7 + bool "4.7.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 + +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6 + bool "4.6.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 + config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5 bool "4.5.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 @@ -210,17 +214,15 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "3.2.80" if BR2_KERNEL_HEADERS_3_2 - default "3.4.112" if BR2_KERNEL_HEADERS_3_4 - default "3.10.101" if BR2_KERNEL_HEADERS_3_10 - default "3.12.59" if BR2_KERNEL_HEADERS_3_12 - default "3.14.70" if BR2_KERNEL_HEADERS_3_14 - default "3.18.33" if BR2_KERNEL_HEADERS_3_18 + default "3.2.84" if BR2_KERNEL_HEADERS_3_2 + default "3.4.113" if BR2_KERNEL_HEADERS_3_4 + default "3.10.104" if BR2_KERNEL_HEADERS_3_10 + default "3.12.70" if BR2_KERNEL_HEADERS_3_12 + default "3.18.48" if BR2_KERNEL_HEADERS_3_18 default "3.19.8" if BR2_KERNEL_HEADERS_3_19 default "4.0.9" if BR2_KERNEL_HEADERS_4_0 - default "4.1.24" if BR2_KERNEL_HEADERS_4_1 - default "4.2.8" if BR2_KERNEL_HEADERS_4_2 - default "4.3.6" if BR2_KERNEL_HEADERS_4_3 - default "4.4.11" if BR2_KERNEL_HEADERS_4_4 - default "4.5.5" if BR2_KERNEL_HEADERS_4_5 + default "4.1.38" if BR2_KERNEL_HEADERS_4_1 + default "4.4.48" if BR2_KERNEL_HEADERS_4_4 + default "4.8.17" if BR2_KERNEL_HEADERS_4_8 + default "4.9.9" if BR2_KERNEL_HEADERS_4_9 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION diff --git a/package/linux-headers/linux-headers.mk b/package/linux-headers/linux-headers.mk index 0900778314..8f339cfec5 100644 --- a/package/linux-headers/linux-headers.mk +++ b/package/linux-headers/linux-headers.mk @@ -17,9 +17,6 @@ LINUX_HEADERS_TARBALL = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION LINUX_HEADERS_SITE = $(patsubst %/,%,$(dir $(LINUX_HEADERS_TARBALL))) LINUX_HEADERS_SOURCE = $(notdir $(LINUX_HEADERS_TARBALL)) BR_NO_CHECK_HASH_FOR += $(LINUX_HEADERS_SOURCE) -else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_LOCAL),y) -LINUX_HEADERS_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH)) -LINUX_HEADERS_SITE_METHOD = local else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_GIT),y) LINUX_HEADERS_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL)) LINUX_HEADERS_SITE_METHOD = git diff --git a/package/linux-pam/0003-Conditionally-compile-per-innetgr-availability.patch b/package/linux-pam/0003-Conditionally-compile-per-innetgr-availability.patch deleted file mode 100644 index 4b516fa986..0000000000 --- a/package/linux-pam/0003-Conditionally-compile-per-innetgr-availability.patch +++ /dev/null @@ -1,84 +0,0 @@ -innetgr is not available/functional in uclibc, provide conditions for -compilation. - -Patch originally by Dmitry Golubovsky - porting -to linux-pam 1.2.1. - -Signed-off-by: Brendan Heading - -Upstream-status: pending - ---- - modules/pam_group/pam_group.c | 8 +++++++- - modules/pam_succeed_if/pam_succeed_if.c | 4 ++++ - modules/pam_time/pam_time.c | 8 +++++++- - 3 files changed, 18 insertions(+), 2 deletions(-) - -diff --git a/modules/pam_group/pam_group.c b/modules/pam_group/pam_group.c -index be5f20f..0982de8 100644 ---- a/modules/pam_group/pam_group.c -+++ b/modules/pam_group/pam_group.c -@@ -655,8 +655,14 @@ static int check_account(pam_handle_t *pamh, const char *service, - continue; - } - /* If buffer starts with @, we are using netgroups */ -- if (buffer[0] == '@') -+ if (buffer[0] == '@') { -+#ifdef HAVE_INNETGR - good &= innetgr (&buffer[1], NULL, user, NULL); -+#else -+ good = 0; -+ pam_syslog (pamh, LOG_ERR, "pam_group does not have netgroup support"); -+#endif /* HAVE_INNETGR */ -+ } - /* otherwise, if the buffer starts with %, it's a UNIX group */ - else if (buffer[0] == '%') - good &= pam_modutil_user_in_group_nam_nam(pamh, user, &buffer[1]); -diff --git a/modules/pam_succeed_if/pam_succeed_if.c b/modules/pam_succeed_if/pam_succeed_if.c -index aa828fc..c09d669 100644 ---- a/modules/pam_succeed_if/pam_succeed_if.c -+++ b/modules/pam_succeed_if/pam_succeed_if.c -@@ -233,16 +233,20 @@ evaluate_notingroup(pam_handle_t *pamh, const char *user, const char *group) - static int - evaluate_innetgr(const char *host, const char *user, const char *group) - { -+#ifdef HAVE_INNETGR - if (innetgr(group, host, user, NULL) == 1) - return PAM_SUCCESS; -+#endif /* HAVE_INNETGR */ - return PAM_AUTH_ERR; - } - /* Return PAM_SUCCESS if the (host,user) is NOT in the netgroup. */ - static int - evaluate_notinnetgr(const char *host, const char *user, const char *group) - { -+#ifdef HAVE_INNETGR - if (innetgr(group, host, user, NULL) == 0) - return PAM_SUCCESS; -+#endif /* HAVE_INNETGR */ - return PAM_AUTH_ERR; - } - -diff --git a/modules/pam_time/pam_time.c b/modules/pam_time/pam_time.c -index c94737c..4898fd2 100644 ---- a/modules/pam_time/pam_time.c -+++ b/modules/pam_time/pam_time.c -@@ -554,8 +554,14 @@ check_account(pam_handle_t *pamh, const char *service, - continue; - } - /* If buffer starts with @, we are using netgroups */ -- if (buffer[0] == '@') -+ if (buffer[0] == '@') { -+#ifdef HAVE_INNETGR - good &= innetgr (&buffer[1], NULL, user, NULL); -+#else -+ good = 0; -+ pam_syslog (pamh, LOG_ERR, "pam_time does not have netgroup support"); -+#endif /* HAVE_INNETGR */ -+ } - else - good &= logic_field(pamh, user, buffer, count, is_same); - D(("with user: %s", good ? "passes":"fails" )); --- -2.4.3 - diff --git a/package/linux-pam/Config.in b/package/linux-pam/Config.in index f5088b967f..3d9835e8cc 100644 --- a/package/linux-pam/Config.in +++ b/package/linux-pam/Config.in @@ -3,19 +3,14 @@ config BR2_PACKAGE_LINUX_PAM select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE select BR2_PACKAGE_FLEX depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) - # While linux-pam does have some support for statically linked - # modules (through --enable-static-modules), it doesn't work - # properly due to a build cycle between libpam and - # modules. See - # https://lists.fedorahosted.org/pipermail/linux-pam-commits/2012-February/000105.html - # for details. depends on !BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on !BR2_TOOLCHAIN_USES_MUSL + depends on BR2_USE_MMU # fork() help A Security Framework that Provides Authentication for Applications http://linux-pam.org -comment "linux-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "linux-pam 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 diff --git a/package/linux-pam/linux-pam.hash b/package/linux-pam/linux-pam.hash index a6a26d1997..b9c91ef0f6 100644 --- a/package/linux-pam/linux-pam.hash +++ b/package/linux-pam/linux-pam.hash @@ -1,2 +1,2 @@ # Locally computed hashes, not provided by upstream -sha256 342b1211c0d3b203a7df2540a5b03a428a087bd8a48c17e49ae268f992b334d9 Linux-PAM-1.2.1.tar.bz2 +sha256 241aed1ef522f66ed672719ecf2205ec513fd0075ed80cda8e086a5b1a01d1bb Linux-PAM-1.3.0.tar.bz2 diff --git a/package/linux-pam/linux-pam.mk b/package/linux-pam/linux-pam.mk index 2b94412ff6..c8ba30f74d 100644 --- a/package/linux-pam/linux-pam.mk +++ b/package/linux-pam/linux-pam.mk @@ -4,7 +4,7 @@ # ################################################################################ -LINUX_PAM_VERSION = 1.2.1 +LINUX_PAM_VERSION = 1.3.0 LINUX_PAM_SOURCE = Linux-PAM-$(LINUX_PAM_VERSION).tar.bz2 LINUX_PAM_SITE = http://linux-pam.org/library LINUX_PAM_INSTALL_STAGING = YES @@ -29,6 +29,10 @@ endif ifeq ($(BR2_PACKAGE_LIBSELINUX),y) LINUX_PAM_CONF_OPTS += --enable-selinux LINUX_PAM_DEPENDENCIES += libselinux +define LINUX_PAM_SELINUX_PAMFILE_TWEAK + $(SED) 's/^# \(.*pam_selinux.so.*\)$$/\1/' \ + $(TARGET_DIR)/etc/pam.d/login +endef else LINUX_PAM_CONF_OPTS += --disable-selinux endif @@ -46,6 +50,7 @@ define LINUX_PAM_INSTALL_CONFIG $(TARGET_DIR)/etc/pam.d/login $(INSTALL) -m 0644 -D package/linux-pam/other.pam \ $(TARGET_DIR)/etc/pam.d/other + $(LINUX_PAM_SELINUX_PAMFILE_TWEAK) endef LINUX_PAM_POST_INSTALL_TARGET_HOOKS += LINUX_PAM_INSTALL_CONFIG diff --git a/package/linux-pam/login.pam b/package/linux-pam/login.pam index 01f56324da..5df7db628c 100644 --- a/package/linux-pam/login.pam +++ b/package/linux-pam/login.pam @@ -4,7 +4,9 @@ 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/linux-syscall-support/Config.in b/package/linux-syscall-support/Config.in new file mode 100644 index 0000000000..323dfbd35d --- /dev/null +++ b/package/linux-syscall-support/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_LINUX_SYSCALL_SUPPORT + bool "linux-syscall-support (lss)" + help + This project provides a header file that can be included into + your application whenever you need to make direct system + calls. + + https://chromium.googlesource.com/linux-syscall-support/ diff --git a/package/linux-syscall-support/linux-syscall-support.hash b/package/linux-syscall-support/linux-syscall-support.hash new file mode 100644 index 0000000000..30925522ff --- /dev/null +++ b/package/linux-syscall-support/linux-syscall-support.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e5088b81011e30b567b6bde6bb7c22ad529c4ee8890cc5e93d58b21f2c4df56a linux-syscall-support-3f6478ac95edf86cd3da300c2c0d34a438f5dbeb.tar.gz diff --git a/package/linux-syscall-support/linux-syscall-support.mk b/package/linux-syscall-support/linux-syscall-support.mk new file mode 100644 index 0000000000..6833a62f13 --- /dev/null +++ b/package/linux-syscall-support/linux-syscall-support.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# linux-syscall-support +# +################################################################################ + +# Use the same version that the one used by Google-breakpad (see DEPS file) +LINUX_SYSCALL_SUPPORT_VERSION = 3f6478ac95edf86cd3da300c2c0d34a438f5dbeb +LINUX_SYSCALL_SUPPORT_SITE = https://chromium.googlesource.com/linux-syscall-support +LINUX_SYSCALL_SUPPORT_SITE_METHOD = git +LINUX_SYSCALL_SUPPORT_LICENSE = BSD-3c +LINUX_SYSCALL_SUPPORT_LICENSE_FILES = linux_syscall_support.h + +# Provide only one header file. +LINUX_SYSCALL_SUPPORT_INSTALL_TARGET = NO +LINUX_SYSCALL_SUPPORT_INSTALL_STAGING = YES + +define LINUX_SYSCALL_SUPPORT_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0644 $(@D)/linux_syscall_support.h \ + $(STAGING_DIR)/usr/include/linux_syscall_support.h +endef + +define HOST_LINUX_SYSCALL_SUPPORT_INSTALL_CMDS + $(INSTALL) -D -m 0644 $(@D)/linux_syscall_support.h \ + $(HOST_DIR)/usr/include/linux_syscall_support.h +endef + +$(eval $(host-generic-package)) +$(eval $(generic-package)) diff --git a/package/linux-tools/Config.in b/package/linux-tools/Config.in new file mode 100644 index 0000000000..db9ed9f19b --- /dev/null +++ b/package/linux-tools/Config.in @@ -0,0 +1,86 @@ +menu "Linux Kernel Tools" + +# No prompt, this is sourced by linux/Config.in as this +# is no real package and really belongs to the kernel. +config BR2_PACKAGE_LINUX_TOOLS + bool + +config BR2_PACKAGE_LINUX_TOOLS_CPUPOWER + bool "cpupower" + depends on !BR2_bfin # pciutils + depends on BR2_USE_WCHAR || !BR2_NEEDS_GETTEXT # gettext + select BR2_PACKAGE_LINUX_TOOLS + select BR2_PACKAGE_PCIUTILS + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT + help + cpupower is a collection of tools to examine and tune power + saving related features of your processor. + +comment "cpupower needs a toolchain w/ wchar" + depends on !BR2_bfin + depends on !BR2_USE_WCHAR && BR2_NEEDS_GETTEXT + +config BR2_PACKAGE_LINUX_TOOLS_GPIO + bool "gpio" + select BR2_PACKAGE_LINUX_TOOLS + help + gpio is a collection of tools to get information about, + control and monitor gpios present on system. + + These tools use new gpio ABI which will deprecate sysfs gpio + interface in the future. + + These tools are available only from kernel version 4.8. + +config BR2_PACKAGE_LINUX_TOOLS_IIO + bool "iio" + select BR2_PACKAGE_LINUX_TOOLS + help + iio is a collection of tools to get information about, + control and monitor iio devices present on system. + + These tools are available only from kernel version 4.7. + +config BR2_PACKAGE_LINUX_TOOLS_PERF + bool "perf" + select BR2_PACKAGE_LINUX_TOOLS + help + perf (sometimes "Perf Events" or perf tools, originally + "Performance Counters for Linux") - is a performance + analyzing tool in Linux, available from kernel version + 2.6.31. User-space controlling utility, called 'perf' has + git-like interface with subcommands. It is capable of + statistical profiling of entire system (both kernel and user + code), single CPU or severals threads. + + This will build and install the userspace 'perf' + command. It is up to the user to ensure that the kernel + configuration has all the suitable options enabled to allow a + proper operation of 'perf'. + + https://perf.wiki.kernel.org/ + +config BR2_PACKAGE_LINUX_TOOLS_SELFTESTS + bool"selftests" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash + depends on BR2_USE_MMU # bash + select BR2_PACKAGE_LINUX_TOOLS + select BR2_PACKAGE_BASH # runtime + select BR2_PACKAGE_POPT + select BR2_PACKAGE_LIBCAP_NG + help + Build and install (to /usr/lib/kselftests) kernel selftests. + + Use of this option implies you know the process of using and + compiling the kernel selftests. The Makefile to build and + install these is very noisy and may appear to cause your + build to fail for strange reasons. + + This is very much a use at your risk option and may not work + for every setup or every architecture. + +comment "selftests needs BR2_PACKAGE_BUSYBOX_SHOW_OTHERS" + depends on BR2_USE_MMU + depends on !BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + +endmenu diff --git a/package/linux-tools/linux-tool-cpupower.mk b/package/linux-tools/linux-tool-cpupower.mk new file mode 100644 index 0000000000..9958cff805 --- /dev/null +++ b/package/linux-tools/linux-tool-cpupower.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# cpupower +# +################################################################################ + +LINUX_TOOLS += cpupower + +CPUPOWER_DEPENDENCIES = pciutils $(if $(BR2_NEEDS_GETTEXT),gettext) + +CPUPOWER_MAKE_OPTS = CROSS=$(TARGET_CROSS) \ + CPUFREQ_BENCH=false \ + NLS=false \ + $(if $(BR2_NEEDS_GETTEXT),LDFLAGS=-lintl) \ + DEBUG=false + +define CPUPOWER_BUILD_CMDS + $(Q)if test ! -f $(LINUX_DIR)/tools/power/cpupower/Makefile ; then \ + echo "Your kernel version is too old and does not have the cpupower tool." ; \ + echo "At least kernel 3.4 must be used." ; \ + exit 1 ; \ + fi + + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools \ + $(CPUPOWER_MAKE_OPTS) \ + cpupower +endef + +define CPUPOWER_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools \ + $(CPUPOWER_MAKE_OPTS) \ + DESTDIR=$(STAGING_DIR) \ + cpupower_install +endef + +define CPUPOWER_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools \ + $(CPUPOWER_MAKE_OPTS) \ + DESTDIR=$(TARGET_DIR) \ + cpupower_install +endef diff --git a/package/linux-tools/linux-tool-gpio.mk b/package/linux-tools/linux-tool-gpio.mk new file mode 100644 index 0000000000..ba75ab4c3f --- /dev/null +++ b/package/linux-tools/linux-tool-gpio.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# gpio +# +################################################################################ + +LINUX_TOOLS += gpio + +GPIO_MAKE_OPTS = $(LINUX_MAKE_FLAGS) + +define GPIO_BUILD_CMDS + $(Q)if ! grep install $(LINUX_DIR)/tools/gpio/Makefile >/dev/null 2>&1 ; then \ + echo "Your kernel version is too old and does not have the gpio tools." ; \ + echo "At least kernel 4.8 must be used." ; \ + exit 1 ; \ + fi + + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools \ + $(GPIO_MAKE_OPTS) \ + gpio +endef + +define GPIO_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools \ + $(GPIO_MAKE_OPTS) \ + DESTDIR=$(TARGET_DIR) \ + gpio_install +endef diff --git a/package/linux-tools/linux-tool-iio.mk b/package/linux-tools/linux-tool-iio.mk new file mode 100644 index 0000000000..60d6249d2f --- /dev/null +++ b/package/linux-tools/linux-tool-iio.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# iio +# +################################################################################ + +LINUX_TOOLS += iio + +IIO_MAKE_OPTS = $(LINUX_MAKE_FLAGS) + +define IIO_BUILD_CMDS + $(Q)if ! grep install $(LINUX_DIR)/tools/iio/Makefile >/dev/null 2>&1 ; then \ + echo "Your kernel version is too old and does not have install section in the iio tools." ; \ + echo "At least kernel 4.7 must be used." ; \ + exit 1 ; \ + fi + + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools/iio \ + $(IIO_MAKE_OPTS) +endef + +define IIO_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(LINUX_DIR)/tools/iio \ + $(IIO_MAKE_OPTS) \ + INSTALL_ROOT=$(TARGET_DIR) \ + install +endef diff --git a/package/linux-tools/linux-tool-perf.mk b/package/linux-tools/linux-tool-perf.mk new file mode 100644 index 0000000000..16f3a58cc4 --- /dev/null +++ b/package/linux-tools/linux-tool-perf.mk @@ -0,0 +1,134 @@ +################################################################################ +# +# perf +# +################################################################################ + +LINUX_TOOLS += perf + +PERF_DEPENDENCIES = host-flex host-bison + +ifeq ($(KERNEL_ARCH),x86_64) +PERF_ARCH=x86 +else +PERF_ARCH=$(KERNEL_ARCH) +endif + +PERF_MAKE_FLAGS = \ + $(LINUX_MAKE_FLAGS) \ + JOBS=$(PARALLEL_JOBS) \ + ARCH=$(PERF_ARCH) \ + DESTDIR=$(TARGET_DIR) \ + prefix=/usr \ + WERROR=0 \ + NO_LIBAUDIT=1 \ + NO_NEWT=1 \ + NO_GTK2=1 \ + NO_LIBPERL=1 \ + NO_LIBPYTHON=1 \ + NO_LIBBIONIC=1 + +# We need to pass an argument to ld for setting the endianness when +# building it for MIPS architecture, otherwise the default one will +# always be used (which is big endian) and the compilation for little +# endian will always fail showing an error like this one: +# LD foo.o +# mips-linux-gnu-ld: foo.o: compiled for a little endian system and +# target is big endian +ifeq ($(BR2_mips)$(BR2_mips64),y) +PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EB" +else ifeq ($(BR2_mipsel)$(BR2_mips64el),y) +PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EL" +endif + +# The call to backtrace() function fails for ARC, because for some +# reason the unwinder from libgcc returns early. Thus the usage of +# backtrace() should be disabled in perf explicitly: at build time +# backtrace() appears to be available, but it fails at runtime: the +# backtrace will contain only several functions from the top of stack, +# instead of the complete backtrace. +ifeq ($(BR2_arc),y) +PERF_MAKE_FLAGS += NO_BACKTRACE=1 +endif + +ifeq ($(BR2_PACKAGE_SLANG),y) +PERF_DEPENDENCIES += slang +else +PERF_MAKE_FLAGS += NO_SLANG=1 +endif + +ifeq ($(BR2_PACKAGE_LIBUNWIND),y) +PERF_DEPENDENCIES += libunwind +else +PERF_MAKE_FLAGS += NO_LIBUNWIND=1 +endif + +ifeq ($(BR2_PACKAGE_NUMACTL),y) +PERF_DEPENDENCIES += numactl +else +PERF_MAKE_FLAGS += NO_LIBNUMA=1 +endif + +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +PERF_DEPENDENCIES += elfutils +else +PERF_MAKE_FLAGS += NO_LIBELF=1 NO_DWARF=1 +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +PERF_DEPENDENCIES += zlib +else +PERF_MAKE_FLAGS += NO_ZLIB=1 +endif + +# lzma is provided by xz +ifeq ($(BR2_PACKAGE_XZ),y) +PERF_DEPENDENCIES += xz +else +PERF_MAKE_FLAGS += NO_LZMA=1 +endif + +# We really do not want to build the perf documentation, because it +# has stringent requirement on the documentation generation tools, +# like xmlto and asciidoc), which may be lagging behind on some +# distributions. +# We name it 'GNUmakefile' so that GNU make will use it instead of +# the existing 'Makefile'. +define PERF_DISABLE_DOCUMENTATION + if [ -f $(LINUX_DIR)/tools/perf/Documentation/Makefile ]; then \ + printf "%%:\n\t@:\n" >$(LINUX_DIR)/tools/perf/Documentation/GNUmakefile; \ + fi +endef +LINUX_POST_PATCH_HOOKS += PERF_DISABLE_DOCUMENTATION + +# O must be redefined here to overwrite the one used by Buildroot for +# out of tree build. We build perf in $(LINUX_DIR)/tools/perf/ and not just +# $(LINUX_DIR) so that it isn't built in the root directory of the kernel +# sources. +define PERF_BUILD_CMDS + $(Q)if test ! -f $(LINUX_DIR)/tools/perf/Makefile ; then \ + echo "Your kernel version is too old and does not have the perf tool." ; \ + echo "At least kernel 2.6.31 must be used." ; \ + exit 1 ; \ + fi + $(Q)if test "$(BR2_PACKAGE_ELFUTILS)" = "" ; then \ + if ! grep -q NO_LIBELF $(LINUX_DIR)/tools/perf/Makefile* ; then \ + if ! test -r $(LINUX_DIR)/tools/perf/config/Makefile ; then \ + echo "The perf tool in your kernel cannot be built without libelf." ; \ + echo "Either upgrade your kernel to >= 3.7, or enable the elfutils package." ; \ + exit 1 ; \ + fi \ + fi \ + fi + $(TARGET_MAKE_ENV) $(MAKE1) $(PERF_MAKE_FLAGS) \ + -C $(LINUX_DIR)/tools/perf O=$(LINUX_DIR)/tools/perf/ +endef + +# After installation, we remove the Perl and Python scripts from the +# target. +define PERF_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) $(PERF_MAKE_FLAGS) \ + -C $(LINUX_DIR)/tools/perf O=$(LINUX_DIR)/tools/perf/ install + $(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/scripts/ + $(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/tests/ +endef diff --git a/package/linux-tools/linux-tool-selftests.mk b/package/linux-tools/linux-tool-selftests.mk new file mode 100644 index 0000000000..c4e5bf0fea --- /dev/null +++ b/package/linux-tools/linux-tool-selftests.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# selftests +# +################################################################################ + +LINUX_TOOLS += selftests + +ifeq ($(KERNEL_ARCH),x86_64) +SELFTESTS_ARCH=x86 +else +ifeq ($(KERNEL_ARCH),i386) +SELFTESTS_ARCH=x86 +else +SELFTESTS_ARCH=$(KERNEL_ARCH) +endif +endif + +SELFTESTS_DEPENDENCIES = libcap-ng popt + +SELFTESTS_MAKE_FLAGS = \ + $(LINUX_MAKE_FLAGS) \ + ARCH=$(SELFTESTS_ARCH) + +# O must be redefined here to overwrite the one used by Buildroot for +# out of tree build. We build the selftests in $(LINUX_DIR)/tools/selftests and +# not just $(LINUX_DIR) so that it isn't built in the root directory of the kernel +# sources. +# +# The headers_install step here is important as some kernel selftests use a +# hardcoded CFLAGS to find kernel headers e.g: +# CFLAGS += -I../../../../usr/include/ +# The headers_install target will install the kernel headers locally inside +# the Linux build dir +define SELFTESTS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) -C $(LINUX_DIR) $(SELFTESTS_MAKE_FLAGS) \ + headers_install + $(TARGET_MAKE_ENV) $(MAKE1) -C $(LINUX_DIR)/tools/testing/selftests \ + $(SELFTESTS_MAKE_FLAGS) O=$(LINUX_DIR)/tools/testing/selftests +endef + +define SELFTESTS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE1) -C $(LINUX_DIR)/tools/testing/selftests \ + $(SELFTESTS_MAKE_FLAGS) O=$(LINUX_DIR)/tools/testing/selftests \ + INSTALL_PATH=$(TARGET_DIR)/usr/lib/kselftests install +endef diff --git a/package/linux-tools/linux-tools.mk b/package/linux-tools/linux-tools.mk new file mode 100644 index 0000000000..7fa8d194c6 --- /dev/null +++ b/package/linux-tools/linux-tools.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# linux-tools +# +################################################################################ + +# Vampirising sources from the kernel tree, so no source nor site specified. +# Instead, we directly build in the sources of the linux package. We can do +# that, because we're not building in the same location and the same files. +# +# So, all tools refer to $(LINUX_DIR) instead of $(@D). + +# Note: we need individual tools .mk files to be included *before* this one +# to guarantee that each tool has a chance to register itself before we build +# the list of build and install hooks, below. +# +# This is currently guaranteed by the naming of each file: +# - they get included by the top-level Makefile, with $(sort $(wildcard ...)) +# - make's $(sort) function will aways sort in the C locale +# - the files names correctly sort out in the C locale so that each tool's +# .mk file is included before this one. + +# We only need the kernel to be extracted, not actually built +LINUX_TOOLS_PATCH_DEPENDENCIES = linux + +# Install Linux kernel tools in the staging directory since some tools +# may install shared libraries and headers (e.g. cpupower). +LINUX_TOOLS_INSTALL_STAGING = YES + +LINUX_TOOLS_DEPENDENCIES += $(foreach tool,$(LINUX_TOOLS),\ + $(if $(BR2_PACKAGE_LINUX_TOOLS_$(call UPPERCASE,$(tool))),\ + $($(call UPPERCASE,$(tool))_DEPENDENCIES))) + +LINUX_TOOLS_POST_BUILD_HOOKS += $(foreach tool,$(LINUX_TOOLS),\ + $(if $(BR2_PACKAGE_LINUX_TOOLS_$(call UPPERCASE,$(tool))),\ + $(call UPPERCASE,$(tool))_BUILD_CMDS)) + +LINUX_TOOLS_POST_INSTALL_STAGING_HOOKS += $(foreach tool,$(LINUX_TOOLS),\ + $(if $(BR2_PACKAGE_LINUX_TOOLS_$(call UPPERCASE,$(tool))),\ + $(call UPPERCASE,$(tool))_INSTALL_STAGING_CMDS)) + +LINUX_TOOLS_POST_INSTALL_TARGET_HOOKS += $(foreach tool,$(LINUX_TOOLS),\ + $(if $(BR2_PACKAGE_LINUX_TOOLS_$(call UPPERCASE,$(tool))),\ + $(call UPPERCASE,$(tool))_INSTALL_TARGET_CMDS)) + +$(eval $(generic-package)) diff --git a/package/linux-zigbee/0002-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch b/package/linux-zigbee/0002-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch new file mode 100644 index 0000000000..0ce4381c18 --- /dev/null +++ b/package/linux-zigbee/0002-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch @@ -0,0 +1,43 @@ +From 8cc60d618f81f2eeaa926cd60ed9b55ee6cda6ea Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 8 Aug 2016 15:42:46 +0200 +Subject: [PATCH] addrdb/coord-config-parse.y: add missing include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The %union definition uses the time_t structure. In order to use this +structure, the header has to be included. Otherwise, the build +breaks with some C libraries, such as musl: + +In file included from coord-config-lex.l:23:0: +coord-config-parse.y:107:2: error: unknown type name ‘time_t’ + time_t timestamp; + ^ + +This patch includes using the '%code requires' directive of +Yacc. + +Signed-off-by: Thomas Petazzoni +--- + addrdb/coord-config-parse.y | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/addrdb/coord-config-parse.y b/addrdb/coord-config-parse.y +index 2e10a88..85ee058 100644 +--- a/addrdb/coord-config-parse.y ++++ b/addrdb/coord-config-parse.y +@@ -102,6 +102,10 @@ + + %} + ++%code requires { ++#include ++} ++ + %union { + unsigned long number; + time_t timestamp; +-- +2.7.4 + diff --git a/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch b/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch deleted file mode 100644 index c51f587813..0000000000 --- a/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch +++ /dev/null @@ -1,45 +0,0 @@ -From c9d239490d47d5dd3d7d7b8b7d9007171c5f60ce Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sun, 11 Oct 2015 15:27:09 +0200 -Subject: [PATCH] configure.ac: use AC_CONFIG_MACRO_DIR - -Instead of having to explicitly pass -I./scripts when running aclocal, -use the AC_CONFIG_MACRO_DIR() macro in configure.ac. This allows to -use "autoreconf" normally, without any hacks. - -Submitted upstream at https://github.com/jgaeddert/liquid-dsp/pull/15. - -Signed-off-by: Thomas Petazzoni ---- - bootstrap.sh | 2 +- - configure.ac | 1 + - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/bootstrap.sh b/bootstrap.sh -index 640e01d..eb4894e 100755 ---- a/bootstrap.sh -+++ b/bootstrap.sh -@@ -27,7 +27,7 @@ - # - - rm -f config.cache aclocal.m4 --aclocal -I./scripts -+aclocal - autoconf - autoheader - #automake --foreign --add-missing -diff --git a/configure.ac b/configure.ac -index a9ad1d7..3b1ba68 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -25,6 +25,7 @@ - - AC_INIT([liquid-dsp],[1.2.0],[support@liquidsdr.org]) - AC_CONFIG_SRCDIR([src/libliquid.c]) -+AC_CONFIG_MACRO_DIR([scripts]) - - # permit auxiliary scripts directory (e.g. config.sub, config.guess, install-sh) - AC_CONFIG_AUX_DIR(scripts/) --- -2.6.1 - diff --git a/package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch b/package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch deleted file mode 100644 index f8dd602ba3..0000000000 --- a/package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 3055eb3da9d0a202c1a975f7db0c8370a09a30bc Mon Sep 17 00:00:00 2001 -From: "Joseph D. Gaeddert" -Date: Thu, 25 Feb 2016 17:47:07 -0500 -Subject: [PATCH] math/poly: wrapping isnan in T_ABS to help compilation w/ - certain gcc versions - -This is an upstreamed patch backported from here: - -https://github.com/jgaeddert/liquid-dsp/commit/3055eb3da9d0a202c1a975f7db0c8370a09a30bc - -It fixes the following error: - -src/math/src/poly.findroots.c: In function -'polyc_findroots_bairstow_recursion': -src/math/src/poly.findroots.c:305:9: error: non-floating-point argument -in call to function '__builtin_isnan' - if (isnan(du) || isnan(dv)) { - -Signed-off-by: Vicente Olivert Riera ---- - src/math/src/poly.findroots.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/math/src/poly.findroots.c b/src/math/src/poly.findroots.c -index 21b5756..e000ee8 100644 ---- a/src/math/src/poly.findroots.c -+++ b/src/math/src/poly.findroots.c -@@ -302,7 +302,7 @@ void POLY(_findroots_bairstow_recursion)(T * _p, - #endif - - // adjust u, v -- if (isnan(du) || isnan(dv)) { -+ if (isnan(T_ABS(du)) || isnan(T_ABS(dv))) { - u *= 0.5f; - v *= 0.5f; - } else { --- -2.7.3 - diff --git a/package/liquid-dsp/Config.in b/package/liquid-dsp/Config.in index a2cd21cf05..dca39153bb 100644 --- a/package/liquid-dsp/Config.in +++ b/package/liquid-dsp/Config.in @@ -1,4 +1,4 @@ -comment "liquid-dsp requires a (e)glibc/musl toolchain w/ dynamic library" +comment "liquid-dsp requires a glibc or musl toolchain w/ dynamic library" depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || BR2_STATIC_LIBS config BR2_PACKAGE_LIQUID_DSP diff --git a/package/liquid-dsp/liquid-dsp.hash b/package/liquid-dsp/liquid-dsp.hash index 5c1c0a8c27..e32d8290ca 100644 --- a/package/liquid-dsp/liquid-dsp.hash +++ b/package/liquid-dsp/liquid-dsp.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 4b6dcb0846ed884c55984494adef721f910ac6f895174b31ec52138263842637 liquid-dsp-df5a459fa05dba4199c1299555891104cc1fdca7.tar.gz +sha256 d0f050b9d5137c43ba45a35b6c82bc8222eba86f772f4e2e46c91427647bb847 liquid-dsp-1191179b786703b3af20abf7e1404d91099b335d.tar.gz diff --git a/package/liquid-dsp/liquid-dsp.mk b/package/liquid-dsp/liquid-dsp.mk index e7bb686327..35994137e9 100644 --- a/package/liquid-dsp/liquid-dsp.mk +++ b/package/liquid-dsp/liquid-dsp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIQUID_DSP_VERSION = df5a459fa05dba4199c1299555891104cc1fdca7 +LIQUID_DSP_VERSION = 1191179b786703b3af20abf7e1404d91099b335d LIQUID_DSP_SITE = $(call github,jgaeddert,liquid-dsp,$(LIQUID_DSP_VERSION)) LIQUID_DSP_LICENSE = MIT LIQUID_DSP_LICENSE_FILES = LICENSE @@ -35,7 +35,7 @@ LIQUID_DSP_LDFLAGS += -lfftw3f endif # disable altivec, it has build issues -ifeq ($(BR2_powerpc)$(BR2_powerpc64),y) +ifeq ($(BR2_powerpc)$(BR2_powerpc64)$(BR2_powerpc64le),y) LIQUID_DSP_CONF_OPTS += --enable-simdoverride endif diff --git a/package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch b/package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch deleted file mode 100644 index 5863128551..0000000000 --- a/package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch +++ /dev/null @@ -1,46 +0,0 @@ -From f2fc8c48e5e55a91b309225f377b6cb3783fc6f6 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Wed, 25 May 2016 15:21:57 +0200 -Subject: [PATCH] lib: use proper linking method to avoid parallel build issue - -Using _LDFLAGS = -l is correct when is an -external library. However, when it is built by the same package, and -especially in the same directory, this is wrong and can cause parallel -build issues. In lib/Makefile.am, there was: - -libirrecord_la_LDFLAGS = -llirc - -But the liblirc library is built in the same directory. Or, due to the -using of _LDFLAGS, make is not aware of the build dependency -between libirrecord and liblirc. - -To solve this, _LIBADD should be used instead, as follows: - -libirrecord_la_LIBADD = liblirc.la - -This fixes parallel build issues seen by automated build tests -conducted by the Buildroot project, such as: - - http://autobuild.buildroot.org/results/eb4/eb47d57de8182d25b1dacbf0ac3726ed20063d04/build-end.log - -Signed-off-by: Thomas Petazzoni ---- - lib/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/Makefile.am b/lib/Makefile.am -index ce5c94c..8780f88 100644 ---- a/lib/Makefile.am -+++ b/lib/Makefile.am -@@ -29,7 +29,7 @@ liblirc_la_SOURCES = config_file.c \ - transmit.c \ - util.c - --libirrecord_la_LDFLAGS = -llirc -+libirrecord_la_LIBADD = liblirc.la - libirrecord_la_SOURCES = irrecord.c - - liblirc_client_la_LDFLAGS = -version-info 4:0:4 --- -2.7.4 - diff --git a/package/lirc-tools/0002-tools-make_rel_symlink.py-can-also-use-python2.patch b/package/lirc-tools/0001-tools-make_rel_symlink.py-can-also-use-python2.patch similarity index 100% rename from package/lirc-tools/0002-tools-make_rel_symlink.py-can-also-use-python2.patch rename to package/lirc-tools/0001-tools-make_rel_symlink.py-can-also-use-python2.patch diff --git a/package/lirc-tools/0002-configure-check-for-clock_gettime-in-librt.patch b/package/lirc-tools/0002-configure-check-for-clock_gettime-in-librt.patch new file mode 100644 index 0000000000..710dfd3b05 --- /dev/null +++ b/package/lirc-tools/0002-configure-check-for-clock_gettime-in-librt.patch @@ -0,0 +1,54 @@ +From e654ae139cec42a6f1b5684261787d0c241cfd3b Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 19 Aug 2016 15:25:48 +0200 +Subject: [PATCH] configure: check for clock_gettime in librt + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 3 +++ + daemons/Makefile.am | 2 +- + plugins/Makefile.am | 1 + + 3 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 73340c7..466e638 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -67,6 +67,9 @@ AC_CHECK_FUNCS(gethostname gettimeofday mkfifo select socket strdup \ + AC_SEARCH_LIBS([dlopen], [dl dld], [], [ + AC_MSG_ERROR([unable to find the dlopen() function]) + ]) ++# glibc < 2.17 needs librt for clock_gettime() ++AC_CHECK_LIB(rt, clock_gettime, LIBCLOCK_GETTIME="-lrt") ++AC_SUBST(LIBCLOCK_GETTIME) + AC_CHECK_FUNCS(daemon) + if test "$ac_cv_func_daemon" != yes; then + daemon="" +diff --git a/daemons/Makefile.am b/daemons/Makefile.am +index 5625627..85a28f3 100644 +--- a/daemons/Makefile.am ++++ b/daemons/Makefile.am +@@ -21,7 +21,7 @@ sbin_PROGRAMS += lircd-uinput + endif + + lircd_SOURCES = lircd.cpp +-lircd_LDADD = ../lib/liblirc.la ++lircd_LDADD = ../lib/liblirc.la @LIBCLOCK_GETTIME@ + + lircd_uinput_SOURCES = lircd-uinput.cpp + lircd_uinput_LDADD = ../lib/liblirc.la +diff --git a/plugins/Makefile.am b/plugins/Makefile.am +index ddff01d..45c012a 100644 +--- a/plugins/Makefile.am ++++ b/plugins/Makefile.am +@@ -127,6 +127,7 @@ zotac_la_SOURCES = zotac.c + + plugin_LTLIBRARIES += mplay.la + mplay_la_SOURCES = mplay.c ++mplay_la_LIBADD = @LIBCLOCK_GETTIME@ + endif + + $(srcdir)/pluginlist.am: +-- +2.7.4 + diff --git a/package/lirc-tools/0003-lircd-Remove-use-of-functions-killed-in-kernel-4.8.0.patch b/package/lirc-tools/0003-lircd-Remove-use-of-functions-killed-in-kernel-4.8.0.patch new file mode 100644 index 0000000000..9fe5256ceb --- /dev/null +++ b/package/lirc-tools/0003-lircd-Remove-use-of-functions-killed-in-kernel-4.8.0.patch @@ -0,0 +1,105 @@ +From 45c590f64dd79e8e1704d5c94ce3456a5cdbfa5f Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Fri, 19 Aug 2016 04:48:02 +0200 +Subject: [PATCH] lircd: Remove use of functions killed in kernel 4.8.0 + +From 4.8.0 the kernel no longer supports LIRC_NOTIFY_DECODE, +LIRC_SETUP_START/LIRC_SETUP_END and several constants related +to initiating filters. Remove corresponding calls from lircd. + +[baruch: move DRVCTL_NOTIFY_DECODE into lircd.cpp] +Signed-off-by: Baruch Siach +--- +Patch status: backported from upstream 31fcc8aa39f62c5c +--- + daemons/lircd.cpp | 53 ++++------------------------------------------------- + 1 file changed, 4 insertions(+), 49 deletions(-) + +diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp +index 782b6d3f8342..d778aa19308b 100644 +--- a/daemons/lircd.cpp ++++ b/daemons/lircd.cpp +@@ -78,6 +78,8 @@ + #define lirc_gid gid_t + #endif + ++#define DRVCTL_NOTIFY_DECODE 7 ++ + #ifdef DARWIN + #include + #define CLOCK_REALTIME 0 +@@ -462,50 +464,6 @@ static int setup_timeout(void) + } + + +-static int setup_filter(void) +-{ +- int ret1, ret2; +- lirc_t min_pulse_supported = 0, max_pulse_supported = 0; +- lirc_t min_space_supported = 0, max_space_supported = 0; +- +- if (!(curr_driver->features & LIRC_CAN_SET_REC_FILTER)) +- return 1; +- if (curr_driver->drvctl_func(LIRC_GET_MIN_FILTER_PULSE, +- &min_pulse_supported) == -1 || +- curr_driver->drvctl_func(LIRC_GET_MAX_FILTER_PULSE, &max_pulse_supported) == -1 +- || curr_driver->drvctl_func(LIRC_GET_MIN_FILTER_SPACE, &min_space_supported) == -1 +- || curr_driver->drvctl_func(LIRC_GET_MAX_FILTER_SPACE, &max_space_supported) == -1) { +- log_error("could not get filter range"); +- log_perror_err(__func__); +- } +- +- if (setup_min_pulse > max_pulse_supported) +- setup_min_pulse = max_pulse_supported; +- else if (setup_min_pulse < min_pulse_supported) +- setup_min_pulse = 0; /* disable filtering */ +- +- if (setup_min_space > max_space_supported) +- setup_min_space = max_space_supported; +- else if (setup_min_space < min_space_supported) +- setup_min_space = 0; /* disable filtering */ +- +- ret1 = curr_driver->drvctl_func(LIRC_SET_REC_FILTER_PULSE, &setup_min_pulse); +- ret2 = curr_driver->drvctl_func(LIRC_SET_REC_FILTER_SPACE, &setup_min_space); +- if (ret1 == -1 || ret2 == -1) { +- if (curr_driver-> +- drvctl_func(LIRC_SET_REC_FILTER, +- setup_min_pulse < setup_min_space ? &setup_min_pulse : &setup_min_space) == -1) { +- log_error("could not set filter"); +- log_perror_err(__func__); +- return 0; +- } +- } +- return 1; +-} +- +- +- +- + static int setup_hardware(void) + { + int ret = 1; +@@ -514,10 +472,7 @@ static int setup_hardware(void) + if ((curr_driver->features & LIRC_CAN_SET_REC_CARRIER) + || (curr_driver->features & LIRC_CAN_SET_REC_TIMEOUT) + || (curr_driver->features & LIRC_CAN_SET_REC_FILTER)) { +- (void)curr_driver->drvctl_func(LIRC_SETUP_START, NULL); +- ret = setup_frequency() && setup_timeout() +- && setup_filter(); +- (void)curr_driver->drvctl_func(LIRC_SETUP_END, NULL); ++ ret = setup_frequency() && setup_timeout(); + } + } + return ret; +@@ -2162,7 +2117,7 @@ void loop(void) + int reps; + + if (curr_driver->drvctl_func && (curr_driver->features & LIRC_CAN_NOTIFY_DECODE)) +- curr_driver->drvctl_func(LIRC_NOTIFY_DECODE, NULL); ++ curr_driver->drvctl_func(DRVCTL_NOTIFY_DECODE, NULL); + + get_release_data(&remote_name, &button_name, &reps); + +-- +2.9.3 + diff --git a/package/lirc-tools/Config.in b/package/lirc-tools/Config.in index 3dd202f284..6eaf828817 100644 --- a/package/lirc-tools/Config.in +++ b/package/lirc-tools/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_LIRC_TOOLS depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP - depends on !BR2_TOOLCHAIN_USES_MUSL # GLOB_BRACE # dlopen() depends on !BR2_STATIC_LIBS help @@ -19,7 +18,7 @@ config BR2_PACKAGE_LIRC_TOOLS http://www.lirc.org/ -comment "lirc-tools needs a uClibc or (e)glibc toolchain w/ threads, dynamic library, C++" +comment "lirc-tools needs a toolchain w/ threads, dynamic library, C++" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ - || !BR2_INSTALL_LIBSTDCPP || BR2_TOOLCHAIN_USES_MUSL + || !BR2_INSTALL_LIBSTDCPP diff --git a/package/lirc-tools/lirc-tools.hash b/package/lirc-tools/lirc-tools.hash index 1acd93d164..239c7664d3 100644 --- a/package/lirc-tools/lirc-tools.hash +++ b/package/lirc-tools/lirc-tools.hash @@ -1,2 +1,3 @@ -#hash from http://sourceforge.net/projects/lirc/files/LIRC/0.9.3a/ -sha1 a6cadb916e09de068c967055b48c96d79d38f736 lirc-0.9.3a.tar.bz2 +# hash from http://sourceforge.net/projects/lirc/files/LIRC/0.9.4b/ +sha1 7cb2867de1b486708781413aa33568e0612fb912 lirc-0.9.4b.tar.bz2 +md5 9e3f2869a47bbd7c973dd63f30c13fc2 lirc-0.9.4b.tar.bz2 diff --git a/package/lirc-tools/lirc-tools.mk b/package/lirc-tools/lirc-tools.mk index 289b9ed231..bd0f96f337 100644 --- a/package/lirc-tools/lirc-tools.mk +++ b/package/lirc-tools/lirc-tools.mk @@ -4,19 +4,35 @@ # ################################################################################ -LIRC_TOOLS_VERSION = 0.9.3a +LIRC_TOOLS_VERSION = 0.9.4b LIRC_TOOLS_SOURCE = lirc-$(LIRC_TOOLS_VERSION).tar.bz2 LIRC_TOOLS_SITE = http://downloads.sourceforge.net/project/lirc/LIRC/$(LIRC_TOOLS_VERSION) LIRC_TOOLS_LICENSE = GPLv2+ LIRC_TOOLS_LICENSE_FILES = COPYING LIRC_TOOLS_DEPENDENCIES = host-libxslt host-pkgconf host-python3 LIRC_TOOLS_INSTALL_STAGING = YES -# 0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch +# 0002-configure-check-for-clock_gettime-in-librt.patch LIRC_TOOLS_AUTORECONF = YES LIRC_TOOLS_CONF_ENV = XSLTPROC=yes LIRC_TOOLS_CONF_OPTS = --without-x +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +LIRC_TOOLS_DEPENDENCIES += udev +endif + +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +LIRC_TOOLS_DEPENDENCIES += alsa-lib +endif + +ifeq ($(BR2_PACKAGE_LIBUSB_COMPAT),y) +LIRC_TOOLS_DEPENDENCIES += libusb-compat +endif + +ifeq ($(BR2_PACKAGE_PORTAUDIO),y) +LIRC_TOOLS_DEPENDENCIES += portaudio +endif + define LIRC_TOOLS_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/lirc-tools/S25lircd \ $(TARGET_DIR)/etc/init.d/S25lircd diff --git a/package/live555/live555.mk b/package/live555/live555.mk index 3ccba63d77..f36cce34c1 100644 --- a/package/live555/live555.mk +++ b/package/live555/live555.mk @@ -41,15 +41,15 @@ define LIVE555_CONFIGURE_CMDS endef define LIVE555_BUILD_CMDS - $(MAKE) -C $(@D) all + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) all endef define LIVE555_INSTALL_STAGING_CMDS - $(MAKE) DESTDIR=$(STAGING_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(STAGING_DIR) -C $(@D) install endef define LIVE555_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/ljsyscall/ljsyscall.hash b/package/ljsyscall/ljsyscall.hash new file mode 100644 index 0000000000..2d67907ab8 --- /dev/null +++ b/package/ljsyscall/ljsyscall.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9b5ba2b5798c5bc33aa2158f3b44f730de12497c195764aa1bc3d3f1244df198 ljsyscall-v0.10.tar.gz diff --git a/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch b/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch new file mode 100644 index 0000000000..d5675d39af --- /dev/null +++ b/package/lldpd/0001-build-make-generation-of-atom-glue-compatible-with-o.patch @@ -0,0 +1,43 @@ +From 106aa50d4e5b336f7dd2d5cf4d882e692d205e91 Mon Sep 17 00:00:00 2001 +From: Vincent Bernat +Date: Sat, 18 Jun 2016 22:18:41 +0200 +Subject: [PATCH] build: make generation of atom-glue compatible with older gcc + versions + +With old versions, cpp doesn't accept several files as input. See #186. + +Signed-off-by: Vivien Didelot +--- + src/lib/Makefile.am | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am +index 250e32a..2a5cdb3 100644 +--- a/src/lib/Makefile.am ++++ b/src/lib/Makefile.am +@@ -20,8 +20,9 @@ nodist_liblldpctl_la_SOURCES = atom-glue.c + liblldpctl_la_LIBADD = $(top_builddir)/src/libcommon-daemon-lib.la libfixedpoint.la + + atom-glue.c: $(ATOM_FILES) Makefile +- $(AM_V_GEN)($(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ +- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \ ++ $(AM_V_GEN)(for f in $(ATOM_FILES:%=$(srcdir)/%); do \ ++ $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \ + $(SED) -n 's+^void init_atom_builder_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \ + sort | \ + $(AWK) '{ atoms[$$2] = 1 } \ +@@ -30,8 +31,9 @@ atom-glue.c: $(ATOM_FILES) Makefile + print " static int init = 0; if (init) return; init++;"; \ + for (atom in atoms) { print " init_atom_builder_"atom"();" } \ + print "}"; }' && \ ++ for f in $(ATOM_FILES:%=$(srcdir)/%); do \ + $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ +- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \ + $(SED) -n 's+^void init_atom_map_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \ + sort -n | \ + $(AWK) '{ atoms[$$2] = 1 } \ +-- +2.9.0 + diff --git a/package/lldpd/0002-configure-do-not-check-for-libbsd.patch b/package/lldpd/0002-configure-do-not-check-for-libbsd.patch new file mode 100644 index 0000000000..4d63274526 --- /dev/null +++ b/package/lldpd/0002-configure-do-not-check-for-libbsd.patch @@ -0,0 +1,61 @@ +From 0801a066cd4a24a858ddfa7c62c7802e0f5533a8 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 14 Aug 2016 12:15:17 +0200 +Subject: [PATCH] configure: do not check for libbsd + +libbsd causes build issues because its libbsd-overlay.pc file is borked: +it contains -isystem in CFLAGS, which is not munged by pkgconf, so we +end up using the headers of the build machine, causing all sorts of +hard-to-debug trouble at build time. + +lldpd uses libbsd-overlay for a few helper functions, but has fallbacks +in case it is not available. The only feature that is lost when not using +it is that the neighbour name is no longer displayed in /proc/self/cmdline. +As the author of lldpd said on IRC: "people should survive! ;-)" + +So we just remove the detection of libbsd altogether. + +Fixes: + http://autobuild.buildroot.org/results/6b7/6b70fa379e834ec71cc260ba6af771b531ca3511/ + http://autobuild.buildroot.org/results/769/769074c4bb67336ae6679f2c1cd2a8220d2bec24/ + http://autobuild.buildroot.org/results/c8a/c8a6001f437701ecc75f6c9252935645bda8a8c8/ + [...] + +Signed-off-by: "Yann E. MORIN" +--- + configure.ac | 19 ------------------- + 1 file changed, 19 deletions(-) + +diff --git a/configure.ac b/configure.ac +index dd723b0..45498ce 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -165,25 +165,6 @@ AC_FUNC_MALLOC + AC_FUNC_REALLOC + AC_FUNC_FORK + +-# Some functions can be in libbsd +-PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [ +- _save_CFLAGS="$CFLAGS" +- _save_LIBS="$LIBS" +- CFLAGS="$CFLAGS $libbsd_CFLAGS" +- LIBS="$LIBS $libbsd_LIBS" +- AC_MSG_CHECKING([if libbsd can be linked correctly]) +- AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])], +- [ +- AC_MSG_RESULT(yes) +- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS" +- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS" +- ],[ +- AC_MSG_RESULT(no) +- CFLAGS="$_save_CFLAGS" +- LIBS="$_save_LIBS" +- ]) +-], [:]) +- + # setproctitle may have an _init function + AC_REPLACE_FUNCS([setproctitle]) + AC_CHECK_FUNCS([setproctitle_init]) +-- +2.7.4 + diff --git a/package/lldpd/S60lldpd b/package/lldpd/S60lldpd new file mode 100644 index 0000000000..3dfa6c1aa1 --- /dev/null +++ b/package/lldpd/S60lldpd @@ -0,0 +1,25 @@ +#!/bin/sh +# +# Controls lldpd. +# + +case $1 in + start) + printf "Starting lldpd: " + start-stop-daemon -S -q -p /var/run/lldpd.pid --exec /usr/sbin/lldpd + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + stop) + printf "Stopping lldpd: " + start-stop-daemon -K -q -p /var/run/lldpd.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 + ;; +esac diff --git a/package/lldpd/lldpd.hash b/package/lldpd/lldpd.hash index a6d905bd36..fc3d21f487 100644 --- a/package/lldpd/lldpd.hash +++ b/package/lldpd/lldpd.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 aac11cb1fdc037709517372c70c9bf89c752ab8e5eaab9ce140b84ed5a0507c8 lldpd-0.7.19.tar.gz +sha256 eb1f5beff2ff5c13c5e0342b5b9da815ed4a63866262445e1168a79ee65c9079 lldpd-0.9.4.tar.gz diff --git a/package/lldpd/lldpd.mk b/package/lldpd/lldpd.mk index 416967b223..349c556c14 100644 --- a/package/lldpd/lldpd.mk +++ b/package/lldpd/lldpd.mk @@ -4,11 +4,21 @@ # ################################################################################ -LLDPD_VERSION = 0.7.19 +LLDPD_VERSION = 0.9.4 LLDPD_SITE = http://media.luffy.cx/files/lldpd LLDPD_DEPENDENCIES = host-pkgconf libevent LLDPD_LICENSE = ISC LLDPD_LICENSE_FILES = README.md +# 0002-configure-do-not-check-for-libbsd.patch +LLDPD_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_CHECK),y) +LLDPD_DEPENDENCIES += check +endif + +ifeq ($(BR2_PACKAGE_VALGRIND),y) +LLDPD_DEPENDENCIES += valgrind +endif # Detection of c99 support in configure fails without WCHAR. To enable # automatic detection of c99 support by configure, we need to enable @@ -35,4 +45,9 @@ LLDPD_CONF_OPTS = \ $(if $(BR2_PACKAGE_LLDPD_DOT3),--enable-dot3,--disable-dot3) \ $(if $(BR2_PACKAGE_LLDPD_CUSTOM_TLV),--enable-custom,--disable-custom) +define LLDPD_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/lldpd/S60lldpd \ + $(TARGET_DIR)/etc/init.d/S60lldpd +endef + $(eval $(autotools-package)) diff --git a/package/lm-sensors/Config.in b/package/lm-sensors/Config.in index 7065c4cb1e..b035f5d0d5 100644 --- a/package/lm-sensors/Config.in +++ b/package/lm-sensors/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_LM_SENSORS temperature, voltage, and fan speed sensors. It works with most newer systems. - http://www.lm-sensors.org/ + https://hwmon.wiki.kernel.org if BR2_PACKAGE_LM_SENSORS comment "lm-sensors tools" diff --git a/package/lm-sensors/lm-sensors.hash b/package/lm-sensors/lm-sensors.hash index 8cbd3d1f75..eeaa633f46 100644 --- a/package/lm-sensors/lm-sensors.hash +++ b/package/lm-sensors/lm-sensors.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 e0579016081a262dd23eafe1d22b41ebde78921e73a1dcef71e05e424340061f lm_sensors-3.4.0.tar.bz2 +sha256 e0579016081a262dd23eafe1d22b41ebde78921e73a1dcef71e05e424340061f lm-sensors_3.4.0.orig.tar.bz2 diff --git a/package/lm-sensors/lm-sensors.mk b/package/lm-sensors/lm-sensors.mk index d2080d88f0..a72bba26e6 100644 --- a/package/lm-sensors/lm-sensors.mk +++ b/package/lm-sensors/lm-sensors.mk @@ -5,8 +5,8 @@ ################################################################################ LM_SENSORS_VERSION = 3.4.0 -LM_SENSORS_SOURCE = lm_sensors-$(LM_SENSORS_VERSION).tar.bz2 -LM_SENSORS_SITE = ftp://ftp.netroedge.com/pub/lm-sensors +LM_SENSORS_SOURCE = lm-sensors_$(LM_SENSORS_VERSION).orig.tar.bz2 +LM_SENSORS_SITE = http://snapshot.debian.org/archive/debian/20170208T211941Z/pool/main/l/lm-sensors LM_SENSORS_INSTALL_STAGING = YES LM_SENSORS_DEPENDENCIES = host-bison host-flex LM_SENSORS_LICENSE = libsensors LGPLv2.1+, programs GPLv2+ @@ -38,16 +38,16 @@ LM_SENSORS_MAKE_OPTS += BUILD_STATIC_LIB=1 endif define LM_SENSORS_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) $(LM_SENSORS_MAKE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) $(LM_SENSORS_MAKE_OPTS) -C $(@D) endef define LM_SENSORS_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) $(LM_SENSORS_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LM_SENSORS_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install rm -f $(addprefix $(STAGING_DIR)/usr/,$(LM_SENSORS_BINS_) $(LM_SENSORS_BINS_y)) endef define LM_SENSORS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(LM_SENSORS_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LM_SENSORS_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install rm -f $(addprefix $(TARGET_DIR)/usr/,$(LM_SENSORS_BINS_)) endef diff --git a/package/lmbench/lmbench.mk b/package/lmbench/lmbench.mk index dc758c6faf..b62096d9f8 100644 --- a/package/lmbench/lmbench.mk +++ b/package/lmbench/lmbench.mk @@ -31,11 +31,11 @@ endef # script. So the variables override below don't take direct effect in # src/Makefile. define LMBENCH_BUILD_CMDS - $(MAKE) CFLAGS="$(LMBENCH_CFLAGS)" LDLIBS="$(LMBENCH_LDLIBS)" OS=$(ARCH) CC="$(TARGET_CC)" -C $(@D)/src + $(TARGET_MAKE_ENV) $(MAKE) CFLAGS="$(LMBENCH_CFLAGS)" LDLIBS="$(LMBENCH_LDLIBS)" OS=$(ARCH) CC="$(TARGET_CC)" -C $(@D)/src endef define LMBENCH_INSTALL_TARGET_CMDS - $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC="$(TARGET_CC)" BASE=$(TARGET_DIR)/usr -C $(@D)/src install + $(TARGET_MAKE_ENV) $(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC="$(TARGET_CC)" BASE=$(TARGET_DIR)/usr -C $(@D)/src install endef $(eval $(generic-package)) diff --git a/package/log4cpp/0001-Fix-musl-compile.patch b/package/log4cpp/0001-Fix-musl-compile.patch new file mode 100644 index 0000000000..f1a13a072c --- /dev/null +++ b/package/log4cpp/0001-Fix-musl-compile.patch @@ -0,0 +1,34 @@ +From 17562259fb6684f351a70b98b4f3b438927ba1aa Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 11 Jul 2016 22:58:31 +0200 +Subject: [PATCH] Fix musl compile. + +Include proper config.h (via log4cpp/Portability.hh) to fix the +evaluate of LOG4CPP_HAVE_STDINT_H in the file tests/Clock.hh + +Fixes: + + Clock.hh:17:13: error: 'int64_t' does not name a type + typedef int64_t usec_t; + +Signed-off-by: Peter Seiderer +--- + log4cpp/tests/Clock.hh | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/log4cpp/tests/Clock.hh b/log4cpp/tests/Clock.hh +index 4bf0ca4..45c6467 100644 +--- a/log4cpp/tests/Clock.hh ++++ b/log4cpp/tests/Clock.hh +@@ -6,6 +6,8 @@ + #ifndef __CLOCK_H + #define __CLOCK_H + ++#include ++ + #ifdef LOG4CPP_HAVE_STDINT_H + #include + #endif // LOG4CPP_HAVE_STDINT_H +-- +2.8.1 + diff --git a/package/log4cpp/Config.in b/package/log4cpp/Config.in new file mode 100755 index 0000000000..090bf565f4 --- /dev/null +++ b/package/log4cpp/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LOG4CPP + bool "log4cpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Log4cpp is library of C++ classes for flexible logging to + files, syslog, IDSA and other destinations. It is modeled + after the Log4j Java library, staying as close to their API + as is reasonable. + + http://log4cpp.sourceforge.net/ + +comment "log4cpp needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/log4cpp/log4cpp.hash b/package/log4cpp/log4cpp.hash new file mode 100755 index 0000000000..6467aabfd9 --- /dev/null +++ b/package/log4cpp/log4cpp.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/log4cpp/files/log4cpp-1.1.x%20%28new%29/log4cpp-1.1/ +md5 1e173df8ee97205f412ff84aa93b8fbe log4cpp-1.1.1.tar.gz +sha1 23aa5bd7d6f79992c92bad3e1c6d64a34f8fcf68 log4cpp-1.1.1.tar.gz diff --git a/package/log4cpp/log4cpp.mk b/package/log4cpp/log4cpp.mk new file mode 100755 index 0000000000..df7109b227 --- /dev/null +++ b/package/log4cpp/log4cpp.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# log4cpp +# +################################################################################ + +LOG4CPP_VERSION_MAJOR = 1.1 +LOG4CPP_VERSION = $(LOG4CPP_VERSION_MAJOR).1 +LOG4CPP_SITE = http://downloads.sourceforge.net/project/log4cpp/log4cpp-1.1.x%20%28new%29/log4cpp-$(LOG4CPP_VERSION_MAJOR) +LOG4CPP_SUBDIR = log4cpp +# The "or later" is indicated in the HTML documentation +LOG4CPP_LICENSE = LGPLv2.1+ +LOG4CPP_LICENSE_FILES = log4cpp/COPYING +LOG4CPP_INSTALL_STAGING = YES +LOG4CPP_CONF_OPTS = --enable-doxygen=no --enable-dot=no + +# The default _CONFIG_SCRIPTS handling does not apply +define LOG4CPP_STAGING_CONFIG_SCRIPT_FIXUP + $(SED) 's,prefix="/usr",prefix="$(STAGING_DIR)/usr",' \ + -e 's,exec_prefix="/usr",prefix="$(STAGING_DIR)/usr",' \ + $(STAGING_DIR)/usr/bin/log4cpp-config +endef + +LOG4CPP_POST_INSTALL_STAGING_HOOKS += LOG4CPP_STAGING_CONFIG_SCRIPT_FIXUP + +define LOG4CPP_TARGET_CONFIG_SCRIPT_REMOVE + $(RM) $(TARGET_DIR)/usr/bin/log4cpp-config +endef + +LOG4CPP_POST_INSTALL_TARGET_HOOKS += LOG4CPP_TARGET_CONFIG_SCRIPT_REMOVE + +$(eval $(autotools-package)) diff --git a/package/log4cxx/0004-Applied-patch-for-LOGCXX-400-LOGCXX-404-LOGCXX-402-L.patch b/package/log4cxx/0004-Applied-patch-for-LOGCXX-400-LOGCXX-404-LOGCXX-402-L.patch new file mode 100644 index 0000000000..a0c9b3f5bd --- /dev/null +++ b/package/log4cxx/0004-Applied-patch-for-LOGCXX-400-LOGCXX-404-LOGCXX-402-L.patch @@ -0,0 +1,180 @@ +From 5b75dfa78b2c5e95296cee0201bc045ef7264ed0 Mon Sep 17 00:00:00 2001 +From: Christian Grobmeier +Date: Tue, 27 Nov 2012 09:39:18 +0000 +Subject: [PATCH] Applied patch for LOGCXX-400 LOGCXX-404 LOGCXX-402 LOGCXX-403 + LOGCXX-401 thanks to Andrew Lazarus + +git-svn-id: https://svn.apache.org/repos/asf/logging/log4cxx/trunk@1414037 13f79535-47bb-0310-9956-ffa450edef68 +Signed-off-by: Peter Korsgaard +--- + pom.xml | 2 ++ + src/main/cpp/locationinfo.cpp | 4 ++-- + src/main/cpp/loggingevent.cpp | 2 +- + src/main/cpp/ndc.cpp | 4 ++-- + src/main/cpp/objectoutputstream.cpp | 4 ++-- + src/main/cpp/transcoder.cpp | 2 +- + src/main/include/log4cxx/helpers/object.h | 6 +++--- + src/main/include/log4cxx/helpers/simpledateformat.h | 4 +++- + src/main/include/log4cxx/logstring.h | 2 +- + 9 files changed, 17 insertions(+), 13 deletions(-) + +diff --git a/pom.xml b/pom.xml +index 3504c8a3..255907bd 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -55,6 +55,7 @@ + + + ++ + + maven-assembly-plugin + +diff --git a/src/main/cpp/locationinfo.cpp b/src/main/cpp/locationinfo.cpp +index e76ea29c..1daa3a5f 100644 +--- a/src/main/cpp/locationinfo.cpp ++++ b/src/main/cpp/locationinfo.cpp +@@ -153,8 +153,8 @@ void LocationInfo::write(ObjectOutputStream& os, Pool& p) const { + 0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2E, 0x6C, + 0x6F, 0x67, 0x34, 0x6A, 0x2E, 0x73, 0x70, 0x69, + 0x2E, 0x4C, 0x6F, 0x63, 0x61, 0x74, 0x69, 0x6F, +- 0x6E, 0x49, 0x6E, 0x66, 0x6F, 0xED, 0x99, 0xBB, +- 0xE1, 0x4A, 0x91, 0xA5, 0x7C, 0x02, 0x00, 0x01, ++ 0x6E, 0x49, 0x6E, 0x66, 0x6F, static_cast(0xED), static_cast(0x99), static_cast(0xBB), ++ static_cast(0xE1), 0x4A, static_cast(0x91), static_cast(0xA5), 0x7C, 0x02, 0x00, 0x01, + 0x4C, 0x00, 0x08, 0x66, 0x75, 0x6C, 0x6C, 0x49, + 0x6E, 0x66, 0x6F, + 0x74, 0x00, 0x12, 0x4C, 0x6A, +diff --git a/src/main/cpp/loggingevent.cpp b/src/main/cpp/loggingevent.cpp +index 1c0d4be7..edbf40b6 100644 +--- a/src/main/cpp/loggingevent.cpp ++++ b/src/main/cpp/loggingevent.cpp +@@ -242,7 +242,7 @@ void LoggingEvent::writeProlog(ObjectOutputStream& os, Pool& p) { + 0x68, 0x65, 0x2E, 0x6C, 0x6F, 0x67, 0x34, 0x6A, + 0x2E, 0x73, 0x70, 0x69, 0x2E, 0x4C, 0x6F, 0x67, + 0x67, 0x69, 0x6E, 0x67, 0x45, 0x76, 0x65, 0x6E, +- 0x74, 0xF3, 0xF2, 0xB9, 0x23, 0x74, 0x0B, 0xB5, ++ 0x74, static_cast(0xF3), static_cast(0xF2), static_cast(0xB9), 0x23, 0x74, 0x0B, static_cast(0xB5), + 0x3F, 0x03, 0x00, 0x0A, 0x5A, 0x00, 0x15, 0x6D, + 0x64, 0x63, 0x43, 0x6F, 0x70, 0x79, 0x4C, 0x6F, + 0x6F, 0x6B, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, +diff --git a/src/main/cpp/ndc.cpp b/src/main/cpp/ndc.cpp +index 4ab612dd..89788c16 100644 +--- a/src/main/cpp/ndc.cpp ++++ b/src/main/cpp/ndc.cpp +@@ -309,7 +309,7 @@ bool NDC::pop(CFStringRef& dst) + Stack& stack = data->getStack(); + if(!stack.empty()) + { +- dst = Transcoder::encode(stack.top().message); ++ dst = Transcoder::encode(getMessage(stack.top())); + stack.pop(); + data->recycle(); + return true; +@@ -326,7 +326,7 @@ bool NDC::peek(CFStringRef& dst) + Stack& stack = data->getStack(); + if(!stack.empty()) + { +- dst = Transcoder::encode(stack.top().message); ++ dst = Transcoder::encode(getMessage(stack.top())); + return true; + } + data->recycle(); +diff --git a/src/main/cpp/objectoutputstream.cpp b/src/main/cpp/objectoutputstream.cpp +index 7cd696b8..9567a856 100644 +--- a/src/main/cpp/objectoutputstream.cpp ++++ b/src/main/cpp/objectoutputstream.cpp +@@ -36,7 +36,7 @@ ObjectOutputStream::ObjectOutputStream(OutputStreamPtr outputStream, Pool& p) + objectHandle(0x7E0000), + classDescriptions(new ClassDescriptionMap()) + { +- char start[] = { 0xAC, 0xED, 0x00, 0x05 }; ++ char start[] = { static_cast(0xAC), static_cast(0xED), 0x00, 0x05 }; + ByteBuffer buf(start, sizeof(start)); + os->write(buf, p); + } +@@ -85,7 +85,7 @@ void ObjectOutputStream::writeObject(const MDC::Map& val, Pool& p) { + 0x72, 0x00, 0x13, 0x6A, 0x61, 0x76, 0x61, + 0x2E, 0x75, 0x74, 0x69, 0x6C, 0x2E, 0x48, 0x61, + 0x73, 0x68, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x13, +- 0xBB, 0x0F, 0x25, 0x21, 0x4A, 0xE4, 0xB8, 0x03, ++ static_cast(0xBB), 0x0F, 0x25, 0x21, 0x4A, static_cast(0xE4), static_cast(0xB8), 0x03, + 0x00, 0x02, 0x46, 0x00, 0x0A, 0x6C, 0x6F, 0x61, + 0x64, 0x46, 0x61, 0x63, 0x74, 0x6F, 0x72, 0x49, + 0x00, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, +diff --git a/src/main/cpp/transcoder.cpp b/src/main/cpp/transcoder.cpp +index d572ffce..32bed844 100644 +--- a/src/main/cpp/transcoder.cpp ++++ b/src/main/cpp/transcoder.cpp +@@ -356,7 +356,7 @@ static void encodeUTF16(unsigned int sv, String& dst) { + unsigned char u = (unsigned char) (sv >> 16); + unsigned char w = (unsigned char) (u - 1); + unsigned short hs = (0xD800 + ((w & 0xF) << 6) + ((sv & 0xFFFF) >> 10)); +- unsigned short ls = (0xDC00 + (sv && 0x3FF)); ++ unsigned short ls = (0xDC00 + (sv & 0x3FF)); + dst.append(1, hs); + dst.append(1, ls); + } +diff --git a/src/main/include/log4cxx/helpers/object.h b/src/main/include/log4cxx/helpers/object.h +index 92d44c55..b9386c47 100644 +--- a/src/main/include/log4cxx/helpers/object.h ++++ b/src/main/include/log4cxx/helpers/object.h +@@ -61,8 +61,8 @@ static const helpers::Class& getStaticClass();\ + static const log4cxx::helpers::ClassRegistration& registerClass(); + + #define IMPLEMENT_LOG4CXX_OBJECT(object)\ +-const log4cxx::helpers::Class& object::getClass() const { return getStaticClass(); }\ +-const log4cxx::helpers::Class& object::getStaticClass() { \ ++const ::log4cxx::helpers::Class& object::getClass() const { return getStaticClass(); }\ ++const ::log4cxx::helpers::Class& object::getStaticClass() { \ + static Clazz##object theClass; \ + return theClass; \ + } \ +@@ -71,7 +71,7 @@ const log4cxx::helpers::ClassRegistration& object::registerClass() { \ + return classReg; \ + }\ + namespace log4cxx { namespace classes { \ +-const log4cxx::helpers::ClassRegistration& object##Registration = object::registerClass(); \ ++const ::log4cxx::helpers::ClassRegistration& object##Registration = object::registerClass(); \ + } } + + +diff --git a/src/main/include/log4cxx/helpers/simpledateformat.h b/src/main/include/log4cxx/helpers/simpledateformat.h +index 9c27f685..76fb784c 100644 +--- a/src/main/include/log4cxx/helpers/simpledateformat.h ++++ b/src/main/include/log4cxx/helpers/simpledateformat.h +@@ -29,7 +29,9 @@ + #include + #include + +-namespace std { class locale; } ++#include ++ ++using std::locale; + + namespace log4cxx + { +diff --git a/src/main/include/log4cxx/logstring.h b/src/main/include/log4cxx/logstring.h +index 3bbcdf2d..19e8aec7 100644 +--- a/src/main/include/log4cxx/logstring.h ++++ b/src/main/include/log4cxx/logstring.h +@@ -27,7 +27,7 @@ + #include + #include + +-#if LOG4CXX_LOGCHAR_IS_WCHAR && LOG4CXX_LOGCHAR_IS_UTF8 && LOG4CXX_LOGCHAR_IS_UNICHAR ++#if (LOG4CXX_LOGCHAR_IS_WCHAR + LOG4CXX_LOGCHAR_IS_UTF8 + LOG4CXX_LOGCHAR_IS_UNICHAR)>1 + #error only one of LOG4CXX_LOGCHAR_IS_WCHAR, LOG4CXX_LOGCHAR_IS_UTF8 or LOG4CXX_LOGCHAR_IS_UNICHAR may be true + #endif + +-- +2.11.0 + diff --git a/package/log4cxx/0005-domtestcase.cpp-fix-narrowing-conversion-compile-err.patch b/package/log4cxx/0005-domtestcase.cpp-fix-narrowing-conversion-compile-err.patch new file mode 100644 index 0000000000..b3f43bfd7c --- /dev/null +++ b/package/log4cxx/0005-domtestcase.cpp-fix-narrowing-conversion-compile-err.patch @@ -0,0 +1,36 @@ +From afc191aec355619d6ebabb2cad660a5a8ad4569b Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Mon, 30 Jan 2017 23:13:43 +0100 +Subject: [PATCH] domtestcase.cpp: fix narrowing conversion compile error with + gcc 6+ / signed char + +Signed-off-by: Peter Korsgaard +--- + src/test/cpp/xml/domtestcase.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/test/cpp/xml/domtestcase.cpp b/src/test/cpp/xml/domtestcase.cpp +index ad276d1a..2a1e6e2e 100644 +--- a/src/test/cpp/xml/domtestcase.cpp ++++ b/src/test/cpp/xml/domtestcase.cpp +@@ -190,7 +190,7 @@ public: + DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase3.xml")); + LOG4CXX_INFO(logger, "File name is expected to end with a superscript 3") + #if LOG4CXX_LOGCHAR_IS_UTF8 +- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xC2, 0xB3, 0 }; ++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast(0xC2), static_cast(0xB3), 0 }; + #else + const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xB3, 0 }; + #endif +@@ -209,7 +209,7 @@ public: + DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase4.xml")); + LOG4CXX_INFO(logger, "File name is expected to end with an ideographic 4") + #if LOG4CXX_LOGCHAR_IS_UTF8 +- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xE3, 0x86, 0x95, 0 }; ++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast(0xE3), static_cast(0x86), static_cast(0x95), 0 }; + #else + const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0x3195, 0 }; + #endif +-- +2.11.0 + diff --git a/package/log4cxx/Config.in b/package/log4cxx/Config.in index 40c7df9220..6ec67b62ef 100644 --- a/package/log4cxx/Config.in +++ b/package/log4cxx/Config.in @@ -11,7 +11,7 @@ config BR2_PACKAGE_LOG4CXX Apache log4cxx is a logging framework for C++ patterned after Apache log4j. - http://apache.linux-mirror.org/logging/log4cxx/0.10.0 + https://logging.apache.org/log4cxx/ comment "log4cxx needs a toolchain w/ C++, threads, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ diff --git a/package/logrotate/0001-make-autoreconfable.patch b/package/logrotate/0001-make-autoreconfable.patch deleted file mode 100644 index 89759d07fe..0000000000 --- a/package/logrotate/0001-make-autoreconfable.patch +++ /dev/null @@ -1,20 +0,0 @@ -Make the package autoreconfigurable - -Adjust a minor detail in configure.ac in order to make the package -compatible with the autoconf/automake versions we are using in -Buildroot. - -Signed-off-by: Benoît Thébaudeau - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -1,6 +1,6 @@ - AC_INIT([logrotate],[3.8.9]) - --AM_INIT_AUTOMAKE -+AM_INIT_AUTOMAKE([foreign]) - AC_DEFINE(_GNU_SOURCE) - - AM_EXTRA_RECURSIVE_TARGETS([test]) diff --git a/package/logrotate/logrotate.hash b/package/logrotate/logrotate.hash index ef537a9556..4985a17a87 100644 --- a/package/logrotate/logrotate.hash +++ b/package/logrotate/logrotate.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 700ed7ce9072a1cca324779a74797dfaefdae37ac50a817134b947c4ded1dfa7 logrotate-3.8.9.tar.gz +sha256 62aa0229cfd34c7b6ea6a6736d569983bf4a3dd1f3c9e9c2efe2ffe2a0a55cf2 logrotate-3.11.0.tar.gz diff --git a/package/logrotate/logrotate.mk b/package/logrotate/logrotate.mk index 4a70040279..5fd779e644 100644 --- a/package/logrotate/logrotate.mk +++ b/package/logrotate/logrotate.mk @@ -4,15 +4,21 @@ # ################################################################################ -LOGROTATE_VERSION = 3.8.9 -LOGROTATE_SITE = https://www.fedorahosted.org/releases/l/o/logrotate +LOGROTATE_VERSION = 3.11.0 +LOGROTATE_SITE = $(call github,logrotate,logrotate,$(LOGROTATE_VERSION)) LOGROTATE_LICENSE = GPLv2+ LOGROTATE_LICENSE_FILES = COPYING LOGROTATE_DEPENDENCIES = popt host-pkgconf # tarball does not have a generated configure script LOGROTATE_AUTORECONF = YES LOGROTATE_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs popt`" -LOGROTATE_CONF_OPTS = --without-selinux + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +LOGROTATE_CONF_OPTS += --with-selinux +LOGROTATE_DEPENDENCIES += libselinux +else +LOGROTATE_CONF_OPTS += --without-selinux +endif ifeq ($(BR2_PACKAGE_ACL),y) LOGROTATE_DEPENDENCIES += acl diff --git a/package/lpc3250loader/lpc3250loader.hash b/package/lpc3250loader/lpc3250loader.hash new file mode 100644 index 0000000000..4f9dbc4e04 --- /dev/null +++ b/package/lpc3250loader/lpc3250loader.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 267de7541c92e5b007b93c660a41188976d531a3757f4ffd9b7142d3994da7d1 lpc3250loader-1.0.tar.gz diff --git a/package/lrzsz/lrzsz.mk b/package/lrzsz/lrzsz.mk index 453ef6250d..a283dd1a30 100644 --- a/package/lrzsz/lrzsz.mk +++ b/package/lrzsz/lrzsz.mk @@ -16,7 +16,7 @@ define LRZSZ_POST_CONFIGURE_HOOKS endef define LRZSZ_BUILD_HOOKS - $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" prefix="$(TARGET_DIR)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" prefix="$(TARGET_DIR)" -C $(@D) endef define LRZSZ_INSTALL_TARGET_CMDS diff --git a/package/lshw/0001-Makefile-allow-to-pass-additional-LIBS.patch b/package/lshw/0001-Makefile-allow-to-pass-additional-LIBS.patch new file mode 100644 index 0000000000..7720124369 --- /dev/null +++ b/package/lshw/0001-Makefile-allow-to-pass-additional-LIBS.patch @@ -0,0 +1,44 @@ +From 5af98ca8135ac411364b16720d795224a9b4a178 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Sat, 30 Jul 2016 15:15:14 +0200 +Subject: [PATCH] Makefile: allow to pass additional LIBS + +We need to be able to pass extra LIBS when our toolchain lacks NLS +support, this way we can build libintl and link to it. A good example +is uClibc with locale support disabled. + +Signed-off-by: Gustavo Zacarias +--- + src/Makefile | 2 +- + src/gui/Makefile | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/Makefile b/src/Makefile +index b50586b..acbdbfa 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -30,7 +30,7 @@ ifneq ($(shell $(LD) --help 2| grep -- --as-needed), ) + LDFLAGS+= -Wl,--as-needed + endif + LDSTATIC=-static +-LIBS=-llshw -lresolv ++LIBS+=-llshw -lresolv + ifeq ($(SQLITE), 1) + LIBS+= $(shell pkg-config --libs sqlite3) + endif +diff --git a/src/gui/Makefile b/src/gui/Makefile +index 332ce57..7f72e3f 100644 +--- a/src/gui/Makefile ++++ b/src/gui/Makefile +@@ -11,7 +11,7 @@ INCLUDES=-I../core $(GTKINCLUDES) + CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS) + CFLAGS=$(CXXFLAGS) $(DEFINES) + GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs) +-LIBS=-L../core -llshw -lresolv $(GTKLIBS) ++LIBS+=-L../core -llshw -lresolv $(GTKLIBS) + LDFLAGS= + ifneq ($(shell $(LD) --help 2| grep -- --as-needed), ) + LDFLAGS+= -Wl,--as-needed +-- +2.7.4 + diff --git a/package/lshw/0001-add-LIBS.patch b/package/lshw/0001-add-LIBS.patch deleted file mode 100644 index 70b2a5b68f..0000000000 --- a/package/lshw/0001-add-LIBS.patch +++ /dev/null @@ -1,30 +0,0 @@ -We need to be able to pass extra LIBS when our toolchain lacks NLS support, -this way we can build libintl and link to it. -A good example is uClibc with locale support disabled. - -Signed-off-by: Gustavo Zacarias - -diff -Nura lshw-B.02.16.orig/src/gui/Makefile lshw-B.02.16/src/gui/Makefile ---- lshw-B.02.16.orig/src/gui/Makefile 2012-05-28 12:32:49.303885759 -0300 -+++ lshw-B.02.16/src/gui/Makefile 2012-05-28 12:33:33.850206001 -0300 -@@ -11,7 +11,7 @@ - CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS) - CFLAGS=$(CXXFLAGS) $(DEFINES) - GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs) --LIBS=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS) -+LIBS+=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS) - LDFLAGS= - ifneq ($(shell $(LD) --help 2| grep -- --as-needed), ) - LDFLAGS+= -Wl,--as-needed -diff -Nura lshw-B.02.16.orig/src/Makefile lshw-B.02.16/src/Makefile ---- lshw-B.02.16.orig/src/Makefile 2012-05-28 12:32:49.292885680 -0300 -+++ lshw-B.02.16/src/Makefile 2012-05-28 12:33:24.530139060 -0300 -@@ -30,7 +30,7 @@ - LDFLAGS+= -Wl,--as-needed - endif - LDSTATIC=-static --LIBS=-llshw -lresolv -+LIBS+=-llshw -lresolv - ifeq ($(SQLITE), 1) - LIBS+= $(shell pkg-config --libs sqlite3) - endif diff --git a/package/lshw/0002-Fix-musl-build-basename-is-in-libgen.h.patch b/package/lshw/0002-Fix-musl-build-basename-is-in-libgen.h.patch new file mode 100644 index 0000000000..d80c62a120 --- /dev/null +++ b/package/lshw/0002-Fix-musl-build-basename-is-in-libgen.h.patch @@ -0,0 +1,78 @@ +From 016bdb133a44bdf42c268ff72ee7aa04af19cfd3 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Sat, 27 Aug 2016 01:11:56 +0200 +Subject: [PATCH] Fix musl build: basename() is in libgen.h. + +Also, its argument is not const, so add const_cast. This is risky +because in fact basename() will modify the argument if it ends with / +but that's not the case here. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + src/core/dasd.cc | 1 + + src/core/sysfs.cc | 9 +++++---- + 2 files changed, 6 insertions(+), 4 deletions(-) + +diff --git a/src/core/dasd.cc b/src/core/dasd.cc +index 626b8a8..6276101 100644 +--- a/src/core/dasd.cc ++++ b/src/core/dasd.cc +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + + using namespace std; + +diff --git a/src/core/sysfs.cc b/src/core/sysfs.cc +index acc9d00..bdd69e3 100644 +--- a/src/core/sysfs.cc ++++ b/src/core/sysfs.cc +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + + __ID("@(#) $Id$"); + +@@ -99,7 +100,7 @@ static string sysfs_getbustype(const string & path) + { + devname = + string(fs.path + "/bus/") + string(namelist[i]->d_name) + +- "/devices/" + basename(path.c_str()); ++ "/devices/" + basename(const_cast(path.c_str())); + + if (samefile(devname, path)) + return string(namelist[i]->d_name); +@@ -139,7 +140,7 @@ static string sysfstobusinfo(const string & path) + + if (bustype == "virtio") + { +- string name = basename(path.c_str()); ++ string name = basename(const_cast(path.c_str())); + if (name.compare(0, 6, "virtio") == 0) + return "virtio@" + name.substr(6); + else +@@ -207,7 +208,7 @@ string entry::driver() const + string driverlink = This->devpath + "/driver"; + if (!exists(driverlink)) + return ""; +- return basename(readlink(driverlink).c_str()); ++ return basename(const_cast(readlink(driverlink).c_str())); + } + + +@@ -288,7 +289,7 @@ string entry::name_in_class(const string & classname) const + + string entry::name() const + { +- return basename(This->devpath.c_str()); ++ return basename(const_cast(This->devpath.c_str())); + } + + +-- +2.9.3 + diff --git a/package/lshw/0003-Fix-use-of-LONG_BIT.patch b/package/lshw/0003-Fix-use-of-LONG_BIT.patch new file mode 100644 index 0000000000..7d8d739452 --- /dev/null +++ b/package/lshw/0003-Fix-use-of-LONG_BIT.patch @@ -0,0 +1,36 @@ +From 50284ac4400ac3d7562f4765726492caee8ff547 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Sat, 27 Aug 2016 01:15:13 +0200 +Subject: [PATCH] Fix use of LONG_BIT + +LONG_BIT is not a sysconf value, it is either 32 or 64. Using it as +a sysconf value will give weird results. + +Originally it was sysconf(_SC_LONG_BIT) (before it was "fixed" by the +gentoo guys). But this is useless: it will always return a value +equal to LONG_BIT: it's either compiled 32-bit or 64-bit so a runtime +lookup doesn't make sense. For this reason, musl has removed the +definition of _SC_LONG_BIT. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + src/core/abi.cc | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/core/abi.cc b/src/core/abi.cc +index 76e5082..a13daaa 100644 +--- a/src/core/abi.cc ++++ b/src/core/abi.cc +@@ -19,8 +19,7 @@ __ID("@(#) $Id: mem.cc 1352 2006-05-27 23:54:13Z ezix $"); + + bool scan_abi(hwNode & system) + { +- // are we compiled as 32- or 64-bit process ? +- system.setWidth(sysconf(LONG_BIT)); ++ system.setWidth(LONG_BIT); + + pushd(PROC_SYS); + +-- +2.9.3 + diff --git a/package/lshw/lshw.hash b/package/lshw/lshw.hash index 8dfc7d3e4d..0694229cf5 100644 --- a/package/lshw/lshw.hash +++ b/package/lshw/lshw.hash @@ -1,5 +1,2 @@ # Locally calculated -sha256 eb9cc053fa0f1e78685cb695596e73931bfb55d2377e3bc3b8b94aff4c5a489c lshw-B.02.17.tar.gz -sha256 2e5a3d63da8475db17fd90969bcb1930cf19d2b8da7be41edeea5c2a53878382 no-private-uint.patch -sha256 c8365f7ac8fc7a751c78d89ab446111bb1a235bc977a1b21e1b826c2e62361d1 basename-limits-long-bits.patch -sha256 9eba284061574e02a6b162ab20dff07c48693e00f781220ee974ba5c90d1cca9 988f5449791ebf869ab9fa7520463dab4eae3404.patch +sha256 ae22ef11c934364be4fd2a0a1a7aadf4495a0251ec6979da280d342a89ca3c2f lshw-B.02.18.tar.gz diff --git a/package/lshw/lshw.mk b/package/lshw/lshw.mk index e8e67e2cb2..32c0bc0d69 100644 --- a/package/lshw/lshw.mk +++ b/package/lshw/lshw.mk @@ -4,12 +4,8 @@ # ################################################################################ -LSHW_VERSION = B.02.17 +LSHW_VERSION = B.02.18 LSHW_SITE = http://ezix.org/software/files -LSHW_PATCH = \ - http://git.alpinelinux.org/cgit/aports/plain/testing/lshw/basename-limits-long-bits.patch \ - http://git.alpinelinux.org/cgit/aports/plain/testing/lshw/no-private-uint.patch \ - https://github.com/lyonel/lshw/commit/988f5449791ebf869ab9fa7520463dab4eae3404.patch LSHW_LICENSE = GPLv2 LSHW_LICENSE_FILES = COPYING @@ -20,7 +16,9 @@ endif LSHW_MAKE_OPTS = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" AR="$(TARGET_AR)" \ RPM_OPT_FLAGS="$(LSHW_CFLAGS)" all -LSHW_MAKE_ENV = LIBS="$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)" +LSHW_MAKE_ENV = \ + $(TARGET_MAKE_ENV) \ + LIBS="$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)" LSHW_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) define LSHW_BUILD_CMDS diff --git a/package/lsof/Config.in b/package/lsof/Config.in index 7b7e47d65c..c27cc8160a 100644 --- a/package/lsof/Config.in +++ b/package/lsof/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_LSOF bool "lsof" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help lsof (LiSt Open Files) The lsof tool lists information about files opened by diff --git a/package/lsof/lsof.mk b/package/lsof/lsof.mk index 312d834b03..e5cd4bce6e 100644 --- a/package/lsof/lsof.mk +++ b/package/lsof/lsof.mk @@ -47,7 +47,7 @@ define LSOF_CONFIGURE_CMDS endef define LSOF_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) DEBUG="$(TARGET_CFLAGS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) DEBUG="$(TARGET_CFLAGS)" -C $(@D) endef define LSOF_INSTALL_TARGET_CMDS diff --git a/package/lsqlite3/lsqlite3.hash b/package/lsqlite3/lsqlite3.hash index 23273bbf91..7cf0358d11 100644 --- a/package/lsqlite3/lsqlite3.hash +++ b/package/lsqlite3/lsqlite3.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 b49b5941af92a6e7834a45f76dba1f6ea8f817cda373655f59c9da78416d1dfc lsqlite3-0.9.3-0.src.rock +sha256 e6eb64a7ca3727c3093f3c37341d8ecadf9eac913e468eae413828476b19c225 lsqlite3-0.9.4-2.src.rock diff --git a/package/lsqlite3/lsqlite3.mk b/package/lsqlite3/lsqlite3.mk index db65ae530f..6f6445d934 100644 --- a/package/lsqlite3/lsqlite3.mk +++ b/package/lsqlite3/lsqlite3.mk @@ -4,8 +4,8 @@ # ################################################################################ -LSQLITE3_VERSION = 0.9.3-0 -LSQLITE3_SUBDIR = lsqlite3_fsl09w +LSQLITE3_VERSION = 0.9.4-2 +LSQLITE3_SUBDIR = lsqlite3_fsl09x LSQLITE3_DEPENDENCIES = sqlite LSQLITE3_LICENSE = MIT diff --git a/package/ltp-testsuite/0001-fix-uClibc-build.patch b/package/ltp-testsuite/0001-fix-uClibc-build.patch deleted file mode 100644 index 231bc83324..0000000000 --- a/package/ltp-testsuite/0001-fix-uClibc-build.patch +++ /dev/null @@ -1,51 +0,0 @@ -O_DIRECTORY is only available if _GNU_SOURCE is defined - -https://github.com/linux-test-project/ltp/pull/58 - -Signed-off-by: Waldemar Brodkorb - -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify01.c ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify01.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify01.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify01.c 2016-03-05 00:55:02.977264913 +0100 -@@ -25,6 +25,7 @@ - * DESCRIPTION - * Check that fanotify work for a file - */ -+#define _GNU_SOURCE - #include "config.h" - - #include -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify02.c ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify02.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify02.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify02.c 2016-03-05 00:54:44.600558612 +0100 -@@ -25,6 +25,7 @@ - * DESCRIPTION - * Check that fanotify work for children of a directory - */ -+#define _GNU_SOURCE - #include "config.h" - - #include -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify03.c ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify03.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify03.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify03.c 2016-03-05 00:55:13.917685403 +0100 -@@ -25,6 +25,7 @@ - * DESCRIPTION - * Check that fanotify permission events work - */ -+#define _GNU_SOURCE - #include "config.h" - - #include -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify04.c ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify04.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/fanotify/fanotify04.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/fanotify/fanotify04.c 2016-03-05 00:55:24.530093286 +0100 -@@ -25,6 +25,8 @@ - * DESCRIPTION - * Check various fanotify special flags - */ -+ -+#define _GNU_SOURCE - #include "config.h" - - #include diff --git a/package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch b/package/ltp-testsuite/0001-rpc-tirpc-disable-tirpc_auth_authdes_-create-tests.patch similarity index 78% rename from package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch rename to package/ltp-testsuite/0001-rpc-tirpc-disable-tirpc_auth_authdes_-create-tests.patch index f69b364efe..344ba4ae94 100644 --- a/package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch +++ b/package/ltp-testsuite/0001-rpc-tirpc-disable-tirpc_auth_authdes_-create-tests.patch @@ -1,4 +1,7 @@ -rpc-tirpc: disable tirpc_auth_authdes_*create tests +From 9bbadb7ece1b068465279e7248b3439d443054a6 Mon Sep 17 00:00:00 2001 +From: Erico Nunes +Date: Fri, 30 Sep 2016 17:43:08 +0200 +Subject: [PATCH] rpc-tirpc: disable tirpc_auth_authdes_*create tests Due to Buildroot patch 0007-Disable-DES-authentification-support.patch on libtirpc, this library is built without method authdes_create. Any code @@ -9,6 +12,8 @@ just disable the problematic tests. Upstream-status: not applicable Signed-off-by: Thomas De Schampheleire +[Erico: Rebase for ltp 20160920] +Signed-off-by: Erico Nunes --- testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile | 4 ++++ 1 file changed, 4 insertions(+) @@ -27,5 +32,5 @@ index 45bc8a6..c04a088 100644 + include $(top_srcdir)/include/mk/generic_trunk_target.mk -- -1.9.5 +2.7.4 diff --git a/package/ltp-testsuite/0002-uClibc-ng-has-no-profil-support.patch b/package/ltp-testsuite/0002-uClibc-ng-has-no-profil-support.patch new file mode 100644 index 0000000000..c1496037c1 --- /dev/null +++ b/package/ltp-testsuite/0002-uClibc-ng-has-no-profil-support.patch @@ -0,0 +1,39 @@ +From 4ab7dc5fd201318e2a62dbd3ba1680b97034ec65 Mon Sep 17 00:00:00 2001 +From: Erico Nunes +Date: Fri, 30 Sep 2016 17:45:03 +0200 +Subject: [PATCH] uClibc-ng has no profil() support + +Signed-off-by: Waldemar Brodkorb +[Erico: Rebase for ltp 20160920] +Signed-off-by: Erico Nunes +--- + testcases/kernel/syscalls/profil/profil01.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/testcases/kernel/syscalls/profil/profil01.c b/testcases/kernel/syscalls/profil/profil01.c +index 2fc47aa..f8afd57 100644 +--- a/testcases/kernel/syscalls/profil/profil01.c ++++ b/testcases/kernel/syscalls/profil/profil01.c +@@ -37,6 +37,9 @@ + #define PROFIL_BUFLEN (32*1024) + + char *TCID = "profil01"; ++ ++#if !defined(__UCLIBC__) ++ + int TST_TOTAL = 1; + + static volatile sig_atomic_t profil_done; +@@ -124,3 +127,9 @@ int main(int ac, char *av[]) + + tst_exit(); + } ++#else /* systems that dont support profil */ ++int main(void) ++{ ++ tst_brkm(TCONF, NULL, "system doesn't have profil support"); ++} ++#endif +-- +2.7.4 + diff --git a/package/ltp-testsuite/0003-disable-profil-on-uClibc.patch b/package/ltp-testsuite/0003-disable-profil-on-uClibc.patch deleted file mode 100644 index d33b6771a7..0000000000 --- a/package/ltp-testsuite/0003-disable-profil-on-uClibc.patch +++ /dev/null @@ -1,27 +0,0 @@ -uClibc-ng has no profil() support - -Signed-off-by: Waldemar Brodkorb - -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/profil/profil01.c ltp-full-20160126/testcases/kernel/syscalls/profil/profil01.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/profil/profil01.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/profil/profil01.c 2016-03-05 01:00:07.328962536 +0100 -@@ -37,6 +37,9 @@ - #define PROFIL_BUFLEN (32*1024) - - char *TCID = "profil01"; -+ -+#if !defined(__UCLIBC__) -+ - int TST_TOTAL = 1; - - static volatile sig_atomic_t profil_done; -@@ -124,3 +127,9 @@ - - tst_exit(); - } -+#else /* systems that dont support profil */ -+int main(void) -+{ -+ tst_brkm(TCONF, NULL, "system doesn't have profil support"); -+} -+#endif diff --git a/package/ltp-testsuite/0003-uClibc-ng-need-__UCLIBC_SV4_DEPRECATED__-enabled-for.patch b/package/ltp-testsuite/0003-uClibc-ng-need-__UCLIBC_SV4_DEPRECATED__-enabled-for.patch new file mode 100644 index 0000000000..14f5888ded --- /dev/null +++ b/package/ltp-testsuite/0003-uClibc-ng-need-__UCLIBC_SV4_DEPRECATED__-enabled-for.patch @@ -0,0 +1,84 @@ +From bb966fd9efc3b9bec3ca72b0e72dd760434e0f10 Mon Sep 17 00:00:00 2001 +From: Erico Nunes +Date: Fri, 30 Sep 2016 17:45:16 +0200 +Subject: [PATCH] uClibc-ng need __UCLIBC_SV4_DEPRECATED__ enabled for ustat + +Signed-off-by: Waldemar Brodkorb +[Erico: Rebase for ltp 20160920] +Signed-off-by: Erico Nunes +--- + testcases/kernel/syscalls/ustat/ustat01.c | 12 ++++++++++++ + testcases/kernel/syscalls/ustat/ustat02.c | 10 ++++++++++ + 2 files changed, 22 insertions(+) + +diff --git a/testcases/kernel/syscalls/ustat/ustat01.c b/testcases/kernel/syscalls/ustat/ustat01.c +index 494647b..35e0bb1 100644 +--- a/testcases/kernel/syscalls/ustat/ustat01.c ++++ b/testcases/kernel/syscalls/ustat/ustat01.c +@@ -21,7 +21,9 @@ + + #include + #include ++#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) + #include ++#endif + #include + #include + #include "test.h" +@@ -30,6 +32,9 @@ + static void setup(void); + + char *TCID = "ustat01"; ++ ++#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) ++ + int TST_TOTAL = 1; + + static dev_t dev_num; +@@ -79,3 +84,10 @@ static void setup(void) + + dev_num = buf.st_dev; + } ++#else /* systems that dont support ustat */ ++int main(void) ++{ ++ tst_brkm(TCONF, NULL, "system doesn't have ustat support"); ++} ++#endif ++ +diff --git a/testcases/kernel/syscalls/ustat/ustat02.c b/testcases/kernel/syscalls/ustat/ustat02.c +index edada31..795c605 100644 +--- a/testcases/kernel/syscalls/ustat/ustat02.c ++++ b/testcases/kernel/syscalls/ustat/ustat02.c +@@ -22,7 +22,9 @@ + + #include + #include ++#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) + #include ++#endif + #include + #include + #include "test.h" +@@ -32,6 +34,8 @@ static void setup(void); + + char *TCID = "ustat02"; + ++#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) ++ + static dev_t invalid_dev = -1; + static dev_t root_dev; + struct ustat ubuf; +@@ -101,3 +105,9 @@ static void setup(void) + + root_dev = buf.st_dev; + } ++#else /* systems that dont support ustat */ ++int main(void) ++{ ++ tst_brkm(TCONF, NULL, "system doesn't have ustat support"); ++} ++#endif +-- +2.7.4 + diff --git a/package/ltp-testsuite/0004-disable-ustat-on-uClibc.patch b/package/ltp-testsuite/0004-disable-ustat-on-uClibc.patch deleted file mode 100644 index 7a1f017169..0000000000 --- a/package/ltp-testsuite/0004-disable-ustat-on-uClibc.patch +++ /dev/null @@ -1,70 +0,0 @@ -uClibc-ng need __UCLIBC_SV4_DEPRECATED__ enabled for ustat - -Signed-off-by: Waldemar Brodkorb - -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/ustat/ustat01.c ltp-full-20160126/testcases/kernel/syscalls/ustat/ustat01.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/ustat/ustat01.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/ustat/ustat01.c 2016-03-05 01:15:39.492789841 +0100 -@@ -20,7 +20,9 @@ - */ - - #include -+#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) - #include -+#endif - #include - #include - #include -@@ -30,6 +32,9 @@ - static void setup(void); - - char *TCID = "ustat01"; -+ -+#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) -+ - int TST_TOTAL = 1; - - static dev_t dev_num; -@@ -79,3 +84,10 @@ - - dev_num = buf.st_dev; - } -+#else /* systems that dont support ustat */ -+int main(void) -+{ -+ tst_brkm(TCONF, NULL, "system doesn't have ustat support"); -+} -+#endif -+ -diff -Nur ltp-full-20160126.orig/testcases/kernel/syscalls/ustat/ustat02.c ltp-full-20160126/testcases/kernel/syscalls/ustat/ustat02.c ---- ltp-full-20160126.orig/testcases/kernel/syscalls/ustat/ustat02.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/kernel/syscalls/ustat/ustat02.c 2016-03-05 01:15:55.677411889 +0100 -@@ -21,7 +21,9 @@ - */ - - #include -+#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) - #include -+#endif - #include - #include - #include -@@ -32,6 +34,8 @@ - - char *TCID = "ustat02"; - -+#if !defined(__UCLIBC__) || defined(__UCLIBC_SV4_DEPRECATED__) -+ - static dev_t invalid_dev = -1; - static dev_t root_dev; - struct ustat ubuf; -@@ -101,3 +105,9 @@ - - root_dev = buf.st_dev; - } -+#else /* systems that dont support ustat */ -+int main(void) -+{ -+ tst_brkm(TCONF, NULL, "system doesn't have ustat support"); -+} -+#endif diff --git a/package/ltp-testsuite/0004-rusers.h-is-unused-and-not-available-for-uClibc-ng-l.patch b/package/ltp-testsuite/0004-rusers.h-is-unused-and-not-available-for-uClibc-ng-l.patch new file mode 100644 index 0000000000..fc3dce97e0 --- /dev/null +++ b/package/ltp-testsuite/0004-rusers.h-is-unused-and-not-available-for-uClibc-ng-l.patch @@ -0,0 +1,157 @@ +From 780bec6c2742231ca73d4dee51c727815cf857b3 Mon Sep 17 00:00:00 2001 +From: Erico Nunes +Date: Fri, 30 Sep 2016 17:45:31 +0200 +Subject: [PATCH] rusers.h is unused and not available for uClibc-ng / libtirpc + +Signed-off-by: Waldemar Brodkorb +[Erico: Rebase for ltp 20160920] +Signed-off-by: Erico Nunes +--- + .../tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c | 1 - + .../rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c | 1 - + .../rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c | 1 - + .../rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c | 1 - + .../rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c | 1 - + .../rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c | 1 - + .../rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c | 1 - + .../rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c | 1 - + .../rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c | 1 - + .../rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c | 1 - + .../rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c | 1 - + 11 files changed, 11 deletions(-) + +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c +index 7f157e1..728c023 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c +index d9a3111..8d80a5e 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c +index cabffc7..a4d1d6f 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c +index 4f10466..863aec7 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c +index 290f357..e849468 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c +index 55bac16..8c1800b 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c +index 09d1bf9..384a00d 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c +index 3e15306..285eb21 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c +index a7030a2..1f2690a 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c +index 06f4740..faa8ef6 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c +index ca38aa0..974f5fb 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c +@@ -30,7 +30,6 @@ + #include + #include + #include +-#include + #include + #include + #include +-- +2.7.4 + diff --git a/package/ltp-testsuite/0005-rpc-fix-uClibc.patch b/package/ltp-testsuite/0005-rpc-fix-uClibc.patch deleted file mode 100644 index 1d9152b061..0000000000 --- a/package/ltp-testsuite/0005-rpc-fix-uClibc.patch +++ /dev/null @@ -1,125 +0,0 @@ -rusers.h is unused and not available for uClibc-ng / libtirpc - -Signed-off-by: Waldemar Brodkorb - -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_auth_destroy/rpc_auth_destroy.c 2016-03-05 02:16:56.274105305 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authnone_create/rpc_authnone_create.c 2016-03-05 02:16:32.641196984 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create/rpc_authunix_create.c 2016-03-05 02:21:09.831850681 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_auth_authunix_create_default/rpc_authunix_create_default.c 2016-03-05 02:18:57.370759601 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create.c 2016-03-05 02:23:32.113319210 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_limits.c 2016-03-05 02:23:39.221592413 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clnttcp_create/rpc_clnttcp_create_stress.c 2016-03-05 02:23:48.565951560 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate.c 2016-03-05 02:23:56.706264429 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_bufcreate/rpc_clntudp_bufcreate_limits.c 2016-03-05 02:24:03.818537786 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create.c 2016-03-05 02:24:10.518795308 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include -diff -Nur ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c ---- ltp-full-20160126.orig/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c 2016-01-26 13:35:25.000000000 +0100 -+++ ltp-full-20160126/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/rpc/rpc_createdestroy_clntudp_create/rpc_clntudp_create_stress.c 2016-03-05 02:24:20.095163371 +0100 -@@ -30,7 +30,6 @@ - #include - #include - #include --#include - #include - #include - #include diff --git a/package/ltp-testsuite/Config.in b/package/ltp-testsuite/Config.in index 8475902158..274b03e423 100644 --- a/package/ltp-testsuite/Config.in +++ b/package/ltp-testsuite/Config.in @@ -22,7 +22,7 @@ config BR2_PACKAGE_LTP_TESTSUITE http://linux-test-project.github.io -comment "ltp-testsuite needs a non-musl toolchain w/ threads" +comment "ltp-testsuite needs a glibc or uClibc toolchain w/ threads" depends on !BR2_nios2 depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/ltp-testsuite/ltp-testsuite.hash b/package/ltp-testsuite/ltp-testsuite.hash index f3c1be5d55..b8311e094e 100644 --- a/package/ltp-testsuite/ltp-testsuite.hash +++ b/package/ltp-testsuite/ltp-testsuite.hash @@ -1,4 +1,2 @@ -# From: https://github.com/linux-test-project/ltp/releases/download/20160126/ltp-full-20160126.tar.xz.md5 -md5 fc3b7411cdf17b2608e26c05d36fc26a ltp-full-20160126.tar.xz -# From: https://github.com/linux-test-project/ltp/releases/download/20160126/ltp-full-20160126.tar.xz.sha1 -sha1 a39c9b05edb942cde23a1f7fa08289a5e427fa04 ltp-full-20160126.tar.xz +# From: https://github.com/linux-test-project/ltp/releases/download/20170116/ltp-full-20170116.tar.xz.sha1 +sha1 b42047fe0d30db9b2c760bd1ab901ecb133835fc ltp-full-20170116.tar.xz diff --git a/package/ltp-testsuite/ltp-testsuite.mk b/package/ltp-testsuite/ltp-testsuite.mk index cf48072f81..9d82087f7f 100644 --- a/package/ltp-testsuite/ltp-testsuite.mk +++ b/package/ltp-testsuite/ltp-testsuite.mk @@ -4,13 +4,13 @@ # ################################################################################ -LTP_TESTSUITE_VERSION = 20160126 +LTP_TESTSUITE_VERSION = 20170116 LTP_TESTSUITE_SOURCE = ltp-full-$(LTP_TESTSUITE_VERSION).tar.xz LTP_TESTSUITE_SITE = https://github.com/linux-test-project/ltp/releases/download/$(LTP_TESTSUITE_VERSION) LTP_TESTSUITE_LICENSE = GPLv2, GPLv2+ LTP_TESTSUITE_LICENSE_FILES = COPYING LTP_TESTSUITE_CONF_OPTS += \ - --with-power-management-testsuite \ + --with-open-posix-testsuite \ --with-realtime-testsuite ifeq ($(BR2_LINUX_KERNEL),y) @@ -21,6 +21,10 @@ else LTP_TESTSUITE_CONF_OPTS += --without-modules endif +# We change the prefix to a custom one, otherwise we get scripts and +# directories directly in /usr, such as /usr/runalltests.sh +LTP_TESTSUITE_CONF_OPTS += --prefix=/usr/lib/ltp-testsuite + # Needs libcap with file attrs which needs attr, so both required ifeq ($(BR2_PACKAGE_LIBCAP)$(BR2_PACKAGE_ATTR),yy) LTP_TESTSUITE_DEPENDENCIES += libcap diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in index ff4d7bd3b0..7af6be2144 100644 --- a/package/ltrace/Config.in +++ b/package/ltrace/Config.in @@ -18,6 +18,6 @@ config BR2_PACKAGE_LTRACE http://ltrace.org -comment "ltrace needs a uclibc or (e)glibc toolchain w/ wchar, dynamic library" +comment "ltrace needs a uClibc or glibc toolchain w/ wchar, dynamic library" depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch b/package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch deleted file mode 100644 index d77825fab6..0000000000 --- a/package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch +++ /dev/null @@ -1,37 +0,0 @@ -Do not call posix_fallocate() on uClibc - -uClibc does not implement posix_fallocate(), and posix_fallocate() is -mostly only an hint to the kernel that we will need such or such -amount of space inside a file. So we just don't call posix_fallocate() -when building against uClibc. - -Signed-off-by: Thomas Petazzoni -[Peter: add #include ---- - formats/ctf/ctf.c | 3 +++ - 1 file changed, 3 insertions(+) - -Index: lttng-babeltrace-0.8/formats/ctf/ctf.c -=================================================================== ---- lttng-babeltrace-0.8.orig/formats/ctf/ctf.c -+++ lttng-babeltrace-0.8/formats/ctf/ctf.c -@@ -32,6 +32,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -384,9 +385,11 @@ - } - pos->content_size = -1U; /* Unknown at this point */ - pos->packet_size = WRITE_PACKET_LEN; -+#ifndef __UCLIBC__ - off = posix_fallocate(pos->fd, pos->mmap_offset, - pos->packet_size / CHAR_BIT); - assert(off >= 0); -+#endif - pos->offset = 0; - } else { - read_next_packet: diff --git a/package/lttng-babeltrace/0001-tests-lib-Makefile.am-remove-unneeded-static-flag.patch b/package/lttng-babeltrace/0001-tests-lib-Makefile.am-remove-unneeded-static-flag.patch new file mode 100644 index 0000000000..b903d87223 --- /dev/null +++ b/package/lttng-babeltrace/0001-tests-lib-Makefile.am-remove-unneeded-static-flag.patch @@ -0,0 +1,36 @@ +From 27e37d2621317d25e08ba0683bf8540b05b9347d Mon Sep 17 00:00:00 2001 +From: Philippe Proulx +Date: Fri, 28 Oct 2016 02:09:20 -0400 +Subject: [PATCH] tests/lib/Makefile.am: remove unneeded -static flag + +Having those -static flags breaks the build in shared-only builds. + +Signed-off-by: Philippe Proulx +[Philippe: grabbed from this pull request: + https://github.com/efficios/babeltrace/pull/49 +] +--- + tests/lib/Makefile.am | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/tests/lib/Makefile.am b/tests/lib/Makefile.am +index 33ada16..c685e77 100644 +--- a/tests/lib/Makefile.am ++++ b/tests/lib/Makefile.am +@@ -31,13 +31,11 @@ check_SCRIPTS = test_seek_big_trace \ + test_ctf_writer_complete + + if ENABLE_DEBUG_INFO +-test_dwarf_LDFLAGS = -static + test_dwarf_LDADD = $(LIBTAP) \ + $(top_builddir)/lib/libbabeltrace.la \ + $(top_builddir)/lib/libdebug-info.la + test_dwarf_SOURCES = test_dwarf.c + +-test_bin_info_LDFLAGS = -static + test_bin_info_LDADD = $(LIBTAP) \ + $(top_builddir)/lib/libbabeltrace.la \ + $(top_builddir)/lib/libdebug-info.la +-- +2.9.3 + diff --git a/package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch b/package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch deleted file mode 100644 index 849c0a3d26..0000000000 --- a/package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 670d0961a823df0db28f39a354430f3dc2519418 Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Sat, 28 May 2016 12:53:33 +0200 -Subject: [PATCH] configure: fix uuid support detection on static build - -This change adds uuid support detection using pkg-config, before falling -back on default AC_CHECK_LIB calls. - -Using flags from pkg-config is useful for static build, because they -also include dependency flags; whereas - -AC_CHECK_LIB function achieves its test by trying to link against the -requested library, without taking care of its dependency -requirements/flags. Therefore, in case of static build, it can fail on -the uuid detection like [1], because the uuid's dependency flags -(regarding gettext) are missing. -Instead, using pkg-config to do the check will take care of getting and -setting all required flags. - -This change adds uuid detection using pkg-config helper before falling -back on the standard AC_CHECK_LIB detection for platforms missing -pkg-config. - -This issue [1] has been triggered on Buildroot farms. - -[1] http://autobuild.buildroot.net/results/43b/43b98ddf9eb44152ed9ac4a98d887af14831d8da/build-end.log - -Signed-off-by: Samuel Martin ---- - configure.ac | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 632fe39..b344fa8 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -65,6 +65,15 @@ esac - AM_CONDITIONAL([BABELTRACE_BUILD_WITH_MINGW], [test "x$MINGW32" = "xyes"]) - - # Check for libuuid -+PKG_CHECK_MODULES([UUID], [uuid], -+[ -+ LIBS="${UUID_LIBS} ${LIBS}" -+ CFLAGS="${CFLAGS} ${UUID_CFLAGS}" -+ AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.]) -+ have_libuuid=yes -+], -+[ -+# try detecting libuuid without pkg-config - AC_CHECK_LIB([uuid], [uuid_generate], - [ - AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.]) -@@ -83,6 +92,7 @@ AC_CHECK_LIB([uuid], [uuid_generate], - AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.]) - fi - ]) -+]) - ] - ) - AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"]) --- -2.8.3 - diff --git a/package/lttng-babeltrace/0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch b/package/lttng-babeltrace/0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch new file mode 100644 index 0000000000..b16781419a --- /dev/null +++ b/package/lttng-babeltrace/0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch @@ -0,0 +1,77 @@ +From 697ab0905c59561562dc52cd3b925781e07814f3 Mon Sep 17 00:00:00 2001 +From: Philippe Proulx +Date: Wed, 2 Nov 2016 01:40:12 -0400 +Subject: [PATCH] m4/ax_lib_elfutils.m4: add cache variable + +This patch adds an autoconf cache variable to override the +AC_RUN_IFELSE() test result when cross-compiling. + +Signed-off-by: Philippe Proulx +[Philippe: grabbed from this pull request: + https://github.com/efficios/babeltrace/pull/52 +] +--- + m4/ax_lib_elfutils.m4 | 32 +++++++++++++++++--------------- + 1 file changed, 17 insertions(+), 15 deletions(-) + +diff --git a/m4/ax_lib_elfutils.m4 b/m4/ax_lib_elfutils.m4 +index fcfe06b..f4fcb0d 100644 +--- a/m4/ax_lib_elfutils.m4 ++++ b/m4/ax_lib_elfutils.m4 +@@ -21,7 +21,9 @@ + # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + # + # Check the currently installed version of elfutils by using the +-# _ELFUTILS_PREREQ macro defined in elfutils/version.h. ++# `_ELFUTILS_PREREQ` macro defined in . ++# ++# The cache variable for this test is `bt_cv_lib_elfutils`. + # + # AX_LIB_ELFUTILS(MAJOR_VERSION, MINOR_VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) + # --------------------------------------------------------------------------- +@@ -29,7 +31,6 @@ AC_DEFUN([AX_LIB_ELFUTILS], [ + m4_pushdef([major_version], [$1]) + m4_pushdef([minor_version], [$2]) + +- AC_MSG_CHECKING([for elfutils version >= major_version.minor_version]) + m4_if([$#], 3, [ + m4_pushdef([true_action], [$3]) + ], [ +@@ -43,20 +44,21 @@ AC_DEFUN([AX_LIB_ELFUTILS], [ + AC_MSG_ERROR(elfutils >= major_version.minor_version is required)]) + ]) + +- AC_RUN_IFELSE([ +- AC_LANG_SOURCE([ +- #include +- #include ++ AC_CACHE_CHECK( ++ [for elfutils version >= major_version.minor_version], ++ [bt_cv_lib_elfutils], [ ++ AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ #include ++ #include ++ ++ int main(void) { ++ return _ELFUTILS_PREREQ(major_version, minor_version) ? EXIT_SUCCESS : EXIT_FAILURE; ++ } ++ ])], [bt_cv_lib_elfutils=yes], [bt_cv_lib_elfutils=no]) ++ ] ++ ) + +- int main(void) { +- return _ELFUTILS_PREREQ(major_version, minor_version) ? EXIT_SUCCESS : EXIT_FAILURE; +- } +- ]) +- ], +- echo yes +- true_action, +- echo no +- false_action) ++ AS_IF([test "x$bt_cv_lib_elfutils" = "xyes"], [true_action], [false_action]) + + m4_popdef([false_action]) + m4_popdef([true_action]) +-- +2.9.3 + diff --git a/package/lttng-babeltrace/Config.in b/package/lttng-babeltrace/Config.in index d362779eac..09fab4492b 100644 --- a/package/lttng-babeltrace/Config.in +++ b/package/lttng-babeltrace/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_LTTNG_BABELTRACE select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_POPT - depends on BR2_USE_WCHAR # libglib2, util-linux + depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 help @@ -14,18 +14,21 @@ config BR2_PACKAGE_LTTNG_BABELTRACE to/from another trace format. Babeltrace is the reference implementation of the Common - Trace Format (see ). Babeltrace + Trace Format (see ). Babeltrace can decode and display LTTng traces, since the latter are written using the CTF format. + To get support for debugging information, enable the + elfutils package. + Having this tool on the target is not mandatory. You can transfer the binary trace output from the target to your - development workstation, and use babeltrace here. Buildroot - automatically builds a host babeltrace in - $(O)/host/usr/bin/babeltrace as a dependency of the - lttng-tools package. + development workstation, and use babeltrace here. - http://www.efficios.com/babeltrace + See the lttng-babeltrace host utility to install Babeltrace + on the host. + + http://diamon.org/babeltrace comment "lttng-babeltrace needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU diff --git a/package/lttng-babeltrace/Config.in.host b/package/lttng-babeltrace/Config.in.host new file mode 100644 index 0000000000..71b9c7d9ff --- /dev/null +++ b/package/lttng-babeltrace/Config.in.host @@ -0,0 +1,14 @@ +config BR2_PACKAGE_HOST_LTTNG_BABELTRACE + bool "host lttng-babeltrace" + help + The Babeltrace project provides trace read and write + libraries, as well as a trace converter application. Plugins + can be created for any trace format to allow its conversion + to/from another trace format. + + Babeltrace is the reference implementation of the Common + Trace Format (see ). Babeltrace + can decode and display LTTng traces, since the latter are + written using the CTF format. + + http://diamon.org/babeltrace diff --git a/package/lttng-babeltrace/lttng-babeltrace.hash b/package/lttng-babeltrace/lttng-babeltrace.hash index a9f45b212e..8f296927a0 100644 --- a/package/lttng-babeltrace/lttng-babeltrace.hash +++ b/package/lttng-babeltrace/lttng-babeltrace.hash @@ -1,7 +1,3 @@ -# From http://lttng.org/files/babeltrace/babeltrace-1.2.4.tar.bz2.md5 -md5 20a806fa7570e69a91707855a98f3ca6 babeltrace-1.2.4.tar.bz2 -# From http://lttng.org/files/babeltrace/babeltrace-1.2.4.tar.bz2.sha1 -sha1 c72a80e8fd905cb1ae3b0cf88885517faafe0fa1 babeltrace-1.2.4.tar.bz2 -# Locally generated -sha256 666e3a1ad2dc7d5703059963056e7800f0eab59c8eeb6be2efe4f3acc5209eb1 babeltrace-1.2.4.tar.bz2 - +# From http://www.efficios.com/files/babeltrace/babeltrace-1.5.1.tar.bz2.{md5,sha1} +md5 3f7d29ba2821a966d24759a928a15cdf babeltrace-1.5.1.tar.bz2 +sha1 07bffefed8ef68317f26e043ae5f71be58fdb783 babeltrace-1.5.1.tar.bz2 diff --git a/package/lttng-babeltrace/lttng-babeltrace.mk b/package/lttng-babeltrace/lttng-babeltrace.mk index fdc647e8da..abb3bba3da 100644 --- a/package/lttng-babeltrace/lttng-babeltrace.mk +++ b/package/lttng-babeltrace/lttng-babeltrace.mk @@ -4,15 +4,29 @@ # ################################################################################ -LTTNG_BABELTRACE_SITE = http://lttng.org/files/babeltrace -LTTNG_BABELTRACE_VERSION = 1.2.4 +LTTNG_BABELTRACE_SITE = http://www.efficios.com/files/babeltrace +LTTNG_BABELTRACE_VERSION = 1.5.1 LTTNG_BABELTRACE_SOURCE = babeltrace-$(LTTNG_BABELTRACE_VERSION).tar.bz2 LTTNG_BABELTRACE_LICENSE = MIT, LGPLv2.1 (include/babeltrace/list.h), GPLv2 (test code) LTTNG_BABELTRACE_LICENSE_FILES = mit-license.txt gpl-2.0.txt LICENSE - LTTNG_BABELTRACE_DEPENDENCIES = popt util-linux libglib2 host-pkgconf -# for 0002-configure-fix-uuid-support-detection-on-static-build.patch +# The host-elfutils dependency is optional, but since we don't have +# options for host packages, just build support for it +# unconditionally. +HOST_LTTNG_BABELTRACE_DEPENDENCIES = \ + host-popt host-util-linux host-libglib2 host-pkgconf host-elfutils +HOST_LTTNG_BABELTRACE_CONF_OPTS += --enable-debug-info + +# For: 0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch LTTNG_BABELTRACE_AUTORECONF = YES +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +LTTNG_BABELTRACE_DEPENDENCIES += elfutils +LTTNG_BABELTRACE_CONF_OPTS += --enable-debug-info +LTTNG_BABELTRACE_CONF_ENV += bt_cv_lib_elfutils=yes +else +LTTNG_BABELTRACE_CONF_OPTS += --disable-debug-info +endif + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/lttng-libust/0001-lttng-ust-elf.c-define-NT_GNU_BUILD_ID-if-not-define.patch b/package/lttng-libust/0001-lttng-ust-elf.c-define-NT_GNU_BUILD_ID-if-not-define.patch new file mode 100644 index 0000000000..2e0c8b1da0 --- /dev/null +++ b/package/lttng-libust/0001-lttng-ust-elf.c-define-NT_GNU_BUILD_ID-if-not-define.patch @@ -0,0 +1,34 @@ +From d400314757a8d5d52bd5722d263bfd5886bb6595 Mon Sep 17 00:00:00 2001 +From: Philippe Proulx +Date: Sat, 29 Oct 2016 13:32:57 -0400 +Subject: [PATCH] lttng-ust-elf.c: define NT_GNU_BUILD_ID if not defined + +On uClibc, NT_GNU_BUILD_ID is not defined, so we define it +manually in this case. + +Signed-off-by: Philippe Proulx +[Philippe: grabbed from this pull request: + https://github.com/lttng/lttng-ust/pull/39 +] +--- + liblttng-ust/lttng-ust-elf.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/liblttng-ust/lttng-ust-elf.c b/liblttng-ust/lttng-ust-elf.c +index 5f27920..beaa7f3 100644 +--- a/liblttng-ust/lttng-ust-elf.c ++++ b/liblttng-ust/lttng-ust-elf.c +@@ -29,6 +29,10 @@ + + #define BUF_LEN 4096 + ++#ifndef NT_GNU_BUILD_ID ++# define NT_GNU_BUILD_ID 3 ++#endif ++ + /* + * Retrieve the nth (where n is the `index` argument) phdr (program + * header) from the given elf instance. +-- +2.9.3 + diff --git a/package/lttng-libust/0002-doc-examples-Makefile.am-define-C-and-C-compilers-fo.patch b/package/lttng-libust/0002-doc-examples-Makefile.am-define-C-and-C-compilers-fo.patch new file mode 100644 index 0000000000..5172dbbf20 --- /dev/null +++ b/package/lttng-libust/0002-doc-examples-Makefile.am-define-C-and-C-compilers-fo.patch @@ -0,0 +1,49 @@ +From f54894580da85e33f934c5c9bf5ab32d3fcce18b Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 30 Nov 2016 16:52:51 +0000 +Subject: [PATCH] doc/examples/Makefile.am: define C and C++ compilers for + CMake + +This prevents build failures when cross-compiling. + +If we don't define the compiler, it will use the one from the host +machine. For instance "/usr/bin/c++", which is incorrect. + +The failure looks like this: + +............................................................. +[ 10%] Building CXX object CMakeFiles/tracepoint-provider.dir/tracepoint-provider.cpp.o +/usr/bin/c++ -Dtracepoint_provider_EXPORTS -I/br/output/build/lttng-libust-2.9.0/doc/examples/cmake-multiple-shared-libraries/. -isystem /br/output/build/lttng-libust-2.9.0/include -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fPIC -o CMakeFiles/tracepoint-provider.dir/tracepoint-provider.cpp.o -c /br/output/build/lttng-libust-2.9.0/doc/examples/cmake-multiple-shared-libraries/tracepoint-provider.cpp +In file included from /br/output/build/lttng-libust-2.9.0/include/lttng/tracepoint.h:29:0, + from /br/output/build/lttng-libust-2.9.0/doc/examples/cmake-multiple-shared-libraries/tracepoint-provider.h:32, + from /br/output/build/lttng-libust-2.9.0/doc/examples/cmake-multiple-shared-libraries/tracepoint-provider.cpp:26: +/br/output/build/lttng-libust-2.9.0/include/lttng/tracepoint-rcu.h:26:27: fatal error: urcu/compiler.h: No such file or directory + #include + ^ +compilation terminated. +............................................................. + +Pull request URL: https://github.com/lttng/lttng-ust/pull/41 + +Signed-off-by: Vicente Olivert Riera +--- + doc/examples/Makefile.am | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/doc/examples/Makefile.am b/doc/examples/Makefile.am +index 424b844..5bc1f4c 100644 +--- a/doc/examples/Makefile.am ++++ b/doc/examples/Makefile.am +@@ -152,7 +152,9 @@ all-local: + cmake \ + -DCMAKE_INCLUDE_PATH="$(abs_top_srcdir)/include;$(abs_top_builddir)/include" \ + -DCMAKE_LIBRARY_PATH="$(abs_top_builddir)/liblttng-ust/.libs" \ ++ -DCMAKE_C_COMPILER="$(CC)" \ + -DCMAKE_C_FLAGS="$(CFLAGS) $(CPPFLAGS)" \ ++ -DCMAKE_CXX_COMPILER="$(CXX)" \ + -DCMAKE_CXX_FLAGS="$(CXXFLAGS) $(CPPFLAGS)" \ + -DCMAKE_EXE_LINKER_FLAGS="$(LDFLAGS)" \ + .. && \ +-- +2.10.1 + diff --git a/package/lttng-libust/Config.in b/package/lttng-libust/Config.in index ce60599557..4aba18886e 100644 --- a/package/lttng-libust/Config.in +++ b/package/lttng-libust/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_LTTNG_LIBUST select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID - depends on BR2_USE_WCHAR # util-linux + depends on BR2_USE_WCHAR # uses wchar_t # liburcu only works on some architectures and requires threads support" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/lttng-libust/lttng-libust.hash b/package/lttng-libust/lttng-libust.hash index 57c7e003ae..e080361a57 100644 --- a/package/lttng-libust/lttng-libust.hash +++ b/package/lttng-libust/lttng-libust.hash @@ -1,2 +1,3 @@ -# http://www.lttng.org/files/lttng-ust/lttng-ust-2.7.1.tar.bz2.sha1 -sha1 597ebecb885debb58c263de57f30b1096d4eefc6 lttng-ust-2.7.1.tar.bz2 +# From http://lttng.org/files/lttng-ust/lttng-ust-2.9.0.tar.bz2.{md5,sha1} +md5 77f3378ba37a36801420bce87b702e9c lttng-ust-2.9.0.tar.bz2 +sha1 9937eae64540821b8597cce081e92be76e6b5568 lttng-ust-2.9.0.tar.bz2 diff --git a/package/lttng-libust/lttng-libust.mk b/package/lttng-libust/lttng-libust.mk index 4a65057c45..5667abb82d 100644 --- a/package/lttng-libust/lttng-libust.mk +++ b/package/lttng-libust/lttng-libust.mk @@ -5,20 +5,25 @@ ################################################################################ LTTNG_LIBUST_SITE = http://lttng.org/files/lttng-ust -LTTNG_LIBUST_VERSION = 2.7.1 +LTTNG_LIBUST_VERSION = 2.9.0 LTTNG_LIBUST_SOURCE = lttng-ust-$(LTTNG_LIBUST_VERSION).tar.bz2 LTTNG_LIBUST_LICENSE = LGPLv2.1, MIT (system headers), GPLv2 (liblttng-ust-ctl/ustctl.c used by lttng-sessiond) LTTNG_LIBUST_LICENSE_FILES = COPYING - LTTNG_LIBUST_INSTALL_STAGING = YES LTTNG_LIBUST_DEPENDENCIES = liburcu util-linux +LTTNG_LIBUST_CONF_OPTS += --disable-man-pages +# 0002-doc-examples-Makefile.am-define-C-and-C-compilers-fo.patch +LTTNG_LIBUST_AUTORECONF = YES ifeq ($(BR2_PACKAGE_PYTHON),y) LTTNG_LIBUST_DEPENDENCIES += python +LTTNG_LIBUST_CONF_OPTS += --enable-python-agent else ifeq ($(BR2_PACKAGE_PYTHON3),y) LTTNG_LIBUST_DEPENDENCIES += python3 +LTTNG_LIBUST_CONF_OPTS += --enable-python-agent else LTTNG_LIBUST_CONF_ENV = am_cv_pathless_PYTHON="none" +LTTNG_LIBUST_CONF_OPTS += --disable-python-agent endif $(eval $(autotools-package)) diff --git a/package/lttng-modules/lttng-modules.hash b/package/lttng-modules/lttng-modules.hash index 2d50287897..d8314f6e79 100644 --- a/package/lttng-modules/lttng-modules.hash +++ b/package/lttng-modules/lttng-modules.hash @@ -1,2 +1,3 @@ -# from http://lttng.org/files/lttng-tools/lttng-modules-2.7.1.tar.bz2.sha1 -sha1 38c42ec89b4966c7a4cc04aea75f5841634d8d66 lttng-modules-2.7.1.tar.bz2 +# From http://lttng.org/files/lttng-modules/lttng-modules-2.9.0.tar.bz2.{md5,sha1} +md5 717df375ccb6f32bb297cc2f2e692bbf lttng-modules-2.9.0.tar.bz2 +sha1 819ee1c2a5a821b7fdc1c2fc102ef3079c32aad7 lttng-modules-2.9.0.tar.bz2 diff --git a/package/lttng-modules/lttng-modules.mk b/package/lttng-modules/lttng-modules.mk index 5d0c422b13..aa0ac30b24 100644 --- a/package/lttng-modules/lttng-modules.mk +++ b/package/lttng-modules/lttng-modules.mk @@ -4,11 +4,12 @@ # ################################################################################ -LTTNG_MODULES_VERSION = 2.7.1 +LTTNG_MODULES_VERSION = 2.9.0 LTTNG_MODULES_SITE = http://lttng.org/files/lttng-modules LTTNG_MODULES_SOURCE = lttng-modules-$(LTTNG_MODULES_VERSION).tar.bz2 LTTNG_MODULES_LICENSE = LGPLv2.1/GPLv2 (kernel modules), MIT (lib/bitfield.h, lib/prio_heap/*) LTTNG_MODULES_LICENSE_FILES = lgpl-2.1.txt gpl-2.0.txt mit-license.txt LICENSE +LTTNG_MODULES_MODULE_MAKE_OPTS = CONFIG_LTTNG=m CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m $(eval $(kernel-module)) $(eval $(generic-package)) diff --git a/package/lttng-tools/0001-Fix-build-failure-when-__GLIBC_PREREQ-is-missing.patch b/package/lttng-tools/0001-Fix-build-failure-when-__GLIBC_PREREQ-is-missing.patch deleted file mode 100644 index 2c01dea6ae..0000000000 --- a/package/lttng-tools/0001-Fix-build-failure-when-__GLIBC_PREREQ-is-missing.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Baruch Siach -Date: Tue, 8 Mar 2016 14:25:34 +0200 -Subject: [PATCH] Fix: build failure when __GLIBC_PREREQ is missing - -The musl C library does not provide the __GLIBC_PREREQ macro. Instead of -relying on glibc version test, check directly for the availability of -epoll_create1(). - -Signed-off-by: Baruch Siach ---- -Patch status: sent upstream rebased on master branch -(http://lists.lttng.org/pipermail/lttng-dev/2016-March/025593.html) - - configure.ac | 2 +- - src/common/compat/poll.h | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 66d83b60b017..4fc1160c9a08 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -70,7 +70,7 @@ AC_CHECK_FUNCS([ \ - gethostbyname gethostname getpagesize localtime_r memchr memset \ - mkdir munmap putenv realpath rmdir socket strchr strcspn strdup \ - strncasecmp strndup strpbrk strrchr strstr strtol strtoul \ -- strtoull \ -+ strtoull epoll_create1 \ - ]) - - # Babeltrace viewer check -diff --git a/src/common/compat/poll.h b/src/common/compat/poll.h -index 699901848dc1..84f25d5c85aa 100644 ---- a/src/common/compat/poll.h -+++ b/src/common/compat/poll.h -@@ -73,7 +73,7 @@ enum { - LPOLLNVAL = EPOLLHUP, - LPOLLRDHUP = EPOLLRDHUP, - /* Close on exec feature of epoll */ --#if __GLIBC_PREREQ(2, 9) -+#if defined(HAVE_EPOLL_CREATE1) && defined(EPOLL_CLOEXEC) - LTTNG_CLOEXEC = EPOLL_CLOEXEC, - #else - /* -@@ -127,7 +127,7 @@ extern int compat_epoll_create(struct lttng_poll_event *events, - #define lttng_poll_create(events, size, flags) \ - compat_epoll_create(events, size, flags) - --#if __GLIBC_PREREQ(2, 9) -+#if defined(HAVE_EPOLL_CREATE1) && defined(EPOLL_CLOEXEC) - static inline int compat_glibc_epoll_create(int size __attribute__((unused)), - int flags) - { --- -2.7.0 - diff --git a/package/lttng-tools/0002-Fix-add-missing-sys-types.h-header.patch b/package/lttng-tools/0002-Fix-add-missing-sys-types.h-header.patch deleted file mode 100644 index 5ce2da52dc..0000000000 --- a/package/lttng-tools/0002-Fix-add-missing-sys-types.h-header.patch +++ /dev/null @@ -1,29 +0,0 @@ -From: Baruch Siach -Date: Tue, 8 Mar 2016 14:40:49 +0200 -Subject: [PATCH] Fix: add missing sys/types.h header - -The musl C library requires inclusion of sys/types.h for mode_t. - -Signed-off-by: Baruch Siach ---- -Patch status: sent upstream -(http://lists.lttng.org/pipermail/lttng-dev/2016-March/025594.html) - - src/common/runas.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/common/runas.h b/src/common/runas.h -index 2c5565af3646..ac1143eecf84 100644 ---- a/src/common/runas.h -+++ b/src/common/runas.h -@@ -19,6 +19,7 @@ - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -+#include - #include - #include - --- -2.7.0 - diff --git a/package/lttng-tools/Config.in b/package/lttng-tools/Config.in index dd72cc68c7..187e424b0b 100644 --- a/package/lttng-tools/Config.in +++ b/package/lttng-tools/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_LTTNG_TOOLS bool "lttng-tools" # liburcu only works on some architectures and requires thread support depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS # uses dlfcn select BR2_PACKAGE_LIBURCU @@ -28,6 +27,6 @@ config BR2_PACKAGE_LTTNG_TOOLS http://lttng.org -comment "lttng-tools needs a toolchain w/ threads, wchar, dynamic library" +comment "lttng-tools needs a toolchain w/ threads, dynamic library" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/lttng-tools/lttng-tools.hash b/package/lttng-tools/lttng-tools.hash index f05b0e3826..4f3d2837cb 100644 --- a/package/lttng-tools/lttng-tools.hash +++ b/package/lttng-tools/lttng-tools.hash @@ -1,2 +1,3 @@ -# Locally generated -sha256 0c799fb21dfa42475feaa1507ded934608b2e531039b46c40e944a5b81c7b21c lttng-tools-2.7.1.tar.bz2 +# From http://lttng.org/files/lttng-tools/lttng-tools-2.9.3.tar.bz2.{md5,sha1} +md5 19fdcc5e9c307ef66581a2743a08a541 lttng-tools-2.9.3.tar.bz2 +sha1 78fdc9b7fd15f33ac60ea08320d679ce66e18bf7 lttng-tools-2.9.3.tar.bz2 diff --git a/package/lttng-tools/lttng-tools.mk b/package/lttng-tools/lttng-tools.mk index e5b12079a8..2df2dffa17 100644 --- a/package/lttng-tools/lttng-tools.mk +++ b/package/lttng-tools/lttng-tools.mk @@ -4,26 +4,20 @@ # ################################################################################ -LTTNG_TOOLS_VERSION = 2.7.1 +LTTNG_TOOLS_VERSION = 2.9.3 LTTNG_TOOLS_SITE = http://lttng.org/files/lttng-tools LTTNG_TOOLS_SOURCE = lttng-tools-$(LTTNG_TOOLS_VERSION).tar.bz2 LTTNG_TOOLS_LICENSE = GPLv2+, LGPLv2.1+ (include/lttng/*, src/lib/lttng-ctl/*) LTTNG_TOOLS_LICENSE_FILES = gpl-2.0.txt lgpl-2.1.txt LICENSE -LTTNG_TOOLS_CONF_OPTS += --with-xml-prefix=$(STAGING_DIR)/usr -# Patching configure.ac -LTTNG_TOOLS_AUTORECONF = YES +LTTNG_TOOLS_CONF_OPTS += --disable-man-pages -# The host-lttng-babeltrace technically isn't a required build -# dependency. However, having the babeltrace utilities built for the -# host is very useful, since those tools allow to convert the binary -# trace format into an human readable format. -LTTNG_TOOLS_DEPENDENCIES = liburcu libxml2 popt host-lttng-babeltrace util-linux +LTTNG_TOOLS_DEPENDENCIES = liburcu libxml2 popt util-linux ifeq ($(BR2_PACKAGE_LTTNG_LIBUST),y) -LTTNG_TOOLS_CONF_OPTS += --enable-lttng-ust +LTTNG_TOOLS_CONF_OPTS += --with-lttng-ust LTTNG_TOOLS_DEPENDENCIES += lttng-libust else -LTTNG_TOOLS_CONF_OPTS += --disable-lttng-ust +LTTNG_TOOLS_CONF_OPTS += --without-lttng-ust endif $(eval $(autotools-package)) diff --git a/package/lua-csnappy/lua-csnappy.hash b/package/lua-csnappy/lua-csnappy.hash index 2864c3fd9c..136363497f 100644 --- a/package/lua-csnappy/lua-csnappy.hash +++ b/package/lua-csnappy/lua-csnappy.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 3504789c7832f4ed3d7aef47ba9d62940985cde7556284db2233842bfb7d8876 lua-csnappy-0.1.3-1.src.rock +sha256 855331feb8e09a32eea8366ab9bcd4386db6392de82383f08ae5e59adbb7d8a6 lua-csnappy-0.1.4-1.src.rock diff --git a/package/lua-csnappy/lua-csnappy.mk b/package/lua-csnappy/lua-csnappy.mk index 60b92acfc5..073925917d 100644 --- a/package/lua-csnappy/lua-csnappy.mk +++ b/package/lua-csnappy/lua-csnappy.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_CSNAPPY_VERSION_UPSTREAM = 0.1.3 +LUA_CSNAPPY_VERSION_UPSTREAM = 0.1.4 LUA_CSNAPPY_VERSION = $(LUA_CSNAPPY_VERSION_UPSTREAM)-1 LUA_CSNAPPY_SUBDIR = lua-csnappy-$(LUA_CSNAPPY_VERSION_UPSTREAM) LUA_CSNAPPY_LICENSE = BSD-3c diff --git a/package/lua-ev/lua-ev.hash b/package/lua-ev/lua-ev.hash new file mode 100644 index 0000000000..522e7e7e88 --- /dev/null +++ b/package/lua-ev/lua-ev.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f7f5df5ecfe4bd54797261d1b1bd3f770d39128b7aba72deef6d1d8d8e2b53fe lua-ev-v1.4.tar.gz diff --git a/package/lua-messagepack/lua-messagepack.hash b/package/lua-messagepack/lua-messagepack.hash index b46b686f81..7da34e13df 100644 --- a/package/lua-messagepack/lua-messagepack.hash +++ b/package/lua-messagepack/lua-messagepack.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 be6827c93383c8d7214c9ac9b7a62ab04186db4c6c2a3a7b36036157784f58b8 lua-messagepack-0.3.4-1.src.rock -sha256 5ab74601696973a66802de1fec614859db0d93d5fa960fac0f70cb04a490e5e5 lua-messagepack-lua53-0.3.4-1.src.rock +sha256 a8aac195dc835101a025385b4c5b596de6602c4ced85e0df35b7f52e6aa6ee5d lua-messagepack-0.4.0-1.src.rock +sha256 85a3eef21e10eb6c3ebf584ce950610fc10457746a4b8dbcbcab4b626f7d3265 lua-messagepack-lua53-0.4.0-1.src.rock diff --git a/package/lua-messagepack/lua-messagepack.mk b/package/lua-messagepack/lua-messagepack.mk index 18a4e4ab29..15fc182564 100644 --- a/package/lua-messagepack/lua-messagepack.mk +++ b/package/lua-messagepack/lua-messagepack.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_MESSAGEPACK_VERSION_UPSTREAM = 0.3.4 +LUA_MESSAGEPACK_VERSION_UPSTREAM = 0.4.0 ifeq ($(BR2_PACKAGE_LUA_5_3),y) LUA_MESSAGEPACK_VERSION = lua53-$(LUA_MESSAGEPACK_VERSION_UPSTREAM)-1 else diff --git a/package/lua-msgpack-native/lua-msgpack-native.hash b/package/lua-msgpack-native/lua-msgpack-native.hash new file mode 100644 index 0000000000..cfc598319d --- /dev/null +++ b/package/lua-msgpack-native/lua-msgpack-native.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 025cf91d509fa3985869d18ef9b8eaeb875ff3c9fcf6467beeed6eab3bb35c93 lua-msgpack-native-41a91b994c70389dc9daa1a15678741d8ec41749.tar.gz diff --git a/package/lua/5.3.2/0001-root-path.patch b/package/lua/5.3.4/0001-root-path.patch similarity index 95% rename from package/lua/5.3.2/0001-root-path.patch rename to package/lua/5.3.4/0001-root-path.patch index d8ef8d070d..a44c55c955 100644 --- a/package/lua/5.3.2/0001-root-path.patch +++ b/package/lua/5.3.4/0001-root-path.patch @@ -6,7 +6,7 @@ Index: b/src/luaconf.h =================================================================== --- a/src/luaconf.h +++ b/src/luaconf.h -@@ -188,7 +188,7 @@ +@@ -200,7 +200,7 @@ #else /* }{ */ diff --git a/package/lua/5.3.2/0002-shared-libs-for-lua.patch b/package/lua/5.3.4/0002-shared-libs-for-lua.patch similarity index 100% rename from package/lua/5.3.2/0002-shared-libs-for-lua.patch rename to package/lua/5.3.4/0002-shared-libs-for-lua.patch diff --git a/package/lua/5.3.2/0004-lua-pc.patch b/package/lua/5.3.4/0004-lua-pc.patch similarity index 97% rename from package/lua/5.3.2/0004-lua-pc.patch rename to package/lua/5.3.4/0004-lua-pc.patch index 811d9313b4..615a7db8fc 100644 --- a/package/lua/5.3.2/0004-lua-pc.patch +++ b/package/lua/5.3.4/0004-lua-pc.patch @@ -14,7 +14,7 @@ Index: b/etc/lua.pc +# grep '^V=' ../Makefile +V= 5.3 +# grep '^R=' ../Makefile -+R= 5.3.2 ++R= 5.3.4 + +# grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' +prefix= /usr @@ -33,7 +33,7 @@ Index: b/etc/lua.pc +Name: Lua +Description: An Extensible Extension Language +Version: ${R} -+Requires: ++Requires: +Libs: -L${libdir} -llua -lm +Cflags: -I${includedir} + diff --git a/package/lua/5.3.2/0011-linenoise.patch b/package/lua/5.3.4/0011-linenoise.patch similarity index 97% rename from package/lua/5.3.2/0011-linenoise.patch rename to package/lua/5.3.4/0011-linenoise.patch index f3ced2b22e..574e6c8f0b 100644 --- a/package/lua/5.3.2/0011-linenoise.patch +++ b/package/lua/5.3.4/0011-linenoise.patch @@ -8,7 +8,7 @@ Index: b/src/lua.c =================================================================== --- a/src/lua.c +++ b/src/lua.c -@@ -83,6 +83,13 @@ +@@ -85,6 +85,13 @@ #define lua_saveline(L,line) ((void)L, add_history(line)) #define lua_freeline(L,b) ((void)L, free(b)) diff --git a/package/lua/lua.hash b/package/lua/lua.hash index 8f0242e02d..32e7472c38 100644 --- a/package/lua/lua.hash +++ b/package/lua/lua.hash @@ -1,6 +1,6 @@ # Hashes from: http://www.lua.org/ftp/ -md5 33278c2ab5ee3c1a875be8d55c1ca2a1 lua-5.3.2.tar.gz -sha1 7a47adef554fdca7d0c5536148de34579134a973 lua-5.3.2.tar.gz +md5 53a9c68bcc0eda58bdc2095ad5cdfc63 lua-5.3.4.tar.gz +sha1 79790cfd40e09ba796b01a571d4d63b52b1cd950 lua-5.3.4.tar.gz md5 913fdb32207046b273fdb17aad70be13 lua-5.2.4.tar.gz sha1 ef15259421197e3d85b7d6e4871b8c26fd82c1cf lua-5.2.4.tar.gz diff --git a/package/lua/lua.mk b/package/lua/lua.mk index 37992f26ab..5ef61e039e 100644 --- a/package/lua/lua.mk +++ b/package/lua/lua.mk @@ -5,7 +5,7 @@ ################################################################################ ifeq ($(BR2_PACKAGE_LUA_5_3),y) -LUA_VERSION = 5.3.2 +LUA_VERSION = 5.3.4 else ifeq ($(BR2_PACKAGE_LUA_5_2),y) LUA_VERSION = 5.2.4 @@ -62,14 +62,11 @@ endef LUA_POST_PATCH_HOOKS += LUA_32BITS_LUACONF endif -# We never want to have host-readline and host-ncurses as dependencies -# of host-lua. -HOST_LUA_DEPENDENCIES = HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX HOST_LUA_MYLIBS = -ldl define LUA_BUILD_CMDS - $(MAKE) \ + $(TARGET_MAKE_ENV) $(MAKE) \ CC="$(TARGET_CC)" RANLIB="$(TARGET_RANLIB)" \ CFLAGS="$(TARGET_CFLAGS) $(LUA_CFLAGS)" \ MYLIBS="$(LUA_MYLIBS)" AR="$(TARGET_CROSS)ar rcu" \ @@ -78,7 +75,7 @@ define LUA_BUILD_CMDS endef define HOST_LUA_BUILD_CMDS - $(MAKE) \ + $(HOST_MAKE_ENV) $(MAKE) \ CFLAGS="$(HOST_LUA_CFLAGS)" \ MYLDFLAGS="$(HOST_LDFLAGS)" \ MYLIBS="$(HOST_LUA_MYLIBS)" \ @@ -87,17 +84,17 @@ define HOST_LUA_BUILD_CMDS endef define LUA_INSTALL_STAGING_CMDS - $(MAKE) INSTALL_TOP="$(STAGING_DIR)/usr" -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) INSTALL_TOP="$(STAGING_DIR)/usr" -C $(@D) install $(INSTALL) -m 0644 -D $(@D)/etc/lua.pc \ $(STAGING_DIR)/usr/lib/pkgconfig/lua.pc endef define LUA_INSTALL_TARGET_CMDS - $(MAKE) INSTALL_TOP="$(TARGET_DIR)/usr" -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) INSTALL_TOP="$(TARGET_DIR)/usr" -C $(@D) install endef define HOST_LUA_INSTALL_CMDS - $(MAKE) INSTALL_TOP="$(HOST_DIR)/usr" -C $(@D) install + $(HOST_MAKE_ENV) $(MAKE) INSTALL_TOP="$(HOST_DIR)/usr" -C $(@D) install $(INSTALL) -m 0644 -D $(@D)/etc/lua.pc \ $(HOST_DIR)/usr/lib/pkgconfig/lua.pc endef diff --git a/package/luaexpatutils/luaexpatutils.hash b/package/luaexpatutils/luaexpatutils.hash new file mode 100644 index 0000000000..fe32eea128 --- /dev/null +++ b/package/luaexpatutils/luaexpatutils.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9b50bef94a6ddb6e6d4fffd5392f5c53d15e1a048966b559c4f8eda5e84d4517 luaexpatutils-88c228365b084224c911d34aff06002634b38b50.tar.gz diff --git a/package/luafilesystem/luafilesystem.mk b/package/luafilesystem/luafilesystem.mk index 5826e1efa3..a54ae236df 100644 --- a/package/luafilesystem/luafilesystem.mk +++ b/package/luafilesystem/luafilesystem.mk @@ -6,6 +6,7 @@ LUAFILESYSTEM_VERSION = 1.6.3-1 LUAFILESYSTEM_LICENSE = MIT +LUAFILESYSTEM_LICENSE_FILES = luafilesystem/LICENSE LUAFILESYSTEM_SUBDIR = luafilesystem $(eval $(luarocks-package)) diff --git a/package/luajit/Config.in b/package/luajit/Config.in index 8ce528b2cf..380f2472ea 100644 --- a/package/luajit/Config.in +++ b/package/luajit/Config.in @@ -3,7 +3,8 @@ config BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS default y if BR2_i386 || \ (BR2_x86_64 && BR2_HOSTARCH='x86_64') || \ BR2_powerpc || BR2_arm || BR2_armeb || \ - ((BR2_mips || BR2_mipsel) && !BR2_MIPS_SOFT_FLOAT) + ((BR2_mips || BR2_mipsel) && !BR2_MIPS_SOFT_FLOAT && \ + !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6) config BR2_PACKAGE_LUAJIT bool "luajit" diff --git a/package/luajit/luajit.mk b/package/luajit/luajit.mk index 81a26603cb..d3ef3b7599 100644 --- a/package/luajit/luajit.mk +++ b/package/luajit/luajit.mk @@ -36,7 +36,7 @@ endif # We unfortunately can't use TARGET_CONFIGURE_OPTS, because the luajit # build system uses non conventional variable names. define LUAJIT_BUILD_CMDS - $(MAKE) PREFIX="/usr" \ + $(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" \ STATIC_CC="$(TARGET_CC)" \ DYNAMIC_CC="$(TARGET_CC) -fPIC" \ TARGET_LD="$(TARGET_CC)" \ @@ -52,11 +52,11 @@ define LUAJIT_BUILD_CMDS endef define LUAJIT_INSTALL_STAGING_CMDS - $(MAKE) PREFIX="/usr" DESTDIR="$(STAGING_DIR)" LDCONFIG=true -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" DESTDIR="$(STAGING_DIR)" LDCONFIG=true -C $(@D) install endef define LUAJIT_INSTALL_TARGET_CMDS - $(MAKE) PREFIX="/usr" DESTDIR="$(TARGET_DIR)" LDCONFIG=true -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" DESTDIR="$(TARGET_DIR)" LDCONFIG=true -C $(@D) install endef define LUAJIT_INSTALL_SYMLINK @@ -66,13 +66,13 @@ LUAJIT_POST_INSTALL_TARGET_HOOKS += LUAJIT_INSTALL_SYMLINK # host-efl package needs host-luajit to be linked dynamically. define HOST_LUAJIT_BUILD_CMDS - $(MAKE) PREFIX="$(HOST_DIR)/usr" BUILDMODE=dynamic \ + $(HOST_MAKE_ENV) $(MAKE) PREFIX="$(HOST_DIR)/usr" BUILDMODE=dynamic \ TARGET_LDFLAGS="$(HOST_LDFLAGS)" \ -C $(@D) amalg endef define HOST_LUAJIT_INSTALL_CMDS - $(MAKE) PREFIX="$(HOST_DIR)/usr" LDCONFIG=true -C $(@D) install + $(HOST_MAKE_ENV) $(MAKE) PREFIX="$(HOST_DIR)/usr" LDCONFIG=true -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/luaposix/luaposix.hash b/package/luaposix/luaposix.hash new file mode 100644 index 0000000000..e2216be733 --- /dev/null +++ b/package/luaposix/luaposix.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e66262f5b7fe1c32c65f17a5ef5ffb31c4d1877019b4870a5d373e2ab6526a21 luaposix-33.4.0.tar.gz diff --git a/package/luarocks/luarocks.hash b/package/luarocks/luarocks.hash index 4d9840a348..fb01993f09 100644 --- a/package/luarocks/luarocks.hash +++ b/package/luarocks/luarocks.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 68e38feeb66052e29ad1935a71b875194ed8b9c67c2223af5f4d4e3e2464ed97 luarocks-2.3.0.tar.gz +sha256 0e1ec34583e1b265e0fbafb64c8bd348705ad403fe85967fd05d3a659f74d2e5 luarocks-2.4.2.tar.gz diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk index 656b832b9b..d18056a527 100644 --- a/package/luarocks/luarocks.mk +++ b/package/luarocks/luarocks.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUAROCKS_VERSION = 2.3.0 +LUAROCKS_VERSION = 2.4.2 LUAROCKS_SITE = http://luarocks.org/releases LUAROCKS_LICENSE = MIT LUAROCKS_LICENSE_FILES = COPYING @@ -60,5 +60,7 @@ define LUAROCKS_FINALIZE_TARGET rm -rf $(TARGET_DIR)/usr/lib/luarocks endef +# Apply to global variable directly, as pkg-generic does not +ifneq ($(BR2_PACKAGE_LUAJIT)$(BR2_PACKAGE_LUA),) TARGET_FINALIZE_HOOKS += LUAROCKS_FINALIZE_TARGET - +endif diff --git a/package/luv/Config.in b/package/luv/Config.in index 787d16269b..b085baf546 100644 --- a/package/luv/Config.in +++ b/package/luv/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_LUV bool "luv" select BR2_PACKAGE_LIBUV - depends on BR2_TOOLCHAIN_HAS_THREADS # libuv + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv help @@ -9,6 +9,6 @@ config BR2_PACKAGE_LUV https://github.com/luvit/luv -comment "luv needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "luv needs a toolchain w/ NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU diff --git a/package/luv/luv.hash b/package/luv/luv.hash index 30646d90b8..140fe96386 100644 --- a/package/luv/luv.hash +++ b/package/luv/luv.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 fab5ba54f141711afc432216d03f3664710798204c78a2a7414479f10b2b2d83 luv-1.9.0-1.tar.gz +sha256 2eab80360f8ab6793612bb59d067a56664ac9a5a14988e0a09a53d0bff20c131 luv-1.9.1-0.tar.gz diff --git a/package/luv/luv.mk b/package/luv/luv.mk index 5e4d04819e..43cecf57fc 100644 --- a/package/luv/luv.mk +++ b/package/luv/luv.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUV_VERSION = 1.9.0-1 +LUV_VERSION = 1.9.1-0 LUV_SITE = https://github.com/luvit/luv/releases/download/$(LUV_VERSION) LUV_LICENSE = Apache-2.0 LUV_LICENSE_FILES = LICENSE.txt diff --git a/package/luvi/Config.in b/package/luvi/Config.in index 2f01f5c2fa..18317f401e 100644 --- a/package/luvi/Config.in +++ b/package/luvi/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LUVI bool "luvi" - depends on BR2_TOOLCHAIN_HAS_THREADS # libuv + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_PACKAGE_LUAJIT @@ -22,8 +22,8 @@ config BR2_PACKAGE_LUVI https://github.com/luvit/luvi -comment "luvi needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "luvi needs a toolchain w/ NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU comment "luvi needs LuaJIT" diff --git a/package/luvi/luvi.hash b/package/luvi/luvi.hash index 7aa099fa31..99fd69e798 100644 --- a/package/luvi/luvi.hash +++ b/package/luvi/luvi.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 1177fcc69b1bd74696d7f106e1632462b7331ef7816bbcada91a530ef19235ea luvi-src-v2.7.0.tar.gz -sha256 0269504ebd6fe73948bd2314199e686701c6de882fab84a48b8317c0671e84c5 35c3961d10d3f9e3752102ea8e8bb8c187b32241.patch +sha256 b36a3b96ec5852398338bc38567c5bb589783487c65130e1d702ff98fac3a6b7 luvi-src-v2.7.5.tar.gz diff --git a/package/luvi/luvi.mk b/package/luvi/luvi.mk index c5cfed6056..ade63f5fba 100644 --- a/package/luvi/luvi.mk +++ b/package/luvi/luvi.mk @@ -4,13 +4,12 @@ # ################################################################################ -LUVI_VERSION = v2.7.0 +LUVI_VERSION = v2.7.5 LUVI_SOURCE = luvi-src-$(LUVI_VERSION).tar.gz LUVI_SITE = https://github.com/luvit/luvi/releases/download/$(LUVI_VERSION) LUVI_LICENSE = Apache-2.0 LUVI_LICENSE_FILES = LICENSE.txt LUVI_DEPENDENCIES = libuv luajit luv host-luajit -LUVI_PATCH = https://github.com/luvit/luvi/commit/35c3961d10d3f9e3752102ea8e8bb8c187b32241.patch # Dispatch all architectures of LuaJIT ifeq ($(BR2_i386),y) diff --git a/package/lvm2/Config.in b/package/lvm2/Config.in index b3a6593609..23dff707cc 100644 --- a/package/lvm2/Config.in +++ b/package/lvm2/Config.in @@ -3,6 +3,8 @@ config BR2_PACKAGE_LVM2 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # needs fork() depends on !BR2_STATIC_LIBS # It fails to build statically + # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html + depends on !BR2_TOOLCHAIN_USES_MUSL help This is LVM2, the rewrite of The Linux Logical Volume Manager. LVM supports enterprise level volume management of disk and disk @@ -34,6 +36,6 @@ config BR2_PACKAGE_LVM2_APP_LIBRARY endif -comment "lvm2 needs a toolchain w/ threads, dynamic library" +comment "lvm2 needs a glibc or uClibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/lvm2/lvm2.hash b/package/lvm2/lvm2.hash index 2aa7d78ba2..3619af8741 100644 --- a/package/lvm2/lvm2.hash +++ b/package/lvm2/lvm2.hash @@ -1,2 +1,2 @@ # From ftp://sources.redhat.com/pub/lvm2/releases/sha512.sum -sha512 1c1c3f95ab76e23629ee54b87d36536f887d8a30976413206491a3a13101b717948b3ab4a7778cb1e74f258f429871076f0b9d098785835c4885eb61def793ca LVM2.2.02.153.tgz +sha512 ebff909e1c81919967373c55c7a95ba13ef4e0536b8ef1c28ed7e1c1eb9b9fd406a649d93b141822b24675ebece5a722247737c4e869fb7fb5eeb881a7f9102d LVM2.2.02.168.tgz diff --git a/package/lvm2/lvm2.mk b/package/lvm2/lvm2.mk index d45a108f37..a2d484bc25 100644 --- a/package/lvm2/lvm2.mk +++ b/package/lvm2/lvm2.mk @@ -4,7 +4,7 @@ # ################################################################################ -LVM2_VERSION = 2.02.153 +LVM2_VERSION = 2.02.168 LVM2_SOURCE = LVM2.$(LVM2_VERSION).tgz LVM2_SITE = ftp://sources.redhat.com/pub/lvm2/releases LVM2_INSTALL_STAGING = YES @@ -20,8 +20,8 @@ LVM2_CONF_OPTS += \ --enable-dmeventd # LVM2 uses autoconf, but not automake, and the build system does not -# take into account the CC passed at configure time. -LVM2_MAKE_ENV = CC="$(TARGET_CC)" +# take into account the toolchain passed at configure time. +LVM2_MAKE_ENV = $(TARGET_CONFIGURE_OPTS) ifeq ($(BR2_PACKAGE_READLINE),y) LVM2_DEPENDENCIES += readline @@ -43,7 +43,7 @@ else LVM2_CONF_OPTS += --disable-applib endif -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) LVM2_CONF_ENV += ac_cv_flag_HAVE_PIE=no endif diff --git a/package/lxc/0001-drop-werror.patch b/package/lxc/0001-drop-werror.patch deleted file mode 100644 index d2a8673a86..0000000000 --- a/package/lxc/0001-drop-werror.patch +++ /dev/null @@ -1,16 +0,0 @@ -Don't do -Werror it breaks builds on some scenarios with trivialities. - -Signed-off-by: Gustavo Zacarias - -diff -Nura lxc-lxc-1.0.4/configure.ac lxc-lxc-1.0.4.orig/configure.ac ---- lxc-lxc-1.0.4.orig/configure.ac 2014-07-04 10:31:19.821029891 -0300 -+++ lxc-lxc-1.0.4/configure.ac 2014-06-13 14:07:45.000000000 -0300 -@@ -560,7 +560,7 @@ - LXC_CHECK_TLS - - if test "x$GCC" = "xyes"; then -- CFLAGS="$CFLAGS -Wall -Werror" -+ CFLAGS="$CFLAGS -Wall" - fi - - # Files requiring some variable expansion diff --git a/package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch b/package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch deleted file mode 100644 index b48ece38f6..0000000000 --- a/package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 245bba9aadf8e7aea487b6fbd851f86c75524552 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Thu, 19 May 2016 21:51:27 +0200 -Subject: [PATCH] Fix redefinition of struct in6_addr -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -struct in6_addr is both defined in the C library header -and the Linux kernel header . - -lxc_user_nic.c includes both and . The -later one includes . - -This breaks build with the musl libc: - error: redefinition of ‘struct in6_addr’ - -As lxc_user_nic.c does not use any references from it -is safe to remove this header. - -Upstream status: Pending -https://github.com/lxc/lxc/pull/1029 - -Signed-off-by: Jörg Krause ---- - src/lxc/lxc_user_nic.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/lxc/lxc_user_nic.c b/src/lxc/lxc_user_nic.c -index 87780ca..0cb38ba 100644 ---- a/src/lxc/lxc_user_nic.c -+++ b/src/lxc/lxc_user_nic.c -@@ -41,7 +41,6 @@ - #include - #include - #include --#include - #include - #include - #include --- -2.8.2 - diff --git a/package/lxc/lxc.hash b/package/lxc/lxc.hash index 747010162c..f80c88d6e6 100644 --- a/package/lxc/lxc.hash +++ b/package/lxc/lxc.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9588ad1b04e114ee7370f690c65131e28098b28d2521d97c73557d11897ed0be lxc-1.1.5.tar.gz +sha256 1c09c075f06ec029f86fa6370c7d379494ff4c66a129eda17af7b7b41e055f5d lxc-2.0.7.tar.gz diff --git a/package/lxc/lxc.mk b/package/lxc/lxc.mk index 819096959a..455814b9c9 100644 --- a/package/lxc/lxc.mk +++ b/package/lxc/lxc.mk @@ -4,17 +4,24 @@ # ################################################################################ -LXC_VERSION = 1.1.5 +LXC_VERSION = 2.0.7 LXC_SITE = https://linuxcontainers.org/downloads/lxc LXC_LICENSE = LGPLv2.1+ LXC_LICENSE_FILES = COPYING LXC_DEPENDENCIES = libcap host-pkgconf -# we're patching configure.ac -LXC_AUTORECONF = YES +LXC_INSTALL_STAGING = YES + LXC_CONF_OPTS = --disable-apparmor --with-distro=buildroot \ - --disable-lua --disable-python \ + --disable-python --disable-werror \ $(if $(BR2_PACKAGE_BASH),,--disable-bash) +ifeq ($(BR2_PACKAGE_GNUTLS),y) +LXC_CONF_OPTS += --enable-gnutls +LXC_DEPENDENCIES += gnutls +else +LXC_CONF_OPTS += --disable-gnutls +endif + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) LXC_CONF_OPTS += --enable-seccomp LXC_DEPENDENCIES += libseccomp @@ -22,4 +29,15 @@ else LXC_CONF_OPTS += --disable-seccomp endif +ifeq ($(BR2_PACKAGE_HAS_LUAINTERPRETER),y) +LXC_CONF_OPTS += --enable-lua +LXC_DEPENDENCIES += luainterpreter +ifeq ($(BR2_PACKAGE_LUAJIT),y) +# By default, lxc will only search for lua.pc +LXC_CONF_OPTS += --with-lua-pc=luajit +endif +else +LXC_CONF_OPTS += --disable-lua +endif + $(eval $(autotools-package)) diff --git a/package/lz4/lz4.mk b/package/lz4/lz4.mk index a5a41d359c..9d7f56bbf6 100644 --- a/package/lz4/lz4.mk +++ b/package/lz4/lz4.mk @@ -18,25 +18,25 @@ LZ4_POST_PATCH_HOOKS += LZ4_DISABLE_SHARED endif define HOST_LZ4_BUILD_CMDS - $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) endef define HOST_LZ4_INSTALL_CMDS - $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ install -C $(@D) endef define LZ4_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/lib + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/lib endef define LZ4_INSTALL_STAGING_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(STAGING_DIR) \ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(STAGING_DIR) \ PREFIX=/usr install -C $(@D) endef define LZ4_INSTALL_TARGET_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) \ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) \ PREFIX=/usr install -C $(@D)/lib endef diff --git a/package/lzip/Config.in b/package/lzip/Config.in index f20d0e5daa..821cd26292 100644 --- a/package/lzip/Config.in +++ b/package/lzip/Config.in @@ -11,4 +11,4 @@ config BR2_PACKAGE_LZIP bzip2, and is better than both from a data recovery perspective. Lzip is a clean implementation of the LZMA algorithm. - http://savannah.nongnu.org/projects/lzip + http://www.nongnu.org/lzip/lzip.html diff --git a/package/lzip/lzip.hash b/package/lzip/lzip.hash index 7b83e3e6a2..8855231fb3 100644 --- a/package/lzip/lzip.hash +++ b/package/lzip/lzip.hash @@ -1,2 +1,4 @@ +# From http://lists.nongnu.org/archive/html/lzip-bug/2016-06/msg00002.html +sha1 ef42f3209d02c3b3c217a61c8f127bcb8747b128 lzip-1.18.tar.gz # Locally calculated after checking pgp signature -sha256 7cd3fcda68fc9900efcf7784313e3bdd1303fef1a0546db9723f5e5564dd05b6 lzip-1.15.tar.gz +sha256 47f9882a104ab05532f467a7b8f4ddbb898fa2f1e8d9d468556d6c2d04db14dd lzip-1.18.tar.gz diff --git a/package/lzip/lzip.mk b/package/lzip/lzip.mk index 7b1fdf48af..db04862c53 100644 --- a/package/lzip/lzip.mk +++ b/package/lzip/lzip.mk @@ -4,35 +4,35 @@ # ################################################################################ -LZIP_VERSION = 1.15 +LZIP_VERSION = 1.18 LZIP_SITE = http://download.savannah.gnu.org/releases/lzip -LZIP_LICENSE = GPLv3+ +LZIP_LICENSE = GPLv2+ LZIP_LICENSE_FILES = COPYING define LZIP_CONFIGURE_CMDS - (cd $(@D); ./configure --prefix=/usr \ + (cd $(@D); $(TARGET_MAKE_ENV) ./configure --prefix=/usr \ $(TARGET_CONFIGURE_OPTS) ) endef define HOST_LZIP_CONFIGURE_CMDS - (cd $(@D); ./configure --prefix=/usr \ + (cd $(@D); $(HOST_MAKE_ENV) ./configure --prefix=/usr \ $(HOST_CONFIGURE_OPTS) ) endef define LZIP_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define HOST_LZIP_BUILD_CMDS - $(MAKE) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) endef define LZIP_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef define HOST_LZIP_INSTALL_CMDS - $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) install endef # It's not autotools-based diff --git a/package/lzlib/lzlib.mk b/package/lzlib/lzlib.mk index 91f380afa2..f468a1c839 100644 --- a/package/lzlib/lzlib.mk +++ b/package/lzlib/lzlib.mk @@ -6,7 +6,7 @@ LZLIB_VERSION = 0.4.3 LZLIB_SITE = $(call github,LuaDist,lzlib,$(LZLIB_VERSION)) -LZLIB_DEPENDENCIES = zlib +LZLIB_DEPENDENCIES = lua zlib LZLIB_LICENSE = MIT LZLIB_CONF_OPTS = -DINSTALL_CMOD="/usr/lib/lua/$(LUAINTERPRETER_ABIVER)" \ -DINSTALL_LMOD="/usr/share/lua/$(LUAINTERPRETER_ABIVER)" diff --git a/package/lzop/0001-build-with-gcc6.patch b/package/lzop/0001-build-with-gcc6.patch new file mode 100644 index 0000000000..774ee54a65 --- /dev/null +++ b/package/lzop/0001-build-with-gcc6.patch @@ -0,0 +1,37 @@ +From: Jaap Crezee +Date: Sat, 25 june 2016 13:13:00 +0200 +Subject: [PATCH 1/1] fix compilation host-lzop with gcc-6 + +This patch allows host-lzop to be compiled with host systems containing gcc-6 + +Upstream patch found here: +https://build.opensuse.org/package/view_file/Archiving/lzop/lzop-1.03-gcc6.patch?expand=1 + +Signed-off-by: Jaap Crezee + +--- a/src/miniacc.h.orig 2016-02-10 16:09:23.247315866 +0100 ++++ b/src/miniacc.h 2016-02-10 16:12:14.973297054 +0100 +@@ -4469,12 +4469,12 @@ + #if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150) + #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) + #else +- ACCCHK_ASSERT((1 << (8*SIZEOF_INT-1)) < 0) ++ ACCCHK_ASSERT((int)(1u << (8*SIZEOF_INT-1)) < 0) + #endif + ACCCHK_ASSERT((1u << (8*SIZEOF_INT-1)) > 0) + #if 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) + #else +- ACCCHK_ASSERT((1l << (8*SIZEOF_LONG-1)) < 0) ++ ACCCHK_ASSERT((long)(1ul << (8*SIZEOF_LONG-1)) < 0) + #endif + ACCCHK_ASSERT((1ul << (8*SIZEOF_LONG-1)) > 0) + #if defined(acc_int16e_t) +@@ -4703,7 +4703,7 @@ + #elif 1 && (ACC_CC_LCC || ACC_CC_LCCWIN32) && !defined(ACCCHK_CFG_PEDANTIC) + #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) + #elif !(ACC_BROKEN_INTEGRAL_PROMOTION) && (SIZEOF_INT > 1) +- ACCCHK_ASSERT( (((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0) ++ ACCCHK_ASSERT( (int)((unsigned int)((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0) + #endif + #if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0530) && (__BORLANDC__ < 0x0560)) + # pragma option pop diff --git a/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch b/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch new file mode 100644 index 0000000000..f6d076a9f7 --- /dev/null +++ b/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch @@ -0,0 +1,102 @@ +From ecccbcf66da53779d88e38e2af7f82eff8dde7f8 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 16 Aug 2015 10:35:47 -0700 +Subject: [PATCH] use static inlines as the external inline definition has + changed with gcc5 + +[Patch from https://raw.githubusercontent.com/openembedded/openembedded-core/master/meta/recipes-support/lzop/lzop/0001-use-static-inlines-as-the-external-inline-definition.patch] +Signed-off-by: Khem Raj +Signed-off-by: Peter Korsgaard +--- +Upstream-Status: Pending + + src/miniacc.h | 24 ++++++++---------------- + 1 file changed, 8 insertions(+), 16 deletions(-) + +diff --git a/src/miniacc.h b/src/miniacc.h +index 09e6f0c..cae98d1 100644 +--- a/src/miniacc.h ++++ b/src/miniacc.h +@@ -2880,8 +2880,7 @@ typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t); + #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) + #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) + #if !defined(ACC_UA_GET_LE16) +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp); +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { ++static __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { + __acc_ua_volatile const acc_uint16e_t* p = (__acc_ua_volatile const acc_uint16e_t*) pp; + unsigned long v; + __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); +@@ -2890,8 +2889,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const + #define ACC_UA_GET_LE16(p) __ACC_UA_GET_LE16(p) + #endif + #if !defined(ACC_UA_SET_LE16) +-extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v); +-extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { ++static __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { + __acc_ua_volatile acc_uint16e_t* p = (__acc_ua_volatile acc_uint16e_t*) pp; + __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); + } +@@ -2916,8 +2914,7 @@ extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsi + #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) + #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) + #if !defined(ACC_UA_GET_LE32) +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp); +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { ++static __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { + __acc_ua_volatile const acc_uint32e_t* p = (__acc_ua_volatile const acc_uint32e_t*) pp; + unsigned long v; + __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); +@@ -2926,8 +2923,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const + #define ACC_UA_GET_LE32(p) __ACC_UA_GET_LE32(p) + #endif + #if !defined(ACC_UA_SET_LE32) +-extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v); +-extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { ++static __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { + __acc_ua_volatile acc_uint32e_t* p = (__acc_ua_volatile acc_uint32e_t*) pp; + __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); + } +@@ -3307,8 +3303,7 @@ typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t); + #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) + #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) + #if !defined(ACC_UA_GET_LE16) +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp); +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { ++static __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { + __acc_ua_volatile const acc_uint16e_t* p = (__acc_ua_volatile const acc_uint16e_t*) pp; + unsigned long v; + __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); +@@ -3317,8 +3312,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const + #define ACC_UA_GET_LE16(p) __ACC_UA_GET_LE16(p) + #endif + #if !defined(ACC_UA_SET_LE16) +-extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v); +-extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { ++static __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { + __acc_ua_volatile acc_uint16e_t* p = (__acc_ua_volatile acc_uint16e_t*) pp; + __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); + } +@@ -3343,8 +3337,7 @@ extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsi + #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) + #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) + #if !defined(ACC_UA_GET_LE32) +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp); +-extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { ++static __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { + __acc_ua_volatile const acc_uint32e_t* p = (__acc_ua_volatile const acc_uint32e_t*) pp; + unsigned long v; + __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); +@@ -3353,8 +3346,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const + #define ACC_UA_GET_LE32(p) __ACC_UA_GET_LE32(p) + #endif + #if !defined(ACC_UA_SET_LE32) +-extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v); +-extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { ++static __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { + __acc_ua_volatile acc_uint32e_t* p = (__acc_ua_volatile acc_uint32e_t*) pp; + __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); + } +-- +2.5.0 + diff --git a/package/lzop/lzop.mk b/package/lzop/lzop.mk index 1b6a7e177c..43c1628401 100644 --- a/package/lzop/lzop.mk +++ b/package/lzop/lzop.mk @@ -9,6 +9,7 @@ LZOP_SITE = http://www.lzop.org/download LZOP_LICENSE = GPLv2+ LZOP_LICENSE_FILES = COPYING LZOP_DEPENDENCIES = lzo +HOST_LZOP_DEPENDENCIES = host-lzo $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/m4/m4.hash b/package/m4/m4.hash index 38214dc967..79c36c8706 100644 --- a/package/m4/m4.hash +++ b/package/m4/m4.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 f0543c3beb51fa6b3337d8025331591e0e18d8ec2886ed391f1aade43477d508 m4-1.4.17.tar.xz +sha256 f2c1e86ca0a404ff281631bdc8377638992744b175afb806e25871a24a934e07 m4-1.4.18.tar.xz diff --git a/package/m4/m4.mk b/package/m4/m4.mk index 9b5d2d1fa9..d53f7cbd0d 100644 --- a/package/m4/m4.mk +++ b/package/m4/m4.mk @@ -4,7 +4,7 @@ # ################################################################################ -M4_VERSION = 1.4.17 +M4_VERSION = 1.4.18 M4_SOURCE = m4-$(M4_VERSION).tar.xz M4_SITE = $(BR2_GNU_MIRROR)/m4 M4_LICENSE = GPLv3+ diff --git a/package/madplay/madplay.mk b/package/madplay/madplay.mk index 2606ac8d66..6b13819754 100644 --- a/package/madplay/madplay.mk +++ b/package/madplay/madplay.mk @@ -11,6 +11,14 @@ MADPLAY_LICENSE_FILES = COPYING COPYRIGHT MADPLAY_LIBTOOL_PATCH = NO MADPLAY_DEPENDENCIES = libmad libid3tag $(if $(BR2_PACKAGE_GETTEXT),gettext) +# Workaround a bug in uClibc-ng, which exposes madvise() but doesn't +# provide the corresponding MADV_* definitions. Bug reported at +# http://mailman.uclibc-ng.org/pipermail/devel/2016-December/001306.html. madvise() +# is anyway useless on noMMU. +ifeq ($(BR2_USE_MMU),) +MADPLAY_CONF_ENV += ac_cv_func_madvise=no +endif + # Check if ALSA is built, then we should configure after alsa-lib so # ./configure can find alsa-lib. ifeq ($(BR2_PACKAGE_MADPLAY_ALSA),y) diff --git a/package/make/make.hash b/package/make/make.hash index db95c60191..ea2e860512 100644 --- a/package/make/make.hash +++ b/package/make/make.hash @@ -1,2 +1,4 @@ +# From http://lists.gnu.org/archive/html/info-gnu/2016-06/msg00005.html +md5 15b012617e7c44c0ed482721629577ac make-4.2.1.tar.bz2 # Locally calculated after checking signature -sha256 0bc7613389650ee6a24554b52572a272f7356164fd2c4132b0bcf13123e4fca5 make-4.1.tar.bz2 +sha256 d6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589 make-4.2.1.tar.bz2 diff --git a/package/make/make.mk b/package/make/make.mk index 20702dc237..c51ce3b72f 100644 --- a/package/make/make.mk +++ b/package/make/make.mk @@ -4,7 +4,7 @@ # ################################################################################ -MAKE_VERSION = 4.1 +MAKE_VERSION = 4.2.1 MAKE_SOURCE = make-$(MAKE_VERSION).tar.bz2 MAKE_SITE = $(BR2_GNU_MIRROR)/make MAKE_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) diff --git a/package/makedevs/Config.in b/package/makedevs/Config.in deleted file mode 100644 index 923150dd6d..0000000000 --- a/package/makedevs/Config.in +++ /dev/null @@ -1,5 +0,0 @@ -config BR2_PACKAGE_MAKEDEVS - bool "makedevs" - help - The makedevs utility allows to create a set of device files - according to a configuration file. diff --git a/package/makedevs/makedevs.c b/package/makedevs/makedevs.c index e5ef16413e..7092b1475e 100644 --- a/package/makedevs/makedevs.c +++ b/package/makedevs/makedevs.c @@ -35,6 +35,9 @@ #include /* major() and minor() */ #endif #include +#ifdef EXTENDED_ATTRIBUTES +#include +#endif /* EXTENDED_ATTRIBUTES */ const char *bb_applet_name; uid_t recursive_uid; @@ -349,6 +352,49 @@ char *concat_path_file(const char *path, const char *filename) return outbuf; } +#ifdef EXTENDED_ATTRIBUTES +int bb_set_xattr(const char *fpath, const char *xattr) +{ + cap_t cap, cap_file, cap_new; + char *cap_file_text, *cap_new_text; + ssize_t length; + + cap = cap_from_text(xattr); + if (cap == NULL) + bb_perror_msg_and_die("cap_from_text failed for %s", xattr); + + cap_file = cap_get_file(fpath); + if (cap_file == NULL) { + /* if no capability was set before, we initialize cap_file */ + if (errno != ENODATA) + bb_perror_msg_and_die("cap_get_file failed on %s", fpath); + + cap_file = cap_init(); + if (!cap_file) + bb_perror_msg_and_die("cap_init failed"); + } + + if ((cap_file_text = cap_to_text(cap_file, &length)) == NULL) + bb_perror_msg_and_die("cap_to_name failed on %s", fpath); + + bb_xasprintf(&cap_new_text, "%s %s", cap_file_text, xattr); + + if ((cap_new = cap_from_text(cap_new_text)) == NULL) + bb_perror_msg_and_die("cap_from_text failed on %s", cap_new_text); + + if (cap_set_file(fpath, cap_new) == -1) + bb_perror_msg_and_die("cap_set_file failed for %s (xattr = %s)", fpath, xattr); + + cap_free(cap); + cap_free(cap_file); + cap_free(cap_file_text); + cap_free(cap_new); + cap_free(cap_new_text); + + return 0; +} +#endif /* EXTENDED_ATTRIBUTES */ + void bb_show_usage(void) { fprintf(stderr, "%s: [-d device_table] rootdir\n\n", bb_applet_name); @@ -413,6 +459,7 @@ int main(int argc, char **argv) int opt; FILE *table = stdin; char *rootdir = NULL; + char *full_name = NULL; char *line = NULL; int linenum = 0; int ret = EXIT_SUCCESS; @@ -454,15 +501,30 @@ int main(int argc, char **argv) unsigned int count = 0; unsigned int increment = 0; unsigned int start = 0; + char xattr[255]; char name[4096]; char user[41]; char group[41]; - char *full_name; uid_t uid; gid_t gid; linenum++; + if (1 == sscanf(line, "|xattr %254s", xattr)) { +#ifdef EXTENDED_ATTRIBUTES + if (!full_name) + bb_error_msg_and_die("line %d should be after a file\n", linenum); + + if (bb_set_xattr(full_name, xattr) < 0) + bb_error_msg_and_die("can't set cap %s on file %s\n", xattr, full_name); +#else + bb_error_msg_and_die("line %d not supported: '%s'\nDid you forget to enable " + "BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES?\n", + linenum, line); +#endif /* EXTENDED_ATTRIBUTES */ + continue; + } + if ((2 > sscanf(line, "%4095s %c %o %40s %40s %u %u %u %u %u", name, &type, &mode, user, group, &major, &minor, &start, &increment, &count)) || @@ -487,6 +549,13 @@ int main(int argc, char **argv) } else { uid = getuid(); } + + /* + * free previous full name + * we don't de-allocate full_name at the end of the parsing, + * because we may need it if the next line is an xattr. + */ + free(full_name); full_name = concat_path_file(rootdir, name); if (type == 'd') { @@ -530,6 +599,8 @@ int main(int argc, char **argv) } else { dev_t rdev; + unsigned i; + char *full_name_inc; if (type == 'p') { mode |= S_IFIFO; @@ -545,47 +616,27 @@ int main(int argc, char **argv) goto loop; } - if (count > 0) { - int i; - char *full_name_inc; - - full_name_inc = xmalloc(strlen(full_name) + 8); - for (i = 0; i < count; i++) { - sprintf(full_name_inc, "%s%d", full_name, start + i); - rdev = makedev(major, minor + i * increment); - if (mknod(full_name_inc, mode, rdev) == -1) { - bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name_inc); - ret = EXIT_FAILURE; - } - else if (chown(full_name_inc, uid, gid) == -1) { - bb_perror_msg("line %d: chown failed for %s", linenum, full_name_inc); - ret = EXIT_FAILURE; - } - if ((mode != -1) && (chmod(full_name_inc, mode) < 0)){ - bb_perror_msg("line %d: chmod failed for %s", linenum, full_name_inc); - ret = EXIT_FAILURE; - } - } - free(full_name_inc); - } else { - rdev = makedev(major, minor); - if (mknod(full_name, mode, rdev) == -1) { - bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name); + full_name_inc = xmalloc(strlen(full_name) + sizeof(int)*3 + 2); + if (count) + count--; + for (i = start; i <= start + count; i++) { + sprintf(full_name_inc, count ? "%s%u" : "%s", full_name, i); + rdev = makedev(major, minor + (i - start) * increment); + if (mknod(full_name_inc, mode, rdev) < 0) { + bb_perror_msg("line %d: can't create node %s", linenum, full_name_inc); ret = EXIT_FAILURE; - } - else if (chown(full_name, uid, gid) == -1) { - bb_perror_msg("line %d: chown failed for %s", linenum, full_name); + } else if (chown(full_name_inc, uid, gid) < 0) { + bb_perror_msg("line %d: can't chown %s", linenum, full_name_inc); ret = EXIT_FAILURE; - } - if ((mode != -1) && (chmod(full_name, mode) < 0)){ - bb_perror_msg("line %d: chmod failed for %s", linenum, full_name); + } else if (chmod(full_name_inc, mode) < 0) { + bb_perror_msg("line %d: can't chmod %s", linenum, full_name_inc); ret = EXIT_FAILURE; } } + free(full_name_inc); } loop: free(line); - free(full_name); } fclose(table); diff --git a/package/makedevs/makedevs.mk b/package/makedevs/makedevs.mk index fa8e753cbd..9bd684f036 100644 --- a/package/makedevs/makedevs.mk +++ b/package/makedevs/makedevs.mk @@ -4,30 +4,24 @@ # ################################################################################ -# source included in buildroot -MAKEDEVS_SOURCE = -HOST_MAKEDEVS_SOURCE = - -MAKEDEVS_VERSION = buildroot-$(BR2_VERSION) MAKEDEVS_LICENSE = GPLv2 -define MAKEDEVS_BUILD_CMDS - $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \ - package/makedevs/makedevs.c -o $(@D)/makedevs -endef +HOST_MAKEDEVS_CFLAGS = $(HOST_CFLAGS) +HOST_MAKEDEVS_LDFLAGS = $(HOST_LDFLAGS) -define MAKEDEVS_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 755 $(@D)/makedevs $(TARGET_DIR)/usr/sbin/makedevs -endef +ifeq ($(BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES),y) +HOST_MAKEDEVS_DEPENDENCIES += host-libcap +HOST_MAKEDEVS_CFLAGS += -DEXTENDED_ATTRIBUTES +HOST_MAKEDEVS_LDFLAGS += -lcap +endif define HOST_MAKEDEVS_BUILD_CMDS - $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) \ - package/makedevs/makedevs.c -o $(@D)/makedevs + $(HOSTCC) $(HOST_MAKEDEVS_CFLAGS) package/makedevs/makedevs.c \ + -o $(@D)/makedevs $(HOST_MAKEDEVS_LDFLAGS) endef define HOST_MAKEDEVS_INSTALL_CMDS $(INSTALL) -D -m 755 $(@D)/makedevs $(HOST_DIR)/usr/bin/makedevs endef -$(eval $(generic-package)) $(eval $(host-generic-package)) diff --git a/package/mali-t76x/Config.in b/package/mali-t76x/Config.in index 6c2ae4eb85..26a7f6c00d 100644 --- a/package/mali-t76x/Config.in +++ b/package/mali-t76x/Config.in @@ -23,6 +23,6 @@ config BR2_PACKAGE_PROVIDES_LIBGLES endif -comment "mali-t76x needs an (e)glibc toolchain with armhf enabled" +comment "mali-t76x needs a glibc toolchain with armhf enabled" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_ARM_EABIHF diff --git a/package/mariadb/0001-add-extra-check-for-librt.patch b/package/mariadb/0001-add-extra-check-for-librt.patch new file mode 100644 index 0000000000..26bff7546c --- /dev/null +++ b/package/mariadb/0001-add-extra-check-for-librt.patch @@ -0,0 +1,27 @@ +From e6244400dfd3547531a3a3289fadbbe19873f096 Mon Sep 17 00:00:00 2001 +From: Ryan Coe +Date: Thu, 27 Oct 2016 20:33:21 -0700 +Subject: [PATCH] add extra check for librt + +Signed-off-by: Ryan Coe +--- + configure.cmake | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/configure.cmake b/configure.cmake +index 896226de954f4642a238ca6a72e0930590dc1681..77ca485fb05e6b63bb69f9561b4eabfaa208a419 100644 +--- a/configure.cmake ++++ b/configure.cmake +@@ -126,6 +126,9 @@ IF(UNIX) + IF(NOT LIBRT) + MY_SEARCH_LIBS(clock_gettime rt LIBRT) + ENDIF() ++ IF(NOT LIBRT) ++ MY_SEARCH_LIBS(posix_spawn_file_actions_addclose rt LIBRT) ++ ENDIF() + FIND_PACKAGE(Threads) + + SET(CMAKE_REQUIRED_LIBRARIES +-- +2.9.3 + diff --git a/package/mariadb/S97mysqld b/package/mariadb/S97mysqld new file mode 100644 index 0000000000..62357fa8c4 --- /dev/null +++ b/package/mariadb/S97mysqld @@ -0,0 +1,77 @@ +#!/bin/sh +# +# mysql +# + +MYSQL_LIB="/var/lib/mysql" +MYSQL_RUN="/run/mysql" +MYSQL_PID="$MYSQL_RUN/mysqld.pid" +MYSQL_BIN="/usr/bin" + +wait_for_ready() { + WAIT_DELAY=5 + while [ $WAIT_DELAY -gt 0 ]; do + if $MYSQL_BIN/mysqladmin ping > /dev/null 2>&1; then + return 0 + fi + sleep 1 + : $((WAIT_DELAY -= 1)) + done + return 1 +} + +start() { + if [ `ls -1 $MYSQL_LIB | wc -l` = 0 ] ; then + printf "Creating mysql system tables ... " + $MYSQL_BIN/mysql_install_db --basedir=/usr --user=mysql \ + --datadir=$MYSQL_LIB > /dev/null 2>&1 + if [ $? != 0 ]; then + echo "FAIL" + exit 1 + fi + echo "OK" + fi + + # mysqld runs as user mysql, but /run is only writable by root + # so create a subdirectory for mysql. + install -d -o mysql -g root -m 0755 $MYSQL_RUN + + # We don't use start-stop-daemon because mysqld has its own + # wrapper script. + printf "Starting mysql ... " + $MYSQL_BIN/mysqld_safe --pid-file=$MYSQL_PID --user=mysql \ + > /dev/null 2>&1 & + wait_for_ready + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping mysql ... " + if [ -f $MYSQL_PID ]; then + kill `cat $MYSQL_PID` > /dev/null 2>&1 + [ $? = 0 ] && echo "OK" || echo "FAIL" + else + echo "FAIL" + fi +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + ;; +esac diff --git a/package/mariadb/mariadb.hash b/package/mariadb/mariadb.hash new file mode 100644 index 0000000000..3d6520f342 --- /dev/null +++ b/package/mariadb/mariadb.hash @@ -0,0 +1,5 @@ +# From https://downloads.mariadb.org/mariadb/10.1.21/ +sha1 f9ccaa9881b98eeef68f4dbcf5ab9653c903819f mariadb-10.1.21.tar.gz + +# Locally computed +sha256 5a816355781ea22a6c65a436d8162f19bd292ec90e2b7d9499c031ae4a659490 mariadb-10.1.21.tar.gz diff --git a/package/mariadb/mariadb.mk b/package/mariadb/mariadb.mk new file mode 100644 index 0000000000..aa4afc5b5c --- /dev/null +++ b/package/mariadb/mariadb.mk @@ -0,0 +1,116 @@ +################################################################################ +# +# mariadb +# +################################################################################ + +MARIADB_VERSION = 10.1.21 +MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source +MARIADB_LICENSE = GPLv2 (server), GPLv2 with FLOSS exception (GPL client library), LGPLv2 (LGPL client library) +MARIADB_LICENSE_FILES = README COPYING COPYING.LESSER +MARIADB_INSTALL_STAGING = YES +MARIADB_PROVIDES = mysql + +MARIADB_DEPENDENCIES = \ + host-mariadb \ + ncurses \ + openssl \ + zlib \ + libaio \ + libxml2 \ + readline + +# We won't need unit tests +MARIADB_CONF_OPTS += -DWITH_UNIT_TESTS=0 + +# Mroonga needs libstemmer. Some work still needs to be done before it can be +# included in buildroot. Disable it for now. +MARIADB_CONF_OPTS += -DWITHOUT_MROONGA=1 + +# This value is determined automatically during straight compile by compiling +# and running a test code. You cannot do that during cross-compile. However the +# stack grows downward in most if not all modern systems. The only exception I +# am aware of is PA-RISC which is not supported by buildroot. Therefore it makes +# sense to hardcode the value. If an arch is added the stack of which grows up +# one should expect unpredictable behavior at run time. +MARIADB_CONF_OPTS += -DSTACK_DIRECTION=-1 + +# Jemalloc was added for TokuDB. Since its configure script seems somewhat broken +# when it comes to cross-compilation we shall disable it and also disable TokuDB. +MARIADB_CONF_OPTS += -DWITH_JEMALLOC=no -DWITHOUT_TOKUDB=1 + +# Make it explicit that we are cross-compiling +MARIADB_CONF_OPTS += -DCMAKE_CROSSCOMPILING=1 + +# Explicitly disable dtrace to avoid detection of a host version +MARIADB_CONF_OPTS += -DENABLE_DTRACE=0 + +ifeq ($(BR2_PACKAGE_MARIADB_SERVER),y) +MARIADB_CONF_OPTS += -DWITH_EMBEDDED_SERVER=ON +else +MARIADB_CONF_OPTS += -DWITHOUT_SERVER=ON +endif + +MARIADB_CONF_OPTS += \ + -DINSTALL_DOCDIR=share/doc/mariadb-$(MARIADB_VERSION) \ + -DINSTALL_DOCREADMEDIR=share/doc/mariadb-$(MARIADB_VERSION) \ + -DINSTALL_MANDIR=share/man \ + -DINSTALL_MYSQLSHAREDIR=share/mysql \ + -DINSTALL_MYSQLTESTDIR=share/mysql/test \ + -DINSTALL_PLUGINDIR=lib/mysql/plugin \ + -DINSTALL_SBINDIR=sbin \ + -DINSTALL_SCRIPTDIR=bin \ + -DINSTALL_SQLBENCHDIR=share/mysql/bench \ + -DINSTALL_SUPPORTFILESDIR=share/mysql \ + -DMYSQL_DATADIR=/var/lib/mysql \ + -DMYSQL_UNIX_ADDR=$(MYSQL_SOCKET) + +# Some helpers must be compiled for host in order to crosscompile mariadb for +# the target. They are then included by import_executables.cmake which is +# generated during the build of the host helpers. It is not necessary to build +# the whole host package, only the "import_executables" target. +# -DIMPORT_EXECUTABLES=$(HOST_MARIADB_BUILDDIR)/import_executables.cmake +# must then be passed to cmake during target build. +# see also https://mariadb.com/kb/en/mariadb/cross-compiling-mariadb/ +HOST_MARIADB_MAKE_OPTS = import_executables + +MARIADB_CONF_OPTS += \ + -DIMPORT_EXECUTABLES=$(HOST_MARIADB_BUILDDIR)/import_executables.cmake + +# Don't install host-mariadb. We just need to build import_executable +# Therefore only run 'true' and do nothing, not even the default action. +HOST_MARIADB_INSTALL_CMDS = true + +ifeq ($(BR2_PACKAGE_MARIADB_SERVER),y) +define MARIADB_USERS + mysql -1 mysql -1 * /var/lib/mysql - - MySQL Server +endef + +define MARIADB_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/mariadb/S97mysqld \ + $(TARGET_DIR)/etc/init.d/S97mysqld +endef + +define MARIADB_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/mariadb/mysqld.service \ + $(TARGET_DIR)/usr/lib/systemd/system/mysqld.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/mysqld.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mysqld.service +endef +endif + +define MARIADB_POST_INSTALL + mkdir -p $(TARGET_DIR)/var/lib/mysql + $(INSTALL) -D -m 644 $(TARGET_DIR)/usr/share/mysql/my-small.cnf \ + $(TARGET_DIR)/etc/mysql/my.cnf + # We don't need this on the target as it's only useful in staging + $(RM) $(TARGET_DIR)/usr/bin/mysql_config + # Remove test suite + $(RM) -r $(TARGET_DIR)/usr/share/mysql/test +endef + +MARIADB_POST_INSTALL_TARGET_HOOKS += MARIADB_POST_INSTALL + +$(eval $(cmake-package)) +$(eval $(host-cmake-package)) diff --git a/package/mariadb/mysqld.service b/package/mariadb/mysqld.service new file mode 100644 index 0000000000..cd308310c6 --- /dev/null +++ b/package/mariadb/mysqld.service @@ -0,0 +1,13 @@ +[Unit] +Description=MySQL database server + +[Service] +ExecStartPre=/bin/sh -c 'test "`ls -1 /var/lib/mysql | wc -l`" != "0" || mysql_install_db --basedir=/usr --datadir=/var/lib/mysql' +ExecStart=/usr/bin/mysqld_safe +Restart=always +User=mysql +RuntimeDirectory=mysql +RuntimeDirectoryMode=0755 + +[Install] +WantedBy=multi-user.target diff --git a/package/matchbox-lib/matchbox-lib.mk b/package/matchbox-lib/matchbox-lib.mk index d43e2b8c3b..451279e6d4 100644 --- a/package/matchbox-lib/matchbox-lib.mk +++ b/package/matchbox-lib/matchbox-lib.mk @@ -21,8 +21,8 @@ endef MATCHBOX_LIB_POST_INSTALL_STAGING_HOOKS += MATCHBOX_LIB_POST_INSTALL_FIXES -ifeq ($(BR2_PACKAGE_X11R7_LIBXCOMPOSITE),y) -ifeq ($(BR2_PACKAGE_X11R7_LIBXPM),y) +ifeq ($(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),y) +ifeq ($(BR2_PACKAGE_XLIB_LIBXPM),y) MATCHBOX_LIB_DEPENDENCIES += xlib_libXpm endif endif diff --git a/package/mbedtls/Config.in b/package/mbedtls/Config.in index 24f0f489d4..ed63f2da58 100644 --- a/package/mbedtls/Config.in +++ b/package/mbedtls/Config.in @@ -17,4 +17,16 @@ config BR2_PACKAGE_MBEDTLS_PROGRAMS This option enables the installation and the build of mbed TLS companion programs. +config BR2_PACKAGE_MBEDTLS_COMPRESSION + bool "enable compression support" + select BR2_PACKAGE_ZLIB + help + Enable support for compression of the content data before it + enters the secure channel as described in RFC 3749. + + Warning: TLS compression may make you vulnerable to the CRIME + attack. You should not enable it unless you know for sure CRIME + and similar attacks are not applicable to your particular + situation. + endif diff --git a/package/mbedtls/mbedtls.hash b/package/mbedtls/mbedtls.hash index eebbfe8561..5f9786c292 100644 --- a/package/mbedtls/mbedtls.hash +++ b/package/mbedtls/mbedtls.hash @@ -1,2 +1,2 @@ -# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.2.1-2.1.4-1.3.16-and-polarssl.1.2.19-released -sha256 6ddd5ca2e7dfb43d2fd750400856246fc1c98344dabf01b1594eb2f9880ef7ce mbedtls-2.2.1-apache.tgz +# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.3.0-2.1.5-and-1.3.17-released +sha256 c1c3559ed39f7a1b1550c4cf4ccb918bf239301a3311d98dda92bed8a25b7f0d mbedtls-2.4.0-apache.tgz diff --git a/package/mbedtls/mbedtls.mk b/package/mbedtls/mbedtls.mk index 994a3f40a8..198879da4d 100644 --- a/package/mbedtls/mbedtls.mk +++ b/package/mbedtls/mbedtls.mk @@ -5,7 +5,7 @@ ################################################################################ MBEDTLS_SITE = https://tls.mbed.org/code/releases -MBEDTLS_VERSION = 2.2.1 +MBEDTLS_VERSION = 2.4.0 MBEDTLS_SOURCE = mbedtls-$(MBEDTLS_VERSION)-apache.tgz MBEDTLS_CONF_OPTS = \ -DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_MBEDTLS_PROGRAMS),ON,OFF) \ @@ -39,9 +39,14 @@ MBEDTLS_CONF_OPTS += \ -DUSE_SHARED_MBEDTLS_LIBRARY=ON -DUSE_STATIC_MBEDTLS_LIBRARY=OFF endif -ifeq ($(BR2_PACKAGE_ZLIB),y) +ifeq ($(BR2_PACKAGE_MBEDTLS_COMPRESSION),y) MBEDTLS_CONF_OPTS += -DENABLE_ZLIB_SUPPORT=ON MBEDTLS_DEPENDENCIES += zlib +define MBEDTLS_ENABLE_ZLIB + $(SED) "s://#define MBEDTLS_ZLIB_SUPPORT:#define MBEDTLS_ZLIB_SUPPORT:" \ + $(@D)/include/mbedtls/config.h +endef +MBEDTLS_POST_PATCH_HOOKS += MBEDTLS_ENABLE_ZLIB else MBEDTLS_CONF_OPTS += -DENABLE_ZLIB_SUPPORT=OFF endif @@ -60,7 +65,7 @@ endef # MIPS R6 asm is not yet supported ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THUMB2),yy) MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM -else ifeq ($(BR2_microblaze)$(BR2_mips_32r6)$(BR2_mips_64r6),y) +else ifeq ($(BR2_microblaze)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM endif diff --git a/package/mc/mc.hash b/package/mc/mc.hash index 0d22d80cd8..a8116d02bf 100644 --- a/package/mc/mc.hash +++ b/package/mc/mc.hash @@ -1,2 +1,2 @@ -# Hash from http://ftp.midnight-commander.org/mc-4.8.17.sha256: -sha256 0447bdddc0baa81866e66f50f9a545d29d6eebb68b0ab46c98d8fddd2bf4e44d mc-4.8.17.tar.xz +# Hash from http://ftp.midnight-commander.org/mc-4.8.18.sha256: +sha256 f7636815c987c1719c4f5de2dcd156a0e7d097b1d10e4466d2bdead343d5bece mc-4.8.18.tar.xz diff --git a/package/mc/mc.mk b/package/mc/mc.mk index 808f81c351..ff4c8ad294 100644 --- a/package/mc/mc.mk +++ b/package/mc/mc.mk @@ -4,7 +4,7 @@ # ################################################################################ -MC_VERSION = 4.8.17 +MC_VERSION = 4.8.18 MC_SOURCE = mc-$(MC_VERSION).tar.xz MC_SITE = http://ftp.midnight-commander.org MC_LICENSE = GPLv3+ diff --git a/package/mediastreamer/Config.in b/package/mediastreamer/Config.in index 396f7e464c..7e62bf2e7b 100644 --- a/package/mediastreamer/Config.in +++ b/package/mediastreamer/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_MEDIASTREAMER bool "mediastreamer" select BR2_PACKAGE_ORTP - depends on BR2_INSTALL_LIBSTDCPP # until fixed + depends on BR2_INSTALL_LIBSTDCPP # ortp depends on BR2_TOOLCHAIN_HAS_THREADS # ortp help Mediastreamer is a powerful and lightweighted streaming diff --git a/package/mediastreamer/mediastreamer.hash b/package/mediastreamer/mediastreamer.hash index 21964a864e..0f1ac77ce1 100644 --- a/package/mediastreamer/mediastreamer.hash +++ b/package/mediastreamer/mediastreamer.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 0dbf8d4f721a04db9ec0982e98a4e852ad2d3acbcbd25edd96a66164a980f2e7 mediastreamer-2.12.1.tar.gz +sha256 1144849c0c96abafb1153adf56109f0f195a9e4a53cf28cb611bbca7a9012c1a mediastreamer-2.14.0.tar.gz +sha256 90091ab0aa7a77381ab1ca5d88cdfa4e7f62505fb452a2bea0f70054d9d1aece 26f884bf977977041fe6f98a0af186be1580bf22.patch diff --git a/package/mediastreamer/mediastreamer.mk b/package/mediastreamer/mediastreamer.mk index a12bfb4b2d..b4f0c52c7c 100644 --- a/package/mediastreamer/mediastreamer.mk +++ b/package/mediastreamer/mediastreamer.mk @@ -4,7 +4,7 @@ # ################################################################################ -MEDIASTREAMER_VERSION = 2.12.1 +MEDIASTREAMER_VERSION = 2.14.0 MEDIASTREAMER_SITE = http://download.savannah.nongnu.org/releases/linphone/mediastreamer MEDIASTREAMER_INSTALL_STAGING = YES MEDIASTREAMER_DEPENDENCIES = host-intltool host-pkgconf ortp host-gettext @@ -13,6 +13,13 @@ MEDIASTREAMER_CONF_OPTS = --disable-tests --disable-glx --disable-strict MEDIASTREAMER_LICENSE = GPLv2+ MEDIASTREAMER_LICENSE_FILES = COPYING +# fix compilation issue with latest bctoolbox (touches configure.ac) +MEDIASTREAMER_PATCH = \ + https://github.com/BelledonneCommunications/mediastreamer2/commit/26f884bf977977041fe6f98a0af186be1580bf22.patch + +# patching configure.ac +MEDIASTREAMER_AUTORECONF = YES + ifeq ($(BR2_PACKAGE_ALSA_LIB_MIXER)$(BR2_PACKAGE_ALSA_LIB_PCM),yy) MEDIASTREAMER_CONF_OPTS += --enable-alsa MEDIASTREAMER_DEPENDENCIES += alsa-lib diff --git a/package/memcached/0001-fix-build-with-musl-libc.patch b/package/memcached/0001-fix-build-with-musl-libc.patch deleted file mode 100644 index 068382051c..0000000000 --- a/package/memcached/0001-fix-build-with-musl-libc.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 2137a608c77c467200d73469f723ba97ff6b3511 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Mon, 18 Jan 2016 12:11:48 +0100 -Subject: [PATCH] fix build with musl libc - -musl libc will warn if you include sys/signal.h instead of signal.h as -specified by posix. Build will fail due to -Werror explicitly beeing -set. - -Fix it by use the posix location. - -fixes #138 - -Signed-off-by: Baruch Siach ---- -Patch status: pending (https://github.com/memcached/memcached/pull/139) - - assoc.c | 2 +- - items.c | 2 +- - slabs.c | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/assoc.c b/assoc.c -index e6cf09b64e8c..9fff38fe01d6 100644 ---- a/assoc.c -+++ b/assoc.c -@@ -14,8 +14,8 @@ - #include "memcached.h" - #include - #include --#include - #include -+#include - #include - #include - #include -diff --git a/items.c b/items.c -index 199dc9fa6e6b..7040777ab0fb 100644 ---- a/items.c -+++ b/items.c -@@ -2,13 +2,13 @@ - #include "memcached.h" - #include - #include --#include - #include - #include - #include - #include - #include - #include -+#include - #include - #include - #include -diff --git a/slabs.c b/slabs.c -index 31e85f6ec21d..bfafe5d0fdde 100644 ---- a/slabs.c -+++ b/slabs.c -@@ -10,7 +10,6 @@ - #include "memcached.h" - #include - #include --#include - #include - #include - #include -@@ -18,6 +17,7 @@ - #include - #include - #include -+#include - #include - #include - --- -2.8.0.rc3 - diff --git a/package/memcached/memcached.hash b/package/memcached/memcached.hash index ed330cff1d..11cac3a590 100644 --- a/package/memcached/memcached.hash +++ b/package/memcached/memcached.hash @@ -1,4 +1,4 @@ -# From http://www.memcached.org/files/memcached-1.4.25.tar.gz.sha1 -sha1 7fd0ba9283c61204f196638ecf2e9295688b2314 memcached-1.4.25.tar.gz +# From http://www.memcached.org/files/memcached-1.4.34.tar.gz.sha1 +sha1 7c7214f5183c6e20c22b243e21ed1ffddb91497e memcached-1.4.34.tar.gz # Calculated based on the hash above -sha256 f058437b3c224d321919a9a6bb4e3eedb2312ed718c0caf087ff2f04ab795dda memcached-1.4.25.tar.gz +sha256 5064c87f91a37d822dfeab8768490c55fe686a742f07f67c7121101e48d87c79 memcached-1.4.34.tar.gz diff --git a/package/memcached/memcached.mk b/package/memcached/memcached.mk index b0753e4a32..caebe0289f 100644 --- a/package/memcached/memcached.mk +++ b/package/memcached/memcached.mk @@ -4,7 +4,7 @@ # ################################################################################ -MEMCACHED_VERSION = 1.4.25 +MEMCACHED_VERSION = 1.4.34 MEMCACHED_SITE = http://www.memcached.org/files MEMCACHED_DEPENDENCIES = libevent MEMCACHED_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' diff --git a/package/memstat/memstat.mk b/package/memstat/memstat.mk index 7ee4d6081d..e11b4ae643 100644 --- a/package/memstat/memstat.mk +++ b/package/memstat/memstat.mk @@ -11,7 +11,7 @@ MEMSTAT_LICENSE = GPL MEMSTAT_LICENSE_FILES = debian/copyright define MEMSTAT_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" CFLAGS="$(TARGET_CFLAGS)" \ -C $(@D) memstat endef diff --git a/package/memtester/memtester.mk b/package/memtester/memtester.mk index d12babca30..802c1e4902 100644 --- a/package/memtester/memtester.mk +++ b/package/memtester/memtester.mk @@ -13,11 +13,11 @@ MEMTESTER_TARGET_INSTALL_OPTS = INSTALLPATH=$(TARGET_DIR)/usr define MEMTESTER_BUILD_CMDS $(SED) "s,^cc,$(TARGET_CC)," $(@D)/conf-* - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define MEMTESTER_INSTALL_TARGET_CMDS - $(MAKE) $(MEMTESTER_TARGET_INSTALL_OPTS) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) $(MEMTESTER_TARGET_INSTALL_OPTS) -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/menu-cache/menu-cache.hash b/package/menu-cache/menu-cache.hash index 3b9e5c42c2..1b30fcc11c 100644 --- a/package/menu-cache/menu-cache.hash +++ b/package/menu-cache/menu-cache.hash @@ -1,2 +1,3 @@ -# From http://blog.lxde.org/?p=1299 -sha1 e7b3854109f9826472cf9795e924acebe5e27861 menu-cache-1.0.0.tar.xz +# From https://sourceforge.net/projects/lxde/files/menu-cache/1.0/ +md5 a856ba860b16fdc8c69ee784bc4ade36 menu-cache-1.0.1.tar.xz +sha1 58862c665f2ae56870a9937cdcd643674b2ac8ba menu-cache-1.0.1.tar.xz diff --git a/package/menu-cache/menu-cache.mk b/package/menu-cache/menu-cache.mk index 9d4386434d..16878258fd 100644 --- a/package/menu-cache/menu-cache.mk +++ b/package/menu-cache/menu-cache.mk @@ -5,7 +5,7 @@ ################################################################################ MENU_CACHE_VERSION_MAJOR = 1.0 -MENU_CACHE_VERSION = $(MENU_CACHE_VERSION_MAJOR).0 +MENU_CACHE_VERSION = $(MENU_CACHE_VERSION_MAJOR).1 MENU_CACHE_SOURCE = menu-cache-$(MENU_CACHE_VERSION).tar.xz MENU_CACHE_SITE = http://sourceforge.net/projects/lxde/files/menu-cache/$(MENU_CACHE_VERSION_MAJOR) MENU_CACHE_DEPENDENCIES = libfm-extra libglib2 diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk index 11e79cbd46..2c62c48ce6 100644 --- a/package/mesa3d-headers/mesa3d-headers.mk +++ b/package/mesa3d-headers/mesa3d-headers.mk @@ -12,7 +12,7 @@ endif # Not possible to directly refer to mesa3d variables, because of # first/second expansion trickery... -MESA3D_HEADERS_VERSION = 11.2.2 +MESA3D_HEADERS_VERSION = 13.0.4 MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz MESA3D_HEADERS_SITE = ftp://ftp.freedesktop.org/pub/mesa/$(MESA3D_HEADERS_VERSION) MESA3D_HEADERS_LICENSE = MIT, SGI, Khronos diff --git a/package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch b/package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch new file mode 100644 index 0000000000..656705b434 --- /dev/null +++ b/package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch @@ -0,0 +1,65 @@ +From 61b076689b6308b1c9d0d84ee8654a47e65e67ae Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Fri, 4 Nov 2016 19:44:37 +0100 +Subject: [PATCH 1/1] Fix endianess detection with musl-based toolchains + +Musl does not define __GLIBC__ and will not provide a __MUSL__ macro: +http://wiki.musl-libc.org/wiki/FAQ#Q:_why_is_there_no_MUSL_macro_.3F + +This patch checks for the presence of endian.h and promotes the result +to src/amd/Makefile.addrlib.am which executes the broken build command. +Fixes compile errors detected by the autobuilder infrastructure of the +buildroot project: + +http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/ +http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/ + +Patch sent upstream: https://patchwork.freedesktop.org/patch/119961/ + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 1 + + src/amd/Makefile.addrlib.am | 1 + + src/util/u_endian.h | 2 +- + 3 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 4761c59..7991b52 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -786,6 +786,7 @@ fi + AC_HEADER_MAJOR + AC_CHECK_HEADER([xlocale.h], [DEFINES="$DEFINES -DHAVE_XLOCALE_H"]) + AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"]) ++AC_CHECK_HEADER([endian.h], [DEFINES="$DEFINES -DHAVE_ENDIAN_H"]) + AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"]) + AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"]) + +diff --git a/src/amd/Makefile.addrlib.am b/src/amd/Makefile.addrlib.am +index 64823fc..4e2fb1d 100644 +--- a/src/amd/Makefile.addrlib.am ++++ b/src/amd/Makefile.addrlib.am +@@ -28,6 +28,7 @@ addrlib_libamdgpu_addrlib_la_CPPFLAGS = \ + -I$(srcdir)/addrlib/core \ + -I$(srcdir)/addrlib/inc/chip/r800 \ + -I$(srcdir)/addrlib/r800/chip \ ++ $(DEFINES) \ + -DBRAHMA_BUILD=1 + + addrlib_libamdgpu_addrlib_la_CXXFLAGS = \ +diff --git a/src/util/u_endian.h b/src/util/u_endian.h +index b9d563d..266fb4a 100644 +--- a/src/util/u_endian.h ++++ b/src/util/u_endian.h +@@ -27,7 +27,7 @@ + #ifndef U_ENDIAN_H + #define U_ENDIAN_H + +-#if defined(__GLIBC__) || defined(ANDROID) ++#if defined(__GLIBC__) || defined(ANDROID) || defined(HAVE_ENDIAN_H) + #include + + #if __BYTE_ORDER == __LITTLE_ENDIAN +-- +2.10.1 + diff --git a/package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch b/package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch new file mode 100644 index 0000000000..e32031eca1 --- /dev/null +++ b/package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch @@ -0,0 +1,39 @@ +From 60ee5191a0c074251862a15b12afdc9db0b2df38 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Thu, 17 Nov 2016 15:36:54 -0300 +Subject: [PATCH] configure.ac: invert order for wayland-scanner check + +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: Gustavo Zacarias +--- + configure.ac | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 5f30ae8..461792e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2025,11 +2025,11 @@ if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then + AC_MSG_ERROR([cannot build egl state tracker without EGL library]) + fi + +-PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner], +- WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`, +- WAYLAND_SCANNER='') ++AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) + if test "x$WAYLAND_SCANNER" = x; then +- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner]) ++ PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner], ++ WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`, ++ WAYLAND_SCANNER='') + fi + + # Do per-EGL platform setups and checks +-- +2.7.3 + diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 45ca69c4fc..bbab95373f 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -6,6 +6,7 @@ menuconfig BR2_PACKAGE_MESA3D depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL select BR2_PACKAGE_LIBDRM select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_HAS_LIBGL if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XPROTO_DRI2PROTO if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XPROTO_GLPROTO if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XPROTO_XF86DRIPROTO if BR2_PACKAGE_XORG7 @@ -21,21 +22,20 @@ menuconfig BR2_PACKAGE_MESA3D if BR2_PACKAGE_MESA3D -# inform the .mk file of gallium or dri driver selection +# inform the .mk file of gallium, dri or vulkan driver selection config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER select BR2_PACKAGE_MESA3D_DRIVER bool config BR2_PACKAGE_MESA3D_DRI_DRIVER select BR2_PACKAGE_MESA3D_DRIVER - select BR2_PACKAGE_HAS_LIBGL if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXSHMFENCE if BR2_PACKAGE_XPROTO_DRI3PROTO select BR2_PACKAGE_XPROTO_PRESENTPROTO if BR2_PACKAGE_XPROTO_DRI3PROTO bool -config BR2_PACKAGE_PROVIDES_LIBGL - default "mesa3d" if BR2_PACKAGE_MESA3D_DRI_DRIVER && \ - BR2_PACKAGE_XORG7 +config BR2_PACKAGE_MESA3D_VULKAN_DRIVER + bool + select BR2_PACKAGE_MESA3D_DRIVER config BR2_PACKAGE_MESA3D_DRIVER bool @@ -136,6 +136,29 @@ config BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON help Legacy Radeon driver for R100 series GPUs. +comment "Vulkan drivers" + +config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL + bool "Vulkan Intel driver" + depends on BR2_i386 || BR2_x86_64 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 # memfd.h + depends on BR2_TOOLCHAIN_USES_GLIBC # ifunc, static_assert + depends on BR2_PACKAGE_XORG7 # xproto_dri3proto + # 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_MESA3D_DRI_DRIVER_I965 + select BR2_PACKAGE_MESA3D_VULKAN_DRIVER + select BR2_PACKAGE_XPROTO_DRI3PROTO + help + Vulkan driver for Intel hardware from Ivy Bridge onward. + +comment "intel vulkan depends on X.org and needs a glibc toolchain w/ headers >= 3.18" + depends on BR2_i386 || BR2_x86_64 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 || \ + !BR2_TOOLCHAIN_USES_GLIBC || !BR2_PACKAGE_XORG7 + comment "Off-screen Rendering" config BR2_PACKAGE_MESA3D_OSMESA @@ -150,6 +173,7 @@ comment "Additional API Support" config BR2_PACKAGE_MESA3D_OPENGL_EGL bool "OpenGL EGL" select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBEGL_WAYLAND help Use the Khronos EGL APIs. EGL is a window manager for OpenGL applications similar to GLX, for X, and WGL, for Windows. @@ -163,6 +187,9 @@ config BR2_PACKAGE_MESA3D_OPENGL_ES endif # BR2_PACKAGE_MESA3D_DRIVER +config BR2_PACKAGE_PROVIDES_LIBGL + default "mesa3d" if BR2_PACKAGE_XORG7 + config BR2_PACKAGE_PROVIDES_LIBEGL default "mesa3d" if BR2_PACKAGE_MESA3D_OPENGL_EGL diff --git a/package/mesa3d/mesa3d.hash b/package/mesa3d/mesa3d.hash index fa06593b2d..b3c4b77726 100644 --- a/package/mesa3d/mesa3d.hash +++ b/package/mesa3d/mesa3d.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/mesa-announce/2016-April/000209.html -sha256 40e148812388ec7c6d7b6657d5a16e2e8dabba8b97ddfceea5197947647bdfb4 mesa-11.2.2.tar.xz +# From https://lists.freedesktop.org/archives/mesa-announce/2017-February/000294.html +sha256 a95d7ce8f7bd5f88585e4be3144a341236d8c0fc91f6feaec59bb8ba3120e726 mesa-13.0.4.tar.xz diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk index 15ba42299d..0c68dedfda 100644 --- a/package/mesa3d/mesa3d.mk +++ b/package/mesa3d/mesa3d.mk @@ -5,7 +5,7 @@ ################################################################################ # When updating the version, please also update mesa3d-headers -MESA3D_VERSION = 11.2.2 +MESA3D_VERSION = 13.0.4 MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz MESA3D_SITE = ftp://ftp.freedesktop.org/pub/mesa/$(MESA3D_VERSION) MESA3D_LICENSE = MIT, SGI, Khronos @@ -36,13 +36,9 @@ MESA3D_CONF_OPTS += --with-sha1=libcrypto else ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) MESA3D_DEPENDENCIES += libgcrypt MESA3D_CONF_OPTS += --with-sha1=libgcrypt -endif - -ifeq ($(BR2_PACKAGE_HAS_LIBUDEV),y) -MESA3D_DEPENDENCIES += udev -MESA3D_CONF_OPTS += --disable-sysfs -else -MESA3D_CONF_OPTS += --enable-sysfs +else ifeq ($(BR2_PACKAGE_LIBSHA1),y) +MESA3D_DEPENDENCIES += libsha1 +MESA3D_CONF_OPTS += --with-sha1=libsha1 endif ifeq ($(BR2_PACKAGE_XORG7),y) @@ -83,6 +79,8 @@ MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I915) += i915 MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I965) += i965 MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU) += nouveau MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON) += radeon +# Vulkan Drivers +MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL) += intel ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER),) MESA3D_CONF_OPTS += \ @@ -93,16 +91,9 @@ MESA3D_CONF_OPTS += \ --with-gallium-drivers=$(subst $(space),$(comma),$(MESA3D_GALLIUM_DRIVERS-y)) endif -define MESA3D_REMOVE_OPENGL_PC - rm -f $(STAGING_DIR)/usr/lib/pkgconfig/dri.pc - rm -f $(STAGING_DIR)/usr/lib/pkgconfig/gl.pc - rm -rf $(STAGING_DIR)/usr/include/GL/ -endef - ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) MESA3D_CONF_OPTS += \ --without-dri-drivers --disable-dri3 -MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_PC else ifeq ($(BR2_PACKAGE_XPROTO_DRI3PROTO),y) MESA3D_DEPENDENCIES += xlib_libxshmfence xproto_dri3proto xproto_presentproto @@ -113,18 +104,20 @@ endif ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y) MESA3D_DEPENDENCIES += xlib_libXxf86vm endif -# libGL is only provided for a full xorg stack -ifeq ($(BR2_PACKAGE_XORG7),y) -MESA3D_PROVIDES += libgl -else -MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_PC -endif MESA3D_CONF_OPTS += \ --enable-shared-glapi \ --enable-driglx-direct \ --with-dri-drivers=$(subst $(space),$(comma),$(MESA3D_DRI_DRIVERS-y)) endif +ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER),) +MESA3D_CONF_OPTS += \ + --without-vulkan-drivers +else +MESA3D_CONF_OPTS += \ + --with-vulkan-drivers=$(subst $(space),$(comma),$(MESA3D_VULKAN_DRIVERS-y)) +endif + # APIs ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y) @@ -135,18 +128,29 @@ endif # Always enable OpenGL: # - it is needed for GLES (mesa3d's ./configure is a bit weird) -# - but if no DRI driver is enabled, then libgl is not built, -# remove dri.pc and gl.pc in this case (MESA3D_REMOVE_OPENGL_PC) MESA3D_CONF_OPTS += --enable-opengl --enable-dri # libva and mesa3d have a circular dependency # we do not need libva support in mesa3d, therefore disable this option MESA3D_CONF_OPTS += --disable-va +# libGL is only provided for a full xorg stack +ifeq ($(BR2_PACKAGE_XORG7),y) +MESA3D_PROVIDES += libgl +else +define MESA3D_REMOVE_OPENGL_HEADERS + rm -rf $(STAGING_DIR)/usr/include/GL/ +endef + +MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_HEADERS +endif + ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) MESA3D_PROVIDES += libegl ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y) MESA3D_EGL_PLATFORMS = drm +else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4),y) +MESA3D_EGL_PLATFORMS = drm else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL),y) MESA3D_EGL_PLATFORMS = drm endif diff --git a/package/mfgtools/Config.in.host b/package/mfgtools/Config.in.host new file mode 100644 index 0000000000..1cb5a7f095 --- /dev/null +++ b/package/mfgtools/Config.in.host @@ -0,0 +1,14 @@ +comment "mfgtools needs host gcc >= 4.8" + depends on !BR2_HOST_GCC_AT_LEAST_4_8 + +config BR2_PACKAGE_HOST_MFGTOOLS + bool "host mfgtools" + depends on BR2_arm + depends on BR2_HOST_GCC_AT_LEAST_4_8 # needs C++11 + help + This package contains the Freescale manufacturing tool. + It is designed to program firmware to i.MX boards during + production. The communication is done over USB using the + Freescale UTP protocol. + + https://github.com/NXPmicro/mfgtools diff --git a/package/mfgtools/mfgtools.hash b/package/mfgtools/mfgtools.hash new file mode 100644 index 0000000000..e73a7fa13a --- /dev/null +++ b/package/mfgtools/mfgtools.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 6ce93a33c269282df305cf7e517d2d14fde78203537d8ea75b064966afe48464 mfgtools-b219fc219a35c365010897ed093c40750f8cdac6.tar.gz diff --git a/package/mfgtools/mfgtools.mk b/package/mfgtools/mfgtools.mk new file mode 100644 index 0000000000..cc24352462 --- /dev/null +++ b/package/mfgtools/mfgtools.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# mfgtools +# +################################################################################ + +MFGTOOLS_VERSION = b219fc219a35c365010897ed093c40750f8cdac6 +MFGTOOLS_SITE = $(call github,NXPmicro,mfgtools,$(MFGTOOLS_VERSION)) +MFGTOOLS_SUBDIR = MfgToolLib +MFGTOOLS_LICENSE = BSD-3c or CPOL +MFGTOOLS_LICENSE_FILES = LICENSE CPOL.htm +HOST_MFGTOOLS_DEPENDENCIES = host-libusb + +HOST_MFGTOOLS_CFLAGS = \ + $(HOST_CFLAGS) $(HOST_LDFLAGS) -std=c++11 -lpthread \ + -L$(@D)/MfgToolLib -lMfgToolLib -I$(@D)/MfgToolLib \ + -lusb-1.0 -I$(HOST_DIR)/usr/include/libusb-1.0 \ + -fpermissive -Wno-write-strings + +define HOST_MFGTOOLS_CLI_BUILD + $(HOST_CONFIGURE_OPTS) $(MAKE) CC="$(HOSTCXX)" \ + CFLAGS="$(HOST_MFGTOOLS_CFLAGS)" -C $(@D)/TestPrgm +endef + +HOST_MFGTOOLS_POST_BUILD_HOOKS += HOST_MFGTOOLS_CLI_BUILD + +define HOST_MFGTOOLS_INSTALL_CMDS + $(INSTALL) -D -m 755 $(@D)/MfgToolLib/libMfgToolLib.so \ + $(HOST_DIR)/usr/lib/libMfgToolLib.so + $(INSTALL) -D -m 755 $(@D)/TestPrgm/mfgtoolcli \ + $(HOST_DIR)/usr/bin/mfgtoolcli +endef + +$(eval $(host-cmake-package)) diff --git a/package/mfgtools/readme.txt b/package/mfgtools/readme.txt new file mode 100644 index 0000000000..d54781f1f9 --- /dev/null +++ b/package/mfgtools/readme.txt @@ -0,0 +1,69 @@ +MfgTools Howto +============== + +1. Build your mfgtool image + +Make sure to enable the following Buildroot options: + +BR2_PACKAGE_FREESCALE_IMX=y +BR2_PACKAGE_IMX_UUC=y +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_CPIO_GZIP=y +BR2_TARGET_ROOTFS_CPIO_UIMAGE=y + +Also modify your kernel configuration to have: + +CONFIG_USB_GADGET=y +CONFIG_USB_MASS_STORAGE=y +CONFIG_FSL_UTP=y +CONFIG_MMC_BLOCK_MINORS=16 + +2. Go into the output and create the necessary folders + +$ cd output +$ mkdir -p "Profiles/Linux/OS Firmware/firmware" + +3. Create your XML update script named ucl2.xml + +You can find a sample XML at: + +$ wget https://storage.googleapis.com/boundarydevices.com/ucl2.xml \ + -O Profiles/Linux/OS\ Firmware/ucl2.xml + +4. Copy the U-Boot, Kernel and initramfs images to the appropriate +folder + +$ cp images/u-boot.imx images/zImage images/imx6q-sabrelite.dtb \ + images/rootfs.cpio.uboot Profiles/Linux/OS\ Firmware/firmware/ + +5. Copy the prebuilt binaries to be flashed + +Depending on your ucl2.xml file, the sample doesn't flash anything. + +6. Run the MfgTools client: + +$ ./host/usr/bin/mfgtoolcli -l mmc -s uboot_defconfig=imx \ + -s dtbname=imx6q-sabrelite.dtb -s initramfs=rootfs.cpio.uboot \ + -s mmc=1 -p 1 + +For more information about the tools options, please read the +"Manufacturing Tool V2 Quick Start Guide.docx" documentation contained +in every mfgtools package from NXP website[1]. + +Note: All the above commands require your Linux host user to have +permissions to access the USB devices. Please make sure to have udev +rules that allow the user to communicate with the BootROM IDs +(Freescale USB recovery) as well as the one used for the UTP Linux +image (0x066F:0x37FF). Using 'sudo' in front of the mfgtoolcli +command would also grant you the necessary permission but it is *not* +recommended. + +Also, if your U-Boot environment doesn't include mfgtools bootargs, +make sure to set the following: + +setenv bootargs "console=${console},${baudrate} g_mass_storage.stall=0 \ + g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F \ + g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber=\"\" \ + g_mass_storage.file=/fat" + +[1] http://www.nxp.com/products/software-and-tools/software-development-tools/i.mx-software-and-tools/i.mx-6-series-software-and-development-tool-resources:IMX6_SW diff --git a/package/micropython-lib/Config.in b/package/micropython-lib/Config.in index a7e017be76..599af7797b 100644 --- a/package/micropython-lib/Config.in +++ b/package/micropython-lib/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_MICROPYTHON_LIB bool "micropython-lib" + select BR2_PACKAGE_PCRE # runtime depends on BR2_PACKAGE_MICROPYTHON help Core Python libraries ported to MicroPython. diff --git a/package/micropython-lib/micropython-lib.hash b/package/micropython-lib/micropython-lib.hash index 30d0cf8882..bc0c22efc5 100644 --- a/package/micropython-lib/micropython-lib.hash +++ b/package/micropython-lib/micropython-lib.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 e659444fadd755c1b5dbff091aa1b23a835e7361da3a32f38774bd39a15937ad micropython-lib-v1.0.tar.gz +sha256 eb696009ff8c33004211e484649b34edb14f3efb2ff618942bc8888716757a55 micropython-lib-v1.8.6.tar.gz diff --git a/package/micropython-lib/micropython-lib.mk b/package/micropython-lib/micropython-lib.mk index 4ed2120a7e..066572e5cf 100644 --- a/package/micropython-lib/micropython-lib.mk +++ b/package/micropython-lib/micropython-lib.mk @@ -4,7 +4,7 @@ # ################################################################################ -MICROPYTHON_LIB_VERSION = v1.0 +MICROPYTHON_LIB_VERSION = v1.8.6 MICROPYTHON_LIB_SITE = $(call github,micropython,micropython-lib,$(MICROPYTHON_LIB_VERSION)) MICROPYTHON_LIB_LICENSE = Python software foundation license v2 (some modules), MIT (everything else) MICROPYTHON_LIB_LICENSE_FILES = LICENSE diff --git a/package/micropython/micropython.hash b/package/micropython/micropython.hash index b3a7c22ccc..6ab7b10b66 100644 --- a/package/micropython/micropython.hash +++ b/package/micropython/micropython.hash @@ -1,2 +1,2 @@ #locally computed -sha256 f8ea3faffa797de1a06c16c8f57c784c665b318ca08ac17f74dcbc95322d47de micropython-v1.6.tar.gz +sha256 55dd751c4c812809841fd06f4729b8341171c4b6c1dc28a9412455282554f8a5 micropython-v1.8.7.tar.gz diff --git a/package/micropython/micropython.mk b/package/micropython/micropython.mk index 853caa2c3e..8336fb436f 100644 --- a/package/micropython/micropython.mk +++ b/package/micropython/micropython.mk @@ -4,7 +4,7 @@ # ################################################################################ -MICROPYTHON_VERSION = v1.6 +MICROPYTHON_VERSION = v1.8.7 MICROPYTHON_SITE = $(call github,micropython,micropython,$(MICROPYTHON_VERSION)) MICROPYTHON_LICENSE = MIT MICROPYTHON_LICENSE_FILES = LICENSE @@ -16,14 +16,23 @@ ifeq ($(BR2_i386)$(BR2_x86_64)$(BR2_arm)$(BR2_armeb),) MICROPYTHON_CFLAGS = -DMICROPY_GCREGS_SETJMP=1 endif +# When building from a tarball we don't have some of the dependencies that are in +# the git repository as submodules +MICROPYTHON_MAKE_OPTS = MICROPY_PY_BTREE=0 +MICROPYTHON_MAKE_OPTS += MICROPY_PY_USSL=0 + define MICROPYTHON_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/unix \ + $(MICROPYTHON_MAKE_OPTS) \ CROSS_COMPILE=$(TARGET_CROSS) \ CFLAGS_EXTRA=$(MICROPYTHON_CFLAGS) endef define MICROPYTHON_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/unix \ + $(MICROPYTHON_MAKE_OPTS) \ + CROSS_COMPILE=$(TARGET_CROSS) \ + CFLAGS_EXTRA=$(MICROPYTHON_CFLAGS) \ DESTDIR=$(TARGET_DIR) \ PREFIX=$(TARGET_DIR)/usr \ install diff --git a/package/midori/Config.in b/package/midori/Config.in index 9751f33eac..0d7672c134 100644 --- a/package/midori/Config.in +++ b/package/midori/Config.in @@ -1,4 +1,4 @@ -comment "midori needs libgtk3 and an (e)glibc toolchain w/ C++, gcc >= 4.9" +comment "midori needs libgtk3 and a glibc toolchain w/ C++, gcc >= 4.9" depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_LIBGTK3 \ || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_TOOLCHAIN_USES_GLIBC @@ -15,6 +15,7 @@ config BR2_PACKAGE_MIDORI select BR2_PACKAGE_WEBKITGTK select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt, gcr, gnupg2 depends on BR2_PACKAGE_LIBGTK3 depends on BR2_INSTALL_LIBSTDCPP # webkitgtk depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # webkitgtk diff --git a/package/mii-diag/mii-diag.mk b/package/mii-diag/mii-diag.mk index ae8defd9df..6efd5be80d 100644 --- a/package/mii-diag/mii-diag.mk +++ b/package/mii-diag/mii-diag.mk @@ -22,11 +22,11 @@ endef MII_DIAG_POST_PATCH_HOOKS = MII_DIAG_DEBIAN_PATCHES define MII_DIAG_BUILD_CMDS - $(MAKE) $(MII_DIAG_MAKE_OPTS) -C $(@D) mii-diag + $(TARGET_MAKE_ENV) $(MAKE) $(MII_DIAG_MAKE_OPTS) -C $(@D) mii-diag endef define MII_DIAG_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install-mii-diag + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install-mii-diag endef $(eval $(generic-package)) diff --git a/package/mimic/Config.in b/package/mimic/Config.in new file mode 100644 index 0000000000..79641d3790 --- /dev/null +++ b/package/mimic/Config.in @@ -0,0 +1,41 @@ +comment "mimic needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR + +config BR2_PACKAGE_MIMIC + bool "mimic" + depends on BR2_USE_WCHAR + help + Mimic is a fast, lightweight Text-to-speech engine developed + by Mycroft A.I. and VocaliD, based on Carnegie Mellon + University's Flite (Festival-Lite) software. Mimic takes in + text and reads it out loud to create a high quality voice. + + https://github.com/MycroftAI/mimic + +if BR2_PACKAGE_MIMIC + +choice + prompt "audio backend" + default BR2_PACKAGE_MIMIC_AUDIO_BACKEND_NONE + +config BR2_PACKAGE_MIMIC_AUDIO_BACKEND_NONE + bool "none" + help + With no backend, mimic will only be able to produce .wav + files. + +config BR2_PACKAGE_MIMIC_AUDIO_BACKEND_ALSA + bool "alsa" + depends on BR2_PACKAGE_ALSA_LIB + +config BR2_PACKAGE_MIMIC_AUDIO_BACKEND_PORTAUDIO + bool "alsa via portaudio" + depends on BR2_PACKAGE_PORTAUDIO + +config BR2_PACKAGE_MIMIC_AUDIO_BACKEND_PULSEAUDIO + bool "pulseaudio" + depends on BR2_PACKAGE_PULSEAUDIO + +endchoice + +endif # BR2_PACKAGE_MIMIC diff --git a/package/mimic/mimic.hash b/package/mimic/mimic.hash new file mode 100644 index 0000000000..39d016548a --- /dev/null +++ b/package/mimic/mimic.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 725003c9972d5b67c49d5ea6a89cb26b63414ff2c7adbbaf9200cf9eb55f80eb mimic-1.1.0.tar.gz diff --git a/package/mimic/mimic.mk b/package/mimic/mimic.mk new file mode 100644 index 0000000000..2d246561c9 --- /dev/null +++ b/package/mimic/mimic.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# mimic +# +################################################################################ + +MIMIC_VERSION = 1.1.0 +MIMIC_SITE = $(call github,MycroftAI,mimic,$(MIMIC_VERSION)) +MIMIC_LICENSE = MIT +MIMIC_LICENSE_FILES = COPYING + +MIMIC_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_MIMIC_AUDIO_BACKEND_ALSA),y) +MIMIC_AUDIO_BACKEND = alsa +MIMIC_DEPENDENCIES += alsa-lib +else ifeq ($(BR2_PACKAGE_MIMIC_AUDIO_BACKEND_PORTAUDIO),y) +MIMIC_AUDIO_BACKEND = portaudio +MIMIC_DEPENDENCIES += portaudio +else ifeq ($(BR2_PACKAGE_MIMIC_AUDIO_BACKEND_PULSEAUDIO),y) +MIMIC_AUDIO_BACKEND = pulseaudio +MIMIC_DEPENDENCIES += pulseaudio +else ifeq ($(BR2_PACKAGE_MIMIC_AUDIO_BACKEND_NONE),y) +MIMIC_AUDIO_BACKEND = none +endif + +MIMIC_CONF_OPTS += --with-audio=$(MIMIC_AUDIO_BACKEND) + +$(eval $(autotools-package)) diff --git a/package/minissdpd/Config.in b/package/minissdpd/Config.in new file mode 100644 index 0000000000..226cff0aa4 --- /dev/null +++ b/package/minissdpd/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_MINISSDPD + bool "minissdpd" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBNFNETLINK + help + SSDP managing daemon. Designed to work with miniupnpc, + miniupnpd, minidlna, etc. + + http://miniupnp.free.fr/ diff --git a/package/minissdpd/S50minissdpd b/package/minissdpd/S50minissdpd new file mode 100644 index 0000000000..6235e06b8a --- /dev/null +++ b/package/minissdpd/S50minissdpd @@ -0,0 +1,47 @@ +#!/bin/sh + +NAME=minissdpd +PIDFILE=/var/run/$NAME.pid +DAEMON=/usr/sbin/$NAME +CFGFILE=/etc/default/$NAME + +IFACE=eth0 + +# Read configuration variable file if it is present +if [ -f $CFGFILE ]; then + . $CFGFILE +fi + +DAEMON_ARGS="-i $IFACE" + +start() { + printf "Starting $NAME: " + start-stop-daemon -S -q -m -b -p $PIDFILE --exec $DAEMON -- $DAEMON_ARGS + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping $NAME: " + start-stop-daemon -K -q -p $PIDFILE + [ $? = 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/minissdpd/minissdpd.hash b/package/minissdpd/minissdpd.hash new file mode 100644 index 0000000000..8d670f3e86 --- /dev/null +++ b/package/minissdpd/minissdpd.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 dfd637b185731e1acb412a86faa9718eb93c04ca08280541a6d22d14d1fb890f minissdpd-1.5.tar.gz diff --git a/package/minissdpd/minissdpd.mk b/package/minissdpd/minissdpd.mk new file mode 100644 index 0000000000..5c8bd371cb --- /dev/null +++ b/package/minissdpd/minissdpd.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# minissdpd +# +################################################################################ + +MINISSDPD_VERSION = 1.5 +MINISSDPD_SITE = http://miniupnp.free.fr/files +MINISSDPD_LICENSE = BSD-3c +MINISSDPD_LICENSE_FILES = LICENSE +MINISSDPD_DEPENDENCIES = libnfnetlink + +define MINISSDPD_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" \ + -C $(@D) +endef + +define MINISSDPD_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=$(TARGET_DIR) install +endef + +# Use dedicated init scripts for systemV and systemd instead of using +# minissdpd.init.d.script as it is not compatible with buildroot init system +define MINISSDPD_INSTALL_INIT_SYSV + $(RM) $(TARGET_DIR)/etc/init.d/minissdpd + $(INSTALL) -D -m 0755 package/minissdpd/S50minissdpd \ + $(TARGET_DIR)/etc/init.d/S50minissdpd +endef + +define MINISSDPD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/minissdpd/minissdpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/minissdpd.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/minissdpd.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/minissdpd.service +endef + +$(eval $(generic-package)) diff --git a/package/minissdpd/minissdpd.service b/package/minissdpd/minissdpd.service new file mode 100644 index 0000000000..59ed9c8667 --- /dev/null +++ b/package/minissdpd/minissdpd.service @@ -0,0 +1,12 @@ +[Unit] +Description=SSDP managing daemon +After=network.target + +[Service] +Environment="IFACE=eth0" +EnvironmentFile=/etc/default/minissdpd +ExecStart=/usr/sbin/minissdpd -i $IFACE +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/minizip/minizip.hash b/package/minizip/minizip.hash index a303b2c718..994ed60a5b 100644 --- a/package/minizip/minizip.hash +++ b/package/minizip/minizip.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 b39158bdf3d8bf81d3a7412dc761851fda398bc93d8989d5e940ed4ae5bbb52c minizip-977afb22966e6ab0ee401293a8e85fe808133f9a.tar.gz +sha256 ac361f40531d9fb7222d4befd10d160c647d5e85138f6bc9eda080ed8f937fb8 minizip-5f56dd81d94bd7028f7dc05d7d14112697c30241.tar.gz diff --git a/package/minizip/minizip.mk b/package/minizip/minizip.mk index 5b8778615a..3d61288681 100644 --- a/package/minizip/minizip.mk +++ b/package/minizip/minizip.mk @@ -4,7 +4,7 @@ # ################################################################################ -MINIZIP_VERSION = 977afb22966e6ab0ee401293a8e85fe808133f9a +MINIZIP_VERSION = 5f56dd81d94bd7028f7dc05d7d14112697c30241 MINIZIP_SITE = $(call github,nmoinvaz,minizip,$(MINIZIP_VERSION)) MINIZIP_DEPENDENCIES = zlib MINIZIP_AUTORECONF = YES diff --git a/package/miraclecast/miraclecast.hash b/package/miraclecast/miraclecast.hash index 2a92cbf045..97c68d019d 100644 --- a/package/miraclecast/miraclecast.hash +++ b/package/miraclecast/miraclecast.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 deef87155ed07bcf737260c29599e886bd248b573e72ba167369df93acb1fa61 miraclecast-8b61f733da124ccbfd1b85e188581fad1c41c1e1.tar.gz +sha256 e11440f782519663db367285dd54b53eb5feb78682dac42bd90230222de9f0fd miraclecast-c94be167c85c6ec8badd7ac79e3dea2e0b73225c.tar.gz diff --git a/package/miraclecast/miraclecast.mk b/package/miraclecast/miraclecast.mk index 598dbd5e4e..17e73f1e3e 100644 --- a/package/miraclecast/miraclecast.mk +++ b/package/miraclecast/miraclecast.mk @@ -4,7 +4,7 @@ # ################################################################################ -MIRACLECAST_VERSION = 8b61f733da124ccbfd1b85e188581fad1c41c1e1 +MIRACLECAST_VERSION = c94be167c85c6ec8badd7ac79e3dea2e0b73225c MIRACLECAST_SITE = $(call github,albfan,miraclecast,$(MIRACLECAST_VERSION)) MIRACLECAST_LICENSE = LGPLv2.1+, GPLv2 (gdhcp) MIRACLECAST_LICENSE_FILES = COPYING LICENSE_gdhcp LICENSE_htable LICENSE_lgpl diff --git a/package/mke2img/mke2img.mk b/package/mke2img/mke2img.mk index 04aaa8f1bf..9de387a3a3 100644 --- a/package/mke2img/mke2img.mk +++ b/package/mke2img/mke2img.mk @@ -4,7 +4,6 @@ # ################################################################################ -HOST_MKE2IMG_SOURCE = HOST_MKE2IMG_DEPENDENCIES = host-genext2fs host-e2fsprogs define HOST_MKE2IMG_INSTALL_CMDS diff --git a/package/mkpasswd/Config.in.host b/package/mkpasswd/Config.in.host new file mode 100644 index 0000000000..93774bdf60 --- /dev/null +++ b/package/mkpasswd/Config.in.host @@ -0,0 +1,2 @@ +config BR2_PACKAGE_HOST_MKPASSWD + bool "host mkpasswd" diff --git a/package/mkpasswd/mkpasswd.mk b/package/mkpasswd/mkpasswd.mk index 0447ecc9a0..07935a41bf 100644 --- a/package/mkpasswd/mkpasswd.mk +++ b/package/mkpasswd/mkpasswd.mk @@ -7,11 +7,8 @@ # source included in buildroot, taken from # https://github.com/rfc1036/whois/blob/master/ # at revision 5a0f08500fa51608b6d3b73ee338be38c692eadb -HOST_MKPASSWD_SOURCE = HOST_MKPASSWD_LICENSE = GPLv2+ -HOST_MKPASSWD_VERSION = buildroot-$(BR2_VERSION) - define HOST_MKPASSWD_BUILD_CMDS $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) \ package/mkpasswd/mkpasswd.c package/mkpasswd/utils.c \ diff --git a/package/mkpimage/mkpimage.c b/package/mkpimage/mkpimage.c index 1a7a66d988..d7fe1b1b69 100644 --- a/package/mkpimage/mkpimage.c +++ b/package/mkpimage/mkpimage.c @@ -12,7 +12,12 @@ #define VALIDATION_WORD 0x31305341 -#define MAX_IMAGE_SIZE (60 * 1024 - 4) +#define BRANCH_INST 0xea /* ARM opcode for "b" (unconditional branch) */ + +#define MAX_V0IMAGE_SIZE (60 * 1024 - 4) +/* Max size without authentication is 224 KB, due to memory used by + * the ROM boot code as a workspace out of the 256 KB of OCRAM */ +#define MAX_V1IMAGE_SIZE (224 * 1024 - 4) static int add_barebox_header; @@ -20,9 +25,21 @@ struct socfpga_header { uint8_t validation_word[4]; uint8_t version; uint8_t flags; - uint8_t program_length[2]; - uint8_t spare[2]; - uint8_t checksum[2]; + union { + struct { + uint8_t program_length[2]; + uint8_t spare[2]; + uint8_t checksum[2]; + uint8_t start_vector[4]; + } v0; + struct { + uint8_t header_length[2]; + uint8_t program_length[4]; + uint8_t entry_offset[4]; + uint8_t spare[2]; + uint8_t checksum[2]; + } v1; + }; }; static uint32_t bb_header[] = { @@ -45,7 +62,7 @@ static uint32_t bb_header[] = { 0x00000000, /* socfpga header */ 0x00000000, /* socfpga header */ 0x00000000, /* socfpga header */ - 0xea00006b, /* entry. b 0x200 */ + 0xea00006b, /* entry. b 0x200 (offset may be adjusted) */ }; static int read_full(int fd, void *buf, size_t size) @@ -84,7 +101,7 @@ static int write_full(int fd, void *buf, size_t size) return insize; } -static uint32_t crc_table[256] = { +static const uint32_t crc_table[256] = { 0x00000000, 0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b, 0x1a864db2, 0x1e475005, 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6, 0x2b4bcb61, 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd, 0x4c11db70, 0x48d0c6c7, @@ -140,37 +157,94 @@ uint32_t crc32(uint32_t crc, void *_buf, int length) return crc; } -static int add_socfpga_header(void *buf, int size) +/* Create an ARM relative branch instuction + * branch is where the instruction will be placed and dest points to where + * it should branch too. */ +static void branch(uint8_t *branch, uint8_t *dest) +{ + int offset = dest - branch - 8; /* PC is offset +8 bytes on ARM */ + + branch[0] = (offset >> 2) & 0xff; /* instruction uses offset/4 */ + branch[1] = (offset >> 10) & 0xff; + branch[2] = (offset >> 18) & 0xff; + branch[3] = BRANCH_INST; +} + +/* start_addr is where the socfpga header's start instruction should branch to. + * It should be relative to the start of buf */ +static int add_socfpga_header(void *buf, size_t size, unsigned start_addr, unsigned version) { struct socfpga_header *header = buf + 0x40; - uint8_t *buf_header = buf + 0x40; + void *entry; + uint8_t *bufp, *sumendp; uint32_t *crc; unsigned checksum; - int length = size >> 2; - int i; if (size & 0x3) { fprintf(stderr, "%s: size must be multiple of 4\n", __func__); return -EINVAL; } + /* Absolute address of entry point in buf */ + entry = buf + start_addr; + if (version == 0) { + sumendp = &header->v0.checksum[0]; + } else { + sumendp = &header->v1.checksum[0]; + + /* The ROM loader can't handle a negative offset */ + if (entry < (void*)header) { + /* add a trampoline branch inst after end of the header */ + uint8_t *trampoline = (void*)(header + 1); + branch(trampoline, entry); + + /* and then make the trampoline the entry point */ + entry = trampoline; + } + /* Calculate start address as offset relative to start of header */ + start_addr = entry - (void*)header; + } + header->validation_word[0] = VALIDATION_WORD & 0xff; header->validation_word[1] = (VALIDATION_WORD >> 8) & 0xff; header->validation_word[2] = (VALIDATION_WORD >> 16) & 0xff; header->validation_word[3] = (VALIDATION_WORD >> 24) & 0xff; - header->version = 0; + header->version = version; header->flags = 0; - header->program_length[0] = length & 0xff; - header->program_length[1] = (length >> 8) & 0xff; - header->spare[0] = 0; - header->spare[1] = 0; + if (version == 0) { + header->v0.program_length[0] = (size >> 2) & 0xff; /* length in words */ + header->v0.program_length[1] = (size >> 10) & 0xff; + header->v0.spare[0] = 0; + header->v0.spare[1] = 0; + branch(header->v0.start_vector, entry); + } else { + header->v1.header_length[0] = (sizeof(*header) >> 0) & 0xff; + header->v1.header_length[1] = (sizeof(*header) >> 8) & 0xff; + header->v1.program_length[0] = (size >> 0) & 0xff; + header->v1.program_length[1] = (size >> 8) & 0xff; + header->v1.program_length[2] = (size >> 16) & 0xff; + header->v1.program_length[3] = (size >> 24) & 0xff; + header->v1.entry_offset[0] = (start_addr >> 0) & 0xff; + header->v1.entry_offset[1] = (start_addr >> 8) & 0xff; + header->v1.entry_offset[2] = (start_addr >> 16) & 0xff; + header->v1.entry_offset[3] = (start_addr >> 24) & 0xff; + header->v1.spare[0] = 0; + header->v1.spare[1] = 0; + } + + /* Sum from beginning of header to start of checksum field */ checksum = 0; - for (i = 0; i < sizeof(*header) - 2; i++) - checksum += buf_header[i]; + for (bufp = (uint8_t*)header; bufp < sumendp; bufp++) + checksum += *bufp; - header->checksum[0] = checksum & 0xff;; - header->checksum[1] = (checksum >> 8) & 0xff;; + if (version == 0) { + header->v0.checksum[0] = checksum & 0xff;; + header->v0.checksum[1] = (checksum >> 8) & 0xff;; + } else { + header->v1.checksum[0] = checksum & 0xff;; + header->v1.checksum[1] = (checksum >> 8) & 0xff;; + } crc = buf + size - sizeof(uint32_t); @@ -182,7 +256,7 @@ static int add_socfpga_header(void *buf, int size) static void usage(const char *prgname) { - fprintf(stderr, "usage: %s [OPTIONS] \n", prgname); + fprintf(stderr, "usage: %s [-hb] [-v version] -o \n", prgname); } int main(int argc, char *argv[]) @@ -192,16 +266,23 @@ int main(int argc, char *argv[]) struct stat s; void *buf; int fd; - int min_image_size = 80; - int max_image_size = MAX_IMAGE_SIZE; + int max_image_size, min_image_size = 80; int addsize = 0, pad; + unsigned int version = 0; - while ((opt = getopt(argc, argv, "o:hb")) != -1) { + while ((opt = getopt(argc, argv, "o:hbv:")) != -1) { switch (opt) { + case 'v': + version = atoi(optarg); + if (version > 1) { + printf("Versions supported: 0 or 1\n"); + usage(argv[0]); + exit(1); + } + break; case 'b': add_barebox_header = 1; min_image_size = 0; - max_image_size = MAX_IMAGE_SIZE - 512; addsize = 512; break; case 'h': @@ -211,15 +292,21 @@ int main(int argc, char *argv[]) outfile = optarg; break; default: + usage(argv[0]); exit(1); } } + if (version == 0) { + max_image_size = MAX_V0IMAGE_SIZE; + } else { + max_image_size = MAX_V1IMAGE_SIZE; + } + max_image_size -= addsize; - if (optind == argc) { + if (optind == argc || !outfile) { usage(argv[0]); exit(1); } - infile = argv[optind]; ret = stat(infile, &s); @@ -229,7 +316,8 @@ int main(int argc, char *argv[]) } if (s.st_size < min_image_size) { - fprintf(stderr, "input image too small. Minimum is 80 bytes\n"); + fprintf(stderr, "input image too small. Minimum is %d bytes\n", + min_image_size); exit(1); } @@ -240,7 +328,7 @@ int main(int argc, char *argv[]) } fd = open(infile, O_RDONLY); - if (fd < 0) { + if (fd == -1) { perror("open infile"); exit(1); } @@ -267,7 +355,8 @@ int main(int argc, char *argv[]) memcpy(buf, bb_header, sizeof(bb_header)); } - ret = add_socfpga_header(buf, s.st_size + 4 + addsize + pad); + ret = add_socfpga_header(buf, s.st_size + 4 + addsize + pad, addsize, + version); if (ret) exit(1); diff --git a/package/mkpimage/mkpimage.mk b/package/mkpimage/mkpimage.mk index 6360902539..04b2ef080b 100644 --- a/package/mkpimage/mkpimage.mk +++ b/package/mkpimage/mkpimage.mk @@ -4,12 +4,11 @@ # ################################################################################ -# source included in the package -# came from barebox's repository: -# http://git.pengutronix.de/?p=barebox.git;a=blob;f=scripts/socfpga_mkimage.c;h=1a7a66d98841e9f52c3ea49c651286aa1412c9a5;hb=HEAD -HOST_MKPIMAGE_SOURCE = HOST_MKPIMAGE_LICENSE = GPLv2 +# source included in the package +# came from barebox's repository: +# https://git.pengutronix.de/cgit/barebox/tree/scripts/socfpga_mkimage.c?id=55d29525146dcd280987dfd565bfd34f08858fb3 define HOST_MKPIMAGE_BUILD_CMDS $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) \ package/mkpimage/mkpimage.c -o $(@D)/mkpimage diff --git a/package/mksh/Config.in b/package/mksh/Config.in new file mode 100644 index 0000000000..55d1cc15ed --- /dev/null +++ b/package/mksh/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_MKSH + bool "mksh" + depends on BR2_USE_MMU # fork() + help + The MirBSD Korn Shell, + + mksh is a successor of pdksh but not affiliated with the + pdksh developers or contributors. mksh is not affiliated + with the AT&T Korn Shell, its past or present owners, + other than that both attempt to implement the Korn Shell + programming language. + + mksh targets users who desire a compact, fast, reliable, + secure shell not cut off modern extensions; a shell with + Unicode support; an actively developed, current, and + portable product; one with developers that listen to + their users’ requests and implement them if they + actually make sense. + + mksh aims to replace pdksh in all but very rare use cases + (such as support for checking the Unix mbox) and in all + operating environments + (thus including patches from pdksh on e.g. Debian). + + http://mirbsd.de/mksh diff --git a/package/mksh/mksh.hash b/package/mksh/mksh.hash new file mode 100644 index 0000000000..e92acd93e5 --- /dev/null +++ b/package/mksh/mksh.hash @@ -0,0 +1,4 @@ +# From http://www.mirbsd.org/mksh.htm#build +md5 be0a6fb93b4a5f927bcc1893bb6692f8 mksh-R54.tgz +# Calculated based on the hash above +sha256 8bce3837c386684aa7780f085f1a4dbd5e3e26fb5c528ee0d41ae29af7f39013 mksh-R54.tgz diff --git a/package/mksh/mksh.mk b/package/mksh/mksh.mk new file mode 100644 index 0000000000..4d91bfcf44 --- /dev/null +++ b/package/mksh/mksh.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# mksh +# +################################################################################ + +MKSH_VERSION = R54 +MKSH_SOURCE = mksh-$(MKSH_VERSION).tgz +MKSH_SITE = https://www.mirbsd.org/MirOS/dist/mir/mksh +# For MirOS License see https://www.mirbsd.org/TaC-mksh.txt +MKSH_LICENSE = MirOS, ISC +MKSH_LICENSE_FILES = mksh.1 + +define MKSH_BUILD_CMDS + cd $(@D) && $(TARGET_MAKE_ENV) \ + TARGET_OS=Linux $(TARGET_CONFIGURE_OPTS) \ + sh ./Build.sh +endef + +define MKSH_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/mksh $(TARGET_DIR)/bin/mksh +endef + +$(eval $(generic-package)) diff --git a/package/mmc-utils/mmc-utils.mk b/package/mmc-utils/mmc-utils.mk index 82468bcc28..7473a1b388 100644 --- a/package/mmc-utils/mmc-utils.mk +++ b/package/mmc-utils/mmc-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -MMC_UTILS_VERSION = d0b46442b50794217e53b2455c1344c548d9d088 +MMC_UTILS_VERSION = 2cb6695e8dec00d887bdd5309d1b57d836fcd214 MMC_UTILS_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git MMC_UTILS_LICENSE = GPLv2 diff --git a/package/moarvm/Config.in b/package/moarvm/Config.in index 3e0a1045ec..c6e1efa39d 100644 --- a/package/moarvm/Config.in +++ b/package/moarvm/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_MOARVM bool "moarvm" - depends on BR2_TOOLCHAIN_HAS_THREADS # libuv + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_USE_MMU # libuv depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops @@ -9,14 +9,17 @@ config BR2_PACKAGE_MOARVM select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBTOMMATH select BR2_PACKAGE_LIBATOMIC_OPS + # dyncall does not work on MIPS; libffi needs to be used. + # See: https://github.com/MoarVM/MoarVM/issues/222 + select BR2_PACKAGE_LIBFFI if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el help Short for "Metamodel On A Runtime", MoarVM is a virtual machine built especially for Rakudo Perl 6 and the NQP Compiler Toolchain. http://moarvm.com -comment "moarvm needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "moarvm 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_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS depends on !BR2_sparc64 && !BR2_sparc diff --git a/package/moarvm/moarvm.hash b/package/moarvm/moarvm.hash index f045f4fac7..e6335ab7e7 100644 --- a/package/moarvm/moarvm.hash +++ b/package/moarvm/moarvm.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 6fe9000daada59535747f2557cc73573241ba8a6044271caf1647aa37be33c6d MoarVM-2016.04.tar.gz +sha256 2074693a42a7f31218bf69b70fd5b73d6fd1a1d0e31eaf3f528e204963e94c53 MoarVM-2017.01.tar.gz diff --git a/package/moarvm/moarvm.mk b/package/moarvm/moarvm.mk index ee58f76600..b459474a79 100644 --- a/package/moarvm/moarvm.mk +++ b/package/moarvm/moarvm.mk @@ -4,13 +4,13 @@ # ################################################################################ -MOARVM_VERSION = 2016.04 +MOARVM_VERSION = 2017.01 MOARVM_SITE = http://moarvm.com/releases MOARVM_SOURCE = MoarVM-$(MOARVM_VERSION).tar.gz MOARVM_LICENSE = Artistic-2.0 MOARVM_LICENSE_FILES = Artistic2.txt MOARVM_INSTALL_STAGING = YES -MOARVM_DEPENDENCIES = host-luajit libuv libtommath libatomic_ops +MOARVM_DEPENDENCIES = host-luajit host-pkgconf libuv libtommath libatomic_ops MOARVM_CONF_OPTS = \ --build=$(GNU_HOST_NAME) \ @@ -19,29 +19,35 @@ MOARVM_CONF_OPTS = \ --cc="$(TARGET_CC)" \ --ld="$(TARGET_CC)" \ --prefix="/usr" \ + --pkgconfig=$(PKG_CONFIG_HOST_BINARY) \ --lua=$(HOST_DIR)/usr/bin/luajit \ --has-libuv \ --has-libtommath \ --has-libatomic +ifeq ($(BR2_PACKAGE_LIBFFI),y) +MOARVM_CONF_OPTS += --has-libffi +MOARVM_DEPENDENCIES += libffi +endif + ifeq ($(BR2_ENDIAN),"BIG") MOARVM_CONF_OPTS += --big-endian endif define MOARVM_CONFIGURE_CMDS - (cd $(@D); perl Configure.pl $(MOARVM_CONF_OPTS)) + (cd $(@D); $(TARGET_MAKE_ENV) perl Configure.pl $(MOARVM_CONF_OPTS)) endef define MOARVM_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define MOARVM_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define MOARVM_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/mobile-broadband-provider-info/mobile-broadband-provider-info.hash b/package/mobile-broadband-provider-info/mobile-broadband-provider-info.hash index 54c7a99d27..5ab2e318fe 100644 --- a/package/mobile-broadband-provider-info/mobile-broadband-provider-info.hash +++ b/package/mobile-broadband-provider-info/mobile-broadband-provider-info.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/mobile-broadband-provider-info/20120614/mobile-broadband-provider-info-20120614.sha256sum -sha256 72507a732e0cd16cf27424bb094b1c7a03e2206c119ad124722a283e587755f1 mobile-broadband-provider-info-20120614.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/mobile-broadband-provider-info/20151214/mobile-broadband-provider-info-20151214.sha256sum +sha256 8ae45d6f10fed9750e259935804c4f40a4372bb119f0504187e4221896b205a4 mobile-broadband-provider-info-20151214.tar.xz diff --git a/package/mobile-broadband-provider-info/mobile-broadband-provider-info.mk b/package/mobile-broadband-provider-info/mobile-broadband-provider-info.mk index f2a113635b..1a68708d45 100644 --- a/package/mobile-broadband-provider-info/mobile-broadband-provider-info.mk +++ b/package/mobile-broadband-provider-info/mobile-broadband-provider-info.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOBILE_BROADBAND_PROVIDER_INFO_VERSION = 20120614 +MOBILE_BROADBAND_PROVIDER_INFO_VERSION = 20151214 MOBILE_BROADBAND_PROVIDER_INFO_SITE = http://ftp.gnome.org/pub/GNOME/sources/mobile-broadband-provider-info/$(MOBILE_BROADBAND_PROVIDER_INFO_VERSION) MOBILE_BROADBAND_PROVIDER_INFO_SOURCE = mobile-broadband-provider-info-$(MOBILE_BROADBAND_PROVIDER_INFO_VERSION).tar.xz MOBILE_BROADBAND_PROVIDER_INFO_LICENSE = Public domain diff --git a/package/modem-manager/modem-manager.hash b/package/modem-manager/modem-manager.hash index 5299c84e85..481f7dd434 100644 --- a/package/modem-manager/modem-manager.hash +++ b/package/modem-manager/modem-manager.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 abe6cdd515a774bcba3afdcdb1e504569801e79282ccdf26099f33cbb8731ba2 ModemManager-1.4.14.tar.xz +# Locally computed +sha256 e4544398d9c166f8e13fe7c97149f262ad1fb48af980e0d4f9c34013920c6393 ModemManager-1.6.2.tar.xz diff --git a/package/modem-manager/modem-manager.mk b/package/modem-manager/modem-manager.mk index 6d91afcb82..c74c224387 100644 --- a/package/modem-manager/modem-manager.mk +++ b/package/modem-manager/modem-manager.mk @@ -4,7 +4,7 @@ # ################################################################################ -MODEM_MANAGER_VERSION = 1.4.14 +MODEM_MANAGER_VERSION = 1.6.2 MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager MODEM_MANAGER_LICENSE = GPLv2+ (programs, plugins), LGPLv2+ (libmm-glib) diff --git a/package/mongodb/Config.in b/package/mongodb/Config.in index 2f6876a199..a78bb27e70 100644 --- a/package/mongodb/Config.in +++ b/package/mongodb/Config.in @@ -22,7 +22,7 @@ config BR2_PACKAGE_MONGODB https://www.mongodb.org/ -comment "mongodb needs a (e)glibc toolchain w/ wchar, threads, C++, gcc >= 4.8" +comment "mongodb needs a glibc toolchain w/ wchar, threads, C++, gcc >= 4.8" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/mongoose/mongoose.mk b/package/mongoose/mongoose.mk index 98f6525500..7dfa119839 100644 --- a/package/mongoose/mongoose.mk +++ b/package/mongoose/mongoose.mk @@ -19,8 +19,8 @@ MONGOOSE_CFLAGS += -DNS_ENABLE_SSL -lssl -lcrypto -lz endif define MONGOOSE_BUILD_CMDS - $(TARGET_CC) -c $(@D)/mongoose.c $(MONGOOSE_CFLAGS) -o $(@D)/mongoose.o - $(TARGET_AR) rcs $(@D)/libmongoose.a $(@D)/mongoose.o + $(TARGET_MAKE_ENV) $(TARGET_CC) -c $(@D)/mongoose.c $(MONGOOSE_CFLAGS) -o $(@D)/mongoose.o + $(TARGET_MAKE_ENV) $(TARGET_AR) rcs $(@D)/libmongoose.a $(@D)/mongoose.o endef define MONGOOSE_INSTALL_STAGING_CMDS diff --git a/package/mongrel2/Config.in b/package/mongrel2/Config.in index 49dd6fd97d..796bae6d80 100644 --- a/package/mongrel2/Config.in +++ b/package/mongrel2/Config.in @@ -5,12 +5,12 @@ config BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS bool default y if BR2_TOOLCHAIN_USES_GLIBC default y if BR2_TOOLCHAIN_USES_UCLIBC && \ - (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_x86_64) + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_sparc || BR2_x86_64) -comment "mongrel2 needs a uClibc or glibc toolchain w/ C++, threads, wchar, dynamic library" +comment "mongrel2 needs a uClibc or glibc toolchain w/ C++, threads, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS || !BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS + !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS config BR2_PACKAGE_MONGREL2 bool "mongrel2" @@ -18,7 +18,6 @@ config BR2_PACKAGE_MONGREL2 select BR2_PACKAGE_ZEROMQ depends on BR2_INSTALL_LIBSTDCPP # zeromq depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq - depends on BR2_USE_WCHAR # zeromq -> util-linux depends on !BR2_STATIC_LIBS # uses dlopen() depends on BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS help diff --git a/package/mongrel2/mongrel2.mk b/package/mongrel2/mongrel2.mk index d0640c9680..c69c14345f 100644 --- a/package/mongrel2/mongrel2.mk +++ b/package/mongrel2/mongrel2.mk @@ -24,7 +24,7 @@ ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THU MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM else ifeq ($(BR2_microblaze),y) MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM -else ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +else ifeq ($(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM endif diff --git a/package/monit/monit.hash b/package/monit/monit.hash index 04f87901eb..8eb02fce66 100644 --- a/package/monit/monit.hash +++ b/package/monit/monit.hash @@ -1,2 +1,2 @@ -# From https://mmonit.com/monit/dist/monit-5.17.tar.gz.sha256: -sha256 2fbcdea79ae39228791a0aaa685ebbf650f2b58d086eaf77a33226e972cb216e monit-5.17.tar.gz +# From https://mmonit.com/monit/dist/monit-5.20.0.tar.gz.sha256: +sha256 ebac395ec50c1ae64d568db1260bc049d0e0e624c00e79d7b1b9a59c2679b98d monit-5.20.0.tar.gz diff --git a/package/monit/monit.mk b/package/monit/monit.mk index 1d5904b64d..f4899c3c0d 100644 --- a/package/monit/monit.mk +++ b/package/monit/monit.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONIT_VERSION = 5.17 +MONIT_VERSION = 5.20.0 MONIT_SITE = http://mmonit.com/monit/dist MONIT_LICENSE = AGPLv3 with OpenSSL exception MONIT_LICENSE_FILES = COPYING @@ -27,4 +27,11 @@ else MONIT_CONF_OPTS += --without-ssl endif +ifeq ($(BR2_PACKAGE_ZLIB),y) +MONIT_CONF_OPTS += --with-zlib +MONIT_DEPENDENCIES += zlib +else +MONIT_CONF_OPTS += --without-zlib +endif + $(eval $(autotools-package)) diff --git a/package/mono/0005-eglib-checking-for-locale_charset-function.patch b/package/mono/0005-eglib-checking-for-locale_charset-function.patch deleted file mode 100644 index 52d5638451..0000000000 --- a/package/mono/0005-eglib-checking-for-locale_charset-function.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 026a8c44d332b3595814ce0aceba255467cd7b6d Mon Sep 17 00:00:00 2001 -From: Angelo Compagnucci -Date: Sat, 5 Sep 2015 08:57:21 +0200 -Subject: [PATCH] eglib: checking for locale_charset function - -This patch checks if locale_charset function is availabe in -libiconv or libcharset and changes the linking options accordingly. - -Signed-off-by: Angelo Compagnucci ---- - eglib/configure.ac | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/eglib/configure.ac b/eglib/configure.ac -index 9d094ea..5ea220e 100644 ---- a/eglib/configure.ac -+++ b/eglib/configure.ac -@@ -182,6 +182,7 @@ fi - AC_SUBST(G_HAVE_ISO_VARARGS) - - AC_CHECK_HEADERS(getopt.h sys/select.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h localcharset.h sys/types.h sys/resource.h) -+AC_CHECK_LIB([iconv], [locale_charset],[],[AC_CHECK_LIB([charset], [locale_charset],[LIBS+="-liconv -lcharset"])]) - AC_CHECK_HEADER(alloca.h, [HAVE_ALLOCA_H=1], [HAVE_ALLOCA_H=0]) - AC_SUBST(HAVE_ALLOCA_H) - --- -1.9.1 - diff --git a/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch b/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch deleted file mode 100644 index 6ebb802adf..0000000000 --- a/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 76aa4fb62a433e61dc35eefcc3077f0463182d2f Mon Sep 17 00:00:00 2001 -From: Angelo Compagnucci -Date: Tue, 23 Feb 2016 22:43:39 +0100 -Subject: [PATCH] config.in: fixing wrong MonoPosixHelper location - -This patch remove a wrong prefix for libMonoPosixHelper - -Signed-off-by: Angelo Compagnucci ---- - data/config.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/data/config.in b/data/config.in -index b760176..41495b9 100644 ---- a/data/config.in -+++ b/data/config.in -@@ -10,7 +10,7 @@ - - - -- -+ - - - --- -1.9.1 - diff --git a/package/mono/0009-fix-musl-incorrect-sigcontext-include.patch b/package/mono/0009-fix-musl-incorrect-sigcontext-include.patch new file mode 100644 index 0000000000..3d932b6df9 --- /dev/null +++ b/package/mono/0009-fix-musl-incorrect-sigcontext-include.patch @@ -0,0 +1,44 @@ +From 63f0b0246b8125ae48b15bd182bb5831be02e6c9 Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Mon, 27 Jun 2016 21:32:11 +0200 +Subject: [PATCH] fix musl incorrect sigcontext include + +On musl __GLIBC__ is not defined, so the conditional logic will +not produce correct result. Add a specific case to handle when +__GLIBC__ is not defined. + +Signed-off-by: Angelo Compagnucci +--- + libgc/os_dep.c | 2 +- + mono/mini/exceptions-arm.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libgc/os_dep.c b/libgc/os_dep.c +index 8c8e098..34859c1 100644 +--- a/libgc/os_dep.c ++++ b/libgc/os_dep.c +@@ -32,7 +32,7 @@ + /* prototypes, so we have to include the top-level sigcontext.h to */ + /* make sure the former gets defined to be the latter if appropriate. */ + # include +-# if 2 <= __GLIBC__ ++# if 2 <= __GLIBC__ || !defined(__GLIBC__) + # if 2 == __GLIBC__ && 0 == __GLIBC_MINOR__ + /* glibc 2.1 no longer has sigcontext.h. But signal.h */ + /* has the right declaration for glibc 2.1. */ +diff --git a/mono/mini/exceptions-arm.c b/mono/mini/exceptions-arm.c +index b036aa7..a3e2164 100644 +--- a/mono/mini/exceptions-arm.c ++++ b/mono/mini/exceptions-arm.c +@@ -14,7 +14,7 @@ + #include + + #ifndef MONO_CROSS_COMPILE +-#ifdef HAVE_ASM_SIGCONTEXT_H ++#if defined(HAVE_ASM_SIGCONTEXT_H) && defined(__GLIBC__) + #include + #endif /* def HAVE_ASM_SIGCONTEXT_H */ + #endif +-- +1.9.1 + diff --git a/package/mono/mono.hash b/package/mono/mono.hash index d1277c55d7..6719fec4d4 100644 --- a/package/mono/mono.hash +++ b/package/mono/mono.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 4703d390416a6e9977585f13711f59a6d54431086c2dbacee49888dcc31937be mono-4.2.3.4.tar.bz2 +sha256 8965d107f4ebf4583ba1b50e0dcad39f0dc6adac8df7a083e9c5879ad93c0ea4 mono-4.6.2.16.tar.bz2 diff --git a/package/mono/mono.mk b/package/mono/mono.mk index 0b9cb4623f..20b9205683 100644 --- a/package/mono/mono.mk +++ b/package/mono/mono.mk @@ -4,12 +4,12 @@ # ################################################################################ -MONO_VERSION = 4.2.3.4 +MONO_VERSION = 4.6.2.16 MONO_SITE = http://download.mono-project.com/sources/mono MONO_SOURCE = mono-$(MONO_VERSION).tar.bz2 -MONO_LICENSE = GPLv2 or MIT (compiler, tools), LGPLv2 (runtime libs), MIT (class libs) or commercial -MONO_LICENSE_FILES = LICENSE COPYING.LIB mcs/COPYING.LIB mcs/COPYING \ - eglib/COPYING external/Newtonsoft.Json/Tools/7-zip/copying.txt +MONO_LICENSE = GPLv2 or MIT (compiler, tools), MIT (libs) or commercial +MONO_LICENSE_FILES = LICENSE mcs/COPYING eglib/COPYING \ + external/Newtonsoft.Json/Tools/7-zip/copying.txt MONO_INSTALL_STAGING = YES ## Mono native @@ -22,7 +22,7 @@ MONO_CONF_OPTS = --disable-gtk-doc \ --with-mcs-docs=no \ --with-moonlight=no \ --with-ikvm-native=no \ - --enable-minimal=aot,profiler,debug \ + --enable-minimal=profiler,debug \ --disable-mcs-build \ --enable-static @@ -49,7 +49,7 @@ HOST_MONO_CONF_OPTS = --disable-gtk-doc \ --with-moonlight=no \ --disable-libraries \ --with-ikvm-native=no \ - --enable-minimal=aot,profiler,debug \ + --enable-minimal=profiler,debug \ --enable-static # ensure monolite is used diff --git a/package/monolite/monolite.hash b/package/monolite/monolite.hash index fa098e266d..621e5e4f5f 100644 --- a/package/monolite/monolite.hash +++ b/package/monolite/monolite.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 0cf7aeafb22daeb7ed3398057f0ac88015440901f480ef84cba2431a753f8c1e monolite-138-latest.tar.gz +sha256 c01e9ba37d8d8f9ef68e08170b2582cc710a8a77756e2412dff298a39b3c4d2b monolite-149-latest.tar.gz diff --git a/package/monolite/monolite.mk b/package/monolite/monolite.mk index 761e776ab8..d50d9f22fb 100644 --- a/package/monolite/monolite.mk +++ b/package/monolite/monolite.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONOLITE_VERSION = 138 +MONOLITE_VERSION = 149 MONOLITE_SITE = http://download.mono-project.com/monolite/ MONOLITE_SOURCE = monolite-$(MONOLITE_VERSION)-latest.tar.gz MONOLITE_LICENSE = LGPLv2 or commercial diff --git a/package/mosh/Config.in b/package/mosh/Config.in index b4189ee10d..d1fbd632eb 100644 --- a/package/mosh/Config.in +++ b/package/mosh/Config.in @@ -12,7 +12,7 @@ config BR2_PACKAGE_MOSH depends on BR2_USE_WCHAR select BR2_PACKAGE_PROTOBUF select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_NETTLE if !BR2_PACKAGE_OPENSSL select BR2_PACKAGE_ZLIB # runtime dependency select BR2_PACKAGE_OPENSSH if !BR2_PACKAGE_DROPBEAR_CLIENT diff --git a/package/mosh/mosh.hash b/package/mosh/mosh.hash index ab925b5126..31f59c7f5e 100644 --- a/package/mosh/mosh.hash +++ b/package/mosh/mosh.hash @@ -1,2 +1,2 @@ -# From: http://mailman.mit.edu/pipermail/mosh-users/2015-July/000283.html -sha256 1af809e5d747c333a852fbf7acdbf4d354dc4bbc2839e3afe5cf798190074be3 mosh-1.2.5.tar.gz +# From https://mailman.mit.edu/pipermail/mosh-users/2016-August/000330.html +sha256 7e82b7fbfcc698c70f5843bb960dadb8e7bd7ac1d4d2151c9d979372ea850e85 mosh-1.2.6.tar.gz diff --git a/package/mosh/mosh.mk b/package/mosh/mosh.mk index f8c45e8ccd..2cd358b397 100644 --- a/package/mosh/mosh.mk +++ b/package/mosh/mosh.mk @@ -4,12 +4,20 @@ # ################################################################################ -MOSH_VERSION = 1.2.5 +MOSH_VERSION = 1.2.6 MOSH_SITE = https://mosh.mit.edu -MOSH_DEPENDENCIES = zlib ncurses protobuf openssl host-pkgconf +MOSH_DEPENDENCIES = zlib ncurses protobuf host-pkgconf MOSH_LICENSE = GPLv3+ with exception MOSH_LICENSE_FILES = COPYING COPYING.iOS +ifeq ($(BR2_PACKAGE_OPENSSL),y) +MOSH_CONF_OPTS += --with-crypto-library=openssl +MOSH_DEPENDENCIES += openssl +else +MOSH_CONF_OPTS += --with-crypto-library=nettle +MOSH_DEPENDENCIES += nettle +endif + # help the detection of the SSP support: mosh configure.ac doesn't do # a link test, so it doesn't detect when the toolchain doesn't have # libssp. diff --git a/package/mosquitto/mosquitto.hash b/package/mosquitto/mosquitto.hash index 861136b6ad..b0b860f98c 100644 --- a/package/mosquitto/mosquitto.hash +++ b/package/mosquitto/mosquitto.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 d96eb5610e57cc3e273f4527d3f54358ab7711459941a9e64bc4d0a85c2acfda mosquitto-1.4.8.tar.gz +# From https://www.eclipse.org/downloads/download.php?file=/mosquitto/source/mosquitto-1.4.10.tar.gz +sha512 fe5d6d7196a137a496ba6881c77d852396baefb4f0b83ccd9a22175fc05b09e48a09ea249e30ec7db966e11de134ebcc4e2e9b1fd40b31dc59fb0fa2f60b75a1 mosquitto-1.4.10.tar.gz diff --git a/package/mosquitto/mosquitto.mk b/package/mosquitto/mosquitto.mk index dfef6e509d..96607f32e3 100644 --- a/package/mosquitto/mosquitto.mk +++ b/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 1.4.8 +MOSQUITTO_VERSION = 1.4.10 MOSQUITTO_SITE = http://mosquitto.org/files/source MOSQUITTO_LICENSE = EPLv1.0 or EDLv1.0 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10 diff --git a/package/mpc/mpc.mk b/package/mpc/mpc.mk index bc26599520..579e2ccc10 100644 --- a/package/mpc/mpc.mk +++ b/package/mpc/mpc.mk @@ -10,6 +10,7 @@ MPC_LICENSE = LGPLv3+ MPC_LICENSE_FILES = COPYING.LESSER MPC_INSTALL_STAGING = YES MPC_DEPENDENCIES = gmp mpfr +HOST_MPC_DEPENDENCIES = host-gmp host-mpfr $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/mpd-mpc/mpd-mpc.hash b/package/mpd-mpc/mpd-mpc.hash index b4003867e9..8336893744 100644 --- a/package/mpd-mpc/mpd-mpc.hash +++ b/package/mpd-mpc/mpd-mpc.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 45a2be0a6dea65ed43f631294c24e74b83c8ee66d1ba6ab47d0744ddb1e62064 mpc-0.27.tar.xz +# Locally calculated after checking pgp signature +sha256 a4337d06c85dc81a638821d30fce8a137a58d13d510be34a11c1cce95cabc547 mpc-0.28.tar.xz diff --git a/package/mpd-mpc/mpd-mpc.mk b/package/mpd-mpc/mpd-mpc.mk index f5e95999c3..d9aa1f8795 100644 --- a/package/mpd-mpc/mpd-mpc.mk +++ b/package/mpd-mpc/mpd-mpc.mk @@ -5,7 +5,7 @@ ################################################################################ MPD_MPC_VERSION_MAJOR = 0 -MPD_MPC_VERSION = $(MPD_MPC_VERSION_MAJOR).27 +MPD_MPC_VERSION = $(MPD_MPC_VERSION_MAJOR).28 MPD_MPC_SITE = http://www.musicpd.org/download/mpc/$(MPD_MPC_VERSION_MAJOR) MPD_MPC_SOURCE = mpc-$(MPD_MPC_VERSION).tar.xz MPD_MPC_LICENSE = GPLv2+ diff --git a/package/mpd/0002-thread-Name-include-stdio.h-for-prctl-as-well.patch b/package/mpd/0002-thread-Name-include-stdio.h-for-prctl-as-well.patch deleted file mode 100644 index 1943623edb..0000000000 --- a/package/mpd/0002-thread-Name-include-stdio.h-for-prctl-as-well.patch +++ /dev/null @@ -1,28 +0,0 @@ -From a0a9fed68126eb24e04af924c0d46351ff5eeb0f Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Mon, 26 Jan 2015 09:55:04 -0300 -Subject: [PATCH] thread/Name: include stdio.h for prctl as well - -We're still using snprintf so we need it, otherwise it leads to build -failure. - -Signed-off-by: Gustavo Zacarias ---- - src/thread/Name.hxx | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/thread/Name.hxx b/src/thread/Name.hxx -index a99208d..8f9d7d3 100644 ---- a/src/thread/Name.hxx -+++ b/src/thread/Name.hxx -@@ -25,6 +25,7 @@ - # include - #elif defined(HAVE_PRCTL) - # include -+# include - # ifdef PR_SET_NAME - # define HAVE_THREAD_NAME - # endif --- -2.6.4 - diff --git a/package/mpd/Config.in b/package/mpd/Config.in index 31be8bb774..8a28b4f1a3 100644 --- a/package/mpd/Config.in +++ b/package/mpd/Config.in @@ -1,14 +1,13 @@ menuconfig BR2_PACKAGE_MPD bool "mpd" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # libglib2, flac - depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 - depends on BR2_USE_MMU # libglib2 - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on BR2_USE_WCHAR # flac + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 depends on BR2_TOOLCHAIN_HAS_ATOMIC select BR2_PACKAGE_BOOST - select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_MPD_TREMOR if !(BR2_PACKAGE_MPD_MAD || BR2_PACKAGE_MPD_MPG123 || BR2_PACKAGE_MPD_VORBIS || BR2_PACKAGE_MPD_WAVPACK || BR2_PACKAGE_MPD_FLAC || BR2_PACKAGE_MPD_MUSEPACK || BR2_PACKAGE_MPD_FFMPEG) help @@ -190,7 +189,7 @@ config BR2_PACKAGE_MPD_LIBNFS comment "nfs support needs a toolchain w/ threads support" depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) -comment "samba support needs an (e)glibc toolchain w/ dynamic library, RPC" +comment "samba support needs a glibc toolchain w/ dynamic library, RPC" depends on !BR2_nios2 depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HAS_NATIVE_RPC @@ -263,6 +262,12 @@ comment "pulseaudio support needs a toolchain w/ dynamic library" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS +config BR2_PACKAGE_MPD_SHOUTCAST + bool "shoutcast" + select BR2_PACKAGE_LIBSHOUT + help + Enable shoutcast streaming output support. + comment "Miscellaneous plugins" config BR2_PACKAGE_MPD_AVAHI_SUPPORT @@ -310,9 +315,11 @@ config BR2_PACKAGE_MPD_UPNP endif -comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.6" +comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.9" depends on BR2_USE_MMU - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +comment "mpd needs a toolchain not affected by GCC bug 64735" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 diff --git a/package/mpd/mpd.hash b/package/mpd/mpd.hash index 2d35aaeb62..ee46f3cc5d 100644 --- a/package/mpd/mpd.hash +++ b/package/mpd/mpd.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 0cb9a223894b038ce966ce6d651d9b3ea3bdc7d7b9bec8d1e9e7e091cbc29b8b mpd-0.19.15.tar.xz +sha256 712b25351c12616630c580204e1c3dcba3ae2993a56cff1c346c87e334d69728 mpd-0.20.4.tar.xz diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk index 6247d15d39..0efc8685f5 100644 --- a/package/mpd/mpd.mk +++ b/package/mpd/mpd.mk @@ -4,11 +4,11 @@ # ################################################################################ -MPD_VERSION_MAJOR = 0.19 -MPD_VERSION = $(MPD_VERSION_MAJOR).15 +MPD_VERSION_MAJOR = 0.20 +MPD_VERSION = $(MPD_VERSION_MAJOR).4 MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR) -MPD_DEPENDENCIES = host-pkgconf boost libglib2 +MPD_DEPENDENCIES = host-pkgconf boost MPD_LICENSE = GPLv2+ MPD_LICENSE_FILES = COPYING MPD_AUTORECONF = YES @@ -195,6 +195,13 @@ else MPD_CONF_OPTS += --disable-pulse endif +ifeq ($(BR2_PACKAGE_MPD_SHOUTCAST),y) +MPD_DEPENDENCIES += libshout +MPD_CONF_OPTS += --enable-shout +else +MPD_CONF_OPTS += --disable-shout +endif + ifeq ($(BR2_PACKAGE_MPD_SOUNDCLOUD),y) MPD_DEPENDENCIES += yajl MPD_CONF_OPTS += --enable-soundcloud @@ -215,7 +222,10 @@ endif ifeq ($(BR2_PACKAGE_MPD_TREMOR),y) MPD_DEPENDENCIES += tremor -MPD_CONF_OPTS += --with-tremor +# Help mpd to find tremor in static linking scenarios +MPD_CONF_ENV += \ + TREMOR_LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs vorbisidec`" +MPD_CONF_OPTS += --with-tremor=$(STAGING_DIR)/usr endif ifeq ($(BR2_PACKAGE_MPD_TWOLAME),y) diff --git a/package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch b/package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch new file mode 100644 index 0000000000..12590cfd30 --- /dev/null +++ b/package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch @@ -0,0 +1,37 @@ +mpfr-longlong.h: Fix obsolete ARC asm constraints + +This patch replaces obsolete ARC "J" asm constraint with +up-to-date "Cal" constraint. +The patch should be applied to upstream "mpfr" library and +after that it should be removed from buildroot as soon as +mpfr version with current fix will come up. + +Signed-off-by: Vlad Zakharov +Signed-off-by: Claudiu Zissulescu +--- +Index: /src/mpfr-longlong.h +=================================================================== +--- /src/mpfr-longlong.h (revision 10963) ++++ /src/mpfr-longlong.h (working copy) +@@ -416,17 +416,17 @@ + : "=r" (sh), \ + "=&r" (sl) \ + : "r" ((USItype) (ah)), \ +- "rIJ" ((USItype) (bh)), \ ++ "rICal" ((USItype) (bh)), \ + "%r" ((USItype) (al)), \ +- "rIJ" ((USItype) (bl))) ++ "rICal" ((USItype) (bl))) + #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ + __asm__ ("sub.f\t%1, %4, %5\n\tsbc\t%0, %2, %3" \ + : "=r" (sh), \ + "=&r" (sl) \ + : "r" ((USItype) (ah)), \ +- "rIJ" ((USItype) (bh)), \ ++ "rICal" ((USItype) (bh)), \ + "r" ((USItype) (al)), \ +- "rIJ" ((USItype) (bl))) ++ "rICal" ((USItype) (bl))) + #endif + + #if defined (__arm__) && (defined (__thumb2__) || !defined (__thumb__)) \ diff --git a/package/mpfr/mpfr.hash b/package/mpfr/mpfr.hash index a8b642bebc..d2c32f2af5 100644 --- a/package/mpfr/mpfr.hash +++ b/package/mpfr/mpfr.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 761413b16d749c53e2bfd2b1dfaa3b027b0e793e404b90b5fbaeef60af6517f5 mpfr-3.1.4.tar.xz +sha256 015fde82b3979fbe5f83501986d328331ba8ddf008c1ff3da3c238f49ca062bc mpfr-3.1.5.tar.xz diff --git a/package/mpfr/mpfr.mk b/package/mpfr/mpfr.mk index 5c3a6ef54f..bb78ccc81a 100644 --- a/package/mpfr/mpfr.mk +++ b/package/mpfr/mpfr.mk @@ -4,13 +4,14 @@ # ################################################################################ -MPFR_VERSION = 3.1.4 +MPFR_VERSION = 3.1.5 MPFR_SITE = http://www.mpfr.org/mpfr-$(MPFR_VERSION) MPFR_SOURCE = mpfr-$(MPFR_VERSION).tar.xz MPFR_LICENSE = LGPLv3+ MPFR_LICENSE_FILES = COPYING.LESSER MPFR_INSTALL_STAGING = YES MPFR_DEPENDENCIES = gmp +HOST_MPFR_DEPENDENCIES = host-gmp MPFR_MAKE_OPTS = RANLIB=$(TARGET_RANLIB) $(eval $(autotools-package)) diff --git a/package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch b/package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch deleted file mode 100644 index a5bfe80094..0000000000 --- a/package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 25c2e71c9ce762561eeacd35bf432c6692c0fb44 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Tue, 24 May 2016 17:34:32 +0200 -Subject: [PATCH] Makefile.am: don't override LIBS - -Patch status: posted upstream -https://sourceforge.net/p/mpg123/mailman/message/35111696/ - -The recent build system change broke custom LIBS handling. As opposed to the -other internal variables, LIBS can be provided by the user when running -configure, E.G.: - -LIBS="-lfoo -lbar" ./configure .. - -This is correctly used by the configure checks, but doesn't end up in the -Makefile any more because of this override - Breaking static builds where -the configure script needs a bit of help to link with -lpthread when -alsa/portaudio is used (as those use pthreads internally). - -Fixes the following build issues from the Buildroot autobuilders: - -http://autobuild.buildroot.net/?reason=mpg123-1.23.3 - -(see https://git.buildroot.net/buildroot/tree/package/mpg123/mpg123.mk for -the build logic) - -Signed-off-by: Peter Korsgaard ---- - Makefile.am | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index d695a3b..863f59f 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -9,7 +9,6 @@ - ACLOCAL_AMFLAGS = -I m4 - bin_PROGRAMS = - EXTRA_PROGRAMS = --LIBS = - EXTRA_DIST = - pkglib_LTLIBRARIES = - lib_LTLIBRARIES = --- -2.7.0 - diff --git a/package/mpg123/mpg123.hash b/package/mpg123/mpg123.hash index a6424d3604..fa5580948c 100644 --- a/package/mpg123/mpg123.hash +++ b/package/mpg123/mpg123.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 5c431da7e7446fae586c9207772dc0038ce2bfe75f0274a7933d1b4a7d84e6c6 mpg123-1.23.3.tar.bz2 +sha256 de2303c8ecb65593e39815c0a2f2f2d91f708c43b85a55fdd1934c82e677cf8e mpg123-1.23.8.tar.bz2 diff --git a/package/mpg123/mpg123.mk b/package/mpg123/mpg123.mk index 19a0de11e9..27c46dcbc7 100644 --- a/package/mpg123/mpg123.mk +++ b/package/mpg123/mpg123.mk @@ -4,7 +4,7 @@ # ################################################################################ -MPG123_VERSION = 1.23.3 +MPG123_VERSION = 1.23.8 MPG123_SOURCE = mpg123-$(MPG123_VERSION).tar.bz2 MPG123_SITE = http://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION) MPG123_CONF_OPTS = --disable-lfs-alias @@ -12,8 +12,6 @@ MPG123_INSTALL_STAGING = YES MPG123_LICENSE = LGPLv2.1 MPG123_LICENSE_FILES = COPYING MPG123_DEPENDENCIES = host-pkgconf -# 0001-Makefile.am-don-t-override-LIBS.patch patches Makefile.am -MPG123_AUTORECONF = YES MPG123_CPU = $(if $(BR2_SOFT_FLOAT),generic_nofpu,generic_fpu) diff --git a/package/mplayer/0004-configure-zlib.patch b/package/mplayer/0004-configure-zlib.patch new file mode 100644 index 0000000000..7c1b2c8ec0 --- /dev/null +++ b/package/mplayer/0004-configure-zlib.patch @@ -0,0 +1,30 @@ +configure: Fix compilation when zlib is missing. + +Downloaded from upstream commit: + +$ LC_ALL=C svn log -r 37816 +------------------------------------------------------------------------ +r37816 | reimar | 2016-02-28 14:39:42 +0100 (Sun, 28 Feb 2016) | 3 lines + +configure: Fix compilation when zlib is missing. + +APNG and a few other decoders also cannot be enabled without it. +------------------------------------------------------------------------ + +Signed-off-by: Bernd Kuhls + +Index: configure +=================================================================== +--- a/configure (revision 37795) ++++ b/configure (revision 37816) +@@ -6464,8 +6464,8 @@ + mplayer_encoders="$mplayer_encoders PNG_ENCODER" + else + def_zlib='#define CONFIG_ZLIB 0' +- libavdecoders=$(filter_out_component decoder 'FLASHSV FLASHSV2 PNG ZMBV ZLIB DXA EXR G2M TSCC ZEROCODEC') +- libavencoders=$(filter_out_component encoder 'FLASHSV FLASHSV2 PNG ZMBV ZLIB') ++ libavdecoders=$(filter_out_component decoder 'APNG FLASHSV FLASHSV2 PNG ZMBV ZLIB DXA EXR G2M RSCC SCREENPRESSO TDSC TSCC ZEROCODEC') ++ libavencoders=$(filter_out_component encoder 'APNG FLASHSV FLASHSV2 PNG ZMBV ZLIB') + fi + echores "$_zlib" + diff --git a/package/mplayer/0005-tremor-ogg.patch b/package/mplayer/0005-tremor-ogg.patch new file mode 100644 index 0000000000..b4d65052a3 --- /dev/null +++ b/package/mplayer/0005-tremor-ogg.patch @@ -0,0 +1,29 @@ +Fix static linking with tremor & libogg + +The order of the libraries needs to be changed to fix a bug during +static linking caught by buildroot autobuilders: + +http://autobuild.buildroot.net/results/bc9/bc98fa585399b53ea181dbaf392b93424145911d/ + +/home/test/autobuild/instance-3/output/host/usr/powerpc-buildroot-linux-uclibc/sysroot/usr/lib/libvorbisidec.a(synthesis.o): In function `_vorbis_synthesis1': +synthesis.c:(.text+0x90): undefined reference to `oggpack_readinit' +synthesis.c:(.text+0x9c): undefined reference to `oggpack_read' +[...] + +Signed-off-by: Bernd Kuhls +(patch sent upstream: + http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2016-July/073501.html) + +Index: configure +=================================================================== +--- a/configure (revision 37873) ++++ b/configure (working copy) +@@ -6629,7 +6629,7 @@ + def_tremor='#define CONFIG_TREMOR 1' + codecmodules="tremor $codecmodules" + res_comment="integer libvorbis" +- extra_ldflags="$extra_ldflags -logg -lvorbisidec" ++ extra_ldflags="$extra_ldflags -lvorbisidec -logg" + elif test "$_libvorbis" = yes ; then + _vorbis=yes + def_vorbis='#define CONFIG_OGGVORBIS 1' diff --git a/package/mplayer/Config.in b/package/mplayer/Config.in index 686b3b0143..8474b0ec48 100644 --- a/package/mplayer/Config.in +++ b/package/mplayer/Config.in @@ -3,13 +3,17 @@ config BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS default y # Those architectures are not supported by MPlayer depends on !(BR2_bfin || BR2_sh2a || BR2_sh4a || BR2_sh4aeb \ - || BR2_microblaze || BR2_nios2) + || BR2_m68k || BR2_microblaze || BR2_nios2) # Broken support for +--- + audio/out/ao_sdl.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/audio/out/ao_sdl.c b/audio/out/ao_sdl.c +index d9d0062..0cb80d6 100644 +--- a/audio/out/ao_sdl.c ++++ b/audio/out/ao_sdl.c +@@ -29,6 +29,7 @@ + #include "osdep/timer.h" + + #include ++#include + + struct priv + { +-- +2.10.0.297.gf6727b0 + diff --git a/package/mpv/Config.in b/package/mpv/Config.in index 1cef6c5009..2719981467 100644 --- a/package/mpv/Config.in +++ b/package/mpv/Config.in @@ -2,6 +2,8 @@ config BR2_PACKAGE_MPV bool "mpv" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_FFMPEG select BR2_PACKAGE_FFMPEG_SWSCALE @@ -14,6 +16,8 @@ config BR2_PACKAGE_MPV https://mpv.io/ -comment "mpv needs a toolchain w/ threads" +comment "mpv needs a toolchain w/ threads, gcc >= 4.5" depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 diff --git a/package/mpv/mpv.hash b/package/mpv/mpv.hash index da51f3ab1a..0e7aab7077 100644 --- a/package/mpv/mpv.hash +++ b/package/mpv/mpv.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 602cd2b0f5fc7e43473234fbb96e3f7bbb6418f15eb8fa720d9433cce31eba6e v0.17.0.tar.gz -sha256 01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b waf-1.8.12 +sha256 8aeefe5970587dfc454d2b89726b603f156bd7a9ae427654eef0d60c68d94998 v0.23.0.tar.gz diff --git a/package/mpv/mpv.mk b/package/mpv/mpv.mk index cd8c31bd8f..5b83b6d942 100644 --- a/package/mpv/mpv.mk +++ b/package/mpv/mpv.mk @@ -4,17 +4,17 @@ # ################################################################################ -MPV_VERSION = 0.17.0 -MPV_WAF_VERSION = 1.8.12 +MPV_VERSION = 0.23.0 MPV_SITE = https://github.com/mpv-player/mpv/archive MPV_SOURCE = v$(MPV_VERSION).tar.gz -MPV_EXTRA_DOWNLOADS = https://waf.io/waf-$(MPV_WAF_VERSION) MPV_DEPENDENCIES = \ host-pkgconf ffmpeg zlib \ $(if $(BR2_PACKAGE_LIBICONV),libiconv) MPV_LICENSE = GPLv2+ MPV_LICENSE_FILES = LICENSE +MPV_NEEDS_EXTERNAL_WAF = YES + # Some of these options need testing and/or tweaks MPV_CONF_OPTS = \ --prefix=/usr \ @@ -23,8 +23,6 @@ MPV_CONF_OPTS = \ --disable-cdda \ --disable-cocoa \ --disable-coreaudio \ - --disable-gpl3 \ - --disable-libguess \ --disable-libv4l2 \ --disable-opensles \ --disable-rpi \ @@ -46,7 +44,7 @@ endif # GBM support is provided by mesa3d when EGL=y ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) MPV_CONF_OPTS += --enable-gbm -MPV_DEPENDENIES += mesa3d +MPV_DEPENDENCIES += mesa3d else MPV_CONF_OPTS += --disable-gbm endif @@ -124,14 +122,6 @@ else MPV_CONF_OPTS += --disable-drm endif -# libenca support -ifeq ($(BR2_PACKAGE_LIBENCA),y) -MPV_CONF_OPTS += --enable-enca -MPV_DEPENDENCIES += libenca -else -MPV_CONF_OPTS += --disable-enca -endif - # LUA support, only for lua51/lua52/luajit # This enables the controller (OSD) together with libass ifeq ($(BR2_PACKAGE_LUA_5_1)$(BR2_PACKAGE_LUA_5_2)$(BR2_PACKAGE_LUAJIT),y) @@ -236,28 +226,4 @@ else MPV_CONF_OPTS += --disable-x11 endif -define MPV_COPY_WAF - $(INSTALL) -m 0755 $(DL_DIR)/waf-$(MPV_WAF_VERSION) $(@D)/waf -endef -MPV_POST_EXTRACT_HOOKS += MPV_COPY_WAF - -define MPV_CONFIGURE_CMDS - cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - ./waf configure $(MPV_CONF_OPTS) -endef - -define MPV_BUILD_CMDS - cd $(@D); \ - $(TARGET_MAKE_ENV) \ - ./waf build -endef - -define MPV_INSTALL_TARGET_CMDS - cd $(@D); \ - $(TARGET_MAKE_ENV) \ - DESTDIR=$(TARGET_DIR) \ - ./waf install -endef - -$(eval $(generic-package)) +$(eval $(waf-package)) diff --git a/package/mraa/mraa.hash b/package/mraa/mraa.hash new file mode 100644 index 0000000000..cbd70a4606 --- /dev/null +++ b/package/mraa/mraa.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e4501e6936afb426c75b7d406c1a7a27b514297f640e887de4d88a2d9687f37b mraa-v0.9.1.tar.gz diff --git a/package/mrouted/mrouted.hash b/package/mrouted/mrouted.hash new file mode 100644 index 0000000000..d5069e5fd9 --- /dev/null +++ b/package/mrouted/mrouted.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 181908f7025c5a2dee2e50d86888780469eaa9e1bd42d3eca9dfed8274aecd3d mrouted-3.9.7.tar.gz diff --git a/package/mrouted/mrouted.mk b/package/mrouted/mrouted.mk index 01b4a9f303..2969e36cdc 100644 --- a/package/mrouted/mrouted.mk +++ b/package/mrouted/mrouted.mk @@ -17,11 +17,11 @@ define MROUTED_CONFIGURE_CMDS endef define MROUTED_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define MROUTED_INSTALL_TARGET_CMDS - $(MAKE) prefix=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) prefix=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/msmtp/msmtp.hash b/package/msmtp/msmtp.hash index fb03e05a0d..d0de8e04fd 100644 --- a/package/msmtp/msmtp.hash +++ b/package/msmtp/msmtp.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/msmtp/files/msmtp/1.6.2/ -md5 3baca93c7e5f1aa9d36a2e5b38739ab9 msmtp-1.6.2.tar.xz -sha1 2d2272d04851b9bc806a77f47344e61840185329 msmtp-1.6.2.tar.xz +# From http://sourceforge.net/projects/msmtp/files/msmtp/1.6.5/ +md5 50a8c9bb72f8222779db6b4aae2965e0 msmtp-1.6.5.tar.xz +sha1 27d1fc609cd453a7e4c55c4ec55d455949bc53f1 msmtp-1.6.5.tar.xz diff --git a/package/msmtp/msmtp.mk b/package/msmtp/msmtp.mk index 7c8261e704..7ede66c0db 100644 --- a/package/msmtp/msmtp.mk +++ b/package/msmtp/msmtp.mk @@ -4,7 +4,7 @@ # ################################################################################ -MSMTP_VERSION = 1.6.2 +MSMTP_VERSION = 1.6.5 MSMTP_SITE = http://downloads.sourceforge.net/project/msmtp/msmtp/$(MSMTP_VERSION) MSMTP_SOURCE = msmtp-$(MSMTP_VERSION).tar.xz MSMTP_DEPENDENCIES = host-pkgconf diff --git a/package/mtd/0002-integck-only-use-execinfo.h-when-INTEGCK_DEBUG-is-en.patch b/package/mtd/0002-integck-only-use-execinfo.h-when-INTEGCK_DEBUG-is-en.patch new file mode 100644 index 0000000000..0f74a7b5b1 --- /dev/null +++ b/package/mtd/0002-integck-only-use-execinfo.h-when-INTEGCK_DEBUG-is-en.patch @@ -0,0 +1,62 @@ +From 30f0cd91b21dbc5d593d61ae44875ad0cb53cb4d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 16 Jul 2016 11:27:06 +0200 +Subject: [PATCH] integck: only use execinfo.h when INTEGCK_DEBUG is enabled + +Guard the usage of execinfo.h by INTEGCK_DEBUG so that by defaut, +integck builds properly on systems without (uClibc and +musl based systems). As stated in the code, the backtrace() +functionality of will anyway only work properly when +INTEGCK_DEBUG is defined (it makes all functions non-static, which is +needed for backtrace to provide some useful information). + +Signed-off-by: Thomas Petazzoni +--- + tests/fs-tests/integrity/integck.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c +index 8badd1f..6ef817e 100644 +--- a/tests/fs-tests/integrity/integck.c ++++ b/tests/fs-tests/integrity/integck.c +@@ -31,7 +31,9 @@ + #include + #include + #include ++#ifdef INTEGCK_DEBUG + #include ++#endif + #include + #include + #include +@@ -248,14 +250,18 @@ static char *random_name_buf; + static void check_failed(const char *cond, const char *func, const char *file, + int line) + { +- int error = errno, count; ++ int error = errno; ++#ifdef INTEGCK_DEBUG ++ int count; + void *addresses[128]; ++#endif + + fflush(stdout); + fflush(stderr); + errmsg("condition '%s' failed in %s() at %s:%d", + cond, func, file, line); + normsg("error %d (%s)", error, strerror(error)); ++#ifdef INTEGCK_DEBUG + /* + * Note, to make this work well you need: + * 1. Make all functions non-static - add "#define static' +@@ -264,6 +270,7 @@ static void check_failed(const char *cond, const char *func, const char *file, + */ + count = backtrace(addresses, 128); + backtrace_symbols_fd(addresses, count, fileno(stdout)); ++#endif + exit(EXIT_FAILURE); + } + +-- +2.7.4 + diff --git a/package/mtd/0003-fs-tests-integrity-don-t-include-header-bits-stdio_l.patch b/package/mtd/0003-fs-tests-integrity-don-t-include-header-bits-stdio_l.patch new file mode 100644 index 0000000000..5c0a552ddd --- /dev/null +++ b/package/mtd/0003-fs-tests-integrity-don-t-include-header-bits-stdio_l.patch @@ -0,0 +1,45 @@ +From 600ab10e3b452cdffc6c82770b0bb2ff5c23ad70 Mon Sep 17 00:00:00 2001 +From: Rahul Bedarkar +Date: Fri, 12 Aug 2016 22:59:35 +0530 +Subject: [PATCH 1/1] fs-tests: integrity: don't include header + + +With musl C library, we get following build error + +integck.c:37:28: fatal error: bits/stdio_lim.h: No such file or directory + #include + ^ +compilation terminated. +make[2]: *** [integck] Error 1 + +Header is not available in musl C library. However + has all definition that supposed to be +providing. Moreover shouldn't be included directly +instead we should be using . + +Since we already include and in case of uClibc or glibc + gets included internally, we can safely remove it. + +This build issue is found by Buildroot autobuilder +http://autobuild.buildroot.net/results/175/1754861457af520480cc34d7d2d0edff2868ff66/ + +Signed-off-by: Rahul Bedarkar +--- + tests/fs-tests/integrity/integck.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c +index 6ef817e..0bb9711 100644 +--- a/tests/fs-tests/integrity/integck.c ++++ b/tests/fs-tests/integrity/integck.c +@@ -34,7 +34,6 @@ + #ifdef INTEGCK_DEBUG + #include + #endif +-#include + #include + #include + #include +-- +2.6.2 + diff --git a/package/mtd/Config.in b/package/mtd/Config.in index 6e4346f298..2e6cdbbeb2 100644 --- a/package/mtd/Config.in +++ b/package/mtd/Config.in @@ -62,10 +62,6 @@ config BR2_PACKAGE_MTD_MKFSUBIFS select BR2_PACKAGE_LZO select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID - depends on BR2_USE_WCHAR # util-linux - -comment "mkfs.ubifs needs a toolchain w/ wchar" - depends on !BR2_USE_WCHAR config BR2_PACKAGE_MTD_MTD_DEBUG bool "mtd_debug" @@ -159,4 +155,10 @@ config BR2_PACKAGE_MTD_UBIBLOCK bool "ubiblock" default y +config BR2_PACKAGE_MTD_INTEGCK + bool "integck" + depends on BR2_USE_MMU # fork() + help + Install the integck test program. + endif diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk index bf90212f5c..acf24d5a83 100644 --- a/package/mtd/mtd.mk +++ b/package/mtd/mtd.mk @@ -97,11 +97,22 @@ MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIBLOCK) += ubiblock MTD_TARGETS_y += $(addprefix ubi-utils/,$(MTD_TARGETS_UBI_y)) MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSUBIFS) += mkfs.ubifs/mkfs.ubifs +ifeq ($(BR2_PACKAGE_MTD_INTEGCK),y) +define MTD_BUILD_INTEGCK + $(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \ + BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D)/tests/fs-tests all +endef +define MTD_INSTALL_INTEGCK + $(INSTALL) -D -m 755 $(@D)/tests/fs-tests/integrity/integck $(TARGET_DIR)/usr/sbin/integck +endef +endif + define MTD_BUILD_CMDS $(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \ BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D) \ $(addprefix $(@D)/,$(MTD_TARGETS_y)) \ $(addprefix $(@D)/,$(MTD_STAGING_y)) + $(MTD_BUILD_INTEGCK) endef define MTD_INSTALL_STAGING_CMDS @@ -116,6 +127,7 @@ define MTD_INSTALL_TARGET_CMDS for f in $(MTD_TARGETS_y) ; do \ $(INSTALL) -D -m 0755 $(@D)/$$f $(TARGET_DIR)/usr/sbin/$${f##*/} ; \ done + $(MTD_INSTALL_INTEGCK) endef $(eval $(generic-package)) diff --git a/package/mtdev2tuio/mtdev2tuio.hash b/package/mtdev2tuio/mtdev2tuio.hash new file mode 100644 index 0000000000..b0d159cadc --- /dev/null +++ b/package/mtdev2tuio/mtdev2tuio.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 4a6aa319c44478dceaf01a24603690767e56c029a1f0380da0f31eac5a02e10f mtdev2tuio-e1e7378d86abe751158e743586133022f32fa4d1.tar.gz diff --git a/package/mtdev2tuio/mtdev2tuio.mk b/package/mtdev2tuio/mtdev2tuio.mk index 7b00221c6a..d2e70408f1 100644 --- a/package/mtdev2tuio/mtdev2tuio.mk +++ b/package/mtdev2tuio/mtdev2tuio.mk @@ -13,7 +13,7 @@ MTDEV2TUIO_LICENSE_FILES = COPYING # mtdev2tuio Makefile misuses $(LD) as gcc, so we need to override LD # here. Liblo uses log(3), so we need to link with -lm define MTDEV2TUIO_BUILD_CMDS - $(MAKE) \ + $(TARGET_MAKE_ENV) $(MAKE) \ $(TARGET_CONFIGURE_OPTS) \ LD="$(TARGET_CC)" \ LIBS="-lmtdev -llo -lm" \ diff --git a/package/mtools/mtools.mk b/package/mtools/mtools.mk index fc145c0832..adba1fc473 100644 --- a/package/mtools/mtools.mk +++ b/package/mtools/mtools.mk @@ -22,11 +22,9 @@ HOST_MTOOLS_CONF_ENV = \ ifeq ($(BR2_PACKAGE_LIBICONV),y) MTOOLS_DEPENDENCIES += libiconv MTOOLS_CONF_ENV += LIBS=-liconv -# We have no host dependencies -HOST_MTOOLS_DEPENDENCIES = endif -# Package does not build in parallel due to improper make rules +# Package does not build in parallel due to improper make rules MTOOLS_MAKE = $(MAKE1) $(eval $(autotools-package)) diff --git a/package/multicat/Config.in b/package/multicat/Config.in index 8dfb6c134a..1359358163 100644 --- a/package/multicat/Config.in +++ b/package/multicat/Config.in @@ -7,5 +7,5 @@ config BR2_PACKAGE_MULTICAT http://www.videolan.org/projects/multicat.html -comment 'multicat needs a toolchain w/ threads' +comment "multicat needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/musl-compat-headers/Config.in b/package/musl-compat-headers/Config.in new file mode 100644 index 0000000000..c672f9cac3 --- /dev/null +++ b/package/musl-compat-headers/Config.in @@ -0,0 +1,2 @@ +config BR2_PACKAGE_MUSL_COMPAT_HEADERS + bool diff --git a/package/musl-compat-headers/cdefs.h b/package/musl-compat-headers/cdefs.h new file mode 100644 index 0000000000..6fe7aa435d --- /dev/null +++ b/package/musl-compat-headers/cdefs.h @@ -0,0 +1,51 @@ +/* Copyright (C) 2016 Yann E. MORIN + * + * This file is in the Public Domain. + * + * For jurisdictions in which the Public Domain does not exist + * or it is not otherwise applicable, this file is licensed CC0 + * (Creative Commons Zero). + */ + +/* This file contains definitions for non-standard macros defined by + * glibc, but quite commonly used in packages. + * + * Because they are non-standard, musl does not define those macros. + * It does not provide cdefs.h either. + * + * This file is a compatibility header written from scratch, to be + * installed when the C library is musl. + * + * Not all macros from the glibc's cdefs.h are available, only the + * most commonly used ones. + * + * Please refer to the glibc documentation and source code for + * explanations about those macros. + */ + +#ifndef BUILDROOT_SYS_CDEFS_H +#define BUILDROOT_SYS_CDEFS_H + +/* Function prototypes. */ +#undef __P +#define __P(arg) arg + +/* C declarations in C++ mode. */ +#ifdef __cplusplus +# define __BEGIN_DECLS extern "C" { +# define __END_DECLS } +#else +# define __BEGIN_DECLS +# define __END_DECLS +#endif + +/* Don't throw exceptions in C functions. */ +#ifndef __cplusplus +# define __THROW __attribute__ ((__nothrow__)) +# define __NTH(f) __attribute__ ((__nothrow__)) f +#else +# define __THROW +# define __NTH(f) f +#endif + +#endif /* ifndef BUILDROOT_SYS_CDEFS_H */ diff --git a/package/netbsd-queue/netbsd-queue.hash b/package/musl-compat-headers/musl-compat-headers.hash similarity index 100% rename from package/netbsd-queue/netbsd-queue.hash rename to package/musl-compat-headers/musl-compat-headers.hash diff --git a/package/musl-compat-headers/musl-compat-headers.mk b/package/musl-compat-headers/musl-compat-headers.mk new file mode 100644 index 0000000000..25e032c727 --- /dev/null +++ b/package/musl-compat-headers/musl-compat-headers.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# musl-compat-headers +# +################################################################################ + +# No main site, just using extra downloads +MUSL_COMPAT_HEADERS_QUEUE_H = http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys/queue.h?rev=1.70 + +MUSL_COMPAT_HEADERS_EXTRA_DOWNLOADS = $(MUSL_COMPAT_HEADERS_QUEUE_H) + +MUSL_COMPAT_HEADERS_LICENSE = BSD-3c, Public Domain or CC0 +MUSL_COMPAT_HEADERS_LICENSE_FILES = queue.h cdefs.h + +MUSL_COMPAT_HEADERS_ADD_TOOLCHAIN_DEPENDENCY = NO + +# Only installs headers +MUSL_COMPAT_HEADERS_INSTALL_TARGET = NO +MUSL_COMPAT_HEADERS_INSTALL_STAGING = YES + +# Copying both headers so legal-info finds them (they are _LICENSE_FILES) +define MUSL_COMPAT_HEADERS_EXTRACT_CMDS + $(INSTALL) -m 0644 -D $(DL_DIR)/$(notdir $(MUSL_COMPAT_HEADERS_QUEUE_H)) $(@D)/queue.h + $(INSTALL) -m 0644 -D $(MUSL_COMPAT_HEADERS_PKGDIR)/cdefs.h $(@D)/cdefs.h +endef + +define MUSL_COMPAT_HEADERS_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0644 $(@D)/queue.h \ + $(STAGING_DIR)/usr/include/sys/queue.h + $(INSTALL) -D -m 0644 $(@D)/cdefs.h \ + $(STAGING_DIR)/usr/include/sys/cdefs.h +endef + +$(eval $(generic-package)) diff --git a/package/musl/0001-avoid-kernel-if_ether.h.patch b/package/musl/0001-avoid-kernel-if_ether.h.patch new file mode 100644 index 0000000000..8efbcc8450 --- /dev/null +++ b/package/musl/0001-avoid-kernel-if_ether.h.patch @@ -0,0 +1,30 @@ +From 3984adc4976de7553f51e0cf4de1e18c373b332b Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Thu, 15 Dec 2016 15:10:19 +0200 +Subject: [PATCH] Avoid redefinition of struct ethhdr + +This is a workaround to the if_ether.h conflict between musl and the kernel. +Both define struct ethhdr. + +Signed-off-by: Baruch Siach +--- + include/netinet/if_ether.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/include/netinet/if_ether.h b/include/netinet/if_ether.h +index 11ee65823f93..cfe1949d3371 100644 +--- a/include/netinet/if_ether.h ++++ b/include/netinet/if_ether.h +@@ -1,6 +1,9 @@ + #ifndef _NETINET_IF_ETHER_H + #define _NETINET_IF_ETHER_H + ++/* Suppress kernel if_ether.h header inclusion */ ++#define _LINUX_IF_ETHER_H ++ + #include + #include + +-- +2.10.2 + diff --git a/package/musl/Config.in b/package/musl/Config.in index c263006a29..18ae69d280 100644 --- a/package/musl/Config.in +++ b/package/musl/Config.in @@ -3,5 +3,6 @@ config BR2_PACKAGE_MUSL depends on BR2_TOOLCHAIN_USES_MUSL default y select BR2_PACKAGE_LINUX_HEADERS - select BR2_PACKAGE_NETBSD_QUEUE select BR2_TOOLCHAIN_HAS_SSP + # Compatibility headers: cdefs.h, queue.h + select BR2_PACKAGE_MUSL_COMPAT_HEADERS diff --git a/package/musl/musl.hash b/package/musl/musl.hash index 907e9c6bd5..f3f3741092 100644 --- a/package/musl/musl.hash +++ b/package/musl/musl.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 35f6c00c84a6091bd5dab29eedde7508dae755ead92dcc0239f3677d1055b9b5 musl-1.1.14.tar.gz +sha256 937185a5e5d721050306cf106507a006c3f1f86d86cd550024ea7be909071011 musl-1.1.16.tar.gz diff --git a/package/musl/musl.mk b/package/musl/musl.mk index 733f940db2..6d5603398b 100644 --- a/package/musl/musl.mk +++ b/package/musl/musl.mk @@ -4,7 +4,7 @@ # ################################################################################ -MUSL_VERSION = 1.1.14 +MUSL_VERSION = 1.1.16 MUSL_SITE = http://www.musl-libc.org/releases MUSL_LICENSE = MIT MUSL_LICENSE_FILES = COPYRIGHT @@ -13,10 +13,12 @@ MUSL_LICENSE_FILES = COPYRIGHT # cross-compiler and the kernel headers MUSL_DEPENDENCIES = host-gcc-initial linux-headers -# musl does not provide a sys/queue.h implementation, so add the -# netbsd-queue package that will install a sys/queue.h file in the -# staging directory based on the NetBSD implementation. -MUSL_DEPENDENCIES += netbsd-queue +# 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 +MUSL_DEPENDENCIES += musl-compat-headers # musl is part of the toolchain so disable the toolchain dependency MUSL_ADD_TOOLCHAIN_DEPENDENCY = NO diff --git a/package/mutt/mutt.hash b/package/mutt/mutt.hash index baee620692..460cd5f04f 100644 --- a/package/mutt/mutt.hash +++ b/package/mutt/mutt.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 98b26cecc6b1713082fc880344fa345c20bd7ded6459abe18c84429c7cf8ed20 mutt-1.6.1.tar.gz +sha256 e9c6f88e83d48690033f0d862a70293ac746286b77241554f5448bc23bd0d6df mutt-1.7.1.tar.gz diff --git a/package/mutt/mutt.mk b/package/mutt/mutt.mk index e6ea6e4000..cd44ca101d 100644 --- a/package/mutt/mutt.mk +++ b/package/mutt/mutt.mk @@ -4,7 +4,7 @@ # ################################################################################ -MUTT_VERSION = 1.6.1 +MUTT_VERSION = 1.7.1 MUTT_SITE = https://bitbucket.org/mutt/mutt/downloads MUTT_LICENSE = GPLv2+ MUTT_LICENSE_FILES = GPL diff --git a/package/mxml/mxml.hash b/package/mxml/mxml.hash index 310e2cae0a..90392755ba 100644 --- a/package/mxml/mxml.hash +++ b/package/mxml/mxml.hash @@ -1,4 +1,4 @@ # From http://www.msweet.org/downloads.php?L+Z3 -md5 e21cad0f7aacd18f942aa0568a8dee19 mxml-2.9.tar.gz +md5 8804c961a24500a95690ef287d150abe mxml-2.10.tar.gz # Locally computed -sha256 cded54653c584b24c4a78a7fa1b3b4377d49ac4f451ddf170ebbc8161d85ff92 mxml-2.9.tar.gz +sha256 267ff58b64ddc767170d71dab0c729c06f45e1df9a9b6f75180b564f09767891 mxml-2.10.tar.gz diff --git a/package/mxml/mxml.mk b/package/mxml/mxml.mk index 7e9b4d6c89..f36c75cabb 100644 --- a/package/mxml/mxml.mk +++ b/package/mxml/mxml.mk @@ -4,7 +4,7 @@ # ################################################################################ -MXML_VERSION = 2.9 +MXML_VERSION = 2.10 MXML_SITE = http://www.msweet.org/files/project3 MXML_LICENSE = LGPLv2+ with exceptions MXML_LICENSE_FILES = COPYING diff --git a/package/mxsldr/Config.in.host b/package/mxsldr/Config.in.host new file mode 100644 index 0000000000..a427e71cf7 --- /dev/null +++ b/package/mxsldr/Config.in.host @@ -0,0 +1,9 @@ +config BR2_PACKAGE_HOST_MXSLDR + bool "host mxsldr" + depends on BR2_arm || BR2_armeb + help + This package contains tools to download and execute code on + Freescale i.MX23 and i.MX28 SoC's through the Serial + Download Protocol. + + git://git.denx.de/mxsldr.git diff --git a/package/mxsldr/mxsldr.mk b/package/mxsldr/mxsldr.mk new file mode 100644 index 0000000000..fa7ca8447a --- /dev/null +++ b/package/mxsldr/mxsldr.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# mxsldr +# +################################################################################ + +MXSLDR_VERSION = 2793a657ab7a22487d21c1b020957806f8ae8383 +MXSLDR_SITE = git://git.denx.de/mxsldr.git +MXSLDR_LICENSE = GPLv2+ +MXSLDR_LICENSE_FILES = COPYING +HOST_MXSLDR_DEPENDENCIES = host-libusb host-pkgconf + +define HOST_MXSLDR_BUILD_CMDS + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define HOST_MXSLDR_INSTALL_CMDS + $(INSTALL) -m 0755 -D $(@D)/mxsldr $(HOST_DIR)/usr/bin/mxsldr +endef + +$(eval $(host-generic-package)) diff --git a/package/mysql/Config.in b/package/mysql/Config.in index 7133892bb7..69ad586548 100644 --- a/package/mysql/Config.in +++ b/package/mysql/Config.in @@ -1,24 +1,75 @@ config BR2_PACKAGE_MYSQL - bool "MySQL" + bool "mysql support" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS + help + Select the desired mysql provider. + +if BR2_PACKAGE_MYSQL + +choice + prompt "mysql variant" + default BR2_PACKAGE_ORACLE_MYSQL + help + Select either the oracle mysql server or the mariadb server + +config BR2_PACKAGE_MARIADB + bool "mariadb" + depends on BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS + select BR2_PACKAGE_LIBAIO + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_READLINE + select BR2_PACKAGE_HAS_MYSQL + help + MariaDB is one of the most popular database servers in the world. + It's made by the original developers of MySQL and guaranteed to + stay open source. + + http://www.mariadb.org/ + +config BR2_PACKAGE_ORACLE_MYSQL + bool "oracle mysql" select BR2_PACKAGE_NCURSES select BR2_PACKAGE_READLINE + select BR2_PACKAGE_HAS_MYSQL help The MySQL Open Source Database System http://www.mysql.com/ -if BR2_PACKAGE_MYSQL +endchoice -config BR2_PACKAGE_MYSQL_SERVER - bool "MySQL server" +if BR2_PACKAGE_MARIADB + +config BR2_PACKAGE_MARIADB_SERVER + bool "mariadb server" + help + Install the mariadb server on the target. + +endif + +if BR2_PACKAGE_ORACLE_MYSQL + +config BR2_PACKAGE_ORACLE_MYSQL_SERVER + bool "oracle mysql server" help Install the MySQL server on the target. endif -comment "MySQL needs a toolchain w/ C++, threads" +config BR2_PACKAGE_HAS_MYSQL + bool + +config BR2_PACKAGE_PROVIDES_MYSQL + string + default "mariadb" if BR2_PACKAGE_MARIADB + default "oracle-mysql" if BR2_PACKAGE_ORACLE_MYSQL + +endif + +comment "mysql needs a toolchain w/ C++, threads" depends on BR2_USE_MMU depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/mysql/mysql.mk b/package/mysql/mysql.mk index 534bd97d25..d65562563d 100644 --- a/package/mysql/mysql.mk +++ b/package/mysql/mysql.mk @@ -4,128 +4,4 @@ # ################################################################################ -MYSQL_VERSION_MAJOR = 5.1 -MYSQL_VERSION = $(MYSQL_VERSION_MAJOR).73 -MYSQL_SOURCE = mysql-$(MYSQL_VERSION).tar.gz -MYSQL_SITE = http://downloads.skysql.com/archives/mysql-$(MYSQL_VERSION_MAJOR) -MYSQL_INSTALL_STAGING = YES -MYSQL_DEPENDENCIES = readline ncurses -MYSQL_AUTORECONF = YES -MYSQL_LICENSE = GPLv2 -MYSQL_LICENSE_FILES = README COPYING - -MYSQL_CONF_ENV = \ - ac_cv_sys_restartable_syscalls=yes \ - ac_cv_path_PS=/bin/ps \ - ac_cv_FIND_PROC="/bin/ps p \$\$PID | grep -v grep | grep mysqld > /dev/null" \ - ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=yes \ - ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=no \ - ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=yes \ - mysql_cv_new_rl_interface=yes - -MYSQL_CONF_OPTS = \ - --without-ndb-binlog \ - --without-docs \ - --without-man \ - --without-libedit \ - --without-readline \ - --with-low-memory \ - --enable-thread-safe-client \ - --disable-mysql-maintainer-mode - -# host-mysql only installs what is needed to build mysql, i.e. the -# gen_lex_hash tool, and it only builds the parts that are needed to -# create this tool -HOST_MYSQL_DEPENDENCIES = host-zlib host-ncurses - -HOST_MYSQL_CONF_OPTS = \ - --with-embedded-server \ - --disable-mysql-maintainer-mode - -define HOST_MYSQL_BUILD_CMDS - $(MAKE) -C $(@D)/include my_config.h - $(MAKE) -C $(@D)/mysys libmysys.a - $(MAKE) -C $(@D)/strings libmystrings.a - $(MAKE) -C $(@D)/vio libvio.a - $(MAKE) -C $(@D)/dbug libdbug.a - $(MAKE) -C $(@D)/regex libregex.a - $(MAKE) -C $(@D)/sql gen_lex_hash -endef - -define HOST_MYSQL_INSTALL_CMDS - $(INSTALL) -m 0755 $(@D)/sql/gen_lex_hash $(HOST_DIR)/usr/bin/ -endef - -ifeq ($(BR2_PACKAGE_OPENSSL),y) -MYSQL_DEPENDENCIES += openssl -endif - -ifeq ($(BR2_PACKAGE_ZLIB),y) -MYSQL_DEPENDENCIES += zlib -endif - -ifeq ($(BR2_PACKAGE_MYSQL_SERVER),y) -MYSQL_DEPENDENCIES += host-mysql host-bison - -MYSQL_CONF_OPTS += \ - --localstatedir=/var/mysql \ - --with-atomic-ops=up \ - --with-embedded-server \ - --without-query-cache \ - --without-plugin-partition \ - --without-plugin-daemon_example \ - --without-plugin-ftexample \ - --without-plugin-archive \ - --without-plugin-blackhole \ - --without-plugin-example \ - --without-plugin-federated \ - --without-plugin-ibmdb2i \ - --without-plugin-innobase \ - --without-plugin-innodb_plugin \ - --without-plugin-ndbcluster - -# Debugging is only available for the server, so no need for -# this if-block outside of the server if-block -ifeq ($(BR2_ENABLE_DEBUG),y) -MYSQL_CONF_OPTS += --with-debug=full -else -MYSQL_CONF_OPTS += --without-debug -endif - -define MYSQL_USERS - mysql -1 nogroup -1 * /var/mysql - - MySQL daemon -endef - -define MYSQL_ADD_FOLDER - $(INSTALL) -d $(TARGET_DIR)/var/mysql -endef - -MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_ADD_FOLDER - -define MYSQL_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 package/mysql/S97mysqld \ - $(TARGET_DIR)/etc/init.d/S97mysqld -endef - -define MYSQL_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 644 package/mysql/mysqld.service \ - $(TARGET_DIR)/usr/lib/systemd/system/mysqld.service - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants - ln -sf ../../../../usr/lib/systemd/system/mysqld.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mysqld.service -endef - -else -MYSQL_CONF_OPTS += \ - --without-server -endif - - -define MYSQL_REMOVE_TEST_PROGS - rm -rf $(TARGET_DIR)/usr/mysql-test $(TARGET_DIR)/usr/sql-bench -endef - -MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_REMOVE_TEST_PROGS - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) +$(eval $(virtual-package)) diff --git a/package/nano/nano.hash b/package/nano/nano.hash index eb6a9fc646..aa3e27b917 100644 --- a/package/nano/nano.hash +++ b/package/nano/nano.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b2b060129b9feff2d4870d803a441178c96531de9aed144ec0b83bd63ccb12ee nano-2.5.3.tar.gz +sha256 752170643039e2c95a433de357f0c70a8c4c4c561a90a7e7259a63e225b659b9 nano-2.7.4.tar.xz diff --git a/package/nano/nano.mk b/package/nano/nano.mk index be6ea24da5..4632bed3b1 100644 --- a/package/nano/nano.mk +++ b/package/nano/nano.mk @@ -4,8 +4,10 @@ # ################################################################################ -NANO_VERSION = 2.5.3 -NANO_SITE = $(BR2_GNU_MIRROR)/nano +NANO_VERSION_MAJOR = 2.7 +NANO_VERSION = $(NANO_VERSION_MAJOR).4 +NANO_SITE = https://www.nano-editor.org/dist/v$(NANO_VERSION_MAJOR) +NANO_SOURCE = nano-$(NANO_VERSION).tar.xz NANO_LICENSE = GPLv3+ NANO_LICENSE_FILES = COPYING NANO_CONF_OPTS = \ diff --git a/package/nanocom/nanocom.mk b/package/nanocom/nanocom.mk index 293dd091fc..caab3680e4 100644 --- a/package/nanocom/nanocom.mk +++ b/package/nanocom/nanocom.mk @@ -12,7 +12,7 @@ NANOCOM_LICENSE = GPLv2+ NANOCOM_LICENSE_FILES = COPYING define NANOCOM_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" -C $(@D) endef define NANOCOM_INSTALL_TARGET_CMDS diff --git a/package/nasm/nasm.hash b/package/nasm/nasm.hash index 4ec185336e..5d7c36dec5 100644 --- a/package/nasm/nasm.hash +++ b/package/nasm/nasm.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9dbba1ce620512e435ba57e69e811fe8e07d04359e47e0a0b5e94a5dd8367489 nasm-2.12.01.tar.xz +sha256 4c866b60c0b1c4ebc715205d007b4640ff4e36af637c9a7deb87b2900e544321 nasm-2.12.02.tar.xz diff --git a/package/nasm/nasm.mk b/package/nasm/nasm.mk index e9343beec4..f5d9ea0bbd 100644 --- a/package/nasm/nasm.mk +++ b/package/nasm/nasm.mk @@ -4,7 +4,7 @@ # ################################################################################ -NASM_VERSION = 2.12.01 +NASM_VERSION = 2.12.02 NASM_SOURCE = nasm-$(NASM_VERSION).tar.xz NASM_SITE = http://www.nasm.us/pub/nasm/releasebuilds/$(NASM_VERSION) NASM_LICENSE = BSD-2c diff --git a/package/ncdu/Config.in b/package/ncdu/Config.in index dac744410b..0e4403444f 100644 --- a/package/ncdu/Config.in +++ b/package/ncdu/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NCDU bool "ncdu" + depends on BR2_USE_MMU # system() select BR2_PACKAGE_NCURSES help ncdu is a disk usage analyzer with an ncurses interface diff --git a/package/ncdu/ncdu.hash b/package/ncdu/ncdu.hash index 7985c995a1..4bdda40219 100644 --- a/package/ncdu/ncdu.hash +++ b/package/ncdu/ncdu.hash @@ -1,3 +1,3 @@ -# From http://dev.yorhel.nl/download/ncdu-1.9.tar.gz.{md5,sha1} -md5 93258079db897d28bb8890e2db89b1fb ncdu-1.9.tar.gz -sha1 27cb5464b192db8ffdf0a894fe51d29985348eb0 ncdu-1.9.tar.gz +# From http://dev.yorhel.nl/download/ncdu-1.11.tar.gz.{md5,sha1} +md5 9e44240a5356b029f05f0e70a63c4d12 ncdu-1.11.tar.gz +sha1 8f22d713e6d2b28e1f501eee2bd1e03b55550c8d ncdu-1.11.tar.gz diff --git a/package/ncdu/ncdu.mk b/package/ncdu/ncdu.mk index 03519707e2..bccbb8d926 100644 --- a/package/ncdu/ncdu.mk +++ b/package/ncdu/ncdu.mk @@ -4,7 +4,7 @@ # ################################################################################ -NCDU_VERSION = 1.9 +NCDU_VERSION = 1.11 NCDU_SITE = http://dev.yorhel.nl/download NCDU_DEPENDENCIES = ncurses diff --git a/package/ncftp/Config.in b/package/ncftp/Config.in index 57586e7ba2..135ab5350f 100644 --- a/package/ncftp/Config.in +++ b/package/ncftp/Config.in @@ -10,28 +10,24 @@ config BR2_PACKAGE_NCFTP if BR2_PACKAGE_NCFTP -menu "ncFTP tools selection" - config BR2_PACKAGE_NCFTP_GET - bool "NcFTPGet - command-line utility program" + bool "ncftpget" default y config BR2_PACKAGE_NCFTP_PUT - bool "NcFTPPut - command-line utility program" + bool "ncftpput" default y config BR2_PACKAGE_NCFTP_LS - bool "NcFTPLs - command-line utility program" + bool "ncftpls" default y config BR2_PACKAGE_NCFTP_BATCH - bool "NcFTPBatch & NcFTPSpooler - background FTP program for individual users" + bool "ncftpbatch/ncftpspooler" default y config BR2_PACKAGE_NCFTP_BOOKMARKS - bool "NcFTPBookmarks - ncurses based Bookmark Editor" + bool "ncftpbookmarks" select BR2_PACKAGE_NCURSES -endmenu - endif diff --git a/package/ncftp/ncftp.hash b/package/ncftp/ncftp.hash index 11695894f2..0a7c26c9b2 100644 --- a/package/ncftp/ncftp.hash +++ b/package/ncftp/ncftp.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 b4ebe2415761a5137cd1d313c8fc1352f26d8963cc9e9e354e29720aa2089d42 ncftp-3.2.5-src.tar.bz2 +sha256 7abd3e8f848f0efb4bb6a4bc5da58a59524d4378fc8d70a52adb0fe1fd00b89d ncftp-3.2.6-src.tar.xz diff --git a/package/ncftp/ncftp.mk b/package/ncftp/ncftp.mk index 28b03b8800..5c88556a39 100644 --- a/package/ncftp/ncftp.mk +++ b/package/ncftp/ncftp.mk @@ -4,8 +4,8 @@ # ################################################################################ -NCFTP_VERSION = 3.2.5 -NCFTP_SOURCE = ncftp-$(NCFTP_VERSION)-src.tar.bz2 +NCFTP_VERSION = 3.2.6 +NCFTP_SOURCE = ncftp-$(NCFTP_VERSION)-src.tar.xz NCFTP_SITE = ftp://ftp.ncftp.com/ncftp NCFTP_TARGET_BINS = ncftp NCFTP_LICENSE = Clarified Artistic License diff --git a/package/ncmpc/ncmpc.hash b/package/ncmpc/ncmpc.hash index 1acc64dc10..e7646b2e3a 100644 --- a/package/ncmpc/ncmpc.hash +++ b/package/ncmpc/ncmpc.hash @@ -1,2 +1,2 @@ -# Calculated locally -sha256 0e6f76b2b11449cfa479d2830ac681f4e3bff54a95a9134b069dd5a173b4c3e9 ncmpc-0.24.tar.xz +# Locally calculated after checking pgp signature +sha256 6e328acb71d06ae9e6c5fced99bc28ae78bcab1a73130b42ce9ab08a814ecea4 ncmpc-0.25.tar.xz diff --git a/package/ncmpc/ncmpc.mk b/package/ncmpc/ncmpc.mk index 050b6b8343..b5fa7cdf3c 100644 --- a/package/ncmpc/ncmpc.mk +++ b/package/ncmpc/ncmpc.mk @@ -5,7 +5,7 @@ ################################################################################ NCMPC_VERSION_MAJOR = 0 -NCMPC_VERSION = $(NCMPC_VERSION_MAJOR).24 +NCMPC_VERSION = $(NCMPC_VERSION_MAJOR).25 NCMPC_SOURCE = ncmpc-$(NCMPC_VERSION).tar.xz NCMPC_SITE = http://www.musicpd.org/download/ncmpc/$(NCMPC_VERSION_MAJOR) NCMPC_DEPENDENCIES = host-pkgconf libglib2 libmpdclient ncurses diff --git a/package/ncurses/0003-recognise-uclinux.patch b/package/ncurses/0003-recognise-uclinux.patch new file mode 100644 index 0000000000..e86546cc54 --- /dev/null +++ b/package/ncurses/0003-recognise-uclinux.patch @@ -0,0 +1,30 @@ +aclocal: fix detection for uclinux hosts + +uclinux is just a linux like the others... + +Signed-off-by: "Yann E. MORIN" + +diff -durN ncurses-5.9.orig/aclocal.m4 ncurses-5.9/aclocal.m4 +--- ncurses-5.9.orig/aclocal.m4 2011-04-01 01:35:38.000000000 +0200 ++++ ncurses-5.9/aclocal.m4 2016-08-21 15:24:47.003620029 +0200 +@@ -6531,7 +6531,7 @@ + irix[[56]].*) #(vi + cf_xopen_source="-D_SGI_SOURCE" + ;; +-linux*|gnu*|mint*|k*bsd*-gnu) #(vi ++linux*|uclinux*|gnu*|mint*|k*bsd*-gnu) #(vi + CF_GNU_SOURCE + ;; + mirbsd*) #(vi +diff -durN ncurses-5.9.orig/configure ncurses-5.9/configure +--- ncurses-5.9.orig/configure 2016-08-21 15:21:50.789285661 +0200 ++++ ncurses-5.9/configure 2016-08-21 15:24:35.187463625 +0200 +@@ -6984,7 +6984,7 @@ + irix[56].*) #(vi + cf_xopen_source="-D_SGI_SOURCE" + ;; +-linux*|gnu*|mint*|k*bsd*-gnu) #(vi ++linux*|uclinux*|gnu*|mint*|k*bsd*-gnu) #(vi + + echo "$as_me:6996: checking if we must define _GNU_SOURCE" >&5 + echo $ECHO_N "checking if we must define _GNU_SOURCE... $ECHO_C" >&6 diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk index 8368c690b6..343909fe3f 100644 --- a/package/ncurses/ncurses.mk +++ b/package/ncurses/ncurses.mk @@ -8,7 +8,6 @@ NCURSES_VERSION = 5.9 NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses NCURSES_INSTALL_STAGING = YES NCURSES_DEPENDENCIES = host-ncurses -HOST_NCURSES_DEPENDENCIES = NCURSES_PROGS = clear infocmp tabs tic toe tput tset NCURSES_LICENSE = MIT with advertising clause NCURSES_LICENSE_FILES = README @@ -56,33 +55,46 @@ NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_MENU) += menu NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_PANEL) += panel NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_FORM) += form +NCURSES_TERMINFO_FILES = \ + a/ansi \ + l/linux \ + p/putty \ + p/putty-vt100 \ + s/screen \ + v/vt100 \ + v/vt100-putty \ + v/vt102 \ + v/vt200 \ + v/vt220 \ + x/xterm \ + x/xterm-color \ + x/xterm-xfree86 \ + ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) NCURSES_CONF_OPTS += --enable-widec NCURSES_LIB_SUFFIX = w define NCURSES_LINK_LIBS_STATIC - for lib in $(NCURSES_LIBS-y:%=lib%); do \ - ln -sf $${lib}$(NCURSES_LIB_SUFFIX).a \ - $(1)/usr/lib/$${lib}.a; \ - done + $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ + ln -sf $(lib)$(NCURSES_LIB_SUFFIX).a $(1)/usr/lib/$(lib).a + ) ln -sf libncurses$(NCURSES_LIB_SUFFIX).a \ $(1)/usr/lib/libcurses.a endef define NCURSES_LINK_LIBS_SHARED - for lib in $(NCURSES_LIBS-y:%=lib%); do \ - ln -sf $${lib}$(NCURSES_LIB_SUFFIX).so \ - $(1)/usr/lib/$${lib}.so; \ - done + $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ + ln -sf $(lib)$(NCURSES_LIB_SUFFIX).so $(1)/usr/lib/$(lib).so + ) ln -sf libncurses$(NCURSES_LIB_SUFFIX).so \ $(1)/usr/lib/libcurses.so endef define NCURSES_LINK_PC - for pc in $(NCURSES_LIBS-y); do \ - ln -sf $${pc}$(NCURSES_LIB_SUFFIX).pc \ - $(1)/usr/lib/pkgconfig/$${pc}.pc; \ - done + $(foreach pc,$(NCURSES_LIBS-y), \ + ln -sf $(pc)$(NCURSES_LIB_SUFFIX).pc \ + $(1)/usr/lib/pkgconfig/$(pc).pc + ) endef NCURSES_LINK_TARGET_LIBS = \ @@ -96,10 +108,10 @@ NCURSES_LINK_STAGING_PC = $(call NCURSES_LINK_PC,$(STAGING_DIR)) NCURSES_CONF_OPTS += --enable-ext-colors NCURSES_ABI_VERSION = 6 -define NCURSES_INSTALL_TARGET_256_COLORS_TERMINFO - cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm+256color $(TARGET_DIR)/usr/share/terminfo/x - cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm-256color $(TARGET_DIR)/usr/share/terminfo/x -endef +NCURSES_TERMINFO_FILES += \ + p/putty-256color \ + x/xterm+256color \ + x/xterm-256color NCURSES_POST_INSTALL_STAGING_HOOKS += NCURSES_LINK_STAGING_LIBS NCURSES_POST_INSTALL_STAGING_HOOKS += NCURSES_LINK_STAGING_PC @@ -115,26 +127,26 @@ endif # ncurses breaks with parallel build, but takes quite a while to # build single threaded. Work around it similar to how Gentoo does define NCURSES_BUILD_CMDS - $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) sources + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) sources rm -rf $(@D)/misc/pc-files - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) endef ifneq ($(BR2_STATIC_LIBS),y) define NCURSES_INSTALL_TARGET_LIBS - for lib in $(NCURSES_LIBS-y:%=lib%); do \ - cp -dpf $(NCURSES_DIR)/lib/$${lib}$(NCURSES_LIB_SUFFIX).so* \ - $(TARGET_DIR)/usr/lib/; \ - done + $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ + cp -dpf $(NCURSES_DIR)/lib/$(lib)$(NCURSES_LIB_SUFFIX).so* \ + $(TARGET_DIR)/usr/lib/ + ) endef endif ifeq ($(BR2_PACKAGE_NCURSES_TARGET_PROGS),y) define NCURSES_INSTALL_TARGET_PROGS - for x in $(NCURSES_PROGS); do \ - $(INSTALL) -m 0755 $(NCURSES_DIR)/progs/$$x \ - $(TARGET_DIR)/usr/bin/$$x; \ - done + $(foreach prog,$(NCURSES_PROGS), \ + $(INSTALL) -m 0755 $(NCURSES_DIR)/progs/$(prog) \ + $(TARGET_DIR)/usr/bin/$(prog) + ) ln -sf tset $(TARGET_DIR)/usr/bin/reset endef endif @@ -145,22 +157,10 @@ define NCURSES_INSTALL_TARGET_CMDS $(NCURSES_LINK_TARGET_LIBS) $(NCURSES_INSTALL_TARGET_PROGS) ln -snf /usr/share/terminfo $(TARGET_DIR)/usr/lib/terminfo - mkdir -p $(TARGET_DIR)/usr/share/terminfo/x - cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm $(TARGET_DIR)/usr/share/terminfo/x - cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm-color $(TARGET_DIR)/usr/share/terminfo/x - cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm-xfree86 $(TARGET_DIR)/usr/share/terminfo/x - $(NCURSES_INSTALL_TARGET_256_COLORS_TERMINFO) - mkdir -p $(TARGET_DIR)/usr/share/terminfo/v - cp -dpf $(STAGING_DIR)/usr/share/terminfo/v/vt100 $(TARGET_DIR)/usr/share/terminfo/v - cp -dpf $(STAGING_DIR)/usr/share/terminfo/v/vt102 $(TARGET_DIR)/usr/share/terminfo/v - cp -dpf $(STAGING_DIR)/usr/share/terminfo/v/vt200 $(TARGET_DIR)/usr/share/terminfo/v - cp -dpf $(STAGING_DIR)/usr/share/terminfo/v/vt220 $(TARGET_DIR)/usr/share/terminfo/v - mkdir -p $(TARGET_DIR)/usr/share/terminfo/a - cp -dpf $(STAGING_DIR)/usr/share/terminfo/a/ansi $(TARGET_DIR)/usr/share/terminfo/a - mkdir -p $(TARGET_DIR)/usr/share/terminfo/l - cp -dpf $(STAGING_DIR)/usr/share/terminfo/l/linux $(TARGET_DIR)/usr/share/terminfo/l - mkdir -p $(TARGET_DIR)/usr/share/terminfo/s - cp -dpf $(STAGING_DIR)/usr/share/terminfo/s/screen $(TARGET_DIR)/usr/share/terminfo/s + $(foreach terminfo,$(NCURSES_TERMINFO_FILES),\ + $(INSTALL) -D -m 0644 $(STAGING_DIR)/usr/share/terminfo/$(terminfo) \ + $(TARGET_DIR)/usr/share/terminfo/$(terminfo) + ) endef # NCURSES_INSTALL_TARGET_CMDS # @@ -169,8 +169,8 @@ endef # NCURSES_INSTALL_TARGET_CMDS # ourselves, and use that during installation. # define HOST_NCURSES_BUILD_CMDS - $(MAKE1) -C $(@D) sources - $(MAKE) -C $(@D)/progs tic + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) sources + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/progs tic endef HOST_NCURSES_CONF_OPTS = \ diff --git a/package/ne10/ne10.hash b/package/ne10/ne10.hash new file mode 100644 index 0000000000..db5b6f1277 --- /dev/null +++ b/package/ne10/ne10.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 450dac5bb3a2351019ae23792e97c3bf965d16a21c0598b73cea9fbc3b3a56af ne10-v1.2.0.tar.gz diff --git a/package/neardal/neardal.hash b/package/neardal/neardal.hash new file mode 100644 index 0000000000..c767a74569 --- /dev/null +++ b/package/neardal/neardal.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9955753759a2604fa47562a4bbccd3b787d625e70311bb6662936d89d26715b7 neardal-33b54a55032b047fd885a5eb3592c169c0056c49.tar.gz diff --git a/package/neon/neon.hash b/package/neon/neon.hash index 9db5f82e88..d66b6fd74c 100644 --- a/package/neon/neon.hash +++ b/package/neon/neon.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 2962cfcb5d30f3272e3d2fa0e473434419770a3801afe3d46e5d1650787990c2 neon-0.30.0.tar.gz +sha256 db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca neon-0.30.2.tar.gz diff --git a/package/neon/neon.mk b/package/neon/neon.mk index 0cff1a26f8..ca1a6bd876 100644 --- a/package/neon/neon.mk +++ b/package/neon/neon.mk @@ -4,7 +4,7 @@ # ################################################################################ -NEON_VERSION = 0.30.0 +NEON_VERSION = 0.30.2 NEON_SITE = http://www.webdav.org/neon NEON_LICENSE = LGPLv2+ (library), GPLv2+ (manual and tests) NEON_LICENSE_FILES = src/COPYING.LIB test/COPYING README @@ -28,7 +28,7 @@ NEON_CONF_OPTS += --without-ssl endif ifeq ($(BR2_PACKAGE_NEON_EXPAT),y) -NEON_CONF_OPTS += --with-expat=$(STAGING_DIR)/usr/lib/libexpat.la +NEON_CONF_OPTS += --with-expat=yes NEON_DEPENDENCIES += expat else NEON_CONF_OPTS += --with-expat=no diff --git a/package/net-tools/0002-iptunnel.c-do-not-include-netinet-ip.h.patch b/package/net-tools/0002-iptunnel.c-do-not-include-netinet-ip.h.patch new file mode 100644 index 0000000000..a8658c4fec --- /dev/null +++ b/package/net-tools/0002-iptunnel.c-do-not-include-netinet-ip.h.patch @@ -0,0 +1,72 @@ +From eec38a200357b195efbb23bb645ab721c040f246 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Thu, 3 Nov 2016 12:59:39 +0000 +Subject: [PATCH] iptunnel.c: do not include netinet/ip.h + +This fixes a struct redefinition problem like this one: + +================================ +In file included from /usr/include/linux/if_tunnel.h:6:0, + from iptunnel.c:34: +/usr/include/linux/ip.h:85:8: error: redefinition of 'struct iphdr' + struct iphdr { + ^ +In file included from iptunnel.c:29:0: +/usr/include/netinet/ip.h:45:8: note: originally defined here + struct iphdr + ^ +================================ + +iptunnel.c includes netinet/ip.h which contains a definition of the +iphdr struct. + +iptunnel.c also includes linux/if_tunnel.h which includes linux/ip.h +which contains a definition of the iphdr struct. + +So, both netinet/ip.h and linux/ip.h define the iphdr struct, and both +of them have been included directly or indirectly by iptunnel.c. Because +of that the compilation fails due to a struct redefinition. + +The problem can be solved by just not including netinet/ip.h. + +However, some Linux headers included in certain toolchains may not have +an updated linux/if_tunnel.h which includes linux/ip.h, so we need to +include it unconditionally otherwise linux/if_tunnel.h will use the +struct iphdr before being defined and the compilation will also fail in +this way: + +================================ +In file included from iptunnel.c:33:0: +/usr/include/linux/if_tunnel.h:37:16: error: field 'iph' has incomplete type + struct iphdr iph; + ^ +================================ + +Upstream status: merge request sent +https://sourceforge.net/p/net-tools/code/merge-requests/4/ + +Signed-off-by: Vicente Olivert Riera +--- + iptunnel.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/iptunnel.c b/iptunnel.c +index 3fe1b84..e2ec2d8 100644 +--- a/iptunnel.c ++++ b/iptunnel.c +@@ -26,11 +26,11 @@ + #include + #include + #include +-#include + #include + #include + #include + #include ++#include + #include + + #include "config.h" +-- +2.10.1 + diff --git a/package/net-tools/Config.in b/package/net-tools/Config.in index f98dca0557..3980b7edb8 100644 --- a/package/net-tools/Config.in +++ b/package/net-tools/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NET_TOOLS bool "net-tools" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help A collection of programs that form the base set of the NET-3 diff --git a/package/net-tools/net-tools.mk b/package/net-tools/net-tools.mk index 08d55bb27c..f0c61d5c4b 100644 --- a/package/net-tools/net-tools.mk +++ b/package/net-tools/net-tools.mk @@ -34,8 +34,7 @@ endef NET_TOOLS_POST_CONFIGURE_HOOKS += NET_TOOLS_ENABLE_I18N NET_TOOLS_ENABLE_IPV6 define NET_TOOLS_BUILD_CMDS - $(TARGET_MAKE_ENV) AR="$(TARGET_AR)" CC="$(TARGET_CC)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ + $(TARGET_CONFIGURE_OPTS) \ LIBS="$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)" \ $(MAKE) -C $(@D) endef diff --git a/package/netatalk/Config.in b/package/netatalk/Config.in index ec6ec2c15d..ce1731830b 100644 --- a/package/netatalk/Config.in +++ b/package/netatalk/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NETATALK bool "netatalk" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS diff --git a/package/netbsd-queue/Config.in b/package/netbsd-queue/Config.in deleted file mode 100644 index 7837f4cd7f..0000000000 --- a/package/netbsd-queue/Config.in +++ /dev/null @@ -1,2 +0,0 @@ -config BR2_PACKAGE_NETBSD_QUEUE - bool diff --git a/package/netbsd-queue/netbsd-queue.mk b/package/netbsd-queue/netbsd-queue.mk deleted file mode 100644 index 5fd926bba1..0000000000 --- a/package/netbsd-queue/netbsd-queue.mk +++ /dev/null @@ -1,24 +0,0 @@ -################################################################################ -# -# netbsd-queue -# -################################################################################ - -NETBSD_QUEUE_VERSION = 1.70 -NETBSD_QUEUE_SITE = http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys -NETBSD_QUEUE_SOURCE = queue.h?rev=$(NETBSD_QUEUE_VERSION) -NETBSD_QUEUE_LICENSE = BSD-3c - -NETBSD_QUEUE_ADD_TOOLCHAIN_DEPENDENCY = NO -NETBSD_QUEUE_INSTALL_STAGING = YES - -define NETBSD_QUEUE_EXTRACT_CMDS - cp $(DL_DIR)/$(NETBSD_QUEUE_SOURCE) $(@D)/queue.h -endef - -define NETBSD_QUEUE_INSTALL_STAGING_CMDS - $(INSTALL) -D -m 0644 $(@D)/queue.h \ - $(STAGING_DIR)/usr/include/sys/queue.h -endef - -$(eval $(generic-package)) diff --git a/package/netcat-openbsd/Config.in b/package/netcat-openbsd/Config.in index 346561a856..0df997cb22 100644 --- a/package/netcat-openbsd/Config.in +++ b/package/netcat-openbsd/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_NETCAT_OPENBSD depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help A simple Unix utility which reads and writes data across network connections using TCP or UDP protocol. It is designed to be a @@ -18,7 +19,7 @@ config BR2_PACKAGE_NETCAT_OPENBSD https://packages.debian.org/sid/netcat-openbsd -comment "netcat-openbsd needs an (e)glibc toolchain w/ threads" +comment "netcat-openbsd needs a glibc toolchain w/ threads" depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_USES_GLIBC -~ + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/netcat/Config.in b/package/netcat/Config.in index 88273ffd50..924069ee1f 100644 --- a/package/netcat/Config.in +++ b/package/netcat/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NETCAT bool "netcat" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Netcat is a featured networking utility which reads and writes data across network connections, using the TCP/IP protocol. diff --git a/package/netplug/0002-add-missing-time-include.patch b/package/netplug/0002-add-missing-time-include.patch new file mode 100644 index 0000000000..f204c92431 --- /dev/null +++ b/package/netplug/0002-add-missing-time-include.patch @@ -0,0 +1,20 @@ +Add missing include + +netplug.h uses time_t, so it must include . This fixes a build +issue with the musl C library. + +Signed-off-by: Thomas Petazzoni + +Index: b/netplug.h +=================================================================== +--- a/netplug.h ++++ b/netplug.h +@@ -20,7 +20,7 @@ + #ifndef __netplug_h + #define __netplug_h + +- ++#include + #include + #include + #include diff --git a/package/netplug/0003-remove-assert-fail.patch b/package/netplug/0003-remove-assert-fail.patch new file mode 100644 index 0000000000..635c462a5e --- /dev/null +++ b/package/netplug/0003-remove-assert-fail.patch @@ -0,0 +1,51 @@ +Remove __assert_fail() + +The netplug code uses the assert() macro in various places. In glibc +internally, assert() uses a function called __assert_fail() to print a +message and abort. Relying on internal glibc details, netplug +re-defines __assert_fail() in the hope that it will get called instead +of glibc internal version. + +This attempt: + + * Doesn't work with uClibc, which doesn't use any __assert_fail() + function at all. It doesn't fail to build, but it is entirely + useless. + + * Fails to build with musl, which also defines __assert_fail(), but + with a different prototype. + +We simply remove the __assert_fail() implementation, so that the C +library implementation of assert() just does its normal work. The only +functionality lost is that the message is displayed on the standard +output rather than in netplug's logs (and this was only working with +glibc anyway). + +Signed-off-by: Thomas Petazzoni + +Index: b/lib.c +=================================================================== +--- a/lib.c ++++ b/lib.c +@@ -199,21 +199,6 @@ + return x; + } + +- +-void +-__assert_fail(const char *assertion, const char *file, +- unsigned int line, const char *function) +-{ +- do_log(LOG_CRIT, "%s:%u: %s%sAssertion `%s' failed", +- file, line, +- function ? function : "", +- function ? ": " : "", +- assertion); +- +- abort(); +-} +- +- + /* + * Local variables: + * c-file-style: "stroustrup" diff --git a/package/netplug/netplug.mk b/package/netplug/netplug.mk index aeebcad2ee..a165192f8b 100644 --- a/package/netplug/netplug.mk +++ b/package/netplug/netplug.mk @@ -11,11 +11,11 @@ NETPLUG_LICENSE = GPLv2 NETPLUG_LICENSE_FILES = COPYING define NETPLUG_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define NETPLUG_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install endef define NETPLUG_INSTALL_INIT_SYSV diff --git a/package/netsniff-ng/Config.in b/package/netsniff-ng/Config.in index 5d2f5dfebb..00617e3719 100644 --- a/package/netsniff-ng/Config.in +++ b/package/netsniff-ng/Config.in @@ -7,8 +7,7 @@ config BR2_PACKAGE_NETSNIFF_NG select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_LIBNET # Build with uClibc fails due to missing ceill() - # Build with musl fails due to various header issues - depends on BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_TOOLCHAIN_USES_UCLIBC depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS @@ -17,7 +16,7 @@ config BR2_PACKAGE_NETSNIFF_NG networking toolkit. If you will, the Swiss army knife for network packets. -comment "netsniff-ng needs an (e)glibc toolchain w/ threads, headers >= 3.0" +comment "netsniff-ng needs a glibc or musl toolchain w/ threads, headers >= 3.0" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_USES_GLIBC \ + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_UCLIBC \ || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/netsniff-ng/netsniff-ng.hash b/package/netsniff-ng/netsniff-ng.hash index 52124977ed..67b3331a92 100644 --- a/package/netsniff-ng/netsniff-ng.hash +++ b/package/netsniff-ng/netsniff-ng.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 902661bcdbc129c6a6c1f69a72f921fffc9e765d005568dc153f09ca0097c180 netsniff-ng-v0.6.1.tar.gz +sha256 62e8aa970a4f46cdaddf54daf8ea26e7ae9f9f358efaf0651799c8c4e937c286 netsniff-ng-v0.6.2.tar.gz diff --git a/package/netsniff-ng/netsniff-ng.mk b/package/netsniff-ng/netsniff-ng.mk index ad97a887e4..4ec7e743f5 100644 --- a/package/netsniff-ng/netsniff-ng.mk +++ b/package/netsniff-ng/netsniff-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -NETSNIFF_NG_VERSION = v0.6.1 +NETSNIFF_NG_VERSION = v0.6.2 NETSNIFF_NG_SITE = $(call github,netsniff-ng,netsniff-ng,$(NETSNIFF_NG_VERSION)) NETSNIFF_NG_LICENSE = GPLv2 NETSNIFF_NG_LICENSE_FILES = README COPYING diff --git a/package/netsnmp/0001-configure-Eliminate-the-hard-coded-libnl-3-include-p.patch b/package/netsnmp/0001-configure-Eliminate-the-hard-coded-libnl-3-include-p.patch new file mode 100644 index 0000000000..cf0592233e --- /dev/null +++ b/package/netsnmp/0001-configure-Eliminate-the-hard-coded-libnl-3-include-p.patch @@ -0,0 +1,300 @@ +From 57d6c3d36045aab8957ffeb7324728bf17faf8bd Mon Sep 17 00:00:00 2001 +From: Bart Van Assche +Date: Mon, 2 Feb 2015 20:31:29 +0100 +Subject: [PATCH] configure: Eliminate the hard-coded libnl-3 include path + +See also commit 3dde41998625fe0e24119a2e1f4509ba3ba2fd9a. + +(cherry picked from commit 852dcd644cfe4cfc7177649eaec163d6221f2be1) + +Original commit included modifications to configure script. +Do not keep these modifications, since they caused lots of conflicts, and +configure script is meant to be automatically generated. + +Signed-off-by: Julien Floret + +Conflicts: + configure +--- + aclocal.m4 | 1 + + configure.d/config_os_libs2 | 30 ++++++- + m4/pkg.m4 | 214 ++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 243 insertions(+), 2 deletions(-) + create mode 100644 m4/pkg.m4 + +diff --git a/aclocal.m4 b/aclocal.m4 +index cd80c7486f2f..45e3608ed480 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -22,3 +22,4 @@ m4_include([m4/ltversion.m4]) + m4_include([m4/lt~obsolete.m4]) + m4_include([m4/netsnmp_arg.m4]) + m4_include([m4/netsnmp_search_libs.m4]) ++m4_include([m4/pkg.m4]) +diff --git a/configure.d/config_os_libs2 b/configure.d/config_os_libs2 +index 47491e24ce0a..10bd414b879e 100644 +--- a/configure.d/config_os_libs2 ++++ b/configure.d/config_os_libs2 +@@ -225,11 +225,37 @@ fi + if test "x$with_nl" != "xno"; then + case $target_os in + linux*) # Check for libnl (linux) ++ # The test below verifies whether the libnl-3 package been installed. ++ # This test works as follows: ++ # - If pkg-config was not installed at the time autogen.sh was run, ++ # the definition of the PKG_CHECK_EXISTS() macro will not be found by ++ # autogen.sh. Augogen.sh will generate a configure script that prints ++ # a warning about pkg-config and proceeds as if libnl-3 has not been ++ # installed. ++ # - If pkg-config was installed at the time autogen.sh was run, ++ # the generated configure script will try to detect the presence of ++ # the libnl-3 library by looking up compile and linker flags in the ++ # file called libnl-3.pc. ++ # - pkg-config settings can be overridden via the configure variables ++ # LIBNL3_CFLAGS and LIBNL3_LIBS (added by the pkg-config m4 macro's to ++ # the configure script -- see also ./configure --help). ++ # - The LIBNL3_CFLAGS and LIBNL3_LIBS configure variables can be used ++ # even if the pkg-config executable is not present on the system on ++ # which the configure script is run. ++ ifdef( ++ [PKG_CHECK_EXISTS], ++ [PKG_CHECK_EXISTS([libnl-3.0], ++ [PKG_CHECK_MODULES([LIBNL3], [libnl-3.0])]) ++ ], ++ AC_MSG_WARN([pkg-config has not been installed or is too old.]) ++ AC_MSG_WARN([Detection of libnl-3.0 will be skipped.]) ++ ) ++ + netsnmp_save_CPPFLAGS="$CPPFLAGS" +- CPPFLAGS="-I/usr/include/libnl3 $CPPFLAGS" ++ CPPFLAGS="${LIBNL3_CFLAGS} $CPPFLAGS" + NETSNMP_SEARCH_LIBS(nl_connect, nl-3, + [AC_CHECK_HEADERS(netlink/netlink.h) +- EXTERNAL_MIBGROUP_INCLUDES="$EXTERNAL_MIBGROUP_INCLUDES -I/usr/include/libnl3"], ++ EXTERNAL_MIBGROUP_INCLUDES="$EXTERNAL_MIBGROUP_INCLUDES ${LIBNL3_CFLAGS}"], + [CPPFLAGS="$netsnmp_save_CPPFLAGS"], [], [], [LMIBLIBS]) + if test "x$ac_cv_header_netlink_netlink_h" != xyes; then + NETSNMP_SEARCH_LIBS(nl_connect, nl, [ +diff --git a/m4/pkg.m4 b/m4/pkg.m4 +new file mode 100644 +index 000000000000..c5b26b52e6cd +--- /dev/null ++++ b/m4/pkg.m4 +@@ -0,0 +1,214 @@ ++# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- ++# serial 1 (pkg-config-0.24) ++# ++# Copyright © 2004 Scott James Remnant . ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# ++# As a special exception to the GNU General Public License, if you ++# distribute this file as part of a program that contains a ++# configuration script generated by Autoconf, you may include it under ++# the same distribution terms that you use for the rest of that program. ++ ++# PKG_PROG_PKG_CONFIG([MIN-VERSION]) ++# ---------------------------------- ++AC_DEFUN([PKG_PROG_PKG_CONFIG], ++[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) ++m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) ++m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) ++AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) ++AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) ++AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) ++ ++if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then ++ AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) ++fi ++if test -n "$PKG_CONFIG"; then ++ _pkg_min_version=m4_default([$1], [0.9.0]) ++ AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) ++ if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ PKG_CONFIG="" ++ fi ++fi[]dnl ++])# PKG_PROG_PKG_CONFIG ++ ++# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) ++# ++# Check to see whether a particular set of modules exists. Similar ++# to PKG_CHECK_MODULES(), but does not set variables or print errors. ++# ++# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) ++# only at the first occurence in configure.ac, so if the first place ++# it's called might be skipped (such as if it is within an "if", you ++# have to call PKG_CHECK_EXISTS manually ++# -------------------------------------------------------------- ++AC_DEFUN([PKG_CHECK_EXISTS], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl ++if test -n "$PKG_CONFIG" && \ ++ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then ++ m4_default([$2], [:]) ++m4_ifvaln([$3], [else ++ $3])dnl ++fi]) ++ ++# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) ++# --------------------------------------------- ++m4_define([_PKG_CONFIG], ++[if test -n "$$1"; then ++ pkg_cv_[]$1="$$1" ++ elif test -n "$PKG_CONFIG"; then ++ PKG_CHECK_EXISTS([$3], ++ [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ], ++ [pkg_failed=yes]) ++ else ++ pkg_failed=untried ++fi[]dnl ++])# _PKG_CONFIG ++ ++# _PKG_SHORT_ERRORS_SUPPORTED ++# ----------------------------- ++AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi[]dnl ++])# _PKG_SHORT_ERRORS_SUPPORTED ++ ++ ++# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], ++# [ACTION-IF-NOT-FOUND]) ++# ++# ++# Note that if there is a possibility the first call to ++# PKG_CHECK_MODULES might not happen, you should be sure to include an ++# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac ++# ++# ++# -------------------------------------------------------------- ++AC_DEFUN([PKG_CHECK_MODULES], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl ++AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl ++AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl ++ ++pkg_failed=no ++AC_MSG_CHECKING([for $1]) ++ ++_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) ++_PKG_CONFIG([$1][_LIBS], [libs], [$2]) ++ ++m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS ++and $1[]_LIBS to avoid the need to call pkg-config. ++See the pkg-config man page for more details.]) ++ ++if test $pkg_failed = yes; then ++ AC_MSG_RESULT([no]) ++ _PKG_SHORT_ERRORS_SUPPORTED ++ if test $_pkg_short_errors_supported = yes; then ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` ++ else ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ++ ++ m4_default([$4], [AC_MSG_ERROR( ++[Package requirements ($2) were not met: ++ ++$$1_PKG_ERRORS ++ ++Consider adjusting the PKG_CONFIG_PATH environment variable if you ++installed software in a non-standard prefix. ++ ++_PKG_TEXT])[]dnl ++ ]) ++elif test $pkg_failed = untried; then ++ AC_MSG_RESULT([no]) ++ m4_default([$4], [AC_MSG_FAILURE( ++[The pkg-config script could not be found or is too old. Make sure it ++is in your PATH or set the PKG_CONFIG environment variable to the full ++path to pkg-config. ++ ++_PKG_TEXT ++ ++To get pkg-config, see .])[]dnl ++ ]) ++else ++ $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS ++ $1[]_LIBS=$pkg_cv_[]$1[]_LIBS ++ AC_MSG_RESULT([yes]) ++ $3 ++fi[]dnl ++])# PKG_CHECK_MODULES ++ ++ ++# PKG_INSTALLDIR(DIRECTORY) ++# ------------------------- ++# Substitutes the variable pkgconfigdir as the location where a module ++# should install pkg-config .pc files. By default the directory is ++# $libdir/pkgconfig, but the default can be changed by passing ++# DIRECTORY. The user can override through the --with-pkgconfigdir ++# parameter. ++AC_DEFUN([PKG_INSTALLDIR], ++[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) ++m4_pushdef([pkg_description], ++ [pkg-config installation directory @<:@]pkg_default[@:>@]) ++AC_ARG_WITH([pkgconfigdir], ++ [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, ++ [with_pkgconfigdir=]pkg_default) ++AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) ++m4_popdef([pkg_default]) ++m4_popdef([pkg_description]) ++]) dnl PKG_INSTALLDIR ++ ++ ++# PKG_NOARCH_INSTALLDIR(DIRECTORY) ++# ------------------------- ++# Substitutes the variable noarch_pkgconfigdir as the location where a ++# module should install arch-independent pkg-config .pc files. By ++# default the directory is $datadir/pkgconfig, but the default can be ++# changed by passing DIRECTORY. The user can override through the ++# --with-noarch-pkgconfigdir parameter. ++AC_DEFUN([PKG_NOARCH_INSTALLDIR], ++[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) ++m4_pushdef([pkg_description], ++ [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) ++AC_ARG_WITH([noarch-pkgconfigdir], ++ [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, ++ [with_noarch_pkgconfigdir=]pkg_default) ++AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) ++m4_popdef([pkg_default]) ++m4_popdef([pkg_description]) ++]) dnl PKG_NOARCH_INSTALLDIR ++ ++ ++# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, ++# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) ++# ------------------------------------------- ++# Retrieves the value of the pkg-config variable for the given module. ++AC_DEFUN([PKG_CHECK_VAR], ++[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl ++AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl ++ ++_PKG_CONFIG([$1], [variable="][$3]["], [$2]) ++AS_VAR_COPY([$1], [pkg_cv_][$1]) ++ ++AS_VAR_IF([$1], [""], [$5], [$4])dnl ++])# PKG_CHECK_VAR +-- +2.1.0 + diff --git a/package/netsnmp/S59snmpd b/package/netsnmp/S59snmpd index 4eea512291..4ff844ee3a 100755 --- a/package/netsnmp/S59snmpd +++ b/package/netsnmp/S59snmpd @@ -1,4 +1,4 @@ -#! /bin/sh -e +#! /bin/sh ### BEGIN INIT INFO # Provides: snmpd snmptrapd # Required-Start: $network $local_fs @@ -11,7 +11,6 @@ # # Author: Jochen Friedrich # -set -e export PATH=/sbin:/usr/sbin:/bin:/usr/bin @@ -38,56 +37,71 @@ if [ "$SNMPDCOMPAT" = "yes" ]; then ln -sf /var/agentx/master /var/run/agentx fi +start() { + if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then + printf "Starting SNMP daemon: " + start-stop-daemon -q -S -x /usr/sbin/snmpd -- $SNMPDOPTS + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi + + if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then + printf "Starting SNMP trap daemon: " + start-stop-daemon -q -S -x /usr/sbin/snmptrapd -- $TRAPDOPTS + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi +} + +stop() { + if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then + printf "Stopping SNMP daemon: " + start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmpd + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi + + if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then + printf "Stopping SNMP trap daemon: " + start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmptrapd + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi +} + +reload() { + if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then + printf "Reloading SNMP daemon: " + start-stop-daemon -q -K -s 1 -p /var/run/snmpd.pid -x /usr/sbin/snmpd + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi + + if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then + printf "Reloading SNMP trap daemon: " + start-stop-daemon -q -K -s 1 -p /var/run/snmptrapd.pid -x /usr/sbin/snmptrapd + [ $? = 0 ] && echo "OK" || echo "FAIL" + fi +} + case "$1" in - start) - printf "Starting network management services:" - if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then - start-stop-daemon -q -S -x /usr/sbin/snmpd -- $SNMPDOPTS - printf " snmpd" - fi - if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then - start-stop-daemon -q -S -x /usr/sbin/snmptrapd -- $TRAPDOPTS - printf " snmptrapd" - fi - echo "." - ;; - stop) - printf "Stopping network management services:" - start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmpd - printf " snmpd" - start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmptrapd - printf " snmptrapd" - echo "." - ;; - restart) - printf "Restarting network management services:" - start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmpd - start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmptrapd - # Allow the daemons time to exit completely. - sleep 2 - if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then - start-stop-daemon -q -S -x /usr/sbin/snmpd -- $SNMPDOPTS - printf " snmpd" - fi - if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then - # Allow snmpd time to start up. - sleep 1 - start-stop-daemon -q -S -x /usr/sbin/snmptrapd -- $TRAPDOPTS - printf " snmptrapd" - fi - echo "." - ;; - reload|force-reload) - printf "Reloading network management services:" - if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then - start-stop-daemon -q -K -s 1 -p /var/run/snmpd.pid -x /usr/sbin/snmpd - printf " snmpd" - fi - echo "." - ;; - *) - echo "Usage: /etc/init.d/snmpd {start|stop|restart|reload|force-reload}" - exit 1 + start) + start + ;; + + stop) + stop + ;; + + restart) + stop + # Allow the daemons time to exit completely. + sleep 2 + start + ;; + + reload|force-reload) + reload + ;; + + *) + echo "Usage: $0 {start|stop|restart|reload|force-reload}" + exit 1 esac exit 0 diff --git a/package/netsnmp/netsnmp.mk b/package/netsnmp/netsnmp.mk index 48273b51bc..0f4b7d80bc 100644 --- a/package/netsnmp/netsnmp.mk +++ b/package/netsnmp/netsnmp.mk @@ -36,6 +36,7 @@ NETSNMP_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LIB_LDCONFIG_CMD=true inst NETSNMP_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) LIB_LDCONFIG_CMD=true install NETSNMP_MAKE = $(MAKE1) NETSNMP_CONFIG_SCRIPTS = net-snmp-config +NETSNMP_AUTORECONF = YES NETSNMP_BLOAT_MIBS = BRIDGE DISMAN-EVENT DISMAN-SCHEDULE DISMAN-SCRIPT EtherLike RFC-1215 RFC1155-SMI RFC1213 SCTP SMUX @@ -45,6 +46,13 @@ else NETSNMP_CONF_OPTS += --with-endianness=little endif +ifeq ($(BR2_PACKAGE_LIBNL),y) +NETSNMP_DEPENDENCIES += host-pkgconf libnl +NETSNMP_CONF_OPTS += --with-nl +else +NETSNMP_CONF_OPTS += --without-nl +endif + # OpenSSL ifeq ($(BR2_PACKAGE_OPENSSL),y) NETSNMP_DEPENDENCIES += openssl diff --git a/package/nettle/nettle.hash b/package/nettle/nettle.hash index 6332e13a63..cd911c0d13 100644 --- a/package/nettle/nettle.hash +++ b/package/nettle/nettle.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 ea4283def236413edab5a4cf9cf32adf540c8df1b9b67641cfc2302fca849d97 nettle-3.2.tar.gz +sha256 46942627d5d0ca11720fec18d81fc38f7ef837ea4197c1f630e71ce0d470b11e nettle-3.3.tar.gz diff --git a/package/nettle/nettle.mk b/package/nettle/nettle.mk index c133839e52..31789ec28b 100644 --- a/package/nettle/nettle.mk +++ b/package/nettle/nettle.mk @@ -4,7 +4,7 @@ # ################################################################################ -NETTLE_VERSION = 3.2 +NETTLE_VERSION = 3.3 NETTLE_SITE = http://www.lysator.liu.se/~nisse/archive NETTLE_DEPENDENCIES = gmp NETTLE_INSTALL_STAGING = YES @@ -15,7 +15,7 @@ NETTLE_LICENSE_FILES = COPYING.LESSERv3 COPYINGv2 NETTLE_CONF_OPTS = --disable-openssl # ARM assembly requires v6+ ISA -ifeq ($(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5),y) +ifeq ($(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV7M),y) NETTLE_CONF_OPTS += --disable-assembler endif diff --git a/package/network-manager/0001-platform-move-link_get_user_ipv6ll_enabled-to-nm-platform-linux.patch b/package/network-manager/0001-platform-move-link_get_user_ipv6ll_enabled-to-nm-platform-linux.patch deleted file mode 100644 index 4aebaef820..0000000000 --- a/package/network-manager/0001-platform-move-link_get_user_ipv6ll_enabled-to-nm-platform-linux.patch +++ /dev/null @@ -1,87 +0,0 @@ -From: Lubomir Rintel -Date: Mon, 20 Jul 2015 11:01:04 +0200 -Subject: [PATCH] platform: move link_get_user_ipv6ll_enabled() to nm-platform-linux -Source: https://mail.gnome.org/archives/networkmanager-list/2015-July/msg00028.html - -This fixes build error kernels headers < 3.17. - -Reported-by: Petr Vorel -Signed-off-by: Lubomir Rintel -Signed-off-by: Petr Vorel ---- - src/platform/nm-linux-platform.c | 16 ++++++++++++++++ - src/platform/nm-platform.c | 11 ++--------- - src/platform/nm-platform.h | 1 + - 3 files changed, 19 insertions(+), 9 deletions(-) - -diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c -index f3a9254..b6b8e33 100644 ---- a/src/platform/nm-linux-platform.c -+++ b/src/platform/nm-linux-platform.c -@@ -2987,6 +2987,21 @@ link_set_user_ipv6ll_enabled (NMPlatform *platform, int ifindex, gboolean enable - } - - static gboolean -+link_get_user_ipv6ll_enabled (NMPlatform *platform, int ifindex) -+{ -+#if HAVE_LIBNL_INET6_ADDR_GEN_MODE -+ { -+ const NMPlatformLink *pllink; -+ -+ pllink = nm_platform_link_get (platform, ifindex); -+ if (pllink && pllink->inet6_addr_gen_mode_inv) -+ return _nm_platform_uint8_inv (pllink->inet6_addr_gen_mode_inv) == IN6_ADDR_GEN_MODE_NONE; -+ } -+#endif -+ return FALSE; -+} -+ -+static gboolean - link_supports_carrier_detect (NMPlatform *platform, int ifindex) - { - const char *name = nm_platform_link_get_name (platform, ifindex); -@@ -4968,6 +4968,7 @@ - platform_class->link_get_udev_device = link_get_udev_device; - - platform_class->link_set_user_ipv6ll_enabled = link_set_user_ipv6ll_enabled; -+ platform_class->link_get_user_ipv6ll_enabled = link_get_user_ipv6ll_enabled; - - platform_class->link_set_address = link_set_address; - platform_class->link_get_permanent_address = link_get_permanent_address; - -diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c -index 8803377..ee4b1a1 100644 ---- a/src/platform/nm-platform.c -+++ b/src/platform/nm-platform.c -@@ -965,15 +965,8 @@ - - g_return_val_if_fail (ifindex >= 0, FALSE); - --#if HAVE_LIBNL_INET6_ADDR_GEN_MODE -- { -- const NMPlatformLink *pllink; -- -- pllink = nm_platform_link_get (self, ifindex); -- if (pllink && pllink->inet6_addr_gen_mode_inv) -- return _nm_platform_uint8_inv (pllink->inet6_addr_gen_mode_inv) == IN6_ADDR_GEN_MODE_NONE; -- } --#endif -+ if (klass->link_get_user_ipv6ll_enabled) -+ return klass->link_get_user_ipv6ll_enabled (self, ifindex); - return FALSE; - } - -diff --git a/src/platform/nm-platform.h b/src/platform/nm-platform.h -index 16eb351..9ef4080 100644 ---- a/src/platform/nm-platform.h -+++ b/src/platform/nm-platform.h -@@ -446,6 +446,7 @@ - GObject *(*link_get_udev_device) (NMPlatform *self, int ifindex); - - gboolean (*link_set_user_ipv6ll_enabled) (NMPlatform *, int ifindex, gboolean enabled); -+ gboolean (*link_get_user_ipv6ll_enabled) (NMPlatform *, int ifindex); - - gboolean (*link_get_permanent_address) (NMPlatform *, - int ifindex, --- -2.4.3 diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in index 8b4607c7ce..c9dabfdd42 100644 --- a/package/network-manager/Config.in +++ b/package/network-manager/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NETWORK_MANAGER bool "networkmanager" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt depends on BR2_USE_MMU # dbus depends on BR2_PACKAGE_HAS_UDEV # Tested with 3.2, but may even work with earlier versions @@ -46,12 +47,17 @@ config BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER config BR2_PACKAGE_NETWORK_MANAGER_PPPD bool "pppd support" + depends on !BR2_TOOLCHAIN_USES_MUSL # pppd select BR2_PACKAGE_PPPD help This option enables support for PPPD daemon + +comment "pppd support needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL + endif -comment "NetworkManager needs udev /dev management and a (e)glibc toolchain w/ headers >= 3.7" +comment "NetworkManager needs udev /dev management and a glibc toolchain w/ headers >= 3.7" depends on BR2_USE_MMU depends on !BR2_PACKAGE_HAS_UDEV || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 || \ diff --git a/package/network-manager/network-manager.hash b/package/network-manager/network-manager.hash index ab601bc16b..94f3e26784 100644 --- a/package/network-manager/network-manager.hash +++ b/package/network-manager/network-manager.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.0/NetworkManager-1.0.12.sha256sum -sha256 3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e NetworkManager-1.0.12.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.4/NetworkManager-1.4.2.sha256sum +sha256 a864e347ddf6da8dabd40e0185b8c10a655d4a94b45cbaa2b3bb4b5e8360d204 NetworkManager-1.4.2.tar.xz diff --git a/package/network-manager/network-manager.mk b/package/network-manager/network-manager.mk index 12b8f3c51b..3d7a1bf018 100644 --- a/package/network-manager/network-manager.mk +++ b/package/network-manager/network-manager.mk @@ -4,8 +4,8 @@ # ################################################################################ -NETWORK_MANAGER_VERSION_MAJOR = 1.0 -NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).12 +NETWORK_MANAGER_VERSION_MAJOR = 1.4 +NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).2 NETWORK_MANAGER_SOURCE = NetworkManager-$(NETWORK_MANAGER_VERSION).tar.xz NETWORK_MANAGER_SITE = http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/$(NETWORK_MANAGER_VERSION_MAJOR) NETWORK_MANAGER_INSTALL_STAGING = YES @@ -24,7 +24,6 @@ NETWORK_MANAGER_CONF_ENV = \ NETWORK_MANAGER_CONF_OPTS = \ - --mandir=$(STAGING_DIR)/usr/man/ \ --disable-tests \ --disable-qt \ --disable-more-warnings \ diff --git a/package/newt/0001-Use-CC-instead-of-CPP-to-generate-.depend-files.patch b/package/newt/0001-Use-CC-instead-of-CPP-to-generate-.depend-files.patch deleted file mode 100644 index 853472bfcd..0000000000 --- a/package/newt/0001-Use-CC-instead-of-CPP-to-generate-.depend-files.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 65754effe16506a7a0a04069c8b6e1281811604d Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Sat, 10 Jan 2015 11:54:10 +0100 -Subject: [PATCH newt 1/2] Use $(CC) instead of $(CPP) to generate .depend - files - -Use $(CC) instead of $(CPP) to generate .depend file because '$(CPP) --M' call does not support multiple input files. This avoid the -following error: - -make[1]: Entering directory `/opt/br/output/build/newt-0.51.0' -/opt/br/output/host/usr/bin/arm-none-linux-gnueabi-cpp -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -M newt.c button.c form.c checkbox.c entry.c label.c listbox.c scrollbar.c textbox.c scale.c grid.c windows.c buttonbar.c checkboxtree.c > .depend -arm-none-linux-gnueabi-cpp: too many input files -make[1]: *** [depend] Error 1 - -Signed-off-by: Samuel Martin -Signed-off-by: Yegor Yefremov -Signed-off-by: Thomas Petazzoni ---- - Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.in b/Makefile.in -index 7989203..17853e0 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -121,7 +121,7 @@ clean: - $(SHAREDDIR)/*.o *.$(SOEXT)* - - depend: -- $(CPP) $(CFLAGS) $(CPPFLAGS) -M $(SOURCES) > .depend -+ $(CC) $(CFLAGS) $(CPPFLAGS) -M $(SOURCES) > .depend - - $(SHAREDDIR): - mkdir -p $(SHAREDDIR) --- -2.1.0 - diff --git a/package/newt/0002-Remove-bogus-I-usr-include-slang-from-CPPFLAGS.patch b/package/newt/0002-Remove-bogus-I-usr-include-slang-from-CPPFLAGS.patch deleted file mode 100644 index eb445dd8f9..0000000000 --- a/package/newt/0002-Remove-bogus-I-usr-include-slang-from-CPPFLAGS.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 28145b46649165b94666ee585d064b41306e10fd Mon Sep 17 00:00:00 2001 -From: Alex Suykov -Date: Sat, 10 Jan 2015 11:55:32 +0100 -Subject: [PATCH newt 2/2] Remove bogus -I/usr/include/slang from CPPFLAGS - -Hardcoding -I/usr/include/slang in CPPFLAGS is bogus for -cross-compilation. With recent versions of slang, the headers are -installed in ${sysroot}/usr/include directly, so there is no need for -an additional flag. And if one was needed, it should be added by the -configure script, after detecting the right header location. - -Signed-off-by: Alex Suykov -Signed-off-by: Thomas Petazzoni ---- - Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.in b/Makefile.in -index 17853e0..d32d784 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -5,7 +5,7 @@ CC = @CC@ - CPP = @CPP@ - CFLAGS = @CFLAGS@ - LDFLAGS = @LDFLAGS@ --CPPFLAGS = -D_GNU_SOURCE -I/usr/include/slang @CPPFLAGS@ -+CPPFLAGS = -D_GNU_SOURCE @CPPFLAGS@ - GNU_LD = @GNU_LD@ - - VERSION = @VERSION@ --- -2.1.0 - diff --git a/package/newt/newt.hash b/package/newt/newt.hash index ca64f41f62..fe5870b062 100644 --- a/package/newt/newt.hash +++ b/package/newt/newt.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 771b0e634ede56ae6a6acd910728bb5832ac13ddb0d1d27919d2498dab70c91e newt-0.52.18.tar.gz +sha256 08c0db56c21996af6a7cbab99491b774c6c09cef91cd9b03903c84634bff2e80 newt-0.52.19.tar.gz diff --git a/package/newt/newt.mk b/package/newt/newt.mk index 4c5d2418bb..2b8d337617 100644 --- a/package/newt/newt.mk +++ b/package/newt/newt.mk @@ -4,8 +4,8 @@ # ################################################################################ -NEWT_VERSION = 0.52.18 -NEWT_SITE = https://fedorahosted.org/releases/n/e/newt +NEWT_VERSION = 0.52.19 +NEWT_SITE = https://pagure.io/releases/newt NEWT_INSTALL_STAGING = YES NEWT_DEPENDENCIES = popt slang \ $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) diff --git a/package/nfacct/0001-uclinux.patch b/package/nfacct/0001-uclinux.patch deleted file mode 100644 index 295a370b46..0000000000 --- a/package/nfacct/0001-uclinux.patch +++ /dev/null @@ -1,26 +0,0 @@ -From da1a0c186232d1bca9c723bd47d11a6e3807ae29 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 10 Sep 2013 16:16:48 -0300 -Subject: [PATCH] configure: uclinux is also linux - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 9679112..9a34bdc 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -15,7 +15,7 @@ AC_PROG_INSTALL - AC_PROG_LN_S - - case "$host" in --*-*-linux*) ;; -+*-*-linux* | *-*-uclinux*) ;; - *) AC_MSG_ERROR([Linux only, dude!]);; - esac - --- -1.8.1.5 - diff --git a/package/nfacct/nfacct.hash b/package/nfacct/nfacct.hash index 48561abcd7..737354ef3f 100644 --- a/package/nfacct/nfacct.hash +++ b/package/nfacct/nfacct.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/nfacct/nfacct-1.0.1.tar.bz2.{md5sum,sha1sum} -md5 992e863409d144350dbc8f0554a0f478 nfacct-1.0.1.tar.bz2 -sha1 57c5fa68a172b30b6c5ea6cb36be685e207312ef nfacct-1.0.1.tar.bz2 +# From ftp://ftp.netfilter.org/pub/nfacct/nfacct-1.0.2.tar.bz2.{md5sum,sha1sum} +md5 94faafdaaed85ca9220c5692be8a408e nfacct-1.0.2.tar.bz2 +sha1 17d6576778227ea93c62600d9b18ff4932963c6a nfacct-1.0.2.tar.bz2 diff --git a/package/nfacct/nfacct.mk b/package/nfacct/nfacct.mk index 7e42160957..a4e20452bf 100644 --- a/package/nfacct/nfacct.mk +++ b/package/nfacct/nfacct.mk @@ -4,12 +4,11 @@ # ################################################################################ -NFACCT_VERSION = 1.0.1 +NFACCT_VERSION = 1.0.2 NFACCT_SOURCE = nfacct-$(NFACCT_VERSION).tar.bz2 NFACCT_SITE = http://www.netfilter.org/projects/nfacct/files NFACCT_DEPENDENCIES = host-pkgconf \ libnetfilter_acct -NFACCT_AUTORECONF = YES NFACCT_LICENSE = GPLv2 NFACCT_LICENSE_FILES = COPYING diff --git a/package/nfs-utils/Config.in b/package/nfs-utils/Config.in index 1273092775..bfaddd1516 100644 --- a/package/nfs-utils/Config.in +++ b/package/nfs-utils/Config.in @@ -15,8 +15,6 @@ config BR2_PACKAGE_NFS_UTILS if BR2_PACKAGE_NFS_UTILS -menu "NFS utilities selection" - config BR2_PACKAGE_NFS_UTILS_RPCDEBUG bool "rpcdebug" help @@ -32,6 +30,4 @@ config BR2_PACKAGE_NFS_UTILS_RPC_RQUOTAD help NFS remote quota server -endmenu - endif diff --git a/package/nfs-utils/S60nfs b/package/nfs-utils/S60nfs index 5639b8f7e2..893b1e49a6 100755 --- a/package/nfs-utils/S60nfs +++ b/package/nfs-utils/S60nfs @@ -17,7 +17,7 @@ CFG_FILE=/etc/default/nfsd NR_THREADS=2 if [ -f "${CFG_FILE}" ]; then - . "${CFG_FILE}" + . "${CFG_FILE}" fi @@ -25,64 +25,64 @@ start() { # Start daemons. printf "Starting NFS statd: " rpc.statd + [ $? = 0 ] && echo "OK" || echo "FAIL" touch /var/lock/subsys/nfslock - echo "done" printf "Starting NFS services: " /usr/sbin/exportfs -r - echo "done" + [ $? = 0 ] && echo "OK" || echo "FAIL" printf "Starting NFS daemon: " rpc.nfsd ${NR_THREADS} - echo "done" + [ $? = 0 ] && echo "OK" || echo "FAIL" printf "Starting NFS mountd: " rpc.mountd - echo "done" + [ $? = 0 ] && echo "OK" || echo "FAIL" touch /var/lock/subsys/nfs } stop() { # Stop daemons. printf "Shutting down NFS mountd: " - killall -q rpc.mountd - echo "done" + killall -q rpc.mountd 2>/dev/null + [ $? = 0 ] && echo "OK" || echo "FAIL" printf "Shutting down NFS daemon: " - kill -9 `pidof nfsd` 2>/dev/null - echo "done" + killall -q nfsd 2>/dev/null + [ $? = 0 ] && echo "OK" || echo "FAIL" printf "Shutting down NFS services: " /usr/sbin/exportfs -au - rm -f /var/lock/subsys/nfs - killall -q rpc.statd - echo "done" + [ $? = 0 ] && echo "OK" || echo "FAIL" printf "Stopping NFS statd: " - killall -q rpc.statd - echo "done" + killall -q rpc.statd 2>/dev/null + [ $? = 0 ] && echo "OK" || echo "FAIL" + rm -f /var/lock/subsys/nfs + rm -f /var/run/rpc.statd.pid rm -f /var/lock/subsys/nfslock } # See how we were called. case "$1" in - start) - start - ;; - stop) - stop - ;; - restart) - stop - start - ;; - reload) - /usr/sbin/exportfs -r - touch /var/lock/subsys/nfs - ;; - *) - echo "Usage: nfs {start|stop|reload}" - exit 1 + start) + start + ;; + stop) + stop + ;; + restart) + stop + start + ;; + reload) + /usr/sbin/exportfs -r + touch /var/lock/subsys/nfs + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 esac exit 0 diff --git a/package/nftables/Config.in b/package/nftables/Config.in index 9b20b90557..d0a1b89277 100644 --- a/package/nftables/Config.in +++ b/package/nftables/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_NFTABLES bool "nftables" depends on BR2_USE_WCHAR - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 select BR2_PACKAGE_GMP select BR2_PACKAGE_LIBMNL select BR2_PACKAGE_LIBNFTNL @@ -15,5 +15,5 @@ config BR2_PACKAGE_NFTABLES http://www.netfilter.org/projects/nftables/index.html -comment "nftables needs a toolchain w/ wchar, headers >= 3.4" - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 +comment "nftables needs a toolchain w/ wchar, headers >= 3.12" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 diff --git a/package/nftables/nftables.hash b/package/nftables/nftables.hash index 04ecf7d7b6..a743476ae9 100644 --- a/package/nftables/nftables.hash +++ b/package/nftables/nftables.hash @@ -1,2 +1,2 @@ -# From http://www.netfilter.org/projects/nftables/downloads.html#nftables-0.5 -sha1 34cfe1daa33d7fd7087dd63199f64854dfb54064 nftables-0.5.tar.bz2 +# From http://www.netfilter.org/projects/nftables/downloads.html#nftables-0.7 +sha1 c003fa8b63b1b44c52de345a4d84487d81865a98 nftables-0.7.tar.bz2 diff --git a/package/nftables/nftables.mk b/package/nftables/nftables.mk index ccdbcd4b15..64d6be72ce 100644 --- a/package/nftables/nftables.mk +++ b/package/nftables/nftables.mk @@ -4,7 +4,7 @@ # ################################################################################ -NFTABLES_VERSION = 0.5 +NFTABLES_VERSION = 0.7 NFTABLES_SOURCE = nftables-$(NFTABLES_VERSION).tar.bz2 NFTABLES_SITE = http://www.netfilter.org/projects/nftables/files NFTABLES_DEPENDENCIES = gmp libmnl libnftnl host-bison host-flex \ @@ -16,7 +16,7 @@ ifeq ($(BR2_PACKAGE_READLINE),y) NFTABLES_DEPENDENCIES += readline NFTABLES_LIBS += -lncurses else -NFTABLES_CONF_OPTS = --without-cli +NFTABLES_CONF_OPTS += --without-cli endif ifeq ($(BR2_STATIC_LIBS)$(BR2_PACKAGE_LIBNFTNL_JSON),yy) diff --git a/package/nginx-dav-ext/Config.in b/package/nginx-dav-ext/Config.in new file mode 100644 index 0000000000..1e60321fe3 --- /dev/null +++ b/package/nginx-dav-ext/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_NGINX_DAV_EXT + bool "nginx-dav-ext" + depends on BR2_PACKAGE_NGINX_HTTP_DAV_MODULE + select BR2_PACKAGE_EXPAT + help + NGINX WebDAV missing commands support (PROPFIND & OPTIONS). + + https://github.com/arut/nginx-dav-ext-module diff --git a/package/nginx-dav-ext/nginx-dav-ext.hash b/package/nginx-dav-ext/nginx-dav-ext.hash new file mode 100644 index 0000000000..ea7eb8632e --- /dev/null +++ b/package/nginx-dav-ext/nginx-dav-ext.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 d428a0236c933779cb40ac8c91afb19d5c25a376dc3caab825bfd543e1ee530d nginx-dav-ext-v0.0.3.tar.gz diff --git a/package/nginx-dav-ext/nginx-dav-ext.mk b/package/nginx-dav-ext/nginx-dav-ext.mk new file mode 100644 index 0000000000..61e5bd0f57 --- /dev/null +++ b/package/nginx-dav-ext/nginx-dav-ext.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# nginx-dav-ext +# +################################################################################ + +NGINX_DAV_EXT_VERSION = v0.0.3 +NGINX_DAV_EXT_SITE = $(call github,arut,nginx-dav-ext-module,$(NGINX_DAV_EXT_VERSION)) +NGINX_DAV_EXT_LICENSE = BSD-2c +NGINX_DAV_EXT_LICENSE_FILES = ngx_http_dav_ext_module.c +NGINX_DAV_EXT_DEPENDENCIES = expat + +$(eval $(generic-package)) diff --git a/package/nginx-naxsi/Config.in b/package/nginx-naxsi/Config.in new file mode 100644 index 0000000000..fc2ba9bfe3 --- /dev/null +++ b/package/nginx-naxsi/Config.in @@ -0,0 +1,29 @@ +config BR2_PACKAGE_NGINX_NAXSI + bool "nginx-naxsi" + depends on BR2_PACKAGE_NGINX_HTTP + # uses pcre, so nginx needs to be built with pcre support + select BR2_PACKAGE_PCRE + help + NAXSI means Nginx Anti XSS & SQL Injection. + + Technically, it is a third party nginx module, available as + a package for many UNIX-like platforms. This module, by + default, reads a small subset of simple (and readable) rules + containing 99% of known patterns involved in website + vulnerabilities. For example, <, | or drop are not supposed + to be part of a URI. + + Being very simple, those patterns may match legitimate + queries, it is the Naxsi's administrator duty to add + specific rules that will whitelist legitimate + behaviours. The administrator can either add whitelists + manually by analyzing nginx's error log, or (recommended) + start the project with an intensive auto-learning phase that + will automatically generate whitelisting rules regarding a + website's behaviour. + + In short, Naxsi behaves like a DROP-by-default firewall, the + only task is to add required ACCEPT rules for the target + website to work properly. + + https://github.com/nbs-system/naxsi diff --git a/package/nginx-naxsi/nginx-naxsi.hash b/package/nginx-naxsi/nginx-naxsi.hash new file mode 100644 index 0000000000..967f78800e --- /dev/null +++ b/package/nginx-naxsi/nginx-naxsi.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 256378564e36b8f222adb8fbe746529e73413c6cbe2b0e5574f41dfd62d92577 nginx-naxsi-0.55.2.tar.gz diff --git a/package/nginx-naxsi/nginx-naxsi.mk b/package/nginx-naxsi/nginx-naxsi.mk new file mode 100644 index 0000000000..fb5e00a5ff --- /dev/null +++ b/package/nginx-naxsi/nginx-naxsi.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# nginx-naxsi +# +################################################################################ + +NGINX_NAXSI_VERSION = 0.55.2 +NGINX_NAXSI_SITE = $(call github,nbs-system,naxsi,$(NGINX_NAXSI_VERSION)) +NGINX_NAXSI_LICENSE = GPLv2+ with OpenSSL exception +NGINX_NAXSI_LICENSE_FILES = naxsi_src/naxsi_json.c + +$(eval $(generic-package)) diff --git a/package/nginx-upload/Config.in b/package/nginx-upload/Config.in new file mode 100644 index 0000000000..6bc1c3dbdd --- /dev/null +++ b/package/nginx-upload/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_NGINX_UPLOAD + bool "nginx-upload" + depends on BR2_PACKAGE_NGINX_HTTP + select BR2_PACKAGE_OPENSSL + help + A module for nginx web server for handling file uploads + using multipart/form-data encoding (RFC 1867). + + https://github.com/vkholodkov/nginx-upload-module diff --git a/package/nginx-upload/nginx-upload.hash b/package/nginx-upload/nginx-upload.hash new file mode 100644 index 0000000000..4fc4347361 --- /dev/null +++ b/package/nginx-upload/nginx-upload.hash @@ -0,0 +1,2 @@ +#Locally Computed: +sha256 8cd1d9d968ffba807de2e546ea9cad5e1ae294ec60b4927b2d60a98bdb4a1144 nginx-upload-aba1e3f34c754551f4f49e572bc86863d535609d.tar.gz diff --git a/package/nginx-upload/nginx-upload.mk b/package/nginx-upload/nginx-upload.mk new file mode 100644 index 0000000000..6f94d35894 --- /dev/null +++ b/package/nginx-upload/nginx-upload.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# nginx-upload +# +################################################################################ + +NGINX_UPLOAD_VERSION = aba1e3f34c754551f4f49e572bc86863d535609d +NGINX_UPLOAD_SITE = $(call github,vkholodkov,nginx-upload-module,$(NGINX_UPLOAD_VERSION)) +NGINX_UPLOAD_LICENSE = BSD-3c +NGINX_UPLOAD_LICENSE_FILES = LICENCE +NGINX_UPLOAD_DEPENDENCIES = openssl + +$(eval $(generic-package)) diff --git a/package/nginx/nginx.hash b/package/nginx/nginx.hash index 394f4d2c80..498d272dac 100644 --- a/package/nginx/nginx.hash +++ b/package/nginx/nginx.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 8ed647c3dd65bc4ced03b0e0f6bf9e633eff6b01bac772bcf97077d58bc2be4d nginx-1.10.0.tar.gz +sha256 75020f1364cac459cb733c4e1caed2d00376e40ea05588fb8793076a4c69dd90 nginx-1.10.3.tar.gz diff --git a/package/nginx/nginx.mk b/package/nginx/nginx.mk index fecef7b8f7..f9b2cd1d3c 100644 --- a/package/nginx/nginx.mk +++ b/package/nginx/nginx.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGINX_VERSION = 1.10.0 +NGINX_VERSION = 1.10.3 NGINX_SITE = http://nginx.org/download NGINX_LICENSE = BSD-2c NGINX_LICENSE_FILES = LICENSE @@ -234,6 +234,22 @@ NGINX_CONF_OPTS += \ endif # BR2_PACKAGE_NGINX_STREAM +# external modules +ifeq ($(BR2_PACKAGE_NGINX_UPLOAD),y) +NGINX_CONF_OPTS += $(addprefix --add-module=,$(NGINX_UPLOAD_DIR)) +NGINX_DEPENDENCIES += nginx-upload +endif + +ifeq ($(BR2_PACKAGE_NGINX_DAV_EXT),y) +NGINX_CONF_OPTS += --add-module=$(NGINX_DAV_EXT_DIR) +NGINX_DEPENDENCIES += nginx-dav-ext +endif + +ifeq ($(BR2_PACKAGE_NGINX_NAXSI),y) +NGINX_DEPENDENCIES += nginx-naxsi +NGINX_CONF_OPTS += --add-module=$(NGINX_NAXSI_DIR)/naxsi_src +endif + # Debug logging NGINX_CONF_OPTS += $(if $(BR2_PACKAGE_NGINX_DEBUG),--with-debug) diff --git a/package/ngrep/ngrep.mk b/package/ngrep/ngrep.mk index c4ad528292..8daaf2d8ac 100644 --- a/package/ngrep/ngrep.mk +++ b/package/ngrep/ngrep.mk @@ -21,7 +21,8 @@ NGREP_CONF_OPTS = \ --with-pcap-includes=$(STAGING_DIR)/usr/include/pcap \ --enable-pcre \ --with-pcre=$(STAGING_DIR)/usr \ - --disable-dropprivs + --disable-dropprivs \ + --disable-pcap-restart NGREP_DEPENDENCIES = libpcap pcre diff --git a/package/ninja/ninja.hash b/package/ninja/ninja.hash new file mode 100644 index 0000000000..47ec8229b9 --- /dev/null +++ b/package/ninja/ninja.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 51581de53cf4705b89eb6b14a85baa73288ad08bff256e7d30d529155813be19 ninja-v1.7.1.tar.gz diff --git a/package/ninja/ninja.mk b/package/ninja/ninja.mk new file mode 100644 index 0000000000..3cfe4faf2b --- /dev/null +++ b/package/ninja/ninja.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# ninja +# +################################################################################ + +NINJA_VERSION = v1.7.1 +NINJA_SITE = $(call github,ninja-build,ninja,$(NINJA_VERSION)) +NINJA_LICENSE = Apache-2.0 +NINJA_LICENSE_FILES = COPYING + +HOST_NINJA_DEPENDENCIES = $(if $(BR2_PACKAGE_PYTHON3),host-python3,host-python) + +define HOST_NINJA_BUILD_CMDS + (cd $(@D); ./configure.py --bootstrap) +endef + +define HOST_NINJA_INSTALL_CMDS + $(INSTALL) -m 0755 -D $(@D)/ninja $(HOST_DIR)/usr/bin/ninja +endef + +$(eval $(host-generic-package)) diff --git a/package/nmap/nmap.hash b/package/nmap/nmap.hash index 448a19b37d..239ca13816 100644 --- a/package/nmap/nmap.hash +++ b/package/nmap/nmap.hash @@ -1,2 +1,2 @@ -# From https://nmap.org/dist/sigs/nmap-7.12.tar.bz2.digest.txt -sha256 63df082a87c95a189865d37304357405160fc6333addcf5b84204c95e0539b04 nmap-7.12.tar.bz2 +# From https://nmap.org/dist/sigs/nmap-7.40.tar.bz2.digest.txt +sha256 9e14665fffd054554d129d62c13ad95a7b5c7a046daa2290501909e65f4d3188 nmap-7.40.tar.bz2 diff --git a/package/nmap/nmap.mk b/package/nmap/nmap.mk index 46c6232744..6e178b1f1f 100644 --- a/package/nmap/nmap.mk +++ b/package/nmap/nmap.mk @@ -4,7 +4,7 @@ # ################################################################################ -NMAP_VERSION = 7.12 +NMAP_VERSION = 7.40 NMAP_SITE = http://nmap.org/dist NMAP_SOURCE = nmap-$(NMAP_VERSION).tar.bz2 NMAP_DEPENDENCIES = libpcap pcre diff --git a/package/nmon/Config.in b/package/nmon/Config.in new file mode 100644 index 0000000000..574ced3bdf --- /dev/null +++ b/package/nmon/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_NMON + bool "nmon" + depends on BR2_TOOLCHAIN_USES_GLIBC # fstab.h + select BR2_PACKAGE_NCURSES + help + Nmon is short for Nigel's performance Monitor for Linux + + http://nmon.sourceforge.net/pmwiki.php + +comment "nmon needs a glibc toolchain" + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/nmon/nmon.hash b/package/nmon/nmon.hash new file mode 100644 index 0000000000..f3a073ffd6 --- /dev/null +++ b/package/nmon/nmon.hash @@ -0,0 +1,5 @@ +# From https://sourceforge.net/projects/nmon/files/ +md5 a72e3eb737c230cd309329330a5545bd lmon16f.c +sha1 b69fdddf86ffe674e0133426fa09935ed678ab7d lmon16f.c +# Locally computed +sha256 280a371e17488f8a2c5e0c64273155789be6fa5b937ab5c465488e591bdc5cd9 lmon16f.c diff --git a/package/nmon/nmon.mk b/package/nmon/nmon.mk new file mode 100644 index 0000000000..9b9f889078 --- /dev/null +++ b/package/nmon/nmon.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# nmon +# +################################################################################ + +NMON_VERSION = 16f +NMON_SITE = http://sourceforge.net/projects/nmon/files +NMON_SOURCE = lmon$(NMON_VERSION).c +NMON_LICENSE = GPLv3+ +NMON_LICENSE_FILES = $(NMON_SOURCE) +NMON_DEPENDENCIES = ncurses +NMON_CFLAGS = $(TARGET_CFLAGS) -D JFS -D GETUSER -D LARGEMEM -D DEBIAN + +define NMON_EXTRACT_CMDS + cp $(DL_DIR)/$(NMON_SOURCE) $(@D) +endef + +define NMON_BUILD_CMDS + $(TARGET_CC) $(NMON_CFLAGS) $(TARGET_LDFLAGS) -o $(@D)/nmon \ + $(@D)/$(NMON_SOURCE) -lncurses -lm +endef + +define NMON_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/nmon $(TARGET_DIR)/usr/bin/ +endef + +$(eval $(generic-package)) diff --git a/package/nodejs/0.10.45/0001-remove-python-bz2-dependency.patch b/package/nodejs/0.10.48/0001-remove-python-bz2-dependency.patch similarity index 100% rename from package/nodejs/0.10.45/0001-remove-python-bz2-dependency.patch rename to package/nodejs/0.10.48/0001-remove-python-bz2-dependency.patch diff --git a/package/nodejs/0.10.45/0002-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/0.10.48/0002-gyp-force-link-command-to-use-CXX.patch similarity index 100% rename from package/nodejs/0.10.45/0002-gyp-force-link-command-to-use-CXX.patch rename to package/nodejs/0.10.48/0002-gyp-force-link-command-to-use-CXX.patch diff --git a/package/nodejs/0.10.45/0003-fix-musl-USE-MISC-build-issue.patch b/package/nodejs/0.10.48/0003-fix-musl-USE-MISC-build-issue.patch similarity index 100% rename from package/nodejs/0.10.45/0003-fix-musl-USE-MISC-build-issue.patch rename to package/nodejs/0.10.48/0003-fix-musl-USE-MISC-build-issue.patch diff --git a/package/nodejs/0.10.45/0004-Fix-support-for-uClibc-ng.patch b/package/nodejs/0.10.48/0004-Fix-support-for-uClibc-ng.patch similarity index 100% rename from package/nodejs/0.10.45/0004-Fix-support-for-uClibc-ng.patch rename to package/nodejs/0.10.48/0004-Fix-support-for-uClibc-ng.patch diff --git a/package/nodejs/6.1.0/0001-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/6.9.4/0001-gyp-force-link-command-to-use-CXX.patch similarity index 100% rename from package/nodejs/6.1.0/0001-gyp-force-link-command-to-use-CXX.patch rename to package/nodejs/6.9.4/0001-gyp-force-link-command-to-use-CXX.patch diff --git a/package/nodejs/6.9.4/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch b/package/nodejs/6.9.4/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch new file mode 100644 index 0000000000..c07cbf8c65 --- /dev/null +++ b/package/nodejs/6.9.4/0002-inspector-don-t-build-when-ssl-support-is-disabled.patch @@ -0,0 +1,35 @@ +From 7fa541f6c0a31e3ddcab6ea85040b531bbaa4651 Mon Sep 17 00:00:00 2001 +From: Martin Bark +Date: Tue, 12 Jul 2016 19:03:28 +0100 +Subject: [PATCH] inspector: don't build when ssl support is disabled + +Signed-off-by: Martin Bark +--- + node.gyp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/node.gyp b/node.gyp +index 8a8bd00..fdccd60 100644 +--- a/node.gyp ++++ b/node.gyp +@@ -302,7 +302,7 @@ + 'deps/v8/src/third_party/vtune/v8vtune.gyp:v8_vtune' + ], + }], +- [ 'v8_inspector=="true"', { ++ [ 'v8_inspector=="true" and node_use_openssl =="true"', { + 'defines': [ + 'HAVE_INSPECTOR=1', + 'V8_INSPECTOR_USE_STL=1', +@@ -828,7 +828,7 @@ + ], + + 'conditions': [ +- ['v8_inspector=="true"', { ++ ['v8_inspector=="true" and node_use_openssl =="true"', { + 'sources': [ + 'src/inspector_socket.cc', + 'test/cctest/test_inspector_socket.cc' +-- +2.7.4 + diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in index 70dacc800c..b8c45f5dcd 100644 --- a/package/nodejs/Config.in +++ b/package/nodejs/Config.in @@ -1,6 +1,6 @@ comment "nodejs needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.8, wchar" depends on BR2_USE_MMU - depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel + depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel depends on !BR2_MIPS_SOFT_FLOAT depends on !BR2_ARM_CPU_ARMV4 depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \ @@ -10,7 +10,7 @@ config BR2_PACKAGE_NODEJS bool "nodejs" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel + depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_mipsel depends on !BR2_MIPS_SOFT_FLOAT # ARM needs BLX, so v5t+ depends on !BR2_ARM_CPU_ARMV4 @@ -43,10 +43,8 @@ config BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS config BR2_PACKAGE_NODEJS_VERSION_STRING string - default "6.1.0" if BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS - default "0.10.45" - -menu "Module Selection" + default "6.9.4" if BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS + default "0.10.48" config BR2_PACKAGE_NODEJS_NPM bool "NPM for the target" @@ -102,6 +100,4 @@ config BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS 'libcurl' here, to ensure that buildroot builds the libcurl package, and does so before building your node modules. -endmenu - endif diff --git a/package/nodejs/nodejs.hash b/package/nodejs/nodejs.hash index f417df2075..8c8c5a3c23 100644 --- a/package/nodejs/nodejs.hash +++ b/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From upstream URL: http://nodejs.org/dist/v0.10.45/SHASUMS256.txt -sha256 a71070ea7aece9c94450b45102f2d1be42f0add168dd9c9701e9032d363bd4fa node-v0.10.45.tar.xz +# From upstream URL: http://nodejs.org/dist/v0.10.48/SHASUMS256.txt +sha256 365a93d9acc076a0d93f087d269f376abeebccad599a9dab72f2f6ed96c8ae6e node-v0.10.48.tar.xz -# From upstream URL: http://nodejs.org/dist/v6.1.0/SHASUMS256.txt -sha256 c7940301917232527490a166df78f9d3d58e70e10fd502f73889d936763cfe84 node-v6.1.0.tar.xz +# From upstream URL: http://nodejs.org/dist/v6.9.4/SHASUMS256.txt +sha256 c51d7c61db40455d57428abcadc7eb0f0a08a8878cb1d8ea3c1e211c54532c35 node-v6.9.4.tar.xz diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk index b0661ed986..042cc3fb07 100644 --- a/package/nodejs/nodejs.mk +++ b/package/nodejs/nodejs.mk @@ -13,8 +13,32 @@ HOST_NODEJS_DEPENDENCIES = host-python host-zlib NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components) NODEJS_LICENSE_FILES = LICENSE +NODEJS_CONF_OPTS = \ + --without-snapshot \ + --shared-zlib \ + --without-dtrace \ + --without-etw \ + --dest-os=linux + ifeq ($(BR2_PACKAGE_OPENSSL),y) NODEJS_DEPENDENCIES += openssl +NODEJS_CONF_OPTS += --shared-openssl +else +NODEJS_CONF_OPTS += --without-ssl +endif + +# 0.10.x does not have icu support +ifeq ($(findstring 0.10.,$(NODEJS_VERSION)),) +ifeq ($(BR2_PACKAGE_ICU),y) +NODEJS_DEPENDENCIES += icu +NODEJS_CONF_OPTS += --with-intl=system-icu +else +NODEJS_CONF_OPTS += --with-intl=none +endif +endif + +ifneq ($(BR2_PACKAGE_NODEJS_NPM),y) +NODEJS_CONF_OPTS += --without-npm endif # nodejs build system is based on python, but only support python-2.6 or @@ -39,6 +63,7 @@ define HOST_NODEJS_CONFIGURE_CMDS --without-dtrace \ --without-etw \ --shared-zlib \ + $(if $(BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS),--with-intl=none) \ ) endef @@ -66,18 +91,20 @@ else ifeq ($(BR2_mipsel),y) NODEJS_CPU = mipsel else ifeq ($(BR2_arm),y) NODEJS_CPU = arm +else ifeq ($(BR2_aarch64),y) +NODEJS_CPU = arm64 # V8 needs to know what floating point ABI the target is using. NODEJS_ARM_FP = $(call qstrip,$(BR2_GCC_TARGET_FLOAT_ABI)) endif # MIPS architecture specific options ifeq ($(BR2_mips)$(BR2_mipsel),y) -ifeq ($(BR2_mips_32r6),y) +ifeq ($(BR2_MIPS_CPU_MIPS32R6),y) NODEJS_MIPS_ARCH_VARIANT = r6 NODEJS_MIPS_FPU_MODE = fp64 -else ifeq ($(BR2_mips_32r2),y) +else ifeq ($(BR2_MIPS_CPU_MIPS32R2),y) NODEJS_MIPS_ARCH_VARIANT = r2 -else ifeq ($(BR2_mips_32),y) +else ifeq ($(BR2_MIPS_CPU_MIPS32),y) NODEJS_MIPS_ARCH_VARIANT = r1 endif endif @@ -93,17 +120,11 @@ define NODEJS_CONFIGURE_CMDS PYTHON=$(HOST_DIR)/usr/bin/python2 \ $(HOST_DIR)/usr/bin/python2 ./configure \ --prefix=/usr \ - --without-snapshot \ - --shared-zlib \ - $(if $(BR2_PACKAGE_OPENSSL),--shared-openssl,--without-ssl) \ - $(if $(BR2_PACKAGE_NODEJS_NPM),,--without-npm) \ - --without-dtrace \ - --without-etw \ --dest-cpu=$(NODEJS_CPU) \ $(if $(NODEJS_ARM_FP),--with-arm-float-abi=$(NODEJS_ARM_FP)) \ $(if $(NODEJS_MIPS_ARCH_VARIANT),--with-mips-arch-variant=$(NODEJS_MIPS_ARCH_VARIANT)) \ $(if $(NODEJS_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_MIPS_FPU_MODE)) \ - --dest-os=linux \ + $(NODEJS_CONF_OPTS) \ ) endef diff --git a/package/nodm/Config.in b/package/nodm/Config.in new file mode 100644 index 0000000000..97ce8c39c8 --- /dev/null +++ b/package/nodm/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_NODM + bool "nodm" + depends on BR2_PACKAGE_XORG7 + depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam + depends on !BR2_STATIC_LIBS # linux-pam + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on !BR2_TOOLCHAIN_USES_UCLIBC # needs wordexp.h + depends on BR2_USE_MMU # linux-pam + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_LINUX_PAM + help + nodm is a minimal display manager that simply logs in + as a given user and starts an X session, without asking + for username or password. + + For those cases where automatic login is needed (and + does not imply a security issue), nodm is simple to setup, + lightweight, and it should do exactly the right thing. + + https://github.com/spanezz/nodm/ + +comment "nodm needs a glibc toolchain w/ wchar, locale, dynamic library" + depends on BR2_PACKAGE_XORG7 + depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL \ + || BR2_TOOLCHAIN_USES_UCLIBC diff --git a/package/nodm/S90nodm b/package/nodm/S90nodm new file mode 100755 index 0000000000..a966e839f5 --- /dev/null +++ b/package/nodm/S90nodm @@ -0,0 +1,49 @@ +#!/bin/sh +# +# Starts nodm +# + +NODM_FIRST_VT=7 +NODM_XSESSION=/etc/X11/Xsession +NODM_OPTIONS= +NODM_X_OPTIONS="-nolisten tcp" +NODM_USER=root +NODM_MIN_SESSION_TIME=60 +NODM_X_TIMEOUT=300 + +[ -r /etc/default/nodm ] && . /etc/default/nodm + +export NODM_XSESSION NODM_X_OPTIONS NODM_USER NODM_MIN_SESSION_TIME NODM_FIRST_VT NODM_X_TIMEOUT + +start() { + printf "Starting nodm: " + start-stop-daemon -S -q -p /var/run/nodm.pid --exec /usr/sbin/nodm -b -m -S -- ${NODM_OPTIONS} + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +stop() { + printf "Stopping nodm: " + start-stop-daemon -K -q -p /var/run/nodm.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} +restart() { + stop + sleep 1 + 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/nodm/nodm.hash b/package/nodm/nodm.hash new file mode 100644 index 0000000000..e11e87563e --- /dev/null +++ b/package/nodm/nodm.hash @@ -0,0 +1,2 @@ +# locally calculated +sha256 840939d27d3d9b02ad09e1cffce24729bcdeee6cea6b3f0037d8ae76b49feecd nodm-0.12-1.tar.gz diff --git a/package/nodm/nodm.mk b/package/nodm/nodm.mk new file mode 100644 index 0000000000..da6bc8503c --- /dev/null +++ b/package/nodm/nodm.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# nodm +# +################################################################################ + +NODM_VERSION = 0.12-1 +NODM_SITE = $(call github,spanezz,nodm,debian/$(NODM_VERSION)) +NODM_LICENSE = GPLv2+ +NODM_LICENSE_FILES = COPYING +NODM_AUTORECONF = YES + +NODM_DEPENDENCIES = xlib_libX11 linux-pam + +# help2man doesn't work when cross compiling +define NODM_DISABLE_HELP2MAN + $(SED) 's/help2man/true/' $(@D)/Makefile.am +endef + +NODM_POST_PATCH_HOOKS += NODM_DISABLE_HELP2MAN + +define NODM_INSTALL_PAM + $(INSTALL) -D -m 0644 package/nodm/nodm.pam \ + $(TARGET_DIR)/etc/pam.d/nodm +endef + +NODM_POST_INSTALL_TARGET_HOOKS += NODM_INSTALL_PAM + +define NODM_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/nodm/S90nodm \ + $(TARGET_DIR)/etc/init.d/S90nodm +endef + +$(eval $(autotools-package)) diff --git a/package/nodm/nodm.pam b/package/nodm/nodm.pam new file mode 100644 index 0000000000..f2cf43217a --- /dev/null +++ b/package/nodm/nodm.pam @@ -0,0 +1,14 @@ +# Log service and allow promiscuously +# +auth required pam_warn.so +auth required pam_unix.so + +account required pam_warn.so +account required pam_permit.so + +password required pam_warn.so +password required pam_permit.so + +session required pam_warn.so +session required pam_permit.so +session required pam_env.so diff --git a/package/norm/norm.mk b/package/norm/norm.mk index e1b3a5fcc2..8af76f8345 100644 --- a/package/norm/norm.mk +++ b/package/norm/norm.mk @@ -15,32 +15,10 @@ ifeq ($(BR2_PACKAGE_LIBNETFILTER_QUEUE),y) NORM_DEPENDENCIES += libnetfilter_queue endif -define NORM_CONFIGURE_CMDS - cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - ./waf configure --prefix=/usr -endef - -define NORM_BUILD_CMDS - cd $(@D); \ - $(TARGET_MAKE_ENV) \ - ./waf build -endef - # install target doesn't install headers unfortunately... -define NORM_INSTALL_STAGING_CMDS - cd $(@D); \ - $(TARGET_MAKE_ENV) \ - DESTDIR=$(STAGING_DIR) \ - ./waf install +define NORM_INSTALL_HEADERS cp -f $(@D)/include/norm* $(STAGING_DIR)/usr/include endef +NORM_POST_INSTALL_STAGING_HOOKS += NORM_INSTALL_HEADERS -define NORM_INSTALL_TARGET_CMDS - cd $(@D); \ - $(TARGET_MAKE_ENV) \ - DESTDIR=$(TARGET_DIR) \ - ./waf install -endef - -$(eval $(generic-package)) +$(eval $(waf-package)) diff --git a/package/nss-mdns/Config.in b/package/nss-mdns/Config.in index 0192cc2862..ad69e2aa4c 100644 --- a/package/nss-mdns/Config.in +++ b/package/nss-mdns/Config.in @@ -14,6 +14,6 @@ config BR2_PACKAGE_NSS_MDNS http://0pointer.de/lennart/projects/nss-mdns/ -comment "nss-mdns needs an (e)glibc toolchain" +comment "nss-mdns needs a glibc toolchain" depends on BR2_USE_MMU && BR2_PACKAGE_AVAHI_DAEMON depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/nss-pam-ldapd/Config.in b/package/nss-pam-ldapd/Config.in index da6d331b8a..233f21365c 100644 --- a/package/nss-pam-ldapd/Config.in +++ b/package/nss-pam-ldapd/Config.in @@ -21,5 +21,5 @@ config BR2_PACKAGE_NSS_PAM_LDAPD_UTILITIES endif -comment "nss-pam-ldapd needs an (e)glibc toolchain" +comment "nss-pam-ldapd needs a glibc toolchain" depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/ntfs-3g/0001-libfuse-util-include-paths.h-when-needed.patch b/package/ntfs-3g/0001-libfuse-util-include-paths.h-when-needed.patch new file mode 100644 index 0000000000..1765f68c89 --- /dev/null +++ b/package/ntfs-3g/0001-libfuse-util-include-paths.h-when-needed.patch @@ -0,0 +1,43 @@ +From da021ed297ff7a69f3b7532ef68a9b6877a55265 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 20 Aug 2016 11:05:27 +0200 +Subject: [PATCH] libfuse-util: include when needed + +Both fusermount.c and mount_util.c use _PATH_MOUNTED, so they should +include , which provides this definition. + +This fixes the build with the musl C library. + +Signed-off-by: Thomas Petazzoni +--- + libfuse-lite/fusermount.c | 1 + + libfuse-lite/mount_util.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/libfuse-lite/fusermount.c b/libfuse-lite/fusermount.c +index 4e724db..680fee1 100644 +--- a/libfuse-lite/fusermount.c ++++ b/libfuse-lite/fusermount.c +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + + #ifdef __SOLARIS__ + #include +diff --git a/libfuse-lite/mount_util.c b/libfuse-lite/mount_util.c +index 8ea5e08..8b31722 100644 +--- a/libfuse-lite/mount_util.c ++++ b/libfuse-lite/mount_util.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + #include + #include + #ifdef __SOLARIS__ +-- +2.7.4 + diff --git a/package/ntfs-3g/Config.in b/package/ntfs-3g/Config.in index d6d1481ad2..b9f7eafc9e 100644 --- a/package/ntfs-3g/Config.in +++ b/package/ntfs-3g/Config.in @@ -18,6 +18,7 @@ if BR2_PACKAGE_NTFS_3G config BR2_PACKAGE_NTFS_3G_ENCRYPTED bool "encrypted volumes" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt select BR2_PACKAGE_GNUTLS select BR2_PACKAGE_LIBGCRYPT help diff --git a/package/ntp/Config.in b/package/ntp/Config.in index 1763225f44..1af02dbc0b 100644 --- a/package/ntp/Config.in +++ b/package/ntp/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_NTP bool "ntp" select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_OPENSSL help Network Time Protocol suite/programs. Provides things like ntpd, ntpdate, ntpq, etc... @@ -19,6 +20,12 @@ config BR2_PACKAGE_NTP_NTP_KEYGEN help Create a NTP host key +config BR2_PACKAGE_NTP_NTP_SHM_CLK + bool "SHM clock support" + help + Compile ntp with support for a SHM clock attached through + shared memory. + config BR2_PACKAGE_NTP_NTP_WAIT bool "ntp-wait" depends on BR2_PACKAGE_PERL diff --git a/package/ntp/ntp.hash b/package/ntp/ntp.hash index 6be52aa78f..c6838d812f 100644 --- a/package/ntp/ntp.hash +++ b/package/ntp/ntp.hash @@ -1,4 +1,4 @@ -# From http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p7.tar.gz.md5 -md5 46dfba933c3e4bc924d8e55068797578 ntp-4.2.8p7.tar.gz +# From http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p9.tar.gz.md5 +md5 857452b05f5f2e033786f77ade1974ed ntp-4.2.8p9.tar.gz # Calculated based on the hash above -sha256 81d20c06a0b01abe3b84fac092185bf014252d38fe5e7b2758f604680a0220dc ntp-4.2.8p7.tar.gz +sha256 b724287778e1bac625b447327c9851eedef020517a3545625e9f652a90f30b72 ntp-4.2.8p9.tar.gz diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk index d8ac534414..edbf1c86b6 100644 --- a/package/ntp/ntp.mk +++ b/package/ntp/ntp.mk @@ -5,9 +5,9 @@ ################################################################################ NTP_VERSION_MAJOR = 4.2 -NTP_VERSION = $(NTP_VERSION_MAJOR).8p7 +NTP_VERSION = $(NTP_VERSION_MAJOR).8p9 NTP_SITE = http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-$(NTP_VERSION_MAJOR) -NTP_DEPENDENCIES = host-pkgconf libevent $(if $(BR2_PACKAGE_BUSYBOX),busybox) +NTP_DEPENDENCIES = host-pkgconf libevent openssl $(if $(BR2_PACKAGE_BUSYBOX),busybox) NTP_LICENSE = ntp license NTP_LICENSE_FILES = COPYRIGHT NTP_CONF_ENV = ac_cv_lib_md5_MD5Init=no @@ -15,16 +15,26 @@ NTP_CONF_OPTS = \ --with-shared \ --program-transform-name=s,,, \ --disable-tickadj \ + --disable-debugging \ --with-yielding-select=yes \ - --disable-local-libevent + --disable-local-libevent \ + --with-crypto + # 0002-ntp-syscalls-fallback.patch NTP_AUTORECONF = YES -ifeq ($(BR2_PACKAGE_OPENSSL),y) -NTP_CONF_OPTS += --with-crypto -NTP_DEPENDENCIES += openssl +ifeq ($(BR2_PACKAGE_LIBCAP),y) +NTP_CONF_OPTS += --enable-linuxcaps +NTP_DEPENDENCIES += libcap else -NTP_CONF_OPTS += --without-crypto --disable-openssl-random +NTP_CONF_OPTS += --disable-linuxcaps +endif + +ifeq ($(BR2_PACKAGE_LIBEDIT),y) +NTP_CONF_OPTS += --with-lineeditlibs=edit +NTP_DEPENDENCIES += libedit +else +NTP_CONF_OPTS += --without-lineeditlibs endif ifeq ($(BR2_PACKAGE_NTP_NTPSNMPD),y) @@ -42,6 +52,12 @@ else NTP_CONF_OPTS += --disable-ATOM endif +ifeq ($(BR2_PACKAGE_NTP_NTP_SHM_CLK),y) +NTP_CONF_OPTS += --enable-SHM +else +NTP_CONF_OPTS += --disable-SHM +endif + NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTP_KEYGEN) += util/ntp-keygen NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTP_WAIT) += scripts/ntp-wait/ntp-wait NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPDATE) += ntpdate/ntpdate diff --git a/package/nut/0001-Allow-to-customize-path-to-gdlib-config-and-net-snmp.patch b/package/nut/0001-Allow-to-customize-path-to-gdlib-config-and-net-snmp.patch new file mode 100644 index 0000000000..308dbb1aa2 --- /dev/null +++ b/package/nut/0001-Allow-to-customize-path-to-gdlib-config-and-net-snmp.patch @@ -0,0 +1,153 @@ +From 086b5fa8fe4ba74404e92b5f838263dfcf9f173d Mon Sep 17 00:00:00 2001 +From: Jim Klimov +Date: Thu, 7 Apr 2016 03:56:51 +0200 +Subject: [PATCH] Allow to customize path to gdlib-config and net-snmp-config + programs + +[yann.morin.1998@free.fr: backport] +Signed-off-by: "Yann E. MORIN" + +--- +Backported from upstream commit 086b5fa8fe4ba74404e92b5f838263dfcf9f173d +--- + docs/configure.txt | 14 ++++++++++++++ + m4/nut_check_libgd.m4 | 29 +++++++++++++++++++++++------ + m4/nut_check_libnetsnmp.m4 | 25 +++++++++++++++++++++---- + 3 files changed, 58 insertions(+), 10 deletions(-) + +diff --git a/docs/configure.txt b/docs/configure.txt +index aff82c1..b3b542a 100644 +--- a/docs/configure.txt ++++ b/docs/configure.txt +@@ -23,6 +23,13 @@ Note that you need to install the libusb development package or files. + Build and install the SNMP drivers (default: auto-detect) + Note that you need to install libsnmp development package or files. + ++ --with-net-snmp-config ++ ++In addition to the `--with-snmp` option above, this one allows to provide ++a custom program name (in `PATH`) or complete pathname to `net-snmp-config`. ++This may be needed on build systems which support multiple architectures, ++or in cases where your distribution names this program differently. ++ + --with-neon + + Build and install the XML drivers (default: auto-detect) +@@ -335,6 +342,13 @@ NOTE: the --with-gd switches are not necessary if you have gd 2.0.8 + or higher installed properly. The gdlib-config script will be + detected and used by default in that situation. + ++ --with-gdlib-config ++ ++This option allows to provide a custom program name (in `PATH`) or ++a complete pathname to `gdlib-config`. This may be needed on build ++systems which support multiple architectures, or in cases where your ++distribution names this program differently. ++ + --with-ssl-includes, --with-usb-includes, --with-snmp-includes, + --with-neon-includes, --with-libltdl-includes, + --with-powerman-includes="-I/foo/bar" +diff --git a/m4/nut_check_libgd.m4 b/m4/nut_check_libgd.m4 +index 01cc882..73f4da7 100644 +--- a/m4/nut_check_libgd.m4 ++++ b/m4/nut_check_libgd.m4 +@@ -19,8 +19,25 @@ if test -z "${nut_have_libgd_seen}"; then + LDFLAGS="-L/usr/X11R6/lib" + LIBS="-lgd -lpng -lz -ljpeg -lfreetype -lm -lXpm -lX11" + +- AC_MSG_CHECKING(for gd version via gdlib-config) +- GD_VERSION=`gdlib-config --version 2>/dev/null` ++ dnl By default seek in PATH ++ GDLIB_CONFIG=gdlib-config ++ AC_ARG_WITH(gdlib-config, ++ AS_HELP_STRING([@<:@--with-gdlib-config=/path/to/gdlib-config@:>@], ++ [path to program that reports GDLIB configuration]), ++ [ ++ case "${withval}" in ++ "") ;; ++ yes|no) ++ AC_MSG_ERROR(invalid option --with(out)-gdlib-config - see docs/configure.txt) ++ ;; ++ *) ++ GDLIB_CONFIG="${withval}" ++ ;; ++ esac ++ ]) ++ ++ AC_MSG_CHECKING(for gd version via ${GDLIB_CONFIG}) ++ GD_VERSION=`${GDLIB_CONFIG} --version 2>/dev/null` + if test "$?" != "0" -o -z "${GD_VERSION}"; then + GD_VERSION="none" + fi +@@ -30,13 +47,13 @@ if test -z "${nut_have_libgd_seen}"; then + none) + ;; + 2.0.5 | 2.0.6 | 2.0.7) +- AC_MSG_WARN([[gd ${GD_VERSION} detected, unable to use gdlib-config script]]) ++ AC_MSG_WARN([[gd ${GD_VERSION} detected, unable to use ${GDLIB_CONFIG} script]]) + AC_MSG_WARN([[If gd detection fails, upgrade gd or use --with-gd-includes and --with-gd-libs]]) + ;; + *) +- CFLAGS="`gdlib-config --includes 2>/dev/null`" +- LDFLAGS="`gdlib-config --ldflags 2>/dev/null`" +- LIBS="`gdlib-config --libs 2>/dev/null`" ++ CFLAGS="`${GDLIB_CONFIG} --includes 2>/dev/null`" ++ LDFLAGS="`${GDLIB_CONFIG} --ldflags 2>/dev/null`" ++ LIBS="`${GDLIB_CONFIG} --libs 2>/dev/null`" + ;; + esac + +diff --git a/m4/nut_check_libnetsnmp.m4 b/m4/nut_check_libnetsnmp.m4 +index e1c1426..83b2633 100644 +--- a/m4/nut_check_libnetsnmp.m4 ++++ b/m4/nut_check_libnetsnmp.m4 +@@ -13,9 +13,26 @@ if test -z "${nut_have_libnetsnmp_seen}"; then + CFLAGS_ORIG="${CFLAGS}" + LIBS_ORIG="${LIBS}" + ++ dnl By default seek in PATH ++ NET_SNMP_CONFIG=net-snmp-config ++ AC_ARG_WITH(net-snmp-config, ++ AS_HELP_STRING([@<:@--with-net-snmp-config=/path/to/net-snmp-config@:>@], ++ [path to program that reports Net-SNMP configuration]), ++ [ ++ case "${withval}" in ++ "") ;; ++ yes|no) ++ AC_MSG_ERROR(invalid option --with(out)-net-snmp-config - see docs/configure.txt) ++ ;; ++ *) ++ NET_SNMP_CONFIG="${withval}" ++ ;; ++ esac ++ ]) ++ + dnl See which version of the Net-SNMP library (if any) is installed +- AC_MSG_CHECKING(for Net-SNMP version via net-snmp-config) +- SNMP_VERSION=`net-snmp-config --version 2>/dev/null` ++ AC_MSG_CHECKING(for Net-SNMP version via ${NET_SNMP_CONFIG}) ++ SNMP_VERSION=`${NET_SNMP_CONFIG} --version 2>/dev/null` + if test "$?" != "0" -o -z "${SNMP_VERSION}"; then + SNMP_VERSION="none" + fi +@@ -33,7 +50,7 @@ if test -z "${nut_have_libnetsnmp_seen}"; then + CFLAGS="${withval}" + ;; + esac +- ], [CFLAGS="`net-snmp-config --base-cflags 2>/dev/null`"]) ++ ], [CFLAGS="`${NET_SNMP_CONFIG} --base-cflags 2>/dev/null`"]) + AC_MSG_RESULT([${CFLAGS}]) + + AC_MSG_CHECKING(for Net-SNMP libs) +@@ -48,7 +65,7 @@ if test -z "${nut_have_libnetsnmp_seen}"; then + LIBS="${withval}" + ;; + esac +- ], [LIBS="`net-snmp-config --libs 2>/dev/null`"]) ++ ], [LIBS="`${NET_SNMP_CONFIG} --libs 2>/dev/null`"]) + AC_MSG_RESULT([${LIBS}]) + + dnl Check if the Net-SNMP library is usable +-- +2.7.4 + diff --git a/package/nut/0001-foo-config.patch b/package/nut/0001-foo-config.patch deleted file mode 100644 index 7202f139cc..0000000000 --- a/package/nut/0001-foo-config.patch +++ /dev/null @@ -1,72 +0,0 @@ -configure: fix calls to {gdlib,net-snmp}-config - -nut directly calls to {gdlib,net-snmp}-config. In Buildroot, -those are not in the PATH, and nut would catch those of the -system (if they are installed), or miss them entirely. - -Fix that by using environment variables that will tell where -to look for them. - -Note: libusb also uses libusb-config, but only as a fallback -if pkg-config fails. Since we ensure that pkg-config exists, -and libusb is properly installed before we build nut, there -is no need to fix the libusb-config calls, since they won't -be called at all. - -Signed-off-by: "Yann E. MORIN" - -diff -durN nut-2.6.5.orig/m4/nut_check_libgd.m4 nut-2.6.5/m4/nut_check_libgd.m4 ---- nut-2.6.5.orig/m4/nut_check_libgd.m4 2012-07-31 19:38:56.000000000 +0200 -+++ nut-2.6.5/m4/nut_check_libgd.m4 2013-11-01 16:24:02.626549810 +0100 -@@ -20,7 +20,7 @@ - LIBS="-lgd -lpng -lz -ljpeg -lfreetype -lm -lXpm -lX11" - - AC_MSG_CHECKING(for gd version via gdlib-config) -- GD_VERSION=`gdlib-config --version 2>/dev/null` -+ GD_VERSION=`${GDLIB_CONFIG} --version 2>/dev/null` - if test "$?" != "0" -o -z "${GD_VERSION}"; then - GD_VERSION="none" - fi -@@ -34,9 +34,9 @@ - AC_MSG_WARN([[If gd detection fails, upgrade gd or use --with-gd-includes and --with-gd-libs]]) - ;; - *) -- CFLAGS="`gdlib-config --includes 2>/dev/null`" -- LDFLAGS="`gdlib-config --ldflags 2>/dev/null`" -- LIBS="`gdlib-config --libs 2>/dev/null`" -+ CFLAGS="`${GDLIB_CONFIG} --includes 2>/dev/null`" -+ LDFLAGS="`${GDLIB_CONFIG} --ldflags 2>/dev/null`" -+ LIBS="`${GDLIB_CONFIG} --libs 2>/dev/null`" - ;; - esac - -diff -durN nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4 nut-2.6.5/m4/nut_check_libnetsnmp.m4 ---- nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4 2012-07-31 19:38:56.000000000 +0200 -+++ nut-2.6.5/m4/nut_check_libnetsnmp.m4 2013-11-01 16:30:07.398282923 +0100 -@@ -15,7 +15,7 @@ - - dnl See which version of the Net-SNMP library (if any) is installed - AC_MSG_CHECKING(for Net-SNMP version via net-snmp-config) -- SNMP_VERSION=`net-snmp-config --version 2>/dev/null` -+ SNMP_VERSION=`${NET_SNMP_CONFIG} --version 2>/dev/null` - if test "$?" != "0" -o -z "${SNMP_VERSION}"; then - SNMP_VERSION="none" - fi -@@ -33,7 +33,7 @@ - CFLAGS="${withval}" - ;; - esac -- ], [CFLAGS="`net-snmp-config --base-cflags 2>/dev/null`"]) -+ ], [CFLAGS="`${NET_SNMP_CONFIG} --base-cflags 2>/dev/null`"]) - AC_MSG_RESULT([${CFLAGS}]) - - AC_MSG_CHECKING(for Net-SNMP libs) -@@ -48,7 +48,7 @@ - LIBS="${withval}" - ;; - esac -- ], [LIBS="`net-snmp-config --libs 2>/dev/null`"]) -+ ], [LIBS="`${NET_SNMP_CONFIG} --libs 2>/dev/null`"]) - AC_MSG_RESULT([${LIBS}]) - - dnl Check if the Net-SNMP library is usable diff --git a/package/nut/0002-client-ups-add-missing-include.patch b/package/nut/0002-client-ups-add-missing-include.patch new file mode 100644 index 0000000000..63fdcdcbb4 --- /dev/null +++ b/package/nut/0002-client-ups-add-missing-include.patch @@ -0,0 +1,29 @@ +From da0969b26ad4bb839bcb88362c8f41aaf0eb8363 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Tue, 11 Oct 2016 12:05:36 +0200 +Subject: [PATCH] client/ups: add missing include + +struct timeval is declared in sys/time.h, so we need to #include it. + +Signed-off-by: "Yann E. MORIN" +--- +Backported from upstream commit da0969b26ad4bb839bcb88362c8f41aaf0eb8363 +--- + clients/upsclient.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/clients/upsclient.c b/clients/upsclient.c +index 43c0e79..dfadd0d 100644 +--- a/clients/upsclient.c ++++ b/clients/upsclient.c +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + + #include "upsclient.h" + #include "common.h" +-- +2.7.4 + diff --git a/package/nut/0002-parallel-build.patch b/package/nut/0002-parallel-build.patch deleted file mode 100644 index f979c19da9..0000000000 --- a/package/nut/0002-parallel-build.patch +++ /dev/null @@ -1,24 +0,0 @@ -conf: fix parallel install - -Do not reference the upsmon.conf.sample twice, otherwise install, with -a high number of make jobs, may fail, like so: - http://autobuild.buildroot.net/results/256/2567e13cd5bc702bc3a38a1d6fc8e34022cc7db5/build-end.log - -Signed-off-by: "Yann E. MORIN" - ---- -Upstream status: - https://github.com/networkupstools/nut/pull/147 - -diff -durB nut-2.7.2.orig/conf/Makefile.am nut-2.7.2/conf/Makefile.am ---- nut-2.7.2.orig/conf/Makefile.am 2014-02-14 09:56:53.000000000 +0100 -+++ nut-2.7.2/conf/Makefile.am 2014-08-17 11:33:46.804439240 +0200 -@@ -2,7 +2,7 @@ - - INSTALL_0600 = $(INSTALL) -m 0600 - --SECFILES = upsmon.conf.sample upsd.conf.sample upsd.users.sample -+SECFILES = upsd.conf.sample upsd.users.sample - PUBFILES = nut.conf.sample ups.conf.sample - CGIPUB = hosts.conf.sample upsset.conf.sample upsstats.html.sample \ - upsstats-single.html.sample diff --git a/package/nut/nut.hash b/package/nut/nut.hash index 0174366bcc..870c67cc8e 100644 --- a/package/nut/nut.hash +++ b/package/nut/nut.hash @@ -1,2 +1,2 @@ # From http://www.networkupstools.org/source/2.7/nut-2.7.2.tar.gz.sha256 -sha256 4d5365359b059d96dfcb77458f361a114d26c84f1297ffcd0c6c166f7200376d nut-2.7.2.tar.gz +sha256 980e82918c52d364605c0703a5dcf01f74ad2ef06e3d365949e43b7d406d25a7 nut-2.7.4.tar.gz diff --git a/package/nut/nut.mk b/package/nut/nut.mk index b0a92ca660..7136e834cc 100644 --- a/package/nut/nut.mk +++ b/package/nut/nut.mk @@ -5,7 +5,7 @@ ################################################################################ NUT_VERSION_MAJOR = 2.7 -NUT_VERSION = $(NUT_VERSION_MAJOR).2 +NUT_VERSION = $(NUT_VERSION_MAJOR).4 NUT_SITE = http://www.networkupstools.org/source/$(NUT_VERSION_MAJOR) NUT_LICENSE = GPLv2+, GPLv3+ (python scripts), GPL/Artistic (perl client) NUT_LICENSE_FILES = COPYING LICENSE-GPL2 LICENSE-GPL3 @@ -20,10 +20,6 @@ NUT_CONF_OPTS = \ --with-altpidpath=/var/run/upsd \ --without-hal -NUT_CONF_ENV = \ - GDLIB_CONFIG=$(STAGING_DIR)/usr/bin/gdlib-config \ - NET_SNMP_CONFIG=$(STAGING_DIR)/usr/bin/net-snmp-config - # For uClibc-based toolchains, nut forgets to link with -lm ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) NUT_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -lm" @@ -45,7 +41,9 @@ endif # gd with support for png is required for the CGI ifeq ($(BR2_PACKAGE_GD)$(BR2_PACKAGE_LIBPNG),yy) NUT_DEPENDENCIES += gd libpng -NUT_CONF_OPTS += --with-cgi +NUT_CONF_OPTS += \ + --with-cgi \ + --with-gdlib-config=$(STAGING_DIR)/usr/bin/gdlib-config else NUT_CONF_OPTS += --without-cgi endif @@ -77,7 +75,9 @@ endif ifeq ($(BR2_PACKAGE_NETSNMP),y) NUT_DEPENDENCIES += netsnmp -NUT_CONF_OPTS += --with-snmp +NUT_CONF_OPTS += \ + --with-snmp \ + --with-net-snmp-config=$(STAGING_DIR)/usr/bin/net-snmp-config else NUT_CONF_OPTS += --without-snmp endif diff --git a/package/nvidia-driver/0001-use-LDFLAGS.patch b/package/nvidia-driver/0001-use-LDFLAGS.patch new file mode 100644 index 0000000000..7b7df80988 --- /dev/null +++ b/package/nvidia-driver/0001-use-LDFLAGS.patch @@ -0,0 +1,48 @@ +kernel: use LDFLAGS when linking modules + +Currently, linking module objects is simply using $(LD), assuming that +the default emulation is correct for the current architecture. + +However, that might not be the case when the toolchain default is not +the same as the current arch. For example, if the toolchain defaults to +i386 and is capable of x86_64, and we're targetting x86_64 (or the +opposite), the link would fail because the ld emulation is incorrect: + + .../i686-pc-linux-gnu-ld: Relocatable linking with relocations from + format elf64-x86-64 (.../nvidia-driver-370.23/kernel/nvidia/nv-frontend.o) + to format elf32-i386 (.../nvidia-driver-370.23/kernel/nvidia/nv-interface.o) + is not supported + +Add use of $(LDFLAGS) when doing the link, as the kernel provides the +proper emulation in those. + +Signed-off-by: "Yann E. MORIN" + +--- +Issue reported upstream: + https://devtalk.nvidia.com/default/topic/958653/ + +diff -durN nvidia-driver-370.23.orig/kernel/nvidia/nvidia.Kbuild nvidia-driver-370.23/kernel/nvidia/nvidia.Kbuild +--- nvidia-driver-370.23.orig/kernel/nvidia/nvidia.Kbuild 2016-08-09 01:57:50.000000000 +0200 ++++ nvidia-driver-370.23/kernel/nvidia/nvidia.Kbuild 2016-08-20 12:25:02.780233423 +0200 +@@ -87,7 +87,7 @@ + always += $(NVIDIA_INTERFACE) + + $(obj)/$(NVIDIA_INTERFACE): $(addprefix $(obj)/,$(NVIDIA_OBJECTS)) +- $(LD) -r -o $@ $^ ++ $(LD) $(LDFLAGS) -r -o $@ $^ + + + # +diff -durN nvidia-driver-370.23.orig/kernel/nvidia-modeset/nvidia-modeset.Kbuild nvidia-driver-370.23/kernel/nvidia-modeset/nvidia-modeset.Kbuild +--- nvidia-driver-370.23.orig/kernel/nvidia-modeset/nvidia-modeset.Kbuild 2016-08-09 01:43:19.000000000 +0200 ++++ nvidia-driver-370.23/kernel/nvidia-modeset/nvidia-modeset.Kbuild 2016-08-20 12:25:39.596772662 +0200 +@@ -70,7 +70,7 @@ + always += $(NVIDIA_MODESET_INTERFACE) + + $(obj)/$(NVIDIA_MODESET_INTERFACE): $(addprefix $(obj)/,$(NVIDIA_MODESET_OBJECTS)) +- $(LD) -r -o $@ $^ ++ $(LD) $(LDFLAGS) -r -o $@ $^ + + # + # Register the conftests needed by nvidia-modeset.ko diff --git a/package/nvidia-driver/Config.in b/package/nvidia-driver/Config.in index 30763c5a63..1105ec63b6 100644 --- a/package/nvidia-driver/Config.in +++ b/package/nvidia-driver/Config.in @@ -1,4 +1,4 @@ -comment "nvidia-driver needs an (e)glibc toolchain" +comment "nvidia-driver needs a glibc toolchain" depends on BR2_i386 || BR2_x86_64 depends on !BR2_TOOLCHAIN_USES_GLIBC @@ -22,10 +22,11 @@ config BR2_PACKAGE_NVIDIA_DRIVER_XORG default y depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR select BR2_PACKAGE_MESA3D_HEADERS - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBX11 # runtime + select BR2_PACKAGE_XLIB_LIBXEXT # runtime select BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBEGL_WAYLAND select BR2_PACKAGE_HAS_LIBGLES if BR2_PACKAGE_NVIDIA_DRIVER_XORG @@ -62,7 +63,6 @@ config BR2_PACKAGE_NVIDIA_DRIVER_OPENCL config BR2_PACKAGE_NVIDIA_DRIVER_CUDA_PROGS bool "CUDA MPS server and control" - depends on BR2_x86_64 help Say 'y' here if you need to run more than one program doing CUDA at the same time. The MPS server will be diff --git a/package/nvidia-driver/nvidia-driver.hash b/package/nvidia-driver/nvidia-driver.hash index ba2f5554bf..04a44b821a 100644 --- a/package/nvidia-driver/nvidia-driver.hash +++ b/package/nvidia-driver/nvidia-driver.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 d3a2842cbfb1163e20c658fbfaf5a235d5c9f035cd2d657f15df8a14b3fe80b1 NVIDIA-Linux-x86-358.16.run -sha256 a942cdb29ed715ff1ce25beb06b6c2490126b98ef8bee5d9973967b557596bf2 NVIDIA-Linux-x86_64-358.16.run +sha256 cc79d3ac2b688009ed2e47a1cf27557aea5dd745b3b6e9b83945c359ddab4335 NVIDIA-Linux-x86-375.20.run +sha256 d10e40a19dc57ac958567a2b247c2b113e5f1e4186ad48e9a58e70a46d07620b NVIDIA-Linux-x86_64-375.20.run diff --git a/package/nvidia-driver/nvidia-driver.mk b/package/nvidia-driver/nvidia-driver.mk index 7e670206e0..cb9b7faeca 100644 --- a/package/nvidia-driver/nvidia-driver.mk +++ b/package/nvidia-driver/nvidia-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -NVIDIA_DRIVER_VERSION = 358.16 +NVIDIA_DRIVER_VERSION = 375.20 NVIDIA_DRIVER_SUFFIX = $(if $(BR2_x86_64),_64) NVIDIA_DRIVER_SITE = ftp://download.nvidia.com/XFree86/Linux-x86$(NVIDIA_DRIVER_SUFFIX)/$(NVIDIA_DRIVER_VERSION) NVIDIA_DRIVER_SOURCE = NVIDIA-Linux-x86$(NVIDIA_DRIVER_SUFFIX)-$(NVIDIA_DRIVER_VERSION).run @@ -20,25 +20,56 @@ ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_XORG),y) # are build dependencies of packages that depend on nvidia-driver, so # they should be built prior to those packages, and the only simple # way to do so is to make nvidia-driver depend on them. -NVIDIA_DRIVER_DEPENDENCIES = mesa3d-headers xlib_libX11 xlib_libXext +NVIDIA_DRIVER_DEPENDENCIES = mesa3d-headers NVIDIA_DRIVER_PROVIDES = libgl libegl libgles -# We have two variables that contains a list of libraries to install: -# NVIDIA_DRIVER_LIBS -# contains the libraries whose filename end up in .so.$(VERSION); rather -# than duplicate the version string for all of them, we just store their -# basename, and append the version string below. -# NVIDIA_DRIVER_LIBS_NO_VERSION -# contains all libraries the do not use the NVidia version; since there -# is currently only one such library, we store its full name. +# libGL.so.$(NVIDIA_DRIVER_VERSION) is the legacy libGL.so library; it +# has been replaced with libGL.so.1.0.0. Installing both is technically +# possible, but great care must be taken to ensure they do not conflict, +# so that EGL still works. The legacy library exposes an NVidia-specific +# API, so it should not be needed, except for legacy, binary-only +# applications (in other words: we don't care). +# +# libGL.so.1.0.0 is the new vendor-neutral library, aimed at replacing +# the old libGL.so.$(NVIDIA_DRIVER_VERSION) library. The latter contains +# NVidia extensions (which is deemed bad now), while the former follows +# the newly-introduced vendor-neutral "dispatching" API/ABI: +# https://github.com/aritger/linux-opengl-abi-proposal/blob/master/linux-opengl-abi-proposal.txt +# However, this is not very usefull to us, as we don't support multiple +# GL providers at the same time on the system, which this proposal is +# aimed at supporting. +# +# So we only install the legacy library for now. +NVIDIA_DRIVER_LIBS_GL = \ + libGLX.so.0 \ + libGL.so.$(NVIDIA_DRIVER_VERSION) \ + libGLX_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + +NVIDIA_DRIVER_LIBS_EGL = \ + libEGL.so.1 \ + libGLdispatch.so.0 \ + libEGL_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + +NVIDIA_DRIVER_LIBS_GLES = \ + libGLESv1_CM.so.1 \ + libGLESv2.so.2 \ + libGLESv1_CM_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + libGLESv2_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + +NVIDIA_DRIVER_LIBS_MISC = \ + libnvidia-eglcore.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-egl-wayland.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-glcore.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-glsi.so.$(NVIDIA_DRIVER_VERSION) \ + tls/libnvidia-tls.so.$(NVIDIA_DRIVER_VERSION) \ + libvdpau_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-ml.so.$(NVIDIA_DRIVER_VERSION) \ -# Each line corresponds to a specific set of libraries NVIDIA_DRIVER_LIBS = \ - libEGL libGLESv1_CM libGLESv2 libGL \ - libnvidia-glcore libnvidia-eglcore libnvidia-glsi \ - tls/libnvidia-tls \ - libvdpau libvdpau_nvidia \ - libnvidia-ml + $(NVIDIA_DRIVER_LIBS_GL) \ + $(NVIDIA_DRIVER_LIBS_EGL) \ + $(NVIDIA_DRIVER_LIBS_GLES) \ + $(NVIDIA_DRIVER_LIBS_MISC) \ # Install the gl.pc file define NVIDIA_DRIVER_INSTALL_GL_DEV @@ -54,110 +85,91 @@ endef # on using those libraries (e.g. if the user has such an agreement, or # wants to run a third-party program developped under such an agreement). ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_PRIVATE_LIBS),y) -NVIDIA_DRIVER_LIBS += libnvidia-ifr libnvidia-fbc +NVIDIA_DRIVER_LIBS += \ + libnvidia-ifr.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-fbc.so.$(NVIDIA_DRIVER_VERSION) endif # We refer to the destination path; the origin file has no directory component -NVIDIA_DRIVER_X_MODS = drivers/nvidia_drv.so \ +NVIDIA_DRIVER_X_MODS = \ + drivers/nvidia_drv.so \ extensions/libglx.so.$(NVIDIA_DRIVER_VERSION) \ libnvidia-wfb.so.$(NVIDIA_DRIVER_VERSION) endif # X drivers ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_CUDA),y) -NVIDIA_DRIVER_LIBS += libcuda libnvidia-compiler libnvcuvid libnvidia-encode +NVIDIA_DRIVER_LIBS += \ + libcuda.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-compiler.so.$(NVIDIA_DRIVER_VERSION) \ + libnvcuvid.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-fatbinaryloader.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-ptxjitcompiler.so.$(NVIDIA_DRIVER_VERSION) \ + libnvidia-encode.so.$(NVIDIA_DRIVER_VERSION) ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_CUDA_PROGS),y) NVIDIA_DRIVER_PROGS = nvidia-cuda-mps-control nvidia-cuda-mps-server endif endif ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_OPENCL),y) -NVIDIA_DRIVER_LIBS_NO_VERSION += libOpenCL.so.1.0.0 -NVIDIA_DRIVER_LIBS += libnvidia-opencl +NVIDIA_DRIVER_LIBS += \ + libOpenCL.so.1.0.0 \ + libnvidia-opencl.so.$(NVIDIA_DRIVER_VERSION) endif +# Build and install the kernel modules if needed +ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_MODULE),y) + +NVIDIA_DRIVER_MODULES = nvidia nvidia-modeset nvidia-drm +ifeq ($(BR2_x86_64),y) +NVIDIA_DRIVER_MODULES += nvidia-uvm +endif + +# They can't do everything like everyone. They need those variables, +# because they don't recognise the usual variables set by the kernel +# build system. We also need to tell them what modules to build. +NVIDIA_DRIVER_MODULE_MAKE_OPTS = \ + NV_KERNEL_SOURCES="$(LINUX_DIR)" \ + NV_KERNEL_OUTPUT="$(LINUX_DIR)" \ + NV_KERNEL_MODULES="$(NVIDIA_DRIVER_MODULES)" + +NVIDIA_DRIVER_MODULE_SUBDIRS = kernel + +$(eval $(kernel-module)) + +endif # BR2_PACKAGE_NVIDIA_DRIVER_MODULE == y + # The downloaded archive is in fact an auto-extract script. So, it can run # virtually everywhere, and it is fine enough to provide useful options. # Except it can't extract into an existing (even empty) directory. define NVIDIA_DRIVER_EXTRACT_CMDS $(SHELL) $(DL_DIR)/$(NVIDIA_DRIVER_SOURCE) --extract-only --target \ $(@D)/tmp-extract + chmod u+w -R $(@D) mv $(@D)/tmp-extract/* $(@D)/tmp-extract/.manifest $(@D) rm -rf $(@D)/tmp-extract endef -# Build and install the kernel modules if needed -ifeq ($(BR2_PACKAGE_NVIDIA_DRIVER_MODULE),y) - -NVIDIA_DRIVER_DEPENDENCIES += linux - -# NVidia uses the legacy naming scheme for the x86 architecture, when i386 -# and x86_64 were still considered two separate architectures in the Linux -# kernel. -NVIDIA_DRIVER_ARCH = $(if $(BR2_i386),i386,$(BR2_ARCH)) - -NVIDIA_DRIVER_MOD_DIRS = kernel -NVIDIA_DRIVER_MOD_FILES = kernel/nvidia.ko -# nvidia-uvm.ko only available for x86_64 -ifeq ($(BR2_x86_64)$(BR2_PACKAGE_NVIDIA_DRIVER_CUDA),yy) -NVIDIA_DRIVER_MOD_DIRS += kernel/uvm -NVIDIA_DRIVER_MOD_FILES += kernel/uvm/nvidia-uvm.ko -endif - -# We can not use '$(MAKE) -C $(@D)/$${dir}' because NVidia's uses its own -# Makefile to build a kernel module, which includes a lot of assumptions -# on where to find its own sub-Makefile fragments, and fails if make is -# not run from the directory where the module's source files are. Hence -# our little trick to cd in there first. -# That's also the reason why we do not use LINUX_MAKE_FLAGS or the other -# linux-specific variables, since NVidia's Makefile does not understand -# them. -define NVIDIA_DRIVER_BUILD_CMDS - for dir in $(NVIDIA_DRIVER_MOD_DIRS); do \ - (cd $(@D)/$${dir} && \ - $(MAKE) SYSSRC="$(LINUX_DIR)" SYSOUT="$(LINUX_DIR)" \ - CC="$(TARGET_CC)" LD="$(TARGET_LD)" HOSTCC="$(HOSTCC)" \ - ARCH=$(NVIDIA_DRIVER_ARCH) module) || exit 1; \ - done -endef - -# We do not use module-install because NVidia's Makefile requires root. -# Also, we do not install it in the expected location (in nvidia/ rather -# than in kernel/drivers/video/) -define NVIDIA_DRIVER_INSTALL_KERNEL_MODULE - for mod in $(NVIDIA_DRIVER_MOD_FILES); do \ - $(INSTALL) -D -m 0644 $(@D)/$${mod} \ - $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/nvidia/$${mod##*/} \ - || exit 1; \ - done - $(HOST_DIR)/sbin/depmod -a -b $(TARGET_DIR) $(LINUX_VERSION_PROBED) -endef - -endif # BR2_PACKAGE_NVIDIA_DRIVER_MODULE == y - # Helper to install libraries # $1: destination directory (target or staging) # -# For all libraries that need it, we append the NVidia version string. -# Then for all libraries, we install them and create a symlink using -# their SONAME, so we can link to them at runtime; we also create the -# no-version symlink, so we can link to them at build time. +# For all libraries, we install them and create a symlink using +# their SONAME, so we can link to them at runtime; we also create +# the no-version symlink, so we can link to them at build time. define NVIDIA_DRIVER_INSTALL_LIBS - for libpath in $(addsuffix .so.$(NVIDIA_DRIVER_VERSION),$(NVIDIA_DRIVER_LIBS)) \ - $(NVIDIA_DRIVER_LIBS_NO_VERSION); \ - do \ - libname="$${libpath##*/}"; \ - $(INSTALL) -D -m 0644 $(@D)/$${libpath} $(1)/usr/lib/$${libname}; \ - libsoname="$$( $(TARGET_READELF) -d "$(@D)/$${libpath}" \ - |sed -r -e '/.*\(SONAME\).*\[(.*)\]$$/!d; s//\1/;' )"; \ - if [ -n "$${libsoname}" -a "$${libsoname}" != "$${libname}" ]; then \ - ln -sf $${libname} $(1)/usr/lib/$${libsoname}; \ - fi; \ - baseso="$${libname/.so*}.so"; \ - if [ -n "$${baseso}" -a "$${baseso}" != "$${libname}" ]; then \ - ln -sf $${libname} $(1)/usr/lib/$${baseso}; \ - fi; \ - done + $(foreach lib,$(NVIDIA_DRIVER_LIBS),\ + $(INSTALL) -D -m 0644 $(@D)/$(lib) $(1)/usr/lib/$(notdir $(lib)) + libsoname="$$( $(TARGET_READELF) -d "$(@D)/$(lib)" \ + |sed -r -e '/.*\(SONAME\).*\[(.*)\]$$/!d; s//\1/;' )"; \ + if [ -n "$${libsoname}" -a "$${libsoname}" != "$(notdir $(lib))" ]; then \ + ln -sf $(notdir $(lib)) \ + $(1)/usr/lib/$${libsoname}; \ + fi + baseso=$(firstword $(subst .,$(space),$(notdir $(lib)))).so; \ + if [ -n "$${baseso}" -a "$${baseso}" != "$(notdir $(lib))" ]; then \ + ln -sf $(notdir $(lib)) $(1)/usr/lib/$${baseso}; \ + fi + ) endef # For staging, install libraries and development files @@ -169,14 +181,14 @@ endef # For target, install libraries and X.org modules define NVIDIA_DRIVER_INSTALL_TARGET_CMDS $(call NVIDIA_DRIVER_INSTALL_LIBS,$(TARGET_DIR)) - for m in $(NVIDIA_DRIVER_X_MODS); do \ - $(INSTALL) -D -m 0644 $(@D)/$${m##*/} \ - $(TARGET_DIR)/usr/lib/xorg/modules/$${m}; \ - done - for p in $(NVIDIA_DRIVER_PROGS); do \ - $(INSTALL) -D -m 0755 $(@D)/$${p} \ - $(TARGET_DIR)/usr/bin/$${p}; \ - done + $(foreach m,$(NVIDIA_DRIVER_X_MODS), \ + $(INSTALL) -D -m 0644 $(@D)/$(notdir $(m)) \ + $(TARGET_DIR)/usr/lib/xorg/modules/$(m) + ) + $(foreach p,$(NVIDIA_DRIVER_PROGS), \ + $(INSTALL) -D -m 0755 $(@D)/$(p) \ + $(TARGET_DIR)/usr/bin/$(p) + ) $(NVIDIA_DRIVER_INSTALL_KERNEL_MODULE) endef diff --git a/package/nvidia-tegra23/Config.in b/package/nvidia-tegra23/Config.in index eb33581d08..9c9fd198d9 100644 --- a/package/nvidia-tegra23/Config.in +++ b/package/nvidia-tegra23/Config.in @@ -32,7 +32,7 @@ source "package/nvidia-tegra23/nvidia-tegra23-binaries/Config.in" source "package/nvidia-tegra23/nvidia-tegra23-codecs/Config.in" endif -comment "nvidia-tegra23 needs Xorg <= 1.14 and a (e)glibc toolchain w/ EABIhf" +comment "nvidia-tegra23 needs Xorg <= 1.14 and a glibc toolchain w/ EABIhf" depends on BR2_cortex_a9 depends on !BR2_ARM_EABIHF || !BR2_TOOLCHAIN_USES_GLIBC \ || !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 diff --git a/package/ocf-linux/ocf-linux.mk b/package/ocf-linux/ocf-linux.mk index 35968d5edc..01854fa73a 100644 --- a/package/ocf-linux/ocf-linux.mk +++ b/package/ocf-linux/ocf-linux.mk @@ -8,6 +8,8 @@ OCF_LINUX_VERSION = 20120127 OCF_LINUX_SITE = http://downloads.sourceforge.net/project/ocf-linux/ocf-linux/$(OCF_LINUX_VERSION) OCF_LINUX_INSTALL_STAGING = YES +OCF_LINUX_PROVIDES = cryptodev + OCF_LINUX_MODULE_SUBDIRS = ocf OCF_LINUX_MODULE_MAKE_OPTS = \ CONFIG_OCF_OCF=m \ diff --git a/package/ocrad/ocrad.hash b/package/ocrad/ocrad.hash index c40907bcb4..d2a44ae77f 100644 --- a/package/ocrad/ocrad.hash +++ b/package/ocrad/ocrad.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 4ec711239d6b667bac015ef9908cab3ea9f8fd73f098ae355498810c8e82a8cc ocrad-0.21.tar.gz +sha256 e710be9c030fbcbce2315077326c8268feb422c0bc39fa744644cbbd1f5d4dd4 ocrad-0.25.tar.lz diff --git a/package/ocrad/ocrad.mk b/package/ocrad/ocrad.mk index 8a038e2ca2..d19e83ef42 100644 --- a/package/ocrad/ocrad.mk +++ b/package/ocrad/ocrad.mk @@ -4,28 +4,35 @@ # ################################################################################ -OCRAD_VERSION = 0.21 +OCRAD_VERSION = 0.25 +OCRAD_SOURCE = ocrad-$(OCRAD_VERSION).tar.lz OCRAD_SITE = $(BR2_GNU_MIRROR)/ocrad OCRAD_LICENSE = GPLv3+ OCRAD_LICENSE_FILES = COPYING OCRAD_INSTALL_STAGING = YES +OCRAD_DEPENDENCIES = host-lzip + +define OCRAD_EXTRACT_CMDS + $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(OCRAD_SOURCE) | \ + tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - +endef # This is not a true autotools package. define OCRAD_CONFIGURE_CMDS cd $(@D) && \ - ./configure --prefix=/usr --sysconfdir=/etc $(TARGET_CONFIGURE_OPTS) + $(TARGET_MAKE_ENV) ./configure --prefix=/usr --sysconfdir=/etc $(TARGET_CONFIGURE_OPTS) endef define OCRAD_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define OCRAD_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install endef define OCRAD_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/odhcp6c/odhcp6c.hash b/package/odhcp6c/odhcp6c.hash index 00a096029d..688d77dc62 100644 --- a/package/odhcp6c/odhcp6c.hash +++ b/package/odhcp6c/odhcp6c.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 b5f920ed300309d65e431a360cae5f3c2010eca09a4231c9ef907c730d3c0d09 odhcp6c-dc186d6d2b0dd4ad23ca5fc69c00e81f796ff6d9.tar.gz +sha256 d84a713010865215301b4186c7b5368c9f006e6d3b9b52b99bd25e2d9e7a1dfc odhcp6c-7533a6243dc3ac5a747cf6ccbc4d0539dafd3e07.tar.gz diff --git a/package/odhcp6c/odhcp6c.mk b/package/odhcp6c/odhcp6c.mk index c841cd3122..0ec9657aaf 100644 --- a/package/odhcp6c/odhcp6c.mk +++ b/package/odhcp6c/odhcp6c.mk @@ -4,7 +4,7 @@ # ################################################################################ -ODHCP6C_VERSION = dc186d6d2b0dd4ad23ca5fc69c00e81f796ff6d9 +ODHCP6C_VERSION = 7533a6243dc3ac5a747cf6ccbc4d0539dafd3e07 ODHCP6C_SITE = $(call github,sbyx,odhcp6c,$(ODHCP6C_VERSION)) ODHCP6C_LICENSE = GPLv2 ODHCP6C_LICENSE_FILES = COPYING diff --git a/package/odhcploc/odhcploc.mk b/package/odhcploc/odhcploc.mk index 3995551927..bf4227ae5c 100644 --- a/package/odhcploc/odhcploc.mk +++ b/package/odhcploc/odhcploc.mk @@ -10,11 +10,11 @@ ODHCPLOC_LICENSE = ISC ODHCPLOC_LICENSE_FILES = COPYING define ODHCPLOC_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all endef define ODHCPLOC_INSTALL_TARGET_CMDS - $(MAKE) PREFIX=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/odroid-mali/Config.in b/package/odroid-mali/Config.in new file mode 100644 index 0000000000..e5c07f2378 --- /dev/null +++ b/package/odroid-mali/Config.in @@ -0,0 +1,34 @@ +config BR2_PACKAGE_ODROID_MALI + bool "odroid-mali" + select BR2_PACKAGE_HAS_LIBEGL + select BR2_PACKAGE_HAS_LIBGLES + select BR2_PACKAGE_ODROID_SCRIPTS # runtime + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_aarch64 || BR2_ARM_EABIHF + help + Install the ARM Mali drivers for odroidc2 based systems. + + https://github.com/mdrjr/c2_mali + +if BR2_PACKAGE_ODROID_MALI + +config BR2_PACKAGE_PROVIDES_LIBEGL + default "odroid-mali" + +config BR2_PACKAGE_PROVIDES_LIBGLES + default "odroid-mali" + +endif + +config BR2_PACKAGE_ODROID_MALI_X11 + bool + depends on BR2_aarch64 # No 32 bit version available + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + +comment "odroid-mali needs a glibc toolchain" + depends on BR2_aarch64 || BR2_ARM_EABIHF + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/odroid-mali/odroid-mali.hash b/package/odroid-mali/odroid-mali.hash new file mode 100644 index 0000000000..4d24824229 --- /dev/null +++ b/package/odroid-mali/odroid-mali.hash @@ -0,0 +1,2 @@ +# Locally computed hash +sha256 29d98ed4b8694b860d9289787c416faa847b0de26d36580a53add1752b4c2e9a odroid-mali-46fe49f37e3506c6205ad8c50980eca9bfff11e3.tar.gz diff --git a/package/odroid-mali/odroid-mali.mk b/package/odroid-mali/odroid-mali.mk new file mode 100644 index 0000000000..142fd97c67 --- /dev/null +++ b/package/odroid-mali/odroid-mali.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# odroid-mali +# +################################################################################ + +ODROID_MALI_VERSION = 46fe49f37e3506c6205ad8c50980eca9bfff11e3 +ODROID_MALI_SITE = $(call github,mdrjr,c2_mali,$(ODROID_MALI_VERSION)) +ODROID_MALI_LICENSE = Hardkernel EULA +ODROID_MALI_LICENSE_FILES = README.md + +ODROID_MALI_INSTALL_STAGING = YES +ODROID_MALI_PROVIDES = libegl libgles + +ifeq ($(BR2_PACKAGE_ODROID_MALI_X11),y) +ODROID_MALI_HEADERS_SUBDIR = x11/mali_headers/ +ODROID_MALI_LIBS_SUBDIR = x11/mali_libs/ +# The X11 blobs are linked against those libraries, and the headers +# include headers from those libraries +ODROID_MALI_DEPENDENCIES += \ + libdrm xlib_libX11 xlib_libXdamage \ + xlib_libXext xlib_libXfixes +else +ODROID_MALI_HEADERS_SUBDIR = fbdev/mali_headers/ +ifeq ($(BR2_aarch64),y) +ODROID_MALI_LIBS_SUBDIR = fbdev/mali_libs/ +else +ODROID_MALI_LIBS_SUBDIR = fbdev/32bit_libs/ +endif +endif + +define ODROID_MALI_INSTALL_LIBS + cp -dpfr $(@D)/$(ODROID_MALI_LIBS_SUBDIR)/lib* $(1)/usr/lib/ +endef + +define ODROID_MALI_INSTALL_STAGING_CMDS + $(call ODROID_MALI_INSTALL_LIBS,$(STAGING_DIR)) + mkdir -p $(STAGING_DIR)/usr/lib/pkgconfig + cp -dpfr $(@D)/pkgconfig/*.pc $(STAGING_DIR)/usr/lib/pkgconfig/ + cp -dpfr $(@D)/$(ODROID_MALI_HEADERS_SUBDIR)/* $(STAGING_DIR)/usr/include +endef + +define ODROID_MALI_INSTALL_TARGET_CMDS + $(call ODROID_MALI_INSTALL_LIBS,$(TARGET_DIR)) +endef + +$(eval $(generic-package)) diff --git a/package/odroid-scripts/Config.in b/package/odroid-scripts/Config.in new file mode 100644 index 0000000000..c4e09cad72 --- /dev/null +++ b/package/odroid-scripts/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_ODROID_SCRIPTS + bool "odroid-scripts" + depends on BR2_aarch64 || BR2_arm + select BR2_PACKAGE_FBSET # runtime + select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # needed for fbset + help + Install the scripts for the odroidc2 based systems. + + https://github.com/mdrjr/c2_bootini diff --git a/package/odroid-scripts/S02odroidc2_fb b/package/odroid-scripts/S02odroidc2_fb new file mode 100644 index 0000000000..2aae59db98 --- /dev/null +++ b/package/odroid-scripts/S02odroidc2_fb @@ -0,0 +1,20 @@ +#!/bin/sh +# +# Set up frame buffer +# + +case "$1" in + start) + echo "Setting up display..." + /usr/sbin/odroidc2_init_fb.sh + ;; + stop) + ;; + restart|reload) + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/odroid-scripts/odroid-scripts.hash b/package/odroid-scripts/odroid-scripts.hash new file mode 100644 index 0000000000..e5a262d209 --- /dev/null +++ b/package/odroid-scripts/odroid-scripts.hash @@ -0,0 +1,2 @@ +# Locally computed hash +sha256 9d61472ee6aed2d1a7b5afdcb91b823003c8524a242572f24f89d4e57323daf3 odroid-scripts-cfd289b1d69136b8bfd725d90cd648da4654f2bd.tar.gz diff --git a/package/odroid-scripts/odroid-scripts.mk b/package/odroid-scripts/odroid-scripts.mk new file mode 100644 index 0000000000..fc1940dcef --- /dev/null +++ b/package/odroid-scripts/odroid-scripts.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# odroid-scripts +# +################################################################################ + +ODROID_SCRIPTS_VERSION = cfd289b1d69136b8bfd725d90cd648da4654f2bd +ODROID_SCRIPTS_SITE = $(call github,mdrjr,c2_bootini,$(ODROID_SCRIPTS_VERSION)) +ODROID_SCRIPTS_LICENSE = unclear + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +define ODROID_SCRIPTS_INSTALL_UDEV_RULES + $(INSTALL) -D -m 0644 $(@D)/10-odroid.rules \ + $(TARGET_DIR)/etc/udev/rules.d/10-odroid.rules +endef +endif + +define ODROID_SCRIPTS_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/c2_init.sh $(TARGET_DIR)/usr/sbin/odroidc2_init_fb.sh + $(ODROID_SCRIPTS_INSTALL_UDEV_RULES) +endef + +define ODROID_SCRIPTS_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/amlogic.service \ + $(TARGET_DIR)/usr/lib/systemd/system/odroidc2_fb.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/odroidc2_fb.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/odroidc2_fb.service +endef + +define ODROID_SCRIPTS_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/odroid-scripts/S02odroidc2_fb \ + $(TARGET_DIR)/etc/init.d/S02odroidc2_fb +endef + +$(eval $(generic-package)) diff --git a/package/ofono/ofono.hash b/package/ofono/ofono.hash index 50c92ede65..d61173684d 100644 --- a/package/ofono/ofono.hash +++ b/package/ofono/ofono.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/network/ofono/sha256sums.asc -sha256 cbf20f07fd15253c682b23c1786d517f505c3688f7c4ea93da777e1523b89635 ofono-1.17.tar.xz +sha256 53cdbf342913f46bce4827241c60e24255a3d43a94945edf77482ae5b312d51f ofono-1.18.tar.xz diff --git a/package/ofono/ofono.mk b/package/ofono/ofono.mk index 588c9cd62b..82343963b1 100644 --- a/package/ofono/ofono.mk +++ b/package/ofono/ofono.mk @@ -4,7 +4,7 @@ # ################################################################################ -OFONO_VERSION = 1.17 +OFONO_VERSION = 1.18 OFONO_SOURCE = ofono-$(OFONO_VERSION).tar.xz OFONO_SITE = $(BR2_KERNEL_MIRROR)/linux/network/ofono OFONO_LICENSE = GPLv2 diff --git a/package/ola/0002-Remove-replacing-I-with-isystem.patch b/package/ola/0002-Remove-replacing-I-with-isystem.patch new file mode 100644 index 0000000000..010c99a3bc --- /dev/null +++ b/package/ola/0002-Remove-replacing-I-with-isystem.patch @@ -0,0 +1,106 @@ +From bbb03794def326c2e8ad2de523c5a61a4c8cb464 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Thu, 22 Sep 2016 00:58:58 +0200 +Subject: [PATCH] Remove replacing -I with -isystem +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Building OLA with a GCC 6 cross-toolchain fails: + +``` +/usr/bin/arm-linux-g++ -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE +-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I./include -I./include +-Wall -Wformat -W -isystem +/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include -pthread +-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os +-pthread -c -o libs/acn/e131_transmit_test.o +libs/acn/e131_transmit_test.cpp +/usr/bin/arm-linux-g++ -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE +-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I./include -I./include +-Wall -Wformat -W -isystem +/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include -pthread +-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os +-pthread -c -o libs/acn/E131TestFramework.o +libs/acn/E131TestFramework.cpp +In file included from +/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/ext/string_conversions.h:41:0, + from +/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/bits/basic_string.h:5402, + from +/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/string:52, + from ./tools/ola_trigger/config.ypp:2: +/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/cstdlib:75:25: +fatal error: stdlib.h: No such file or directory + #include_next + ^ +compilation terminated. +``` + +The C++ library in GCC 6 now provides its own `` header that +wraps the C library header of the same name, so in `` the +header include + +``` +#include +``` + +has become + +``` +#include_next +``` + +`#include_next` is sensitive to the order of directories in the +preprocessor's search path, so if that order is changed with `-isystem` +then the compiler can't find the right header: + +``` +[1] /usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include +[2] /opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0 +[..] +End of search list. +``` + +`` is located in [2] whereas `` (C library header) is +in [1]. In this case, the `#include_next ` statement in +``, located in [2], is evaluated **after** the search path [1], +so the compiler does not find the right system header. + +The problem is that the OLA build system replaces the `-I` in the CFLAGS +from libprotobuf with `-isystem` to fix some warnings treated as errors +in the libprotobuf header files. + +`-isystem` should be used to suppress warnings in system headers only +and the libprotobuf header files are not system files. + +The correct fix is to compile with less restrictions and remove +`-Werror` for the build. + +As using `-isystem` is reordering GCCs search path and using `-isystem` +is really not necessary, remove the faulty replacement of `-I`. + +Upstream status: https://github.com/OpenLightingProject/ola/pull/1126 + +Signed-off-by: Jörg Krause +--- + config/ola.m4 | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/config/ola.m4 b/config/ola.m4 +index 2796cfb..d3b8cc8 100644 +--- a/config/ola.m4 ++++ b/config/ola.m4 +@@ -24,9 +24,6 @@ AC_DEFUN([PROTOBUF_SUPPORT], + AC_REQUIRE_CPP() + PKG_CHECK_MODULES(libprotobuf, [protobuf >= $1]) + +-# We want to replace -I with -isystem here to disable errors in the .h files +-# See https://groups.google.com/forum/#!topic/open-lighting/39Mj0KXlCIk +-libprotobuf_CFLAGS=`echo $libprotobuf_CFLAGS | sed 's/-I/-isystem /'` + AC_SUBST([libprotobuf_CFLAGS]) + + AC_ARG_WITH([protoc], +-- +2.10.0 + diff --git a/package/ola/Config.in b/package/ola/Config.in index 55cea65d87..90a92fd2f2 100644 --- a/package/ola/Config.in +++ b/package/ola/Config.in @@ -1,16 +1,15 @@ -comment "ola needs a toolchain w/ C++, threads, wchar, dynamic library" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ - || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "ola needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS -config BR2_PACKAGE_OLA +menuconfig BR2_PACKAGE_OLA bool "ola (open lighting architecture)" select BR2_PACKAGE_PROTOBUF select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_UTIL_LINUX depends on BR2_INSTALL_LIBSTDCPP # protobuf depends on !BR2_STATIC_LIBS # protobuf - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS help @@ -22,10 +21,11 @@ config BR2_PACKAGE_OLA if BR2_PACKAGE_OLA -menu "bindings and interface" +comment "bindings and interface" config BR2_PACKAGE_OLA_WEB bool "http interface" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt, libmicrohttpd select BR2_PACKAGE_LIBMICROHTTPD help Build OLA with browser interface. @@ -42,9 +42,7 @@ config BR2_PACKAGE_OLA_SLP help Build OLA with slp tools. -endmenu - -menu "tests and examples" +comment "tests and examples" config BR2_PACKAGE_OLA_EXAMPLES bool "examples" @@ -55,12 +53,12 @@ config BR2_PACKAGE_OLA_EXAMPLES config BR2_PACKAGE_OLA_RDM_TESTS bool "rdm tests" depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + select BR2_PACKAGE_PYTHON_NUMPY help Build OLA RDM tests. -endmenu - -menu "plugin selections" +comment "plugin selections" config BR2_PACKAGE_OLA_PLUGIN_E131 bool "acn E131" @@ -130,6 +128,4 @@ config BR2_PACKAGE_OLA_PLUGIN_USBPRO help Build UsbPro plugin for OLA. -endmenu - endif diff --git a/package/ola/ola.hash b/package/ola/ola.hash index 628b525280..a791e9caa4 100644 --- a/package/ola/ola.hash +++ b/package/ola/ola.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 74baba18c5b62aba15e27e6b7882c6eac22043c8e7b297e4d2f6eb05dd1a33b0 ola-0.10.0.tar.gz -sha256 32a8a7a00c7db7647710c84ed02611f2eba99669f2de4da7aceae9d4444f53a3 34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch +sha256 986e61874bc80db3b23cf201af2dafa39e3412cc50cddf1cd449c869110bfd27 ola-0.10.2.tar.gz diff --git a/package/ola/ola.mk b/package/ola/ola.mk index a983459aee..cfd66383d8 100644 --- a/package/ola/ola.mk +++ b/package/ola/ola.mk @@ -4,9 +4,8 @@ # ################################################################################ -OLA_VERSION = 0.10.0 -OLA_SITE = $(call github,OpenLightingProject,ola,$(OLA_VERSION)) -OLA_PATCH = https://github.com/OpenLightingProject/ola/commit/34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch +OLA_VERSION = 0.10.2 +OLA_SITE = https://github.com/OpenLightingProject/ola/releases/download/$(OLA_VERSION) OLA_LICENSE = LGPLv2.1+ (libola, libolacommon, Python bindings), GPLv2+ (libolaserver, olad, Python examples and tests) OLA_LICENSE_FILES = LICENCE GPL LGPL OLA_INSTALL_STAGING = YES @@ -40,7 +39,8 @@ HOST_OLA_CONF_OPTS = \ --disable-examples \ --disable-unittests \ --disable-doxygen-html \ - --disable-doxygen-doc + --disable-doxygen-doc \ + --disable-fatal-warnings # On the host side, we only need ola_protoc_plugin, so build and install this # only. @@ -86,6 +86,11 @@ endif ifeq ($(BR2_PACKAGE_OLA_RDM_TESTS),y) OLA_CONF_OPTS += --enable-rdm-tests +OLA_DEPENDENCIES += python-numpy +# needed as numpy builds some shared libraries and ola checks for +# numpy using a host python test program which fails with 'wrong ELF +# class'. +OLA_CONF_ENV = ac_cv_have_pymod_numpy=yes else OLA_CONF_OPTS += --disable-rdm-tests endif diff --git a/package/olsr/Config.in b/package/olsr/Config.in index a49c4e0f10..85c5b4da1f 100644 --- a/package/olsr/Config.in +++ b/package/olsr/Config.in @@ -1,8 +1,11 @@ config BR2_PACKAGE_OLSR - bool "olsrd" + bool "olsr" depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + # doesn't build with musl, + # https://github.com/OLSR/olsrd/issues/6 + depends on !BR2_TOOLCHAIN_USES_MUSL help The Optimized Link State Routing protocol (OLSR) is a routing protocol that is optimised for mobile ad-hoc @@ -13,6 +16,7 @@ config BR2_PACKAGE_OLSR http://www.olsr.org/ -comment "olsr needs a toolchain w/ threads, dynamic library" +comment "olsr needs a uClibc or glibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + BR2_TOOLCHAIN_USES_MUSL diff --git a/package/olsr/olsr.hash b/package/olsr/olsr.hash index e14d52cd9e..c6b14153e3 100644 --- a/package/olsr/olsr.hash +++ b/package/olsr/olsr.hash @@ -1,2 +1,2 @@ -# From http://www.olsr.org/releases/0.9/SHA256SUM-0.9.0.2 -sha256 cc464b29c7740354d815d5faa753fd27c0677d71e8eb42e78abc382996892845 olsrd-0.9.0.2.tar.bz2 +# From http://www.olsr.org/releases/0.9/SHA256SUM-0.9.0.3 +sha256 1f038ed3ea72e4f73dfc9701de83de7313f5049161c8df17b9aaeba8e9711e92 olsrd-0.9.0.3.tar.bz2 diff --git a/package/olsr/olsr.mk b/package/olsr/olsr.mk index 60c80988d0..5a456a953e 100644 --- a/package/olsr/olsr.mk +++ b/package/olsr/olsr.mk @@ -5,7 +5,7 @@ ################################################################################ OLSR_VERSION_MAJOR = 0.9 -OLSR_VERSION = $(OLSR_VERSION_MAJOR).0.2 +OLSR_VERSION = $(OLSR_VERSION_MAJOR).0.3 OLSR_SOURCE = olsrd-$(OLSR_VERSION).tar.bz2 OLSR_SITE = http://www.olsr.org/releases/$(OLSR_VERSION_MAJOR) OLSR_PLUGINS = arprefresh bmf dot_draw dyn_gw dyn_gw_plain httpinfo jsoninfo \ diff --git a/package/omap-u-boot-utils/omap-u-boot-utils.hash b/package/omap-u-boot-utils/omap-u-boot-utils.hash new file mode 100644 index 0000000000..020c4405c9 --- /dev/null +++ b/package/omap-u-boot-utils/omap-u-boot-utils.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 f9c2553efeff1289b2b964a266a0b4a03a377f84a14d0599a779f6e3d7b75d5f omap-u-boot-utils-3f07426cddc0be9e24702e7aacc7574ddd7fba28.tar.gz diff --git a/package/omap-u-boot-utils/omap-u-boot-utils.mk b/package/omap-u-boot-utils/omap-u-boot-utils.mk index 7cfed65088..b8a342bfbd 100644 --- a/package/omap-u-boot-utils/omap-u-boot-utils.mk +++ b/package/omap-u-boot-utils/omap-u-boot-utils.mk @@ -10,7 +10,7 @@ OMAP_U_BOOT_UTILS_LICENSE = GPLv2, GPLv2+ OMAP_U_BOOT_UTILS_LICENSE_FILES = COPYING define HOST_OMAP_U_BOOT_UTILS_BUILD_CMDS - $(MAKE) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) endef define HOST_OMAP_U_BOOT_UTILS_INSTALL_CMDS diff --git a/package/omniorb/0001-fix-unistd-sys-time-includes.patch b/package/omniorb/0001-fix-unistd-sys-time-includes.patch new file mode 100644 index 0000000000..29d917b062 --- /dev/null +++ b/package/omniorb/0001-fix-unistd-sys-time-includes.patch @@ -0,0 +1,61 @@ +omniorb/thread: use proper autoconf macros for header inclusion + +src/lib/omnithread/posix.cc uses sleep() and usleep(), defined in + on numerous platforms, and struct timeval/gettimeofday(), +defined in on various platforms. + +Since those header files are not available on all platforms, posix.cc +currently uses the following condition: + +#if (defined(__GLIBC__) && __GLIBC__ >= 2) || defined(__SCO_VERSION__) || defined(__aix__) || defined (__cygwin__) || defined(__darwin__) || defined(__macos__) + +Unfortunately, this falls short on Linux systems based on the musl C +library. Indeed, the musl C library does not define the __GLIBC__ +symbol, but does have the sleep()/usleep() definitions in , +and the struct timeval/gettimeofday() definitions in , +like any Linux system. Also, the musl C library does not define any +constant like __MUSL__ to distinguish it. + +Due to this, on musl based systems, and are +not included, causing a build failure: + +posix.cc:864:22: error: '::sleep' has not been declared + while ((secs = ::sleep(secs))) ; + ^ +posix.cc:866:43: error: 'usleep' was not declared in this scope + usleep(secs * 1000000 + (nanosecs / 1000)); + ^ +posix.cc: In static member function 'static void omni_thread::get_time(long unsigned int*, long unsigned int*, long unsigned int, long unsigned int)': +posix.cc:904:20: error: aggregate 'omni_thread::get_time(long unsigned int*, long unsigned int*, long unsigned int, long unsigned int)::timeval tv' has incomplete type and cannot be defined + struct timeval tv; + ^ +posix.cc:905:24: error: 'gettimeofday' was not declared in this scope + gettimeofday(&tv, 0); + +It turns out that the configure.ac already checks for the availability +of and . So all what this patch does is use the +C defines generated by the configure script to decide whether + and can be included or not. + +Signed-off-by: Thomas Petazzoni + +Index: b/src/lib/omnithread/posix.cc +=================================================================== +--- a/src/lib/omnithread/posix.cc ++++ b/src/lib/omnithread/posix.cc +@@ -78,10 +78,14 @@ + #include + #include + #include ++#include + +-#if (defined(__GLIBC__) && __GLIBC__ >= 2) || defined(__SCO_VERSION__) || defined(__aix__) || defined (__cygwin__) || defined(__darwin__) || defined(__macos__) + // typedef of struct timeval and gettimeofday(); ++#if defined(HAVE_SYS_TIME_H) + #include ++#endif ++ ++#if defined(HAVE_UNISTD_H) + #include + #endif + diff --git a/package/omxplayer/0001-Makefiles-clean-up-the-cruft.patch b/package/omxplayer/0001-Makefiles-clean-up-the-cruft.patch new file mode 100644 index 0000000000..2dc6166975 --- /dev/null +++ b/package/omxplayer/0001-Makefiles-clean-up-the-cruft.patch @@ -0,0 +1,67 @@ +From 563dafc1129848419482b540d149d0b8687cac1e Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 10 Apr 2016 16:22:53 +0200 +Subject: [PATCH] Makefiles: clean up the cruft + +Most of the variables that Makefile.include tries (but fails) to set, +are already available from Buildroot's variables: + - AR, AS, CC, CXX, OBJDUMP... + - CFLAGS, CXXFLAGS, CPPFLAGS... + +This leaves us with a few select variables that define include and +library paths local to the omxplayer package, plus a few optimisations. + +Finally, also remove hard-coded, absolute paths pointing to the host +system (won't work for cross-compilation, so our paranoid wrapper would +catch those paths). + +Signed-off-by: "Yann E. MORIN" +--- + Makefile | 2 +- + Makefile.include | 20 ++------------------ + 2 files changed, 3 insertions(+), 19 deletions(-) + +diff --git a/Makefile b/Makefile +index bcfadfb..3dc1a03 100644 +--- a/Makefile ++++ b/Makefile +@@ -4,7 +4,7 @@ CFLAGS+=-std=c++0x -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -DTARGET_POSIX + + LDFLAGS+=-L./ -Lffmpeg_compiled/usr/local/lib/ -lc -lWFC -lGLESv2 -lEGL -lbcm_host -lopenmaxil -lfreetype -lz + +-INCLUDES+=-I./ -Ilinux -Iffmpeg_compiled/usr/local/include/ -I /usr/include/dbus-1.0 -I /usr/lib/arm-linux-gnueabihf/dbus-1.0/include ++INCLUDES+=-I./ -Ilinux -Iffmpeg_compiled/usr/local/include/ + + DIST ?= omxplayer-dist + +diff --git a/Makefile.include b/Makefile.include +index 58e9560..79ca277 100644 +--- a/Makefile.include ++++ b/Makefile.include +@@ -20,21 +20,5 @@ endif + + JOBS=7 + +-CFLAGS := -isystem$(PREFIX)/include +-CXXFLAGS := $(CFLAGS) +-CPPFLAGS := $(CFLAGS) +-LDFLAGS := -L$(BUILDROOT)/lib +-LD := $(TOOLCHAIN)/bin/$(HOST)-ld --sysroot=$(SYSROOT) +-CC := $(TOOLCHAIN)/bin/$(HOST)-gcc --sysroot=$(SYSROOT) +-CXX := $(TOOLCHAIN)/bin/$(HOST)-g++ --sysroot=$(SYSROOT) +-OBJDUMP := $(TOOLCHAIN)/bin/$(HOST)-objdump +-RANLIB := $(TOOLCHAIN)/bin/$(HOST)-ranlib +-STRIP := $(TOOLCHAIN)/bin/$(HOST)-strip +-AR := $(TOOLCHAIN)/bin/$(HOST)-ar +-CXXCP := $(CXX) -E +-PATH := $(PREFIX)/bin:$(BUILDROOT)/output/host/usr/bin:$(PATH) +- +-CFLAGS += -pipe -mfloat-abi=$(FLOAT) -mcpu=arm1176jzf-s -fomit-frame-pointer -mabi=aapcs-linux -mtune=arm1176jzf-s -mfpu=vfp -Wno-psabi -mno-apcs-stack-check -g -mstructure-size-boundary=32 -mno-sched-prolog +-LDFLAGS += -L$(SDKSTAGE)/lib -L$(SDKSTAGE)/usr/lib -L$(SDKSTAGE)/opt/vc/lib/ -Lpcre/build +-#INCLUDES += -isystem$(SDKSTAGE)/usr/include -isystem$(SDKSTAGE)/opt/vc/include -isystem$(SYSROOT)/usr/include -isystem$(SDKSTAGE)/opt/vc/include/interface/vcos/pthreads -isystem$(SDKSTAGE)/usr/include/freetype2 +-INCLUDES += -isystem$(SDKSTAGE)/opt/vc/include -isystem$(SYSROOT)/usr/include -isystem$(SDKSTAGE)/opt/vc/include/interface/vcos/pthreads -Ipcre/build -Iboost-trunk -Ifreetype2/include ++CFLAGS += -fomit-frame-pointer -Wno-psabi -mno-apcs-stack-check \ ++ -mstructure-size-boundary=32 -mno-sched-prolog +-- +1.9.1 + diff --git a/package/omxplayer/Config.in b/package/omxplayer/Config.in new file mode 100644 index 0000000000..b417aa3b0b --- /dev/null +++ b/package/omxplayer/Config.in @@ -0,0 +1,33 @@ +config BR2_PACKAGE_OMXPLAYER + bool "omxplayer" + depends on BR2_arm + depends on BR2_USE_MMU # dbus + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS # ffmpeg + depends on BR2_INSTALL_LIBSTDCPP # boost + depends on BR2_TOOLCHAIN_HAS_THREADS # boost, libusb + depends on BR2_USE_WCHAR # boost + depends on BR2_PACKAGE_RPI_USERLAND + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_DBUS + select BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_FFMPEG_AVRESAMPLE + select BR2_PACKAGE_FFMPEG_SWSCALE + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_LIBIDN + select BR2_PACKAGE_LIBUSB + select BR2_PACKAGE_PCRE + select BR2_PACKAGE_ZLIB + help + OMXPlayer is a commandline OMX player for the Raspberry Pi. It was + developed as a testbed for the XBMC Raspberry PI implementation + and is quite handy to use standalone. + + https://github.com/popcornmix/omxplayer + +comment "omxplayer needs rpi-userland and a toolchain w/ C++, threads, wchar, dynamic library" + depends on BR2_arm + depends on BR2_USE_MMU + depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS + depends on !BR2_PACKAGE_RPI_USERLAND + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_USE_WCHAR || BR2_STATIC_LIBS diff --git a/package/omxplayer/omxplayer.hash b/package/omxplayer/omxplayer.hash new file mode 100644 index 0000000000..4ee215b767 --- /dev/null +++ b/package/omxplayer/omxplayer.hash @@ -0,0 +1,3 @@ +# Locally computed +sha1 23eb444757e445c127a7114ae233569cac64f984 omxplayer-6c90c7503ba4658221774759edf7f2ae816711de.tar.gz +sha256 93ebfd654314231749936e4fc09f5ec4a361806cdb640d7579a5106921e00299 omxplayer-6c90c7503ba4658221774759edf7f2ae816711de.tar.gz diff --git a/package/omxplayer/omxplayer.mk b/package/omxplayer/omxplayer.mk new file mode 100644 index 0000000000..da4614bf56 --- /dev/null +++ b/package/omxplayer/omxplayer.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# omxplayer +# +################################################################################ + +OMXPLAYER_VERSION = 6c90c7503ba4658221774759edf7f2ae816711de +OMXPLAYER_SITE = $(call github,popcornmix,omxplayer,$(OMXPLAYER_VERSION)) +OMXPLAYER_LICENSE = GPLv2+ +OMXPLAYER_LICENSE_FILES = COPYING + +OMXPLAYER_DEPENDENCIES = \ + host-pkgconf boost dbus ffmpeg freetype libidn libusb pcre \ + rpi-userland zlib + +OMXPLAYER_EXTRA_CFLAGS = \ + -DTARGET_LINUX -DTARGET_POSIX \ + `$(PKG_CONFIG_HOST_BINARY) --cflags bcm_host` \ + `$(PKG_CONFIG_HOST_BINARY) --cflags freetype2` \ + `$(PKG_CONFIG_HOST_BINARY) --cflags dbus-1` + +# OMXplayer has support for building in Buildroot, but that +# procedure is, well, tainted. Fix this by forcing the real, +# correct values. +OMXPLAYER_MAKE_ENV = \ + USE_BUILDROOT=1 \ + BUILDROOT=$(TOP_DIR) \ + SDKSTAGE=$(STAGING_DIR) \ + TARGETFS=$(TARGET_DIR) \ + TOOLCHAIN=$(HOST_DIR)/usr \ + HOST=$(GNU_TARGET_NAME) \ + SYSROOT=$(STAGING_DIR) \ + JOBS=$(PARALLEL_JOBS) \ + $(TARGET_CONFIGURE_OPTS) \ + STRIP=true \ + CFLAGS="$(TARGET_CFLAGS) $(OMXPLAYER_EXTRA_CFLAGS)" + +define OMXPLAYER_BUILD_CMDS + $(OMXPLAYER_MAKE_ENV) $(MAKE) -C $(@D) omxplayer.bin +endef + +define OMXPLAYER_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/omxplayer.bin $(TARGET_DIR)/usr/bin/omxplayer +endef + +$(eval $(generic-package)) diff --git a/package/on2-8170-libs/Config.in b/package/on2-8170-libs/Config.in index 36f0b5c28b..40cad3d00c 100644 --- a/package/on2-8170-libs/Config.in +++ b/package/on2-8170-libs/Config.in @@ -10,6 +10,6 @@ config BR2_PACKAGE_ON2_8170_LIBS http://www.at91.com/linux4sam/bin/view/Linux4SAM/SAM9M10Gstreamer -comment "on2-8170-libs needs an (e)glibc toolchain and a Linux kernel to be built" +comment "on2-8170-libs needs a glibc toolchain and a Linux kernel to be built" depends on BR2_arm926t depends on !BR2_LINUX_KERNEL || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/on2-8170-libs/on2-8170-libs.hash b/package/on2-8170-libs/on2-8170-libs.hash new file mode 100644 index 0000000000..c8b76e5794 --- /dev/null +++ b/package/on2-8170-libs/on2-8170-libs.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 db7390a13e7c0426894a6f966ecde1f89e6566416088c50729750e800306a2de on2-8170-libs-1.0.tar.gz diff --git a/package/on2-8170-libs/on2-8170-libs.mk b/package/on2-8170-libs/on2-8170-libs.mk index db68f021fa..ad321d832f 100644 --- a/package/on2-8170-libs/on2-8170-libs.mk +++ b/package/on2-8170-libs/on2-8170-libs.mk @@ -7,7 +7,7 @@ ON2_8170_LIBS_VERSION = 1.0 ON2_8170_LIBS_SITE = ftp://ftp.linux4sam.org/pub/demo/linux4sam_1.9/codec -ON2_8170_LICENSE = PROPRIETARY +ON2_8170_LIBS_LICENSE = PROPRIETARY # No license file is included in the archive ON2_8170_LIBS_INSTALL_STAGING = YES diff --git a/package/on2-8170-modules/on2-8170-modules.hash b/package/on2-8170-modules/on2-8170-modules.hash new file mode 100644 index 0000000000..cfb1272dd3 --- /dev/null +++ b/package/on2-8170-modules/on2-8170-modules.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d04d3acb8755281f6721d2a2efe04014060f83f38972208f356a486d52ca8bfc on2-8170-modules-73b08061d30789178e692bc332b73d1d9922bf39.tar.gz diff --git a/package/open-plc-utils/open-plc-utils.hash b/package/open-plc-utils/open-plc-utils.hash new file mode 100644 index 0000000000..a76630df96 --- /dev/null +++ b/package/open-plc-utils/open-plc-utils.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 00cd7f71e03849b1d6a96ec040351b819481e2f420cfb246f0b0f02cde73e098 open-plc-utils-1be781d1ea81827e5f6c1a35961c65dd4d15472c.tar.gz diff --git a/package/open-plc-utils/open-plc-utils.mk b/package/open-plc-utils/open-plc-utils.mk index a674372454..67c8d7dc8a 100644 --- a/package/open-plc-utils/open-plc-utils.mk +++ b/package/open-plc-utils/open-plc-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPEN_PLC_UTILS_VERSION = 05ef40c0a2949cfaf1c3230e10679fbcf912d174 +OPEN_PLC_UTILS_VERSION = 1be781d1ea81827e5f6c1a35961c65dd4d15472c OPEN_PLC_UTILS_SITE = $(call github,qca,open-plc-utils,$(OPEN_PLC_UTILS_VERSION)) OPEN_PLC_UTILS_LICENSE = BSD-3c OPEN_PLC_UTILS_LICENSE_FILES = LICENSE diff --git a/package/open2300/open2300.mk b/package/open2300/open2300.mk index 73db2a0023..588692d44f 100644 --- a/package/open2300/open2300.mk +++ b/package/open2300/open2300.mk @@ -21,10 +21,14 @@ OPEN2300_DEPENDENCIES += mysql OPEN2300_BINS += mysql2300 mysqlhistlog2300 OPEN2300_CFLAGS += -I$(STAGING_DIR)/usr/include/mysql OPEN2300_LDFLAGS += -L$(STAGING_DIR)/usr/lib/mysql -lmysqlclient +ifeq ($(BR2_STATIC_LIBS),y) +# mysql needs -lz, so we need to specify it for static builds +OPEN2300_LDFLAGS += -lz +endif endif define OPEN2300_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" \ CFLAGS="$(OPEN2300_CFLAGS)" CC_LDFLAGS="$(OPEN2300_LDFLAGS)" \ -C $(@D) $(OPEN2300_BINS) endef diff --git a/package/openal/openal.hash b/package/openal/openal.hash index 260f1b7807..45f1421da0 100644 --- a/package/openal/openal.hash +++ b/package/openal/openal.hash @@ -1,2 +1,6 @@ # Locally calculated sha256 a341f8542f1f0b8c65241a17da13d073f18ec06658e1a1606a8ecc8bbc2b3314 openal-soft-1.17.2.tar.bz2 +sha256 9c9040269376aba77b1277bbae0f055aee535e14ad4a3ab4e66e39830504e83f 27916ce3db023454a0295ee63ea196fbc246674c.patch +sha256 4621f6b79d4bbac5ce423f227c92ad1e4f833d7e1f2ff1cc3b5f03721f75b933 a52cfc804813aef8e4b304e20cf843fa6907af6c.patch +sha256 f442da31b4001a5133f2762a5bc1e780b11d5e2d9f21b257f54695ee6d87d997 c3c283a0b5d0130afafaa2a5b6ce6fbc30b6e6a1.patch +sha256 3691c1a327b87d5fb487841459fd00d3baaa79808ecb5e3b33b349363663640f 46b3e1d08ca10e809eb2e20b6371812958b97e1f.patch diff --git a/package/openal/openal.mk b/package/openal/openal.mk index 2916aa607f..63841047db 100644 --- a/package/openal/openal.mk +++ b/package/openal/openal.mk @@ -7,12 +7,17 @@ OPENAL_VERSION = 1.17.2 OPENAL_SOURCE = openal-soft-$(OPENAL_VERSION).tar.bz2 OPENAL_SITE = http://kcat.strangesoft.net/openal-releases +OPENAL_PATCH = \ + https://github.com/kcat/openal-soft/commit/27916ce3db023454a0295ee63ea196fbc246674c.patch \ + https://github.com/kcat/openal-soft/commit/a52cfc804813aef8e4b304e20cf843fa6907af6c.patch \ + https://github.com/kcat/openal-soft/commit/c3c283a0b5d0130afafaa2a5b6ce6fbc30b6e6a1.patch \ + https://github.com/kcat/openal-soft/commit/46b3e1d08ca10e809eb2e20b6371812958b97e1f.patch OPENAL_LICENSE = LGPLv2+ OPENAL_LICENSE_FILES = COPYING OPENAL_INSTALL_STAGING = YES -# We don't need the utilities, Distros don't ship them either -OPENAL_CONF_OPTS += -DALSOFT_UTILS=OFF +# We don't need examples, tests and utilities, Distros don't ship them either +OPENAL_CONF_OPTS += -DALSOFT_UTILS=OFF -DALSOFT_EXAMPLES=OFF -DALSOFT_TESTS=OFF ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),y) OPENAL_CONF_OPTS += -DEXTRA_LIBS=atomic diff --git a/package/openblas/0001-Complete-support-for-MIPS-n32-ABI.patch b/package/openblas/0001-Complete-support-for-MIPS-n32-ABI.patch new file mode 100644 index 0000000000..6e6c5a68bc --- /dev/null +++ b/package/openblas/0001-Complete-support-for-MIPS-n32-ABI.patch @@ -0,0 +1,116 @@ +From 7f28cd1f88145a701e5dbbf50558bb65fce79f61 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Thu, 14 Jul 2016 17:20:51 +0100 +Subject: [PATCH] Complete support for MIPS n32 ABI + +Pull request: https://github.com/xianyi/OpenBLAS/pull/926 + +Signed-off-by: Vicente Olivert Riera +--- + Makefile.system | 27 +++++++++------------------ + c_check | 9 +++++++-- + f_check | 7 ++++++- + 3 files changed, 22 insertions(+), 21 deletions(-) + +diff --git a/Makefile.system b/Makefile.system +index 24a7a64..bbcdb82 100644 +--- a/Makefile.system ++++ b/Makefile.system +@@ -502,13 +502,16 @@ endif + + ifdef NO_BINARY_MODE + +-ifeq ($(ARCH), $(filter $(ARCH),mips64 mips)) ++ifeq ($(ARCH), $(filter $(ARCH),mips64)) + ifdef BINARY64 + CCOMMON_OPT += -mabi=64 + else +-CCOMMON_OPT += -mabi=32 ++CCOMMON_OPT += -mabi=n32 + endif + BINARY_DEFINED = 1 ++else ifeq ($(ARCH), $(filter $(ARCH),mips)) ++CCOMMON_OPT += -mabi=32 ++BINARY_DEFINED = 1 + endif + + ifeq ($(CORE), LOONGSON3A) +@@ -599,12 +602,14 @@ ifneq ($(NO_LAPACK), 1) + EXTRALIB += -lgfortran + endif + ifdef NO_BINARY_MODE +-ifeq ($(ARCH), $(filter $(ARCH),mips64 mips)) ++ifeq ($(ARCH), $(filter $(ARCH),mips64)) + ifdef BINARY64 + FCOMMON_OPT += -mabi=64 + else +-FCOMMON_OPT += -mabi=32 ++FCOMMON_OPT += -mabi=n32 + endif ++else ifeq ($(ARCH), $(filter $(ARCH),mips)) ++FCOMMON_OPT += -mabi=32 + endif + else + ifdef BINARY64 +@@ -688,20 +693,6 @@ endif + endif + endif + +-ifeq ($(filter $(ARCH),mips64 mips)) +-ifndef BINARY64 +-FCOMMON_OPT += -m32 +-else +-FCOMMON_OPT += -m64 +-endif +-else +-ifdef BINARY64 +-FCOMMON_OPT += -mabi=64 +-else +-FCOMMON_OPT += -mabi=32 +-endif +-endif +- + ifeq ($(USE_OPENMP), 1) + FCOMMON_OPT += -mp + endif +diff --git a/c_check b/c_check +index 50ff360..9f457df 100644 +--- a/c_check ++++ b/c_check +@@ -79,8 +79,13 @@ if ($os eq "AIX") { + $defined = 1; + } + +-if (($architecture eq "mips") || ($architecture eq "mips64")) { +- $compiler_name .= " -mabi=32" if ($binary eq "32"); ++if ($architecture eq "mips") { ++ $compiler_name .= " -mabi=32"; ++ $defined = 1; ++} ++ ++if ($architecture eq "mips64") { ++ $compiler_name .= " -mabi=n32" if ($binary eq "32"); + $compiler_name .= " -mabi=64" if ($binary eq "64"); + $defined = 1; + } +diff --git a/f_check b/f_check +index 4c03ac7..3520e8b 100644 +--- a/f_check ++++ b/f_check +@@ -223,7 +223,12 @@ if (!$?) { + } + #For gfortran MIPS + if ($?) { +- $link = `$compiler $openmp -mabi=32 -v ftest2.f 2>&1 && rm -f a.out a.exe`; ++ $mips_data = `$compiler_bin -E -dM - < /dev/null`; ++ if ($mips_data =~ /_MIPS_ISA_MIPS64/) { ++ $link = `$compiler $openmp -mabi=n32 -v ftest2.f 2>&1 && rm -f a.out a.exe`; ++ } else { ++ $link = `$compiler $openmp -mabi=32 -v ftest2.f 2>&1 && rm -f a.out a.exe`; ++ } + } + $binary = "" if ($?); + } +-- +2.7.3 + diff --git a/package/openblas/0002-Makefile.arm-remove-march-flags.patch b/package/openblas/0002-Makefile.arm-remove-march-flags.patch new file mode 100644 index 0000000000..39058f7dfc --- /dev/null +++ b/package/openblas/0002-Makefile.arm-remove-march-flags.patch @@ -0,0 +1,73 @@ +From 71b9e9b7f080c464777d07bd1a917a1c449d2ef8 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Aug 2016 23:20:00 +0200 +Subject: [PATCH] Makefile.arm: remove -march flags + +The provided -march flags, especially for ARMv5 and ARMv6 may not +necessarily match the needed ones: for ARMv5, it might be armv5, +armv5te, armv5t, etc. If the wrong one is used, the incorrect toolchain +sysroot can be used in a multilib toolchain. + +Therefore, let the user building OpenBLAS pass the appropriate -march +flag. + +The other flags, such as -mfpu=vfp or -mfloat-abi=hard are kept, as they +are actually required for the build to proceed (OpenBLAS uses VFP +instructions, and assume an EABIhf ABI). + +Signed-off-by: Thomas Petazzoni +--- + Makefile.arm | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/Makefile.arm b/Makefile.arm +index 62bf275..c0d6ab8 100644 +--- a/Makefile.arm ++++ b/Makefile.arm +@@ -1,31 +1,31 @@ + # ifeq logical or + ifeq ($(CORE), $(filter $(CORE),CORTEXA9 CORTEXA15)) + ifeq ($(OSNAME), Android) +-CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a +-FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a ++CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard ++FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard + else +-CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a +-FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a ++CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard ++FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard + endif + endif + + ifeq ($(CORE), ARMV7) + ifeq ($(OSNAME), Android) +-CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a -Wl,--no-warn-mismatch +-FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -march=armv7-a -Wl,--no-warn-mismatch ++CCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -Wl,--no-warn-mismatch ++FCOMMON_OPT += -marm -mfpu=neon -mfloat-abi=hard -Wl,--no-warn-mismatch + else +-CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a +-FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard -march=armv7-a ++CCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard ++FCOMMON_OPT += -marm -mfpu=vfpv3 -mfloat-abi=hard + endif + endif + + ifeq ($(CORE), ARMV6) +-CCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard -march=armv6 +-FCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard -march=armv6 ++CCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard ++FCOMMON_OPT += -marm -mfpu=vfp -mfloat-abi=hard + endif + + + ifeq ($(CORE), ARMV5) +-CCOMMON_OPT += -marm -march=armv5 +-FCOMMON_OPT += -marm -march=armv5 ++CCOMMON_OPT += -marm ++FCOMMON_OPT += -marm + endif +-- +2.7.4 + diff --git a/package/openblas/Config.in b/package/openblas/Config.in new file mode 100644 index 0000000000..de26ab3b73 --- /dev/null +++ b/package/openblas/Config.in @@ -0,0 +1,75 @@ +config BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET + string + default "P2" if BR2_x86_pentium2 + default "KATMAI" if BR2_x86_pentium3 + default "NORTHWOOD" if BR2_x86_pentium4 + default "PRESCOTT" if BR2_x86_prescott + default "BANIAS" if BR2_x86_pentium_m + default "CORE2" if BR2_x86_core2 + default "NEHALEM" if BR2_x86_corei7 + default "SANDYBRIDGE" if BR2_x86_corei7_avx + default "HASWELL" if BR2_x86_core_avx2 + default "ATOM" if BR2_x86_atom + default "ATHLON" if BR2_x86_athlon || BR2_x86_athlon_4 + default "OPTERON" if BR2_x86_opteron + default "OPTERON_SSE3" if BR2_x86_opteron_sse3 + default "BARCELONA" if BR2_x86_barcelona + default "STEAMROLLER" if BR2_x86_steamroller + default "VIAC3" if BR2_x86_c3 || BR2_x86_c32 + default "SSE_GENERIC" if BR2_X86_CPU_HAS_SSE + default "POWER4" if BR2_powerpc_power4 + default "POWER5" if BR2_powerpc_power5 + default "POWER6" if BR2_powerpc_power6 + default "POWER7" if BR2_powerpc_power7 + default "POWER8" if BR2_powerpc_power8 + default "PPCG4" if BR2_powerpc_7400 || BR2_powerpc_7450 + default "PPC970" if BR2_powerpc_970 + default "PPC440" if BR2_powerpc_440 + default "PPC440FP2" if BR2_powerpc_440fp + # P5600 is built with MSA support which is only available in Codescape toolchains + default "P5600" if BR2_mips_p5600 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS + default "SICORTEX" if BR2_MIPS_CPU_MIPS64 + # I6400 is built with MSA support which is only available in Codescape toolchains + default "I6400" if BR2_mips_i6400 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + default "SPARC" if BR2_sparc + # Cortex-A15 always have a VFPv4 + default "CORTEXA15" if (BR2_cortex_a15 && BR2_ARM_EABIHF) + # Cortex-A9 have an optional VFPv3, so we need to make sure it + # is available + default "CORTEXA9" if (BR2_cortex_a9 && BR2_ARM_EABIHF && \ + BR2_ARM_CPU_HAS_VFPV3) + default "ARMV5" if BR2_ARM_CPU_ARMV5 + # On ARMv6, OpenBLAS assumes that a VFP is available, and + # EABIhf is used + default "ARMV6" if (BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF && \ + BR2_ARM_CPU_HAS_VFPV2) + # On ARMv7, OpenBLAS assumes that a full VFPv3+ is available + # (and not the more limited D16 variant), and that EABIhf is + # used. + default "ARMV7" if (BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF && \ + BR2_ARM_CPU_HAS_VFPV3) + default "ARMV8" if BR2_aarch64 || BR2_aarch64_be + help + OpenBLAS target CPU. See TargetList.txt in the source tree for + the possible target strings. A possible value is set + automatically based on your Target Architecture Variant. + +config BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS + bool + default y if BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET != "" + +config BR2_PACKAGE_OPENBLAS + bool "openblas" + depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS + help + An optimized BLAS library based on GotoBLAS2 1.13 BSD version. + + https://www.openblas.net/ + +if BR2_PACKAGE_OPENBLAS + +config BR2_PACKAGE_OPENBLAS_TARGET + string "OpenBLAS target CPU" + default BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET + +endif diff --git a/package/openblas/openblas.hash b/package/openblas/openblas.hash new file mode 100644 index 0000000000..b402cac522 --- /dev/null +++ b/package/openblas/openblas.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2ad0270a39dbaf891b439baacf198ea4ab149cd6ed39a5f50c494723f1936be5 openblas-f04af36ad0e85b64f12a7c38095383192cc52345.tar.gz diff --git a/package/openblas/openblas.mk b/package/openblas/openblas.mk new file mode 100644 index 0000000000..a26e10a43c --- /dev/null +++ b/package/openblas/openblas.mk @@ -0,0 +1,72 @@ +################################################################################ +# +# openblas +# +################################################################################ + +OPENBLAS_VERSION = f04af36ad0e85b64f12a7c38095383192cc52345 +OPENBLAS_SITE = $(call github,xianyi,OpenBLAS,$(OPENBLAS_VERSION)) +OPENBLAS_LICENSE = BSD-3c +OPENBLAS_LICENSE_FILES = LICENSE +OPENBLAS_INSTALL_STAGING = YES + +# Initialise OpenBLAS make options to $(TARGET_CONFIGURE_OPTS) +OPENBLAS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) + +# Enable cross-compiling +OPENBLAS_MAKE_OPTS += CROSS=1 + +# Set OpenBLAS target +OPENBLAS_MAKE_OPTS += TARGET=$(BR2_PACKAGE_OPENBLAS_TARGET) + +# When Fortran is not available, only build the C version of BLAS +ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),) +OPENBLAS_MAKE_OPTS += ONLY_CBLAS=1 +endif + +# Enable/Disable multi-threading (not for static-only since it uses dlfcn.h) +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS):$(BR2_STATIC_LIBS),y:) +OPENBLAS_MAKE_OPTS += USE_THREAD=1 +else +OPENBLAS_MAKE_OPTS += USE_THREAD=0 +endif + +# We don't know if OpenMP is available or not, so disable +OPENBLAS_MAKE_OPTS += USE_OPENMP=0 + +# Static-only/Shared-only toggle +ifeq ($(BR2_STATIC_LIBS),y) +OPENBLAS_MAKE_OPTS += NO_SHARED=1 +else ifeq ($(BR2_SHARED_LIBS),y) +OPENBLAS_MAKE_OPTS += NO_STATIC=1 +endif + +# binutils version <= 2.23.2 has a bug +# (https://sourceware.org/bugzilla/show_bug.cgi?id=14887) where +# whitespaces in ARM register specifications such as [ r1, #12 ] or [ +# r2 ] cause the assembler to reject the code. Since there are +# numerous instances of such cases in the code, we use sed rather than +# a patch. We simply replace [ foobar ] by [foobar] to work around the +# problem. +define OPENBLAS_FIXUP_ARM_ASSEMBLY + $(SED) 's%\[\s*%\[%;s%\s*\]%\]%' $(@D)/kernel/arm/*.S +endef + +OPENBLAS_POST_PATCH_HOOKS += OPENBLAS_FIXUP_ARM_ASSEMBLY + +define OPENBLAS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \ + -C $(@D) +endef + +define OPENBLAS_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \ + -C $(@D) install PREFIX=$(STAGING_DIR)/usr +endef + +define OPENBLAS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENBLAS_MAKE_OPTS) \ + -C $(@D) install PREFIX=$(TARGET_DIR)/usr +endef + +$(eval $(generic-package)) diff --git a/package/opencv/0002-atomic.patch b/package/opencv/0001-atomic.patch similarity index 57% rename from package/opencv/0002-atomic.patch rename to package/opencv/0001-atomic.patch index bbe8d433cf..8c9724d25e 100644 --- a/package/opencv/0002-atomic.patch +++ b/package/opencv/0001-atomic.patch @@ -1,5 +1,8 @@ -Bug#714923: opencv FTBFS on sparc64 -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714923 +From f71c288c6d853e623461f97cd72e6a9e6541f61a Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Tue, 1 Nov 2016 09:25:30 +0100 +Subject: [PATCH 1/4] Bug#714923: opencv FTBFS on sparc64 + https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714923 opencv uses functions from , but it wrongly assumes this functions apply to an int type. While it is true for some @@ -7,11 +10,26 @@ architectures, some architectures are using a long type there. The correct type to use is _Atomic_word. Signed-off-by: Waldemar Brodkorb +[Samuel Martin: convert to git diff] +Signed-off-by: Samuel Martin +--- + modules/core/include/opencv2/core/core.hpp | 10 +++++----- + modules/core/include/opencv2/core/gpumat.hpp | 2 +- + modules/core/include/opencv2/core/operations.hpp | 4 ++-- + modules/core/src/gpumat.cpp | 2 +- + modules/core/src/matrix.cpp | 4 ++-- + modules/core/src/system.cpp | 8 ++++---- + modules/gpu/include/opencv2/gpu/gpu.hpp | 2 +- + modules/ocl/include/opencv2/ocl/ocl.hpp | 2 +- + modules/ocl/src/matrix_operations.cpp | 2 +- + modules/python/src2/cv2.cpp | 8 ++++---- + 10 files changed, 22 insertions(+), 22 deletions(-) -diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp opencv-2.4.12.3/modules/core/include/opencv2/core/core.hpp ---- opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/include/opencv2/core/core.hpp 2016-04-03 00:10:50.455774144 +0200 -@@ -1290,7 +1290,7 @@ +diff --git a/modules/core/include/opencv2/core/core.hpp b/modules/core/include/opencv2/core/core.hpp +index 591d50a..5b4261e 100644 +--- a/modules/core/include/opencv2/core/core.hpp ++++ b/modules/core/include/opencv2/core/core.hpp +@@ -1290,7 +1290,7 @@ public: operator const _Tp*() const; _Tp* obj; //< the object pointer. @@ -20,7 +38,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp opencv }; template -@@ -1490,9 +1490,9 @@ +@@ -1490,9 +1490,9 @@ class CV_EXPORTS MatAllocator public: MatAllocator() {} virtual ~MatAllocator() {} @@ -32,7 +50,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp opencv }; /*! -@@ -1985,7 +1985,7 @@ +@@ -1985,7 +1985,7 @@ public: //! pointer to the reference counter; // when matrix points to user-allocated data, the pointer is NULL @@ -41,7 +59,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp opencv //! helper fields used in locateROI and adjustROI uchar* datastart; -@@ -3408,7 +3408,7 @@ +@@ -3449,7 +3449,7 @@ public: { Hdr(int _dims, const int* _sizes, int _type); void clear(); @@ -50,10 +68,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/core.hpp opencv int dims; int valueOffset; size_t nodeSize; -diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/gpumat.hpp opencv-2.4.12.3/modules/core/include/opencv2/core/gpumat.hpp ---- opencv-2.4.12.3.orig/modules/core/include/opencv2/core/gpumat.hpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/include/opencv2/core/gpumat.hpp 2016-04-02 23:08:58.116874218 +0200 -@@ -301,7 +301,7 @@ +diff --git a/modules/core/include/opencv2/core/gpumat.hpp b/modules/core/include/opencv2/core/gpumat.hpp +index 68647d9..d488c27 100644 +--- a/modules/core/include/opencv2/core/gpumat.hpp ++++ b/modules/core/include/opencv2/core/gpumat.hpp +@@ -301,7 +301,7 @@ namespace cv { namespace gpu //! pointer to the reference counter; // when GpuMatrix points to user-allocated data, the pointer is NULL @@ -62,10 +81,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/gpumat.hpp open //! helper fields used in locateROI and adjustROI uchar* datastart; -diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/operations.hpp opencv-2.4.12.3/modules/core/include/opencv2/core/operations.hpp ---- opencv-2.4.12.3.orig/modules/core/include/opencv2/core/operations.hpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/include/opencv2/core/operations.hpp 2016-04-02 23:12:59.148385306 +0200 -@@ -2589,7 +2589,7 @@ +diff --git a/modules/core/include/opencv2/core/operations.hpp b/modules/core/include/opencv2/core/operations.hpp +index 0ae51c6..a455502 100644 +--- a/modules/core/include/opencv2/core/operations.hpp ++++ b/modules/core/include/opencv2/core/operations.hpp +@@ -2589,7 +2589,7 @@ template inline Ptr<_Tp>::Ptr(_Tp* _obj) : obj(_obj) { if(obj) { @@ -74,7 +94,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/operations.hpp *refcount = 1; } else -@@ -2628,7 +2628,7 @@ +@@ -2628,7 +2628,7 @@ template inline Ptr<_Tp>& Ptr<_Tp>::operator = (const Ptr<_Tp>& _p { if (this != &_ptr) { @@ -83,10 +103,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/include/opencv2/core/operations.hpp if( _refcount ) CV_XADD(_refcount, 1); release(); -diff -Nur opencv-2.4.12.3.orig/modules/core/src/gpumat.cpp opencv-2.4.12.3/modules/core/src/gpumat.cpp ---- opencv-2.4.12.3.orig/modules/core/src/gpumat.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/src/gpumat.cpp 2016-04-02 23:14:38.894804300 +0200 -@@ -716,7 +716,7 @@ +diff --git a/modules/core/src/gpumat.cpp b/modules/core/src/gpumat.cpp +index 9669191..0bd2568 100644 +--- a/modules/core/src/gpumat.cpp ++++ b/modules/core/src/gpumat.cpp +@@ -716,7 +716,7 @@ void cv::gpu::GpuMat::create(int _rows, int _cols, int _type) datastart = data = static_cast(devPtr); dataend = data + nettosize; @@ -95,10 +116,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/gpumat.cpp opencv-2.4.12.3/modul *refcount = 1; } } -diff -Nur opencv-2.4.12.3.orig/modules/core/src/matrix.cpp opencv-2.4.12.3/modules/core/src/matrix.cpp ---- opencv-2.4.12.3.orig/modules/core/src/matrix.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/src/matrix.cpp 2016-04-02 23:59:53.405491031 +0200 -@@ -213,7 +213,7 @@ +diff --git a/modules/core/src/matrix.cpp b/modules/core/src/matrix.cpp +index 57abffc..7b840a0 100644 +--- a/modules/core/src/matrix.cpp ++++ b/modules/core/src/matrix.cpp +@@ -213,7 +213,7 @@ void Mat::create(int d, const int* _sizes, int _type) { size_t totalsize = alignSize(step.p[0]*size.p[0], (int)sizeof(*refcount)); data = datastart = (uchar*)fastMalloc(totalsize + (int)sizeof(*refcount)); @@ -107,7 +129,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/matrix.cpp opencv-2.4.12.3/modul *refcount = 1; } else -@@ -228,7 +228,7 @@ +@@ -228,7 +228,7 @@ void Mat::create(int d, const int* _sizes, int _type) allocator = 0; size_t totalSize = alignSize(step.p[0]*size.p[0], (int)sizeof(*refcount)); data = datastart = (uchar*)fastMalloc(totalSize + (int)sizeof(*refcount)); @@ -116,10 +138,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/matrix.cpp opencv-2.4.12.3/modul *refcount = 1; } #else -diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modules/core/src/system.cpp ---- opencv-2.4.12.3.orig/modules/core/src/system.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/src/system.cpp 2016-04-02 23:33:19.298905578 +0200 -@@ -892,7 +892,7 @@ +diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp +index f5a1af2..9a7b262 100644 +--- a/modules/core/src/system.cpp ++++ b/modules/core/src/system.cpp +@@ -892,7 +892,7 @@ struct Mutex::Impl void unlock() { LeaveCriticalSection(&cs); } CRITICAL_SECTION cs; @@ -128,7 +151,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modul }; #ifndef __GNUC__ -@@ -920,7 +920,7 @@ +@@ -920,7 +920,7 @@ struct Mutex::Impl void unlock() { OSSpinLockUnlock(&sl); } OSSpinLock sl; @@ -137,7 +160,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modul }; #elif defined __linux__ && !defined ANDROID && !defined __LINUXTHREADS_OLD__ -@@ -935,7 +935,7 @@ +@@ -935,7 +935,7 @@ struct Mutex::Impl void unlock() { pthread_spin_unlock(&sl); } pthread_spinlock_t sl; @@ -146,7 +169,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modul }; #else -@@ -950,7 +950,7 @@ +@@ -950,7 +950,7 @@ struct Mutex::Impl void unlock() { pthread_mutex_unlock(&sl); } pthread_mutex_t sl; @@ -155,10 +178,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modul }; #endif -diff -Nur opencv-2.4.12.3.orig/modules/gpu/include/opencv2/gpu/gpu.hpp opencv-2.4.12.3/modules/gpu/include/opencv2/gpu/gpu.hpp ---- opencv-2.4.12.3.orig/modules/gpu/include/opencv2/gpu/gpu.hpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/gpu/include/opencv2/gpu/gpu.hpp 2016-04-02 23:16:19.737293785 +0200 -@@ -125,7 +125,7 @@ +diff --git a/modules/gpu/include/opencv2/gpu/gpu.hpp b/modules/gpu/include/opencv2/gpu/gpu.hpp +index de16982..266fa2f 100644 +--- a/modules/gpu/include/opencv2/gpu/gpu.hpp ++++ b/modules/gpu/include/opencv2/gpu/gpu.hpp +@@ -125,7 +125,7 @@ public: size_t step; uchar* data; @@ -167,10 +191,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/gpu/include/opencv2/gpu/gpu.hpp opencv-2. uchar* datastart; uchar* dataend; -diff -Nur opencv-2.4.12.3.orig/modules/ocl/include/opencv2/ocl/ocl.hpp opencv-2.4.12.3/modules/ocl/include/opencv2/ocl/ocl.hpp ---- opencv-2.4.12.3.orig/modules/ocl/include/opencv2/ocl/ocl.hpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/ocl/include/opencv2/ocl/ocl.hpp 2016-04-02 23:18:55.715331443 +0200 -@@ -404,7 +404,7 @@ +diff --git a/modules/ocl/include/opencv2/ocl/ocl.hpp b/modules/ocl/include/opencv2/ocl/ocl.hpp +index e8eb3e8..5ea05fc 100644 +--- a/modules/ocl/include/opencv2/ocl/ocl.hpp ++++ b/modules/ocl/include/opencv2/ocl/ocl.hpp +@@ -404,7 +404,7 @@ namespace cv //! pointer to the reference counter; // when oclMatrix points to user-allocated data, the pointer is NULL @@ -179,10 +204,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/ocl/include/opencv2/ocl/ocl.hpp opencv-2. //! helper fields used in locateROI and adjustROI //datastart and dataend are not used in current version -diff -Nur opencv-2.4.12.3.orig/modules/ocl/src/matrix_operations.cpp opencv-2.4.12.3/modules/ocl/src/matrix_operations.cpp ---- opencv-2.4.12.3.orig/modules/ocl/src/matrix_operations.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/ocl/src/matrix_operations.cpp 2016-04-02 23:19:23.633128033 +0200 -@@ -591,7 +591,7 @@ +diff --git a/modules/ocl/src/matrix_operations.cpp b/modules/ocl/src/matrix_operations.cpp +index 331e432..c61dca4 100644 +--- a/modules/ocl/src/matrix_operations.cpp ++++ b/modules/ocl/src/matrix_operations.cpp +@@ -591,7 +591,7 @@ void cv::ocl::oclMat::createEx(int _rows, int _cols, int _type, DevMemRW rw_type datastart = data = (uchar *)dev_ptr; dataend = data + nettosize; @@ -191,10 +217,11 @@ diff -Nur opencv-2.4.12.3.orig/modules/ocl/src/matrix_operations.cpp opencv-2.4. *refcount = 1; } } -diff -Nur opencv-2.4.12.3.orig/modules/python/src2/cv2.cpp opencv-2.4.12.3/modules/python/src2/cv2.cpp ---- opencv-2.4.12.3.orig/modules/python/src2/cv2.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/python/src2/cv2.cpp 2016-04-02 23:18:34.897991791 +0200 -@@ -157,12 +157,12 @@ +diff --git a/modules/python/src2/cv2.cpp b/modules/python/src2/cv2.cpp +index 04cea39..40e5d43 100644 +--- a/modules/python/src2/cv2.cpp ++++ b/modules/python/src2/cv2.cpp +@@ -157,12 +157,12 @@ static PyObject* failmsgp(const char *fmt, ...) static size_t REFCOUNT_OFFSET = (size_t)&(((PyObject*)0)->ob_refcnt) + (0x12345678 != *(const size_t*)"\x78\x56\x34\x12\0\0\0\0\0")*sizeof(int); @@ -209,7 +236,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/python/src2/cv2.cpp opencv-2.4.12.3/modul { return (int*)((size_t)obj + REFCOUNT_OFFSET); } -@@ -173,7 +173,7 @@ +@@ -173,7 +173,7 @@ public: NumpyAllocator() {} ~NumpyAllocator() {} @@ -218,7 +245,7 @@ diff -Nur opencv-2.4.12.3.orig/modules/python/src2/cv2.cpp opencv-2.4.12.3/modul uchar*& datastart, uchar*& data, size_t* step) { PyEnsureGIL gil; -@@ -206,7 +206,7 @@ +@@ -206,7 +206,7 @@ public: datastart = data = (uchar*)PyArray_DATA((PyArrayObject*) o); } @@ -227,3 +254,6 @@ diff -Nur opencv-2.4.12.3.orig/modules/python/src2/cv2.cpp opencv-2.4.12.3/modul { PyEnsureGIL gil; if( !refcount ) +-- +2.10.2 + diff --git a/package/opencv/0001-ffmpeg30.patch b/package/opencv/0001-ffmpeg30.patch deleted file mode 100644 index 70b6510b15..0000000000 --- a/package/opencv/0001-ffmpeg30.patch +++ /dev/null @@ -1,638 +0,0 @@ -From a61b19b524cd2b66a7c43e67edd7cc780bf46cbb Mon Sep 17 00:00:00 2001 -From: Alexander Alekhin -Date: Wed, 2 Mar 2016 17:54:17 +0300 -Subject: [PATCH] backport ffmpeg fixes - -Signed-off-by: Bernd Kuhls -Downloaded from upstream commit: -https://github.com/Itseez/opencv/commit/a61b19b524cd2b66a7c43e67edd7cc780bf46cbb ---- - modules/highgui/src/cap_ffmpeg_impl.hpp | 364 +++++++++++++++++++++++++++----- - 1 file changed, 314 insertions(+), 50 deletions(-) - -diff --git a/modules/highgui/src/cap_ffmpeg_impl.hpp b/modules/highgui/src/cap_ffmpeg_impl.hpp -index 1b79870..6df542a 100644 ---- a/modules/highgui/src/cap_ffmpeg_impl.hpp -+++ b/modules/highgui/src/cap_ffmpeg_impl.hpp -@@ -118,11 +118,6 @@ extern "C" { - #define CV_WARN(message) fprintf(stderr, "warning: %s (%s:%d)\n", message, __FILE__, __LINE__) - #endif - --/* PIX_FMT_RGBA32 macro changed in newer ffmpeg versions */ --#ifndef PIX_FMT_RGBA32 --#define PIX_FMT_RGBA32 PIX_FMT_RGB32 --#endif -- - #define CALC_FFMPEG_VERSION(a,b,c) ( a<<16 | b<<8 | c ) - - #if defined WIN32 || defined _WIN32 -@@ -132,6 +127,11 @@ extern "C" { - #include - #include - #include -+ #include -+#if defined __APPLE__ -+ #include -+ #include -+#endif - #endif - - #ifndef MIN -@@ -156,6 +156,155 @@ extern "C" { - # define CV_CODEC(name) name - #endif - -+#if LIBAVUTIL_BUILD < (LIBAVUTIL_VERSION_MICRO >= 100 \ -+ ? CALC_FFMPEG_VERSION(51, 74, 100) : CALC_FFMPEG_VERSION(51, 42, 0)) -+#define AVPixelFormat PixelFormat -+#define AV_PIX_FMT_BGR24 PIX_FMT_BGR24 -+#define AV_PIX_FMT_RGB24 PIX_FMT_RGB24 -+#define AV_PIX_FMT_GRAY8 PIX_FMT_GRAY8 -+#define AV_PIX_FMT_YUV422P PIX_FMT_YUV422P -+#define AV_PIX_FMT_YUV420P PIX_FMT_YUV420P -+#define AV_PIX_FMT_YUV444P PIX_FMT_YUV444P -+#define AV_PIX_FMT_YUVJ420P PIX_FMT_YUVJ420P -+#define AV_PIX_FMT_GRAY16LE PIX_FMT_GRAY16LE -+#define AV_PIX_FMT_GRAY16BE PIX_FMT_GRAY16BE -+#endif -+ -+#if LIBAVUTIL_BUILD >= (LIBAVUTIL_VERSION_MICRO >= 100 \ -+ ? CALC_FFMPEG_VERSION(52, 38, 100) : CALC_FFMPEG_VERSION(52, 13, 0)) -+#define USE_AV_FRAME_GET_BUFFER 1 -+#else -+#define USE_AV_FRAME_GET_BUFFER 0 -+#ifndef AV_NUM_DATA_POINTERS // required for 0.7.x/0.8.x ffmpeg releases -+#define AV_NUM_DATA_POINTERS 4 -+#endif -+#endif -+ -+ -+#ifndef USE_AV_INTERRUPT_CALLBACK -+#if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 21, 0) -+#define USE_AV_INTERRUPT_CALLBACK 1 -+#else -+#define USE_AV_INTERRUPT_CALLBACK 0 -+#endif -+#endif -+ -+#if USE_AV_INTERRUPT_CALLBACK -+#define LIBAVFORMAT_INTERRUPT_TIMEOUT_MS 30000 -+ -+#ifdef WIN32 -+// http://stackoverflow.com/questions/5404277/porting-clock-gettime-to-windows -+ -+static -+inline LARGE_INTEGER get_filetime_offset() -+{ -+ SYSTEMTIME s; -+ FILETIME f; -+ LARGE_INTEGER t; -+ -+ s.wYear = 1970; -+ s.wMonth = 1; -+ s.wDay = 1; -+ s.wHour = 0; -+ s.wMinute = 0; -+ s.wSecond = 0; -+ s.wMilliseconds = 0; -+ SystemTimeToFileTime(&s, &f); -+ t.QuadPart = f.dwHighDateTime; -+ t.QuadPart <<= 32; -+ t.QuadPart |= f.dwLowDateTime; -+ return t; -+} -+ -+static -+inline void get_monotonic_time(timespec *tv) -+{ -+ LARGE_INTEGER t; -+ FILETIME f; -+ double microseconds; -+ static LARGE_INTEGER offset; -+ static double frequencyToMicroseconds; -+ static int initialized = 0; -+ static BOOL usePerformanceCounter = 0; -+ -+ if (!initialized) -+ { -+ LARGE_INTEGER performanceFrequency; -+ initialized = 1; -+ usePerformanceCounter = QueryPerformanceFrequency(&performanceFrequency); -+ if (usePerformanceCounter) -+ { -+ QueryPerformanceCounter(&offset); -+ frequencyToMicroseconds = (double)performanceFrequency.QuadPart / 1000000.; -+ } -+ else -+ { -+ offset = get_filetime_offset(); -+ frequencyToMicroseconds = 10.; -+ } -+ } -+ -+ if (usePerformanceCounter) -+ { -+ QueryPerformanceCounter(&t); -+ } else { -+ GetSystemTimeAsFileTime(&f); -+ t.QuadPart = f.dwHighDateTime; -+ t.QuadPart <<= 32; -+ t.QuadPart |= f.dwLowDateTime; -+ } -+ -+ t.QuadPart -= offset.QuadPart; -+ microseconds = (double)t.QuadPart / frequencyToMicroseconds; -+ t.QuadPart = microseconds; -+ tv->tv_sec = t.QuadPart / 1000000; -+ tv->tv_nsec = (t.QuadPart % 1000000) * 1000; -+} -+#else -+static -+inline void get_monotonic_time(timespec *time) -+{ -+#if defined(__APPLE__) && defined(__MACH__) -+ clock_serv_t cclock; -+ mach_timespec_t mts; -+ host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &cclock); -+ clock_get_time(cclock, &mts); -+ mach_port_deallocate(mach_task_self(), cclock); -+ time->tv_sec = mts.tv_sec; -+ time->tv_nsec = mts.tv_nsec; -+#else -+ clock_gettime(CLOCK_MONOTONIC, time); -+#endif -+} -+#endif -+ -+static -+inline timespec get_monotonic_time_diff(timespec start, timespec end) -+{ -+ timespec temp; -+ if (end.tv_nsec - start.tv_nsec < 0) -+ { -+ temp.tv_sec = end.tv_sec - start.tv_sec - 1; -+ temp.tv_nsec = 1000000000 + end.tv_nsec - start.tv_nsec; -+ } -+ else -+ { -+ temp.tv_sec = end.tv_sec - start.tv_sec; -+ temp.tv_nsec = end.tv_nsec - start.tv_nsec; -+ } -+ return temp; -+} -+ -+static -+inline double get_monotonic_time_diff_ms(timespec time1, timespec time2) -+{ -+ timespec delta = get_monotonic_time_diff(time1, time2); -+ double milliseconds = delta.tv_sec * 1000 + (double)delta.tv_nsec / 1000000.0; -+ -+ return milliseconds; -+} -+#endif // USE_AV_INTERRUPT_CALLBACK -+ - static int get_number_of_cpus(void) - { - #if LIBAVFORMAT_BUILD < CALC_FFMPEG_VERSION(52, 111, 0) -@@ -205,12 +354,36 @@ struct Image_FFMPEG - }; - - -+#if USE_AV_INTERRUPT_CALLBACK -+struct AVInterruptCallbackMetadata -+{ -+ timespec value; -+ unsigned int timeout_after_ms; -+ int timeout; -+}; -+ -+static - inline void _opencv_ffmpeg_free(void** ptr) - { - if(*ptr) free(*ptr); - *ptr = 0; - } - -+static -+inline int _opencv_ffmpeg_interrupt_callback(void *ptr) -+{ -+ AVInterruptCallbackMetadata* metadata = (AVInterruptCallbackMetadata*)ptr; -+ assert(metadata); -+ -+ timespec now; -+ get_monotonic_time(&now); -+ -+ metadata->timeout = get_monotonic_time_diff_ms(metadata->value, now) > metadata->timeout_after_ms; -+ -+ return metadata->timeout ? -1 : 0; -+} -+#endif -+ - - struct CvCapture_FFMPEG - { -@@ -264,6 +437,10 @@ struct CvCapture_FFMPEG - #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(52, 111, 0) - AVDictionary *dict; - #endif -+ -+#if USE_AV_INTERRUPT_CALLBACK -+ AVInterruptCallbackMetadata interrupt_metadata; -+#endif - }; - - void CvCapture_FFMPEG::init() -@@ -301,8 +478,10 @@ void CvCapture_FFMPEG::close() - - if( picture ) - { -- // FFmpeg and Libav added avcodec_free_frame in different versions. - #if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \ -+ ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1)) -+ av_frame_free(&picture); -+#elif LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \ - ? CALC_FFMPEG_VERSION(54, 59, 100) : CALC_FFMPEG_VERSION(54, 28, 0)) - avcodec_free_frame(&picture); - #else -@@ -333,11 +512,15 @@ void CvCapture_FFMPEG::close() - ic = NULL; - } - -+#if USE_AV_FRAME_GET_BUFFER -+ av_frame_unref(&rgb_picture); -+#else - if( rgb_picture.data[0] ) - { - free( rgb_picture.data[0] ); - rgb_picture.data[0] = 0; - } -+#endif - - // free last packet if exist - if (packet.data) { -@@ -556,6 +739,16 @@ bool CvCapture_FFMPEG::open( const char* _filename ) - - close(); - -+#if USE_AV_INTERRUPT_CALLBACK -+ /* interrupt callback */ -+ interrupt_metadata.timeout_after_ms = LIBAVFORMAT_INTERRUPT_TIMEOUT_MS; -+ get_monotonic_time(&interrupt_metadata.value); -+ -+ ic = avformat_alloc_context(); -+ ic->interrupt_callback.callback = _opencv_ffmpeg_interrupt_callback; -+ ic->interrupt_callback.opaque = &interrupt_metadata; -+#endif -+ - #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(52, 111, 0) - av_dict_set(&dict, "rtsp_transport", "tcp", 0); - int err = avformat_open_input(&ic, _filename, NULL, &dict); -@@ -619,19 +812,18 @@ bool CvCapture_FFMPEG::open( const char* _filename ) - - video_stream = i; - video_st = ic->streams[i]; -+#if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \ -+ ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1)) -+ picture = av_frame_alloc(); -+#else - picture = avcodec_alloc_frame(); -- -- rgb_picture.data[0] = (uint8_t*)malloc( -- avpicture_get_size( PIX_FMT_BGR24, -- enc->width, enc->height )); -- avpicture_fill( (AVPicture*)&rgb_picture, rgb_picture.data[0], -- PIX_FMT_BGR24, enc->width, enc->height ); -+#endif - - frame.width = enc->width; - frame.height = enc->height; - frame.cn = 3; -- frame.step = rgb_picture.linesize[0]; -- frame.data = rgb_picture.data[0]; -+ frame.step = 0; -+ frame.data = NULL; - break; - } - } -@@ -668,6 +860,16 @@ bool CvCapture_FFMPEG::grabFrame() - // get the next frame - while (!valid) - { -+ av_free_packet (&packet); -+ -+#if USE_AV_INTERRUPT_CALLBACK -+ if (interrupt_metadata.timeout) -+ { -+ valid = false; -+ break; -+ } -+#endif -+ - int ret = av_read_frame(ic, &packet); - if (ret == AVERROR(EAGAIN)) continue; - -@@ -703,6 +905,11 @@ bool CvCapture_FFMPEG::grabFrame() - picture_pts = packet.pts != AV_NOPTS_VALUE_ && packet.pts != 0 ? packet.pts : packet.dts; - frame_number++; - valid = true; -+ -+#if USE_AV_INTERRUPT_CALLBACK -+ // update interrupt value -+ get_monotonic_time(&interrupt_metadata.value); -+#endif - } - else - { -@@ -727,38 +934,59 @@ bool CvCapture_FFMPEG::retrieveFrame(int, unsigned char** data, int* step, int* - if( !video_st || !picture->data[0] ) - return false; - -- avpicture_fill((AVPicture*)&rgb_picture, rgb_picture.data[0], PIX_FMT_RGB24, -- video_st->codec->width, video_st->codec->height); -- - if( img_convert_ctx == NULL || - frame.width != video_st->codec->width || -- frame.height != video_st->codec->height ) -+ frame.height != video_st->codec->height || -+ frame.data == NULL ) - { -- if( img_convert_ctx ) -- sws_freeContext(img_convert_ctx); -- -- frame.width = video_st->codec->width; -- frame.height = video_st->codec->height; -+ // Some sws_scale optimizations have some assumptions about alignment of data/step/width/height -+ // Also we use coded_width/height to workaround problem with legacy ffmpeg versions (like n0.8) -+ int buffer_width = video_st->codec->coded_width, buffer_height = video_st->codec->coded_height; - - img_convert_ctx = sws_getCachedContext( -- NULL, -- video_st->codec->width, video_st->codec->height, -+ img_convert_ctx, -+ buffer_width, buffer_height, - video_st->codec->pix_fmt, -- video_st->codec->width, video_st->codec->height, -- PIX_FMT_BGR24, -+ buffer_width, buffer_height, -+ AV_PIX_FMT_BGR24, - SWS_BICUBIC, - NULL, NULL, NULL - ); - - if (img_convert_ctx == NULL) - return false;//CV_Error(0, "Cannot initialize the conversion context!"); -+ -+#if USE_AV_FRAME_GET_BUFFER -+ av_frame_unref(&rgb_picture); -+ rgb_picture.format = AV_PIX_FMT_BGR24; -+ rgb_picture.width = buffer_width; -+ rgb_picture.height = buffer_height; -+ if (0 != av_frame_get_buffer(&rgb_picture, 32)) -+ { -+ CV_WARN("OutOfMemory"); -+ return false; -+ } -+#else -+ int aligns[AV_NUM_DATA_POINTERS]; -+ avcodec_align_dimensions2(video_st->codec, &buffer_width, &buffer_height, aligns); -+ rgb_picture.data[0] = (uint8_t*)realloc(rgb_picture.data[0], -+ avpicture_get_size( AV_PIX_FMT_BGR24, -+ buffer_width, buffer_height )); -+ avpicture_fill( (AVPicture*)&rgb_picture, rgb_picture.data[0], -+ AV_PIX_FMT_BGR24, buffer_width, buffer_height ); -+#endif -+ frame.width = video_st->codec->width; -+ frame.height = video_st->codec->height; -+ frame.cn = 3; -+ frame.data = rgb_picture.data[0]; -+ frame.step = rgb_picture.linesize[0]; - } - - sws_scale( - img_convert_ctx, - picture->data, - picture->linesize, -- 0, video_st->codec->height, -+ 0, video_st->codec->coded_height, - rgb_picture.data, - rgb_picture.linesize - ); -@@ -1099,10 +1327,20 @@ static AVFrame * icv_alloc_picture_FFMPEG(int pix_fmt, int width, int height, bo - uint8_t * picture_buf; - int size; - -+#if LIBAVCODEC_BUILD >= (LIBAVCODEC_VERSION_MICRO >= 100 \ -+ ? CALC_FFMPEG_VERSION(55, 45, 101) : CALC_FFMPEG_VERSION(55, 28, 1)) -+ picture = av_frame_alloc(); -+#else - picture = avcodec_alloc_frame(); -+#endif - if (!picture) - return NULL; -- size = avpicture_get_size( (PixelFormat) pix_fmt, width, height); -+ -+ picture->format = pix_fmt; -+ picture->width = width; -+ picture->height = height; -+ -+ size = avpicture_get_size( (AVPixelFormat) pix_fmt, width, height); - if(alloc){ - picture_buf = (uint8_t *) malloc(size); - if (!picture_buf) -@@ -1111,7 +1349,7 @@ static AVFrame * icv_alloc_picture_FFMPEG(int pix_fmt, int width, int height, bo - return NULL; - } - avpicture_fill((AVPicture *)picture, picture_buf, -- (PixelFormat) pix_fmt, width, height); -+ (AVPixelFormat) pix_fmt, width, height); - } - else { - } -@@ -1211,7 +1449,7 @@ static AVStream *icv_add_video_stream_FFMPEG(AVFormatContext *oc, - #endif - - c->gop_size = 12; /* emit one intra frame every twelve frames at most */ -- c->pix_fmt = (PixelFormat) pixel_format; -+ c->pix_fmt = (AVPixelFormat) pixel_format; - - if (c->codec_id == CV_CODEC(CODEC_ID_MPEG2VIDEO)) { - c->max_b_frames = 2; -@@ -1372,12 +1610,12 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int - #endif - - // check parameters -- if (input_pix_fmt == PIX_FMT_BGR24) { -+ if (input_pix_fmt == AV_PIX_FMT_BGR24) { - if (cn != 3) { - return false; - } - } -- else if (input_pix_fmt == PIX_FMT_GRAY8) { -+ else if (input_pix_fmt == AV_PIX_FMT_GRAY8) { - if (cn != 1) { - return false; - } -@@ -1390,13 +1628,13 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int - assert( input_picture ); - // let input_picture point to the raw data buffer of 'image' - avpicture_fill((AVPicture *)input_picture, (uint8_t *) data, -- (PixelFormat)input_pix_fmt, width, height); -+ (AVPixelFormat)input_pix_fmt, width, height); - - if( !img_convert_ctx ) - { - img_convert_ctx = sws_getContext(width, - height, -- (PixelFormat)input_pix_fmt, -+ (AVPixelFormat)input_pix_fmt, - c->width, - c->height, - c->pix_fmt, -@@ -1414,7 +1652,7 @@ bool CvVideoWriter_FFMPEG::writeFrame( const unsigned char* data, int step, int - } - else{ - avpicture_fill((AVPicture *)picture, (uint8_t *) data, -- (PixelFormat)input_pix_fmt, width, height); -+ (AVPixelFormat)input_pix_fmt, width, height); - } - - picture->pts = frame_idx; -@@ -1547,10 +1785,10 @@ bool CvVideoWriter_FFMPEG::open( const char * filename, int fourcc, - - /* determine optimal pixel format */ - if (is_color) { -- input_pix_fmt = PIX_FMT_BGR24; -+ input_pix_fmt = AV_PIX_FMT_BGR24; - } - else { -- input_pix_fmt = PIX_FMT_GRAY8; -+ input_pix_fmt = AV_PIX_FMT_GRAY8; - } - - /* Lookup codec_id for given fourcc */ -@@ -1587,21 +1825,21 @@ bool CvVideoWriter_FFMPEG::open( const char * filename, int fourcc, - break; - #endif - case CV_CODEC(CODEC_ID_HUFFYUV): -- codec_pix_fmt = PIX_FMT_YUV422P; -+ codec_pix_fmt = AV_PIX_FMT_YUV422P; - break; - case CV_CODEC(CODEC_ID_MJPEG): - case CV_CODEC(CODEC_ID_LJPEG): -- codec_pix_fmt = PIX_FMT_YUVJ420P; -+ codec_pix_fmt = AV_PIX_FMT_YUVJ420P; - bitrate_scale = 3; - break; - case CV_CODEC(CODEC_ID_RAWVIDEO): -- codec_pix_fmt = input_pix_fmt == PIX_FMT_GRAY8 || -- input_pix_fmt == PIX_FMT_GRAY16LE || -- input_pix_fmt == PIX_FMT_GRAY16BE ? input_pix_fmt : PIX_FMT_YUV420P; -+ codec_pix_fmt = input_pix_fmt == AV_PIX_FMT_GRAY8 || -+ input_pix_fmt == AV_PIX_FMT_GRAY16LE || -+ input_pix_fmt == AV_PIX_FMT_GRAY16BE ? input_pix_fmt : AV_PIX_FMT_YUV420P; - break; - default: - // good for lossy formats, MPEG, etc. -- codec_pix_fmt = PIX_FMT_YUV420P; -+ codec_pix_fmt = AV_PIX_FMT_YUV420P; - break; - } - -@@ -1826,7 +2064,7 @@ struct OutputMediaStream_FFMPEG - void write(unsigned char* data, int size, int keyFrame); - - // add a video output stream to the container -- static AVStream* addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, PixelFormat pixel_format); -+ static AVStream* addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, AVPixelFormat pixel_format); - - AVOutputFormat* fmt_; - AVFormatContext* oc_; -@@ -1873,7 +2111,7 @@ void OutputMediaStream_FFMPEG::close() - } - } - --AVStream* OutputMediaStream_FFMPEG::addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, PixelFormat pixel_format) -+AVStream* OutputMediaStream_FFMPEG::addVideoStream(AVFormatContext *oc, CV_CODEC_ID codec_id, int w, int h, int bitrate, double fps, AVPixelFormat pixel_format) - { - #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 10, 0) - AVStream* st = avformat_new_stream(oc, 0); -@@ -2011,7 +2249,7 @@ bool OutputMediaStream_FFMPEG::open(const char* fileName, int width, int height, - oc_->max_delay = (int)(0.7 * AV_TIME_BASE); // This reduces buffer underrun warnings with MPEG - - // set a few optimal pixel formats for lossless codecs of interest.. -- PixelFormat codec_pix_fmt = PIX_FMT_YUV420P; -+ AVPixelFormat codec_pix_fmt = AV_PIX_FMT_YUV420P; - int bitrate_scale = 64; - - // TODO -- safe to ignore output audio stream? -@@ -2150,6 +2388,10 @@ struct InputMediaStream_FFMPEG - AVFormatContext* ctx_; - int video_stream_id_; - AVPacket pkt_; -+ -+#if USE_AV_INTERRUPT_CALLBACK -+ AVInterruptCallbackMetadata interrupt_metadata; -+#endif - }; - - bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma_format, int* width, int* height) -@@ -2160,6 +2402,16 @@ bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma - video_stream_id_ = -1; - memset(&pkt_, 0, sizeof(AVPacket)); - -+#if USE_AV_INTERRUPT_CALLBACK -+ /* interrupt callback */ -+ interrupt_metadata.timeout_after_ms = LIBAVFORMAT_INTERRUPT_TIMEOUT_MS; -+ get_monotonic_time(&interrupt_metadata.value); -+ -+ ctx_ = avformat_alloc_context(); -+ ctx_->interrupt_callback.callback = _opencv_ffmpeg_interrupt_callback; -+ ctx_->interrupt_callback.opaque = &interrupt_metadata; -+#endif -+ - #if LIBAVFORMAT_BUILD >= CALC_FFMPEG_VERSION(53, 13, 0) - avformat_network_init(); - #endif -@@ -2220,15 +2472,15 @@ bool InputMediaStream_FFMPEG::open(const char* fileName, int* codec, int* chroma - - switch (enc->pix_fmt) - { -- case PIX_FMT_YUV420P: -+ case AV_PIX_FMT_YUV420P: - *chroma_format = ::VideoChromaFormat_YUV420; - break; - -- case PIX_FMT_YUV422P: -+ case AV_PIX_FMT_YUV422P: - *chroma_format = ::VideoChromaFormat_YUV422; - break; - -- case PIX_FMT_YUV444P: -+ case AV_PIX_FMT_YUV444P: - *chroma_format = ::VideoChromaFormat_YUV444; - break; - -@@ -2276,11 +2528,23 @@ bool InputMediaStream_FFMPEG::read(unsigned char** data, int* size, int* endOfFi - // get the next frame - for (;;) - { -+#if USE_AV_INTERRUPT_CALLBACK -+ if(interrupt_metadata.timeout) -+ { -+ break; -+ } -+#endif -+ - int ret = av_read_frame(ctx_, &pkt_); - - if (ret == AVERROR(EAGAIN)) - continue; - -+#if USE_AV_INTERRUPT_CALLBACK -+ // update interrupt value -+ get_monotonic_time(&interrupt_metadata.value); -+#endif -+ - if (ret < 0) - { - if (ret == (int)AVERROR_EOF) diff --git a/package/opencv/0002-avoid-sysctl_h.patch b/package/opencv/0002-avoid-sysctl_h.patch new file mode 100644 index 0000000000..b63ba55ac1 --- /dev/null +++ b/package/opencv/0002-avoid-sysctl_h.patch @@ -0,0 +1,61 @@ +From e5e71c31d54562f9c67a8226f0bfc08ad24b81cf Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Tue, 1 Nov 2016 09:30:23 +0100 +Subject: [PATCH 2/4] From upstream master branch: + https://github.com/Itseez/opencv/blob/master/modules/core/src/ + +Do not include sysctl.h targeting Linux systems. + +Signed-off-by: Waldemar Brodkorb +[Samuel Martin: convert patch to git diff, add cap_ffmpeg_impl.hpp fix] +Signed-off-by: Samuel Martin +--- + modules/core/src/parallel.cpp | 2 +- + modules/core/src/system.cpp | 2 +- + modules/highgui/src/cap_ffmpeg_impl.hpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/modules/core/src/parallel.cpp b/modules/core/src/parallel.cpp +index 4459a24..0374876 100644 +--- a/modules/core/src/parallel.cpp ++++ b/modules/core/src/parallel.cpp +@@ -56,7 +56,7 @@ + #include + #if defined ANDROID + #include +- #else ++ #elif defined __APPLE__ + #include + #endif + #endif +diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp +index 9a7b262..731f090 100644 +--- a/modules/core/src/system.cpp ++++ b/modules/core/src/system.cpp +@@ -163,7 +163,7 @@ std::wstring GetTempFileNameWinRT(std::wstring prefix) + #include + #if defined ANDROID + #include +-#else ++#elif defined __APPLE__ + #include + #endif + #endif +diff --git a/modules/highgui/src/cap_ffmpeg_impl.hpp b/modules/highgui/src/cap_ffmpeg_impl.hpp +index dc3e10d..23674ff 100644 +--- a/modules/highgui/src/cap_ffmpeg_impl.hpp ++++ b/modules/highgui/src/cap_ffmpeg_impl.hpp +@@ -126,9 +126,9 @@ extern "C" { + #include + #include + #include +- #include + #include + #if defined __APPLE__ ++ #include + #include + #include + #endif +-- +2.10.2 + diff --git a/package/opencv/0003-avoid-sysctl_h.patch b/package/opencv/0003-avoid-sysctl_h.patch deleted file mode 100644 index 603220549e..0000000000 --- a/package/opencv/0003-avoid-sysctl_h.patch +++ /dev/null @@ -1,31 +0,0 @@ -From upstream master branch: -https://github.com/Itseez/opencv/blob/master/modules/core/src/ - -Do not include sysctl.h targeting Linux systems. - -Signed-off-by: Waldemar Brodkorb - -diff -Nur opencv-2.4.12.3.orig/modules/core/src/parallel.cpp opencv-2.4.12.3/modules/core/src/parallel.cpp ---- opencv-2.4.12.3.orig/modules/core/src/parallel.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/src/parallel.cpp 2016-04-05 12:59:37.750143762 +0200 -@@ -56,7 +56,7 @@ - #include - #if defined ANDROID - #include -- #else -+ #elif defined __APPLE__ - #include - #endif - #endif -diff -Nur opencv-2.4.12.3.orig/modules/core/src/system.cpp opencv-2.4.12.3/modules/core/src/system.cpp ---- opencv-2.4.12.3.orig/modules/core/src/system.cpp 2015-10-26 08:56:34.000000000 +0100 -+++ opencv-2.4.12.3/modules/core/src/system.cpp 2016-04-05 13:05:22.468323717 +0200 -@@ -163,7 +163,7 @@ - #include - #if defined ANDROID - #include --#else -+#elif defined __APPLE__ - #include - #endif - #endif diff --git a/package/opencv/0003-types_c.h-Fix-compiling-VFP-assembler-code.patch b/package/opencv/0003-types_c.h-Fix-compiling-VFP-assembler-code.patch new file mode 100644 index 0000000000..85a23a0740 --- /dev/null +++ b/package/opencv/0003-types_c.h-Fix-compiling-VFP-assembler-code.patch @@ -0,0 +1,37 @@ +From 18c868c47307b786d1bea729dccaad7f8d696cb7 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 6 Sep 2016 11:49:00 +0200 +Subject: [PATCH 1/1] types_c.h: Fix compiling VFP assembler code + +Replace asm by __asm__ according to +https://gcc.gnu.org/onlinedocs/gcc/Alternate-Keywords.html#Alternate-Keywords +as suggested by Arnout Vandecappelle: +http://lists.busybox.net/pipermail/buildroot/2016-September/171491.html + +to fix build errors in ffmpeg with opencv2 support detected by +buildroot autobuilders: +http://autobuild.buildroot.net/results/c32/c32a21240a9933796ee850349a62ff3c2314f25c/build-end.log + +Patch sent upstream: https://github.com/opencv/opencv/pull/7242 + +Signed-off-by: Bernd Kuhls +--- + modules/core/include/opencv2/core/types_c.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/core/include/opencv2/core/types_c.h b/modules/core/include/opencv2/core/types_c.h +index c21cd2c..771715d 100644 +--- a/modules/core/include/opencv2/core/types_c.h ++++ b/modules/core/include/opencv2/core/types_c.h +@@ -318,7 +318,7 @@ enum { + int res; \ + float temp; \ + (void)temp; \ +- asm(_asm_string : [res] "=r" (res), [temp] "=w" (temp) : [value] "w" (_value)); \ ++ __asm__(_asm_string : [res] "=r" (res), [temp] "=w" (temp) : [value] "w" (_value)); \ + return res; + // 2. version for double + #ifdef __clang__ +-- +2.9.3 + diff --git a/package/opencv/0004-CMakeLists.txt-Do-not-add-libdl-to-LINKER_LIBS-for-s.patch b/package/opencv/0004-CMakeLists.txt-Do-not-add-libdl-to-LINKER_LIBS-for-s.patch new file mode 100644 index 0000000000..6d63411b01 --- /dev/null +++ b/package/opencv/0004-CMakeLists.txt-Do-not-add-libdl-to-LINKER_LIBS-for-s.patch @@ -0,0 +1,39 @@ +From 22e03ef8a9e3adcbc6b2f16c3cc98e4e14443eed Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 24 Sep 2016 17:51:22 +0200 +Subject: [PATCH 1/1] CMakeLists.txt: Do not add libdl to LINKER_LIBS for + static builds + +Without this patch -ldl is present in opencv.pc which breaks OpenCV +detection by ffmpeg, detected by buildroot autobuilders: + +http://autobuild.buildroot.net/results/765/7657e01481995a4f0d725467e935a83928a59a04//ffmpeg-3.1.3/config.log + +/home/peko/autobuild/instance-1/output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.9.4/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: cannot find -ldl + +Patch sent upstream: https://github.com/opencv/opencv/pull/7337 + +Signed-off-by: Bernd Kuhls +--- + CMakeLists.txt | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 007b80d..99b047d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -457,7 +457,10 @@ if(UNIX) + elseif(${CMAKE_SYSTEM_NAME} MATCHES "QNX") + set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} m) + else() +- set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} dl m pthread rt) ++ if(BUILD_SHARED_LIBS) ++ set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} dl) ++ endif() ++ set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} m pthread rt) + endif() + else() + set(HAVE_LIBPTHREAD YES) +-- +2.9.3 + diff --git a/package/opencv/opencv.hash b/package/opencv/opencv.hash new file mode 100644 index 0000000000..9686cb287d --- /dev/null +++ b/package/opencv/opencv.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 94ebcca61c30034d5fb16feab8ec12c8a868f5162d20a9f0396f0f5f6d8bbbff opencv-2.4.13.tar.gz diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk index 2ae95a08b0..947589b83c 100644 --- a/package/opencv/opencv.mk +++ b/package/opencv/opencv.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENCV_VERSION = 2.4.12.3 +OPENCV_VERSION = 2.4.13 OPENCV_SITE = $(call github,itseez,opencv,$(OPENCV_VERSION)) OPENCV_INSTALL_STAGING = YES OPENCV_LICENSE = BSD-3c diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in index 2f4aa7aca8..4c00bf1b94 100644 --- a/package/opencv3/Config.in +++ b/package/opencv3/Config.in @@ -1,6 +1,7 @@ menuconfig BR2_PACKAGE_OPENCV3 bool "opencv3" select BR2_PACKAGE_ZLIB + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR @@ -335,6 +336,7 @@ config BR2_PACKAGE_OPENCV3_INSTALL_DATA endif # BR2_PACKAGE_OPENCV3 comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library" + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || \ !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ diff --git a/package/opencv3/opencv3.hash b/package/opencv3/opencv3.hash new file mode 100644 index 0000000000..20859ea2b5 --- /dev/null +++ b/package/opencv3/opencv3.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f00b3c4f42acda07d89031a2ebb5ebe390764a133502c03a511f67b78bbd4fbf opencv3-3.1.0.tar.gz diff --git a/package/opencv3/opencv3.mk b/package/opencv3/opencv3.mk index 91cdfe6428..10660a90fb 100644 --- a/package/opencv3/opencv3.mk +++ b/package/opencv3/opencv3.mk @@ -10,6 +10,11 @@ OPENCV3_INSTALL_STAGING = YES OPENCV3_LICENSE = BSD-3c OPENCV3_LICENSE_FILES = LICENSE +# Uses __atomic_fetch_add_4 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +OPENCV3_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -latomic" +endif + # OpenCV component options OPENCV3_CONF_OPTS += \ -DBUILD_DOCS=OFF \ diff --git a/package/opengl/libegl/Config.in b/package/opengl/libegl/Config.in index 8401bb22ed..f756fbeadf 100644 --- a/package/opengl/libegl/Config.in +++ b/package/opengl/libegl/Config.in @@ -1,6 +1,10 @@ config BR2_PACKAGE_HAS_LIBEGL bool +config BR2_PACKAGE_HAS_LIBEGL_WAYLAND + bool + depends on BR2_PACKAGE_HAS_LIBEGL + config BR2_PACKAGE_PROVIDES_LIBEGL depends on BR2_PACKAGE_HAS_LIBEGL string diff --git a/package/openipmi/Config.in b/package/openipmi/Config.in index da886578f8..d8c94b307c 100644 --- a/package/openipmi/Config.in +++ b/package/openipmi/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_OPENIPMI bool "openipmi" depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # dlopen() - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL select BR2_PACKAGE_POPT select BR2_PACKAGE_NCURSES help @@ -13,6 +13,6 @@ config BR2_PACKAGE_OPENIPMI http://openipmi.sourceforge.net -comment "openipmi needs a toolchain w/ dynamic library, threads" +comment "openipmi needs a toolchain w/ dynamic library, NPTL" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/openipmi/openipmi.hash b/package/openipmi/openipmi.hash index e6fafe48ab..30e37634ef 100644 --- a/package/openipmi/openipmi.hash +++ b/package/openipmi/openipmi.hash @@ -1,4 +1,5 @@ # From http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library/ -sha1 54f63ab7fe09f6a4b0b718601fe9c61014aa220b OpenIPMI-2.0.21.tar.gz +sha1 826081e7ed0ad430de9b8fdb75a9eaa10c99b660 OpenIPMI-2.0.22.tar.gz # Locally computed +sha256 4988900043c35fcfa9b2bf275d6593904f6429221befb770ba6ecb5502108e55 OpenIPMI-2.0.22.tar.gz sha256 0eafaa502ccf752899c5089159574081067d0c4ac53ea0ace33a5087f33ea32a 0001-ui-use-standard-uint32_t.patch diff --git a/package/openipmi/openipmi.mk b/package/openipmi/openipmi.mk index ea46e191da..9faa7c685f 100644 --- a/package/openipmi/openipmi.mk +++ b/package/openipmi/openipmi.mk @@ -4,9 +4,9 @@ # ################################################################################ -OPENIPMI_VERSION = 2.0.21 +OPENIPMI_VERSION = 2.0.22 OPENIPMI_SITE = http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library -OPENIPMI_SOURCE = OpenIPMI-2.0.21.tar.gz +OPENIPMI_SOURCE = OpenIPMI-$(OPENIPMI_VERSION).tar.gz OPENIPMI_PATCH = \ http://sourceforge.net/p/openipmi/patches/26/attachment/0001-ui-use-standard-uint32_t.patch OPENIPMI_LICENSE = LGPLv2+, GPLv2+, BSD-3c diff --git a/package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch b/package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch new file mode 100644 index 0000000000..bce790a478 --- /dev/null +++ b/package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch @@ -0,0 +1,72 @@ +From 38f50c7d9ad3ba06b64583045665203afb53cbd9 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Sun, 6 Nov 2016 16:29:08 +0100 +Subject: [PATCH] thirdparty: tiff: append flags found by pkg-config if + available + +This change allows to get all required CFLAGS/LDFLAGS in case of static only +build. + +This build issue [1] was triggered by the Buildroot farms. + +[1] http://autobuild.buildroot.net/results/d0d/d0d22727311d6300e0e400728126170407bfd699/build-end.log + +Signed-off-by: Samuel Martin +--- + thirdparty/CMakeLists.txt | 23 +++++++++++++++++++++-- + 1 file changed, 21 insertions(+), 2 deletions(-) + +diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt +index cb24b43b58e2..cd6a5e1391b0 100644 +--- a/thirdparty/CMakeLists.txt ++++ b/thirdparty/CMakeLists.txt +@@ -1,5 +1,9 @@ + # 3rd party libs + ++if(NOT BUILD_THIRDPARTY) ++ include(FindPkgConfig) ++endif(NOT BUILD_THIRDPARTY) ++ + #------------ + # Try to find lib Z + if(BUILD_THIRDPARTY) +@@ -36,6 +40,9 @@ if(BUILD_THIRDPARTY) + else(BUILD_THIRDPARTY) + if(ZLIB_FOUND) + find_package(PNG) ++ # Static only build: ++ # it is not necessary to invoke pkg_check_module on libpng, because libpng ++ # only depends on zlib, which is already checked. + if(PNG_FOUND) + message(STATUS "Your system seems to have a PNG lib available, we will use it") + set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE) +@@ -66,12 +73,24 @@ if(BUILD_THIRDPARTY) + set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE) + else(BUILD_THIRDPARTY) + find_package(TIFF) ++ # Static only build: ++ # it is necessary to invoke pkg_check_module on libtiff since it may have ++ # several other dependencies not declared by its cmake module, but they are ++ # in the its pkgconfig module. ++ if(PKG_CONFIG_FOUND) ++ foreach(pc_tiff_module tiff tiff3 tiff4 tiff-3 tiff-4 libtiff libtiff3 libtiff4 libtiff-3 libtiff-4) ++ pkg_check_modules(PC_TIFF QUIET ${pc_tiff_module}) ++ if(PC_TIFF_FOUND) ++ break() ++ endif(PC_TIFF_FOUND) ++ endforeach() ++ endif(PKG_CONFIG_FOUND) + if(TIFF_FOUND) + message(STATUS "Your system seems to have a TIFF lib available, we will use it") + set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE) + set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE) +- set(TIFF_LIBNAME ${TIFF_LIBRARIES} PARENT_SCOPE) +- set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} PARENT_SCOPE) ++ set(TIFF_LIBNAME ${TIFF_LIBRARIES} ${PC_TIFF_STATIC_LIBRARIES} PARENT_SCOPE) ++ set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} ${PC_TIFF_STATIC_INCLUDE_DIRS} PARENT_SCOPE) + else(TIFF_FOUND) # not found + set(OPJ_HAVE_TIFF_H 0 PARENT_SCOPE) + set(OPJ_HAVE_LIBTIFF 0 PARENT_SCOPE) +-- +2.10.2 + diff --git a/package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch b/package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch new file mode 100644 index 0000000000..5697b82de2 --- /dev/null +++ b/package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch @@ -0,0 +1,49 @@ +From 226daa77ea5a35da306f9af2548f3e2c9e79f577 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Fri, 11 Nov 2016 23:35:13 +0100 +Subject: [PATCH] thirdparty: lcms2: append flags found by pkg-config if + available + +This change allows to get all required CFLAGS/LDFLAGS in case of static only +build. + +Fixes a buildroot build failure (see [1], [2] and [3]). + +[1] http://autobuild.buildroot.net/results/5ce/5cee20afd8bef5268832cddcb3a5270746be7a57 +[2] http://lists.busybox.net/pipermail/buildroot/2016-November/177187.html +[3] http://lists.busybox.net/pipermail/buildroot/2016-November/177188.html + +Signed-off-by: Peter Seiderer +--- + thirdparty/CMakeLists.txt | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt +index cd6a5e1391b0..a3a8494d89b1 100644 +--- a/thirdparty/CMakeLists.txt ++++ b/thirdparty/CMakeLists.txt +@@ -113,12 +113,19 @@ if( BUILD_THIRDPARTY) + set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE) + else(BUILD_THIRDPARTY) + find_package(LCMS2) ++ # Static only build: ++ # it is necessary to invoke pkg_check_module on lcms2 since it may have ++ # several other dependencies not declared by its cmake module, but they are ++ # in the its pkgconfig module. ++ if(PKG_CONFIG_FOUND) ++ pkg_check_modules(PC_LCMS2 QUIET lcms2) ++ endif(PKG_CONFIG_FOUND) + if(LCMS2_FOUND) + message(STATUS "Your system seems to have a LCMS2 lib available, we will use it") + set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE) + set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE) +- set(LCMS_LIBNAME ${LCMS2_LIBRARIES} PARENT_SCOPE) +- set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} PARENT_SCOPE) ++ set(LCMS_LIBNAME ${LCMS2_LIBRARIES} ${PC_LCMS2_STATIC_LIBRARIES} PARENT_SCOPE) ++ set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} ${PC_LCMS2_STATIC_INCLUDE_DIRS} PARENT_SCOPE) + else(LCMS2_FOUND) # not found lcms2 + # try to find LCMS + find_package(LCMS) +-- +2.10.2 + diff --git a/package/openjpeg/openjpeg.hash b/package/openjpeg/openjpeg.hash index a8695c102c..c0abd0c54d 100644 --- a/package/openjpeg/openjpeg.hash +++ b/package/openjpeg/openjpeg.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 15df7b194a5d8dba0052cd21c17a4dc761149a770a907d73fffb972078c28a87 openjpeg-1.5.2.tar.gz +sha256 4ce77b6ef538ef090d9bde1d5eeff8b3069ab56c4906f083475517c2c023dfa7 openjpeg-2.1.2.tar.gz diff --git a/package/openjpeg/openjpeg.mk b/package/openjpeg/openjpeg.mk index c613ba817e..ca22068113 100644 --- a/package/openjpeg/openjpeg.mk +++ b/package/openjpeg/openjpeg.mk @@ -4,35 +4,15 @@ # ################################################################################ -OPENJPEG_VERSION = 1.5.2 -OPENJPEG_SITE = http://downloads.sourceforge.net/project/openjpeg.mirror/$(OPENJPEG_VERSION) +OPENJPEG_VERSION = 2.1.2 +OPENJPEG_SITE = $(call github,uclouvain,openjpeg,v$(OPENJPEG_VERSION)) OPENJPEG_LICENSE = BSD-2c OPENJPEG_LICENSE_FILES = LICENSE -# tarball does not contain the generated files -OPENJPEG_AUTORECONF = YES OPENJPEG_INSTALL_STAGING = YES -OPENJPEG_DEPENDENCIES = host-pkgconf -OPENJPEG_CONF_OPTS = --disable-lcms1 -ifeq ($(BR2_PACKAGE_LIBPNG),y) -OPENJPEG_DEPENDENCIES += libpng -OPENJPEG_CONF_OPTS += --enable-png -else -OPENJPEG_CONF_OPTS += --disable-png -endif +OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_ZLIB),zlib) +OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBPNG),libpng) +OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_TIFF),tiff) +OPENJPEG_DEPENDENCIES += $(if $(BR2_PACKAGE_LCMS2),lcms2) -ifeq ($(BR2_PACKAGE_TIFF),y) -OPENJPEG_DEPENDENCIES += tiff -OPENJPEG_CONF_OPTS += --enable-tiff -else -OPENJPEG_CONF_OPTS += --disable-tiff -endif - -ifeq ($(BR2_PACKAGE_LCMS2),y) -OPENJPEG_DEPENDENCIES += lcms2 -OPENJPEG_CONF_OPTS += --enable-lcms2 -else -OPENJPEG_CONF_OPTS += --disable-lcms2 -endif - -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/openmpi/Config.in b/package/openmpi/Config.in new file mode 100644 index 0000000000..4413c55f9c --- /dev/null +++ b/package/openmpi/Config.in @@ -0,0 +1,20 @@ +comment "openmpi needs a toolchain w/ dynamic library, NPTL, wchar, C++" + depends on BR2_USE_MMU + depends on !BR2_sparc + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_OPENMPI + bool "openmpi" + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS # dlfcn.h + # from the configure script: "Sparc v8 target is not supported + # in this release of Open MPI" + depends on !BR2_sparc + help + A High Performance Message Passing Library. + + https://www.open-mpi.org/ diff --git a/package/openmpi/openmpi-mips32-fortran.cache b/package/openmpi/openmpi-mips32-fortran.cache new file mode 100644 index 0000000000..473f73a22e --- /dev/null +++ b/package/openmpi/openmpi-mips32-fortran.cache @@ -0,0 +1,51 @@ +ompi_cv_fortran_sizeof_CHARACTER=1 +ompi_cv_fortran_sizeof_LOGICAL=4 +ompi_cv_fortran_sizeof_LOGICALp1=1 +ompi_cv_fortran_sizeof_LOGICALp2=2 +ompi_cv_fortran_sizeof_LOGICALp4=4 +ompi_cv_fortran_sizeof_LOGICALp8=8 +ompi_cv_fortran_sizeof_INTEGER=4 +ompi_cv_fortran_sizeof_INTEGERp1=1 +ompi_cv_fortran_sizeof_INTEGERp2=2 +ompi_cv_fortran_sizeof_INTEGERp4=4 +ompi_cv_fortran_sizeof_INTEGERp8=8 +ompi_cv_fortran_sizeof_REAL=4 +ompi_cv_fortran_sizeof_REALp4=4 +ompi_cv_fortran_sizeof_REALp8=8 +ompi_cv_fortran_sizeof_DOUBLE_PRECISION=8 +ompi_cv_fortran_sizeof_COMPLEX=8 +ompi_cv_fortran_sizeof_COMPLEXp8=8 +ompi_cv_fortran_sizeof_COMPLEXp16=16 +ompi_cv_fortran_sizeof_DOUBLE_COMPLEX=16 +ompi_cv_fortran_alignment_CHARACTER=1 +ompi_cv_fortran_alignment_LOGICAL=4 +ompi_cv_fortran_alignment_LOGICALp1=1 +ompi_cv_fortran_alignment_LOGICALp2=2 +ompi_cv_fortran_alignment_LOGICALp4=4 +ompi_cv_fortran_alignment_LOGICALp8=8 +ompi_cv_fortran_alignment_INTEGER=4 +ompi_cv_fortran_alignment_INTEGERp1=1 +ompi_cv_fortran_alignment_INTEGERp2=2 +ompi_cv_fortran_alignment_INTEGERp4=4 +ompi_cv_fortran_alignment_INTEGERp8=8 +ompi_cv_fortran_alignment_REAL=4 +ompi_cv_fortran_alignment_REALp4=4 +ompi_cv_fortran_alignment_REALp8=8 +ompi_cv_fortran_alignment_DOUBLE_PRECISION=8 +ompi_cv_fortran_alignment_COMPLEX=4 +ompi_cv_fortran_alignment_COMPLEXp8=4 +ompi_cv_fortran_alignment_COMPLEXp16=8 +ompi_cv_fortran_alignment_DOUBLE_COMPLEX=8 +ompi_cv_fortran_kind_value_C_SIGNED_CHAR=1 +ompi_cv_fortran_kind_value_C_SHORT=2 +ompi_cv_fortran_kind_value_C_INT=4 +ompi_cv_fortran_kind_value_C_INT16_T=2 +ompi_cv_fortran_kind_value_C_INT32_T=4 +ompi_cv_fortran_kind_value_C_INT64_T=8 +ompi_cv_fortran_kind_value_C_LONG_LONG=8 +ompi_cv_fortran_kind_value_C_FLOAT=4 +ompi_cv_fortran_kind_value_C_FLOAT_COMPLEX=4 +ompi_cv_fortran_kind_value_C_DOUBLE=8 +ompi_cv_fortran_kind_value_C_DOUBLE_COMPLEX=8 +ompi_cv_fortran_true_value=1 +ompi_cv_fortran_sizeof_type_test_mpi_handle_=4 diff --git a/package/openmpi/openmpi-mips64-fortran.cache b/package/openmpi/openmpi-mips64-fortran.cache new file mode 100644 index 0000000000..7f0209971a --- /dev/null +++ b/package/openmpi/openmpi-mips64-fortran.cache @@ -0,0 +1,60 @@ +ompi_cv_fortran_sizeof_CHARACTER=1 +ompi_cv_fortran_sizeof_LOGICAL=4 +ompi_cv_fortran_sizeof_LOGICALp1=1 +ompi_cv_fortran_sizeof_LOGICALp2=2 +ompi_cv_fortran_sizeof_LOGICALp4=4 +ompi_cv_fortran_sizeof_LOGICALp8=8 +ompi_cv_fortran_sizeof_INTEGER=4 +ompi_cv_fortran_sizeof_INTEGERp1=1 +ompi_cv_fortran_sizeof_INTEGERp2=2 +ompi_cv_fortran_sizeof_INTEGERp4=4 +ompi_cv_fortran_sizeof_INTEGERp8=8 +ompi_cv_fortran_sizeof_INTEGERp16=16 +ompi_cv_fortran_sizeof_REAL=4 +ompi_cv_fortran_sizeof_REALp4=4 +ompi_cv_fortran_sizeof_REALp8=8 +ompi_cv_fortran_sizeof_REALp16=16 +ompi_cv_fortran_sizeof_DOUBLE_PRECISION=8 +ompi_cv_fortran_sizeof_COMPLEX=8 +ompi_cv_fortran_sizeof_COMPLEXp8=8 +ompi_cv_fortran_sizeof_COMPLEXp16=16 +ompi_cv_fortran_sizeof_COMPLEXp32=32 +ompi_cv_fortran_sizeof_DOUBLE_COMPLEX=16 +ompi_cv_fortran_alignment_CHARACTER=1 +ompi_cv_fortran_alignment_LOGICAL=4 +ompi_cv_fortran_alignment_LOGICALp1=1 +ompi_cv_fortran_alignment_LOGICALp2=2 +ompi_cv_fortran_alignment_LOGICALp4=4 +ompi_cv_fortran_alignment_LOGICALp8=8 +ompi_cv_fortran_alignment_INTEGER=4 +ompi_cv_fortran_alignment_INTEGERp1=1 +ompi_cv_fortran_alignment_INTEGERp2=2 +ompi_cv_fortran_alignment_INTEGERp4=4 +ompi_cv_fortran_alignment_INTEGERp8=8 +ompi_cv_fortran_alignment_REAL=4 +ompi_cv_fortran_alignment_REALp4=4 +ompi_cv_fortran_alignment_REALp8=8 +ompi_cv_fortran_alignment_REALp16=16 +ompi_cv_fortran_alignment_DOUBLE_PRECISION=8 +ompi_cv_fortran_alignment_COMPLEX=4 +ompi_cv_fortran_alignment_COMPLEXp8=4 +ompi_cv_fortran_alignment_COMPLEXp16=8 +ompi_cv_fortran_alignment_COMPLEXp32=16 +ompi_cv_fortran_alignment_DOUBLE_COMPLEX=8 +ompi_cv_fortran_kind_value_C_SIGNED_CHAR=1 +ompi_cv_fortran_kind_value_C_SHORT=2 +ompi_cv_fortran_kind_value_C_INT=4 +ompi_cv_fortran_kind_value_C_INT16_T=2 +ompi_cv_fortran_kind_value_C_INT32_T=4 +ompi_cv_fortran_kind_value_C_INT64_T=8 +ompi_cv_fortran_kind_value_C_LONG_LONG=8 +ompi_cv_fortran_kind_value_C_LONG_DOUBLE=16 +ompi_cv_fortran_kind_value_C_LONG_DOUBLE_COMPLEX=16 +ompi_cv_fortran_kind_value_C_FLOAT=4 +ompi_cv_fortran_kind_value_C_FLOAT_COMPLEX=4 +ompi_cv_fortran_kind_value_C_DOUBLE=8 +ompi_cv_fortran_kind_value_C_DOUBLE_COMPLEX=8 +ompi_cv_fortran_kind_value_0=0 +ompi_cv_real16_c_equiv=yes +ompi_cv_fortran_true_value=1 +ompi_cv_fortran_sizeof_type_test_mpi_handle_=4 diff --git a/package/openmpi/openmpi.hash b/package/openmpi/openmpi.hash new file mode 100644 index 0000000000..92152a2431 --- /dev/null +++ b/package/openmpi/openmpi.hash @@ -0,0 +1,3 @@ +# From: https://www.open-mpi.org/software/ompi/v1.10/ +md5 b2f43d9635d2d52826e5ef9feb97fd4c openmpi-1.10.2.tar.bz2 +sha1 03934fc0a2dd0d0d2d0459d714a976eabca938fb openmpi-1.10.2.tar.bz2 diff --git a/package/openmpi/openmpi.mk b/package/openmpi/openmpi.mk new file mode 100644 index 0000000000..c5b8a01b6f --- /dev/null +++ b/package/openmpi/openmpi.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# openmpi +# +################################################################################ + +OPENMPI_VERSION_MAJOR = 1.10 +OPENMPI_VERSION = $(OPENMPI_VERSION_MAJOR).2 +OPENMPI_SITE = https://www.open-mpi.org/software/ompi/v$(OPENMPI_VERSION_MAJOR)/downloads +OPENMPI_SOURCE = openmpi-$(OPENMPI_VERSION).tar.bz2 +OPENMPI_LICENSE = BSD-3c +OPENMPI_LICENSE_FILES = LICENSE +OPENMPI_INSTALL_STAGING = YES +OPENMPI_CONF_OPTS = --disable-vt + +# Enabling Fortran support requires pre-seeding the configure script +# with various values that cannot be guessed, so we provide cache +# files for various architectures. + +ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y) +ifeq ($(BR2_mips)$(BR2_mipsel),y) +OPENMPI_FORTRAN_CONF_CACHE = package/openmpi/openmpi-mips32-fortran.cache +else ifeq ($(BR2_mips64)$(BR2_mips64el),y) +OPENMPI_FORTRAN_CONF_CACHE = package/openmpi/openmpi-mips64-fortran.cache +endif +endif + +ifneq ($(OPENMPI_FORTRAN_CONF_CACHE),) +define OPENMPI_COPY_FORTRAN_CACHE + cp $(OPENMPI_FORTRAN_CONF_CACHE) $(@D)/openmpi-config.cache +endef + +OPENMPI_POST_PATCH_HOOKS += OPENMPI_COPY_FORTRAN_CACHE +OPENMPI_CONF_OPTS += \ + --enable-mpi-fortran=yes \ + --cache-file=$(@D)/openmpi-config.cache +else +OPENMPI_CONF_OPTS += --enable-mpi-fortran=no +endif + +$(eval $(autotools-package)) diff --git a/package/openntpd/Config.in b/package/openntpd/Config.in index 1433b0979a..1b856c03b8 100644 --- a/package/openntpd/Config.in +++ b/package/openntpd/Config.in @@ -13,4 +13,5 @@ config BR2_PACKAGE_OPENNTPD comment "openntpd needs a toolchain w/ NPTL" depends on BR2_USE_MMU + depends on !BR2_PACKAGE_NTP depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/openntpd/openntpd.hash b/package/openntpd/openntpd.hash index e066904cfd..7f5d3e3f63 100644 --- a/package/openntpd/openntpd.hash +++ b/package/openntpd/openntpd.hash @@ -1,2 +1,2 @@ -# From ftp://ftp.openbsd.org/pub/OpenBSD/OpenNTPD/SHA256 -sha256 a993d95976e375acc0ab1a677fd268f55024477835633c8ae404895046bccb23 openntpd-5.7p4.tar.gz +# From http://www.openntpd.org/txt/release-6.0p1.txt +sha256 b1ab80094788912adb12b33cb1f251cc58db39294c1b5c6376972f5f7ba577e8 openntpd-6.0p1.tar.gz diff --git a/package/openntpd/openntpd.mk b/package/openntpd/openntpd.mk index 40bb1bf7e0..9c98064c7a 100644 --- a/package/openntpd/openntpd.mk +++ b/package/openntpd/openntpd.mk @@ -4,10 +4,12 @@ # ################################################################################ -OPENNTPD_VERSION = 5.7p4 +OPENNTPD_VERSION = 6.0p1 OPENNTPD_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenNTPD OPENNTPD_LICENSE = MIT-like, BSD-2c, BSD-3c OPENNTPD_LICENSE_FILES = COPYING +# Ships a beta libtool version hence our patch doesn't apply. +OPENNTPD_AUTORECONF = YES # openntpd uses pthread functions for arc4random emulation but forgets # to use -pthread diff --git a/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch b/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch index e46cbf7423..1f5eb89de5 100644 --- a/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch +++ b/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch @@ -1,6 +1,6 @@ -From ebc5aeff65aeda610d9e23ecf4b26b79f9305a0e Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 1 May 2015 12:19:34 +0200 +From 4e8aa3a9e1696e5e02ff0a3ae5a72f034ee60c2f Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 25 May 2016 15:57:10 +0200 Subject: [PATCH] install the stack libraries to "lib" subdirectory Using '.' to install the stack libraries is not correct since @@ -36,98 +36,132 @@ refactoring is needed to fix this properly. [1] http://sourceforge.net/p/openpowerlink/discussion/newbie/thread/3f13af65/#8f80/a50a/4649/f07c -Signed-off-by: Romain Naour +[rebase on v2.5.0] +Signed-off-by: Romain Naour --- + stack/proj/linux/liboplkcn-sim/CMakeLists.txt | 2 +- stack/proj/linux/liboplkcn/CMakeLists.txt | 2 +- stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt | 2 +- stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt | 2 +- stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmn-sim/CMakeLists.txt | 2 +- stack/proj/linux/liboplkmn/CMakeLists.txt | 2 +- stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmnapp-kernelpcp/CMakeLists.txt | 2 +- stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt | 2 +- stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt | 2 +- - 8 files changed, 8 insertions(+), 8 deletions(-) + 11 files changed, 11 insertions(+), 11 deletions(-) +diff --git a/stack/proj/linux/liboplkcn-sim/CMakeLists.txt b/stack/proj/linux/liboplkcn-sim/CMakeLists.txt +index 73b641d..b8b5c9d 100644 +--- a/stack/proj/linux/liboplkcn-sim/CMakeLists.txt ++++ b/stack/proj/linux/liboplkcn-sim/CMakeLists.txt +@@ -96,4 +96,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkcn/CMakeLists.txt b/stack/proj/linux/liboplkcn/CMakeLists.txt -index b7c73e6..23e3112 100644 +index 323eafc..459124a 100644 --- a/stack/proj/linux/liboplkcn/CMakeLists.txt +++ b/stack/proj/linux/liboplkcn/CMakeLists.txt -@@ -88,4 +88,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -90,4 +90,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt -index 6c3bec6..a6f9271 100644 +index f8b1850..c16194a 100644 --- a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt +++ b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt -@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -83,4 +83,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt -index fdf6fd4..6df8bb7 100644 +index 0f07e63..0074616 100644 --- a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt +++ b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt -@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -83,4 +83,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt -index 440f02c..6ffcbe9 100644 +index d0dad78..ee0fdec 100644 --- a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt +++ b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt -@@ -77,4 +77,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -76,4 +76,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmn-sim/CMakeLists.txt b/stack/proj/linux/liboplkmn-sim/CMakeLists.txt +index eb6396a..5beaa07 100644 +--- a/stack/proj/linux/liboplkmn-sim/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmn-sim/CMakeLists.txt +@@ -91,4 +91,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkmn/CMakeLists.txt b/stack/proj/linux/liboplkmn/CMakeLists.txt -index 8f97144..e29f795 100644 +index cf7927f..6b19557 100644 --- a/stack/proj/linux/liboplkmn/CMakeLists.txt +++ b/stack/proj/linux/liboplkmn/CMakeLists.txt -@@ -92,4 +92,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -89,4 +89,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt -index df74265..2ba1cd1 100644 +index 9daa2df..bfccb25 100644 --- a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt +++ b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt -@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -82,4 +82,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmnapp-kernelpcp/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-kernelpcp/CMakeLists.txt +index 0135f46..83128eb 100644 +--- a/stack/proj/linux/liboplkmnapp-kernelpcp/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmnapp-kernelpcp/CMakeLists.txt +@@ -91,4 +91,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt -index 98835c7..12b3dc6 100644 +index cd97882..aaaa526 100644 --- a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt +++ b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt -@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -82,4 +82,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) diff --git a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt -index b4dd41b..cf875ca 100644 +index 7e1a820..82205c2 100644 --- a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt +++ b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt -@@ -80,4 +80,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) +@@ -79,4 +79,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") -INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) +INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) -- -2.4.3 +2.8.1 diff --git a/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch b/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch index 7553c30eb6..7d338a4593 100644 --- a/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch +++ b/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch @@ -1,6 +1,6 @@ -From c904fb6ce3c29e77d51d8bcbbbdd48b8d22c754b Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Mon, 4 May 2015 11:47:05 +0200 +From 8cb39257e12d6b82190aec8ab9ad89a9ee13af71 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 25 May 2016 15:57:29 +0200 Subject: [PATCH] cmake: install oplk headers files In order to be able to link a third party application @@ -9,16 +9,16 @@ oplk headers files related to openpowerlink stack. Install all headers file from STACK_INCLUDE_DIR/oplk. -Signed-off-by: Romain Naour +Signed-off-by: Romain Naour --- stack/CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/stack/CMakeLists.txt b/stack/CMakeLists.txt -index 9ff13f4..f4614cd 100644 +index 3b11c54..4eadf44 100644 --- a/stack/CMakeLists.txt +++ b/stack/CMakeLists.txt -@@ -103,3 +103,8 @@ ELSEIF((CMAKE_SYSTEM_NAME STREQUAL "Generic") AND (CMAKE_SYSTEM_PROCESSOR STREQU +@@ -105,3 +105,8 @@ ELSEIF((CMAKE_SYSTEM_NAME STREQUAL "Generic") AND (CMAKE_SYSTEM_PROCESSOR STREQU ELSE() MESSAGE(FATAL_ERROR "Unknown Platform and processor combination ${CMAKE_SYSTEM_NAME} and ${CMAKE_SYSTEM_PROCESSOR}!!") ENDIF() @@ -28,5 +28,5 @@ index 9ff13f4..f4614cd 100644 +################################################################################ +INSTALL(DIRECTORY ${STACK_INCLUDE_DIR}/oplk DESTINATION "include") -- -2.4.3 +2.8.1 diff --git a/package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch b/package/openpowerlink/0003-Add-top-level-CMakeLists.txt.patch similarity index 90% rename from package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch rename to package/openpowerlink/0003-Add-top-level-CMakeLists.txt.patch index 259a81a40d..9cbf02d28b 100644 --- a/package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch +++ b/package/openpowerlink/0003-Add-top-level-CMakeLists.txt.patch @@ -1,6 +1,6 @@ -From 6f4bcf829efe5ce31592003e049606ae1de05e90 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 12 Aug 2015 11:24:24 +0200 +From 7f81c74726aec4aef6bd93ee644200ab34375437 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 25 May 2016 15:59:20 +0200 Subject: [PATCH] Add top level CMakeLists.txt This CMakeLists.txt can be used to build openpowerlink @@ -23,21 +23,23 @@ http://autobuild.buildroot.net/results/da4/da445b65cb136d71577f04e3a17fdb2ef6302 This patch has not been accepted by upstream: https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 -Signed-off-by: Romain Naour +Add PCIe support (v2.3.2) + +Signed-off-by: Romain Naour --- - CMakeLists.txt | 36 +++++++++++++++ + CMakeLists.txt | 42 +++++++++++++++++ apps/common/cmake/findoplklib.cmake | 68 +++++++++++++++------------- apps/common/cmake/linkoplklib.cmake | 2 +- drivers/linux/drv_daemon_pcap/CMakeLists.txt | 12 +++-- - 4 files changed, 83 insertions(+), 35 deletions(-) + 4 files changed, 89 insertions(+), 35 deletions(-) create mode 100644 CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 -index 0000000..96e3d0f +index 0000000..28d4e7a --- /dev/null +++ b/CMakeLists.txt -@@ -0,0 +1,36 @@ +@@ -0,0 +1,42 @@ + +CMAKE_MINIMUM_REQUIRED (VERSION 2.8.7) + @@ -47,12 +49,18 @@ index 0000000..96e3d0f + ADD_SUBDIRECTORY("stack") +ENDIF (CFG_OPLK_LIB) + -+#### Linux kernel module #### ++#### Linux kernel Ethernet module #### + +IF (CFG_KERNEL_DRIVERS) + ADD_SUBDIRECTORY("drivers/linux/drv_kernelmod_edrv") +ENDIF (CFG_KERNEL_DRIVERS) + ++#### Linux kernel PCIe module #### ++ ++IF (CFG_KERNEL_PCIE_DRIVERS) ++ ADD_SUBDIRECTORY("drivers/linux/drv_kernelmod_pcie") ++ENDIF (CFG_KERNEL_PCIE_DRIVERS) ++ +#### Pcap userspace driver #### + +IF (CFG_PCAP_DAEMON) @@ -75,10 +83,10 @@ index 0000000..96e3d0f + ADD_SUBDIRECTORY("apps/demo_mn_qt") +ENDIF (CFG_DEMO_MN_QT) diff --git a/apps/common/cmake/findoplklib.cmake b/apps/common/cmake/findoplklib.cmake -index 1bf570e..79ea35b 100644 +index f7e710f..b8b04c5 100644 --- a/apps/common/cmake/findoplklib.cmake +++ b/apps/common/cmake/findoplklib.cmake -@@ -81,36 +81,42 @@ MACRO(FIND_OPLK_LIBRARY OPLK_NODE_TYPE) +@@ -85,36 +85,42 @@ MACRO(FIND_OPLK_LIBRARY OPLK_NODE_TYPE) # Set oplk library directory SET(OPLKLIB_DIR ${OPLK_BASE_DIR}/stack/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR}) @@ -166,7 +174,7 @@ index 49aab66..d9fd418 100644 TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME} optimized ${OPLKLIB}) ENDIF() diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt -index 2702abd..81bb598 100644 +index 1ef9353..e720834 100644 --- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt +++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt @@ -104,9 +104,15 @@ ENDIF() @@ -189,5 +197,5 @@ index 2702abd..81bb598 100644 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -pedantic -std=c99 -pthread -fno-strict-aliasing") -- -2.5.5 +2.8.1 diff --git a/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch b/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch deleted file mode 100644 index 668c907b3c..0000000000 --- a/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch +++ /dev/null @@ -1,154 +0,0 @@ -From c354e8d9599aa02566c8acc341f3a2c73281483b Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 17 Sep 2014 13:27:44 +0200 -Subject: [PATCH] cmake: use CMAKE_CURRENT_SOURCE_DIR instead of - CMAKE_SOURCE_DIR - -The aim of this patch is to be able to call each subproject's CMakeLists.txt -from a top-level CMakeLists.txt. - -This will help to build automatically the epl libraries, epl driver, unittests -and demos. - -This patch has been submitted upstream: -https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 - -Signed-off-by: Romain Naour ---- - drivers/linux/drv_daemon_pcap/CMakeLists.txt | 6 +++--- - drivers/linux/drv_kernelmod_edrv/CMakeLists.txt | 8 ++++---- - hardware/CMakeLists.txt | 4 ++-- - hardware/drivers/hostinterface/CMakeLists.txt | 2 +- - hardware/drivers/openmac/CMakeLists.txt | 4 ++-- - unittests/CMakeLists.txt | 4 ++-- - 6 files changed, 14 insertions(+), 14 deletions(-) - -diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt -index 4c3f933..9041e4d 100644 ---- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt -+++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt -@@ -57,8 +57,8 @@ MESSAGE(STATUS "Configuring ${EXE_NAME}") - ############################################################################### - # Set global directories - ############################################################################### --SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..) --SET(DRV_SOURCE_DIR ${CMAKE_SOURCE_DIR}) -+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..) -+SET(DRV_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) - SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib) - SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include) - SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools) -@@ -66,7 +66,7 @@ SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools) - ############################################################################### - # Include CMake Modules - ############################################################################### --SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH}) -+SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH}) - - # include standard cmake modules - INCLUDE(CMakeDependentOption) -diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -index 2ad1a0d..af85f86 100644 ---- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -+++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -@@ -75,7 +75,7 @@ SET_PROPERTY(CACHE CFG_POWERLINK_EDRV PROPERTY STRINGS 8139 82573 8255x i210 811 - ################################################################################ - # Set global directories - ################################################################################ --SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..) -+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..) - SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib) - SET(STACK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src) - SET(COMMON_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src/common) -@@ -152,10 +152,10 @@ IF(CFG_OPLK_MN) - ENDIF() - SET(MODULE_DEFS "${MODULE_DEFS} -DCONFIG_MN") - SET(MODULE_NAME "${MODULE_NAME}mn") -- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/mn) -+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/mn) - ELSE() - SET(MODULE_NAME "${MODULE_NAME}cn") -- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/cn) -+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/cn) - ENDIF() - - ############################################################################### -@@ -189,7 +189,7 @@ ENDFOREACH() - # - SET(MODULE_SOURCE_FILES - ${MODULE_SOURCE_FILES} -- ${CMAKE_SOURCE_DIR}/main.c -+ ${CMAKE_CURRENT_SOURCE_DIR}/main.c - ${CONTRIB_SOURCE_DIR}/trace/trace-printk.c - ${EDRV_SOURCE_DIR}/edrvcyclic.c - ${KERNEL_SOURCE_DIR}/ctrl/ctrlk.c -diff --git a/hardware/CMakeLists.txt b/hardware/CMakeLists.txt -index 218c4eb..3ba85ca 100644 ---- a/hardware/CMakeLists.txt -+++ b/hardware/CMakeLists.txt -@@ -40,7 +40,7 @@ INCLUDE(reduceboardname) - - ################################################################################ - # Set paths --SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..) -+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..) - SET(OMETHLIB_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/openmac) - SET(OMETHLIB_BUILD_DIR ${PROJECT_BINARY_DIR}/drivers/openmac) - SET(HOSTIF_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/hostinterface) -@@ -56,7 +56,7 @@ STRING(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSTEM_PROCESSOR_DIR) - - IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - SET(CMAKE_INSTALL_PREFIX -- ${CMAKE_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE -+ ${CMAKE_CURRENT_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE - ) - ENDIF() - -diff --git a/hardware/drivers/hostinterface/CMakeLists.txt b/hardware/drivers/hostinterface/CMakeLists.txt -index 1a9d2aa..9c56c16 100644 ---- a/hardware/drivers/hostinterface/CMakeLists.txt -+++ b/hardware/drivers/hostinterface/CMakeLists.txt -@@ -71,7 +71,7 @@ ELSE() - SET( HOSTIF_LIB_NAME "${HOSTIF_NAME}") - ENDIF() - --SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common) -+SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common) - SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) - - ######################################################################## -diff --git a/hardware/drivers/openmac/CMakeLists.txt b/hardware/drivers/openmac/CMakeLists.txt -index 560c0d9..d532996 100644 ---- a/hardware/drivers/openmac/CMakeLists.txt -+++ b/hardware/drivers/openmac/CMakeLists.txt -@@ -55,8 +55,8 @@ ELSE() - SET(OMETH_LIB_NAME "${OMETH_NAME}") - ENDIF() - --SET(BOARD_EXAMPLE_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) --SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common) -+SET(BOARD_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) -+SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common) - SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) - - ######################################################################## -diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt -index 533d4e7..4460c2e 100644 ---- a/unittests/CMakeLists.txt -+++ b/unittests/CMakeLists.txt -@@ -55,10 +55,10 @@ ENDMACRO(ADD_UNIT_TEST) - - ################################################################################ - # Set general directories --SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..) -+SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..) - SET(OPLK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src) - SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include) --SET(TEST_COMMON_SOURCE_DIR ${CMAKE_SOURCE_DIR}/common) -+SET(TEST_COMMON_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/common) - - # We need a oplkcfg.h file for compiling the sources - # We are using the project for the complete MN library --- -2.4.3 - diff --git a/package/openpowerlink/0004-FIX-Veth-Fix-compilation-on-Linux-kernels-4.7.patch b/package/openpowerlink/0004-FIX-Veth-Fix-compilation-on-Linux-kernels-4.7.patch new file mode 100644 index 0000000000..d246f46681 --- /dev/null +++ b/package/openpowerlink/0004-FIX-Veth-Fix-compilation-on-Linux-kernels-4.7.patch @@ -0,0 +1,35 @@ +From 041799c4990d56b9822ee3ae3ffbb181e5c16c81 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Thu, 3 Nov 2016 21:09:57 +0100 +Subject: [PATCH] [FIX] Veth: Fix compilation on Linux kernels >= 4.7 + +dev->trans_start was replaced by netif_trans_update helper in kernel +4.7 by commit 860e9538a9482bb84589f7d0718a7e6d0a944d58. + +Upstream status: Pending +https://github.com/OpenAutomationTechnologies/openPOWERLINK_V2/pull/177 + +Signed-off-by: Romain Naour +--- + stack/src/kernel/veth/veth-linuxkernel.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/stack/src/kernel/veth/veth-linuxkernel.c b/stack/src/kernel/veth/veth-linuxkernel.c +index 8c68c47..ecdc000 100644 +--- a/stack/src/kernel/veth/veth-linuxkernel.c ++++ b/stack/src/kernel/veth/veth-linuxkernel.c +@@ -287,7 +287,11 @@ static int vethStartXmit(struct sk_buff* pSkb_p, struct net_device* pNetDevice_p + struct net_device_stats* pStats = netdev_priv(pNetDevice_p); + + //save time stamp ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 7, 0)) + pNetDevice_p->trans_start = jiffies; ++#else ++ netif_trans_update(pNetDevice_p); ++#endif + + frameInfo.frame.pBuffer = (tPlkFrame*)pSkb_p->data; + frameInfo.frameSize = pSkb_p->len; +-- +2.5.5 + diff --git a/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch b/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch deleted file mode 100644 index 3957cd1ebd..0000000000 --- a/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch +++ /dev/null @@ -1,125 +0,0 @@ -From 7aace6a9d28b02c4325610255dc8afe198f02c4d Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 12 Aug 2015 10:54:32 +0200 -Subject: [PATCH] Use PROJECT_NAME instead of CMAKE_PROJECT_NAME - -In order to support a top level CMakeLists.txt, use the current project -name instead of the top level one. - -This patch has been submitted upstream: -https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 - -Signed-off-by: Romain Naour ---- - apps/demo_cn_console/CMakeLists.txt | 2 +- - apps/demo_cn_console/linux.cmake | 2 +- - apps/demo_mn_console/CMakeLists.txt | 4 ++-- - apps/demo_mn_console/linux.cmake | 2 +- - apps/demo_mn_qt/CMakeLists.txt | 4 ++-- - apps/demo_mn_qt/linux.cmake | 2 +- - drivers/linux/drv_daemon_pcap/CMakeLists.txt | 2 +- - drivers/linux/drv_kernelmod_edrv/CMakeLists.txt | 10 +++++----- - 8 files changed, 14 insertions(+), 14 deletions(-) - -diff --git a/apps/demo_cn_console/CMakeLists.txt b/apps/demo_cn_console/CMakeLists.txt -index cd3b418..c5a47a8 100644 ---- a/apps/demo_cn_console/CMakeLists.txt -+++ b/apps/demo_cn_console/CMakeLists.txt -@@ -112,6 +112,6 @@ TARGET_LINK_LIBRARIES(demo_cn_console ${ARCH_LIBRARIES}) - ################################################################################ - # Installation rules - --INSTALL(TARGETS demo_cn_console RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(TARGETS demo_cn_console RUNTIME DESTINATION ${PROJECT_NAME}) - - -diff --git a/apps/demo_cn_console/linux.cmake b/apps/demo_cn_console/linux.cmake -index 409bf11..76e381d 100644 ---- a/apps/demo_cn_console/linux.cmake -+++ b/apps/demo_cn_console/linux.cmake -@@ -53,5 +53,5 @@ SET (ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) - ################################################################################ - # Set architecture specific installation files - --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) - -diff --git a/apps/demo_mn_console/CMakeLists.txt b/apps/demo_mn_console/CMakeLists.txt -index 0c54a98..d8df68e 100644 ---- a/apps/demo_mn_console/CMakeLists.txt -+++ b/apps/demo_mn_console/CMakeLists.txt -@@ -120,6 +120,6 @@ TARGET_LINK_LIBRARIES(demo_mn_console ${ARCH_LIBRARIES}) - ################################################################################ - # Installation rules - --INSTALL(TARGETS demo_mn_console RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(TARGETS demo_mn_console RUNTIME DESTINATION ${PROJECT_NAME}) -+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${PROJECT_NAME}) - -diff --git a/apps/demo_mn_console/linux.cmake b/apps/demo_mn_console/linux.cmake -index a9e9072..a994928 100644 ---- a/apps/demo_mn_console/linux.cmake -+++ b/apps/demo_mn_console/linux.cmake -@@ -53,5 +53,5 @@ SET (ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) - ################################################################################ - # Set architecture specific installation files - --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) - -diff --git a/apps/demo_mn_qt/CMakeLists.txt b/apps/demo_mn_qt/CMakeLists.txt -index ff3a9aa..282a9d8 100644 ---- a/apps/demo_mn_qt/CMakeLists.txt -+++ b/apps/demo_mn_qt/CMakeLists.txt -@@ -161,5 +161,5 @@ TARGET_LINK_LIBRARIES(demo_mn_qt ${ARCH_LIBRARIES} ${QT_LIBRARIES}) - ################################################################################ - # Installation rules - --INSTALL(TARGETS demo_mn_qt RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(TARGETS demo_mn_qt RUNTIME DESTINATION ${PROJECT_NAME}) -+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${PROJECT_NAME}) -diff --git a/apps/demo_mn_qt/linux.cmake b/apps/demo_mn_qt/linux.cmake -index 6f19ff2..6ed75ee 100644 ---- a/apps/demo_mn_qt/linux.cmake -+++ b/apps/demo_mn_qt/linux.cmake -@@ -45,5 +45,5 @@ SET(ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) - ################################################################################ - # Set architecture specific installation files - --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) - -diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt -index 9041e4d..2702abd 100644 ---- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt -+++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt -@@ -136,5 +136,5 @@ SET_PROPERTY(TARGET ${EXE_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEB - TARGET_LINK_LIBRARIES(${EXE_NAME} ${OPLKLIB} ${ARCH_LIBRARIES}) - - # add installation rules --INSTALL(TARGETS ${EXE_NAME} RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(TARGETS ${EXE_NAME} RUNTIME DESTINATION ${PROJECT_NAME}) - -diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -index af85f86..59400c0 100644 ---- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -+++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt -@@ -301,8 +301,8 @@ ADD_CUSTOM_TARGET( - ################################################################################ - # add installation rules - --INSTALL(FILES ${MODULE_OUTPUT_DIR}/${MODULE_NAME}.ko DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(FILES ${TOOLS_DIR}/linux/50-openPOWERLINK.rules DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkload DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkunload DESTINATION ${CMAKE_PROJECT_NAME}) --INSTALL(PROGRAMS ${TOOLS_DIR}/linux/devices.txt DESTINATION ${CMAKE_PROJECT_NAME}) -+INSTALL(FILES ${MODULE_OUTPUT_DIR}/${MODULE_NAME}.ko DESTINATION ${PROJECT_NAME}) -+INSTALL(FILES ${TOOLS_DIR}/linux/50-openPOWERLINK.rules DESTINATION ${PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkload DESTINATION ${PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkunload DESTINATION ${PROJECT_NAME}) -+INSTALL(PROGRAMS ${TOOLS_DIR}/linux/devices.txt DESTINATION ${PROJECT_NAME}) --- -2.4.3 - diff --git a/package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch b/package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch deleted file mode 100644 index 383f047588..0000000000 --- a/package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 42a95209c5650662b86d222678ec14e7edfae156 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 25 May 2016 13:26:49 +0200 -Subject: [PATCH] veth: avoid kernel header issue with musl - -The Virtual Ethernet driver doesn't build when the musl libc is used on the -system. As stated in the musl wiki [1], the userspace and kernel headers are -mixed leading to a "clash" with the definitions provided by musl. - -Remove netinet/if_ether.h userspace header and replace ETHER_ADDR_LEN by -ETH_ALEN [2] and ETHERMTU by ETH_DATA_LEN [3] in veth-linuxuser.c. - -Fixes: -http://autobuild.buildroot.org/results/2ca/2ca04bb046263e479e7597867b56469893d3c11d/build-end.log - -Upsteam status: pending -https://github.com/OpenAutomationTechnologies/openPOWERLINK_V2/pull/120 - -[Rebase on v2.2.2] -[1] http://wiki.musl-libc.org/wiki/FAQ#Q:_why_am_i_getting_.22error:_redefinition_of_struct_ethhdr.2Ftcphdr.2Fetc.22_.3F -[2] https://git.musl-libc.org/cgit/musl/tree/include/net/ethernet.h?h=v1.1.14#n35 -[3] https://git.musl-libc.org/cgit/musl/tree/include/net/ethernet.h?h=v1.1.14#n48 - -Signed-off-by: Romain Naour ---- - stack/src/kernel/veth/veth-linuxuser.c | 13 ++++++------- - 1 file changed, 6 insertions(+), 7 deletions(-) - -diff --git a/stack/src/kernel/veth/veth-linuxuser.c b/stack/src/kernel/veth/veth-linuxuser.c -index 2a0bdd0..2bfaa87 100644 ---- a/stack/src/kernel/veth/veth-linuxuser.c -+++ b/stack/src/kernel/veth/veth-linuxuser.c -@@ -61,7 +61,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - #include - #include - #include --#include - - //============================================================================// - // G L O B A L D E F I N I T I O N S // -@@ -248,7 +247,7 @@ static void getMacAdrs(UINT8* pMac_p) - - close(sock); - -- OPLK_MEMCPY(pMac_p, &ifr.ifr_hwaddr.sa_data[0], ETHER_ADDR_LEN); -+ OPLK_MEMCPY(pMac_p, &ifr.ifr_hwaddr.sa_data[0], ETH_ALEN); - } - - //------------------------------------------------------------------------------ -@@ -272,9 +271,9 @@ static tOplkError veth_receiveFrame(tFrameInfo* pFrameInfo_p, - - // replace the MAC address of the POWERLINK Ethernet interface with virtual - // Ethernet MAC address before forwarding it into the virtual Ethernet interface -- if (OPLK_MEMCMP(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.macAdrs, ETHER_ADDR_LEN) == 0) -+ if (OPLK_MEMCMP(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.macAdrs, ETH_ALEN) == 0) - { -- OPLK_MEMCPY(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.tapMacAdrs, ETHER_ADDR_LEN); -+ OPLK_MEMCPY(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.tapMacAdrs, ETH_ALEN); - } - - nwrite = write(vethInstance_l.fd, pFrameInfo_p->pFrame, pFrameInfo_p->frameSize); -@@ -302,7 +301,7 @@ to be used as a thread which does a blocking read in a while loop. - //------------------------------------------------------------------------------ - static void* vethRecvThread(void* pArg_p) - { -- UINT8 buffer[ETHERMTU]; -+ UINT8 buffer[ETH_DATA_LEN]; - UINT nread; - tFrameInfo frameInfo; - tOplkError ret = kErrorOk; -@@ -331,7 +330,7 @@ static void* vethRecvThread(void* pArg_p) - break; - - default: // data from tun/tap ready for read -- nread = read(pInstance->fd, buffer, ETHERMTU); -+ nread = read(pInstance->fd, buffer, ETH_DATA_LEN); - if (nread > 0) - { - DEBUG_LVL_VETH_TRACE("VETH:Read %d bytes from the tap interface\n", nread); -@@ -340,7 +339,7 @@ static void* vethRecvThread(void* pArg_p) - DEBUG_LVL_VETH_TRACE("DST MAC: %02X:%02X:%02x:%02X:%02X:%02x\n", - buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], buffer[5]); - // replace src MAC address with MAC address of virtual Ethernet interface -- OPLK_MEMCPY(&buffer[6], pInstance->macAdrs, ETHER_ADDR_LEN); -+ OPLK_MEMCPY(&buffer[6], pInstance->macAdrs, ETH_ALEN); - - frameInfo.pFrame = (tPlkFrame *)buffer; - frameInfo.frameSize = nread; --- -2.5.5 - diff --git a/package/openpowerlink/Config.in b/package/openpowerlink/Config.in index e6b41c3289..d5e976430f 100644 --- a/package/openpowerlink/Config.in +++ b/package/openpowerlink/Config.in @@ -68,6 +68,18 @@ config BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB build and install a Linux kernel module openPOWERLINK driver. +config BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB + bool "kernel-space PCIe driver" + depends on BR2_LINUX_KERNEL + depends on BR2_PACKAGE_OPENPOWERLINK_MN # MN support only + help + Compile openPOWERLINK application library which contains the + interface to a Linux kernel PCIe interface driver. The kernel + part of the openPOWERLINK stack is located on an external PCIe + device. The status/control and data exchange between the + application and kernel stack is handled by the PCIe interface + driver. + comment "openpowerlink kernel stack needs a Linux kernel to be built" depends on !BR2_LINUX_KERNEL @@ -75,11 +87,11 @@ endchoice if BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB -choice - prompt "select Ethernet Powerlink Driver" +menu "Ethernet drivers" config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573 bool "Intel 82573" + default y config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x bool "Intel 8255x" @@ -93,10 +105,14 @@ config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111 config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139 bool "Realtek RTL-8139" -endchoice +endmenu endif # BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_PCIE_DRIVER + depends on BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB + bool "PCIe Powerlink Driver" + menu "demos" config BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE diff --git a/package/openpowerlink/openpowerlink.hash b/package/openpowerlink/openpowerlink.hash index 6b28be81c4..f9c94f90d5 100644 --- a/package/openpowerlink/openpowerlink.hash +++ b/package/openpowerlink/openpowerlink.hash @@ -1,5 +1,5 @@ -# From http://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.2.2/ -md5 d7f2b08d332b36fed5427ebc5ec118f2 openPOWERLINK_V2.2.2.tar.gz -sha1 f565c6a8e10ba320325d120f6030158f4c4278f8 openPOWERLINK_V2.2.2.tar.gz +# From http://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.5.0/ +md5 929b778a6a4d448d502da5a428322949 openPOWERLINK_V2.5.0.tar.gz +sha1 28e2e5621550421e74ba94738f6c12eb8c279fce openPOWERLINK_V2.5.0.tar.gz # sha256 locally computed -sha256 4de00eaf8af1ff3877bfa2e878a59989873406845fc8031bd6fc58cb1f7cf7e7 openPOWERLINK_V2.2.2.tar.gz +sha256 1cb8c44626dbb7f224520667e437b4b430a32699560914f379679b6c58c1309c openPOWERLINK_V2.5.0.tar.gz diff --git a/package/openpowerlink/openpowerlink.mk b/package/openpowerlink/openpowerlink.mk index d9ceca4d53..dcb548cc91 100644 --- a/package/openpowerlink/openpowerlink.mk +++ b/package/openpowerlink/openpowerlink.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENPOWERLINK_VERSION = V2.2.2 +OPENPOWERLINK_VERSION = V2.5.0 OPENPOWERLINK_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_VERSION) OPENPOWERLINK_SOURCE = openPOWERLINK_$(OPENPOWERLINK_VERSION).tar.gz OPENPOWERLINK_LICENSE = BSD-2c, GPLv2 @@ -21,7 +21,12 @@ OPENPOWERLINK_CN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_CN),ON,OFF) #### OPLK LIBRARY #### # Always build a oplk stack -OPENPOWERLINK_CONF_OPTS += -DCFG_OPLK_LIB=ON +# Disable library with simulation interface +# Disable zynq/FPGA (PCIe) interface +OPENPOWERLINK_CONF_OPTS += -DCFG_OPLK_LIB=ON \ + -DCFG_COMPILE_LIB_MN_SIM=OFF \ + -DCFG_COMPILE_LIB_CN_SIM=OFF \ + -DCFG_COMPILE_LIB_MNAPP_ZYNQINTF=OFF # All option are ON by default ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y) @@ -30,6 +35,7 @@ OPENPOWERLINK_CONF_OPTS += \ -DCFG_COMPILE_LIB_MN=$(OPENPOWERLINK_MN_ONOFF) \ -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \ -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \ -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \ -DCFG_COMPILE_LIB_CN=$(OPENPOWERLINK_CN_ONOFF) \ -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \ @@ -41,6 +47,7 @@ OPENPOWERLINK_CONF_OPTS += \ -DCFG_COMPILE_LIB_MN=OFF \ -DCFG_COMPILE_LIB_MNAPP_USERINTF=$(OPENPOWERLINK_MN_ONOFF) \ -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \ -DCFG_COMPILE_LIB_MNDRV_PCAP=$(OPENPOWERLINK_MN_ONOFF) \ -DCFG_COMPILE_LIB_CN=OFF \ -DCFG_COMPILE_LIB_CNAPP_USERINTF=$(OPENPOWERLINK_CN_ONOFF) \ @@ -51,11 +58,23 @@ OPENPOWERLINK_CONF_OPTS += \ -DCFG_COMPILE_LIB_MN=OFF \ -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \ -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \ -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \ -DCFG_COMPILE_LIB_CN=OFF \ -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \ -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=$(OPENPOWERLINK_CN_ONOFF) \ -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_COMPILE_LIB_MN=OFF \ + -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \ + -DCFG_COMPILE_LIB_CN=OFF \ + -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF endif OPENPOWERLINK_CONF_OPTS += \ @@ -63,28 +82,32 @@ OPENPOWERLINK_CONF_OPTS += \ #### OPLK KERNEL DRIVERS #### -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB)$(BR2_PACKAGE_OPENPOWERLINK_KERNEL_PCIE_DRIVER),y) OPENPOWERLINK_DEPENDENCIES += linux OPENPOWERLINK_CONF_OPTS += \ - -DCFG_KERNEL_DRIVERS=ON \ -DCFG_KERNEL_DIR="$(LINUX_DIR)" \ -DCMAKE_SYSTEM_VERSION="$(LINUX_VERSION)" \ -DCFG_OPLK_MN="$(OPENPOWERLINK_MN_ONOFF)" \ -DMAKE_KERNEL_ARCH="$(KERNEL_ARCH)" \ -DMAKE_KERNEL_CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" - -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=82573 -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8255x -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_I210),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=i210 -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8111 -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8139 endif + +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_DRIVERS=ON \ + -DCFG_POWERLINK_EDRV_82573=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573),ON,OFF) \ + -DCFG_POWERLINK_EDRV_8255X=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x),ON,OFF) \ + -DCFG_POWERLINK_EDRV_I210=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_I210),ON,OFF) \ + -DCFG_POWERLINK_EDRV_8111=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111),ON,OFF) \ + -DCFG_POWERLINK_EDRV_8139=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139),ON,OFF) +else +OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_DRIVERS=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_PCIE_DRIVER),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_PCIE_DRIVERS=ON +else +OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_PCIE_DRIVERS=OFF endif #### OPLK PCAP DAEMON #### @@ -107,6 +130,9 @@ OPENPOWERLINK_CONF_OPTS += \ else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) OPENPOWERLINK_CONF_OPTS += \ -DCFG_BUILD_KERNEL_STACK="Linux Kernel Module" +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_BUILD_KERNEL_STACK="Kernel stack on PCIe card" endif ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE),y) diff --git a/package/openssh/openssh.hash b/package/openssh/openssh.hash index 46d9f9be27..09010d3b29 100644 --- a/package/openssh/openssh.hash +++ b/package/openssh/openssh.hash @@ -1,3 +1,3 @@ # Locally calculated after checking pgp signature -# Also from http://www.openssh.com/txt/release-7.2 -sha256 a72781d1a043876a224ff1b0032daa4094d87565a68528759c1c2cab5482548c openssh-7.2p2.tar.gz +# Also from http://www.openssh.com/txt/release-7.4 +sha256 1b1fc4a14e2024293181924ed24872e6f2e06293f3e8926a376b8aec481f19d1 openssh-7.4p1.tar.gz diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk index dd20fd2122..e86feca5dc 100644 --- a/package/openssh/openssh.mk +++ b/package/openssh/openssh.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSSH_VERSION = 7.2p2 +OPENSSH_VERSION = 7.4p1 OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable OPENSSH_LICENSE = BSD-3c BSD-2c Public Domain OPENSSH_LICENSE_FILES = LICENCE @@ -22,12 +22,7 @@ define OPENSSH_USERS sshd -1 sshd -1 * - - - SSH drop priv user endef -# uClibc toolchain for ARC doesn't support PIE at the moment -ifeq ($(BR2_arc),y) -OPENSSH_CONF_OPTS += --without-pie -endif -# PIE and static does not work on Linux -ifeq ($(BR2_STATIC_LIBS),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) OPENSSH_CONF_OPTS += --without-pie endif diff --git a/package/openssl/openssl.hash b/package/openssl/openssl.hash index edbce8e276..064eeca6f4 100644 --- a/package/openssl/openssl.hash +++ b/package/openssl/openssl.hash @@ -1,5 +1,5 @@ -# From https://www.openssl.org/source/openssl-1.0.2h.tar.gz.sha256 -sha256 1d4007e53aad94a5b2002fe045ee7bb0b3d98f1a47f8b2bc851dcd1c74332919 openssl-1.0.2h.tar.gz +# From https://www.openssl.org/source/openssl-1.0.2k.tar.gz.sha256 +sha256 6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0 openssl-1.0.2k.tar.gz # Locally computed sha256 eddd8a5123748052c598214487ac178e4bfa4e31ba2ec520c70d59c8c5bfa2e9 openssl-1.0.2a-parallel-install-dirs.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d sha256 147c3eeaad614c044749ea527cb433eae5e2d5cad34a78c6ba61cd967bfbe01f openssl-1.0.2a-parallel-obj-headers.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d diff --git a/package/openssl/openssl.mk b/package/openssl/openssl.mk index 2368aa913c..1536982f8b 100644 --- a/package/openssl/openssl.mk +++ b/package/openssl/openssl.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSSL_VERSION = 1.0.2h +OPENSSL_VERSION = 1.0.2k OPENSSL_SITE = http://www.openssl.org/source OPENSSL_LICENSE = OpenSSL or SSLeay OPENSSL_LICENSE_FILES = LICENSE @@ -19,22 +19,23 @@ OPENSSL_PATCH = \ https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2a-parallel-install-dirs.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d \ https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2a-parallel-symlinking.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +OPENSSL_CFLAGS += -mxgot +endif + ifeq ($(BR2_USE_MMU),) OPENSSL_CFLAGS += -DHAVE_FORK=0 endif -ifeq ($(BR2_PACKAGE_CRYPTODEV_LINUX),y) +ifeq ($(BR2_PACKAGE_HAS_CRYPTODEV),y) OPENSSL_CFLAGS += -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS -OPENSSL_DEPENDENCIES += cryptodev-linux -endif - -ifeq ($(BR2_PACKAGE_OCF_LINUX),y) -OPENSSL_CFLAGS += -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS -OPENSSL_DEPENDENCIES += ocf-linux +OPENSSL_DEPENDENCIES += cryptodev endif # Some architectures are optimized in OpenSSL -ifeq ($(ARCH),arm) +# Doesn't work for thumb-only (Cortex-M?) +ifeq ($(BR2_ARM_CPU_HAS_ARM),y) OPENSSL_TARGET_ARCH = armv4 endif ifeq ($(ARCH),aarch64) @@ -101,23 +102,23 @@ OPENSSL_POST_CONFIGURE_HOOKS += OPENSSL_FIXUP_STATIC_MAKEFILE endif define HOST_OPENSSL_BUILD_CMDS - $(MAKE) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) endef define OPENSSL_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define OPENSSL_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) INSTALL_PREFIX=$(STAGING_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) INSTALL_PREFIX=$(STAGING_DIR) install endef define HOST_OPENSSL_INSTALL_CMDS - $(MAKE) -C $(@D) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install endef define OPENSSL_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) INSTALL_PREFIX=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) INSTALL_PREFIX=$(TARGET_DIR) install rm -rf $(TARGET_DIR)/usr/lib/ssl rm -f $(TARGET_DIR)/usr/bin/c_rehash endef diff --git a/package/openswan/Config.in b/package/openswan/Config.in index 0370143ed1..5db665c6f7 100644 --- a/package/openswan/Config.in +++ b/package/openswan/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_OPENSWAN bool "openswan" depends on BR2_USE_MMU # iproute2 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # iproute2 + depends on !BR2_TOOLCHAIN_USES_MUSL # GLOB_BRACE select BR2_PACKAGE_GMP select BR2_PACKAGE_IPROUTE2 help @@ -9,6 +10,7 @@ config BR2_PACKAGE_OPENSWAN http://www.openswan.org -comment "openswan needs a toolchain w/ headers >= 3.0" +comment "openswan needs a uClibc or glibc toolchain w/ headers >= 3.0" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || \ + BR2_TOOLCHAIN_USES_MUSL diff --git a/package/openswan/openswan.mk b/package/openswan/openswan.mk index 54bd4b3eff..5c8e143b4c 100644 --- a/package/openswan/openswan.mk +++ b/package/openswan/openswan.mk @@ -11,8 +11,8 @@ OPENSWAN_LICENSE_FILES = COPYING LICENSE OPENSWAN_DEPENDENCIES = host-bison host-flex gmp iproute2 OPENSWAN_MAKE_OPTS = ARCH=$(BR2_ARCH) CC="$(TARGET_CC)" \ - USERCOMPILE="$(TARGET_CFLAGS) $(if $(BR2_STATIC_LIBS),,-fPIE)" \ - USERLINK="$(TARGET_LDFLAGS) $(if $(BR2_STATIC_LIBS),,-fPIE)" \ + USERCOMPILE="$(TARGET_CFLAGS) $(if $(BR2_TOOLCHAIN_SUPPORTS_PIE),-fPIE)" \ + USERLINK="$(TARGET_LDFLAGS) $(if $(BR2_TOOLCHAIN_SUPPORTS_PIE),-fPIE)" \ INC_USRLOCAL=/usr USE_KLIPS=false USE_MAST=false USE_NM=false ifeq ($(BR2_PACKAGE_LIBCURL),y) diff --git a/package/opentyrian/opentyrian.mk b/package/opentyrian/opentyrian.mk index b74e4cf3f2..6efbe4eeb8 100644 --- a/package/opentyrian/opentyrian.mk +++ b/package/opentyrian/opentyrian.mk @@ -20,7 +20,7 @@ OPENTYRIAN_NETWORK = false endif define OPENTYRIAN_BUILD_CMDS - $(MAKE) PLATFORM=UNIX \ + $(TARGET_MAKE_ENV) $(MAKE) PLATFORM=UNIX \ CC="$(TARGET_CC)" \ STRIP="/bin/true" \ SDL_CONFIG="$(STAGING_DIR)/usr/bin/sdl-config" \ diff --git a/package/openvmtools/Config.in b/package/openvmtools/Config.in index 64bf65c5c9..79c503cfb8 100644 --- a/package/openvmtools/Config.in +++ b/package/openvmtools/Config.in @@ -41,12 +41,12 @@ config BR2_PACKAGE_OPENVMTOOLS_PAM help Support for PAM in openvmtools -comment "PAM support needs an (e)glibc toolchain w/ dynamic library" +comment "PAM support needs a glibc toolchain w/ dynamic library" depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL endif -comment "openvmtools needs an (e)glibc or musl toolchain w/ wchar, threads, RPC, locale" +comment "openvmtools needs a glibc or musl toolchain w/ wchar, threads, RPC, locale" depends on BR2_i386 || BR2_x86_64 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ diff --git a/package/openvmtools/openvmtools.hash b/package/openvmtools/openvmtools.hash new file mode 100644 index 0000000000..bf344e506b --- /dev/null +++ b/package/openvmtools/openvmtools.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ff384ab0c11e19db0fd6ddab60e8ae48a4591b141fb3a8e8f1d4e1a489dd293f openvmtools-5a9033ddfa95786d867e4d02bbb9a29bac8fb64f.tar.gz diff --git a/package/openvmtools/openvmtools.mk b/package/openvmtools/openvmtools.mk index 40a7dac098..d3eda5c0b1 100644 --- a/package/openvmtools/openvmtools.mk +++ b/package/openvmtools/openvmtools.mk @@ -4,11 +4,12 @@ # ################################################################################ -OPENVMTOOLS_VERSION = stable-9.10.2 +OPENVMTOOLS_VERSION = 5a9033ddfa95786d867e4d02bbb9a29bac8fb64f OPENVMTOOLS_SITE = $(call github,vmware,open-vm-tools,$(OPENVMTOOLS_VERSION)) OPENVMTOOLS_SUBDIR = open-vm-tools OPENVMTOOLS_LICENSE = LGPLv2.1 OPENVMTOOLS_LICENSE_FILES = $(OPENVMTOOLS_SUBDIR)/COPYING + # Autoreconf needed or config/missing will run configure again at buildtime OPENVMTOOLS_AUTORECONF = YES OPENVMTOOLS_CONF_OPTS = --with-dnet \ @@ -45,13 +46,6 @@ else OPENVMTOOLS_CONF_OPTS += --without-pam endif -# configure needs execution permission -define OPENVMTOOLS_PRE_CONFIGURE_CHMOD - chmod 0755 $(@D)/$(OPENVMTOOLS_SUBDIR)/configure -endef - -OPENVMTOOLS_PRE_CONFIGURE_HOOKS += OPENVMTOOLS_PRE_CONFIGURE_CHMOD - # symlink needed by lib/system/systemLinux.c (or will cry in /var/log/messages) # defined in lib/misc/hostinfoPosix.c # /sbin/shutdown needed for Guest OS restart/shutdown from hypervisor diff --git a/package/openvpn/Config.in b/package/openvpn/Config.in index 8ba4ea197f..5fa191d97b 100644 --- a/package/openvpn/Config.in +++ b/package/openvpn/Config.in @@ -28,10 +28,4 @@ config BR2_PACKAGE_OPENVPN_SMALL You loose eurephia, debugging info, help messages and more. It saves around 100 KiB in binary file size. -config BR2_PACKAGE_OPENVPN_PWSAVE - bool "Allow passwords in files" - help - Allow --askpass and --auth-user-pass passwords to be read - from a file. - endif diff --git a/package/openvpn/openvpn.hash b/package/openvpn/openvpn.hash index 179198e50e..600c25073f 100644 --- a/package/openvpn/openvpn.hash +++ b/package/openvpn/openvpn.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 0f5f1ca1dc5743fa166d93dd4ec952f014b5f33bafd88f0ea34b455cae1434a7 openvpn-2.3.11.tar.xz +# Locally calculated +sha256 6f23ba49a1dbeb658f49c7ae17d9ea979de6d92c7357de3d55cd4525e1b2f87e openvpn-2.4.0.tar.xz diff --git a/package/openvpn/openvpn.mk b/package/openvpn/openvpn.mk index f3985cd2ef..5e3df59f30 100644 --- a/package/openvpn/openvpn.mk +++ b/package/openvpn/openvpn.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENVPN_VERSION = 2.3.11 +OPENVPN_VERSION = 2.4.0 OPENVPN_SOURCE = openvpn-$(OPENVPN_VERSION).tar.xz OPENVPN_SITE = http://swupdate.openvpn.net/community/releases OPENVPN_DEPENDENCIES = host-pkgconf openssl @@ -42,12 +42,6 @@ else OPENVPN_CONF_OPTS += --disable-lzo endif -ifeq ($(BR2_PACKAGE_OPENVPN_PWSAVE),y) -OPENVPN_CONF_OPTS += --enable-password-save -else -OPENVPN_CONF_OPTS += --disable-password-save -endif - define OPENVPN_INSTALL_TARGET_CMDS $(INSTALL) -m 755 $(@D)/src/openvpn/openvpn \ $(TARGET_DIR)/usr/sbin/openvpn diff --git a/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch b/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch new file mode 100644 index 0000000000..1fe30e41d8 --- /dev/null +++ b/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch @@ -0,0 +1,29 @@ +From 0878d933223158343af3fe13e03bcd128e8b4cbc Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 22 Apr 2016 17:06:27 +0200 +Subject: [PATCH 1/1] Fix warning on wcsdup implicit declaration + +Define __GNU_SOURCE in cpp/hidapi/linux/hid.c (like already done in +cpp/hidapi/libusb/hid.c) to fix implicit declaration of wcsdup function + +Signed-off-by: Fabrice Fontaine +--- + cpp/hidapi/linux/hid.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/cpp/hidapi/linux/hid.c b/cpp/hidapi/linux/hid.c +index dbf9b9b..c3eb22b 100644 +--- a/cpp/hidapi/linux/hid.c ++++ b/cpp/hidapi/linux/hid.c +@@ -21,6 +21,8 @@ + http://github.com/signal11/hidapi . + ********************************************************/ + ++#define _GNU_SOURCE /* needed for wcsdup() before glibc 2.10 */ ++ + /* C */ + #include + #include +-- +1.9.1 + diff --git a/package/openzwave/0002-Ensure-correct-git-repository-path.patch b/package/openzwave/0002-Ensure-correct-git-repository-path.patch new file mode 100644 index 0000000000..6c40ec9d0f --- /dev/null +++ b/package/openzwave/0002-Ensure-correct-git-repository-path.patch @@ -0,0 +1,29 @@ +From 89cdc83307f61422db21cc7965ea294862c128bf Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 30 May 2016 10:37:42 +0200 +Subject: [PATCH 2/2] Ensure correct git repository path + +Add "--git-dir ./.git" to ensure the correct git repository path is used (this +fix a bug when trying to add openzwave to buildroot build system) + +Signed-off-by: Fabrice Fontaine +--- + cpp/build/support.mk | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cpp/build/support.mk b/cpp/build/support.mk +index 3f74c7e..f529b25 100644 +--- a/cpp/build/support.mk ++++ b/cpp/build/support.mk +@@ -29,7 +29,7 @@ GIT := $(shell which git) + ifeq ($(GIT),) + VERSION_REV ?= 0 + else +-GITVERSION := $(shell $(GIT) describe --long --tags --dirty 2>/dev/null | sed s/^v//) ++GITVERSION := $(shell $(GIT) --git-dir ./.git describe --long --tags --dirty 2>/dev/null | sed s/^v//) + ifeq ($(GITVERSION),) + GITVERSION := $(VERSION_MAJ).$(VERSION_MIN).-1 + VERSION_REV := 0 +-- +2.7.4 + diff --git a/package/openzwave/Config.in b/package/openzwave/Config.in new file mode 100644 index 0000000000..190b88b656 --- /dev/null +++ b/package/openzwave/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_OPENZWAVE + bool "openzwave" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_USE_WCHAR + help + Free software library that interfaces with selected Z-Wave PC + controllers, allowing anyone to create applications that manipulate + and respond to devices on a Z-Wave network, without requiring + in-depth knowledge of the Z-Wave protocol + + http://www.openzwave.net + +comment "openzwave needs udev and a toolchain w/ C++, threads, wchar" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_PACKAGE_HAS_UDEV || !BR2_USE_WCHAR diff --git a/package/openzwave/openzwave.hash b/package/openzwave/openzwave.hash new file mode 100644 index 0000000000..d07961edb6 --- /dev/null +++ b/package/openzwave/openzwave.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 abfb4c7e7728e86ba374c2e0ef7de912594eb24a8c44935457352df844530238 openzwave-V1.5.tar.gz +sha256 98851964fd8de3dd40f00d0032b47c61c17a4cf789ad5792e14149da5ab8755e 599e2a11c6f48dde744012ec45686c08e15f3059.patch diff --git a/package/openzwave/openzwave.mk b/package/openzwave/openzwave.mk new file mode 100644 index 0000000000..199d9e1bd0 --- /dev/null +++ b/package/openzwave/openzwave.mk @@ -0,0 +1,57 @@ +################################################################################ +# +# openzwave +# +################################################################################ + +OPENZWAVE_VERSION = V1.5 +OPENZWAVE_SITE = $(call github,OpenZWave,open-zwave,$(OPENZWAVE_VERSION)) +OPENZWAVE_LICENSE = LGPLv3+, GPLv3 (examples), Apache-2.0 (sh2ju.sh) +OPENZWAVE_LICENSE_FILES = license/license.txt license/lgpl.txt \ + license/gpl.txt license/Apache-License-2.0.txt + +OPENZWAVE_DEPENDENCIES = host-pkgconf udev +OPENZWAVE_INSTALL_STAGING = YES + +# This patch fixes incorrect default value of LIBDIR: +# http://autobuild.buildroot.net/results/68719fdf1320a69310bada6d3c47654dacdb5898 +# This patch is currently in dev branch and will be a part of v1.6 +OPENZWAVE_PATCH = \ + https://github.com/OpenZWave/open-zwave/commit/599e2a11c6f48dde744012ec45686c08e15f3059.patch + +# Set instlibdir to install libopenzwave.so* in the correct directory +# otherwise openzwave will check that /lib64 exists (on the host) to +# know if the library should be installed in $(PREFIX)/lib or $(PREFIX)/lib64. +# Set pkgconfigdir to /lib/pkgconfig to install libopenzwave.pc in the +# correct directory otherwise openzwave will call +# "pkg-config --variable pc_path pkg-config" which returns an incorrect value. +# Set sysconfdir to /etc/openzwave to install openzwave configuration files in +# the correct directory otherwise openzwave will install configuration files in +# $(PREFIX)/etc/openzwave. +# Disable doxygen documentation. +OPENZWAVE_MAKE_OPTS = \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + PREFIX=/usr \ + instlibdir=/usr/lib \ + pkgconfigdir=/usr/lib/pkgconfig \ + sysconfdir=/etc/openzwave \ + DOXYGEN= + +define OPENZWAVE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D) +endef + +define OPENZWAVE_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D) \ + DESTDIR=$(STAGING_DIR) install +endef + +# Delete unneeded ozw_config binary from target directory as this is an utility +# application used to get the openzwave build configuration. +define OPENZWAVE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D) \ + DESTDIR=$(TARGET_DIR) install + rm -f $(TARGET_DIR)/usr/bin/ozw_config +endef + +$(eval $(generic-package)) diff --git a/package/opkg-utils/Config.in.host b/package/opkg-utils/Config.in.host new file mode 100644 index 0000000000..1c9c474a9d --- /dev/null +++ b/package/opkg-utils/Config.in.host @@ -0,0 +1,6 @@ +config BR2_PACKAGE_HOST_OPKG_UTILS + bool "host opkg-utils" + help + Helper scripts for use with the opkg package manager. + + https://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/ diff --git a/package/opkg-utils/opkg-utils.hash b/package/opkg-utils/opkg-utils.hash new file mode 100644 index 0000000000..332823f2cb --- /dev/null +++ b/package/opkg-utils/opkg-utils.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c14284d999cdd18fee4c6b22720f38beee962b2c8e099166d8d55d76a2111beb opkg-utils-0.3.4.tar.gz diff --git a/package/opkg-utils/opkg-utils.mk b/package/opkg-utils/opkg-utils.mk new file mode 100644 index 0000000000..aa3c44d94d --- /dev/null +++ b/package/opkg-utils/opkg-utils.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# opkg-utils +# +################################################################################ + +OPKG_UTILS_VERSION = 0.3.4 +OPKG_UTILS_SITE = http://git.yoctoproject.org/git/opkg-utils +OPKG_UTILS_SITE_METHOD = git +OPKG_UTILS_LICENSE = GPLv2+ +OPKG_UTILS_LICENSE_FILES = COPYING + +define HOST_OPKG_UTILS_BUILD_CMDS + $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) +endef + +define HOST_OPKG_UTILS_INSTALL_CMDS + $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) PREFIX=/usr install +endef + +$(eval $(host-generic-package)) diff --git a/package/opkg/Config.in b/package/opkg/Config.in index 495ce91f3e..5a4bbc2654 100644 --- a/package/opkg/Config.in +++ b/package/opkg/Config.in @@ -22,6 +22,7 @@ if BR2_PACKAGE_OPKG config BR2_PACKAGE_OPKG_GPG_SIGN bool "gnupg support" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgpg-error select BR2_PACKAGE_LIBGPGME select BR2_PACKAGE_LIBGPG_ERROR help diff --git a/package/oprofile/0002-Fix-FTBFS-problem-with-GCC-6.patch b/package/oprofile/0002-Fix-FTBFS-problem-with-GCC-6.patch new file mode 100644 index 0000000000..34bf365226 --- /dev/null +++ b/package/oprofile/0002-Fix-FTBFS-problem-with-GCC-6.patch @@ -0,0 +1,51 @@ +From 39d4d46a0bd504ac708ffe72df87bf74cd12ad30 Mon Sep 17 00:00:00 2001 +From: William Cohen +Date: Fri, 5 Feb 2016 17:30:19 -0500 +Subject: [PATCH] Fix FTBFS problem with GCC-6 + +GCC-6 is pickier about some of the type conversions causing the Fedora +24 mass rebuild the build of oprofile failed with: + +make[3]: Entering directory '/builddir/build/BUILD/oprofile-1.1.0/libutil++' +g++ -DHAVE_CONFIG_H -I. -I.. -I ../libutil -I ../libop -I ../libpp -W -Wall -fno-common -ftemplate-depth-50 -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -c -o op_bfd.o op_bfd.cpp +op_bfd.cpp: In member function 'void op_bfd::get_symbol_range(symbol_index_t, long long unsigned int&, long long unsigned int&) const': +op_bfd.cpp:538:47: error: cannot convert 'std::ostream {aka std::basic_ostream}' to 'const bool' in initialization + bool const verbose = cverb << (vbfd & vlevel1); + ^ +op_bfd.cpp:546:7: error: in argument to unary ! + if (!verbose) + ^~~~~~~ + +Avoid the intermediate bool type to make GCC-6 happy. + +Signed-off-by: William Cohen +[Backported from upstream] +Signed-off-by: Romain Naour +--- + libutil++/op_bfd.cpp | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/libutil++/op_bfd.cpp b/libutil++/op_bfd.cpp +index 389c920..f2eb42b 100644 +--- a/libutil++/op_bfd.cpp ++++ b/libutil++/op_bfd.cpp +@@ -535,15 +535,13 @@ void op_bfd::get_symbol_range(symbol_index_t sym_idx, + { + op_bfd_symbol const & sym = syms[sym_idx]; + +- bool const verbose = cverb << (vbfd & vlevel1); +- + if (anon_obj) + start = sym.vma(); + else + start = sym.filepos(); + end = start + sym.size(); + +- if (!verbose) ++ if (!(cverb << (vbfd & vlevel1))) + return; + + io_state state(cverb << (vbfd & vlevel1)); +-- +2.5.5 + diff --git a/package/oprofile/Config.in b/package/oprofile/Config.in index 7a88e4a87a..e2adde5802 100644 --- a/package/oprofile/Config.in +++ b/package/oprofile/Config.in @@ -1,16 +1,28 @@ +# memory barrier function implemented only for some architectures +config BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS + bool + default y + depends on BR2_arceb || BR2_arcle || 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_sh || \ + BR2_sparc || BR2_sparc64 || BR2_x86_64 + +config BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 + bool + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + config BR2_PACKAGE_OPROFILE bool "oprofile" depends on BR2_USE_MMU # fork() select BR2_PACKAGE_POPT select BR2_PACKAGE_BINUTILS - select BR2_PACKAGE_LIBPFM4 if BR2_powerpc + select BR2_PACKAGE_LIBPFM4 if BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 depends on BR2_INSTALL_LIBSTDCPP - depends on !BR2_aarch64 && !BR2_nios2 # binutils depends on BR2_USE_WCHAR # binutils - # no memory barrier functions - depends on !BR2_xtensa && !BR2_microblaze + depends on BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS # libpfm4 is needed on PowerPC, and requires thread support - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_powerpc + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 help OProfile is a system-wide profiler for Linux systems, capable of profiling all running code at low overhead. @@ -29,9 +41,9 @@ config BR2_PACKAGE_OPROFILE comment "oprofile needs a toolchain w/ C++, wchar" depends on BR2_USE_MMU - depends on !BR2_aarch64 && !BR2_nios2 && !BR2_xtensa && !BR2_microblaze + depends on BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR -comment "oprofile needs a toolchain w/ NPTL on PPC" - depends on BR2_USE_MMU && BR2_powerpc +comment "oprofile needs a toolchain w/ NPTL on PowerPC(64)" + depends on BR2_USE_MMU && BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/oprofile/oprofile.mk b/package/oprofile/oprofile.mk index d91ddab7f7..f6c0f130e9 100644 --- a/package/oprofile/oprofile.mk +++ b/package/oprofile/oprofile.mk @@ -17,7 +17,7 @@ OPROFILE_BINARIES = \ utils/ophelp pp/opannotate pp/oparchive pp/opgprof \ pp/opreport opjitconv/opjitconv \ utils/op-check-perfevents libabi/opimport \ - pe_counting/ocount + pe_counting/ocount pe_profiling/operf ifeq ($(BR2_i386),y) OPROFILE_ARCH = i386 diff --git a/package/opus/opus.hash b/package/opus/opus.hash index 1d483987fd..7349ec4b75 100644 --- a/package/opus/opus.hash +++ b/package/opus/opus.hash @@ -1,2 +1,2 @@ # From http://downloads.xiph.org/releases/opus/SHA256SUMS.txt -sha256 0e290078e31211baa7b5886bcc8ab6bc048b9fc83882532da4a1a45e58e907fd opus-1.1.2.tar.gz +sha256 9122b6b380081dd2665189f97bfd777f04f92dc3ab6698eea1dbb27ad59d8692 opus-1.1.4.tar.gz diff --git a/package/opus/opus.mk b/package/opus/opus.mk index eb082e38b1..020be88b66 100644 --- a/package/opus/opus.mk +++ b/package/opus/opus.mk @@ -4,15 +4,20 @@ # ################################################################################ -OPUS_VERSION = 1.1.2 +OPUS_VERSION = 1.1.4 OPUS_SITE = http://downloads.xiph.org/releases/opus OPUS_LICENSE = BSD-3c OPUS_LICENSE_FILES = COPYING OPUS_INSTALL_STAGING = YES -OPUS_AUTORECONF = YES ifeq ($(BR2_PACKAGE_OPUS_FIXED_POINT),y) OPUS_CONF_OPTS += --enable-fixed-point endif +# When we're on ARM, but we don't have ARM instructions (only +# Thumb-2), disable the usage of assembly as it is not Thumb-ready. +ifeq ($(BR2_arm)$(BR2_armeb):$(BR2_ARM_CPU_HAS_ARM),y:) +OPUS_CONF_OPTS += --disable-asm +endif + $(eval $(autotools-package)) diff --git a/package/opusfile/opusfile.hash b/package/opusfile/opusfile.hash index 2da4bab53e..541a21fe54 100644 --- a/package/opusfile/opusfile.hash +++ b/package/opusfile/opusfile.hash @@ -1,2 +1,2 @@ # From http://downloads.xiph.org/releases/opus/SHA256SUMS.txt -sha256 9e2bed13bc729058591a0f1cab2505e8cfd8e7ac460bf10a78bcc3b125e7c301 opusfile-0.7.tar.gz +sha256 2c231ed3cfaa1b3173f52d740e5bbd77d51b9dfecb87014b404917fba4b855a4 opusfile-0.8.tar.gz diff --git a/package/opusfile/opusfile.mk b/package/opusfile/opusfile.mk index c8108d33eb..4c3fb35553 100644 --- a/package/opusfile/opusfile.mk +++ b/package/opusfile/opusfile.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPUSFILE_VERSION = 0.7 +OPUSFILE_VERSION = 0.8 OPUSFILE_SITE = http://downloads.xiph.org/releases/opus OPUSFILE_DEPENDENCIES = host-pkgconf libogg opus OPUSFILE_LICENSE = BSD-3c diff --git a/package/mysql/0000-ac_cache_check.patch b/package/oracle-mysql/0000-ac_cache_check.patch similarity index 100% rename from package/mysql/0000-ac_cache_check.patch rename to package/oracle-mysql/0000-ac_cache_check.patch diff --git a/package/mysql/0001-configure-ps-cache-check.patch b/package/oracle-mysql/0001-configure-ps-cache-check.patch similarity index 100% rename from package/mysql/0001-configure-ps-cache-check.patch rename to package/oracle-mysql/0001-configure-ps-cache-check.patch diff --git a/package/mysql/0002-use-new-readline-iface.patch b/package/oracle-mysql/0002-use-new-readline-iface.patch similarity index 100% rename from package/mysql/0002-use-new-readline-iface.patch rename to package/oracle-mysql/0002-use-new-readline-iface.patch diff --git a/package/mysql/0003-ac_stack_direction-is-unset.patch b/package/oracle-mysql/0003-ac_stack_direction-is-unset.patch similarity index 100% rename from package/mysql/0003-ac_stack_direction-is-unset.patch rename to package/oracle-mysql/0003-ac_stack_direction-is-unset.patch diff --git a/package/mysql/0004-Fix-gen_lex_hash-execution.patch b/package/oracle-mysql/0004-Fix-gen_lex_hash-execution.patch similarity index 100% rename from package/mysql/0004-Fix-gen_lex_hash-execution.patch rename to package/oracle-mysql/0004-Fix-gen_lex_hash-execution.patch diff --git a/package/mysql/0005-bison_3_breaks_mysql_server_build.patch b/package/oracle-mysql/0005-bison_3_breaks_mysql_server_build.patch similarity index 100% rename from package/mysql/0005-bison_3_breaks_mysql_server_build.patch rename to package/oracle-mysql/0005-bison_3_breaks_mysql_server_build.patch diff --git a/package/mysql/0006-no-force-static-build.patch b/package/oracle-mysql/0006-no-force-static-build.patch similarity index 100% rename from package/mysql/0006-no-force-static-build.patch rename to package/oracle-mysql/0006-no-force-static-build.patch diff --git a/package/mysql/0007-dont-install-in-mysql-directory.patch b/package/oracle-mysql/0007-dont-install-in-mysql-directory.patch similarity index 100% rename from package/mysql/0007-dont-install-in-mysql-directory.patch rename to package/oracle-mysql/0007-dont-install-in-mysql-directory.patch diff --git a/package/mysql/S97mysqld b/package/oracle-mysql/S97mysqld similarity index 72% rename from package/mysql/S97mysqld rename to package/oracle-mysql/S97mysqld index 1d87e68d96..110ca2cd12 100644 --- a/package/mysql/S97mysqld +++ b/package/oracle-mysql/S97mysqld @@ -1,15 +1,20 @@ #!/bin/sh +MYSQL_DIR="/var/mysql" +MYSQL_USER="mysql" + +[ -r /etc/default/mysql ] && . /etc/default/mysql + case "$1" in start) - if [ ! -d /var/mysql/mysql ] ; then + if [ ! -d $MYSQL_DIR/mysql ] ; then echo "Creating MySQL system tables..." - mysql_install_db --user=mysql --ldata=/var/mysql + mysql_install_db --user=$MYSQL_USER --ldata=$MYSQL_DIR fi # mysqld runs as user mysql, but /run is only writable by root # so create a subdirectory for mysql. - install -d -o mysql -g root -m 0700 /run/mysql + install -d -o mysql -g root -m 0755 /run/mysql # We don't use start-stop-daemon because mysqld has # its own wrapper script. diff --git a/package/mysql/mysqld.service b/package/oracle-mysql/mysqld.service similarity index 79% rename from package/mysql/mysqld.service rename to package/oracle-mysql/mysqld.service index 2ded9c2728..c9e5e42f71 100644 --- a/package/mysql/mysqld.service +++ b/package/oracle-mysql/mysqld.service @@ -5,6 +5,9 @@ Description=MySQL database server ExecStartPre=/bin/sh -c 'test -d /var/mysql/mysql || mysql_install_db --user=mysql --ldata=/var/mysql' ExecStart=/usr/bin/mysqld_safe Restart=always +User=mysql +RuntimeDirectory=mysql +RuntimeDirectoryMode=0755 [Install] WantedBy=multi-user.target diff --git a/package/mysql/mysql.hash b/package/oracle-mysql/oracle-mysql.hash similarity index 55% rename from package/mysql/mysql.hash rename to package/oracle-mysql/oracle-mysql.hash index 84f3361502..bc309ec9a8 100644 --- a/package/mysql/mysql.hash +++ b/package/oracle-mysql/oracle-mysql.hash @@ -1,2 +1,4 @@ # From https://downloads.mariadb.com/archives/mysql-5.1/mysql-5.1.73.tar.gz.md5 md5 887f869bcc757957067b9198f707f32f mysql-5.1.73.tar.gz +# Locally computed +sha256 05ebe21305408b24407d14b77607a3e5ffa3c300e03f1359d3066f301989dcb5 mysql-5.1.73.tar.gz diff --git a/package/oracle-mysql/oracle-mysql.mk b/package/oracle-mysql/oracle-mysql.mk new file mode 100644 index 0000000000..ed3c0ea983 --- /dev/null +++ b/package/oracle-mysql/oracle-mysql.mk @@ -0,0 +1,136 @@ +################################################################################ +# +# oracle-mysql +# +################################################################################ + +ORACLE_MYSQL_VERSION_MAJOR = 5.1 +ORACLE_MYSQL_VERSION = $(ORACLE_MYSQL_VERSION_MAJOR).73 +ORACLE_MYSQL_SOURCE = mysql-$(ORACLE_MYSQL_VERSION).tar.gz +ORACLE_MYSQL_SITE = http://dev.mysql.com/get/Downloads/MySQL-$(ORACLE_MYSQL_VERSION_MAJOR) +ORACLE_MYSQL_INSTALL_STAGING = YES +ORACLE_MYSQL_DEPENDENCIES = readline ncurses +ORACLE_MYSQL_AUTORECONF = YES +ORACLE_MYSQL_LICENSE = GPLv2 +ORACLE_MYSQL_LICENSE_FILES = README COPYING +ORACLE_MYSQL_PROVIDES = mysql + +# Unix socket. This variable can also be consulted by other buildroot packages +MYSQL_SOCKET = /run/mysql/mysql.sock + +ORACLE_MYSQL_CONF_ENV = \ + ac_cv_sys_restartable_syscalls=yes \ + ac_cv_path_PS=/bin/ps \ + ac_cv_FIND_PROC="/bin/ps p \$\$PID | grep -v grep | grep mysqld > /dev/null" \ + ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_GCC=yes \ + ac_cv_have_decl_HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS=no \ + ac_cv_have_decl_HAVE_IB_GCC_ATOMIC_BUILTINS=yes \ + mysql_cv_new_rl_interface=yes + +ORACLE_MYSQL_CONF_OPTS = \ + --without-ndb-binlog \ + --without-docs \ + --without-man \ + --without-libedit \ + --without-readline \ + --with-low-memory \ + --enable-thread-safe-client \ + --with-unix-socket-path=$(MYSQL_SOCKET) \ + --disable-mysql-maintainer-mode + +# host-oracle-mysql only installs what is needed to build mysql, i.e. the +# gen_lex_hash tool, and it only builds the parts that are needed to +# create this tool +HOST_ORACLE_MYSQL_DEPENDENCIES = host-zlib host-ncurses + +HOST_ORACLE_MYSQL_CONF_OPTS = \ + --with-embedded-server \ + --disable-mysql-maintainer-mode + +define HOST_ORACLE_MYSQL_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/include my_config.h + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/mysys libmysys.a + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/strings libmystrings.a + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/vio libvio.a + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/dbug libdbug.a + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/regex libregex.a + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/sql gen_lex_hash +endef + +define HOST_ORACLE_MYSQL_INSTALL_CMDS + $(INSTALL) -m 0755 $(@D)/sql/gen_lex_hash $(HOST_DIR)/usr/bin/ +endef + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +ORACLE_MYSQL_DEPENDENCIES += openssl +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +ORACLE_MYSQL_DEPENDENCIES += zlib +endif + +ifeq ($(BR2_PACKAGE_ORACLE_MYSQL_SERVER),y) +ORACLE_MYSQL_DEPENDENCIES += host-oracle-mysql host-bison + +ORACLE_MYSQL_CONF_OPTS += \ + --localstatedir=/var/mysql \ + --with-atomic-ops=up \ + --with-embedded-server \ + --without-query-cache \ + --without-plugin-partition \ + --without-plugin-daemon_example \ + --without-plugin-ftexample \ + --without-plugin-archive \ + --without-plugin-blackhole \ + --without-plugin-example \ + --without-plugin-federated \ + --without-plugin-ibmdb2i \ + --without-plugin-innobase \ + --without-plugin-innodb_plugin \ + --without-plugin-ndbcluster + +# Debugging is only available for the server, so no need for +# this if-block outside of the server if-block +ifeq ($(BR2_ENABLE_DEBUG),y) +ORACLE_MYSQL_CONF_OPTS += --with-debug=full +else +ORACLE_MYSQL_CONF_OPTS += --without-debug +endif + +define ORACLE_MYSQL_USERS + mysql -1 nogroup -1 * /var/mysql - - MySQL daemon +endef + +define ORACLE_MYSQL_ADD_FOLDER + $(INSTALL) -d $(TARGET_DIR)/var/mysql +endef + +ORACLE_MYSQL_POST_INSTALL_TARGET_HOOKS += ORACLE_MYSQL_ADD_FOLDER + +define ORACLE_MYSQL_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/oracle-mysql/S97mysqld \ + $(TARGET_DIR)/etc/init.d/S97mysqld +endef + +define ORACLE_MYSQL_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/mysql/mysqld.service \ + $(TARGET_DIR)/usr/lib/systemd/system/mysqld.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/mysqld.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mysqld.service +endef + +else +ORACLE_MYSQL_CONF_OPTS += \ + --without-server +endif + + +define ORACLE_MYSQL_REMOVE_TEST_PROGS + rm -rf $(TARGET_DIR)/usr/mysql-test $(TARGET_DIR)/usr/sql-bench +endef + +ORACLE_MYSQL_POST_INSTALL_TARGET_HOOKS += ORACLE_MYSQL_REMOVE_TEST_PROGS + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/orc/orc.hash b/package/orc/orc.hash index 178d374151..200467cf7f 100644 --- a/package/orc/orc.hash +++ b/package/orc/orc.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/gstreamer-devel/2016-March/057056.html -sha256 c1b1d54a58f26d483f0b3881538984789fe5d5460ab8fab74a1cacbd3d1c53d1 orc-0.4.25.tar.xz +# From https://lists.freedesktop.org/archives/gstreamer-devel/2016-August/060159.html +sha256 7d52fa80ef84988359c3434e1eea302d077a08987abdde6905678ebcad4fa649 orc-0.4.26.tar.xz diff --git a/package/orc/orc.mk b/package/orc/orc.mk index 5a49cbaefe..4456f5310f 100644 --- a/package/orc/orc.mk +++ b/package/orc/orc.mk @@ -4,7 +4,7 @@ # ################################################################################ -ORC_VERSION = 0.4.25 +ORC_VERSION = 0.4.26 ORC_SOURCE = orc-$(ORC_VERSION).tar.xz ORC_SITE = http://gstreamer.freedesktop.org/data/src/orc ORC_LICENSE = BSD-2c, BSD-3c diff --git a/package/ortp/Config.in b/package/ortp/Config.in index 2de3c91f92..788eaf4bbb 100644 --- a/package/ortp/Config.in +++ b/package/ortp/Config.in @@ -1,10 +1,12 @@ config BR2_PACKAGE_ORTP bool "oRTP" + depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_BCTOOLBOX help oRTP, a Real-time Transport Protocol (RTP,RFC3550) library http://www.linphone.org/eng/documentation/dev/ortp.html -comment "ortp needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "ortp needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ortp/ortp.hash b/package/ortp/ortp.hash index 8b099a705d..c990d96eb3 100644 --- a/package/ortp/ortp.hash +++ b/package/ortp/ortp.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 0deb826b79b1fd329f7638821d5439dc343bc55bb122daa6c90d19116cfe8d9a ortp-0.25.0.tar.gz +sha256 eb61a833ab3ad80978d7007411240f46e9b2d1034373b9d9dfaac88c1b6ec0af ortp-0.27.0.tar.gz diff --git a/package/ortp/ortp.mk b/package/ortp/ortp.mk index ca4a90d6d7..da17231f91 100644 --- a/package/ortp/ortp.mk +++ b/package/ortp/ortp.mk @@ -4,12 +4,13 @@ # ################################################################################ -ORTP_VERSION = 0.25.0 +ORTP_VERSION = 0.27.0 ORTP_SITE = http://download.savannah.nongnu.org/releases/linphone/ortp/sources ORTP_CONF_OPTS = --disable-strict ORTP_INSTALL_STAGING = YES ORTP_LICENSE = LGPLv2.1+ ORTP_LICENSE_FILES = COPYING +ORTP_DEPENDENCIES = bctoolbox $(eval $(autotools-package)) diff --git a/package/owfs/owfs.mk b/package/owfs/owfs.mk index 0092603fbf..e0679d21b7 100644 --- a/package/owfs/owfs.mk +++ b/package/owfs/owfs.mk @@ -17,6 +17,10 @@ OWFS_LICENSE = GPLv2+, LGPLv2 (owtcl) OWFS_LICENSE_FILES = COPYING COPYING.LIB OWFS_INSTALL_STAGING = YES +# owfs PHP support is not PHP 7 compliant +# https://sourceforge.net/p/owfs/support-requests/32/ +OWFS_CONF_OPTS += --disable-owphp --without-php + ifeq ($(BR2_PACKAGE_LIBFUSE),y) OWFS_DEPENDENCIES += libfuse OWFS_CONF_OPTS += \ @@ -49,13 +53,6 @@ else OWFS_CONF_OPTS += --disable-avahi endif -ifeq ($(BR2_PACKAGE_PHP),y) -OWFS_CONF_OPTS += --enable-owphp --with-php --with-phpconfig=$(STAGING_DIR)/usr/bin/php-config -OWFS_DEPENDENCIES += php host-swig -else -OWFS_CONF_OPTS += --disable-owphp --without-php -endif - # setup.py isn't python3 compliant ifeq ($(BR2_PACKAGE_PYTHON),y) OWFS_CONF_OPTS += \ @@ -69,6 +66,13 @@ OWFS_MAKE_ENV += \ _python_prefix=/usr \ _python_exec_prefix=/usr OWFS_DEPENDENCIES += python host-swig +# The configure scripts finds PYSITEDIR as the python_lib directory of +# host-python, and then prepends DESTDIR in front of it. So we end up +# installing things in $(TARGET_DIR)/$(HOST_DIR)/usr/lib/python which is +# clearly wrong. +# Patching owfs to do the right thing is not trivial, it's much easier to +# override the PYSITEDIR variable in make. +OWFS_EXTRA_MAKE_OPTS += PYSITEDIR=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages else OWFS_CONF_OPTS += --disable-owpython --without-python endif @@ -78,6 +82,8 @@ ifeq ($(BR2_STATIC_LIBS),y) OWFS_CONF_OPTS += --disable-zero endif +OWFS_MAKE = $(MAKE) $(OWFS_EXTRA_MAKE_OPTS) + define OWFS_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 $(OWFS_PKGDIR)S25owserver \ $(TARGET_DIR)/etc/init.d/S25owserver diff --git a/package/owl-linux/owl-linux.hash b/package/owl-linux/owl-linux.hash new file mode 100644 index 0000000000..4a5133df47 --- /dev/null +++ b/package/owl-linux/owl-linux.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 a6b1bc6b3900954438a0f1a316bac5f74171125a88c80c35e137f4ca512dedc6 owl-linux-1.0.7.tar.gz diff --git a/package/p7zip/0001-bfin.patch b/package/p7zip/0001-bfin.patch new file mode 100644 index 0000000000..76addb652f --- /dev/null +++ b/package/p7zip/0001-bfin.patch @@ -0,0 +1,19 @@ +Add support for blackfin arch. + +Fixes compilation error: +../../../../CPP/myWindows/mySplitCommandLine.cpp:99:8: error: #error ENDIANNESS + +Signed-off-by: Bernd Kuhls +(Patch sent upstream: https://sourceforge.net/p/p7zip/patches/33/ + +diff -uNr p7zip_15.14.1.org/C/CpuArch.h p7zip_15.14.1/C/CpuArch.h +--- p7zip_15.14.1.org/C/CpuArch.h 2016-02-17 07:27:16.000000000 +0100 ++++ p7zip_15.14.1/C/CpuArch.h 2016-06-08 19:47:49.000000000 +0200 +@@ -66,6 +66,7 @@ + || defined(__MIPSEL__) \ + || defined(__MIPSEL) \ + || defined(_MIPSEL) \ ++ || defined(__BFIN__) \ + || (defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)) + #define MY_CPU_LE + #endif diff --git a/package/p7zip/Config.in b/package/p7zip/Config.in new file mode 100644 index 0000000000..840949c8ff --- /dev/null +++ b/package/p7zip/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_P7ZIP + bool "p7zip" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + help + p7zip is a quick port of the command line version of 7-zip for Unix. + (see http://www.7-zip.org) + + 7-Zip is a file archiver with highest compression ratio. + + http://sourceforge.net/projects/p7zip + +comment "p7zip needs a toolchain w/ threads, wchar, C++" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP diff --git a/package/p7zip/p7zip.hash b/package/p7zip/p7zip.hash new file mode 100644 index 0000000000..ead6d87182 --- /dev/null +++ b/package/p7zip/p7zip.hash @@ -0,0 +1,3 @@ +# From https://sourceforge.net/projects/p7zip/files/p7zip/ +md5 92cca093312b5a71a7be7dc7d1d32509 p7zip_15.14.1_src_all.tar.bz2 +sha1 9b15a79f94230fab9b9d4f9f532c723117145c7a p7zip_15.14.1_src_all.tar.bz2 diff --git a/package/p7zip/p7zip.mk b/package/p7zip/p7zip.mk new file mode 100644 index 0000000000..15d5138149 --- /dev/null +++ b/package/p7zip/p7zip.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# p7zip +# +################################################################################ + +P7ZIP_VERSION = 15.14.1 +P7ZIP_SOURCE = p7zip_$(P7ZIP_VERSION)_src_all.tar.bz2 +P7ZIP_SITE = http://downloads.sourceforge.net/project/p7zip/p7zip/$(P7ZIP_VERSION) +P7ZIP_LICENSE = LGPLv2.1+ with unRAR restriction +P7ZIP_LICENSE_FILES = DOC/License.txt + +# p7zip buildsystem is a mess: it plays dirty tricks with CFLAGS and +# CXXFLAGS, so we can't pass them. Instead, it accepts ALLFLAGS_C +# and ALLFLAGS_CPP as variables to pass the CFLAGS and CXXFLAGS. +define P7ZIP_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" ALLFLAGS_C="$(TARGET_CFLAGS)" \ + CXX="$(TARGET_CXX)" ALLFLAGS_CPP="$(TARGET_CXXFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + -C $(@D) 7zr +endef + +define P7ZIP_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/bin/7zr $(TARGET_DIR)/usr/bin/7zr +endef + +$(eval $(generic-package)) diff --git a/package/p910nd/p910nd.mk b/package/p910nd/p910nd.mk index 73667d7c13..a1afdb3855 100644 --- a/package/p910nd/p910nd.mk +++ b/package/p910nd/p910nd.mk @@ -11,7 +11,7 @@ P910ND_LICENSE = GPLv2 P910ND_LICENSE_FILES = COPYING define P910ND_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define P910ND_INSTALL_TARGET_CMDS diff --git a/package/paho-mqtt-c/Config.in b/package/paho-mqtt-c/Config.in new file mode 100644 index 0000000000..3560d8c08c --- /dev/null +++ b/package/paho-mqtt-c/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_PAHO_MQTT_C + bool "paho-mqtt-c" + depends on !BR2_STATIC_LIBS # dlopen() + depends on BR2_TOOLCHAIN_HAS_THREADS + help + MQTT client C library + + https://eclipse.org/paho/clients/c/ + +comment "paho-mqtt-c needs a toolchain w/ threads and dynamic library support" + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/paho-mqtt-c/paho-mqtt-c.hash b/package/paho-mqtt-c/paho-mqtt-c.hash new file mode 100644 index 0000000000..8807d788a3 --- /dev/null +++ b/package/paho-mqtt-c/paho-mqtt-c.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 970b9621efc24251441d386274cd0a90cf6ad52b64031f3c8cb53fdd5526f5f3 paho-mqtt-c-v1.1.0.tar.gz diff --git a/package/paho-mqtt-c/paho-mqtt-c.mk b/package/paho-mqtt-c/paho-mqtt-c.mk new file mode 100644 index 0000000000..7fb3026d93 --- /dev/null +++ b/package/paho-mqtt-c/paho-mqtt-c.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# paho-mqtt-c +# +################################################################################ + +PAHO_MQTT_C_VERSION = v1.1.0 +PAHO_MQTT_C_SITE = $(call github,eclipse,paho.mqtt.c,$(PAHO_MQTT_C_VERSION)) +PAHO_MQTT_C_LICENSE = EPL-1.0 or BSD-3c +PAHO_MQTT_C_LICENSE_FILES = epl-v10 edl-v10 +PAHO_MQTT_C_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +PAHO_MQTT_C_DEPENDENCIES += openssl +PAHO_MQTT_C_CONF_OPTS += -DPAHO_WITH_SSL=TRUE +else +PAHO_MQTT_C_CONF_OPTS += -DPAHO_WITH_SSL=FALSE +endif + +$(eval $(cmake-package)) diff --git a/package/pango/pango.hash b/package/pango/pango.hash index 67b67f0444..1ea9f6bdda 100644 --- a/package/pango/pango.hash +++ b/package/pango/pango.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/pango/1.36/pango-1.40.1.sha256sum -sha256 e27af54172c72b3ac6be53c9a4c67053e16c905e02addcf3a603ceb2005c1a40 pango-1.40.1.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/pango/1.40/pango-1.40.3.sha256sum +sha256 abba8b5ce728520c3a0f1535eab19eac3c14aeef7faa5aded90017ceac2711d3 pango-1.40.3.tar.xz diff --git a/package/pango/pango.mk b/package/pango/pango.mk index bdad8c689d..b45bf9a949 100644 --- a/package/pango/pango.mk +++ b/package/pango/pango.mk @@ -5,7 +5,7 @@ ################################################################################ PANGO_VERSION_MAJOR = 1.40 -PANGO_VERSION = $(PANGO_VERSION_MAJOR).1 +PANGO_VERSION = $(PANGO_VERSION_MAJOR).3 PANGO_SOURCE = pango-$(PANGO_VERSION).tar.xz PANGO_SITE = http://ftp.gnome.org/pub/GNOME/sources/pango/$(PANGO_VERSION_MAJOR) PANGO_AUTORECONF = YES diff --git a/package/pangomm/pangomm.hash b/package/pangomm/pangomm.hash index 4f39e51501..b5d527fa7b 100644 --- a/package/pangomm/pangomm.hash +++ b/package/pangomm/pangomm.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/pangomm/2.40/pangomm-2.40.0.sha256sum -sha256 7dd0afa9dcce57cdb0aad77da9ea46823ee8515d5f3ffd895b9ede7365c3d70d pangomm-2.40.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/pangomm/2.40/pangomm-2.40.1.sha256sum +sha256 9762ee2a2d5781be6797448d4dd2383ce14907159b30bc12bf6b08e7227be3af pangomm-2.40.1.tar.xz diff --git a/package/pangomm/pangomm.mk b/package/pangomm/pangomm.mk index 2db7890022..2a85e39fa3 100644 --- a/package/pangomm/pangomm.mk +++ b/package/pangomm/pangomm.mk @@ -5,7 +5,7 @@ ################################################################################ PANGOMM_VERSION_MAJOR = 2.40 -PANGOMM_VERSION = $(PANGOMM_VERSION_MAJOR).0 +PANGOMM_VERSION = $(PANGOMM_VERSION_MAJOR).1 PANGOMM_SOURCE = pangomm-$(PANGOMM_VERSION).tar.xz PANGOMM_SITE = http://ftp.gnome.org/pub/gnome/sources/pangomm/$(PANGOMM_VERSION_MAJOR) PANGOMM_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) diff --git a/package/patch/Config.in b/package/patch/Config.in index 887c84d4d9..c5b93e9fd5 100644 --- a/package/patch/Config.in +++ b/package/patch/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PATCH bool "patch" depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Take patch files (containing difference listings) and apply them to original files, producing patched versions. @@ -9,3 +10,4 @@ config BR2_PACKAGE_PATCH comment "patch needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/patchelf/patchelf.hash b/package/patchelf/patchelf.hash index 0da413e6ca..653eb466bf 100644 --- a/package/patchelf/patchelf.hash +++ b/package/patchelf/patchelf.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 14af06a2da688d577d64ff8dac065bb8903bbffbe01d30c62df7af9bf4ce72fe patchelf-0.8.tar.gz +sha256 a0f65c1ba148890e9f2f7823f4bedf7ecad5417772f64f994004f59a39014f83 patchelf-0.9.tar.bz2 diff --git a/package/patchelf/patchelf.mk b/package/patchelf/patchelf.mk index 043224dab2..cf2e43a730 100644 --- a/package/patchelf/patchelf.mk +++ b/package/patchelf/patchelf.mk @@ -4,8 +4,9 @@ # ################################################################################ -PATCHELF_VERSION = 0.8 -PATCHELF_SITE = http://releases.nixos.org/patchelf/patchelf-0.8 +PATCHELF_VERSION = 0.9 +PATCHELF_SITE = http://releases.nixos.org/patchelf/patchelf-$(PATCHELF_VERSION) +PATCHELF_SOURCE = patchelf-$(PATCHELF_VERSION).tar.bz2 PATCHELF_LICENSE = GPLv3+ PATCHELF_LICENSE_FILES = COPYING diff --git a/package/pax-utils/pax-utils.mk b/package/pax-utils/pax-utils.mk index 747c2bb114..8d5f3eea73 100644 --- a/package/pax-utils/pax-utils.mk +++ b/package/pax-utils/pax-utils.mk @@ -27,9 +27,6 @@ else PAX_UTILS_CONF_OPTS += --without-seccomp endif -# libcap is only useful for pspax (a running system) -HOST_PAX_UTILS_DEPENDENCIES = - # lddtree and symtree need bash ifeq ($(BR2_PACKAGE_BASH),) define PAX_UTILS_REMOVE_BASH_TOOLS diff --git a/package/pciutils/pciutils.hash b/package/pciutils/pciutils.hash index dd75e426fe..2572c35bca 100644 --- a/package/pciutils/pciutils.hash +++ b/package/pciutils/pciutils.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/utils/pciutils/sha256sums.asc -sha256 865554cc5604d1644bd8da38d94845405e2a319a6d5acabc6a0296417684a82a pciutils-3.4.1.tar.xz +sha256 3a99141a9f40528d0a0035665a06dc37ddb1ae341658e51b50a76ecf86235efc pciutils-3.5.2.tar.xz diff --git a/package/pciutils/pciutils.mk b/package/pciutils/pciutils.mk index d3a0e2072c..e65eadcaf1 100644 --- a/package/pciutils/pciutils.mk +++ b/package/pciutils/pciutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCIUTILS_VERSION = 3.4.1 +PCIUTILS_VERSION = 3.5.2 PCIUTILS_SITE = $(BR2_KERNEL_MIRROR)/software/utils/pciutils PCIUTILS_SOURCE = pciutils-$(PCIUTILS_VERSION).tar.xz PCIUTILS_INSTALL_STAGING = YES diff --git a/package/pcmanfm/Config.in b/package/pcmanfm/Config.in index 149a595448..40ebbdfcb4 100644 --- a/package/pcmanfm/Config.in +++ b/package/pcmanfm/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_PCMANFM select BR2_PACKAGE_LIBFM select BR2_PACKAGE_MENU_CACHE select BR2_PACKAGE_LIBGLIB2 - select BR2_PACKAGE_LIBGTK2 + select BR2_PACKAGE_LIBGTK2 if !BR2_PACKAGE_LIBGTK3_X11 depends on BR2_PACKAGE_XORG7 depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 @@ -17,8 +17,9 @@ config BR2_PACKAGE_PCMANFM http://wiki.lxde.org/en/PCManFM -comment "pcmanfm needs X.org and a toolchain w/ wchar, threads, C++" +comment "pcmanfm needs a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU + depends on BR2_PACKAGE_XORG7 depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_XORG7 + !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/pcmanfm/pcmanfm.hash b/package/pcmanfm/pcmanfm.hash index a3b7653b01..cb0d20669e 100644 --- a/package/pcmanfm/pcmanfm.hash +++ b/package/pcmanfm/pcmanfm.hash @@ -1,2 +1,3 @@ -# From http://blog.lxde.org/?p=1280 -sha1 0a195301de31c82f1c169e620be7cea8b91813b5 pcmanfm-1.2.3.tar.xz +# From https://sourceforge.net/projects/pcmanfm/files/PCManFM%20%2B%20Libfm%20%28tarball%20release%29/PCManFM/ +md5 19764c2f59653724c8713e0064fa6829 pcmanfm-1.2.4.tar.xz +sha1 4768ee564a36021977e4af8c33270b6835b3391d pcmanfm-1.2.4.tar.xz diff --git a/package/pcmanfm/pcmanfm.mk b/package/pcmanfm/pcmanfm.mk index 62d86186f6..e361909375 100644 --- a/package/pcmanfm/pcmanfm.mk +++ b/package/pcmanfm/pcmanfm.mk @@ -4,11 +4,19 @@ # ################################################################################ -PCMANFM_VERSION = 1.2.3 +PCMANFM_VERSION = 1.2.4 PCMANFM_SOURCE = pcmanfm-$(PCMANFM_VERSION).tar.xz PCMANFM_SITE = http://sourceforge.net/projects/pcmanfm/files -PCMANFM_DEPENDENCIES = libgtk2 libglib2 menu-cache libfm +PCMANFM_DEPENDENCIES = libglib2 menu-cache libfm PCMANFM_LICENSE = GPLv2+ PCMANFM_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +PCMANFM_CONF_OPTS += --with-gtk=3 +PCMANFM_DEPENDENCIES += libgtk3 +else +PCMANFM_CONF_OPTS += --with-gtk=2 +PCMANFM_DEPENDENCIES += libgtk2 +endif + $(eval $(autotools-package)) diff --git a/package/pcre/0001-no-compat.patch b/package/pcre/0001-Kill-compatibility-bits.patch similarity index 63% rename from package/pcre/0001-no-compat.patch rename to package/pcre/0001-Kill-compatibility-bits.patch index 7099727737..3563e4b714 100644 --- a/package/pcre/0001-no-compat.patch +++ b/package/pcre/0001-Kill-compatibility-bits.patch @@ -1,12 +1,21 @@ +From e180a4085d8d2f82a05f037e465708cfc16bd2bf Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 14 Jun 2016 20:31:12 -0300 +Subject: [PATCH] Kill compatibility bits + Kill ABI compatibility bits, we don't need them. -Fixes build failures on non-ELF (blackfin) targets. +Fixes build failures on non-ELF targets. Signed-off-by: Gustavo Zacarias +--- + pcrecpp.cc | 16 ---------------- + 1 file changed, 16 deletions(-) -diff -Nura pcre-8.32.orig/pcrecpp.cc pcre-8.32/pcrecpp.cc ---- pcre-8.32.orig/pcrecpp.cc 2012-12-28 08:32:10.193847937 -0300 -+++ pcre-8.32/pcrecpp.cc 2012-12-28 08:32:26.924376180 -0300 -@@ -58,22 +58,6 @@ +diff --git a/pcrecpp.cc b/pcrecpp.cc +index d09c9ab..6910db0 100644 +--- a/pcrecpp.cc ++++ b/pcrecpp.cc +@@ -58,22 +58,6 @@ static const int kVecSize = (1 + kMaxArgs) * 3; // results + PCRE workspace // Special object that stands-in for no argument Arg RE::no_arg((void*)NULL); @@ -18,7 +27,7 @@ diff -Nura pcre-8.32.orig/pcrecpp.cc pcre-8.32/pcrecpp.cc -// inclusive test if we ever needed it. (Note that not only the -// __attribute__ syntax, but also __USER_LABEL_PREFIX__, are -// gnu-specific.) --#if defined(__GNUC__) && __GNUC__ >= 3 && defined(__ELF__) +-#if defined(__GNUC__) && __GNUC__ >= 3 && defined(__ELF__) && !defined(__INTEL_COMPILER) -# define ULP_AS_STRING(x) ULP_AS_STRING_INTERNAL(x) -# define ULP_AS_STRING_INTERNAL(x) #x -# define USER_LABEL_PREFIX_STR ULP_AS_STRING(__USER_LABEL_PREFIX__) @@ -29,3 +38,6 @@ diff -Nura pcre-8.32.orig/pcrecpp.cc pcre-8.32/pcrecpp.cc // If a regular expression has no error, its error_ field points here static const string empty_string; +-- +2.7.3 + diff --git a/package/pcre/0002-no-cpp-tests.patch b/package/pcre/0002-Disable-C-unit-tests.patch similarity index 66% rename from package/pcre/0002-no-cpp-tests.patch rename to package/pcre/0002-Disable-C-unit-tests.patch index 0255028fb6..c5c1a49f23 100644 --- a/package/pcre/0002-no-cpp-tests.patch +++ b/package/pcre/0002-Disable-C-unit-tests.patch @@ -1,12 +1,20 @@ -Disable PCRE C++ unit tests, they fail to build on static scenarios -and they're not installed. +From e3c636b8c7f9912d8d3a9fabdaa0a96ba69f7b29 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 14 Jun 2016 20:32:44 -0300 +Subject: [PATCH] Disable C++ unit tests + +They fail to build on static targets and they're not installed anyway. Signed-off-by: Gustavo Zacarias +--- + Makefile.in | 9 --------- + 1 file changed, 9 deletions(-) -diff -Nura pcre-8.33.orig/Makefile.in pcre-8.33/Makefile.in ---- pcre-8.33.orig/Makefile.in 2013-05-28 06:09:27.000000000 -0300 -+++ pcre-8.33/Makefile.in 2013-09-03 11:28:28.398198832 -0300 -@@ -123,12 +123,6 @@ +diff --git a/Makefile.in b/Makefile.in +index 6d03912..2c42b3e 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -133,12 +133,6 @@ noinst_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) $(am__EXEEXT_4) @WITH_PCRE8_TRUE@am__append_20 = libpcreposix.la @WITH_GCOV_TRUE@@WITH_PCRE8_TRUE@am__append_21 = $(GCOV_CFLAGS) @WITH_PCRE_CPP_TRUE@am__append_22 = libpcrecpp.la @@ -19,7 +27,7 @@ diff -Nura pcre-8.33.orig/Makefile.in pcre-8.33/Makefile.in @WITH_GCOV_TRUE@@WITH_PCRE_CPP_TRUE@am__append_25 = $(GCOV_CXXFLAGS) @WITH_GCOV_TRUE@@WITH_PCRE_CPP_TRUE@am__append_26 = $(GCOV_LIBS) @WITH_GCOV_TRUE@@WITH_PCRE_CPP_TRUE@am__append_27 = $(GCOV_LIBS) -@@ -360,9 +354,6 @@ +@@ -362,9 +356,6 @@ libpcreposix_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ @WITH_PCRE8_TRUE@am__EXEEXT_1 = pcregrep$(EXEEXT) @WITH_REBUILD_CHARTABLES_TRUE@am__EXEEXT_2 = dftables$(EXEEXT) @WITH_JIT_TRUE@am__EXEEXT_3 = pcre_jit_test$(EXEEXT) @@ -29,3 +37,6 @@ diff -Nura pcre-8.33.orig/Makefile.in pcre-8.33/Makefile.in PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am__dftables_SOURCES_DIST = dftables.c @WITH_REBUILD_CHARTABLES_TRUE@am_dftables_OBJECTS = \ +-- +2.7.3 + diff --git a/package/pcre/pcre.hash b/package/pcre/pcre.hash index 5b580a74c9..4c3c6c32ea 100644 --- a/package/pcre/pcre.hash +++ b/package/pcre/pcre.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b9e02d36e23024d6c02a2e5b25204b3a4fa6ade43e0a5f869f254f49535079df pcre-8.38.tar.bz2 +sha256 00e27a29ead4267e3de8111fcaa59b132d0533cdfdbdddf4b0604279acbcf4f4 pcre-8.40.tar.bz2 diff --git a/package/pcre/pcre.mk b/package/pcre/pcre.mk index 7fcc592a14..211e2359af 100644 --- a/package/pcre/pcre.mk +++ b/package/pcre/pcre.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCRE_VERSION = 8.38 +PCRE_VERSION = 8.40 PCRE_SITE = ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre PCRE_SOURCE = pcre-$(PCRE_VERSION).tar.bz2 PCRE_LICENSE = BSD-3c diff --git a/package/pdbg/Config.in b/package/pdbg/Config.in new file mode 100644 index 0000000000..3e23c210c9 --- /dev/null +++ b/package/pdbg/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PDBG + bool "pdbg" + help + PowerPC FSI Debugger, for low level debugging of a IBM + Power8 CPU over FSI. + + pdbg runs on a BMC, which is generally an ARM-powered system + monitoring/controlling a host CPU. + + https://github.com/open-power/pdbg diff --git a/package/pdbg/pdbg.hash b/package/pdbg/pdbg.hash new file mode 100644 index 0000000000..16bf58024c --- /dev/null +++ b/package/pdbg/pdbg.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 8edabb9ae98ce3b1892b768f2ee5e779a00476b63cdcc6f905e8464a0b7d96a3 pdbg-90a7370a11e727f1482dea6ff2bd6aec20c64805.tar.gz diff --git a/package/pdbg/pdbg.mk b/package/pdbg/pdbg.mk new file mode 100644 index 0000000000..9cc05cd728 --- /dev/null +++ b/package/pdbg/pdbg.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# pdbg +# +################################################################################ + +PDBG_VERSION = 90a7370a11e727f1482dea6ff2bd6aec20c64805 +PDBG_SITE = $(call github,open-power,pdbg,$(PDBG_VERSION)) +PDBG_LICENSE = Apache 2.0 +PDBG_LICENSE_FILES = COPYING +PDBG_AUTORECONF = YES + +$(eval $(autotools-package)) diff --git a/package/perl-datetime-tiny/Config.in b/package/perl-datetime-tiny/Config.in index e84db8b7cb..7721c0769a 100644 --- a/package/perl-datetime-tiny/Config.in +++ b/package/perl-datetime-tiny/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PERL_DATETIME_TINY bool "perl-datetime-tiny" help - A datetime object with as little code as possible + A date object, with as little code as possible - https://metacpan.org/release/DateTime-Tiny + https://github.com/dagolden/DateTime-Tiny diff --git a/package/perl-datetime-tiny/perl-datetime-tiny.hash b/package/perl-datetime-tiny/perl-datetime-tiny.hash index e498edb3a9..68f2c025ea 100644 --- a/package/perl-datetime-tiny/perl-datetime-tiny.hash +++ b/package/perl-datetime-tiny/perl-datetime-tiny.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 9e7e4fe588445023763df113d3f2345f DateTime-Tiny-1.04.tar.gz -sha256 68137c8ab3ca2a7f8a5fcea20f94b2f82bc2c7c36bb45063dbd81faadf0c7881 DateTime-Tiny-1.04.tar.gz +md5 736be4b3e8171f4a029fb6ac3712a9b4 DateTime-Tiny-1.06.tar.gz +sha256 bd725df481d7223ee787e154c116098b08a129f55e0763194b07ebea3dda33ec DateTime-Tiny-1.06.tar.gz diff --git a/package/perl-datetime-tiny/perl-datetime-tiny.mk b/package/perl-datetime-tiny/perl-datetime-tiny.mk index bf3b7d97a1..57589731f2 100644 --- a/package/perl-datetime-tiny/perl-datetime-tiny.mk +++ b/package/perl-datetime-tiny/perl-datetime-tiny.mk @@ -4,9 +4,9 @@ # ################################################################################ -PERL_DATETIME_TINY_VERSION = 1.04 +PERL_DATETIME_TINY_VERSION = 1.06 PERL_DATETIME_TINY_SOURCE = DateTime-Tiny-$(PERL_DATETIME_TINY_VERSION).tar.gz -PERL_DATETIME_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/A/AD/ADAMK +PERL_DATETIME_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DA/DAGOLDEN PERL_DATETIME_TINY_LICENSE = Artistic or GPLv1+ PERL_DATETIME_TINY_LICENSE_FILES = LICENSE diff --git a/package/perl-db-file/Config.in b/package/perl-db-file/Config.in deleted file mode 100644 index f07e5df483..0000000000 --- a/package/perl-db-file/Config.in +++ /dev/null @@ -1,11 +0,0 @@ -config BR2_PACKAGE_PERL_DB_FILE - bool "perl-db-file" - depends on !BR2_STATIC_LIBS - select BR2_PACKAGE_BERKELEYDB - help - Perl5 access to Berkeley DB version 1.x or 2.x. - - https://metacpan.org/release/DB_File - -comment "perl-db-file needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS diff --git a/package/perl-db-file/perl-db-file.hash b/package/perl-db-file/perl-db-file.hash deleted file mode 100644 index df0113c8b9..0000000000 --- a/package/perl-db-file/perl-db-file.hash +++ /dev/null @@ -1,3 +0,0 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 0ae7910cabc31a44e50b713a8a475514 DB_File-1.835.tar.gz -sha256 41206f39a1bac49db8c1595e300b04c70e1393b2d78ccb9ef15c5c0b81037cfc DB_File-1.835.tar.gz diff --git a/package/perl-db-file/perl-db-file.mk b/package/perl-db-file/perl-db-file.mk deleted file mode 100644 index 3db8c563cb..0000000000 --- a/package/perl-db-file/perl-db-file.mk +++ /dev/null @@ -1,22 +0,0 @@ -################################################################################ -# -# perl-db-file -# -################################################################################ - -PERL_DB_FILE_VERSION = 1.835 -PERL_DB_FILE_SOURCE = DB_File-$(PERL_DB_FILE_VERSION).tar.gz -PERL_DB_FILE_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PM/PMQS -PERL_DB_FILE_DEPENDENCIES = berkeleydb -PERL_DB_FILE_LICENSE = Artistic or GPLv1+ -PERL_DB_FILE_LICENSE_FILES = README - -define PERL_DB_FILE_FIX_CONFIG_IN - $(SED) 's%^INCLUDE.*%INCLUDE = $(STAGING_DIR)/usr/include%' \ - $(@D)/config.in - $(SED) 's%^LIB.*%LIB = $(STAGING_DIR)/usr/lib%' \ - $(@D)/config.in -endef -PERL_DB_FILE_POST_PATCH_HOOKS += PERL_DB_FILE_FIX_CONFIG_IN - -$(eval $(perl-package)) diff --git a/package/perl-gd/0002-lgd.patch b/package/perl-gd/0002-lgd.patch index 4a69c2ae8e..2827cd76b3 100644 --- a/package/perl-gd/0002-lgd.patch +++ b/package/perl-gd/0002-lgd.patch @@ -7,7 +7,7 @@ Index: b/Makefile.PL =================================================================== --- a/Makefile.PL +++ b/Makefile.PL -@@ -34,9 +34,9 @@ +@@ -42,9 +42,9 @@ END } @@ -18,7 +18,7 @@ Index: b/Makefile.PL # support for AMD64 libraries if (-d '/usr/lib64') { -@@ -291,7 +291,6 @@ +@@ -294,7 +294,6 @@ @$LIBPATH = map {s/^-L// && "-L$_"} split /\s+/,$ldflags; @$LIBS = split /\s+/,$libs; diff --git a/package/perl-gd/0003-force.patch b/package/perl-gd/0003-force.patch index 0a121a994e..611066b919 100644 --- a/package/perl-gd/0003-force.patch +++ b/package/perl-gd/0003-force.patch @@ -7,7 +7,7 @@ Index: b/Makefile.PL =================================================================== --- a/Makefile.PL +++ b/Makefile.PL -@@ -35,13 +35,15 @@ +@@ -43,13 +43,15 @@ } push @LIBS, "-lgd"; diff --git a/package/perl-gd/0004-gdlib-config-is-now-configurable.patch b/package/perl-gd/0004-gdlib-config-is-now-configurable.patch index dea61261f6..58df2255a3 100644 --- a/package/perl-gd/0004-gdlib-config-is-now-configurable.patch +++ b/package/perl-gd/0004-gdlib-config-is-now-configurable.patch @@ -53,7 +53,7 @@ index dfe8ad7..0fa6ef3 100644 ############################################################################################# if ($^O eq 'VMS'){ -@@ -275,7 +286,7 @@ exit 0; +@@ -278,7 +289,7 @@ exit 0; sub try_to_autoconfigure { my ($options,$lib_gd_path,$INC,$LIBPATH,$LIBS) = @_; diff --git a/package/perl-gd/Config.in b/package/perl-gd/Config.in index 61f7e5dadc..2b7a265f15 100644 --- a/package/perl-gd/Config.in +++ b/package/perl-gd/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_PERL_GD select BR2_PACKAGE_FREETYPE select BR2_PACKAGE_GD help - Interface to Gd Graphics Library + Perl interface to the gd2 graphics library https://metacpan.org/release/GD diff --git a/package/perl-gd/perl-gd.hash b/package/perl-gd/perl-gd.hash index c6822aeaf1..0c16d3f521 100644 --- a/package/perl-gd/perl-gd.hash +++ b/package/perl-gd/perl-gd.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 d2c9b18123bcaff8672eb50f2eb37ed3 GD-2.53.tar.gz -sha256 d05d01fe95e581adb3468cf05ab5d405db7497c0fb3ec7ecf23d023705fab7aa GD-2.53.tar.gz +md5 c4b3afd98b2c4ce3c2e1027d101a8f1e GD-2.56.tar.gz +sha256 1f103d1c98de8621504642ed7fb79f1b40f5f6a63c2abe9390a8ab78617248f9 GD-2.56.tar.gz diff --git a/package/perl-gd/perl-gd.mk b/package/perl-gd/perl-gd.mk index 99568cbf1d..ea8fd5cddb 100644 --- a/package/perl-gd/perl-gd.mk +++ b/package/perl-gd/perl-gd.mk @@ -4,12 +4,13 @@ # ################################################################################ -PERL_GD_VERSION = 2.53 +PERL_GD_VERSION = 2.56 PERL_GD_SOURCE = GD-$(PERL_GD_VERSION).tar.gz PERL_GD_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LD/LDS PERL_GD_DEPENDENCIES = zlib libpng freetype gd -PERL_GD_LICENSE = Artistic-2.0 or GPLv1+ +PERL_GD_LICENSE = Artistic or GPLv1+ PERL_GD_LICENSE_FILES = LICENSE +PERL_GD_PREFER_INSTALLER = EUMM PERL_GD_CONF_OPTS = \ -options=FT,PNG \ diff --git a/package/perl-gdgraph/perl-gdgraph.hash b/package/perl-gdgraph/perl-gdgraph.hash index 7005cc92d1..2e85452c18 100644 --- a/package/perl-gdgraph/perl-gdgraph.hash +++ b/package/perl-gdgraph/perl-gdgraph.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 8bb270a30fea27491302b39b701b3d4e GDGraph-1.49.tar.gz -sha256 d26538c827e35c1d4b27f3c045b60f1ab6b45401c54a87e86103cd7c2374cff5 GDGraph-1.49.tar.gz +md5 38c6a188519e6272e9b2b722b315c3d8 GDGraph-1.54.tar.gz +sha256 b96f5c10b656c17d16ab65a1777c908297b028d3b6815f6d54b2337f006bfa4f GDGraph-1.54.tar.gz diff --git a/package/perl-gdgraph/perl-gdgraph.mk b/package/perl-gdgraph/perl-gdgraph.mk index dbc789e1b4..dc7ffd9bca 100644 --- a/package/perl-gdgraph/perl-gdgraph.mk +++ b/package/perl-gdgraph/perl-gdgraph.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_GDGRAPH_VERSION = 1.49 +PERL_GDGRAPH_VERSION = 1.54 PERL_GDGRAPH_SOURCE = GDGraph-$(PERL_GDGRAPH_VERSION).tar.gz PERL_GDGRAPH_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RU/RUZ PERL_GDGRAPH_DEPENDENCIES = perl-gd perl-gdtextutil diff --git a/package/perl-html-parser/Config.in b/package/perl-html-parser/Config.in index 8a725f1dbd..22a16d646f 100644 --- a/package/perl-html-parser/Config.in +++ b/package/perl-html-parser/Config.in @@ -3,10 +3,9 @@ config BR2_PACKAGE_PERL_HTML_PARSER depends on !BR2_STATIC_LIBS select BR2_PACKAGE_PERL_HTML_TAGSET help - The HTML-Parser distribution is is a collection of modules that parse - and extract information from HTML documents + HTML parser class - http://github.com/gisle/html-parser + https://metacpan.org/release/HTML-Parser comment "perl-html-parser needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/package/perl-html-parser/perl-html-parser.hash b/package/perl-html-parser/perl-html-parser.hash index eed22b7a24..0c0bb1f298 100644 --- a/package/perl-html-parser/perl-html-parser.hash +++ b/package/perl-html-parser/perl-html-parser.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 9128a45893097dfa3bf03301b19c5efe HTML-Parser-3.71.tar.gz -sha256 be918b3749d3ff93627f72ee4b825683332ecb4c81c67a3a8d72b0435ffbd802 HTML-Parser-3.71.tar.gz +md5 eb7505e5f626913350df9dd4a03d54a8 HTML-Parser-3.72.tar.gz +sha256 ec28c7e1d9e67c45eca197077f7cdc41ead1bb4c538c7f02a3296a4bb92f608b HTML-Parser-3.72.tar.gz diff --git a/package/perl-html-parser/perl-html-parser.mk b/package/perl-html-parser/perl-html-parser.mk index 18d25c58d2..14a282649a 100644 --- a/package/perl-html-parser/perl-html-parser.mk +++ b/package/perl-html-parser/perl-html-parser.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_HTML_PARSER_VERSION = 3.71 +PERL_HTML_PARSER_VERSION = 3.72 PERL_HTML_PARSER_SOURCE = HTML-Parser-$(PERL_HTML_PARSER_VERSION).tar.gz PERL_HTML_PARSER_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS PERL_HTML_PARSER_DEPENDENCIES = perl-html-tagset diff --git a/package/perl-json-tiny/perl-json-tiny.hash b/package/perl-json-tiny/perl-json-tiny.hash index 0a1e7cacd8..4b6bb89ce8 100644 --- a/package/perl-json-tiny/perl-json-tiny.hash +++ b/package/perl-json-tiny/perl-json-tiny.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 70957d3df2ea67f8e2c760166fce7b24 JSON-Tiny-0.53.tar.gz -sha256 37e547c5b5b7f4dd9adf00db7c77454f3451f79c1be93ef11d4f2ddc9c10aad9 JSON-Tiny-0.53.tar.gz +md5 52a57f8bd5b7727bc0ee8c4591431045 JSON-Tiny-0.56.tar.gz +sha256 f5e3eecd278ddc0b15e3b3d8d108f89fa47cc039852bdb80b909b6bc1b538d04 JSON-Tiny-0.56.tar.gz diff --git a/package/perl-json-tiny/perl-json-tiny.mk b/package/perl-json-tiny/perl-json-tiny.mk index 7a2a42e048..3892da601a 100644 --- a/package/perl-json-tiny/perl-json-tiny.mk +++ b/package/perl-json-tiny/perl-json-tiny.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_JSON_TINY_VERSION = 0.53 +PERL_JSON_TINY_VERSION = 0.56 PERL_JSON_TINY_SOURCE = JSON-Tiny-$(PERL_JSON_TINY_VERSION).tar.gz PERL_JSON_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DA/DAVIDO PERL_JSON_TINY_LICENSE = Artistic-2.0 diff --git a/package/perl-libwww-perl/perl-libwww-perl.hash b/package/perl-libwww-perl/perl-libwww-perl.hash index ffc180f86d..d3b3328643 100644 --- a/package/perl-libwww-perl/perl-libwww-perl.hash +++ b/package/perl-libwww-perl/perl-libwww-perl.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 6888c9d8728cd6f3ea3c9754461c9f94 libwww-perl-6.15.tar.gz -sha256 6f349d45c21b1ec0501c4437dfcb70570940e6c3d5bff783bd91d4cddead8322 libwww-perl-6.15.tar.gz +md5 0880fade10edcf5f60087e42f1db4481 libwww-perl-6.16.tar.gz +sha256 daffd268000f92d241f8ae5508ae5616dbd02f15a587b4fbcd14998ccc15ce22 libwww-perl-6.16.tar.gz diff --git a/package/perl-libwww-perl/perl-libwww-perl.mk b/package/perl-libwww-perl/perl-libwww-perl.mk index 594eb7d6cb..8d4d00e3ff 100644 --- a/package/perl-libwww-perl/perl-libwww-perl.mk +++ b/package/perl-libwww-perl/perl-libwww-perl.mk @@ -4,11 +4,9 @@ # ################################################################################ -PERL_LIBWWW_PERL_VERSION = 6.15 +PERL_LIBWWW_PERL_VERSION = 6.16 PERL_LIBWWW_PERL_SOURCE = libwww-perl-$(PERL_LIBWWW_PERL_VERSION).tar.gz -PERL_LIBWWW_PERL_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER -PERL_LIBWWW_PERL_LICENSE = Artistic or GPLv1+ -PERL_LIBWWW_LICENSE_FILES = README +PERL_LIBWWW_PERL_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS PERL_LIBWWW_PERL_DEPENDENCIES = \ perl-encode-locale \ perl-file-listing \ @@ -22,5 +20,7 @@ PERL_LIBWWW_PERL_DEPENDENCIES = \ perl-net-http \ perl-uri \ perl-www-robotrules +PERL_LIBWWW_PERL_LICENSE = Artistic or GPLv1+ +PERL_LIBWWW_PERL_LICENSE_FILES = LICENSE $(eval $(perl-package)) diff --git a/package/perl-mailtools/perl-mailtools.hash b/package/perl-mailtools/perl-mailtools.hash index b67867a43c..65a424b068 100644 --- a/package/perl-mailtools/perl-mailtools.hash +++ b/package/perl-mailtools/perl-mailtools.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 813ae849683367bb75e6be89e4e8cc46 MailTools-2.14.tar.gz -sha256 4b7c7ef674b2ef75ea793f053cd067c6a4b33e58e3adf08a89c8ea4c56b3dff8 MailTools-2.14.tar.gz +md5 972468ab5207b90398d77bed4ffc361d MailTools-2.18.tar.gz +sha256 dfee9e770257371112f20d978e637759e81bc4f19e97b083585c71ecab37b527 MailTools-2.18.tar.gz diff --git a/package/perl-mailtools/perl-mailtools.mk b/package/perl-mailtools/perl-mailtools.mk index d3c049d597..1c41831ce5 100644 --- a/package/perl-mailtools/perl-mailtools.mk +++ b/package/perl-mailtools/perl-mailtools.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MAILTOOLS_VERSION = 2.14 +PERL_MAILTOOLS_VERSION = 2.18 PERL_MAILTOOLS_SOURCE = MailTools-$(PERL_MAILTOOLS_VERSION).tar.gz PERL_MAILTOOLS_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MA/MARKOV PERL_MAILTOOLS_DEPENDENCIES = perl-timedate diff --git a/package/perl-module-build/perl-module-build.hash b/package/perl-module-build/perl-module-build.hash index 558434bf8b..0363ac5762 100644 --- a/package/perl-module-build/perl-module-build.hash +++ b/package/perl-module-build/perl-module-build.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 7b7ca5a47bef48c50c8b5906ca3ac7fb Module-Build-0.4214.tar.gz -sha256 c579488918cf4db84954a550c475272b3c25f5100c739339e91a65d7c055dc3f Module-Build-0.4214.tar.gz +md5 9df204e188462a4410d496f316c2c531 Module-Build-0.4220.tar.gz +sha256 fb1207c7e799366f7a8adda3f135bf8141c4d6068505650d4db2b2d3ce34b5a2 Module-Build-0.4220.tar.gz diff --git a/package/perl-module-build/perl-module-build.mk b/package/perl-module-build/perl-module-build.mk index 3caf302c7a..3c27002954 100644 --- a/package/perl-module-build/perl-module-build.mk +++ b/package/perl-module-build/perl-module-build.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MODULE_BUILD_VERSION = 0.4214 +PERL_MODULE_BUILD_VERSION = 0.4220 PERL_MODULE_BUILD_SOURCE = Module-Build-$(PERL_MODULE_BUILD_VERSION).tar.gz PERL_MODULE_BUILD_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LE/LEONT PERL_MODULE_BUILD_LICENSE = Artistic or GPLv1+ diff --git a/package/perl-mojolicious/Config.in b/package/perl-mojolicious/Config.in index 766d109594..ebf0932b9f 100644 --- a/package/perl-mojolicious/Config.in +++ b/package/perl-mojolicious/Config.in @@ -3,4 +3,4 @@ config BR2_PACKAGE_PERL_MOJOLICIOUS help Real-time web framework - http://mojolicio.us + http://mojolicious.org diff --git a/package/perl-mojolicious/perl-mojolicious.hash b/package/perl-mojolicious/perl-mojolicious.hash index 289f1f3c6f..21b2768b86 100644 --- a/package/perl-mojolicious/perl-mojolicious.hash +++ b/package/perl-mojolicious/perl-mojolicious.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 8c189aed47bbe330584fb335251b3380 Mojolicious-6.25.tar.gz -sha256 2e34d665a505ca9cbd4c55f010b17d184533b9ba2f92431d7c4126e0edc3a41a Mojolicious-6.25.tar.gz +md5 97a935d64fc2aaf5538e6ab704bbc420 Mojolicious-7.20.tar.gz +sha256 ddd034bdd2b99f64498f30b9859c2f2607318f43983dfe36e14bfdf1526fd693 Mojolicious-7.20.tar.gz diff --git a/package/perl-mojolicious/perl-mojolicious.mk b/package/perl-mojolicious/perl-mojolicious.mk index 3ea828bd96..b3e6615f28 100644 --- a/package/perl-mojolicious/perl-mojolicious.mk +++ b/package/perl-mojolicious/perl-mojolicious.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MOJOLICIOUS_VERSION = 6.25 +PERL_MOJOLICIOUS_VERSION = 7.20 PERL_MOJOLICIOUS_SOURCE = Mojolicious-$(PERL_MOJOLICIOUS_VERSION).tar.gz PERL_MOJOLICIOUS_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SR/SRI PERL_MOJOLICIOUS_LICENSE = Artistic-2.0 diff --git a/package/perl-net-dns/Config.in b/package/perl-net-dns/Config.in index 24ce481a69..de720bf25e 100644 --- a/package/perl-net-dns/Config.in +++ b/package/perl-net-dns/Config.in @@ -2,6 +2,6 @@ config BR2_PACKAGE_PERL_NET_DNS bool "perl-net-dns" select BR2_PACKAGE_PERL_DIGEST_HMAC help - Net::DNS is a DNS resolver implemented in Perl. + Perl Interface to the Domain Name System http://www.net-dns.org diff --git a/package/perl-net-dns/perl-net-dns.hash b/package/perl-net-dns/perl-net-dns.hash index bb1fdfa22b..d2f072510a 100644 --- a/package/perl-net-dns/perl-net-dns.hash +++ b/package/perl-net-dns/perl-net-dns.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 5a6f6e6811d6bf8eefd84ce778c2bc2e Net-DNS-1.04.tar.gz -sha256 4b9f220304c5722658fbdbe4db31ab77486b5f0aaada78c9d1b528e4b0680965 Net-DNS-1.04.tar.gz +md5 96c1a801cab92b81696a037c7c326e59 Net-DNS-1.07.tar.gz +sha256 5f91497f1af9f690153fa05a27a7d73ddada08bed40536fe2d0ac759b7af8492 Net-DNS-1.07.tar.gz diff --git a/package/perl-net-dns/perl-net-dns.mk b/package/perl-net-dns/perl-net-dns.mk index 6337612829..f1a0b88deb 100644 --- a/package/perl-net-dns/perl-net-dns.mk +++ b/package/perl-net-dns/perl-net-dns.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_NET_DNS_VERSION = 1.04 +PERL_NET_DNS_VERSION = 1.07 PERL_NET_DNS_SOURCE = Net-DNS-$(PERL_NET_DNS_VERSION).tar.gz PERL_NET_DNS_SITE = $(BR2_CPAN_MIRROR)/authors/id/N/NL/NLNETLABS PERL_NET_DNS_DEPENDENCIES = perl-digest-hmac diff --git a/package/perl-net-http/Config.in b/package/perl-net-http/Config.in index 6f18dd5a7d..63215772a4 100644 --- a/package/perl-net-http/Config.in +++ b/package/perl-net-http/Config.in @@ -2,6 +2,6 @@ config BR2_PACKAGE_PERL_NET_HTTP bool "perl-net-http" select BR2_PACKAGE_PERL_URI help - The `Net::HTTP' class is a low-level HTTP client. + Low-level HTTP connection (client) - http://github.com/libwww-perl/net-http + https://github.com/libwww-perl/Net-HTTP diff --git a/package/perl-net-http/perl-net-http.hash b/package/perl-net-http/perl-net-http.hash index 79f43c5fd5..4dfad86e3f 100644 --- a/package/perl-net-http/perl-net-http.hash +++ b/package/perl-net-http/perl-net-http.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 3d84d17f64c7316d69e7eb7b4e292b9a Net-HTTP-6.09.tar.gz -sha256 52762b939d84806908ba544581c5708375f7938c3c0e496c128ca3fbc425e58d Net-HTTP-6.09.tar.gz +md5 988c72ce2890df56e41df6695d108e5d Net-HTTP-6.12.tar.gz +sha256 8565aff76b3d09084642f3a83c654fb4ced8220e8e19d35c78b661519b4c1be6 Net-HTTP-6.12.tar.gz diff --git a/package/perl-net-http/perl-net-http.mk b/package/perl-net-http/perl-net-http.mk index 9dbc4ab450..ec74a3f32e 100644 --- a/package/perl-net-http/perl-net-http.mk +++ b/package/perl-net-http/perl-net-http.mk @@ -4,11 +4,11 @@ # ################################################################################ -PERL_NET_HTTP_VERSION = 6.09 +PERL_NET_HTTP_VERSION = 6.12 PERL_NET_HTTP_SOURCE = Net-HTTP-$(PERL_NET_HTTP_VERSION).tar.gz -PERL_NET_HTTP_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER +PERL_NET_HTTP_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS PERL_NET_HTTP_DEPENDENCIES = perl-uri PERL_NET_HTTP_LICENSE = Artistic or GPLv1+ -PERL_NET_HTTP_LICENSE_FILES = README +PERL_NET_HTTP_LICENSE_FILES = LICENSE $(eval $(perl-package)) diff --git a/package/perl-netaddr-ip/perl-netaddr-ip.hash b/package/perl-netaddr-ip/perl-netaddr-ip.hash index 19bba20836..fde62b1223 100644 --- a/package/perl-netaddr-ip/perl-netaddr-ip.hash +++ b/package/perl-netaddr-ip/perl-netaddr-ip.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 bca8406520b6535a3f9661d385705d97 NetAddr-IP-4.078.tar.gz -sha256 b9a12294e58dcece0189630ddb6926e37169cbbb24c76091f1e604e426c19614 NetAddr-IP-4.078.tar.gz +md5 990dfcbffae356835c536e8ab56a2880 NetAddr-IP-4.079.tar.gz +sha256 ec5a82dfb7028bcd28bb3d569f95d87dd4166cc19867f2184ed3a59f6d6ca0e7 NetAddr-IP-4.079.tar.gz diff --git a/package/perl-netaddr-ip/perl-netaddr-ip.mk b/package/perl-netaddr-ip/perl-netaddr-ip.mk index f2eec6c0d5..b5ee9a1cfb 100644 --- a/package/perl-netaddr-ip/perl-netaddr-ip.mk +++ b/package/perl-netaddr-ip/perl-netaddr-ip.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_NETADDR_IP_VERSION = 4.078 +PERL_NETADDR_IP_VERSION = 4.079 PERL_NETADDR_IP_SOURCE = NetAddr-IP-$(PERL_NETADDR_IP_VERSION).tar.gz PERL_NETADDR_IP_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MI/MIKER PERL_NETADDR_IP_LICENSE = Artistic or GPLv1+ diff --git a/package/perl-path-tiny/perl-path-tiny.hash b/package/perl-path-tiny/perl-path-tiny.hash index a62c165394..259469cc11 100644 --- a/package/perl-path-tiny/perl-path-tiny.hash +++ b/package/perl-path-tiny/perl-path-tiny.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 840696b295230682c727297c87fe42d6 Path-Tiny-0.072.tar.gz -sha256 d7507c7822d4f7f60a5329d26c8afce31022cd92d02b011e367cc6a1eeae6981 Path-Tiny-0.072.tar.gz +md5 92ece7b2aa09f18035b0550b0118bdee Path-Tiny-0.100.tar.gz +sha256 8b8c4c9db710470a26b356e7187eba47217fbba1fe8bd0ad72c5b2cc8f6ba10c Path-Tiny-0.100.tar.gz diff --git a/package/perl-path-tiny/perl-path-tiny.mk b/package/perl-path-tiny/perl-path-tiny.mk index 0af84fdd61..ed1304d4cf 100644 --- a/package/perl-path-tiny/perl-path-tiny.mk +++ b/package/perl-path-tiny/perl-path-tiny.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_PATH_TINY_VERSION = 0.072 +PERL_PATH_TINY_VERSION = 0.100 PERL_PATH_TINY_SOURCE = Path-Tiny-$(PERL_PATH_TINY_VERSION).tar.gz PERL_PATH_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DA/DAGOLDEN PERL_PATH_TINY_LICENSE = Apache-2.0 diff --git a/package/perl-try-tiny/Config.in b/package/perl-try-tiny/Config.in index 7bd5396feb..5c115b638c 100644 --- a/package/perl-try-tiny/Config.in +++ b/package/perl-try-tiny/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PERL_TRY_TINY bool "perl-try-tiny" help - minimal try/catch with proper preservation of $@ + Minimal try/catch with proper preservation of $@ - http://metacpan.org/release/Try-Tiny + https://github.com/p5sagit/Try-Tiny diff --git a/package/perl-try-tiny/perl-try-tiny.hash b/package/perl-try-tiny/perl-try-tiny.hash index bff911f2c1..c6dbd44f47 100644 --- a/package/perl-try-tiny/perl-try-tiny.hash +++ b/package/perl-try-tiny/perl-try-tiny.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 6769658bfbca241a470206c9a8819ff2 Try-Tiny-0.22.tar.gz -sha256 60fba46f4693d33d54539104f9001df008dabb400b6837e9605c39a6ee6a1b19 Try-Tiny-0.22.tar.gz +md5 e2f8af601a62981aab30df15a6f47475 Try-Tiny-0.28.tar.gz +sha256 f1d166be8aa19942c4504c9111dade7aacb981bc5b3a2a5c5f6019646db8c146 Try-Tiny-0.28.tar.gz diff --git a/package/perl-try-tiny/perl-try-tiny.mk b/package/perl-try-tiny/perl-try-tiny.mk index 05cea542bc..b4d35ab198 100644 --- a/package/perl-try-tiny/perl-try-tiny.mk +++ b/package/perl-try-tiny/perl-try-tiny.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_TRY_TINY_VERSION = 0.22 +PERL_TRY_TINY_VERSION = 0.28 PERL_TRY_TINY_SOURCE = Try-Tiny-$(PERL_TRY_TINY_VERSION).tar.gz -PERL_TRY_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DO/DOY +PERL_TRY_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_TRY_TINY_LICENSE = MIT -PERL_TRY_TINY_LICENSE_FILES = LICENSE +PERL_TRY_TINY_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-xml-libxml/Config.in b/package/perl-xml-libxml/Config.in index 44fe7102d9..fb15e1011c 100644 --- a/package/perl-xml-libxml/Config.in +++ b/package/perl-xml-libxml/Config.in @@ -5,10 +5,11 @@ config BR2_PACKAGE_PERL_XML_LIBXML select BR2_PACKAGE_ZLIB select BR2_PACKAGE_PERL_XML_NAMESPACESUPPORT select BR2_PACKAGE_PERL_XML_SAX + select BR2_PACKAGE_PERL_XML_SAX_BASE help Interface to Gnome libxml2 xml parsing and DOM library - https://bitbucket.org/shlomif/perl-xml-libxml + https://github.com/shlomif/perl-XML-LibXML comment "perl-xml-libxml needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/package/perl-xml-libxml/perl-xml-libxml.hash b/package/perl-xml-libxml/perl-xml-libxml.hash index 782cf5c067..b6195c3b98 100644 --- a/package/perl-xml-libxml/perl-xml-libxml.hash +++ b/package/perl-xml-libxml/perl-xml-libxml.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 c9eb502f8aa2586c4a4dce3c784a2a0b XML-LibXML-2.0123.tar.gz -sha256 0525a2491f152cadee8c63550c79a380fb393851fdfc4c1e6cd5f0f92614f7c4 XML-LibXML-2.0123.tar.gz +md5 9904690371679e082ff2c23677b6c90e XML-LibXML-2.0128.tar.gz +sha256 26e7ba451f3bade4d29ff00653a2ee01d13fe38b9a2ebcd0b0f3f82f9f688f2b XML-LibXML-2.0128.tar.gz diff --git a/package/perl-xml-libxml/perl-xml-libxml.mk b/package/perl-xml-libxml/perl-xml-libxml.mk index 9d7216aac8..8d8f5905ac 100644 --- a/package/perl-xml-libxml/perl-xml-libxml.mk +++ b/package/perl-xml-libxml/perl-xml-libxml.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_XML_LIBXML_VERSION = 2.0123 +PERL_XML_LIBXML_VERSION = 2.0128 PERL_XML_LIBXML_SOURCE = XML-LibXML-$(PERL_XML_LIBXML_VERSION).tar.gz PERL_XML_LIBXML_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SH/SHLOMIF -PERL_XML_LIBXML_DEPENDENCIES = zlib libxml2 perl-xml-sax perl-xml-namespacesupport +PERL_XML_LIBXML_DEPENDENCIES = zlib libxml2 perl-xml-namespacesupport perl-xml-sax perl-xml-sax-base PERL_XML_LIBXML_LICENSE = Artistic or GPLv1+ PERL_XML_LIBXML_LICENSE_FILES = LICENSE diff --git a/package/perl/0001-fix-static-build-with-gdbm-gettext.patch b/package/perl/0001-fix-static-build-with-gdbm-gettext.patch new file mode 100644 index 0000000000..ca6bf011f0 --- /dev/null +++ b/package/perl/0001-fix-static-build-with-gdbm-gettext.patch @@ -0,0 +1,20 @@ +fix static build with gdbm + gettext + +see doc http://perldoc.perl.org/ExtUtils/MakeMaker.html#LIBS + +Signed-off-by: Francois Perrad + +index: b/ext/GDBM_File/Makefile.PL +=================================================================== +--- a/ext/GDBM_File/Makefile.PL ++++ b/ext/GDBM_File/Makefile.PL +@@ -2,7 +2,7 @@ use ExtUtils::MakeMaker; + use ExtUtils::Constant 0.11 'WriteConstants'; + WriteMakefile( + NAME => 'GDBM_File', +- LIBS => ["-lgdbm", "-ldbm"], ++ LIBS => ["-lgdbm -lintl", "-lgdbm", "-ldbm"], + XSPROTOARG => '-noprototypes', # XXX remove later? + VERSION_FROM => 'GDBM_File.pm', + realclean => {FILES=> 'const-c.inc const-xs.inc'}, + diff --git a/package/perl/perl.hash b/package/perl/perl.hash index 4afbd06d67..41c1ce8a61 100644 --- a/package/perl/perl.hash +++ b/package/perl/perl.hash @@ -1,7 +1,7 @@ -# Hashes from: http://www.cpan.org/src/5.0/perl-5.22.2.tar.bz2.{md5,sha1,sha256}.txt -md5 24ec0b41fdd1a4cce0e66811ae1f5e1b perl-5.22.2.tar.bz2 -sha1 e2f465446dcd45a7fa3da696037f9ebe73e78e55 perl-5.22.2.tar.bz2 -sha256 f2322b9b04fe0cdbca9fe755360da04892cb6483d44959457cfebc0bcddc8058 perl-5.22.2.tar.bz2 +# Hashes from: http://www.cpan.org/src/5.0/perl-5.24.1.tar.xz.{md5,sha1,sha256}.txt +md5 af6a84c7c3e2b8b269c105a5db2f6d53 perl-5.24.1.tar.xz +sha1 5bec25d8821b81a5939ee220997f4c8ab1c13e31 perl-5.24.1.tar.xz +sha256 03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f perl-5.24.1.tar.xz -# No upstream hashes for the following -sha256 250ab6e6c034a8b7ae447fa2b453fa0b61ebb7db4d039eba60c52e44ab5899bd perl-5.22.1-cross-1.0.2.tar.gz +# Hashes from: http://github.com/arsv/perl-cross/releases/download/1.1.3/perl-cross-1.1.3.hash +sha256 181b24ff71815fb2c8065e6ea139d106796eee0964aebfd8081f0b7f69e0696d perl-cross-1.1.3.tar.gz diff --git a/package/perl/perl.mk b/package/perl/perl.mk index 11b10ff5e4..224b4cbaae 100644 --- a/package/perl/perl.mk +++ b/package/perl/perl.mk @@ -4,24 +4,21 @@ # ################################################################################ -PERL_VERSION_MAJOR = 22 -PERL_VERSION = 5.$(PERL_VERSION_MAJOR).2 +# When updating the version here, also update support/scripts/scancpan +PERL_VERSION_MAJOR = 24 +PERL_VERSION = 5.$(PERL_VERSION_MAJOR).1 PERL_SITE = http://www.cpan.org/src/5.0 -PERL_SOURCE = perl-$(PERL_VERSION).tar.bz2 +PERL_SOURCE = perl-$(PERL_VERSION).tar.xz PERL_LICENSE = Artistic or GPLv1+ PERL_LICENSE_FILES = Artistic Copying README PERL_INSTALL_STAGING = YES -PERL_CROSS_VERSION = 1.0.2 -PERL_CROSS_BASE_VERSION = 5.$(PERL_VERSION_MAJOR).1 +PERL_CROSS_VERSION = 1.1.3 # DO NOT refactor with the github helper (the result is not the same) PERL_CROSS_SITE = https://github.com/arsv/perl-cross/releases/download/$(PERL_CROSS_VERSION) -PERL_CROSS_SOURCE = perl-$(PERL_CROSS_BASE_VERSION)-cross-$(PERL_CROSS_VERSION).tar.gz +PERL_CROSS_SOURCE = perl-cross-$(PERL_CROSS_VERSION).tar.gz PERL_EXTRA_DOWNLOADS = $(PERL_CROSS_SITE)/$(PERL_CROSS_SOURCE) -PERL_CROSS_OLD_POD = perl$(subst .,,$(PERL_CROSS_BASE_VERSION))delta.pod -PERL_CROSS_NEW_POD = perl$(subst .,,$(PERL_VERSION))delta.pod - # We use the perlcross hack to cross-compile perl. It should # be extracted over the perl sources, so we don't define that # as a separate package. Instead, it is downloaded and extracted @@ -32,10 +29,11 @@ define PERL_CROSS_EXTRACT endef PERL_POST_EXTRACT_HOOKS += PERL_CROSS_EXTRACT -define PERL_CROSS_SET_POD - $(SED) s/$(PERL_CROSS_OLD_POD)/$(PERL_CROSS_NEW_POD)/g $(@D)/Makefile -endef -PERL_POST_PATCH_HOOKS += PERL_CROSS_SET_POD +# Even though perl is not an autotools-package, it uses config.sub and +# config.guess. Up-to-date versions of these files may be needed to build perl +# on newer host architectures, so we borrow the hook which updates them from the +# autotools infrastructure. +PERL_POST_PATCH_HOOKS += UPDATE_CONFIG_HOOK ifeq ($(BR2_PACKAGE_BERKELEYDB),y) PERL_DEPENDENCIES += berkeleydb @@ -54,7 +52,7 @@ PERL_CONF_OPTS = \ -Dccflags="$(TARGET_CFLAGS)" \ -Dldflags="$(TARGET_LDFLAGS) -lm" \ -Dmydomain="" \ - -Dmyhostname="$(BR2_TARGET_GENERIC_HOSTNAME)" \ + -Dmyhostname="noname" \ -Dmyuname="Buildroot $(BR2_VERSION_FULL)" \ -Dosname=linux \ -Dosvers=$(LINUX_VERSION) \ @@ -74,47 +72,44 @@ PERL_CONF_OPTS += --only-mod=$(subst $(space),$(comma),$(PERL_MODULES)) endif define PERL_CONFIGURE_CMDS - (cd $(@D); HOSTCC='$(HOSTCC_NOCCACHE)' ./configure $(PERL_CONF_OPTS)) + (cd $(@D); $(TARGET_MAKE_ENV) HOSTCC='$(HOSTCC_NOCCACHE)' \ + ./configure $(PERL_CONF_OPTS)) $(SED) 's/UNKNOWN-/Buildroot $(BR2_VERSION_FULL) /' $(@D)/patchlevel.h endef define PERL_BUILD_CMDS - $(MAKE1) -C $(@D) all + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) all endef define PERL_INSTALL_STAGING_CMDS - $(MAKE1) -C $(@D) DESTDIR="$(STAGING_DIR)" install.perl + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR="$(STAGING_DIR)" install.perl install.sym endef define PERL_INSTALL_TARGET_CMDS - $(MAKE1) -C $(@D) DESTDIR="$(TARGET_DIR)" install.perl + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR="$(TARGET_DIR)" install.perl install.sym endef -# We never want to have host-berkeleydb or host-gdbm as dependencies -# of host-perl. -HOST_PERL_DEPENDENCIES = - HOST_PERL_CONF_OPTS = \ -des \ -Dprefix="$(HOST_DIR)/usr" \ -Dcc="$(HOSTCC)" define HOST_PERL_CONFIGURE_CMDS - (cd $(@D); HOSTCC='$(HOSTCC_NOCCACHE)' ./Configure $(HOST_PERL_CONF_OPTS)) + (cd $(@D); $(HOST_MAKE_ENV) HOSTCC='$(HOSTCC_NOCCACHE)' \ + ./Configure $(HOST_PERL_CONF_OPTS)) endef define HOST_PERL_BUILD_CMDS - $(MAKE) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) endef define HOST_PERL_INSTALL_CMDS - $(MAKE) -C $(@D) INSTALL_DEPENDENCE='' install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) INSTALL_DEPENDENCE='' install endef $(eval $(generic-package)) $(eval $(host-generic-package)) -ifeq ($(BR2_PACKAGE_PERL),y) define PERL_FINALIZE_TARGET rm -rf $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)/pod rm -rf $(TARGET_DIR)/usr/lib/perl5/$(PERL_VERSION)/$(PERL_ARCHNAME)/CORE @@ -122,5 +117,4 @@ define PERL_FINALIZE_TARGET find $(TARGET_DIR)/usr/lib/perl5/ -name '*.bs' -print0 | xargs -0 rm -f find $(TARGET_DIR)/usr/lib/perl5/ -name '.packlist' -print0 | xargs -0 rm -f endef -TARGET_FINALIZE_HOOKS += PERL_FINALIZE_TARGET -endif +PERL_TARGET_FINALIZE_HOOKS += PERL_FINALIZE_TARGET diff --git a/package/phidgetwebservice/phidgetwebservice.hash b/package/phidgetwebservice/phidgetwebservice.hash new file mode 100644 index 0000000000..7cd85da79a --- /dev/null +++ b/package/phidgetwebservice/phidgetwebservice.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e8add82fd41d9cb274b88ee369a1f7366e35f85abcfcabb9e2a383574bb779c5 phidgetwebservice_2.1.8.20140319.tar.gz diff --git a/package/php-amqp/Config.in b/package/php-amqp/Config.in new file mode 100644 index 0000000000..0aa2021f5a --- /dev/null +++ b/package/php-amqp/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PHP_AMQP + bool "php-amqp" + depends on BR2_PACKAGE_PHP + depends on BR2_TOOLCHAIN_HAS_THREADS # rabbitmq-c + select BR2_PACKAGE_RABBITMQ_C + help + Communicate with any AMQP compliant server. + + http://pecl.php.net/package/amqp + +comment "php-amqp needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/php-amqp/php-amqp.hash b/package/php-amqp/php-amqp.hash new file mode 100644 index 0000000000..73c69d920b --- /dev/null +++ b/package/php-amqp/php-amqp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 38a92eaef1aa863404170bcd15605f7f78140eeec1ff5be6af65c5b8081e2599 amqp-1.7.1.tgz diff --git a/package/php-amqp/php-amqp.mk b/package/php-amqp/php-amqp.mk new file mode 100644 index 0000000000..d3ffe1600d --- /dev/null +++ b/package/php-amqp/php-amqp.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# php-amqp +# +################################################################################ + +PHP_AMQP_VERSION = 1.7.1 +PHP_AMQP_SOURCE = amqp-$(PHP_AMQP_VERSION).tgz +PHP_AMQP_SITE = https://pecl.php.net/get +PHP_AMQP_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ + --with-amqp=$(STAGING_DIR)/usr +# phpize does the autoconf magic +PHP_AMQP_DEPENDENCIES = rabbitmq-c php host-autoconf +PHP_AMQP_LICENSE = PHP +PHP_AMQP_LICENSE_FILES = LICENSE + +define PHP_AMQP_PHPIZE + (cd $(@D); \ + PHP_AUTOCONF=$(HOST_DIR)/usr/bin/autoconf \ + PHP_AUTOHEADER=$(HOST_DIR)/usr/bin/autoheader \ + $(STAGING_DIR)/usr/bin/phpize) +endef + +PHP_AMQP_PRE_CONFIGURE_HOOKS += PHP_AMQP_PHPIZE + +$(eval $(autotools-package)) diff --git a/package/php-geoip/php-geoip.hash b/package/php-geoip/php-geoip.hash index 61945cfd57..37298802dc 100644 --- a/package/php-geoip/php-geoip.hash +++ b/package/php-geoip/php-geoip.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8b5e8dec6353c437809e58d798627927ae659682b5bbdad023e9e569c278bfed php-geoip-1fd53288458100e9e30acf5a62bc9ef8426513d3.tar.gz +sha256 63167b717f624580b93f3c6c050d8d64ebc6cbe1377069646eb387534c7a2f7e php-geoip-ebb68228ad94298a305710f701b2ade9acff985d.tar.gz diff --git a/package/php-geoip/php-geoip.mk b/package/php-geoip/php-geoip.mk index cda8d4ecee..c39c95c4ec 100644 --- a/package/php-geoip/php-geoip.mk +++ b/package/php-geoip/php-geoip.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_GEOIP_VERSION = 1fd53288458100e9e30acf5a62bc9ef8426513d3 +PHP_GEOIP_VERSION = ebb68228ad94298a305710f701b2ade9acff985d PHP_GEOIP_SITE = $(call github,php7-extensions,ext-php7-geoip,$(PHP_GEOIP_VERSION)) PHP_GEOIP_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ --with-geoip=$(STAGING_DIR)/usr diff --git a/package/php-gnupg/Config.in b/package/php-gnupg/Config.in index 49fb43b5eb..113017d02a 100644 --- a/package/php-gnupg/Config.in +++ b/package/php-gnupg/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PHP_GNUPG bool "php-gnupg" depends on BR2_PACKAGE_PHP + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # ligpgme depends on BR2_USE_MMU # libassuan select BR2_PACKAGE_LIBGPGME help diff --git a/package/php-gnupg/php-gnupg.hash b/package/php-gnupg/php-gnupg.hash index ef066a506b..f0654b5781 100644 --- a/package/php-gnupg/php-gnupg.hash +++ b/package/php-gnupg/php-gnupg.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 50065cb81f1ac3ec5fcd796e58c8433071ff24cc14900e6077682717f5239307 gnupg-1.3.6.tgz +sha256 6f1a4b5a95fe501519de76d66602e46290cc452fc48f3a5ec2eacaffe68d9a01 php-gnupg-30fab6eaf9eb61c65b3b46987442be058cbd7823.tar.gz diff --git a/package/php-gnupg/php-gnupg.mk b/package/php-gnupg/php-gnupg.mk index c5964c21c4..c1c6680bb7 100644 --- a/package/php-gnupg/php-gnupg.mk +++ b/package/php-gnupg/php-gnupg.mk @@ -4,9 +4,8 @@ # ################################################################################ -PHP_GNUPG_VERSION = 1.3.6 -PHP_GNUPG_SOURCE = gnupg-$(PHP_GNUPG_VERSION).tgz -PHP_GNUPG_SITE = http://pecl.php.net/get +PHP_GNUPG_VERSION = 30fab6eaf9eb61c65b3b46987442be058cbd7823 +PHP_GNUPG_SITE = $(call github,Sean-Der,pecl-encryption-gnupg,$(PHP_GNUPG_VERSION)) # phpize does the autoconf magic PHP_GNUPG_DEPENDENCIES = php libgpgme host-autoconf host-pkgconf PHP_GNUPG_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php-imagick/php-imagick.hash b/package/php-imagick/php-imagick.hash index 551bed62c9..e9912371b1 100644 --- a/package/php-imagick/php-imagick.hash +++ b/package/php-imagick/php-imagick.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 a729fbd69e0aa145824d61dc9225bfb636dcd8421874a5667ac3822e609449e1 imagick-3.4.1.tgz +sha256 50bbc46e78cd6e1ea5d7660be1722258e60b1729483ca14b02da7cf9f5ed3e6a imagick-3.4.3RC1.tgz diff --git a/package/php-imagick/php-imagick.mk b/package/php-imagick/php-imagick.mk index 84cc3119d6..ddcefdaa40 100644 --- a/package/php-imagick/php-imagick.mk +++ b/package/php-imagick/php-imagick.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_IMAGICK_VERSION = 3.4.1 +PHP_IMAGICK_VERSION = 3.4.3RC1 PHP_IMAGICK_SOURCE = imagick-$(PHP_IMAGICK_VERSION).tgz PHP_IMAGICK_SITE = http://pecl.php.net/get PHP_IMAGICK_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php-memcached/php-memcached.hash b/package/php-memcached/php-memcached.hash index bc2e97acd3..f2a096f3dd 100644 --- a/package/php-memcached/php-memcached.hash +++ b/package/php-memcached/php-memcached.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 17b9600f6d4c807f23a3f5c45fcd8775ca2e61d6eda70370af2bef4c6e159f58 memcached-2.2.0.tgz +sha256 73266212e791a4817da06be1daddf9ff7dd5b5b0b650b3fbd0f5fc6ccc18491b php-memcached-6ee96cad7be5caa1f13a1f3e5a4d5f900b9c04ce.tar.gz diff --git a/package/php-memcached/php-memcached.mk b/package/php-memcached/php-memcached.mk index 599e22e615..ea241b2656 100644 --- a/package/php-memcached/php-memcached.mk +++ b/package/php-memcached/php-memcached.mk @@ -4,10 +4,8 @@ # ################################################################################ -PHP_MEMCACHED_VERSION = 2.2.0 -PHP_MEMCACHED_SOURCE = memcached-$(PHP_MEMCACHED_VERSION).tgz -# pecl.php.net returns html with db connect failed -PHP_MEMCACHED_SITE = http://sources.buildroot.net +PHP_MEMCACHED_VERSION = 6ee96cad7be5caa1f13a1f3e5a4d5f900b9c04ce +PHP_MEMCACHED_SITE = $(call github,php-memcached-dev,php-memcached,$(PHP_MEMCACHED_VERSION)) PHP_MEMCACHED_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ --disable-memcached-sasl \ --with-libmemcached-dir=$(STAGING_DIR)/usr \ diff --git a/package/php-ssh2/php-ssh2.hash b/package/php-ssh2/php-ssh2.hash index d599662fa4..b514601b93 100644 --- a/package/php-ssh2/php-ssh2.hash +++ b/package/php-ssh2/php-ssh2.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 600c82d2393acf3642f19914f06a7afea57ee05cb8c10e8a5510b32188b97f99 ssh2-0.12.tgz +sha256 3d79a6c9ffed3fd6ec16e834c0cc93cf125d9f5bdbb951b8b76a3507498548d5 php-ssh2-12dd52236c601577a63e33ee71e3ce6dad811e40.tar.gz diff --git a/package/php-ssh2/php-ssh2.mk b/package/php-ssh2/php-ssh2.mk index ace68e01fd..2b616321e4 100644 --- a/package/php-ssh2/php-ssh2.mk +++ b/package/php-ssh2/php-ssh2.mk @@ -4,10 +4,8 @@ # ################################################################################ -PHP_SSH2_VERSION = 0.12 -PHP_SSH2_SOURCE = ssh2-$(PHP_SSH2_VERSION).tgz -# pecl.php.net returns html with db connect failed -PHP_SSH2_SITE = http://sources.buildroot.net +PHP_SSH2_VERSION = 12dd52236c601577a63e33ee71e3ce6dad811e40 +PHP_SSH2_SITE = $(call github,php,pecl-networking-ssh2,$(PHP_SSH2_VERSION)) PHP_SSH2_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ --with-ssh2=$(STAGING_DIR)/usr # phpize does the autoconf magic diff --git a/package/php-yaml/php-yaml.hash b/package/php-yaml/php-yaml.hash index e4f22a6a5e..a40677ef5f 100644 --- a/package/php-yaml/php-yaml.hash +++ b/package/php-yaml/php-yaml.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 762ec3d9eb163ac0d063118df8c5e2ee6746dbe8566d32055e7e066e590937c3 yaml-1.1.1.tgz +sha256 d49acf2b7843258957a16df0d7ced56c0e1fc3eaa54f54289e4012edc002814c yaml-2.0.0RC7.tgz diff --git a/package/php-yaml/php-yaml.mk b/package/php-yaml/php-yaml.mk index b6f259df7b..27118906d4 100644 --- a/package/php-yaml/php-yaml.mk +++ b/package/php-yaml/php-yaml.mk @@ -4,10 +4,9 @@ # ################################################################################ -PHP_YAML_VERSION = 1.1.1 +PHP_YAML_VERSION = 2.0.0RC7 PHP_YAML_SOURCE = yaml-$(PHP_YAML_VERSION).tgz -# pecl.php.net returns html with db connect failed -PHP_YAML_SITE = http://sources.buildroot.net +PHP_YAML_SITE = https://pecl.php.net/get PHP_YAML_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ --with-yaml=$(STAGING_DIR)/usr # phpize does the autoconf magic diff --git a/package/php-zmq/Config.in b/package/php-zmq/Config.in index c258272560..058f93d9a8 100644 --- a/package/php-zmq/Config.in +++ b/package/php-zmq/Config.in @@ -1,12 +1,10 @@ -comment "php-zmq needs a toolchain w/ C++, wchar, threads" - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR \ - && BR2_TOOLCHAIN_HAS_THREADS) +comment "php-zmq needs a toolchain w/ C++, threads" + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) config BR2_PACKAGE_PHP_ZMQ bool "php-zmq" depends on BR2_PACKAGE_PHP depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_ZEROMQ help diff --git a/package/php/0001-ditch-unset.patch b/package/php/0001-acinclude.m4-don-t-unset-variables.patch similarity index 52% rename from package/php/0001-ditch-unset.patch rename to package/php/0001-acinclude.m4-don-t-unset-variables.patch index eda83c95a3..d507775b8a 100644 --- a/package/php/0001-ditch-unset.patch +++ b/package/php/0001-acinclude.m4-don-t-unset-variables.patch @@ -1,12 +1,21 @@ +From 7a4168062fbab2e33ef9a42bca9f87a5921afac2 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 9 Aug 2016 11:49:56 +0200 +Subject: [PATCH] acinclude.m4: don't unset variables + Unsetting ac_cv_{func,lib}_* is bad, you can't feed the configure cache. Terminate them with extreme prejudice. Signed-off-by: Gustavo Zacarias +--- + acinclude.m4 | 4 ---- + 1 file changed, 4 deletions(-) -diff -Nura php-5.6.8.orig/acinclude.m4 php-5.6.8/acinclude.m4 ---- php-5.6.8.orig/acinclude.m4 2015-04-15 20:05:57.000000000 +0200 -+++ php-5.6.8/acinclude.m4 2015-05-18 20:03:50.833099001 +0200 -@@ -1897,8 +1897,6 @@ +diff --git a/acinclude.m4 b/acinclude.m4 +index 28506b6..af4aa06 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -1898,8 +1898,6 @@ define([phpshift],[ifelse(index([$@],[,]),-1,,[substr([$@],incr(index([$@],[,])) dnl AC_DEFUN([PHP_CHECK_FUNC_LIB],[ ifelse($2,,:,[ @@ -15,7 +24,7 @@ diff -Nura php-5.6.8.orig/acinclude.m4 php-5.6.8/acinclude.m4 unset found AC_CHECK_LIB($2, $1, [found=yes], [ AC_CHECK_LIB($2, __$1, [found=yes], [found=no]) -@@ -1930,8 +1928,6 @@ +@@ -1931,8 +1929,6 @@ dnl in the default libraries and as a fall back in the specified library. dnl Defines HAVE_func and HAVE_library if found and adds the library to LIBS. dnl AC_DEFUN([PHP_CHECK_FUNC],[ @@ -24,3 +33,6 @@ diff -Nura php-5.6.8.orig/acinclude.m4 php-5.6.8/acinclude.m4 unset found AC_CHECK_FUNC($1, [found=yes],[ AC_CHECK_FUNC(__$1,[found=yes],[found=no]) ]) +-- +2.7.4 + diff --git a/package/php/0002-no-iconv-search.patch b/package/php/0002-iconv-tweak-iconv-detection.patch similarity index 69% rename from package/php/0002-no-iconv-search.patch rename to package/php/0002-iconv-tweak-iconv-detection.patch index 32aa7f5f88..a34664930b 100644 --- a/package/php/0002-no-iconv-search.patch +++ b/package/php/0002-iconv-tweak-iconv-detection.patch @@ -1,3 +1,8 @@ +From 1357df0196806d5697b1f84497ef72aab5faa8a3 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 9 Aug 2016 11:50:49 +0200 +Subject: [PATCH] iconv: tweak iconv detection + Tweak PHP_SETUP_ICONV from aclocal/acinclude.m4 to not PHP_ADD_INCLUDE $ICONV_DIR/include since the tests use test instead of AC_TRY_LINK to find headers which is bad, @@ -8,11 +13,16 @@ PHP_ICONV_H_PATH which, again, uses test and absolute paths. Signed-off-by: Gustavo Zacarias [Gustavo: convert to nice m4 instead of patching configure] [Gustavo: update for 5.6.10] +--- + acinclude.m4 | 2 +- + ext/iconv/config.m4 | 22 ---------------------- + 2 files changed, 1 insertion(+), 23 deletions(-) -diff -Nura php-5.6.10.orig/acinclude.m4 php-5.6.10/acinclude.m4 ---- php-5.6.10.orig/acinclude.m4 2015-06-12 16:09:06.274355813 -0300 -+++ php-5.6.10/acinclude.m4 2015-06-12 16:10:10.884544865 -0300 -@@ -2474,7 +2474,7 @@ +diff --git a/acinclude.m4 b/acinclude.m4 +index af4aa06..1bd2652 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -2471,7 +2471,7 @@ AC_DEFUN([PHP_SETUP_ICONV], [ dnl if test "$found_iconv" = "no"; then @@ -21,10 +31,11 @@ diff -Nura php-5.6.10.orig/acinclude.m4 php-5.6.10/acinclude.m4 if test -r $i/include/giconv.h; then AC_DEFINE(HAVE_GICONV_H, 1, [ ]) ICONV_DIR=$i -diff -Nura php-5.6.10.orig/ext/iconv/config.m4 php-5.6.10/ext/iconv/config.m4 ---- php-5.6.10.orig/ext/iconv/config.m4 2015-06-12 16:09:07.792407246 -0300 -+++ php-5.6.10/ext/iconv/config.m4 2015-06-12 16:11:07.752471600 -0300 -@@ -14,28 +14,6 @@ +diff --git a/ext/iconv/config.m4 b/ext/iconv/config.m4 +index 6a05697..694fcb8 100644 +--- a/ext/iconv/config.m4 ++++ b/ext/iconv/config.m4 +@@ -14,28 +14,6 @@ if test "$PHP_ICONV" != "no"; then ]) if test "$iconv_avail" != "no"; then @@ -53,3 +64,6 @@ diff -Nura php-5.6.10.orig/ext/iconv/config.m4 php-5.6.10/ext/iconv/config.m4 AC_MSG_CHECKING([if iconv is glibc's]) AC_TRY_LINK([#include ],[gnu_get_libc_version();], +-- +2.7.4 + diff --git a/package/php/0003-disable-pharcmd.patch b/package/php/0003-configure-disable-the-phar-tool.patch similarity index 60% rename from package/php/0003-disable-pharcmd.patch rename to package/php/0003-configure-disable-the-phar-tool.patch index bfcc956343..3b64b7b6bf 100644 --- a/package/php/0003-disable-pharcmd.patch +++ b/package/php/0003-configure-disable-the-phar-tool.patch @@ -1,3 +1,8 @@ +From 5ba6355e489f647c88ca48afbc75965468193181 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 9 Aug 2016 11:51:53 +0200 +Subject: [PATCH] configure: disable the 'phar' tool + Disable the 'phar' command-line tool build/installation since it requires php to run and pack up phar itself in phar format. This would require a host-php instance and really probably nobody needs the phar tool @@ -5,13 +10,17 @@ on the target. Signed-off-by: Gustavo Zacarias [Gustavo: update for autoreconf/configure.in] +--- + configure.in | 9 ++------- + 1 file changed, 2 insertions(+), 7 deletions(-) -diff -Nura php-5.6.7.orig/configure.in php-5.6.7/configure.in ---- php-5.6.7.orig/configure.in 2015-04-08 11:08:10.815835010 -0300 -+++ php-5.6.7/configure.in 2015-04-08 11:16:20.460467444 -0300 -@@ -1437,13 +1437,8 @@ +diff --git a/configure.in b/configure.in +index 25c8abf..4dc8a09 100644 +--- a/configure.in ++++ b/configure.in +@@ -1445,13 +1445,8 @@ CFLAGS="\$(CFLAGS_CLEAN) $standard_libtool_flag" INLINE_CFLAGS="$INLINE_CFLAGS $standard_libtool_flag" - CXXFLAGS="$CXXFLAGS $standard_libtool_flag" + CXXFLAGS="$CXXFLAGS $standard_libtool_flag \$(PROF_FLAGS)" -if test "$PHP_PHAR" != "no" && test "$PHP_CLI" != "no"; then - pharcmd=pharcmd @@ -25,3 +34,6 @@ diff -Nura php-5.6.7.orig/configure.in php-5.6.7/configure.in all_targets="$lcov_target \$(OVERALL_TARGET) \$(PHP_MODULES) \$(PHP_ZEND_EX) \$(PHP_BINARIES) $pharcmd" install_targets="$install_sapi $install_modules $install_binaries install-build install-headers install-programs $install_pear $pharcmd_install" +-- +2.7.4 + diff --git a/package/php/0004-flock-type-linux.patch b/package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch similarity index 66% rename from package/php/0004-flock-type-linux.patch rename to package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch index a03c2624a7..9b530361c9 100644 --- a/package/php/0004-flock-type-linux.patch +++ b/package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch @@ -1,11 +1,18 @@ -OPcache: flock mechanism is obviously linux so force it. +From bedbd41ef0a5ce80b83a6f6eaebd7c90f0bc5615 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 9 Aug 2016 11:52:19 +0200 +Subject: [PATCH] OPcache: flock mechanism is obviously linux so force it. Signed-off-by: Gustavo Zacarias +--- + ext/opcache/config.m4 | 34 ++-------------------------------- + 1 file changed, 2 insertions(+), 32 deletions(-) -diff -Nura php-5.6.7.orig/ext/opcache/config.m4 php-5.6.7/ext/opcache/config.m4 ---- php-5.6.7.orig/ext/opcache/config.m4 2015-04-08 11:08:11.125845540 -0300 -+++ php-5.6.7/ext/opcache/config.m4 2015-04-08 11:57:23.648831436 -0300 -@@ -326,38 +326,8 @@ +diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4 +index fbb9b21..ffddc8e 100644 +--- a/ext/opcache/config.m4 ++++ b/ext/opcache/config.m4 +@@ -343,38 +343,8 @@ int main() { msg=yes,msg=no,msg=no) AC_MSG_RESULT([$msg]) @@ -44,5 +51,8 @@ diff -Nura php-5.6.7.orig/ext/opcache/config.m4 php-5.6.7/ext/opcache/config.m4 +flock_type=linux +AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) - if test "$flock_type" == "unknown"; then + if test "$flock_type" = "unknown"; then AC_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no]) +-- +2.7.4 + diff --git a/package/php/0005-ac-cache-strcasestr.patch b/package/php/0005-ac-cache-strcasestr.patch deleted file mode 100644 index 8a8c5d86ff..0000000000 --- a/package/php/0005-ac-cache-strcasestr.patch +++ /dev/null @@ -1,24 +0,0 @@ -Allow cache answer for strcasestr discovery. - -Signed-off-by: Gustavo Zacarias - -diff -Nura php-5.6.7.orig/ext/fileinfo/config.m4 php-5.6.7/ext/fileinfo/config.m4 ---- php-5.6.7.orig/ext/fileinfo/config.m4 2015-04-08 22:19:45.798770792 -0300 -+++ php-5.6.7/ext/fileinfo/config.m4 2015-04-08 22:26:33.110654338 -0300 -@@ -14,6 +14,7 @@ - libmagic/readcdf.c libmagic/softmagic.c" - - AC_MSG_CHECKING([for strcasestr]) -+ AC_CACHE_VAL(ac_cv_func_strcasestr, - AC_TRY_RUN([ - #include - #include -@@ -46,7 +47,7 @@ - AC_MSG_RESULT(no) - AC_MSG_NOTICE(using libmagic strcasestr implementation) - libmagic_sources="$libmagic_sources libmagic/strcasestr.c" -- ]) -+ ])) - - PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic) - PHP_ADD_BUILD_DIR($ext_builddir/libmagic) diff --git a/package/php/0005-ext-fileinfo-config.m4-allow-cache-answer-for-strcas.patch b/package/php/0005-ext-fileinfo-config.m4-allow-cache-answer-for-strcas.patch new file mode 100644 index 0000000000..a36c2a3ae0 --- /dev/null +++ b/package/php/0005-ext-fileinfo-config.m4-allow-cache-answer-for-strcas.patch @@ -0,0 +1,35 @@ +From a874ba472151c6811018de322a5787d0ca6148c9 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 9 Aug 2016 11:52:51 +0200 +Subject: [PATCH] ext/fileinfo/config.m4: allow cache answer for strcasestr + discovery + +Signed-off-by: Gustavo Zacarias +--- + ext/fileinfo/config.m4 | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/ext/fileinfo/config.m4 b/ext/fileinfo/config.m4 +index 7e98d62..8561962 100644 +--- a/ext/fileinfo/config.m4 ++++ b/ext/fileinfo/config.m4 +@@ -14,6 +14,7 @@ if test "$PHP_FILEINFO" != "no"; then + libmagic/readcdf.c libmagic/softmagic.c" + + AC_MSG_CHECKING([for strcasestr]) ++ AC_CACHE_VAL(ac_cv_func_strcasestr, + AC_TRY_RUN([ + #include + #include +@@ -46,7 +47,7 @@ int main(void) + AC_MSG_RESULT(no) + AC_MSG_NOTICE(using libmagic strcasestr implementation) + libmagic_sources="$libmagic_sources libmagic/strcasestr.c" +- ]) ++ ])) + + PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic) + PHP_ADD_BUILD_DIR($ext_builddir/libmagic) +-- +2.7.4 + diff --git a/package/php/0006-fix-php-fpm.service.in.patch b/package/php/0006-fix-php-fpm.service.in.patch deleted file mode 100644 index a182a2528b..0000000000 --- a/package/php/0006-fix-php-fpm.service.in.patch +++ /dev/null @@ -1,35 +0,0 @@ -From bb19125781c0794da9a63fee62e263ff4efff661 Mon Sep 17 00:00:00 2001 -From: Floris Bos -Date: Fri, 1 May 2015 15:28:55 +0200 -Subject: [PATCH] Fix php-fpm.service.in - -- Expand file paths. -- Remove obsolete After=syslog.target. Syslog is socket activated nowadays. - -Signed-off-by: Floris Bos ---- - sapi/fpm/php-fpm.service.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/sapi/fpm/php-fpm.service.in b/sapi/fpm/php-fpm.service.in -index a2df30e..c135f04 100644 ---- a/sapi/fpm/php-fpm.service.in -+++ b/sapi/fpm/php-fpm.service.in -@@ -1,11 +1,11 @@ - [Unit] - Description=The PHP FastCGI Process Manager --After=syslog.target network.target -+After=network.target - - [Service] - Type=@php_fpm_systemd@ --PIDFile=@localstatedir@/run/php-fpm.pid --ExecStart=@sbindir@/php-fpm --nodaemonize --fpm-config @sysconfdir@/php-fpm.conf -+PIDFile=@EXPANDED_LOCALSTATEDIR@/run/php-fpm.pid -+ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize --fpm-config @EXPANDED_SYSCONFDIR@/php-fpm.conf - ExecReload=/bin/kill -USR2 $MAINPID - - [Install] --- -2.1.4 - diff --git a/package/php/0007-avoid-bfin-gcc-segfault.patch b/package/php/0007-avoid-bfin-gcc-segfault.patch new file mode 100644 index 0000000000..4dccb25f1f --- /dev/null +++ b/package/php/0007-avoid-bfin-gcc-segfault.patch @@ -0,0 +1,16 @@ +Avoid gcc segmentation fault + +Signed-off-by: Waldemar Brodkorb + +diff -Nur php-7.0.12.orig/Zend/zend_portability.h php-7.0.12/Zend/zend_portability.h +--- php-7.0.12.orig/Zend/zend_portability.h 2016-10-13 16:04:17.000000000 +0200 ++++ php-7.0.12/Zend/zend_portability.h 2016-11-08 02:49:39.118388999 +0100 +@@ -97,7 +97,7 @@ + + #if defined(ZEND_WIN32) && !defined(__clang__) + # define ZEND_ASSUME(c) __assume(c) +-#elif ((defined(__GNUC__) && ZEND_GCC_VERSION >= 4005) || __has_builtin(__builtin_unreachable)) && PHP_HAVE_BUILTIN_EXPECT ++#elif ((defined(__GNUC__) && ZEND_GCC_VERSION >= 4005) || __has_builtin(__builtin_unreachable)) && PHP_HAVE_BUILTIN_EXPECT && !defined(__bfin__) + # define ZEND_ASSUME(c) do { \ + if (__builtin_expect(!(c), 0)) __builtin_unreachable(); \ + } while (0) diff --git a/package/php/0008-fix-asm-constraints-in-aarch64-multiply-macro.patch b/package/php/0008-fix-asm-constraints-in-aarch64-multiply-macro.patch new file mode 100644 index 0000000000..f4812daaa5 --- /dev/null +++ b/package/php/0008-fix-asm-constraints-in-aarch64-multiply-macro.patch @@ -0,0 +1,28 @@ +From 1622f24fde4220967bd907bf8f0325d444bf9339 Mon Sep 17 00:00:00 2001 +From: Andy Postnikov +Date: Sat, 10 Dec 2016 23:51:17 +0300 +Subject: [PATCH] Fix bug #70015 - Compilation failure on aarch64 + +Fixes build at -O0. + +[From pull request https://github.com/php/php-src/pull/2236.] +Signed-off-by: Tatsuyuki Ishi +--- + Zend/zend_multiply.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Zend/zend_multiply.h b/Zend/zend_multiply.h +index 75769db..fbd69ab 100644 +--- a/Zend/zend_multiply.h ++++ b/Zend/zend_multiply.h +@@ -75,8 +75,8 @@ + __asm__("mul %0, %2, %3\n" \ + "smulh %1, %2, %3\n" \ + "sub %1, %1, %0, asr #63\n" \ +- : "=X"(__tmpvar), "=X"(usedval) \ +- : "X"(a), "X"(b)); \ ++ : "=&r"(__tmpvar), "=&r"(usedval) \ ++ : "r"(a), "r"(b)); \ + if (usedval) (dval) = (double) (a) * (double) (b); \ + else (lval) = __tmpvar; \ + } while (0) diff --git a/package/php/0009-Call-apxs-with-correct-prefix.patch b/package/php/0009-Call-apxs-with-correct-prefix.patch new file mode 100644 index 0000000000..b850ab7755 --- /dev/null +++ b/package/php/0009-Call-apxs-with-correct-prefix.patch @@ -0,0 +1,49 @@ +From 4342bdea7a1a21430ce0d051fa4387441166c473 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 11 Dec 2016 23:12:46 +0100 +Subject: [PATCH] Call apxs with correct prefix + +php uses apache's apxs script from staging directory to install libphp +dynamic library and update /etc/apache2/httpd.conf in the staging and target +directories. Here is the full command line: +"apxs -S LIBEXECDIR='$(INSTALL_ROOT)/usr/modules' + -S SYSCONFDIR='$(INSTALL_ROOT)/etc/apache2' -i -a -n php7" +This does not work for target directory as apxs sets the full path of the +library and not the relative one. Indeed, apxs is smart enough to substitute +away the prefix specified in $(STAGING_DIR)/usr/build/config_vars.mk so +httpd.conf will only be correct in the staging directory. +To fix this, add -S PREFIX='$(INSTALL_ROOT)/usr' to apxs call in configure + +Signed-off-by: Fabrice Fontaine +--- + sapi/apache2handler/config.m4 | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/sapi/apache2handler/config.m4 b/sapi/apache2handler/config.m4 +index 2e64b21..f5bf002 100644 +--- a/sapi/apache2handler/config.m4 ++++ b/sapi/apache2handler/config.m4 +@@ -66,10 +66,12 @@ if test "$PHP_APXS2" != "no"; then + AC_MSG_ERROR([Please note that Apache version >= 2.0.44 is required]) + fi + ++ APXS_PREFIX='$(INSTALL_ROOT)'/usr + APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR` + if test -z `$APXS -q SYSCONFDIR`; then + INSTALL_IT="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \ + $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \ ++ -S PREFIX='$APXS_PREFIX' \ + -i -n php7" + else + APXS_SYSCONFDIR='$(INSTALL_ROOT)'`$APXS -q SYSCONFDIR` +@@ -77,6 +79,7 @@ if test "$PHP_APXS2" != "no"; then + \$(mkinstalldirs) '$APXS_SYSCONFDIR' && \ + $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \ + -S SYSCONFDIR='$APXS_SYSCONFDIR' \ ++ -S PREFIX='$APXS_PREFIX' \ + -i -a -n php7" + fi + +-- +2.5.0 + diff --git a/package/php/Config.ext b/package/php/Config.ext index ee51030ab7..7c3ba7e8c4 100644 --- a/package/php/Config.ext +++ b/package/php/Config.ext @@ -111,22 +111,8 @@ config BR2_PACKAGE_PHP_EXT_DBA_INI endif -config BR2_PACKAGE_PHP_EXT_MYSQL - bool "Mysql" - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_MMU # mysql - depends on BR2_TOOLCHAIN_HAS_THREADS # mysql - select BR2_PACKAGE_MYSQL - help - MySQL support - config BR2_PACKAGE_PHP_EXT_MYSQLI bool "Mysqli" - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_MMU # mysql - depends on BR2_TOOLCHAIN_HAS_THREADS # mysql - select BR2_PACKAGE_MYSQL - select BR2_PACKAGE_PHP_EXT_MYSQL help MySQL Improved extension support @@ -145,17 +131,9 @@ if BR2_PACKAGE_PHP_EXT_PDO config BR2_PACKAGE_PHP_EXT_PDO_MYSQL bool "MySQL" - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_MMU # mysql - depends on BR2_TOOLCHAIN_HAS_THREADS # mysql - select BR2_PACKAGE_MYSQL help PDO driver for MySQL -comment "MySQL drivers need a toolchain w/ C++, threads" - depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS - config BR2_PACKAGE_PHP_EXT_PDO_POSTGRESQL bool "PostgreSQL" select BR2_PACKAGE_POSTGRESQL diff --git a/package/php/Config.in b/package/php/Config.in index 32faa322fe..0fb80063af 100644 --- a/package/php/Config.in +++ b/package/php/Config.in @@ -1,5 +1,11 @@ config BR2_PACKAGE_PHP bool "php" + select BR2_PACKAGE_PHP_SAPI_CGI if \ + !BR2_PACKAGE_PHP_SAPI_APACHE && \ + !BR2_PACKAGE_PHP_SAPI_CLI && \ + !BR2_PACKAGE_PHP_SAPI_FPM && \ + BR2_USE_MMU + select BR2_PACKAGE_PHP_SAPI_CLI if !BR2_USE_MMU help PHP is a widely-used general-purpose scripting language that is especially suited for Web development @@ -9,61 +15,32 @@ config BR2_PACKAGE_PHP if BR2_PACKAGE_PHP -source "package/php/Config.ext" - -config BR2_PACKAGE_PHP_CLI - bool - -config BR2_PACKAGE_PHP_CGI - bool - -config BR2_PACKAGE_PHP_FPM - bool - -choice - prompt "Interface" - default BR2_PACKAGE_PHP_SAPI_CGI +config BR2_PACKAGE_PHP_SAPI_APACHE + bool "Apache interface" + depends on BR2_PACKAGE_APACHE help - Select the PHP interface(s). + Apache module config BR2_PACKAGE_PHP_SAPI_CGI - bool "CGI" + bool "CGI interface" # CGI uses fork() depends on BR2_USE_MMU - select BR2_PACKAGE_PHP_CGI help Common Gateway Interface config BR2_PACKAGE_PHP_SAPI_CLI - bool "CLI" - select BR2_PACKAGE_PHP_CLI + bool "CLI interface" help Command Line Interface config BR2_PACKAGE_PHP_SAPI_FPM - bool "FPM" + bool "FPM interface" depends on BR2_USE_MMU - select BR2_PACKAGE_PHP_FPM + # "Sparc v8 and predecessors are not and will not be supported" + depends on !BR2_sparc help PHP-FPM (FastCGI Process Manager) -config BR2_PACKAGE_PHP_SAPI_CLI_CGI - bool "CGI and CLI" - # CGI uses fork() - depends on BR2_USE_MMU - select BR2_PACKAGE_PHP_CLI - select BR2_PACKAGE_PHP_CGI - help - Command line and Common gateway interfaces - -config BR2_PACKAGE_PHP_SAPI_CLI_FPM - bool "FPM and CLI" - depends on BR2_USE_MMU - select BR2_PACKAGE_PHP_CLI - select BR2_PACKAGE_PHP_FPM - help - Command line and PHP-FPM (FastCGI Process Manager) - -endchoice +source "package/php/Config.ext" endif diff --git a/package/php/php-fpm.conf b/package/php/php-fpm.conf index b75a58fefc..88014b8c80 100644 --- a/package/php/php-fpm.conf +++ b/package/php/php-fpm.conf @@ -1,9 +1,6 @@ [www] -# Only start children when there are requests to be processed pm = ondemand -# Terminate them again after there haven't been any for 2 minutes pm.process_idle_timeout = 120s -# Maximum number of children processing PHP requests concurrently pm.max_children = 5 listen = /var/run/php-fpm.sock diff --git a/package/php/php.hash b/package/php/php.hash index f97baea7bf..9c94b9e4cf 100644 --- a/package/php/php.hash +++ b/package/php/php.hash @@ -1,2 +1,2 @@ # From http://php.net/downloads.php -sha256 c96980d7de1d66c821a4ee5809df0076f925b2fe0b8c362d234d92f2f0a178e2 php-5.6.22.tar.xz +sha256 b3565b0c1441064eba204821608df1ec7367abff881286898d900c2c2a5ffe70 php-7.1.1.tar.xz diff --git a/package/php/php.mk b/package/php/php.mk index 90633eff6a..1379ad571b 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 5.6.22 +PHP_VERSION = 7.1.1 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES @@ -19,6 +19,7 @@ PHP_CONF_OPTS = \ --disable-all \ --without-pear \ --with-config-file-path=/etc \ + --disable-phpdbg \ --disable-rpath PHP_CONF_ENV = \ ac_cv_func_strcasestr=yes \ @@ -32,9 +33,10 @@ ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) PHP_STATIC_LIBS += -lpthread endif -ifeq ($(BR2_TARGET_LOCALTIME),) +ifeq ($(call qstrip,$(BR2_TARGET_LOCALTIME)),) PHP_LOCALTIME = UTC else +# Not q-stripping this value, as we need quotes in the php.ini file PHP_LOCALTIME = $(BR2_TARGET_LOCALTIME) endif @@ -75,9 +77,19 @@ else PHP_CONF_ENV += ac_cv_func_dlopen=no ac_cv_lib_dl_dlopen=no endif -PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_CLI),,--disable-cli) -PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_CGI),,--disable-cgi) -PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_FPM),--enable-fpm,--disable-fpm) +PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_CLI),--enable-cli,--disable-cli) +PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_CGI),--enable-cgi,--disable-cgi) +PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_FPM),--enable-fpm,--disable-fpm) + +ifeq ($(BR2_PACKAGE_PHP_SAPI_APACHE),y) +PHP_DEPENDENCIES += apache +PHP_CONF_OPTS += --with-apxs2=$(STAGING_DIR)/usr/bin/apxs + +# Enable thread safety option if Apache MPM is event or worker +ifeq ($(BR2_PACKAGE_APACHE_MPM_EVENT)$(BR2_PACKAGE_APACHE_MPM_WORKER),y) +PHP_CONF_OPTS += --enable-maintainer-zts +endif +endif ### Extensions PHP_CONF_OPTS += \ @@ -178,14 +190,9 @@ PHP_CONF_OPTS += --with-readline=$(STAGING_DIR)/usr PHP_DEPENDENCIES += readline endif -### Native MySQL extensions -ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQL),y) -PHP_CONF_OPTS += --with-mysql=$(STAGING_DIR)/usr -PHP_DEPENDENCIES += mysql -endif +### Native SQL extensions ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQLI),y) -PHP_CONF_OPTS += --with-mysqli=$(STAGING_DIR)/usr/bin/mysql_config -PHP_DEPENDENCIES += mysql +PHP_CONF_OPTS += --with-mysqli endif ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y) PHP_CONF_OPTS += --with-sqlite3=$(STAGING_DIR)/usr @@ -202,8 +209,7 @@ PHP_DEPENDENCIES += sqlite PHP_CFLAGS += -DSQLITE_OMIT_LOAD_EXTENSION endif ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_MYSQL),y) -PHP_CONF_OPTS += --with-pdo-mysql=$(STAGING_DIR)/usr -PHP_DEPENDENCIES += mysql +PHP_CONF_OPTS += --with-pdo-mysql endif ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_POSTGRESQL),y) PHP_CONF_OPTS += --with-pdo-pgsql=$(STAGING_DIR)/usr @@ -215,6 +221,11 @@ PHP_DEPENDENCIES += unixodbc endif endif +ifneq ($(BR2_PACKAGE_PHP_EXT_MYSQLI)$(BR2_PACKAGE_PHP_EXT_PDO_MYSQL),) +# Set default MySQL unix socket to what the MySQL server is using by default +PHP_CONF_OPTS += --with-mysql-sock=$(MYSQL_SOCKET) +endif + define PHP_DISABLE_PCRE_JIT $(SED) '/^#define SUPPORT_JIT/d' $(@D)/ext/pcre/pcrelib/config.h endef @@ -284,7 +295,7 @@ PHP_CONF_OPTS += \ PHP_DEPENDENCIES += jpeg libpng freetype endif -ifeq ($(BR2_PACKAGE_PHP_FPM),y) +ifeq ($(BR2_PACKAGE_PHP_SAPI_FPM),y) define PHP_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 $(@D)/sapi/fpm/init.d.php-fpm \ $(TARGET_DIR)/etc/init.d/S49php-fpm diff --git a/package/pifmrds/pifmrds.hash b/package/pifmrds/pifmrds.hash new file mode 100644 index 0000000000..0c91d3d449 --- /dev/null +++ b/package/pifmrds/pifmrds.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2afc9f3c9fc206ba32865d7dd77f3a97d7d86dcfc9b44eeb5665e8fddaafcf44 pifmrds-0bf57f9ce0d954365a38d8af8e7be6f28521c3f2.tar.gz diff --git a/package/pifmrds/pifmrds.mk b/package/pifmrds/pifmrds.mk index 51797152fc..a30c0136f2 100644 --- a/package/pifmrds/pifmrds.mk +++ b/package/pifmrds/pifmrds.mk @@ -11,7 +11,7 @@ PIFMRDS_LICENSE = GPLv3+ PIFMRDS_LICENSE_FILES = LICENSE define PIFMRDS_BUILD_CMDS - $(MAKE) -C $(@D)/src CC="$(TARGET_CC)" LDFLAGS="$(TARGET_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src CC="$(TARGET_CC)" LDFLAGS="$(TARGET_LDFLAGS)" \ CFLAGS="$(TARGET_CFLAGS) -std=gnu99 -ffast-math -c" \ app rds_wav endef diff --git a/package/pinentry/pinentry.mk b/package/pinentry/pinentry.mk index 09a7705c27..bcb910a0e2 100644 --- a/package/pinentry/pinentry.mk +++ b/package/pinentry/pinentry.mk @@ -14,6 +14,13 @@ PINENTRY_DEPENDENCIES = \ host-pkgconf PINENTRY_CONF_OPTS += --without-libcap # requires PAM +# pinentry uses some std::string functionality that needs C++11 +# support when gcc >= 5.x. This should be removed when bumping +# pinentry, since newer versions no longer use std::string. +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y) +PINENTRY_CONF_ENV = CXXFLAGS="$(TARGET_CXXFLAGS) -std=gnu++11" +endif + # build with X if available ifeq ($(BR2_PACKAGE_XORG7),y) PINENTRY_CONF_OPTS += --with-x diff --git a/package/pixman/pixman.mk b/package/pixman/pixman.mk index ae8d62c589..c797b3e60c 100644 --- a/package/pixman/pixman.mk +++ b/package/pixman/pixman.mk @@ -12,6 +12,7 @@ PIXMAN_LICENSE_FILES = COPYING PIXMAN_INSTALL_STAGING = YES PIXMAN_DEPENDENCIES = host-pkgconf +HOST_PIXMAN_DEPENDENCIES = host-pkgconf # For 0001-Disable-tests.patch PIXMAN_AUTORECONF = YES @@ -19,6 +20,23 @@ PIXMAN_AUTORECONF = YES # don't build gtk based demos PIXMAN_CONF_OPTS = --disable-gtk +# The ARM SIMD code from pixman requires a recent enough ARM core, but +# there is a runtime CPU check that makes sure it doesn't get used if +# the HW doesn't support it. The only case where the ARM SIMD code +# cannot be *built* at all is when the platform doesn't support ARM +# instructions at all, so we have to disable that explicitly. +ifeq ($(BR2_ARM_CPU_HAS_ARM),y) +PIXMAN_CONF_OPTS += --enable-arm-simd +else +PIXMAN_CONF_OPTS += --disable-arm-simd +endif + +ifeq ($(BR2_ARM_CPU_HAS_ARM)$(BR2_ARM_CPU_HAS_NEON),yy) +PIXMAN_CONF_OPTS += --enable-arm-neon +else +PIXMAN_CONF_OPTS += --disable-arm-neon +endif + # disable iwmmxt support for CPU's that don't have # this feature ifneq ($(BR2_iwmmxt),y) diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk index 502eeea6aa..f7b848888b 100644 --- a/package/pkg-autotools.mk +++ b/package/pkg-autotools.mk @@ -59,25 +59,34 @@ endef # define LIBTOOL_PATCH_HOOK @$(call MESSAGE,"Patching libtool") - $(Q)for i in `find $($(PKG)_SRCDIR) -name ltmain.sh`; do \ + $(Q)for i in `find $($(PKG)_DIR) -name ltmain.sh`; do \ ltmain_version=`sed -n '/^[ \t]*VERSION=/{s/^[ \t]*VERSION=//;p;q;}' $$i | \ sed -e 's/\([0-9]*\.[0-9]*\).*/\1/' -e 's/\"//'`; \ ltmain_patchlevel=`sed -n '/^[ \t]*VERSION=/{s/^[ \t]*VERSION=//;p;q;}' $$i | \ sed -e 's/\([0-9]*\.[0-9]*\.*\)\([0-9]*\).*/\2/' -e 's/\"//'`; \ if test $${ltmain_version} = '1.5'; then \ - $(APPLY_PATCHES) $${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ + patch -i support/libtool/buildroot-libtool-v1.5.patch $${i}; \ elif test $${ltmain_version} = "2.2"; then\ - $(APPLY_PATCHES) $${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ + patch -i support/libtool/buildroot-libtool-v2.2.patch $${i}; \ elif test $${ltmain_version} = "2.4"; then\ if test $${ltmain_patchlevel:-0} -gt 2; then\ - $(APPLY_PATCHES) $${i%/*} support/libtool buildroot-libtool-v2.4.4.patch; \ + patch -i support/libtool/buildroot-libtool-v2.4.4.patch $${i}; \ else \ - $(APPLY_PATCHES) $${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ + patch -i support/libtool/buildroot-libtool-v2.4.patch $${i}; \ fi \ fi \ done endef +# +# Hook to patch common issue with configure on powerpc64{,le} failing +# to detect shared library support: +# +define CONFIGURE_FIX_POWERPC64_HOOK + @$(call MESSAGE,"Checking configure (powerpc64/powerpc64le)") + support/scripts/fix-configure-powerpc64.sh $($(PKG)_DIR) +endef + # # Hook to gettextize the package if needed # @@ -159,15 +168,6 @@ $(2)_INSTALL_OPTS ?= install $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install -# This must be repeated from inner-generic-package, otherwise we get an empty -# _DEPENDENCIES if _AUTORECONF is YES. Also filter the result of _AUTORECONF -# and _GETTEXTIZE away from the non-host rule -ifeq ($(4),host) -$(2)_DEPENDENCIES ?= $$(filter-out host-automake host-autoconf host-libtool \ - host-gettext host-skeleton host-toolchain $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif - # # Configure step. Only define it if not already defined by the package # .mk file. And take care of the differences between host and target @@ -264,6 +264,13 @@ endif endif +# Append a configure hook if building for a powerpc64 (or powerpc64le) arch. +# Must be added after other pre-configure hooks that might regenerate the +# configure script and overwrite the changes made here. +ifneq ($$(filter powerpc64%,$$(if $$(filter target,$(4)),$$(ARCH),$$(HOSTARCH))),) +$(2)_PRE_CONFIGURE_HOOKS += CONFIGURE_FIX_POWERPC64_HOOK +endif + # # Build step. Only define it if not already defined by the package .mk # file. diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index 81dcfcce16..4e0e8382de 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -85,9 +85,8 @@ define $(2)_CONFIGURE_CMDS cd $$($$(PKG)_BUILDDIR) && \ rm -f CMakeCache.txt && \ PATH=$$(BR_PATH) \ - $$($$(PKG)_CONF_ENV) $$(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \ + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ -DCMAKE_TOOLCHAIN_FILE="$$(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake" \ - -DCMAKE_BUILD_TYPE=$$(if $$(BR2_ENABLE_DEBUG),Debug,Release) \ -DCMAKE_INSTALL_PREFIX="/usr" \ -DCMAKE_COLOR_MAKEFILE=OFF \ -DBUILD_DOC=OFF \ @@ -110,7 +109,7 @@ define $(2)_CONFIGURE_CMDS cd $$($$(PKG)_BUILDDIR) && \ rm -f CMakeCache.txt && \ PATH=$$(BR_PATH) \ - $$(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \ + $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="BOTH" \ @@ -142,14 +141,11 @@ endef endif endif -# This must be repeated from inner-generic-package, otherwise we only get -# host-cmake in _DEPENDENCIES because of the following line -ifeq ($(4),host) -$(2)_DEPENDENCIES ?= $$(filter-out host-skeleton host-toolchain $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif +# Since some CMake modules (even upstream ones) use pgk_check_modules +# primitives to find {C,LD}FLAGS, add it to the dependency list. +$(2)_DEPENDENCIES += host-pkgconf -$(2)_DEPENDENCIES += host-cmake +$(2)_DEPENDENCIES += $(BR2_CMAKE_HOST_DEPENDENCY) # # Build step. Only define it if not already defined by the package .mk @@ -243,9 +239,13 @@ $(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake: -e 's#@@STAGING_SUBDIR@@#$(call qstrip,$(STAGING_SUBDIR))#' \ -e 's#@@TARGET_CFLAGS@@#$(call qstrip,$(TARGET_CFLAGS))#' \ -e 's#@@TARGET_CXXFLAGS@@#$(call qstrip,$(TARGET_CXXFLAGS))#' \ + -e 's#@@TARGET_FCFLAGS@@#$(call qstrip,$(TARGET_FCFLAGS))#' \ -e 's#@@TARGET_LDFLAGS@@#$(call qstrip,$(TARGET_LDFLAGS))#' \ -e 's#@@TARGET_CC@@#$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CC)))#' \ -e 's#@@TARGET_CXX@@#$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CXX)))#' \ + -e 's#@@TARGET_FC@@#$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_FC)))#' \ -e 's#@@CMAKE_SYSTEM_PROCESSOR@@#$(call qstrip,$(CMAKE_SYSTEM_PROCESSOR))#' \ + -e 's#@@TOOLCHAIN_HAS_FORTRAN@@#$(if $(BR2_TOOLCHAIN_HAS_FORTRAN),1,0)#' \ + -e 's#@@CMAKE_BUILD_TYPE@@#$(if $(BR2_ENABLE_DEBUG),Debug,Release)#' \ $(TOPDIR)/support/misc/toolchainfile.cmake.in \ > $@ diff --git a/package/pkg-download.mk b/package/pkg-download.mk index a0f694d0fd..cfc550e77b 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -76,11 +76,13 @@ export BR_NO_CHECK_HASH_FOR = define DOWNLOAD_GIT $(EXTRA_ENV) $(DL_WRAPPER) -b git \ -o $(DL_DIR)/$($(PKG)_SOURCE) \ + $(if $($(PKG)_GIT_SUBMODULES),-r) \ $(QUIET) \ -- \ $($(PKG)_SITE) \ $($(PKG)_DL_VERSION) \ - $($(PKG)_BASE_NAME) + $($(PKG)_RAW_BASE_NAME) \ + $($(PKG)_DL_OPTS) endef # TODO: improve to check that the given PKG_DL_VERSION exists on the remote @@ -96,7 +98,8 @@ define DOWNLOAD_BZR -- \ $($(PKG)_SITE) \ $($(PKG)_DL_VERSION) \ - $($(PKG)_BASE_NAME) + $($(PKG)_RAW_BASE_NAME) \ + $($(PKG)_DL_OPTS) endef define SOURCE_CHECK_BZR @@ -111,7 +114,8 @@ define DOWNLOAD_CVS $(call stripurischeme,$(call qstrip,$($(PKG)_SITE))) \ $($(PKG)_DL_VERSION) \ $($(PKG)_RAWNAME) \ - $($(PKG)_BASE_NAME) + $($(PKG)_RAW_BASE_NAME) \ + $($(PKG)_DL_OPTS) endef # Not all CVS servers support ls/rls, use login to see if we can connect @@ -126,7 +130,8 @@ define DOWNLOAD_SVN -- \ $($(PKG)_SITE) \ $($(PKG)_DL_VERSION) \ - $($(PKG)_BASE_NAME) + $($(PKG)_RAW_BASE_NAME) \ + $($(PKG)_DL_OPTS) endef define SOURCE_CHECK_SVN @@ -142,7 +147,8 @@ define DOWNLOAD_SCP -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ $(QUIET) \ -- \ - '$(call stripurischeme,$(call qstrip,$(1)))' + '$(call stripurischeme,$(call qstrip,$(1)))' \ + $($(PKG)_DL_OPTS) endef define SOURCE_CHECK_SCP @@ -156,7 +162,8 @@ define DOWNLOAD_HG -- \ $($(PKG)_SITE) \ $($(PKG)_DL_VERSION) \ - $($(PKG)_BASE_NAME) + $($(PKG)_RAW_BASE_NAME) \ + $($(PKG)_DL_OPTS) endef # TODO: improve to check that the given PKG_DL_VERSION exists on the remote @@ -171,7 +178,8 @@ define DOWNLOAD_WGET -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ $(QUIET) \ -- \ - '$(call qstrip,$(1))' + '$(call qstrip,$(1))' \ + $($(PKG)_DL_OPTS) endef define SOURCE_CHECK_WGET @@ -184,7 +192,8 @@ define DOWNLOAD_LOCALFILES -H $(PKGDIR)/$($(PKG)_RAWNAME).hash \ $(QUIET) \ -- \ - $(call stripurischeme,$(call qstrip,$(1))) + $(call stripurischeme,$(call qstrip,$(1))) \ + $($(PKG)_DL_OPTS) endef define SOURCE_CHECK_LOCALFILES @@ -201,6 +210,10 @@ endef # # E.G. use like this: # $(call DOWNLOAD,$(FOO_SITE)) +# +# For PRIMARY and BACKUP site, any ? in the URL is replaced by %3F. A ? in +# the URL is used to separate query arguments, but the PRIMARY and BACKUP +# sites serve just plain files. ################################################################################ define DOWNLOAD @@ -217,7 +230,7 @@ define DOWNLOAD_INNER case "$(call geturischeme,$(BR2_PRIMARY_SITE))" in \ file) $(call $(3)_LOCALFILES,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ scp) $(call $(3)_SCP,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ - *) $(call $(3)_WGET,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ + *) $(call $(3)_WGET,$(BR2_PRIMARY_SITE)/$(subst ?,%3F,$(2)),$(2)) && exit ;; \ esac ; \ fi ; \ if test "$(BR2_PRIMARY_SITE_ONLY)" = "y" ; then \ @@ -236,7 +249,7 @@ define DOWNLOAD_INNER esac ; \ fi ; \ if test -n "$(call qstrip,$(BR2_BACKUP_SITE))" ; then \ - $(call $(3)_WGET,$(BR2_BACKUP_SITE)/$(2),$(2)) && exit ; \ + $(call $(3)_WGET,$(BR2_BACKUP_SITE)/$(subst ?,%3F,$(2)),$(2)) && exit ; \ fi ; \ exit 1 endef diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 3904c09043..3ca71b03b9 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -95,6 +95,21 @@ define check_host_rpath endef GLOBAL_INSTRUMENTATION_HOOKS += check_host_rpath +define step_check_build_dir_one + if [ -d $(2) ]; then \ + printf "%s: installs files in %s\n" $(1) $(2) >&2; \ + exit 1; \ + fi +endef + +define step_check_build_dir + $(if $(filter install-staging,$(2)),\ + $(if $(filter end,$(1)),$(call step_check_build_dir_one,$(3),$(STAGING_DIR)/$(O)))) + $(if $(filter install-target,$(2)),\ + $(if $(filter end,$(1)),$(call step_check_build_dir_one,$(3),$(TARGET_DIR)/$(O)))) +endef +GLOBAL_INSTRUMENTATION_HOOKS += step_check_build_dir + # User-supplied script ifneq ($(BR2_INSTRUMENTATION_SCRIPTS),) define step_user @@ -123,6 +138,12 @@ $(BUILD_DIR)/%/.stamp_downloaded: $(Q)mkdir -p $(@D) $(Q)touch $@ +# Retrieve actual source archive, e.g. for prebuilt external toolchains +$(BUILD_DIR)/%/.stamp_actual_downloaded: + $(call DOWNLOAD,$($(PKG)_ACTUAL_SOURCE_SITE)/$($(PKG)_ACTUAL_SOURCE_TARBALL)); \ + $(Q)mkdir -p $(@D) + $(Q)touch $@ + # Unpack the archive $(BUILD_DIR)/%/.stamp_extracted: @$(call step_start,extract) @@ -140,8 +161,8 @@ $(BUILD_DIR)/%/.stamp_extracted: # used. $(BUILD_DIR)/%/.stamp_rsynced: @$(call MESSAGE,"Syncing from source dir $(SRCDIR)") - @test -d $(SRCDIR) || (echo "ERROR: $(SRCDIR) does not exist" ; exit 1) $(foreach hook,$($(PKG)_PRE_RSYNC_HOOKS),$(call $(hook))$(sep)) + @test -d $(SRCDIR) || (echo "ERROR: $(SRCDIR) does not exist" ; exit 1) rsync -au --chmod=u=rwX,go=rX $(RSYNC_VCS_EXCLUSIONS) $(call qstrip,$(SRCDIR))/ $(@D) $(foreach hook,$($(PKG)_POST_RSYNC_HOOKS),$(call $(hook))$(sep)) $(Q)touch $@ @@ -311,6 +332,16 @@ be selected at a time. Please fix your configuration) endif endef +define pkg-graph-depends + @$$(INSTALL) -d $$(GRAPHS_DIR) + @cd "$$(CONFIG_DIR)"; \ + $$(TOPDIR)/support/scripts/graph-depends $$(BR2_GRAPH_DEPS_OPTS) \ + -p $(1) $(2) -o $$(GRAPHS_DIR)/$$(@).dot + dot $$(BR2_GRAPH_DOT_OPTS) -T$$(BR_GRAPH_OUT) \ + -o $$(GRAPHS_DIR)/$$(@).$$(BR_GRAPH_OUT) \ + $$(GRAPHS_DIR)/$$(@).dot +endef + ################################################################################ # inner-generic-package -- generates the make targets needed to build a # generic package @@ -380,8 +411,6 @@ ifndef $(2)_VERSION $(2)_DL_VERSION := $$($(3)_DL_VERSION) else ifdef $(3)_VERSION $(2)_DL_VERSION := $$($(3)_VERSION) - else - $(2)_DL_VERSION = undefined endif else $(2)_DL_VERSION := $$(strip $$($(2)_VERSION)) @@ -392,7 +421,8 @@ ifdef $(3)_OVERRIDE_SRCDIR $(2)_OVERRIDE_SRCDIR ?= $$($(3)_OVERRIDE_SRCDIR) endif -$(2)_BASE_NAME = $(1)-$$($(2)_VERSION) +$(2)_BASE_NAME = $$(if $$($(2)_VERSION),$(1)-$$($(2)_VERSION),$(1)) +$(2)_RAW_BASE_NAME = $$(if $$($(2)_VERSION),$$($(2)_RAWNAME)-$$($(2)_VERSION),$$($(2)_RAWNAME)) $(2)_DL_DIR = $$(DL_DIR)/$$($(2)_BASE_NAME) $(2)_DIR = $$(BUILD_DIR)/$$($(2)_BASE_NAME) @@ -422,11 +452,19 @@ endif ifndef $(2)_SOURCE ifdef $(3)_SOURCE $(2)_SOURCE = $$($(3)_SOURCE) - else - $(2)_SOURCE ?= $$($(2)_RAWNAME)-$$($(2)_VERSION).tar.gz + else ifdef $(2)_VERSION + $(2)_SOURCE ?= $$($(2)_RAW_BASE_NAME).tar.gz endif endif +# If FOO_ACTUAL_SOURCE_TARBALL is explicitly defined, it means FOO_SOURCE is +# indeed a binary (e.g. external toolchain) and FOO_ACTUAL_SOURCE_TARBALL/_SITE +# point to the actual sources tarball. Use the actual sources for legal-info. +# For most packages the FOO_SITE/FOO_SOURCE pair points to real source code, +# so these are the defaults for FOO_ACTUAL_*. +$(2)_ACTUAL_SOURCE_TARBALL ?= $$($(2)_SOURCE) +$(2)_ACTUAL_SOURCE_SITE ?= $$(call qstrip,$$($(2)_SITE)) + ifndef $(2)_PATCH ifdef $(3)_PATCH $(2)_PATCH = $$($(3)_PATCH) @@ -453,6 +491,14 @@ ifndef $(2)_SITE_METHOD endif endif +# Do not accept to download git submodule if not using the git method +ifneq ($$($(2)_GIT_SUBMODULES),) + ifneq ($$($(2)_SITE_METHOD),git) + $$(error $(2) declares having git sub-modules, but does not use the \ + 'git' method (uses '$$($(2)_SITE_METHOD)' instead)) + endif +endif + ifeq ($$($(2)_SITE_METHOD),local) ifeq ($$($(2)_OVERRIDE_SRCDIR),) $(2)_OVERRIDE_SRCDIR = $$($(2)_SITE) @@ -481,15 +527,13 @@ endif $(2)_REDISTRIBUTE ?= YES +$(2)_REDIST_SOURCES_DIR = $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4)))/$$($(2)_RAW_BASE_NAME) + # When a target package is a toolchain dependency set this variable to # 'NO' so the 'toolchain' dependency is not added to prevent a circular # dependency $(2)_ADD_TOOLCHAIN_DEPENDENCY ?= YES -ifeq ($(4),host) -$(2)_DEPENDENCIES ?= $$(filter-out host-skeleton host-toolchain $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif ifeq ($(4),target) ifneq ($(1),skeleton) $(2)_DEPENDENCIES += skeleton @@ -519,6 +563,7 @@ $(2)_TARGET_RSYNC = $$($(2)_DIR)/.stamp_rsynced $(2)_TARGET_PATCH = $$($(2)_DIR)/.stamp_patched $(2)_TARGET_EXTRACT = $$($(2)_DIR)/.stamp_extracted $(2)_TARGET_SOURCE = $$($(2)_DIR)/.stamp_downloaded +$(2)_TARGET_ACTUAL_SOURCE = $$($(2)_DIR)/.stamp_actual_downloaded $(2)_TARGET_DIRCLEAN = $$($(2)_DIR)/.stamp_dircleaned # default extract command @@ -552,6 +597,7 @@ $(2)_PRE_INSTALL_IMAGES_HOOKS ?= $(2)_POST_INSTALL_IMAGES_HOOKS ?= $(2)_PRE_LEGAL_INFO_HOOKS ?= $(2)_POST_LEGAL_INFO_HOOKS ?= +$(2)_TARGET_FINALIZE_HOOKS ?= # human-friendly targets and target sequencing $(1): $(1)-install @@ -626,6 +672,17 @@ $(1)-depends: $$($(2)_FINAL_DEPENDENCIES) $(1)-source: $$($(2)_TARGET_SOURCE) +$(1)-all-source: $(1)-legal-source +$(1)-legal-info: $(1)-legal-source +$(1)-legal-source: $(1)-source + +# Only download the actual source if it differs from the 'main' archive +ifneq ($$($(2)_ACTUAL_SOURCE_TARBALL),) +ifneq ($$($(2)_ACTUAL_SOURCE_TARBALL),$$($(2)_SOURCE)) +$(1)-legal-source: $$($(2)_TARGET_ACTUAL_SOURCE) +endif # actual sources != sources +endif # actual sources != "" + $(1)-source-check: $$(foreach p,$$($(2)_ALL_DOWNLOADS),$$(call SOURCE_CHECK,$$(p))$$(sep)) @@ -651,6 +708,7 @@ $(1)-extract: $(1)-rsync $(1)-rsync: $$($(2)_TARGET_RSYNC) $(1)-source: +$(1)-legal-source: $(1)-source-check: test -d $$($(2)_OVERRIDE_SRCDIR) @@ -665,14 +723,14 @@ $(1)-show-version: $(1)-show-depends: @echo $$($(2)_FINAL_ALL_DEPENDENCIES) +$(1)-show-rdepends: + @echo $$($(2)_RDEPENDENCIES) + $(1)-graph-depends: graph-depends-requirements - @$$(INSTALL) -d $$(GRAPHS_DIR) - @cd "$$(CONFIG_DIR)"; \ - $$(TOPDIR)/support/scripts/graph-depends $$(BR2_GRAPH_DEPS_OPTS) \ - -p $(1) -o $$(GRAPHS_DIR)/$$(@).dot - dot $$(BR2_GRAPH_DOT_OPTS) -T$$(BR_GRAPH_OUT) \ - -o $$(GRAPHS_DIR)/$$(@).$$(BR_GRAPH_OUT) \ - $$(GRAPHS_DIR)/$$(@).dot + $(call pkg-graph-depends,$(1),--direct) + +$(1)-graph-rdepends: graph-depends-requirements + $(call pkg-graph-depends,$(1),--reverse) $(1)-all-source: $(1)-source $(1)-all-source: $$(foreach p,$$($(2)_FINAL_ALL_DEPENDENCIES),$$(p)-all-source) @@ -725,6 +783,8 @@ $$($(2)_TARGET_PATCH): PKGDIR=$(pkgdir) $$($(2)_TARGET_EXTRACT): PKG=$(2) $$($(2)_TARGET_SOURCE): PKG=$(2) $$($(2)_TARGET_SOURCE): PKGDIR=$(pkgdir) +$$($(2)_TARGET_ACTUAL_SOURCE): PKG=$(2) +$$($(2)_TARGET_ACTUAL_SOURCE): PKGDIR=$(pkgdir) $$($(2)_TARGET_DIRCLEAN): PKG=$(2) # Compute the name of the Kconfig option that correspond to the @@ -732,9 +792,9 @@ $$($(2)_TARGET_DIRCLEAN): PKG=$(2) # kernel case, the bootloaders case, and the normal packages case. ifeq ($(1),linux) $(2)_KCONFIG_VAR = BR2_LINUX_KERNEL -else ifneq ($$(filter boot/% $(BR2_EXTERNAL)/boot/%,$(pkgdir)),) +else ifneq ($$(filter boot/% $$(foreach dir,$$(BR2_EXTERNAL_DIRS),$$(dir)/boot/%),$(pkgdir)),) $(2)_KCONFIG_VAR = BR2_TARGET_$(2) -else ifneq ($$(filter toolchain/% $(BR2_EXTERNAL)/toolchain/%,$(pkgdir)),) +else ifneq ($$(filter toolchain/% $$(foreach dir,$$(BR2_EXTERNAL_DIRS),$$(dir)/toolchain/%),$(pkgdir)),) $(2)_KCONFIG_VAR = BR2_$(2) else $(2)_KCONFIG_VAR = BR2_PACKAGE_$(2) @@ -744,14 +804,11 @@ endif ifneq ($$($(2)_LICENSE_FILES),) $(2)_MANIFEST_LICENSE_FILES = $$($(2)_LICENSE_FILES) endif -$(2)_MANIFEST_LICENSE_FILES ?= not saved -# If the package declares _LICENSE_FILES, we need to extract it, -# for overriden, local or normal remote packages alike, whether -# we want to redistribute it or not. -ifneq ($$($(2)_LICENSE_FILES),) +# We need to extract and patch a package to be able to retrieve its +# license files (if any) and the list of patches applied to it (if +# any). $(1)-legal-info: $(1)-patch -endif # We only save the sources of packages we want to redistribute, that are # non-overriden (local or true override). @@ -762,14 +819,6 @@ $(1)-legal-info: $(1)-source $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) endif endif -# If FOO_ACTUAL_SOURCE_TARBALL is explicitly defined, it means FOO_SOURCE is -# indeed a binary (e.g. external toolchain) and FOO_ACTUAL_SOURCE_TARBALL/_SITE -# point to the actual sources tarball. Use the actual sources for legal-info. -# For most packages the FOO_SITE/FOO_SOURCE pair points to real source code, -# so these are the defaults for FOO_ACTUAL_*. -$(2)_ACTUAL_SOURCE_TARBALL ?= $$($(2)_SOURCE) -$(2)_ACTUAL_SOURCE_SITE ?= $$(call qstrip,$$($(2)_SITE)) - # legal-info: produce legally relevant info. $(1)-legal-info: # Packages without a source are assumed to be part of Buildroot, skip them. @@ -783,10 +832,9 @@ ifneq ($$(call qstrip,$$($(2)_SOURCE)),) # is that the license still applies to the files distributed as part # of the rootfs, even if the sources are not themselves redistributed. ifeq ($$(call qstrip,$$($(2)_LICENSE_FILES)),) - @$$(call legal-license-nofiles,$$($(2)_RAWNAME),$$(call UPPERCASE,$(4))) - @$$(call legal-warning-pkg,$$($(2)_RAWNAME),cannot save license ($(2)_LICENSE_FILES not defined)) + @$$(call legal-warning-pkg,$$($(2)_RAW_BASE_NAME),cannot save license ($(2)_LICENSE_FILES not defined)) else - @$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$($(2)_RAWNAME),$$(F),$$($(2)_DIR)/$$(F),$$(call UPPERCASE,$(4)))$$(sep)) + @$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$($(2)_RAW_BASE_NAME),$$(F),$$($(2)_DIR)/$$(F),$$(call UPPERCASE,$(4)))$$(sep)) endif # license files ifeq ($$($(2)_SITE_METHOD),local) @@ -800,12 +848,19 @@ else # Other packages ifeq ($$($(2)_REDISTRIBUTE),YES) -ifneq ($$($(2)_ACTUAL_SOURCE_TARBALL),$$($(2)_SOURCE)) - $$(call DOWNLOAD,$$($(2)_ACTUAL_SOURCE_SITE)/$$($(2)_ACTUAL_SOURCE_TARBALL)) -endif -# Copy the source tarball (just hardlink if possible) - @cp -l $$(DL_DIR)/$$($(2)_ACTUAL_SOURCE_TARBALL) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) 2>/dev/null || \ - cp $$(DL_DIR)/$$($(2)_ACTUAL_SOURCE_TARBALL) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) +# Save the source tarball and any extra downloads, but not +# patches, as they are handled specially afterwards. + $$(foreach e,$$($(2)_ACTUAL_SOURCE_TARBALL) $$(notdir $$($(2)_EXTRA_DOWNLOADS)),\ + $$(Q)support/scripts/hardlink-or-copy \ + $$(DL_DIR)/$$(e) \ + $$($(2)_REDIST_SOURCES_DIR)$$(sep)) +# Save patches and generate the series file + $$(Q)while read f; do \ + support/scripts/hardlink-or-copy \ + $$$${f} \ + $$($(2)_REDIST_SOURCES_DIR) || exit 1; \ + printf "%s\n" "$$$${f##*/}" >>$$($(2)_REDIST_SOURCES_DIR)/series || exit 1; \ + done <$$($(2)_DIR)/.applied_patches_list endif # redistribute endif # other packages @@ -824,6 +879,10 @@ $$(foreach pkg,$$($(2)_PROVIDES),\ $$(eval $$(call virt-provides-single,$$(pkg),$$(call UPPERCASE,$$(pkg)),$(1))$$(sep))) endif +# Register package as a reverse-dependencies of all its dependencies +$$(eval $$(foreach p,$$($(2)_FINAL_ALL_DEPENDENCIES),\ + $$(call UPPERCASE,$$(p))_RDEPENDENCIES += $(1)$$(sep))) + # Ensure unified variable name conventions between all packages Some # of the variables are used by more than one infrastructure; so, # rather than duplicating the checks in each infrastructure, we check @@ -851,6 +910,7 @@ endif ifneq ($$($(2)_USERS),) PACKAGES_USERS += $$($(2)_USERS)$$(sep) endif +TARGET_FINALIZE_HOOKS += $$($(2)_TARGET_FINALIZE_HOOKS) ifeq ($$($(2)_SITE_METHOD),svn) DL_TOOLS_DEPENDENCIES += svn @@ -896,6 +956,7 @@ endif $(1)-install-staging \ $(1)-install-target \ $(1)-legal-info \ + $(1)-legal-source \ $(1)-patch \ $(1)-rebuild \ $(1)-reconfigure \ @@ -906,10 +967,20 @@ endif $(1)-source \ $(1)-source-check +ifneq ($$($(2)_SOURCE),) +ifeq ($$($(2)_SITE),) +$$(error $(2)_SITE cannot be empty when $(2)_SOURCE is not) +endif +endif + ifeq ($$(patsubst %/,ERROR,$$($(2)_SITE)),ERROR) $$(error $(2)_SITE ($$($(2)_SITE)) cannot have a trailing slash) endif +ifneq ($$($(2)_HELP_CMDS),) +HELP_PACKAGES += $(2) +endif + endif # $(2)_KCONFIG_VAR endef # inner-generic-package diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk index b0f51789c3..215f01b430 100644 --- a/package/pkg-kconfig.mk +++ b/package/pkg-kconfig.mk @@ -36,6 +36,7 @@ $(2)_KCONFIG_EDITORS ?= menuconfig $(2)_KCONFIG_OPTS ?= $(2)_KCONFIG_FIXUP_CMDS ?= $(2)_KCONFIG_FRAGMENT_FILES ?= +$(2)_KCONFIG_DOTCONFIG ?= .config # The config file as well as the fragments could be in-tree, so before # depending on them the package should be extracted (and patched) first. @@ -91,10 +92,10 @@ endef # fragments are merged together to .config, after the package has been patched. # Since the file could be a defconfig file it needs to be expanded to a # full .config first. -$$($(2)_DIR)/.config: $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) +$$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG): $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) $$(Q)$$(if $$($(2)_KCONFIG_DEFCONFIG), \ $$($(2)_KCONFIG_MAKE) $$($(2)_KCONFIG_DEFCONFIG), \ - cp $$($(2)_KCONFIG_FILE) $$(@)) + $$(INSTALL) -m 0644 -D $$($(2)_KCONFIG_FILE) $$(@)) $$(Q)support/kconfig/merge_config.sh -m -O $$(@D) \ $$(@) $$($(2)_KCONFIG_FRAGMENT_FILES) $$($(2)_REGEN_DOT_CONFIG) @@ -102,7 +103,7 @@ $$($(2)_DIR)/.config: $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) # If _KCONFIG_FILE or _KCONFIG_FRAGMENT_FILES exists, this dependency is # already implied, but if we only have a _KCONFIG_DEFCONFIG we have to add # it explicitly. It doesn't hurt to always have it though. -$$($(2)_DIR)/.config: | $(1)-patch +$$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG): | $(1)-patch # In order to get a usable, consistent configuration, some fixup may be needed. # The exact rules are specified by the package .mk file. @@ -112,12 +113,18 @@ define $(2)_FIXUP_DOT_CONFIG $$(Q)touch $$($(2)_DIR)/.stamp_kconfig_fixup_done endef -$$($(2)_DIR)/.stamp_kconfig_fixup_done: $$($(2)_DIR)/.config +$$($(2)_DIR)/.stamp_kconfig_fixup_done: $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$($(2)_FIXUP_DOT_CONFIG) # Before running configure, the configuration file should be present and fixed $$($(2)_TARGET_CONFIGURE): $$($(2)_DIR)/.stamp_kconfig_fixup_done +# Force olddefconfig again on -reconfigure +$(1)-clean-for-reconfigure: $(1)-clean-kconfig-for-reconfigure + +$(1)-clean-kconfig-for-reconfigure: + rm -f $$($(2)_DIR)/.stamp_kconfig_fixup_done + # Only enable the foo-*config targets when the package is actually enabled. # Note: the variable $(2)_KCONFIG_VAR is not related to the kconfig # infrastructure, but defined by pkg-generic.mk. The generic infrastructure is @@ -202,8 +209,8 @@ $(1)-update-config: $(1)-check-configuration-done echo "Unable to perform $(1)-update-config when fragment files are set"; exit 1) @$$(if $$($(2)_KCONFIG_DEFCONFIG), \ echo "Unable to perform $(1)-update-config when using a defconfig rule"; exit 1) - cp -f $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) - touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) + cp -f $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$($(2)_KCONFIG_FILE) + touch --reference $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$($(2)_KCONFIG_FILE) # Note: make sure the timestamp of the stored configuration is not newer than # the .config to avoid a useless rebuild. Note that, contrary to @@ -215,7 +222,7 @@ $(1)-update-defconfig: $(1)-savedefconfig @$$(if $$($(2)_KCONFIG_DEFCONFIG), \ echo "Unable to perform $(1)-update-defconfig when using a defconfig rule"; exit 1) cp -f $$($(2)_DIR)/defconfig $$($(2)_KCONFIG_FILE) - touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) + touch --reference $$($(2)_DIR)/$$($(2)_KCONFIG_DOTCONFIG) $$($(2)_KCONFIG_FILE) endif # package enabled diff --git a/package/pkg-perl.mk b/package/pkg-perl.mk index a027810156..cc94cd9f8b 100644 --- a/package/pkg-perl.mk +++ b/package/pkg-perl.mk @@ -20,7 +20,7 @@ ################################################################################ PERL_ARCHNAME = $(ARCH)-linux -PERL_RUN = PERL5LIB= $(HOST_DIR)/usr/bin/perl +PERL_RUN = PERL5LIB= PERL_USE_UNSAFE_INC=1 $(HOST_DIR)/usr/bin/perl ################################################################################ # inner-perl-package -- defines how the configuration, compilation and @@ -49,6 +49,14 @@ else $(2)_DEPENDENCIES += host-perl endif +# From http://perldoc.perl.org/CPAN.html#Config-Variables - prefer_installer +# legal values are MB and EUMM: if a module comes +# with both a Makefile.PL and a Build.PL, use the +# former (EUMM) or the latter (MB); if the module +# comes with only one of the two, that one will be +# used no matter the setting +$(2)_PREFER_INSTALLER ?= MB + # # Configure step. Only define it if not already defined by the package # .mk file. And take care of the differences between host and target @@ -59,7 +67,7 @@ ifeq ($(4),target) # Configure package for target define $(2)_CONFIGURE_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$($(2)_CONF_ENV) \ PERL_MM_USE_DEFAULT=1 \ $$(PERL_RUN) Build.PL \ @@ -109,7 +117,7 @@ else # Configure package for host define $(2)_CONFIGURE_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$($(2)_CONF_ENV) \ PERL_MM_USE_DEFAULT=1 \ $$(PERL_RUN) Build.PL \ @@ -135,7 +143,7 @@ ifeq ($(4),target) # Build package for target define $(2)_BUILD_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$(PERL_RUN) Build $$($(2)_BUILD_OPTS) build; \ else \ $$(MAKE1) \ @@ -148,7 +156,7 @@ else # Build package for host define $(2)_BUILD_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$(PERL_RUN) Build $$($(2)_BUILD_OPTS) build; \ else \ $$(MAKE1) $$($(2)_BUILD_OPTS) pure_all; \ @@ -163,7 +171,7 @@ endif # ifndef $(2)_INSTALL_CMDS define $(2)_INSTALL_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$(PERL_RUN) Build $$($(2)_INSTALL_TARGET_OPTS) install; \ else \ $$(MAKE1) $$($(2)_INSTALL_TARGET_OPTS) pure_install; \ @@ -177,7 +185,7 @@ endif # ifndef $(2)_INSTALL_TARGET_CMDS define $(2)_INSTALL_TARGET_CMDS - cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] ; then \ + cd $$($$(PKG)_SRCDIR) && if [ -f Build.PL ] && [ $$($(2)_PREFER_INSTALLER) != "EUMM" ] ; then \ $$(PERL_RUN) Build $$($(2)_INSTALL_TARGET_OPTS) install; \ else \ $$(MAKE1) $$($(2)_INSTALL_TARGET_OPTS) pure_install; \ diff --git a/package/pkg-python.mk b/package/pkg-python.mk index b7a702d0f7..38bc45ffa3 100644 --- a/package/pkg-python.mk +++ b/package/pkg-python.mk @@ -138,21 +138,6 @@ else $$(error "Invalid $(2)_SETUP_TYPE. Valid options are 'distutils' or 'setuptools'") endif -# The below statement intends to calculate the dependencies of host -# packages by derivating them from the dependencies of the -# corresponding target package, after adding the 'host-' prefix in -# front of the dependencies. -# -# However it must be repeated from inner-generic-package, as we need -# to exclude the python, host-python and host-python-setuptools -# packages, which are added below in the list of dependencies -# depending on the package characteristics, and shouldn't be derived -# automatically from the dependencies of the corresponding target -# package. -ifeq ($(4),host) -$(2)_DEPENDENCIES ?= $$(filter-out host-python host-python3 host-python-setuptools host-skeleton host-toolchain $(1),$$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif - # Target packages need both the python interpreter on the target (for # runtime) and the python interpreter on the host (for # compilation). However, host packages only need the python @@ -253,7 +238,7 @@ ifndef $(2)_INSTALL_TARGET_CMDS define $(2)_INSTALL_TARGET_CMDS (cd $$($$(PKG)_BUILDDIR)/; \ $$($$(PKG)_BASE_ENV) $$($$(PKG)_ENV) \ - $$($(2)_PYTHON_INTERPRETER) setup.py install \ + $$($(2)_PYTHON_INTERPRETER) setup.py install --no-compile \ $$($$(PKG)_BASE_INSTALL_TARGET_OPTS) \ $$($$(PKG)_INSTALL_TARGET_OPTS)) endef diff --git a/package/pkg-rebar.mk b/package/pkg-rebar.mk index 44c6d6c8d2..7605a64ade 100644 --- a/package/pkg-rebar.mk +++ b/package/pkg-rebar.mk @@ -188,20 +188,6 @@ endif else # !target -ifeq ($$($(2)_USE_AUTOCONF),YES) -# This must be repeated from inner-autotools-package, otherwise we get -# an empty _DEPENDENCIES if _AUTORECONF is YES or _USE_BUNDLED_REBAR -# is NO. Also filter the result of _AUTORECONF and _GETTEXTIZE away -# from the non-host rule -$(2)_DEPENDENCIES ?= $$(filter-out host-automake host-autoconf host-libtool \ - host-gettext host-skeleton host-toolchain host-erlang-rebar $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -else -# Same deal, if _USE_BUNDLED_REBAR is NO. -$(2)_DEPENDENCIES ?= $$(filter-out host-skeleton host-toolchain host-erlang-rebar $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif - # Host packages need the erlang interpreter on the host $(2)_DEPENDENCIES += host-erlang diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index f88313ab53..c5d4080c72 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -5,43 +5,6 @@ # ################################################################################ -# 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])))) - -# 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))))) - # # Manipulation of .config files based on the Kconfig # infrastructure. Used by the BusyBox package, the Linux kernel @@ -82,28 +45,6 @@ INFLATE.tar = cat # suitable-extractor(filename): returns extractor based on suffix suitable-extractor = $(INFLATE$(suffix $(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)) - -# 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 - # check-deprecated-variable -- throw an error on deprecated variables # example: # $(eval $(call check-deprecated-variable,FOO_MAKE_OPT,FOO_MAKE_OPTS)) @@ -134,19 +75,7 @@ define legal-manifest # pkg, version, license, license-files, source, url, {HOST echo '"$(1)","$(2)","$(3)","$(4)","$(5)","$(6)"' >>$(LEGAL_MANIFEST_CSV_$(7)) endef -define legal-license-header # pkg, license-file, {HOST|TARGET} - printf "$(LEGAL_INFO_SEPARATOR)\n\t$(1):\ - $(2)\n$(LEGAL_INFO_SEPARATOR)\n\n\n" >>$(LEGAL_LICENSES_TXT_$(3)) -endef - -define legal-license-nofiles # pkg, {HOST|TARGET} - $(call legal-license-header,$(1),unknown license file(s),$(2)) -endef - define legal-license-file # pkg, filename, file-fullpath, {HOST|TARGET} - $(call legal-license-header,$(1),$(2) file,$(4)) && \ - cat $(3) >>$(LEGAL_LICENSES_TXT_$(4)) && \ - echo >>$(LEGAL_LICENSES_TXT_$(4)) && \ mkdir -p $(LICENSE_FILES_DIR_$(4))/$(1)/$(dir $(2)) && \ cp $(3) $(LICENSE_FILES_DIR_$(4))/$(1)/$(2) endef diff --git a/package/pkg-virtual.mk b/package/pkg-virtual.mk index 244c1d0420..2e83e077e0 100644 --- a/package/pkg-virtual.mk +++ b/package/pkg-virtual.mk @@ -43,21 +43,14 @@ endif $(2)_IS_VIRTUAL = YES -# A virtual package does not have any source associated -$(2)_SOURCE = - -# Fake a version string, so it looks nicer in the build log -$(2)_VERSION = virtual - -# This must be repeated from inner-generic-package, otherwise we get an empty -# _DEPENDENCIES -ifeq ($(4),host) -$(2)_DEPENDENCIES ?= $$(filter-out host-skeleton host-toolchain $(1),\ - $$(patsubst host-host-%,host-%,$$(addprefix host-,$$($(3)_DEPENDENCIES)))) -endif - # Add dependency against the provider +# For a host package, there is no corresponding BR2_PACKAGE_PROVIDES_HOST_FOO, +# so we need to compute it from the target variant. +ifeq ($(4),target) $(2)_DEPENDENCIES += $$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))) +else +$(2)_DEPENDENCIES += host-$$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(3))) +endif # Call the generic package infrastructure to generate the necessary # make targets diff --git a/package/pkg-waf.mk b/package/pkg-waf.mk new file mode 100644 index 0000000000..2cdd654b1b --- /dev/null +++ b/package/pkg-waf.mk @@ -0,0 +1,125 @@ +################################################################################ +# WAF package infrastructure +# +# This file implements an infrastructure that eases development of package +# .mk files for WAF packages. It should be used for all packages that use +# WAF as their build system. +# +# See the Buildroot documentation for details on the usage of this +# infrastructure +# +# In terms of implementation, this WAF infrastructure requires the .mk file +# to only specify metadata information about the package: name, version, +# download URL, etc. +# +# We still allow the package .mk file to override what the different steps +# are doing, if needed. For example, if _BUILD_CMDS is already defined, +# it is used as the list of commands to perform to build the package, +# instead of the default WAF behaviour. The package can also define some +# post operation hooks. +# +################################################################################ + +################################################################################ +# inner-waf-package -- defines how the configuration, compilation and +# installation of a waf package should be done, implements a few hooks +# to tune the build process for waf specifities and calls the generic +# package infrastructure to generate the necessary make targets +# +# 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-waf-package + +# We need host-python to run waf +$(2)_DEPENDENCIES += host-python + +$(2)_NEEDS_EXTERNAL_WAF ?= NO + +# If the package does not have its own waf, use our own. +ifeq ($$($(2)_NEEDS_EXTERNAL_WAF),YES) +$(2)_DEPENDENCIES += host-waf +$(2)_WAF = $(HOST_DIR)/usr/bin/waf +else +$(2)_WAF = ./waf +endif + +$(2)_BUILD_OPTS ?= +$(2)_INSTALL_STAGING_OPTS ?= +$(2)_INSTALL_TARGET_OPTS ?= +$(2)_WAF_OPTS ?= + +# +# Configure step. Only define it if not already defined by the package +# .mk file. +# +ifndef $(2)_CONFIGURE_CMDS +define $(2)_CONFIGURE_CMDS + cd $$(@D) && \ + $$(TARGET_CONFIGURE_OPTS) \ + $$($(2)_CONF_ENV) \ + $$(HOST_DIR)/usr/bin/python2 $$($(2)_WAF) configure \ + --prefix=/usr \ + --libdir=/usr/lib \ + $$($(2)_CONF_OPTS) \ + $$($(2)_WAF_OPTS) +endef +endif + +# +# Build step. Only define it if not already defined by the package .mk +# file. +# +ifndef $(2)_BUILD_CMDS +define $(2)_BUILD_CMDS + cd $$(@D) && \ + $$(TARGET_MAKE_ENV) $$(HOST_DIR)/usr/bin/python2 $$($(2)_WAF) \ + build -j $$(PARALLEL_JOBS) $$($(2)_BUILD_OPTS) \ + $$($(2)_WAF_OPTS) +endef +endif + +# +# Staging installation step. Only define it if not already defined by +# the package .mk file. +# +ifndef $(2)_INSTALL_STAGING_CMDS +define $(2)_INSTALL_STAGING_CMDS + cd $$(@D) && \ + $$(TARGET_MAKE_ENV) $$(HOST_DIR)/usr/bin/python2 $$($(2)_WAF) \ + install --destdir=$$(STAGING_DIR) \ + $$($(2)_INSTALL_STAGING_OPTS) \ + $$($(2)_WAF_OPTS) +endef +endif + +# +# Target installation step. Only define it if not already defined by +# the package .mk file. +# +ifndef $(2)_INSTALL_TARGET_CMDS +define $(2)_INSTALL_TARGET_CMDS + cd $$(@D) && \ + $$(TARGET_MAKE_ENV) $$(HOST_DIR)/usr/bin/python2 $$($(2)_WAF) \ + install --destdir=$$(TARGET_DIR) \ + $$($(2)_INSTALL_TARGET_OPTS) \ + $$($(2)_WAF_OPTS) +endef +endif + +# Call the generic package infrastructure to generate the necessary +# make targets +$(call inner-generic-package,$(1),$(2),$(3),$(4)) + +endef + +################################################################################ +# waf-package -- the target generator macro for WAF packages +################################################################################ + +waf-package = $(call inner-waf-package,$(pkgname),$(call UPPERCASE,$(pkgname)),$(call UPPERCASE,$(pkgname)),target) diff --git a/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch b/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch index bac9f6208b..bc2b5273cd 100644 --- a/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch +++ b/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch @@ -1,4 +1,4 @@ -From abc7a780f2a52a1aa3ee288e17140b817b545cc3 Mon Sep 17 00:00:00 2001 +From aa6bbc09e68426592faf722630fe92b6ede75bc8 Mon Sep 17 00:00:00 2001 From: Gustavo Zacarias Date: Mon, 2 Nov 2015 18:38:00 -0300 Subject: [PATCH] Fix all-variables sysroot prefix problem @@ -14,15 +14,19 @@ the directories may be requested barebones via pkg-config --variable=includedir libfool for example. Signed-off-by: Gustavo Zacarias + +Added pkgdatadir to the list of to-be-prefixed variables. + +Signed-off-by: Bernd Kuhls --- - main.c | 17 ++++++++++++----- - 1 file changed, 12 insertions(+), 5 deletions(-) + main.c | 19 ++++++++++++++----- + 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/main.c b/main.c -index 6947126..52d16c2 100644 +index 6947126..ce5e18f 100644 --- a/main.c +++ b/main.c -@@ -313,9 +313,12 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) +@@ -313,9 +313,13 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) memset(req->buf, 0, sizeof(req->buf)); if (*var == '/' && (flags & PKGF_MUNGE_SYSROOT_PREFIX) && @@ -33,12 +37,13 @@ index 6947126..52d16c2 100644 + (!strcmp(req->variable, "includedir") || \ + !strcmp(req->variable, "libdir") || \ + !strcmp(req->variable, "mapdir") || \ ++ !strcmp(req->variable, "pkgdatadir") || \ + !strcmp(req->variable, "sdkdir"))) + strlcat(req->buf, sysroot_dir, sizeof(req->buf)); strlcat(req->buf, var, sizeof(req->buf)); return; } -@@ -323,8 +326,12 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) +@@ -323,8 +327,13 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) strlcat(req->buf, " ", sizeof(req->buf)); if (*var == '/' && (flags & PKGF_MUNGE_SYSROOT_PREFIX) && @@ -48,6 +53,7 @@ index 6947126..52d16c2 100644 + (!strcmp(req->variable, "includedir") || \ + !strcmp(req->variable, "libdir") || \ + !strcmp(req->variable, "mapdir") || \ ++ !strcmp(req->variable, "pkgdatadir") || \ + !strcmp(req->variable, "sdkdir"))) + strlcat(req->buf, sysroot_dir, sizeof(req->buf)); diff --git a/package/poco/0002-fix-m68k-double-conv-detect.patch b/package/poco/0002-fix-m68k-double-conv-detect.patch new file mode 100644 index 0000000000..3ca03fc7be --- /dev/null +++ b/package/poco/0002-fix-m68k-double-conv-detect.patch @@ -0,0 +1,19 @@ +Fixes compile for m68k. + +From upstream double-conversion commit da111796231: +https://github.com/google/double-conversion/blob/master/double-conversion/utils.h + +Signed-off-by: Waldemar Brodkorb + +diff -Nur poco-poco-1.7.2-release.orig/Foundation/src/utils.h poco-poco-1.7.2-release/Foundation/src/utils.h +--- poco-poco-1.7.2-release.orig/Foundation/src/utils.h 2016-03-19 08:19:35.000000000 +0100 ++++ poco-poco-1.7.2-release/Foundation/src/utils.h 2016-08-11 02:55:02.827238119 +0200 +@@ -63,6 +63,8 @@ + defined(__AARCH64EL__) || \ + defined(nios2) || defined(__nios2) || defined(__nios2__) + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 ++#elif defined(__mc68000__) ++#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS + #elif defined(_M_IX86) || defined(__i386__) || defined(__i386) + #if defined(_WIN32) + // Windows uses a 64bit wide floating point stack. diff --git a/package/poco/poco.mk b/package/poco/poco.mk index 79452c02fb..90dfb34340 100644 --- a/package/poco/poco.mk +++ b/package/poco/poco.mk @@ -47,7 +47,7 @@ POCO_MAKE_TARGET = all_release endif define POCO_CONFIGURE_CMDS - (cd $(@D); ./configure \ + (cd $(@D); $(TARGET_MAKE_ENV) ./configure \ --config=Linux \ --prefix=/usr \ --omit="$(POCO_OMIT)" \ @@ -57,20 +57,21 @@ define POCO_CONFIGURE_CMDS --no-samples) endef +# Use $(MAKE1) to avoid failures on heavilly parallel machines (e.g. -j25) define POCO_BUILD_CMDS - $(MAKE) POCO_TARGET_OSARCH=$(ARCH) CROSS_COMPILE=$(TARGET_CROSS) \ + $(TARGET_MAKE_ENV) $(MAKE1) POCO_TARGET_OSARCH=$(ARCH) CROSS_COMPILE=$(TARGET_CROSS) \ MYSQL_LIBDIR=$(STAGING_DIR)/usr/lib/mysql \ MYSQL_INCDIR=$(STAGING_DIR)/usr/include/mysql \ DEFAULT_TARGET=$(POCO_MAKE_TARGET) -C $(@D) endef define POCO_INSTALL_STAGING_CMDS - $(MAKE) DESTDIR=$(STAGING_DIR) POCO_TARGET_OSARCH=$(ARCH) \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(STAGING_DIR) POCO_TARGET_OSARCH=$(ARCH) \ DEFAULT_TARGET=$(POCO_MAKE_TARGET) install -C $(@D) endef define POCO_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) POCO_TARGET_OSARCH=$(ARCH) \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) POCO_TARGET_OSARCH=$(ARCH) \ DEFAULT_TARGET=$(POCO_MAKE_TARGET) install -C $(@D) endef diff --git a/package/polarssl/polarssl.mk b/package/polarssl/polarssl.mk index 9199f28a07..7f4c5827a0 100644 --- a/package/polarssl/polarssl.mk +++ b/package/polarssl/polarssl.mk @@ -25,7 +25,7 @@ ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THU POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM else ifeq ($(BR2_microblaze),y) POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM -else ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +else ifeq ($(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS_CPU_MIPS64R6),y) POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM endif diff --git a/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch b/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch new file mode 100644 index 0000000000..bbd6895e7f --- /dev/null +++ b/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch @@ -0,0 +1,131 @@ +The addition of this patch makes the use of DESTDIR +mandatory as there are conditional checks which would fail if it's not +defined. + +This patch was updated from the patch provided by Niranjan Reddy to +accomodate version 2.5 + +Signed-off-by: Clayton Shotwell +Signed-off-by: Niranjan Reddy +Signed-off-by: Adam Duskett +Signed-off-by: Adam Duskett +--- + policycoreutils/Makefile | 2 +- + policycoreutils/newrole/Makefile | 4 ++-- + policycoreutils/restorecond/Makefile | 5 +++-- + policycoreutils/run_init/Makefile | 4 ++-- + policycoreutils/sepolicy/Makefile | 2 +- + policycoreutils/sestatus/Makefile | 2 +- + policycoreutils/setfiles/Makefile | 4 ++-- + 7 files changed, 12 insertions(+), 11 deletions(-) + +diff --git a/Makefile b/Makefile +index 962ac12..0634a2a 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,6 +1,6 @@ + SUBDIRS = sepolicy setfiles semanage load_policy newrole run_init sandbox secon audit2allow sestatus semodule_package semodule semodule_link semodule_expand semodule_deps sepolgen-ifgen setsebool scripts po man gui hll + +-INOTIFYH = $(shell ls /usr/include/sys/inotify.h 2>/dev/null) ++INOTIFYH = $(shell ls $(DESTDIR)/usr/include/sys/inotify.h 2>/dev/null) + + ifeq (${INOTIFYH}, /usr/include/sys/inotify.h) + SUBDIRS += restorecond +diff --git a/newrole/Makefile b/newrole/Makefile +index 646cd4d..f124a6a 100644 +--- a/newrole/Makefile ++++ b/newrole/Makefile +@@ -4,8 +4,8 @@ BINDIR ?= $(PREFIX)/bin + MANDIR ?= $(PREFIX)/share/man + ETCDIR ?= $(DESTDIR)/etc + LOCALEDIR = /usr/share/locale +-PAMH = $(shell ls /usr/include/security/pam_appl.h 2>/dev/null) +-AUDITH = $(shell ls /usr/include/libaudit.h 2>/dev/null) ++PAMH = $(shell ls $(DESTDIR)/usr/include/security/pam_appl.h 2>/dev/null) ++AUDITH = $(shell ls $(DESTDIR)/usr/include/libaudit.h 2>/dev/null) + # Enable capabilities to permit newrole to generate audit records. + # This will make newrole a setuid root program. + # The capabilities used are: CAP_AUDIT_WRITE. +diff --git a/restorecond/Makefile b/restorecond/Makefile +index f99e1e7..92a4a4d 100644 +--- a/restorecond/Makefile ++++ b/restorecond/Makefile +@@ -11,11 +11,12 @@ autostart_DATA = sealertauto.desktop + INITDIR ?= $(DESTDIR)/etc/rc.d/init.d + SELINUXDIR = $(DESTDIR)/etc/selinux + +-DBUSFLAGS = -DHAVE_DBUS -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/lib/dbus-1.0/include ++DBUSFLAGS = -DHAVE_DBUS -I$(DESTDIR)/usr/include/dbus-1.0 -I$(DESTDIR)/usr/lib64/dbus-1.0/include -I$(DESTDIR)/usr/lib/dbus-1.0/include + DBUSLIB = -ldbus-glib-1 -ldbus-1 + + CFLAGS ?= -g -Werror -Wall -W +-override CFLAGS += -I$(PREFIX)/include $(DBUSFLAGS) -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib/glib-2.0/include ++override CFLAGS += -I$(DESTDIR)/usr/include $(DBUSFLAGS) -I$(DESTDIR)/usr/include/glib-2.0 \ ++-I$(DESTDIR)/usr/lib64/glib-2.0/include -I$(DESTDIR)/usr/lib/glib-2.0/include + + LDLIBS += -lselinux $(DBUSLIB) -lglib-2.0 -L$(LIBDIR) + +diff --git a/run_init/Makefile b/run_init/Makefile +index 5815a08..c81179b 100644 +--- a/run_init/Makefile ++++ b/run_init/Makefile +@@ -5,8 +5,8 @@ SBINDIR ?= $(PREFIX)/sbin + MANDIR ?= $(PREFIX)/share/man + ETCDIR ?= $(DESTDIR)/etc + LOCALEDIR ?= /usr/share/locale +-PAMH = $(shell ls /usr/include/security/pam_appl.h 2>/dev/null) +-AUDITH = $(shell ls /usr/include/libaudit.h 2>/dev/null) ++PAMH = $(shell ls $(DESTDIR)/usr/include/security/pam_appl.h 2>/dev/null) ++AUDITH = $(shell ls $(DESTDIR)/usr/include/libaudit.h 2>/dev/null) + + CFLAGS ?= -Werror -Wall -W + override CFLAGS += -I$(PREFIX)/include -DUSE_NLS -DLOCALEDIR="\"$(LOCALEDIR)\"" -DPACKAGE="\"policycoreutils\"" +diff --git a/sepolicy/Makefile b/sepolicy/Makefile +index 39d46e8..6624373 100644 +--- a/sepolicy/Makefile ++++ b/sepolicy/Makefile +@@ -12,7 +12,7 @@ LOCALEDIR ?= /usr/share/locale + BASHCOMPLETIONDIR ?= $(DESTDIR)/usr/share/bash-completion/completions + SHAREDIR ?= $(PREFIX)/share/sandbox + CFLAGS ?= -Wall -Werror -Wextra -W +-override CFLAGS += -I$(PREFIX)/include -DPACKAGE="policycoreutils" -DSHARED -shared ++override CFLAGS = $(LDFLAGS) -I$(DESTDIR)/usr/include -DPACKAGE="policycoreutils" -Wall -Werror -Wextra -W -DSHARED -shared + + BASHCOMPLETIONS=sepolicy-bash-completion.sh + +diff --git a/sestatus/Makefile b/sestatus/Makefile +index c04ff00..e10c32c 100644 +--- a/sestatus/Makefile ++++ b/sestatus/Makefile +@@ -6,7 +6,7 @@ ETCDIR ?= $(DESTDIR)/etc + LIBDIR ?= $(PREFIX)/lib + + CFLAGS ?= -Werror -Wall -W +-override CFLAGS += -I$(PREFIX)/include -D_FILE_OFFSET_BITS=64 ++override CFLAGS += -I$(DESTDIR)/usr/include -D_FILE_OFFSET_BITS=64 + LDLIBS = -lselinux -L$(LIBDIR) + + all: sestatus +diff --git a/setfiles/Makefile b/setfiles/Makefile +index 98f4f7d..eb26ed0 100644 +--- a/setfiles/Makefile ++++ b/setfiles/Makefile +@@ -3,13 +3,13 @@ PREFIX ?= $(DESTDIR)/usr + SBINDIR ?= $(DESTDIR)/sbin + MANDIR = $(PREFIX)/share/man + LIBDIR ?= $(PREFIX)/lib +-AUDITH = $(shell ls /usr/include/libaudit.h 2>/dev/null) ++AUDITH = $(shell ls $(DESTDIR)/usr/include/libaudit.h 2>/dev/null) + + PROGRESS_STEP=$(shell grep "^\#define STAR_COUNT" restore.h | awk -S '{ print $$3 }') + ABORT_ON_ERRORS=$(shell grep "^\#define ABORT_ON_ERRORS" setfiles.c | awk -S '{ print $$3 }') + + CFLAGS ?= -g -Werror -Wall -W +-override CFLAGS += -I$(PREFIX)/include ++override CFLAGS += -I$(DESTDIR)/usr/include + LDLIBS = -lselinux -lsepol -L$(LIBDIR) + + ifeq ($(AUDITH), /usr/include/libaudit.h) +-- +2.7.4 + diff --git a/package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch b/package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch new file mode 100644 index 0000000000..56aae74ba0 --- /dev/null +++ b/package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch @@ -0,0 +1,211 @@ +From 7f99a727cdb8160d49bb0d0554fc88787980c971 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Thu, 14 Jul 2016 13:16:03 -0400 +Subject: [PATCH] Add PREFIX to host paths + +Updates the remaining hardcoded host paths used in the build to be +prefixed with a PREFIX path to allow cross compilation. + +Updated to work with version 2.5 + +Signed-off-by: Clayton Shotwell +Signed-off-by: Niranjan Reddy +Signed-off-by: Adam Duskett +Signed-off-by: Adam Duskett +--- + policycoreutils/Makefile | 4 +++- + policycoreutils/audit2allow/Makefile | 2 +- + policycoreutils/load_policy/Makefile | 2 +- + policycoreutils/mcstrans/src/Makefile | 17 +++++++++-------- + policycoreutils/newrole/Makefile | 8 ++++---- + policycoreutils/run_init/Makefile | 8 ++++---- + policycoreutils/sepolicy/Makefile | 2 +- + policycoreutils/setfiles/Makefile | 4 ++-- + 8 files changed, 25 insertions(+), 22 deletions(-) + +diff --git a/Makefile b/Makefile +index 0634a2a..bd99b1c 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,8 +1,10 @@ ++PREFIX ?= $(DESTDIR)/usr ++ + SUBDIRS = sepolicy setfiles semanage load_policy newrole run_init sandbox secon audit2allow sestatus semodule_package semodule semodule_link semodule_expand semodule_deps sepolgen-ifgen setsebool scripts po man gui hll + + INOTIFYH = $(shell ls $(DESTDIR)/usr/include/sys/inotify.h 2>/dev/null) + +-ifeq (${INOTIFYH}, /usr/include/sys/inotify.h) ++ifeq (${INOTIFYH}, $(PREFIX)/include/sys/inotify.h) + SUBDIRS += restorecond + endif + +diff --git a/audit2allow/Makefile b/audit2allow/Makefile +index 87d2502..d4108fe 100644 +--- a/audit2allow/Makefile ++++ b/audit2allow/Makefile +@@ -5,7 +5,7 @@ PREFIX ?= $(DESTDIR)/usr + BINDIR ?= $(PREFIX)/bin + LIBDIR ?= $(PREFIX)/lib + MANDIR ?= $(PREFIX)/share/man +-LOCALEDIR ?= /usr/share/locale ++LOCALEDIR ?= $(PREFIX)/share/locale + + all: audit2why + +diff --git a/load_policy/Makefile b/load_policy/Makefile +index 7c5bab0..5cd0bbb 100644 +--- a/load_policy/Makefile ++++ b/load_policy/Makefile +@@ -3,7 +3,7 @@ PREFIX ?= $(DESTDIR)/usr + SBINDIR ?= $(DESTDIR)/sbin + USRSBINDIR ?= $(PREFIX)/sbin + MANDIR ?= $(PREFIX)/share/man +-LOCALEDIR ?= /usr/share/locale ++LOCALEDIR ?= $(PREFIX)/share/locale + + CFLAGS ?= -Werror -Wall -W + override CFLAGS += $(LDFLAGS) -I$(PREFIX)/include -DUSE_NLS -DLOCALEDIR="\"$(LOCALEDIR)\"" -DPACKAGE="\"policycoreutils\"" +diff --git a/mcstrans/src/Makefile b/mcstrans/src/Makefile +index 907a1f1..6fda57e 100644 +--- a/mcstrans/src/Makefile ++++ b/mcstrans/src/Makefile +@@ -1,23 +1,24 @@ + ARCH = $(shell uname -i) ++# Installation directories. ++PREFIX ?= $(DESTDIR)/usr ++SBINDIR ?= $(DESTDIR)/sbin ++INITDIR ?= $(DESTDIR)/etc/rc.d/init.d ++SYSTEMDDIR ?= $(DESTDIR)/usr/lib/systemd ++ + ifeq "$(ARCH)" "x86_64" + # In case of 64 bit system, use these lines +- LIBDIR=/usr/lib64 ++ LIBDIR=$(PREFIX)/lib64 + else + ifeq "$(ARCH)" "i686" + # In case of 32 bit system, use these lines +- LIBDIR=/usr/lib ++ LIBDIR=$(PREFIX)/lib + else + ifeq "$(ARCH)" "i386" + # In case of 32 bit system, use these lines +- LIBDIR=/usr/lib ++ LIBDIR=$(PREFIX)/lib + endif + endif + endif +-# Installation directories. +-PREFIX ?= $(DESTDIR)/usr +-SBINDIR ?= $(DESTDIR)/sbin +-INITDIR ?= $(DESTDIR)/etc/rc.d/init.d +-SYSTEMDDIR ?= $(DESTDIR)/usr/lib/systemd + + PROG_SRC=mcstrans.c mcscolor.c mcstransd.c mls_level.c + PROG_OBJS= $(patsubst %.c,%.o,$(PROG_SRC)) +diff --git a/newrole/Makefile b/newrole/Makefile +index f124a6a..b687a09 100644 +--- a/newrole/Makefile ++++ b/newrole/Makefile +@@ -3,7 +3,7 @@ PREFIX ?= $(DESTDIR)/usr + BINDIR ?= $(PREFIX)/bin + MANDIR ?= $(PREFIX)/share/man + ETCDIR ?= $(DESTDIR)/etc +-LOCALEDIR = /usr/share/locale ++LOCALEDIR = $(PREFIX)/share/locale + PAMH = $(shell ls $(DESTDIR)/usr/include/security/pam_appl.h 2>/dev/null) + AUDITH = $(shell ls $(DESTDIR)/usr/include/libaudit.h 2>/dev/null) + # Enable capabilities to permit newrole to generate audit records. +@@ -24,7 +24,7 @@ CFLAGS ?= -Werror -Wall -W + EXTRA_OBJS = + override CFLAGS += -DVERSION=\"$(VERSION)\" $(LDFLAGS) -I$(PREFIX)/include -DUSE_NLS -DLOCALEDIR="\"$(LOCALEDIR)\"" -DPACKAGE="\"policycoreutils\"" + LDLIBS += -lselinux -L$(PREFIX)/lib +-ifeq ($(PAMH), /usr/include/security/pam_appl.h) ++ifeq ($(PAMH), $(PREFIX)/include/security/pam_appl.h) + override CFLAGS += -DUSE_PAM + EXTRA_OBJS += hashtab.o + LDLIBS += -lpam -lpam_misc +@@ -32,7 +32,7 @@ else + override CFLAGS += -D_XOPEN_SOURCE=500 + LDLIBS += -lcrypt + endif +-ifeq ($(AUDITH), /usr/include/libaudit.h) ++ifeq ($(AUDITH), $(PREFIX)/include/libaudit.h) + override CFLAGS += -DUSE_AUDIT + LDLIBS += -laudit + endif +@@ -66,7 +66,7 @@ install: all + test -d $(MANDIR)/man1 || install -m 755 -d $(MANDIR)/man1 + install -m $(MODE) newrole $(BINDIR) + install -m 644 newrole.1 $(MANDIR)/man1/ +-ifeq ($(PAMH), /usr/include/security/pam_appl.h) ++ifeq ($(PAMH), $(PREFIX)/include/security/pam_appl.h) + test -d $(ETCDIR)/pam.d || install -m 755 -d $(ETCDIR)/pam.d + ifeq ($(LSPP_PRIV),y) + install -m 644 newrole-lspp.pamd $(ETCDIR)/pam.d/newrole +diff --git a/run_init/Makefile b/run_init/Makefile +index c81179b..ce0df9f 100644 +--- a/run_init/Makefile ++++ b/run_init/Makefile +@@ -4,21 +4,21 @@ PREFIX ?= $(DESTDIR)/usr + SBINDIR ?= $(PREFIX)/sbin + MANDIR ?= $(PREFIX)/share/man + ETCDIR ?= $(DESTDIR)/etc +-LOCALEDIR ?= /usr/share/locale ++LOCALEDIR ?= $(PREFIX)/share/locale + PAMH = $(shell ls $(DESTDIR)/usr/include/security/pam_appl.h 2>/dev/null) + AUDITH = $(shell ls $(DESTDIR)/usr/include/libaudit.h 2>/dev/null) + + CFLAGS ?= -Werror -Wall -W + override CFLAGS += -I$(PREFIX)/include -DUSE_NLS -DLOCALEDIR="\"$(LOCALEDIR)\"" -DPACKAGE="\"policycoreutils\"" + LDLIBS += -lselinux -L$(PREFIX)/lib +-ifeq ($(PAMH), /usr/include/security/pam_appl.h) ++ifeq ($(PAMH), $(PREFIX)/include/security/pam_appl.h) + override CFLAGS += -DUSE_PAM + LDLIBS += -lpam -lpam_misc + else + override CFLAGS += -D_XOPEN_SOURCE=500 + LDLIBS += -lcrypt + endif +-ifeq ($(AUDITH), /usr/include/libaudit.h) ++ifeq ($(AUDITH), $(PREFIX)/include/libaudit.h) + override CFLAGS += -DUSE_AUDIT + LDLIBS += -laudit + endif +@@ -38,7 +38,7 @@ install: all + install -m 755 open_init_pty $(SBINDIR) + install -m 644 run_init.8 $(MANDIR)/man8/ + install -m 644 open_init_pty.8 $(MANDIR)/man8/ +-ifeq ($(PAMH), /usr/include/security/pam_appl.h) ++ifeq ($(PAMH), $(PREFIX)/include/security/pam_appl.h) + install -m 644 run_init.pamd $(ETCDIR)/pam.d/run_init + endif + +diff --git a/sepolicy/Makefile b/sepolicy/Makefile +index 6624373..a16f8de 100644 +--- a/sepolicy/Makefile ++++ b/sepolicy/Makefile +@@ -8,7 +8,7 @@ BINDIR ?= $(PREFIX)/bin + SBINDIR ?= $(PREFIX)/sbin + DATADIR ?= $(PREFIX)/share + MANDIR ?= $(PREFIX)/share/man +-LOCALEDIR ?= /usr/share/locale ++LOCALEDIR ?= $(PREFIX)/share/locale + BASHCOMPLETIONDIR ?= $(DESTDIR)/usr/share/bash-completion/completions + SHAREDIR ?= $(PREFIX)/share/sandbox + CFLAGS ?= -Wall -Werror -Wextra -W +diff --git a/setfiles/Makefile b/setfiles/Makefile +index eb26ed0..3c6b80d 100644 +--- a/setfiles/Makefile ++++ b/setfiles/Makefile +@@ -12,7 +12,7 @@ CFLAGS ?= -g -Werror -Wall -W + override CFLAGS += -I$(DESTDIR)/usr/include + LDLIBS = -lselinux -lsepol -L$(LIBDIR) + +-ifeq ($(AUDITH), /usr/include/libaudit.h) ++ifeq ($(AUDITH), $(PREFIX)/include/libaudit.h) + override CFLAGS += -DUSE_AUDIT + LDLIBS += -laudit + endif +-- +2.7.4 + diff --git a/package/policycoreutils/0003-Remove-hardcoded-arch-variable.patch b/package/policycoreutils/0003-Remove-hardcoded-arch-variable.patch new file mode 100644 index 0000000000..375fb577f7 --- /dev/null +++ b/package/policycoreutils/0003-Remove-hardcoded-arch-variable.patch @@ -0,0 +1,43 @@ +From 7424f2bea0cb412e96202f596ad8077131589f40 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Thu, 14 Jul 2016 13:18:24 -0400 +Subject: [PATCH] Remove hardcoded arch variable. + +Allow the ARCH value to be passed in as original configuration was +solely based on host architecture. + +This patch was updated to work with version 2.5 + +Signed-off-by: Clayton Shotwell +Signed-off-by: Niranjan Reddy +Signed-off-by: Adam Duskett +Signed-off-by: Adam Duskett +--- + policycoreutils/mcstrans/src/Makefile | 1 - + policycoreutils/mcstrans/utils/Makefile | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/mcstrans/src/Makefile b/mcstrans/src/Makefile +index 6fda57e..7b4489f 100644 +--- a/mcstrans/src/Makefile ++++ b/mcstrans/src/Makefile +@@ -1,4 +1,3 @@ +-ARCH = $(shell uname -i) + # Installation directories. + PREFIX ?= $(DESTDIR)/usr + SBINDIR ?= $(DESTDIR)/sbin +diff --git a/mcstrans/utils/Makefile b/mcstrans/utils/Makefile +index 1ffb027..912fe12 100644 +--- a/mcstrans/utils/Makefile ++++ b/mcstrans/utils/Makefile +@@ -2,7 +2,6 @@ + PREFIX ?= $(DESTDIR)/usr + BINDIR ?= $(PREFIX)/sbin + +-ARCH = $(shell uname -i) + ifeq "$(ARCH)" "x86_64" + # In case of 64 bit system, use these lines + LIBDIR=/usr/lib64 +-- +2.7.4 + diff --git a/package/policycoreutils/0004-Change-sepolicy-python-install-arguments-to-be-a-var.patch b/package/policycoreutils/0004-Change-sepolicy-python-install-arguments-to-be-a-var.patch new file mode 100644 index 0000000000..636b722b70 --- /dev/null +++ b/package/policycoreutils/0004-Change-sepolicy-python-install-arguments-to-be-a-var.patch @@ -0,0 +1,42 @@ +From 27fd1c85ca95b5d66ab0241a08242a75b60b375c Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Thu, 14 Jul 2016 13:22:57 -0400 +Subject: [PATCH] Change sepolicy python install arguments to be a variable + +To allow the python install arguments to be overwritten, change the +arguments to be a variable. This also cleans up the DESTDIR detection a +little bit. + +Updated to work with version 2.5 + +Signed-off-by: Clayton Shotwell +Signed-off-by: Adam Duskett +Signed-off-by: Adam Duskett +--- + policycoreutils/sepolicy/Makefile | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/sepolicy/Makefile b/sepolicy/Makefile +index a16f8de..2013301 100644 +--- a/sepolicy/Makefile ++++ b/sepolicy/Makefile +@@ -1,4 +1,7 @@ + PYTHON ?= python ++ifneq ($(DESTDIR),) ++PYTHON_INSTALL_ARGS ?= --root $(DESTDIR) ++endif + + # Installation directories. + PREFIX ?= $(DESTDIR)/usr +@@ -32,7 +35,7 @@ test: + @$(PYTHON) test_sepolicy.py -v + + install: +- $(PYTHON) setup.py install `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` ++ $(PYTHON) setup.py install $(PYTHON_INSTALL_ARGS) + [ -d $(BINDIR) ] || mkdir -p $(BINDIR) + install -m 755 sepolicy.py $(BINDIR)/sepolicy + (cd $(BINDIR); ln -sf sepolicy sepolgen) +-- +2.7.4 + diff --git a/package/policycoreutils/0005-Check-to-see-if-DBUS-is-enabled.patch b/package/policycoreutils/0005-Check-to-see-if-DBUS-is-enabled.patch new file mode 100644 index 0000000000..37ffac8de8 --- /dev/null +++ b/package/policycoreutils/0005-Check-to-see-if-DBUS-is-enabled.patch @@ -0,0 +1,56 @@ +From d1bc28c5b2efe60a0ee04d9c171928d0f3475654 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Thu, 14 Jul 2016 13:26:23 -0400 +Subject: [PATCH] Check to see if DBUS is enabled. + +Adds a condition to prevent linking against dbus when at build time +dbus has not been enabled. + +Updated for 2.5. + +Signed-off-by: Matthew Weber +Signed-off-by: Adam Duskett +Signed-off-by: Adam Duskett +--- + policycoreutils/restorecond/Makefile | 2 ++ + policycoreutils/restorecond/user.c | 2 +- + 2 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/restorecond/Makefile b/restorecond/Makefile +index 92a4a4d..95f38a6 100644 +--- a/restorecond/Makefile ++++ b/restorecond/Makefile +@@ -11,8 +11,10 @@ autostart_DATA = sealertauto.desktop + INITDIR ?= $(DESTDIR)/etc/rc.d/init.d + SELINUXDIR = $(DESTDIR)/etc/selinux + ++ifdef ENABLE_DBUS + DBUSFLAGS = -DHAVE_DBUS -I$(DESTDIR)/usr/include/dbus-1.0 -I$(DESTDIR)/usr/lib64/dbus-1.0/include -I$(DESTDIR)/usr/lib/dbus-1.0/include + DBUSLIB = -ldbus-glib-1 -ldbus-1 ++endif + + CFLAGS ?= -g -Werror -Wall -W + override CFLAGS += -I$(DESTDIR)/usr/include $(DBUSFLAGS) -I$(DESTDIR)/usr/include/glib-2.0 \ +diff --git a/restorecond/user.c b/restorecond/user.c +index 714aae7..a04cddb 100644 +--- a/restorecond/user.c ++++ b/restorecond/user.c +@@ -54,7 +54,6 @@ static const char *PATH="/org/selinux/Restorecond"; + static const char *INTERFACE="org.selinux.RestorecondIface"; + static const char *RULE="type='signal',interface='org.selinux.RestorecondIface'"; + +-static int local_lock_fd = -1; + + static DBusHandlerResult + signal_filter (DBusConnection *connection __attribute__ ((__unused__)), DBusMessage *message, void *user_data) +@@ -101,6 +100,7 @@ static int dbus_server(GMainLoop *loop) { + #include + #include + ++static int local_lock_fd = -1; + /* size of the event structure, not counting name */ + #define EVENT_SIZE (sizeof (struct inotify_event)) + /* reasonable guess as to size of 1024 events */ +-- +2.7.4 + diff --git a/package/policycoreutils/Config.in b/package/policycoreutils/Config.in new file mode 100644 index 0000000000..53238b4eac --- /dev/null +++ b/package/policycoreutils/Config.in @@ -0,0 +1,61 @@ +comment "policycoreutils needs a glibc toolchain w/ threads, dynamic library" + depends on !BR2_arc + depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_USES_GLIBC || \ + !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + +config BR2_PACKAGE_POLICYCOREUTILS + bool "policycoreutils" + select BR2_PACKAGE_LIBSEMANAGE + select BR2_PACKAGE_LIBCAP_NG + depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS # libsemanage + depends on BR2_TOOLCHAIN_HAS_THREADS # libsemanage + depends on !BR2_STATIC_LIBS #libsemanage + depends on !BR2_arc # libsemanage + depends on BR2_TOOLCHAIN_USES_GLIBC # libsemanage + help + Policycoreutils is a collection of policy utilities (originally + the "core" set of utilities needed to use SELinux, although it + has grown a bit over time), which have different dependencies. + sestatus, secon, run_init, and newrole only use libselinux. + load_policy and setfiles only use libselinux and libsepol. + semodule and semanage use libsemanage (and thus bring in + dependencies on libsepol and libselinux as well). setsebool + uses libselinux to make non-persistent boolean changes (via + the kernel interface) and uses libsemanage to make persistent + boolean changes. + + The base package will install the following utilities: + load_policy + newrole + restorecond + run_init + secon + semodule + semodule_deps + semodule_expand + semodule_link + semodule_package + sepolgen-ifgen + sestatus + setfiles + setsebool + + http://selinuxproject.org/page/Main_Page + +if BR2_PACKAGE_POLICYCOREUTILS + +config BR2_PACKAGE_POLICYCOREUTILS_RESTORECOND + bool "restorecond" + select BR2_PACKAGE_LIBGLIB2 + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + help + Enable restorecond to be built + +comment "restorecond needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + +endif diff --git a/package/policycoreutils/policycoreutils.hash b/package/policycoreutils/policycoreutils.hash new file mode 100644 index 0000000000..999a7788d2 --- /dev/null +++ b/package/policycoreutils/policycoreutils.hash @@ -0,0 +1,2 @@ +# https://github.com/SELinuxProject/selinux/wiki/Releases +sha256 68891b376f5048edc53c6ccb2fca44da3dc7f4563f4b6894e201d70c04a05a29 policycoreutils-2.6.tar.gz diff --git a/package/policycoreutils/policycoreutils.mk b/package/policycoreutils/policycoreutils.mk new file mode 100644 index 0000000000..6076bb9c07 --- /dev/null +++ b/package/policycoreutils/policycoreutils.mk @@ -0,0 +1,122 @@ +################################################################################ +# +# policycoreutils +# +################################################################################ + +POLICYCOREUTILS_VERSION = 2.6 +POLICYCOREUTILS_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 +POLICYCOREUTILS_LICENSE = GPLv2 +POLICYCOREUTILS_LICENSE_FILES = COPYING + +POLICYCOREUTILS_DEPENDENCIES = libsemanage libcap-ng + +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +POLICYCOREUTILS_DEPENDENCIES += linux-pam +POLICYCOREUTILS_MAKE_OPTS += NAMESPACE_PRIV=y +define POLICYCOREUTILS_INSTALL_TARGET_LINUX_PAM_CONFS + $(INSTALL) -D -m 0644 $(@D)/newrole/newrole-lspp.pamd $(TARGET_DIR)/etc/pam.d/newrole + $(INSTALL) -D -m 0644 $(@D)/run_init/run_init.pamd $(TARGET_DIR)/etc/pam.d/run_init +endef +endif + +ifeq ($(BR2_PACKAGE_AUDIT),y) +POLICYCOREUTILS_DEPENDENCIES += audit +POLICYCOREUTILS_MAKE_OPTS += AUDIT_LOG_PRIV=y +endif + +# Enable LSPP_PRIV if both audit and linux pam are enabled +ifeq ($(BR2_PACKAGE_LINUX_PAM)$(BR2_PACKAGE_AUDIT),yy) +POLICYCOREUTILS_MAKE_OPTS += LSPP_PRIV=y +endif + +# Undefining _FILE_OFFSET_BITS here because of a "bug" with glibc fts.h +# large file support. +# See https://bugzilla.redhat.com/show_bug.cgi?id=574992 for more information +POLICYCOREUTILS_MAKE_OPTS += \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -U_FILE_OFFSET_BITS" \ + CPPFLAGS="$(TARGET_CPPFLAGS) -U_FILE_OFFSET_BITS" \ + ARCH="$(BR2_ARCH)" + +POLICYCOREUTILS_MAKE_DIRS = \ + load_policy newrole run_init \ + secon semodule semodule_deps \ + semodule_expand semodule_link \ + semodule_package sepolgen-ifgen \ + sestatus setfiles setsebool + +ifeq ($(BR2_PACKAGE_POLICYCOREUTILS_RESTORECOND),y) +POLICYCOREUTILS_MAKE_DIRS += restorecond +POLICYCOREUTILS_DEPENDENCIES += libglib2 +endif +# We need to pass DESTDIR at build time because it's used by +# policycoreutils build system to find headers and libraries. +define POLICYCOREUTILS_BUILD_CMDS + $(foreach d,$(POLICYCOREUTILS_MAKE_DIRS), + $(MAKE) -C $(@D)/$(d) $(POLICYCOREUTILS_MAKE_OPTS) \ + DESTDIR=$(STAGING_DIR) all + ) +endef + +define POLICYCOREUTILS_INSTALL_TARGET_CMDS + $(foreach d,$(POLICYCOREUTILS_MAKE_DIRS), + $(MAKE) -C $(@D)/$(d) $(POLICYCOREUTILS_MAKE_OPTS) \ + DESTDIR=$(TARGET_DIR) install + ) +endef + +HOST_POLICYCOREUTILS_DEPENDENCIES = \ + host-libsemanage host-dbus-glib \ + host-sepolgen host-setools + +# Undefining _FILE_OFFSET_BITS here because of a "bug" with glibc fts.h +# large file support. +# See https://bugzilla.redhat.com/show_bug.cgi?id=574992 for more information +HOST_POLICYCOREUTILS_MAKE_OPTS = \ + $(HOST_CONFIGURE_OPTS) \ + CFLAGS="$(HOST_CFLAGS) -U_FILE_OFFSET_BITS" \ + CPPFLAGS="$(HOST_CPPFLAGS) -U_FILE_OFFSET_BITS" \ + PYTHON="$(HOST_DIR)/usr/bin/python" \ + PYTHON_INSTALL_ARGS="$(HOST_PKG_PYTHON_DISTUTILS_INSTALL_OPTS)" \ + ARCH="$(HOSTARCH)" + +ifeq ($(BR2_PACKAGE_PYTHON3),y) +HOST_POLICYCOREUTILS_DEPENDENCIES += host-python3 +HOST_POLICYCOREUTILS_MAKE_OPTS += \ + PYLIBVER="python$(PYTHON3_VERSION_MAJOR)" +else +HOST_POLICYCOREUTILS_DEPENDENCIES += host-python +HOST_POLICYCOREUTILS_MAKE_OPTS += \ + PYLIBVER="python$(PYTHON_VERSION_MAJOR)" +endif + +# Note: We are only building the programs required by the refpolicy build +HOST_POLICYCOREUTILS_MAKE_DIRS = \ + load_policy semodule semodule_deps \ + semodule_expand semodule_link \ + semodule_package setfiles restorecond \ + audit2allow scripts semanage sepolicy + +# We need to pass DESTDIR at build time because it's used by +# policycoreutils build system to find headers and libraries. +define HOST_POLICYCOREUTILS_BUILD_CMDS + $(foreach d,$(HOST_POLICYCOREUTILS_MAKE_DIRS), + $(MAKE) -C $(@D)/$(d) $(HOST_POLICYCOREUTILS_MAKE_OPTS) \ + DESTDIR=$(HOST_DIR) all + ) +endef + +define HOST_POLICYCOREUTILS_INSTALL_CMDS + $(foreach d,$(HOST_POLICYCOREUTILS_MAKE_DIRS), + $(MAKE) -C $(@D)/$(d) $(HOST_POLICYCOREUTILS_MAKE_OPTS) \ + DESTDIR=$(HOST_DIR) install + ) + # Fix python paths + $(SED) 's%/usr/bin/%$(HOST_DIR)/usr/bin/%g' $(HOST_DIR)/usr/bin/audit2allow + $(SED) 's%/usr/bin/%$(HOST_DIR)/usr/bin/%g' $(HOST_DIR)/usr/bin/sepolgen-ifgen + $(SED) 's%/usr/bin/%$(HOST_DIR)/usr/bin/%g' $(HOST_DIR)/usr/bin/sepolicy +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/poppler/0001-Fix-invalid-shell-comparaison-in-libtiff-test.patch b/package/poppler/0001-Fix-invalid-shell-comparaison-in-libtiff-test.patch deleted file mode 100644 index f40bee1dd4..0000000000 --- a/package/poppler/0001-Fix-invalid-shell-comparaison-in-libtiff-test.patch +++ /dev/null @@ -1,23 +0,0 @@ -Fix syntax issue in configure script - -The change is not done in configure.ac, because the package doesn't -autoreconf properly. - -Patch on configure.ac submitted upstream at -https://bugs.freedesktop.org/show_bug.cgi?id=90292. - -Signed-off-by: Thomas Petazzoni - -Index: b/configure -=================================================================== ---- a/configure -+++ b/configure -@@ -19738,7 +19738,7 @@ - CXXFLAGS="$CXXFLAGS $LIBTIFF_CFLAGS" - LIBS="$LIBS $LIBTIFF_LIBS" - if test x$enable_libtiff = xyes; then -- if test x"$LIBTIFF_LIBS" != ; then -+ if test x"$LIBTIFF_LIBS" != x; then - ac_fn_cxx_check_func "$LINENO" "TIFFOpen" "ac_cv_func_TIFFOpen" - if test "x$ac_cv_func_TIFFOpen" = xyes; then : - diff --git a/package/poppler/Config.in b/package/poppler/Config.in index 2ca3ff62b5..d741f65287 100644 --- a/package/poppler/Config.in +++ b/package/poppler/Config.in @@ -24,6 +24,15 @@ config BR2_PACKAGE_POPPLER_QT comment "poppler Qt support needs a toolchain not affected by Binutils bug 19405" depends on BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 +config BR2_PACKAGE_POPPLER_QT5 + bool "Qt5 support" + depends on BR2_PACKAGE_QT5 + select BR2_PACKAGE_QT5BASE_GUI + select BR2_PACKAGE_QT5BASE_WIDGETS + select BR2_PACKAGE_QT5BASE_XML + help + Build Qt support into the Poppler library + endif comment "poppler needs a toolchain w/ C++, threads" diff --git a/package/poppler/poppler.hash b/package/poppler/poppler.hash index c4c7f661b3..af597e0297 100644 --- a/package/poppler/poppler.hash +++ b/package/poppler/poppler.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 4963e31ba5e17530a87b16588e22928bc044e8d28d02303dded981bff6725b98 poppler-0.32.0.tar.xz +sha256 e997c9ad81a8372f2dd03a02b00692b8cc479c220340c8881edaca540f402c1f poppler-0.51.0.tar.xz diff --git a/package/poppler/poppler.mk b/package/poppler/poppler.mk index 1113e4bd28..fda8284507 100644 --- a/package/poppler/poppler.mk +++ b/package/poppler/poppler.mk @@ -4,7 +4,7 @@ # ################################################################################ -POPPLER_VERSION = 0.32.0 +POPPLER_VERSION = 0.51.0 POPPLER_SOURCE = poppler-$(POPPLER_VERSION).tar.xz POPPLER_SITE = http://poppler.freedesktop.org POPPLER_DEPENDENCIES = fontconfig host-pkgconf @@ -14,6 +14,13 @@ POPPLER_INSTALL_STAGING = YES POPPLER_CONF_OPTS = --with-font-configuration=fontconfig \ --enable-xpdf-headers +ifeq ($(BR2_PACKAGE_CAIRO),y) +POPPLER_CONF_OPTS += --enable-cairo-output +POPPLER_DEPENDENCIES += cairo +else +POPPLER_CONF_OPTS += --disable-cairo-output +endif + ifeq ($(BR2_PACKAGE_LCMS2),y) POPPLER_CONF_OPTS += --enable-cms=lcms2 POPPLER_DEPENDENCIES += lcms2 @@ -21,6 +28,13 @@ else POPPLER_CONF_OPTS += --enable-cms=none endif +ifeq ($(BR2_PACKAGE_CAIRO)$(BR2_PACKAGE_LIBGLIB2),yy) +POPPLER_CONF_OPTS += --enable-poppler-glib +POPPLER_DEPENDENCIES += libglib2 +else +POPPLER_CONF_OPTS += --disable-poppler-glib +endif + ifeq ($(BR2_PACKAGE_TIFF),y) POPPLER_CONF_OPTS += --enable-libtiff # Help poppler to find libtiff in static linking scenarios @@ -73,9 +87,20 @@ else POPPLER_CONF_OPTS += --disable-poppler-qt4 endif +ifeq ($(BR2_PACKAGE_POPPLER_QT5),y) +POPPLER_DEPENDENCIES += qt5base +POPPLER_CONF_OPTS += --enable-poppler-qt5 +# since Qt5.7.x c++11 is needed (LTS Qt5.6.x is the last one without this requirement) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +POPPLER_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" +endif +else +POPPLER_CONF_OPTS += --disable-poppler-qt5 +endif + ifeq ($(BR2_PACKAGE_OPENJPEG),y) POPPLER_DEPENDENCIES += openjpeg -POPPLER_CONF_OPTS += --enable-libopenjpeg=openjpeg1 +POPPLER_CONF_OPTS += --enable-libopenjpeg else POPPLER_CONF_OPTS += --enable-libopenjpeg=none endif diff --git a/package/portaudio/portaudio.hash b/package/portaudio/portaudio.hash index 2a1931634e..ca7baf7fbc 100644 --- a/package/portaudio/portaudio.hash +++ b/package/portaudio/portaudio.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8fe024a5f0681e112c6979808f684c3516061cc51d3acc0b726af98fc96c8d57 pa_stable_v19_20140130.tgz +sha256 f5a21d7dcd6ee84397446fa1fa1a0675bb2e8a4a6dceb4305a8404698d8d1513 pa_stable_v190600_20161030.tgz diff --git a/package/portaudio/portaudio.mk b/package/portaudio/portaudio.mk index d1ef07a260..0cf754c7d5 100644 --- a/package/portaudio/portaudio.mk +++ b/package/portaudio/portaudio.mk @@ -4,7 +4,7 @@ # ################################################################################ -PORTAUDIO_VERSION = v19_20140130 +PORTAUDIO_VERSION = v190600_20161030 PORTAUDIO_SITE = http://www.portaudio.com/archives PORTAUDIO_SOURCE = pa_stable_$(PORTAUDIO_VERSION).tgz PORTAUDIO_INSTALL_STAGING = YES diff --git a/package/postgresql/postgresql.hash b/package/postgresql/postgresql.hash index 4e4adcb333..900a55a7ad 100644 --- a/package/postgresql/postgresql.hash +++ b/package/postgresql/postgresql.hash @@ -1,2 +1,2 @@ -# From https://ftp.postgresql.org/pub/source/v9.5.2/postgresql-9.5.2.tar.bz2.sha256 -sha256 f8d132e464506b551ef498719f18cfe9d777709c7a1589dc360afc0b20e47c41 postgresql-9.5.2.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v9.6.1/postgresql-9.6.1.tar.bz2.sha256 +sha256 e5101e0a49141fc12a7018c6dad594694d3a3325f5ab71e93e0e51bd94e51fcd postgresql-9.6.1.tar.bz2 diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk index 584ab47bf5..786ef4876a 100644 --- a/package/postgresql/postgresql.mk +++ b/package/postgresql/postgresql.mk @@ -4,16 +4,17 @@ # ################################################################################ -POSTGRESQL_VERSION = 9.5.2 +POSTGRESQL_VERSION = 9.6.1 POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2 POSTGRESQL_SITE = http://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) POSTGRESQL_LICENSE = PostgreSQL POSTGRESQL_LICENSE_FILES = COPYRIGHT POSTGRESQL_INSTALL_STAGING = YES POSTGRESQL_CONFIG_SCRIPTS = pg_config -POSTGRESQL_CONF_ENV = ac_cv_type_struct_sockaddr_in6=yes \ - pgac_cv_snprintf_long_long_int_modifier="%lld" \ - pgac_cv_snprintf_size_t_support=yes +POSTGRESQL_CONF_ENV = \ + ac_cv_type_struct_sockaddr_in6=yes \ + pgac_cv_snprintf_long_long_int_modifier="ll" \ + pgac_cv_snprintf_size_t_support=yes POSTGRESQL_CONF_OPTS = --disable-rpath ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) @@ -57,6 +58,13 @@ POSTGRESQL_DEPENDENCIES += openssl POSTGRESQL_CONF_OPTS += --with-openssl endif +ifeq ($(BR2_PACKAGE_OPENLDAP),y) +POSTGRESQL_DEPENDENCIES += openldap +POSTGRESQL_CONF_OPTS += --with-ldap +else +POSTGRESQL_CONF_OPTS += --without-ldap +endif + define POSTGRESQL_USERS postgres -1 postgres -1 * /var/lib/pgsql /bin/sh - PostgreSQL Server endef diff --git a/package/powerpc-utils/Config.in b/package/powerpc-utils/Config.in index 4037c55c61..fb2fb7fac2 100644 --- a/package/powerpc-utils/Config.in +++ b/package/powerpc-utils/Config.in @@ -28,7 +28,7 @@ config BR2_PACKAGE_POWERPC_UTILS_RTAS lsslot, activate_firmware, rtas_ibm_get_vpd, serv_config, rtas_event_decode, sys_ident. -comment "RTAS support needs an (e)glibc toolchain" +comment "RTAS support needs a glibc toolchain" depends on !BR2_TOOLCHAIN_USES_GLIBC endif diff --git a/package/pppd/0001-Move-netinet-in.h-above-linux-header-includes.patch b/package/pppd/0001-Move-netinet-in.h-above-linux-header-includes.patch new file mode 100644 index 0000000000..2f6933f5e5 --- /dev/null +++ b/package/pppd/0001-Move-netinet-in.h-above-linux-header-includes.patch @@ -0,0 +1,22 @@ +diff --git a/pppd/plugins/rp-pppoe/pppoe.h b/pppd/plugins/rp-pppoe/pppoe.h +index 9ab2eee..b827620 100644 +--- a/pppd/plugins/rp-pppoe/pppoe.h ++++ b/pppd/plugins/rp-pppoe/pppoe.h +@@ -47,6 +47,8 @@ + #include + #endif + ++#include ++ + /* Ugly header files on some Linux boxes... */ + #if defined(HAVE_LINUX_IF_H) + #include +@@ -84,8 +86,6 @@ typedef unsigned long UINT32_t; + #include + #endif + +-#include +- + #ifdef HAVE_NETINET_IF_ETHER_H + #include + diff --git a/package/pppd/Config.in b/package/pppd/Config.in index b77d7b03da..b56b623459 100644 --- a/package/pppd/Config.in +++ b/package/pppd/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PPPD bool "pppd" depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree depends on BR2_USE_MMU help An implementation of the Point-to-point protocol. @@ -24,6 +25,6 @@ config BR2_PACKAGE_PPPD_RADIUS endif -comment "pppd needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "pppd needs a uClibc or glibc toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL depends on BR2_USE_MMU diff --git a/package/pppd/pppd.mk b/package/pppd/pppd.mk index 92897be9d9..55630a8a8d 100644 --- a/package/pppd/pppd.mk +++ b/package/pppd/pppd.mk @@ -18,7 +18,7 @@ PPPD_TARGET_BINS = chat pppd pppdump pppstats PPPD_RADIUS_CONF = \ dictionary dictionary.ascend dictionary.compat \ dictionary.merit dictionary.microsoft \ - issue port-id-map realms server radiusclient.conf + issue port-id-map realms servers radiusclient.conf ifeq ($(BR2_PACKAGE_PPPD_FILTER),y) PPPD_DEPENDENCIES += libpcap @@ -46,11 +46,11 @@ PPPD_POST_EXTRACT_HOOKS += PPPD_SET_RESOLV_CONF define PPPD_CONFIGURE_CMDS $(SED) 's/FILTER=y/#FILTER=y/' $(PPPD_DIR)/pppd/Makefile.linux $(SED) 's/ifneq ($$(wildcard \/usr\/include\/pcap-bpf.h),)/ifdef FILTER/' $(PPPD_DIR)/*/Makefile.linux - ( cd $(@D); ./configure --prefix=/usr ) + ( cd $(@D); $(TARGET_MAKE_ENV) ./configure --prefix=/usr ) endef define PPPD_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" COPTS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" COPTS="$(TARGET_CFLAGS)" \ -C $(@D) $(PPPD_MAKE_OPTS) endef @@ -104,7 +104,7 @@ define PPPD_INSTALL_TARGET_CMDS endef define PPPD_INSTALL_STAGING_CMDS - $(MAKE) INSTROOT=$(STAGING_DIR)/ -C $(@D) $(PPPD_MAKE_OPTS) install-devel + $(TARGET_MAKE_ENV) $(MAKE) INSTROOT=$(STAGING_DIR)/ -C $(@D) $(PPPD_MAKE_OPTS) install-devel endef $(eval $(generic-package)) diff --git a/package/pps-tools/pps-tools.hash b/package/pps-tools/pps-tools.hash new file mode 100644 index 0000000000..da7bce45bf --- /dev/null +++ b/package/pps-tools/pps-tools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 eee0a76118cf11d94f575ee43804a6991379f2c734b400ba01ac4811d0498e97 pps-tools-47333f24af878f67ce48022e8af16419713aa1ac.tar.gz diff --git a/package/pps-tools/pps-tools.mk b/package/pps-tools/pps-tools.mk index 48feea9f21..c3e147a455 100644 --- a/package/pps-tools/pps-tools.mk +++ b/package/pps-tools/pps-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -PPS_TOOLS_VERSION = 0deb9c7e135e9380a6d09e9d2e938a146bb698c8 +PPS_TOOLS_VERSION = 47333f24af878f67ce48022e8af16419713aa1ac PPS_TOOLS_SITE = $(call github,ago,pps-tools,$(PPS_TOOLS_VERSION)) PPS_TOOLS_INSTALL_STAGING = YES PPS_TOOLS_LICENSE = GPLv2+ diff --git a/package/pptp-linux/pptp-linux.mk b/package/pptp-linux/pptp-linux.mk index d7edf6cd06..1538457a12 100644 --- a/package/pptp-linux/pptp-linux.mk +++ b/package/pptp-linux/pptp-linux.mk @@ -12,7 +12,7 @@ PPTP_LINUX_LICENSE = GPLv2+ PPTP_LINUX_LICENSE_FILES = COPYING define PPTP_LINUX_BUILD_CMDS - $(MAKE) -C $(@D) OPTIMIZE= DEBUG= \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) OPTIMIZE= DEBUG= \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ diff --git a/package/privoxy/Config.in b/package/privoxy/Config.in index 8d8d01a73f..accb48dfc2 100644 --- a/package/privoxy/Config.in +++ b/package/privoxy/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PRIVOXY bool "privoxy" depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_PCRE select BR2_PACKAGE_ZLIB help @@ -10,3 +11,7 @@ config BR2_PACKAGE_PRIVOXY obnoxious Internet junk. http://www.privoxy.org/ + +comment "privoxy needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/privoxy/privoxy.hash b/package/privoxy/privoxy.hash index aea8f2d587..72226b14fc 100644 --- a/package/privoxy/privoxy.hash +++ b/package/privoxy/privoxy.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/ijbswa/files/Sources/3.0.24%20%28stable%29/ -md5 44a47d1a5000db8cccd61ace0e25e7f7 privoxy-3.0.24-stable-src.tar.gz -sha1 343c547a9e795ff029a78310963e0c04448975ee privoxy-3.0.24-stable-src.tar.gz +# From http://sourceforge.net/projects/ijbswa/files/Sources/3.0.26%20%28stable%29/ +md5 8a1c842112ccea68c19b7ceb4a0e999f privoxy-3.0.26-stable-src.tar.gz +sha1 b646624006225979f83453ba542e448667f45998 privoxy-3.0.26-stable-src.tar.gz diff --git a/package/privoxy/privoxy.mk b/package/privoxy/privoxy.mk index 4b5a1a6d30..267ddc2704 100644 --- a/package/privoxy/privoxy.mk +++ b/package/privoxy/privoxy.mk @@ -4,7 +4,7 @@ # ################################################################################ -PRIVOXY_VERSION = 3.0.24 +PRIVOXY_VERSION = 3.0.26 PRIVOXY_SITE = http://downloads.sourceforge.net/project/ijbswa/Sources/$(PRIVOXY_VERSION)%20%28stable%29 PRIVOXY_SOURCE = privoxy-$(PRIVOXY_VERSION)-stable-src.tar.gz # configure not shipped diff --git a/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch b/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch index c25da3b278..1329ac4bbd 100644 --- a/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch +++ b/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch @@ -35,7 +35,7 @@ diff -Nura procps-ng-3.3.10.orig/Makefile.am procps-ng-3.3.10/Makefile.am @@ -97,6 +97,7 @@ slabtop_LDADD = $(LDADD) @NCURSES_LIBS@ watch_SOURCES = watch.c lib/strutils.c lib/fileutils.c - watch_LDADD = $(LDADD) @WATCH_NCURSES_LIBS@ + watch_LDADD = @WATCH_NCURSES_LIBS@ $(CYGWINFLAGS) +watch_CFLAGS = @WATCH_NCURSES_CFLAGS@ top_top_SOURCES = \ top/top.h \ diff --git a/package/procps-ng/0003-ps-output.c-include-dlfcn.h-only-when-necessary.patch b/package/procps-ng/0003-ps-output.c-include-dlfcn.h-only-when-necessary.patch new file mode 100644 index 0000000000..dca28fab14 --- /dev/null +++ b/package/procps-ng/0003-ps-output.c-include-dlfcn.h-only-when-necessary.patch @@ -0,0 +1,32 @@ +From 4fc9a348026a945aec8eddffc7613de9cb10b10c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Aug 2016 11:08:26 +0200 +Subject: [PATCH] ps/output.c: include only when necessary + +dlopen() functionality is only used when SELinux support is enabled, so + only needs to be included when ENABLE_LIBSELINUX is +defined. This fixes the build in configurations where is not +available. + +Signed-off-by: Thomas Petazzoni +--- + ps/output.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/ps/output.c b/ps/output.c +index 42c04cf..f540832 100644 +--- a/ps/output.c ++++ b/ps/output.c +@@ -46,7 +46,9 @@ + */ + + #include ++#if ENABLE_LIBSELINUX + #include ++#endif + #include + #include + #include +-- +2.7.4 + diff --git a/package/procps-ng/Config.in b/package/procps-ng/Config.in index 43e8758a15..553bea1a11 100644 --- a/package/procps-ng/Config.in +++ b/package/procps-ng/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PROCPS_NG bool "procps-ng" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_NCURSES select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help diff --git a/package/procps-ng/procps-ng.hash b/package/procps-ng/procps-ng.hash index c98fb14e69..62d61727b1 100644 --- a/package/procps-ng/procps-ng.hash +++ b/package/procps-ng/procps-ng.hash @@ -1,3 +1,3 @@ # From http://sourceforge.net/projects/procps-ng/files/Production/ -md5 6cc5b94c1c5b8cbc89ad345a7b522f74 procps-ng-3.3.11.tar.xz -sha1 1bdca65547df9ed019bd83649b0f8b8eaa017e25 procps-ng-3.3.11.tar.xz +md5 957e42e8b193490b2111252e4a2b443c procps-ng-3.3.12.tar.xz +sha1 82c0745f150f1385ca01fe7d24f05f74e31c94c6 procps-ng-3.3.12.tar.xz diff --git a/package/procps-ng/procps-ng.mk b/package/procps-ng/procps-ng.mk index 51a70a5dc5..48b4720941 100644 --- a/package/procps-ng/procps-ng.mk +++ b/package/procps-ng/procps-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROCPS_NG_VERSION = 3.3.11 +PROCPS_NG_VERSION = 3.3.12 PROCPS_NG_SOURCE = procps-ng-$(PROCPS_NG_VERSION).tar.xz PROCPS_NG_SITE = http://downloads.sourceforge.net/project/procps-ng/Production PROCPS_NG_LICENSE = GPLv2+, libproc and libps LGPLv2+ @@ -47,4 +47,10 @@ PROCPS_NG_CONF_OPTS += \ --enable-watch8bit endif +# numa support requires libdl, so explicitly disable it when +# BR2_STATIC_LIBS=y +ifeq ($(BR2_STATIC_LIBS),y) +PROCPS_NG_CONF_OPTS += --disable-numa +endif + $(eval $(autotools-package)) diff --git a/package/proftpd/proftpd.hash b/package/proftpd/proftpd.hash index 0735340480..cc8add9966 100644 --- a/package/proftpd/proftpd.hash +++ b/package/proftpd/proftpd.hash @@ -1,4 +1,4 @@ -# From ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5b.tar.gz.md5 -md5 f7b8e3a383b34a894c2502db74ccccde proftpd-1.3.5b.tar.gz +# From ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5d.tar.gz.md5 +md5 bcd2846edf0dad4c4d49a7c8c176d83a proftpd-1.3.5d.tar.gz # Locally calculated -sha256 afc1789f2478acf88dfdc7d70da90a4fa2786d628218e9574273295d044b4fc8 proftpd-1.3.5b.tar.gz +sha256 f4e2997be7f22a5b31d7ac72497ed4f4471d24d32385978350410713e76129ac proftpd-1.3.5d.tar.gz diff --git a/package/proftpd/proftpd.mk b/package/proftpd/proftpd.mk index a70f41ef79..b5ffddc036 100644 --- a/package/proftpd/proftpd.mk +++ b/package/proftpd/proftpd.mk @@ -4,8 +4,7 @@ # ################################################################################ -PROFTPD_VERSION = 1.3.5b -PROFTPD_SOURCE = proftpd-$(PROFTPD_VERSION).tar.gz +PROFTPD_VERSION = 1.3.5d PROFTPD_SITE = ftp://ftp.proftpd.org/distrib/source PROFTPD_LICENSE = GPLv2+ PROFTPD_LICENSE_FILES = COPYING diff --git a/package/protobuf/0001-Fix-GOOGLE_PROTOBUF_ATOMICOPS_ERROR-syntax-error.patch b/package/protobuf/0001-Fix-GOOGLE_PROTOBUF_ATOMICOPS_ERROR-syntax-error.patch deleted file mode 100644 index c271ea45d7..0000000000 --- a/package/protobuf/0001-Fix-GOOGLE_PROTOBUF_ATOMICOPS_ERROR-syntax-error.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 50982f711de6ad58f6e0bef01a75d2b9cf35f5dc Mon Sep 17 00:00:00 2001 -From: George Redivo -Date: Mon, 6 Jul 2015 16:56:41 -0300 -Subject: [PATCH 1/2] Fix GOOGLE_PROTOBUF_ATOMICOPS_ERROR syntax error -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -It's not possible to define "#error" inside a define. -It causes 'error: stray ‘#’ in program' compilation error. - -Now the define GOOGLE_PROTOBUF_ATOMICOPS_ERROR is the error message -and it's used along the code together "#error". ---- - src/google/protobuf/stubs/atomicops.h | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/src/google/protobuf/stubs/atomicops.h b/src/google/protobuf/stubs/atomicops.h -index b1336e3..a130b38 100644 ---- a/src/google/protobuf/stubs/atomicops.h -+++ b/src/google/protobuf/stubs/atomicops.h -@@ -162,7 +162,7 @@ Atomic64 Release_Load(volatile const Atomic64* ptr); - - // Include our platform specific implementation. - #define GOOGLE_PROTOBUF_ATOMICOPS_ERROR \ --#error "Atomic operations are not supported on your platform" -+"Atomic operations are not supported on your platform" - - // ThreadSanitizer, http://clang.llvm.org/docs/ThreadSanitizer.html. - #if defined(THREAD_SANITIZER) -@@ -172,7 +172,7 @@ Atomic64 Release_Load(volatile const Atomic64* ptr); - #if defined(GOOGLE_PROTOBUF_ARCH_IA32) || defined(GOOGLE_PROTOBUF_ARCH_X64) - #include - #else --GOOGLE_PROTOBUF_ATOMICOPS_ERROR -+#error GOOGLE_PROTOBUF_ATOMICOPS_ERROR - #endif - - // Solaris -@@ -203,15 +203,15 @@ GOOGLE_PROTOBUF_ATOMICOPS_ERROR - #if __has_extension(c_atomic) - #include - #else --GOOGLE_PROTOBUF_ATOMICOPS_ERROR -+#error GOOGLE_PROTOBUF_ATOMICOPS_ERROR - #endif - #else --GOOGLE_PROTOBUF_ATOMICOPS_ERROR -+#error GOOGLE_PROTOBUF_ATOMICOPS_ERROR - #endif - - // Unknown. - #else --GOOGLE_PROTOBUF_ATOMICOPS_ERROR -+#error GOOGLE_PROTOBUF_ATOMICOPS_ERROR - #endif - - // On some platforms we need additional declarations to make AtomicWord --- -2.5.0 - diff --git a/package/protobuf/0002-configure.ac-check-if-libatomic-is-needed.patch b/package/protobuf/0001-configure.ac-check-if-libatomic-is-needed.patch similarity index 85% rename from package/protobuf/0002-configure.ac-check-if-libatomic-is-needed.patch rename to package/protobuf/0001-configure.ac-check-if-libatomic-is-needed.patch index a70a23e74e..fffdf49fac 100644 --- a/package/protobuf/0002-configure.ac-check-if-libatomic-is-needed.patch +++ b/package/protobuf/0001-configure.ac-check-if-libatomic-is-needed.patch @@ -20,8 +20,8 @@ diff --git a/configure.ac b/configure.ac index c07067c..88d4a0d 100644 --- a/configure.ac +++ b/configure.ac -@@ -139,6 +139,8 @@ AM_CONDITIONAL([USE_EXTERNAL_PROTOC], [test "$with_protoc" != "no"]) - ACX_PTHREAD +@@ -160,6 +160,8 @@ AM_CONDITIONAL([HAVE_PTHREAD], [test "x$acx_pthread_ok" = "xyes"]) + # We still keep this for improving pbconfig.h for unsupported platforms. AC_CXX_STL_HASH +AC_SEARCH_LIBS([__atomic_load_4], [atomic]) diff --git a/package/protobuf/Config.in b/package/protobuf/Config.in index 3215a075f1..bccf258f62 100644 --- a/package/protobuf/Config.in +++ b/package/protobuf/Config.in @@ -27,6 +27,7 @@ config BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS default y if BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_sparc64 # missing definition of Atomic64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_USE_MMU # fork() config BR2_PACKAGE_PROTOBUF bool "protobuf" diff --git a/package/protobuf/protobuf.hash b/package/protobuf/protobuf.hash index 78285b72d2..b681650a13 100644 --- a/package/protobuf/protobuf.hash +++ b/package/protobuf/protobuf.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 2667b7cda4a6bc8a09e5463adf3b5984e08d94e72338277affa8594d8b6e5cd1 protobuf-v2.6.1.tar.gz +sha256 f5b3563f118f1d3d6e001705fa7082e8fc3bda50038ac3dff787650795734146 protobuf-v3.0.0.tar.gz diff --git a/package/protobuf/protobuf.mk b/package/protobuf/protobuf.mk index 3eeadfc454..dabbfb7a4a 100644 --- a/package/protobuf/protobuf.mk +++ b/package/protobuf/protobuf.mk @@ -4,7 +4,10 @@ # ################################################################################ -PROTOBUF_VERSION = v2.6.1 +# When bumping this package, make sure to also verify if the +# python-protobuf package still works, as they share the same +# version/site variables. +PROTOBUF_VERSION = v3.0.0 PROTOBUF_SITE = $(call github,google,protobuf,$(PROTOBUF_VERSION)) PROTOBUF_LICENSE = BSD-3c PROTOBUF_LICENSE_FILES = LICENSE diff --git a/package/proxychains-ng/proxychains-ng.mk b/package/proxychains-ng/proxychains-ng.mk index ca2664ef8c..54e7dcd631 100644 --- a/package/proxychains-ng/proxychains-ng.mk +++ b/package/proxychains-ng/proxychains-ng.mk @@ -20,7 +20,7 @@ define PROXYCHAINS_NG_BUILD_CMDS endef define PROXYCHAINS_NG_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install install-config + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install install-config endef $(eval $(generic-package)) diff --git a/package/pru-software-support/Config.in b/package/pru-software-support/Config.in new file mode 100644 index 0000000000..4e34806ee7 --- /dev/null +++ b/package/pru-software-support/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PRU_SOFTWARE_SUPPORT + bool "pru-software-support" + depends on BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_PRU_SOFTWARE_SUPPORT + help + PRU firmware examples extracted from TI's PRU software + support package. See readme.txt for installation details. + + https://git.ti.com/pru-software-support-package/pru-software-support-package diff --git a/package/pru-software-support/Config.in.host b/package/pru-software-support/Config.in.host new file mode 100644 index 0000000000..d362ac5afb --- /dev/null +++ b/package/pru-software-support/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_PRU_SOFTWARE_SUPPORT + bool "host pru-software-support" + depends on BR2_PACKAGE_HOST_TI_CGT_PRU_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_TI_CGT_PRU + help + This package provides useful headers and libraries for the + PRU unit found on some TI processors e.g. AM3358. Note that + the included labs and examples aren't built, they can be + built using the corresponding target package. + + https://git.ti.com/pru-software-support-package/pru-software-support-package diff --git a/package/pru-software-support/pru-software-support.hash b/package/pru-software-support/pru-software-support.hash new file mode 100644 index 0000000000..8f624da764 --- /dev/null +++ b/package/pru-software-support/pru-software-support.hash @@ -0,0 +1,2 @@ +# Locally-calculated hash +sha256 b257535ca9b1641d1a238795f3c7004064c573a91cf4a1fa566e3f7c2360c38f pru-software-support-804b548e69ef9fdf44445f6d0968d81cb8a1e7b4.tar.gz diff --git a/package/pru-software-support/pru-software-support.mk b/package/pru-software-support/pru-software-support.mk new file mode 100644 index 0000000000..06983c275d --- /dev/null +++ b/package/pru-software-support/pru-software-support.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# pru-software-support +# +################################################################################ + +PRU_SOFTWARE_SUPPORT_VERSION = 804b548e69ef9fdf44445f6d0968d81cb8a1e7b4 +PRU_SOFTWARE_SUPPORT_SITE = git://git.ti.com/pru-software-support-package/pru-software-support-package.git +PRU_SOFTWARE_SUPPORT_LICENSE = BSD-3c, GPLv2, Public Domain +PRU_SOFTWARE_SUPPORT_LICENSE_FILES = PRU-Package-v4.0-Manifest.html +PRU_SOFTWARE_SUPPORT_DEPENDENCIES = host-ti-cgt-pru host-pru-software-support +HOST_PRU_SOFTWARE_SUPPORT_DEPENDENCIES = host-ti-cgt-pru + +define HOST_PRU_SOFTWARE_SUPPORT_BUILD_CMDS + $(MAKE) PRU_CGT=$(TI_CGT_PRU_INSTALLDIR) -C $(@D)/lib/src +endef + +# install this library support alongside PRU toolchain i.e. +# everything in TI_CGT_PRU_INSTALLDIR as PRU_CGT +define HOST_PRU_SOFTWARE_SUPPORT_INSTALL_CMDS + mkdir -p $(TI_CGT_PRU_INSTALLDIR)/usr/include + cp -dpfr $(@D)/include/* $(TI_CGT_PRU_INSTALLDIR)/usr/include + mkdir -p $(TI_CGT_PRU_INSTALLDIR)/usr/lib + cp -dpfr $(@D)/lib/src/*/gen/*.lib $(TI_CGT_PRU_INSTALLDIR)/usr/lib/ +endef + +define PRU_SOFTWARE_SUPPORT_BUILD_CMDS + $(MAKE) PRU_CGT=$(TI_CGT_PRU_INSTALLDIR) -C $(@D)/examples +endef + +define PRU_SOFTWARE_SUPPORT_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/share/pru-software-support + cp -dpfr $(@D)/examples/* $(TARGET_DIR)/usr/share/pru-software-support/ +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/pru-software-support/readme.txt b/package/pru-software-support/readme.txt new file mode 100644 index 0000000000..85d7af828f --- /dev/null +++ b/package/pru-software-support/readme.txt @@ -0,0 +1,21 @@ +PRU Software Support +==================== + +Two different packages are provided from the TI PRU software support +code base. + +1. The include files and rpmsg static library for the PRU are + installed alongside the host package for the PRU code generation + tools package i.e. $(TI_CGT_PRU_INSTALLDIR). + +2. A target package for all the examples installed to + /usr/share/pru-software-support/. Users wanting to test a specific + example should copy or link it to a directory where the kernel + looks for firmware, e.g: + + # cp /usr/share/pru-software-support/am335x/PRU_gpioToggle/gen/PRU_gpioToggle.out \ + /lib/firmware/am335x-pru0-fw + +To get started with the PRU, have a look at the labs [1]. + +[1] http://processors.wiki.ti.com/index.php/PRU_Training:_Hands-on_Labs diff --git a/package/pseudo/0001-Fix-mixed-tab-space-indentation.patch b/package/pseudo/0001-Fix-mixed-tab-space-indentation.patch new file mode 100644 index 0000000000..6b62c1af94 --- /dev/null +++ b/package/pseudo/0001-Fix-mixed-tab-space-indentation.patch @@ -0,0 +1,105 @@ +From bf4e5310547603bf36e67dc4cba027963f16508e Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= +Date: Fri, 4 Nov 2016 11:53:48 -0400 +Subject: [PATCH 1/3] Fix mixed tab/space indentation +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +CC="cc -pipe -std=gnu99 -Wall -W -Wextra -fPIC -D_LARGEFILE64_SOURCE -D_ATFILE_SOURCE -DPSEUDO_PREFIX='"/usr/local"' -DPSEUDO_SUFFIX='""' -DPSEUDO_BINDIR='"bin"' -DPSEUDO_LIBDIR='"lib64"' -DPSEUDO_LOCALSTATEDIR='"var/pseudo"' -DPSEUDO_VERSION='"1.8.1"' -DUSE_MEMORY_DB -DPSEUDO_PASSWD_FALLBACK='""' -DPSEUDO_XATTR_SUPPORT -O2 -g " ./makewrappers "xattr=true" + File "./makewrappers", line 327 + return """/* This function is not called if pseudo is configured --enable-force-async */ + ^ +TabError: inconsistent use of tabs and spaces in indentation + +Signed-off-by: Gaël PORTAY +--- + makewrappers | 26 +++++++++++++------------- + 1 file changed, 13 insertions(+), 13 deletions(-) + +diff --git a/makewrappers b/makewrappers +index e9191ed..303e2cc 100755 +--- a/makewrappers ++++ b/makewrappers +@@ -324,7 +324,7 @@ class Function: + + def maybe_async_skip(self): + if self.async_skip: +- return """/* This function is not called if pseudo is configured --enable-force-async */ ++ return """/* This function is not called if pseudo is configured --enable-force-async */ + #ifdef PSEUDO_FORCE_ASYNC + if (!pseudo_allow_fsync) { + PROFILE_DONE; +@@ -333,7 +333,7 @@ class Function: + #endif + """ % self.async_skip + else: +- return "" ++ return "" + + def comment(self): + """declare self (in a comment)""" +@@ -393,11 +393,11 @@ class Function: + + def rc_format(self): + """the format string to use for the return value""" +- return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['format'] ++ return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['format'] + + def rc_value(self): + """the value to pass for the format string for the return value""" +- return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['value'] ++ return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['value'] + + def rc_decl(self): + """declare rc (if needed)""" +@@ -456,7 +456,7 @@ additional ports to include. + self.name = port + self.subports = [] + self.preports = [] +- print port ++ print port + + if os.path.exists(self.portfile("pseudo_wrappers.c")): + self.wrappers = self.portfile("pseudo_wrappers.c") +@@ -522,11 +522,11 @@ additional ports to include. + return '#define PSEUDO_PORT_%s 1' % string.upper(self.name).replace('/', '_') + + def portdeps(self): +- deps = [] +- if self.wrappers: +- deps.append(self.wrappers) +- if self.portdef_file: +- deps.append(self.portdef_file) ++ deps = [] ++ if self.wrappers: ++ deps.append(self.wrappers) ++ if self.portdef_file: ++ deps.append(self.portdef_file) + if deps: + return 'pseudo_wrappers.o: %s' % ' '.join(deps) + else: +@@ -590,7 +590,7 @@ def main(argv): + + for arg in argv: + name, value = arg.split('=') +- os.environ["port_" + name] = value ++ os.environ["port_" + name] = value + + # error checking helpfully provided by the exception handler + copyright_file = open('guts/COPYRIGHT') +@@ -599,9 +599,9 @@ def main(argv): + + for path in glob.glob('templates/*'): + try: +- print "Considering template: " + path ++ print "Considering template: " + path + source = TemplateFile(path) +- if source.name.endswith('.c') or source.name.endswith('.h'): ++ if source.name.endswith('.c') or source.name.endswith('.h'): + source.emit('copyright') + source.emit('header') + sources.append(source) +-- +2.10.1 + diff --git a/package/pseudo/0002-Fix-missing-parentheses-at-print.patch b/package/pseudo/0002-Fix-missing-parentheses-at-print.patch new file mode 100644 index 0000000000..b023fcf831 --- /dev/null +++ b/package/pseudo/0002-Fix-missing-parentheses-at-print.patch @@ -0,0 +1,190 @@ +From 6488a68ca715d8e18f899e536effceb548ed136e Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= +Date: Fri, 4 Nov 2016 12:23:25 -0400 +Subject: [PATCH 2/3] Fix missing parentheses at print +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +CC="cc -pipe -std=gnu99 -Wall -W -Wextra -fPIC -D_LARGEFILE64_SOURCE -D_ATFILE_SOURCE -DPSEUDO_PREFIX='"/usr/local"' -DPSEUDO_SUFFIX='""' -DPSEUDO_BINDIR='"bin"' -DPSEUDO_LIBDIR='"lib64"' -DPSEUDO_LOCALSTATEDIR='"var/pseudo"' -DPSEUDO_VERSION='"1.8.1"' -DUSE_MEMORY_DB -DPSEUDO_PASSWD_FALLBACK='""' -DPSEUDO_XATTR_SUPPORT -O2 -g " ./makewrappers "xattr=true" + File "./makewrappers", line 459 + print port + ^ +SyntaxError: Missing parentheses in call to 'print' + +Signed-off-by: Gaël PORTAY +--- + maketables | 12 ++++++------ + makewrappers | 32 ++++++++++++++++---------------- + templatefile.py | 8 ++++---- + 3 files changed, 26 insertions(+), 26 deletions(-) + +diff --git a/maketables b/maketables +index b32312e..0726485 100755 +--- a/maketables ++++ b/maketables +@@ -73,7 +73,7 @@ class DataType: + for col in columns: + indexed = False + if col.startswith("FLAGS"): +- print "Flags: set for %s" % self.name ++ print("Flags: set for %s" % self.name) + self.flags = True + continue + if col.startswith("INDEXED "): +@@ -248,7 +248,7 @@ def main(): + template_file.emit('header') + templates.append(template_file) + except IOError: +- print "Invalid or malformed template %s. Aborting." % path ++ print("Invalid or malformed template %s. Aborting." % path) + exit(1) + + for filename in sys.argv[1:]: +@@ -256,15 +256,15 @@ def main(): + sys.stdout.write("%s: " % filename) + datatype = DataType(filename) + datatypes.append(datatype) +- print datatype.__repr__() +- print "" ++ print(datatype.__repr__()) ++ print("") + +- print "Writing datatypes...", ++ print("Writing datatypes...") + for datatype in datatypes: + # populate various tables and files with each datatype + for template_file in templates: + template_file.emit('body', datatype) +- print "done. Cleaning up." ++ print("done. Cleaning up.") + + for template_file in templates: + # clean up files +diff --git a/makewrappers b/makewrappers +index 303e2cc..bac856b 100755 +--- a/makewrappers ++++ b/makewrappers +@@ -456,7 +456,7 @@ additional ports to include. + self.name = port + self.subports = [] + self.preports = [] +- print port ++ print(port) + + if os.path.exists(self.portfile("pseudo_wrappers.c")): + self.wrappers = self.portfile("pseudo_wrappers.c") +@@ -504,17 +504,17 @@ additional ports to include. + prefuncs = pre.functions() + for name in prefuncs.keys(): + if name in mergedfuncs: +- print "Warning: %s from %s overriding %s" % (name, pre.name, mergedfuncs[name].port) ++ print("Warning: %s from %s overriding %s" % (name, pre.name, mergedfuncs[name].port)) + mergedfuncs[name] = prefuncs[name] + for name in self.funcs.keys(): + if name in mergedfuncs: +- print "Warning: %s from %s overriding %s" % (name, self.name, mergedfuncs[name].port) ++ print("Warning: %s from %s overriding %s" % (name, self.name, mergedfuncs[name].port)) + mergedfuncs[name] = self.funcs[name] + for sub in self.subports: + subfuncs = sub.functions() + for name in subfuncs.keys(): + if name in mergedfuncs: +- print "Warning: %s from %s overriding %s" % (name, sub.name, mergedfuncs[name].port) ++ print("Warning: %s from %s overriding %s" % (name, sub.name, mergedfuncs[name].port)) + mergedfuncs[name] = subfuncs[name] + return mergedfuncs + +@@ -576,11 +576,11 @@ def process_wrapfuncs(port): + func.directory = directory + funcs[func.name] = func + sys.stdout.write(".") +- except Exception, e: +- print "Parsing failed:", e ++ except Exception(e): ++ print("Parsing failed:", e) + exit(1) + funclist.close() +- print "" ++ print("") + return funcs + + def main(argv): +@@ -599,35 +599,35 @@ def main(argv): + + for path in glob.glob('templates/*'): + try: +- print "Considering template: " + path ++ print("Considering template: " + path) + source = TemplateFile(path) + if source.name.endswith('.c') or source.name.endswith('.h'): + source.emit('copyright') + source.emit('header') + sources.append(source) + except IOError: +- print "Invalid or malformed template %s. Aborting." % path ++ print("Invalid or malformed template %s. Aborting." % path) + exit(1) + + try: + port = Port('common', sources) + + except KeyError: +- print "Unknown uname -s result: '%s'." % uname_s +- print "Known system types are:" +- print "%-20s %-10s %s" % ("uname -s", "port name", "description") ++ print("Unknown uname -s result: '%s'." % uname_s) ++ print("Known system types are:") ++ print("%-20s %-10s %s" % ("uname -s", "port name", "description")) + for key in host_ports: +- print "%-20s %-10s %s" % (key, host_ports[key], +- host_descrs[host_ports[key]]) ++ print("%-20s %-10s %s" % (key, host_ports[key], ++ host_descrs[host_ports[key]])) + + # the per-function stuff +- print "Writing functions...", ++ print("Writing functions...") + all_funcs = port.functions() + for name in sorted(all_funcs.keys()): + # populate various tables and files with each function + for source in sources: + source.emit('body', all_funcs[name]) +- print "done. Cleaning up." ++ print("done. Cleaning up.") + + for source in sources: + # clean up files +diff --git a/templatefile.py b/templatefile.py +index 2789b22..abf9a2c 100644 +--- a/templatefile.py ++++ b/templatefile.py +@@ -79,13 +79,13 @@ class TemplateFile: + return + path = Template(self.path).safe_substitute(item) + if os.path.exists(path): +- # print "We don't overwrite existing files." ++ # print("We don't overwrite existing files.") + return + self.file = open(path, 'w') + if not self.file: +- print "Couldn't open '%s' (expanded from %s), " \ ++ print("Couldn't open '%s' (expanded from %s), " \ + "not emitting '%s'." % \ +- (path, self.path, template) ++ (path, self.path, template)) + return + + def emit(self, template, item=None): +@@ -103,7 +103,7 @@ class TemplateFile: + self.file.write(templ.safe_substitute(item)) + self.file.write("\n") + else: +- print "Warning: Unknown template '%s'." % template ++ print("Warning: Unknown template '%s'." % template) + + if self.file_per_item: + if self.file: +-- +2.10.1 + diff --git a/package/pseudo/0003-Make-it-compatible-with-python3.patch b/package/pseudo/0003-Make-it-compatible-with-python3.patch new file mode 100644 index 0000000000..3bb74deacf --- /dev/null +++ b/package/pseudo/0003-Make-it-compatible-with-python3.patch @@ -0,0 +1,215 @@ +From fcc10b1f4a9968af5cda1adb9e449df92939d5f2 Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= +Date: Fri, 4 Nov 2016 15:58:46 -0400 +Subject: [PATCH 3/3] Make it compatible with python3 +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +Python scripts are now compatible with both version of python, 2 and 3. + +Helped-by: Damien Riegel +Helped-by: Alexandre Leblanc +Signed-off-by: Gaël PORTAY +--- + maketables | 135 ++++++++++++++++++++++++++++++----------------------------- + makewrappers | 8 ++-- + 2 files changed, 73 insertions(+), 70 deletions(-) + +diff --git a/maketables b/maketables +index 0726485..f74f2b1 100755 +--- a/maketables ++++ b/maketables +@@ -51,6 +51,7 @@ value. (This is for consistency with C array bounds.) + import glob + import sys + import string ++import os + from templatefile import TemplateFile + + class DataType: +@@ -58,74 +59,74 @@ class DataType: + + def __init__(self, path): + """read the first line of path, then make tuples of the rest""" +- source = file(path) +- definition = source.readline().rstrip() +- self.name, qualifiers = string.split(definition, ': ', 2) +- if '; ' in qualifiers: +- self.prefix, columns = string.split(qualifiers, '; ') +- else: +- self.prefix = qualifiers +- columns = [] +- self.flags = False +- if len(columns): +- self.columns = [] +- columns = string.split(columns, ', ') +- for col in columns: +- indexed = False +- if col.startswith("FLAGS"): +- print("Flags: set for %s" % self.name) +- self.flags = True ++ with open(path,'r') as source: ++ definition = source.readline().rstrip() ++ self.name, qualifiers = definition.split(': ', 2) ++ if '; ' in qualifiers: ++ self.prefix, columns = qualifiers.split('; ') ++ else: ++ self.prefix = qualifiers ++ columns = [] ++ self.flags = False ++ if len(columns): ++ self.columns = [] ++ columns = columns.split(', ') ++ for col in columns: ++ indexed = False ++ if col.startswith("FLAGS"): ++ print("Flags: set for %s" % self.name) ++ self.flags = True ++ continue ++ if col.startswith("INDEXED "): ++ col = col[8:] ++ indexed = True ++ if "=" in col: ++ name, default = col.split(' = ') ++ else: ++ name, default = col, "" ++ if " " in name: ++ words = name.split(' ') ++ name = words[-1] ++ del words[-1] ++ type = ' '.join(words) ++ else: ++ type = "char *" ++ self.columns.append({"indexed":indexed, "type":type, "name":name, "value":default}) ++ else: ++ self.columns = [] ++ self.data = [] ++ self.comments = [] ++ index = 1 ++ for line in source.readlines(): ++ item = {} ++ if line.startswith('#'): ++ self.comments.append(line.rstrip().replace('#', '')) + continue +- if col.startswith("INDEXED "): +- col = col[8:] +- indexed = True +- if "=" in col: +- name, default = string.split(col, ' = ') +- else: +- name, default = col, "" +- if " " in name: +- words = string.split(name, ' ') +- name = words[-1] +- del words[-1] +- type = ' '.join(words) +- else: +- type = "char *" +- self.columns.append({"indexed":indexed, "type":type, "name":name, "value":default}) +- else: +- self.columns = [] +- self.data = [] +- self.comments = [] +- index = 1 +- for line in source.readlines(): +- item = {} +- if line.startswith('#'): +- self.comments.append(line.rstrip().replace('#', '')) +- continue +- # first entry on the line is the "real" name/id, following hunks +- # are additional columns +- cols = string.split(line.rstrip(), ', ') +- item["name"] = cols.pop(0) +- item["upper"] = item["name"].replace('-', '_').upper() +- column_list = [] +- for col in self.columns: +- if len(cols) > 0: +- value = cols.pop(0) +- if col["indexed"]: +- if not "max" in col: +- col["max"] = value +- if value > col["max"]: +- col["max"] = value +- if not "min" in col: +- col["min"] = value +- if value < col["min"]: +- col["min"] = value +- column_list.append({"name":col["name"], "value":value}) +- else: +- column_list.append({"name":col["name"], "value":col["value"]}) +- item["cols"] = column_list +- item["index"] = index +- index = index + 1 +- self.data.append(item) ++ # first entry on the line is the "real" name/id, following hunks ++ # are additional columns ++ cols = line.rstrip().split(', ') ++ item["name"] = cols.pop(0) ++ item["upper"] = item["name"].replace('-', '_').upper() ++ column_list = [] ++ for col in self.columns: ++ if len(cols) > 0: ++ value = cols.pop(0) ++ if col["indexed"]: ++ if not "max" in col: ++ col["max"] = value ++ if value > col["max"]: ++ col["max"] = value ++ if not "min" in col: ++ col["min"] = value ++ if value < col["min"]: ++ col["min"] = value ++ column_list.append({"name":col["name"], "value":value}) ++ else: ++ column_list.append({"name":col["name"], "value":col["value"]}) ++ item["cols"] = column_list ++ item["index"] = index ++ index = index + 1 ++ self.data.append(item) + + def __getitem__(self, key): + """Make this object look like a dict for Templates to use""" +diff --git a/makewrappers b/makewrappers +index bac856b..ff08ba0 100755 +--- a/makewrappers ++++ b/makewrappers +@@ -453,6 +453,8 @@ additional ports to include. + """ + + def __init__(self, port, sources): ++ if type(port) is not str: ++ port = str(port, encoding="ascii") + self.name = port + self.subports = [] + self.preports = [] +@@ -483,7 +485,7 @@ additional ports to include. + if retcode: + raise Exception("preports script failed for port %s" % self.name) + +- for preport in string.split(portlist): ++ for preport in portlist.split(): + next = Port(preport, sources) + self.preports.append(next) + +@@ -494,7 +496,7 @@ additional ports to include. + if retcode: + raise Exception("subports script failed for port %s" % self.name) + +- for subport in string.split(portlist): ++ for subport in portlist.split(): + next = Port(subport, sources) + self.subports.append(next) + +@@ -519,7 +521,7 @@ additional ports to include. + return mergedfuncs + + def define(self): +- return '#define PSEUDO_PORT_%s 1' % string.upper(self.name).replace('/', '_') ++ return '#define PSEUDO_PORT_%s 1' % self.name.upper().replace('/', '_') + + def portdeps(self): + deps = [] +-- +2.10.1 + diff --git a/package/pseudo/pseudo.hash b/package/pseudo/pseudo.hash new file mode 100644 index 0000000000..1553a293fd --- /dev/null +++ b/package/pseudo/pseudo.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 7d4b767302f118fa1c3f89b551cf3f3f2aa92721dab86ff62f0600a394b8a81a pseudo-45eca34c754d416a38bee90fb2d3c110a0b6cc5f.tar.gz diff --git a/package/pseudo/pseudo.mk b/package/pseudo/pseudo.mk new file mode 100644 index 0000000000..8144cca825 --- /dev/null +++ b/package/pseudo/pseudo.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# pseudo +# +################################################################################ + +PSEUDO_VERSION = 45eca34c754d416a38bee90fb2d3c110a0b6cc5f +PSEUDO_SITE = https://git.yoctoproject.org/git/pseudo +PSEUDO_SITE_METHOD = git + +# No "or later" clause. +PSEUDO_LICENSE = LGPLv2.1 +PSEUDO_LICENSE_FILES = COPYING + +HOST_PSEUDO_DEPENDENCIES = host-attr host-sqlite + +# configure script is not generated by autoconf, so passing --libdir +# is necessary, even if the infrastructure passes --prefix already. +# It also does not use CFLAGS from the environment, they need to be +# specified with a custom --cflags option. Also force rpath to avoid +# a warning at configure time. +HOST_PSEUDO_CONF_OPTS = \ + --cflags="$(HOSTCFLAGS)" \ + --with-rpath=$(HOST_DIR)/usr/lib \ + --bits=$(if $(filter %64,$(HOSTARCH)),64,32) \ + --libdir=$(HOST_DIR)/usr/lib \ + --with-sqlite=$(HOST_DIR)/usr + +$(eval $(host-autotools-package)) diff --git a/package/psmisc/Config.in b/package/psmisc/Config.in index cc8420b7bb..734542cc8a 100644 --- a/package/psmisc/Config.in +++ b/package/psmisc/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PSMISC bool "psmisc" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_NCURSES select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help diff --git a/package/ptpd2/ptpd2.mk b/package/ptpd2/ptpd2.mk index da6a10684b..d53b13534c 100644 --- a/package/ptpd2/ptpd2.mk +++ b/package/ptpd2/ptpd2.mk @@ -24,6 +24,12 @@ else PTPD2_CONF_OPTS += --disable-snmp endif +# GCC bug with Os/O1/O2/O3 +# internal compiler error: in gen_add2_insn, at optabs.c:4454 +ifeq ($(BR2_bfin),y) +PTPD2_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0" +endif + define PTPD2_INSTALL_INIT_SYSV $(INSTALL) -m 755 -D package/ptpd2/S65ptpd2 \ $(TARGET_DIR)/etc/init.d/S65ptpd2 diff --git a/package/pugixml/0001-check-cxx_long_long_type-existence.patch b/package/pugixml/0001-check-cxx_long_long_type-existence.patch new file mode 100644 index 0000000000..a53c84a29a --- /dev/null +++ b/package/pugixml/0001-check-cxx_long_long_type-existence.patch @@ -0,0 +1,33 @@ +From 6cfd9c14ced26c8220f7f7ea99610cbdbfb9eba7 Mon Sep 17 00:00:00 2001 +From: Theo Debrouwere +Date: Mon, 12 Sep 2016 09:38:56 +0200 +Subject: [PATCH] Bugfix: check if cxx_long_long_type is present before + applying it. + +Check if cxx_long_long_type is present in the list of compiler features +before adding it as a target_compile_feature. + +Patch was backported from +https://github.com/zeux/pugixml/commit/4dbb5646196a4a3cc94097f1473ef11d1d44df11 + +Signed-off-by: Theo Debrouwere +--- + scripts/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt +index 40a7ab0..6403753 100644 +--- a/scripts/CMakeLists.txt ++++ b/scripts/CMakeLists.txt +@@ -26,7 +26,7 @@ else() + endif() + + # Enable C++11 long long for compilers that are capable of it +-if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1) ++if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1 AND ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_long_long_type;") + target_compile_features(pugixml PUBLIC cxx_long_long_type) + endif() + +-- +2.9.3 + diff --git a/package/pugixml/Config.in b/package/pugixml/Config.in new file mode 100644 index 0000000000..d67e69573c --- /dev/null +++ b/package/pugixml/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_PUGIXML + bool "pugixml" + depends on BR2_INSTALL_LIBSTDCPP + help + Light-weight, simple and fast XML parser for C++ with XPath support + + Features: + * DOM-like interface with rich traversal/modification capabilities + * Extremely fast non-validating XML parser which constructs the DOM tree + from an XML file/buffer + * XPath 1.0 implementation for complex data-driven tree queries + * Full Unicode support with Unicode interface variants and automatic + encoding conversions + + http://pugixml.org/ + https://github.com/zeux/pugixml + +comment "pugixml needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/pugixml/pugixml.hash b/package/pugixml/pugixml.hash new file mode 100644 index 0000000000..9007f7cae6 --- /dev/null +++ b/package/pugixml/pugixml.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca pugixml-1.7.tar.gz diff --git a/package/pugixml/pugixml.mk b/package/pugixml/pugixml.mk new file mode 100644 index 0000000000..2e4f0ce561 --- /dev/null +++ b/package/pugixml/pugixml.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# pugixml +# +################################################################################ + +PUGIXML_VERSION = 1.7 +PUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(PUGIXML_VERSION) +PUGIXML_LICENSE = MIT +PUGIXML_LICENSE_FILES = readme.txt +PUGIXML_INSTALL_STAGING = YES + +PUGIXML_SUBDIR = scripts + +$(eval $(cmake-package)) diff --git a/package/pulseaudio/0002-webrtc-C-11-is-only-required-for-WebRTC-support.patch b/package/pulseaudio/0002-webrtc-C-11-is-only-required-for-WebRTC-support.patch new file mode 100644 index 0000000000..b2c065196b --- /dev/null +++ b/package/pulseaudio/0002-webrtc-C-11-is-only-required-for-WebRTC-support.patch @@ -0,0 +1,41 @@ +From 7af6cbe74d48a9853b60b029d4ce38a963386138 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 3 Jul 2016 20:19:48 +0200 +Subject: [PATCH] webrtc: C++11 is only required for WebRTC support + +Make C++11 support optional and explicitely check for gnu++11. + +Stop the build only if no C++11 support has been found and WebRTC +support has been resquested. + +Signed-off-by: Romain Naour +--- + configure.ac | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 4edc8e0..fea93a9 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -84,7 +84,7 @@ AM_PROG_CC_C_O + # Only required if you want the WebRTC canceller -- no runtime dep on + # libstdc++ otherwise + AC_PROG_CXX +-AX_CXX_COMPILE_STDCXX_11 ++AX_CXX_COMPILE_STDCXX_11([ext],[optional]) + AC_PROG_GCC_TRADITIONAL + AC_USE_SYSTEM_EXTENSIONS + +@@ -1414,6 +1414,9 @@ fi + AC_ARG_ENABLE([webrtc-aec], + AS_HELP_STRING([--enable-webrtc-aec], [Enable the optional WebRTC-based echo canceller])) + ++AS_IF([test "x$enable_webrtc_aec" = "xyes" && test "$HAVE_CXX11" = "0"], ++ [AC_MSG_ERROR([*** webrtc-audio-processing needs C++11 support])]) ++ + AS_IF([test "x$enable_webrtc_aec" != "xno"], + [PKG_CHECK_MODULES(WEBRTC, [ webrtc-audio-processing >= 0.2 ], [HAVE_WEBRTC=1], [HAVE_WEBRTC=0])], + [HAVE_WEBRTC=0]) +-- +2.5.5 + diff --git a/package/pulseaudio/pulseaudio.hash b/package/pulseaudio/pulseaudio.hash index 0d1a3d2bda..0ef825d83a 100644 --- a/package/pulseaudio/pulseaudio.hash +++ b/package/pulseaudio/pulseaudio.hash @@ -1,3 +1,3 @@ -# From http://freedesktop.org/software/pulseaudio/releases/pulseaudio-8.0.tar.xz.{md5,sha1} -md5 8678442ba0bb4b4c33ac6f62542962df pulseaudio-8.0.tar.xz -sha1 1399a2f6288ad743184b6c2192129fef033343ac pulseaudio-8.0.tar.xz +# From http://freedesktop.org/software/pulseaudio/releases/pulseaudio-9.0.tar.xz.{md5,sha1} +md5 da7162541b3a9bc20576dbd0d7d1489a pulseaudio-9.0.tar.xz +sha1 d9a9d7cb667ed95ee1de4b6544d5c7444c5a0064 pulseaudio-9.0.tar.xz diff --git a/package/pulseaudio/pulseaudio.mk b/package/pulseaudio/pulseaudio.mk index 06b0b843c5..74a028be45 100644 --- a/package/pulseaudio/pulseaudio.mk +++ b/package/pulseaudio/pulseaudio.mk @@ -4,7 +4,7 @@ # ################################################################################ -PULSEAUDIO_VERSION = 8.0 +PULSEAUDIO_VERSION = 9.0 PULSEAUDIO_SOURCE = pulseaudio-$(PULSEAUDIO_VERSION).tar.xz PULSEAUDIO_SITE = http://freedesktop.org/software/pulseaudio/releases PULSEAUDIO_INSTALL_STAGING = YES @@ -18,9 +18,12 @@ PULSEAUDIO_CONF_OPTS = \ # Make sure we don't detect libatomic_ops. Indeed, since pulseaudio # requires json-c, which needs 4 bytes __sync builtins, there should # be no need for pulseaudio to rely on libatomic_ops. -PULSE_AUDIO_CONF_ENV += \ +PULSEAUDIO_CONF_ENV += \ ac_cv_header_atomic_ops_h=no +# 0002-webrtc-C-11-is-only-required-for-WebRTC-support.patch +PULSEAUDIO_AUTORECONF = YES + PULSEAUDIO_DEPENDENCIES = \ host-pkgconf libtool json-c libsndfile speex host-intltool \ $(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate) \ @@ -31,7 +34,6 @@ PULSEAUDIO_DEPENDENCIES = \ $(if $(BR2_PACKAGE_BLUEZ_UTILS),bluez_utils) \ $(if $(BR2_PACKAGE_OPENSSL),openssl) \ $(if $(BR2_PACKAGE_FFTW),fftw) \ - $(if $(BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING),webrtc-audio-processing) \ $(if $(BR2_PACKAGE_SYSTEMD),systemd) ifeq ($(BR2_PACKAGE_GDBM),y) @@ -79,25 +81,17 @@ PULSEAUDIO_CONF_OPTS += --without-soxr endif ifeq ($(BR2_PACKAGE_HAS_UDEV),y) -PULSEAUDIO_CONF_OPTS += --enable-libudev +PULSEAUDIO_CONF_OPTS += --enable-udev PULSEAUDIO_DEPENDENCIES += udev else -PULSEAUDIO_CONF_OPTS += --disable-libudev +PULSEAUDIO_CONF_OPTS += --disable-udev endif -ifneq ($(BR2_INSTALL_LIBSTDCPP),y) -# The optional webrtc echo canceller is written in C++, causing auto* to want -# to link module-echo-cancel.so with CXX even if webrtc ISN'T used. -# If we don't have C++ support enabled in BR, CXX will point to /bin/false, -# which makes configure think we aren't able to create C++ .so files -# (arguable true), breaking the build when it tries to install the .so -# workaround it by patching up the libtool invocations to use C mode instead -define PULSEAUDIO_FORCE_CC - $(SED) 's/--tag=CXX/--tag=CC/g' -e 's/(CXXLD)/(CCLD)/g' \ - $(@D)/src/Makefile.in -endef - -PULSEAUDIO_POST_PATCH_HOOKS += PULSEAUDIO_FORCE_CC +ifeq ($(BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING),y) +PULSEAUDIO_CONF_OPTS += --enable-webrtc-aec +PULSEAUDIO_DEPENDENCIES += webrtc-audio-processing +else +PULSEAUDIO_CONF_OPTS += --disable-webrtc-aec endif # neon intrinsics not available with float-abi=soft diff --git a/package/pulseview/Config.in b/package/pulseview/Config.in index bbbfd7672e..46abe78f76 100644 --- a/package/pulseview/Config.in +++ b/package/pulseview/Config.in @@ -15,7 +15,6 @@ config BR2_PACKAGE_PULSEVIEW depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS # libsigrok depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 help @@ -27,6 +26,5 @@ config BR2_PACKAGE_PULSEVIEW comment "pulseview needs a toolchain w/ wchar, threads, C++, gcc >= 4.8" depends on BR2_USE_MMU depends on BR2_PACKAGE_QT5 - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/pure-ftpd/Config.in b/package/pure-ftpd/Config.in index c1b2529db9..57b78d1ae6 100644 --- a/package/pure-ftpd/Config.in +++ b/package/pure-ftpd/Config.in @@ -10,3 +10,22 @@ config BR2_PACKAGE_PURE_FTPD well as hosting providers. http://www.pureftpd.org + +if BR2_PACKAGE_PURE_FTPD + +config BR2_PACKAGE_PURE_FTPD_FTPWHO + bool "ftpwho" + help + Enable the pure-ftpd command. Pure-ftpwho shows current Pure-ftpd + client sessions. Only the system administrator may run this. Output + can be text (default), HTML, XML data and parser-optimized. + +config BR2_PACKAGE_PURE_FTPD_QUOTAS + bool "quotas" + help + Enable virtual quotas. With virtual quotas, restrictions can + be placed on the maximum number of files a user can store in + his account. In addition, restrictions can also be placed + on the total size. + +endif diff --git a/package/pure-ftpd/pure-ftpd.mk b/package/pure-ftpd/pure-ftpd.mk index e1040fa159..95e7065580 100644 --- a/package/pure-ftpd/pure-ftpd.mk +++ b/package/pure-ftpd/pure-ftpd.mk @@ -41,8 +41,16 @@ else PURE_FTPD_CONF_OPTS += --without-tls endif -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) PURE_FTPD_CONF_ENV += ax_cv_check_cflags___fPIE=no ax_cv_check_ldflags___fPIE=no endif +ifeq ($(BR2_PACKAGE_PURE_FTPD_FTPWHO),y) +PURE_FTPD_CONF_OPTS += --with-ftpwho +endif + +ifeq ($(BR2_PACKAGE_PURE_FTPD_QUOTAS),y) +PURE_FTPD_CONF_OPTS += --with-quotas +endif + $(eval $(autotools-package)) diff --git a/package/putty/putty.mk b/package/putty/putty.mk index ca86c47052..5155714c32 100644 --- a/package/putty/putty.mk +++ b/package/putty/putty.mk @@ -5,12 +5,12 @@ ################################################################################ PUTTY_VERSION = 0.67 -PUTTY_SOURCE = putty-$(PUTTY_VERSION).tar.gz PUTTY_SITE = http://the.earth.li/~sgtatham/putty/$(PUTTY_VERSION) PUTTY_SUBDIR = unix PUTTY_LICENSE = MIT PUTTY_LICENSE_FILES = LICENCE PUTTY_CONF_OPTS = --disable-gtktest +PUTTY_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -Wno-error" ifeq ($(BR2_PACKAGE_LIBGTK2),y) PUTTY_CONF_OPTS += --with-gtk=2 diff --git a/package/python-argh/Config.in b/package/python-argh/Config.in new file mode 100644 index 0000000000..5da6625ddd --- /dev/null +++ b/package/python-argh/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_ARGH + bool "python-argh" + help + An unobtrusive argparse wrapper with natural syntax. + + http://github.com/neithere/argh/ diff --git a/package/python-argh/python-argh.hash b/package/python-argh/python-argh.hash new file mode 100644 index 0000000000..6f19de10be --- /dev/null +++ b/package/python-argh/python-argh.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/argh/json, sha256 locally computed +md5 edda25f3f0164a963dd89c0e3c619973 argh-0.26.2.tar.gz +sha256 e9535b8c84dc9571a48999094fda7f33e63c3f1b74f3e5f3ac0105a58405bb65 argh-0.26.2.tar.gz diff --git a/package/python-argh/python-argh.mk b/package/python-argh/python-argh.mk new file mode 100644 index 0000000000..bc5d7133a1 --- /dev/null +++ b/package/python-argh/python-argh.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-argh +# +################################################################################ + +PYTHON_ARGH_VERSION = 0.26.2 +PYTHON_ARGH_SOURCE = argh-$(PYTHON_ARGH_VERSION).tar.gz +PYTHON_ARGH_SITE = https://pypi.python.org/packages/e3/75/1183b5d1663a66aebb2c184e0398724b624cecd4f4b679cb6e25de97ed15 +PYTHON_ARGH_SETUP_TYPE = setuptools +PYTHON_ARGH_LICENSE = LGPLv3+ +PYTHON_ARGH_LICENSE_FILES = README.rst + +$(eval $(python-package)) diff --git a/package/python-arrow/Config.in b/package/python-arrow/Config.in new file mode 100644 index 0000000000..244956879c --- /dev/null +++ b/package/python-arrow/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_ARROW + bool "python-arrow" + select BR2_PACKAGE_PYTHON_DATEUTIL # runtime + help + Better dates and times for Python. + + https://github.com/crsmithdev/arrow/ diff --git a/package/python-arrow/python-arrow.hash b/package/python-arrow/python-arrow.hash new file mode 100644 index 0000000000..0b5076aa96 --- /dev/null +++ b/package/python-arrow/python-arrow.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/arrow/json, sha256 locally computed +md5 5d00592200050ad58284d45a4ee147c6 arrow-0.10.0.tar.gz +sha256 805906f09445afc1f0fc80187db8fe07670e3b25cdafa09b8d8ac264a8c0c722 arrow-0.10.0.tar.gz diff --git a/package/python-arrow/python-arrow.mk b/package/python-arrow/python-arrow.mk new file mode 100644 index 0000000000..6e2e331e3c --- /dev/null +++ b/package/python-arrow/python-arrow.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-arrow +# +################################################################################ + +PYTHON_ARROW_VERSION = 0.10.0 +PYTHON_ARROW_SOURCE = arrow-$(PYTHON_ARROW_VERSION).tar.gz +PYTHON_ARROW_SITE = https://pypi.python.org/packages/54/db/76459c4dd3561bbe682619a5c576ff30c42e37c2e01900ed30a501957150 +PYTHON_ARROW_SETUP_TYPE = setuptools +PYTHON_ARROW_LICENSE = Apache-2.0 +PYTHON_ARROW_LICENSE_FILES = LICENSE docs/_themes/COPYING.txt + +$(eval $(python-package)) diff --git a/package/python-attrs/Config.in b/package/python-attrs/Config.in new file mode 100644 index 0000000000..fb0ab248fa --- /dev/null +++ b/package/python-attrs/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_ATTRS + bool "python-attrs" + help + attrs is the Python package that will bring back the joy of + writing classes by relieving you from the drudgery of + implementing object protocols (aka dunder methods). + + https://attrs.readthedocs.io/ diff --git a/package/python-attrs/python-attrs.hash b/package/python-attrs/python-attrs.hash new file mode 100644 index 0000000000..33ecd2c0fe --- /dev/null +++ b/package/python-attrs/python-attrs.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/attrs/json, sha256 locally computed +md5 4ec003c49360853cf935113d1ae56151 attrs-16.3.0.tar.gz +sha256 80203177723e36f3bbe15aa8553da6e80d47bfe53647220ccaa9ad7a5e473ccc attrs-16.3.0.tar.gz diff --git a/package/python-attrs/python-attrs.mk b/package/python-attrs/python-attrs.mk new file mode 100644 index 0000000000..5e7985a3f2 --- /dev/null +++ b/package/python-attrs/python-attrs.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-attrs +# +################################################################################ + +PYTHON_ATTRS_VERSION = 16.3.0 +PYTHON_ATTRS_SOURCE = attrs-$(PYTHON_ATTRS_VERSION).tar.gz +PYTHON_ATTRS_SITE = https://pypi.python.org/packages/01/b0/3ac73bf6df716a38568a16f6a9cbc46cc9e8ed6fe30c8768260030db55d4 +PYTHON_ATTRS_SETUP_TYPE = setuptools +PYTHON_ATTRS_LICENSE = MIT +PYTHON_ATTRS_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-autobahn/python-autobahn.hash b/package/python-autobahn/python-autobahn.hash index 8f55ac1301..cae9160ef8 100644 --- a/package/python-autobahn/python-autobahn.hash +++ b/package/python-autobahn/python-autobahn.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=b4b5445050749c1033b9b58f694f0c64, sha256 locally computed. -md5 b4b5445050749c1033b9b58f694f0c64 autobahn-0.12.1.tar.gz -sha256 664223879e159c88221f42d8d1ac6b8c4268d8b9316d8ab69a02761c5744cd79 autobahn-0.12.1.tar.gz +# md5 from https://pypi.python.org/pypi/autobahn/json, sha256 locally computed +md5 9850702d0078c5a4aa17170afe2f233c autobahn-0.16.0.tar.gz +sha256 a1dcb4315a0914da56ec484659816de72dfad229be4ac19fa61bbc0111ada884 autobahn-0.16.0.tar.gz diff --git a/package/python-autobahn/python-autobahn.mk b/package/python-autobahn/python-autobahn.mk index 1d0286712f..a5e9aeea77 100644 --- a/package/python-autobahn/python-autobahn.mk +++ b/package/python-autobahn/python-autobahn.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AUTOBAHN_VERSION = 0.12.1 +PYTHON_AUTOBAHN_VERSION = 0.16.0 PYTHON_AUTOBAHN_SOURCE = autobahn-$(PYTHON_AUTOBAHN_VERSION).tar.gz -PYTHON_AUTOBAHN_SITE = http://pypi.python.org/packages/source/a/autobahn +PYTHON_AUTOBAHN_SITE = https://pypi.python.org/packages/68/37/2523309412f0fb93a7784c65e5c5639b4b5d7a84f91374ad6c3c2d5af60b PYTHON_AUTOBAHN_LICENSE = MIT PYTHON_AUTOBAHN_LICENSE_FILES = LICENSE PYTHON_AUTOBAHN_SETUP_TYPE = setuptools diff --git a/package/python-babel/Config.in b/package/python-babel/Config.in new file mode 100644 index 0000000000..1a22b83f2c --- /dev/null +++ b/package/python-babel/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_BABEL + bool "python-babel" + select BR2_PACKAGE_PYTHON_PYTZ # runtime + help + A collection of tools for internationalizing Python + applications. + + http://babel.pocoo.org/en/latest/ diff --git a/package/python-babel/python-babel.hash b/package/python-babel/python-babel.hash new file mode 100644 index 0000000000..4d7536799f --- /dev/null +++ b/package/python-babel/python-babel.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/Babel/json, sha256 locally computed +md5 afa20bc55b0e991833030129ad498f35 Babel-2.3.4.tar.gz +sha256 c535c4403802f6eb38173cd4863e419e2274921a01a8aad8a5b497c131c62875 Babel-2.3.4.tar.gz diff --git a/package/python-babel/python-babel.mk b/package/python-babel/python-babel.mk new file mode 100644 index 0000000000..3627b15f78 --- /dev/null +++ b/package/python-babel/python-babel.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-babel +# +################################################################################ + +PYTHON_BABEL_VERSION = 2.3.4 +PYTHON_BABEL_SOURCE = Babel-$(PYTHON_BABEL_VERSION).tar.gz +PYTHON_BABEL_SITE = https://pypi.python.org/packages/6e/96/ba2a2462ed25ca0e651fb7b66e7080f5315f91425a07ea5b34d7c870c114 +PYTHON_BABEL_SETUP_TYPE = setuptools +PYTHON_BABEL_LICENSE = BSD-3c +PYTHON_BABEL_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-backports-abc/Config.in b/package/python-backports-abc/Config.in index 26d8cfd98b..43566279e8 100644 --- a/package/python-backports-abc/Config.in +++ b/package/python-backports-abc/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_BACKPORTS_ABC bool "python-backports-abc" + depends on BR2_PACKAGE_PYTHON help A backport of recent additions to the 'collections.abc' module. diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.hash b/package/python-beautifulsoup4/python-beautifulsoup4.hash index 885c26675d..c86879fc9d 100644 --- a/package/python-beautifulsoup4/python-beautifulsoup4.hash +++ b/package/python-beautifulsoup4/python-beautifulsoup4.hash @@ -1,4 +1,3 @@ -# md5 from https://pypi.python.org/pypi/beautifulsoup4/json -md5 8fbd9a7cac0704645fa20d1419036815 beautifulsoup4-4.4.1.tar.gz -# sha256 calculated by scanpypi -sha256 87d4013d0625d4789a4f56b8d79a04d5ce6db1152bb65f1d39744f7709a366b4 beautifulsoup4-4.4.1.tar.gz +# md5 from https://pypi.python.org/pypi/beautifulsoup4/json, sha256 locally computed +md5 994abd90e691beaf7d42c00ffb2f3a67 beautifulsoup4-4.5.1.tar.gz +sha256 3c9474036afda9136aac6463def733f81017bf9ef3510d25634f335b0c87f5e1 beautifulsoup4-4.5.1.tar.gz diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.mk b/package/python-beautifulsoup4/python-beautifulsoup4.mk index 58481b9794..e2fa9b3c8f 100644 --- a/package/python-beautifulsoup4/python-beautifulsoup4.mk +++ b/package/python-beautifulsoup4/python-beautifulsoup4.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BEAUTIFULSOUP4_VERSION = 4.4.1 +PYTHON_BEAUTIFULSOUP4_VERSION = 4.5.1 PYTHON_BEAUTIFULSOUP4_SOURCE = beautifulsoup4-$(PYTHON_BEAUTIFULSOUP4_VERSION).tar.gz -PYTHON_BEAUTIFULSOUP4_SITE = https://pypi.python.org/packages/source/b/beautifulsoup4 +PYTHON_BEAUTIFULSOUP4_SITE = https://pypi.python.org/packages/86/ea/8e9fbce5c8405b9614f1fd304f7109d9169a3516a493ce4f7f77c39435b7 PYTHON_BEAUTIFULSOUP4_SETUP_TYPE = setuptools PYTHON_BEAUTIFULSOUP4_LICENSE = MIT PYTHON_BEAUTIFULSOUP4_LICENSE_FILES = COPYING.txt diff --git a/package/python-bitstring/Config.in b/package/python-bitstring/Config.in new file mode 100644 index 0000000000..93d7682577 --- /dev/null +++ b/package/python-bitstring/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_BITSTRING + bool "python-bitstring" + help + Simple construction, analysis and modification of binary data. + + https://github.com/scott-griffiths/bitstring diff --git a/package/python-bitstring/python-bitstring.hash b/package/python-bitstring/python-bitstring.hash new file mode 100644 index 0000000000..52630e0aa8 --- /dev/null +++ b/package/python-bitstring/python-bitstring.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 b769620c1b52d6c1548c6c4f055613f4eee3120ed8a5cff4ba4ffbbc8a582286 bitstring-3.1.5.tar.gz diff --git a/package/python-bitstring/python-bitstring.mk b/package/python-bitstring/python-bitstring.mk new file mode 100644 index 0000000000..2c8fb9959e --- /dev/null +++ b/package/python-bitstring/python-bitstring.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-bitstring +# +################################################################################ + +PYTHON_BITSTRING_VERSION = 3.1.5 +PYTHON_BITSTRING_SOURCE = bitstring-$(PYTHON_BITSTRING_VERSION).tar.gz +PYTHON_BITSTRING_SITE = https://github.com/scott-griffiths/bitstring/archive +PYTHON_BITSTRING_SETUP_TYPE = distutils +PYTHON_BITSTRING_LICENSE = MIT +PYTHON_BITSTRING_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-bottle/python-bottle.hash b/package/python-bottle/python-bottle.hash index 8c7d4281b1..3006c16e9a 100644 --- a/package/python-bottle/python-bottle.hash +++ b/package/python-bottle/python-bottle.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi/bottle/0.12.7 -md5 ed0b83c9dbbdbde784e7c652d61c59f4 bottle-0.12.7.tar.gz -# Calculated based on the hash above -sha256 e3ea2191f06ca51af45bf6ca41ed2d1b2d809ceda0876466879fe205be7b2073 bottle-0.12.7.tar.gz +# md5 from https://pypi.python.org/pypi/bottle/json, sha256 locally computed +md5 d2fe1b48c1d49217e78bf326b1cad437 bottle-0.12.13.tar.gz +sha256 39b751aee0b167be8dffb63ca81b735bbf1dd0905b3bc42761efedee8f123355 bottle-0.12.13.tar.gz diff --git a/package/python-bottle/python-bottle.mk b/package/python-bottle/python-bottle.mk index 441419ec81..6f071f64b5 100644 --- a/package/python-bottle/python-bottle.mk +++ b/package/python-bottle/python-bottle.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_BOTTLE_VERSION = 0.12.7 +PYTHON_BOTTLE_VERSION = 0.12.13 PYTHON_BOTTLE_SOURCE = bottle-$(PYTHON_BOTTLE_VERSION).tar.gz -PYTHON_BOTTLE_SITE = http://pypi.python.org/packages/source/b/bottle +PYTHON_BOTTLE_SITE = https://pypi.python.org/packages/bd/99/04dc59ced52a8261ee0f965a8968717a255ea84a36013e527944dbf3468c PYTHON_BOTTLE_LICENSE = MIT # README.rst refers to the file "LICENSE" but it's not included -PYTHON_BOTTLE_SETUP_TYPE = distutils +PYTHON_BOTTLE_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-cbor/python-cbor.hash b/package/python-cbor/python-cbor.hash index 6714348b5e..a47607d9d4 100644 --- a/package/python-cbor/python-cbor.hash +++ b/package/python-cbor/python-cbor.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=711ee5ecc896595c1e95c1c48356606c, sha256 locally computed. -md5 711ee5ecc896595c1e95c1c48356606c cbor-0.1.25.tar.gz -sha256 e342d425dde88bb93b741e34e3ba092492ba1f6fca94ce356054fb7daa420746 cbor-0.1.25.tar.gz +# md5 from https://pypi.python.org/pypi/cbor/json, sha256 locally computed +md5 22b03b59784fd78cb6c27aa498af0db6 cbor-1.0.0.tar.gz +sha256 13225a262ddf5615cbd9fd55a76a0d53069d18b07d2e9f19c39e6acb8609bbb6 cbor-1.0.0.tar.gz diff --git a/package/python-cbor/python-cbor.mk b/package/python-cbor/python-cbor.mk index 4c3ce9dba3..32ca4594d5 100644 --- a/package/python-cbor/python-cbor.mk +++ b/package/python-cbor/python-cbor.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CBOR_VERSION = 0.1.25 +PYTHON_CBOR_VERSION = 1.0.0 PYTHON_CBOR_SOURCE = cbor-$(PYTHON_CBOR_VERSION).tar.gz -PYTHON_CBOR_SITE = http://pypi.python.org/packages/source/c/cbor +PYTHON_CBOR_SITE = https://pypi.python.org/packages/9b/99/01c6a987c920500189eb74a291bd3a388e6c7cf85736bb6b066d9833315e PYTHON_CBOR_LICENSE = Apache PYTHON_CBOR_SETUP_TYPE = setuptools diff --git a/package/python-certifi/python-certifi.hash b/package/python-certifi/python-certifi.hash index ade4db38c3..443cc6d3a2 100644 --- a/package/python-certifi/python-certifi.hash +++ b/package/python-certifi/python-certifi.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=5d672aa766e1f773c75cfeccd02d3650, sha256 locally computed -md5 5d672aa766e1f773c75cfeccd02d3650 certifi-2016.2.28.tar.gz -sha256 5e8eccf95924658c97b990b50552addb64f55e1e3dfe4880456ac1f287dc79d0 certifi-2016.2.28.tar.gz +# md5 from https://pypi.python.org/pypi/certifi/json, sha256 locally computed +md5 baa81e951a29958563689d868ef1064d certifi-2016.9.26.tar.gz +sha256 8275aef1bbeaf05c53715bfc5d8569bd1e04ca1e8e69608cc52bcaac2604eb19 certifi-2016.9.26.tar.gz diff --git a/package/python-certifi/python-certifi.mk b/package/python-certifi/python-certifi.mk index 84db8ffebc..f69e7c18db 100644 --- a/package/python-certifi/python-certifi.mk +++ b/package/python-certifi/python-certifi.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CERTIFI_VERSION = 2016.2.28 +PYTHON_CERTIFI_VERSION = 2016.9.26 PYTHON_CERTIFI_SOURCE = certifi-$(PYTHON_CERTIFI_VERSION).tar.gz -PYTHON_CERTIFI_SITE = https://pypi.python.org/packages/source/c/certifi +PYTHON_CERTIFI_SITE = https://pypi.python.org/packages/4f/75/e1bc6e363a2c76f8d7e754c27c437dbe4086414e1d6d2f6b2a3e7846f22b PYTHON_CERTIFI_SETUP_TYPE = setuptools PYTHON_CERTIFI_LICENSE = ISC (Python code), MPL-2.0 (cacert.pem) PYTHON_CERTIFI_LICENSE_FILES = LICENSE diff --git a/package/python-cffi/python-cffi.hash b/package/python-cffi/python-cffi.hash index 125c93e893..39065bcd0c 100644 --- a/package/python-cffi/python-cffi.hash +++ b/package/python-cffi/python-cffi.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi?:action=show_md5&digest=2fae9160991afefb20ff0fbde3b14faf -md5 2fae9160991afefb20ff0fbde3b14faf cffi-1.6.0.tar.gz -# Calculated based on the hash above -sha256 a7f75c4ef2362c0a0e54657add0a6c509fecbfa3b3807bc0925f5cb1c9f927db cffi-1.6.0.tar.gz +# md5 from https://pypi.python.org/pypi/cffi/json, sha256 locally computed +md5 c8e877fe0426a99d0cf5872cf2f95b27 cffi-1.8.3.tar.gz +sha256 c321bd46faa7847261b89c0469569530cad5a41976bb6dba8202c0159f476568 cffi-1.8.3.tar.gz diff --git a/package/python-cffi/python-cffi.mk b/package/python-cffi/python-cffi.mk index 3c2d534955..d34869561b 100644 --- a/package/python-cffi/python-cffi.mk +++ b/package/python-cffi/python-cffi.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CFFI_VERSION = 1.6.0 +PYTHON_CFFI_VERSION = 1.8.3 PYTHON_CFFI_SOURCE = cffi-$(PYTHON_CFFI_VERSION).tar.gz -PYTHON_CFFI_SITE = https://pypi.python.org/packages/b6/98/11feff87072e2e640fb8320712b781eccdef05d588618915236b32289d5a +PYTHON_CFFI_SITE = https://pypi.python.org/packages/0a/f3/686af8873b70028fccf67b15c78fd4e4667a3da995007afc71e786d61b0a PYTHON_CFFI_SETUP_TYPE = setuptools PYTHON_CFFI_DEPENDENCIES = host-pkgconf libffi PYTHON_CFFI_LICENSE = MIT diff --git a/package/python-chardet/Config.in b/package/python-chardet/Config.in new file mode 100644 index 0000000000..8f1cd602af --- /dev/null +++ b/package/python-chardet/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_CHARDET + bool "python-chardet" + help + Universal encoding detector for Python 2 and 3. + + https://github.com/chardet/chardet diff --git a/package/python-chardet/python-chardet.hash b/package/python-chardet/python-chardet.hash new file mode 100644 index 0000000000..aa4efeb104 --- /dev/null +++ b/package/python-chardet/python-chardet.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/chardet/json, sha256 locally computed +md5 25274d664ccb5130adae08047416e1a8 chardet-2.3.0.tar.gz +sha256 e53e38b3a4afe6d1132de62b7400a4ac363452dc5dfcf8d88e8e0cce663c68aa chardet-2.3.0.tar.gz diff --git a/package/python-chardet/python-chardet.mk b/package/python-chardet/python-chardet.mk new file mode 100644 index 0000000000..19629548d4 --- /dev/null +++ b/package/python-chardet/python-chardet.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-chardet +# +################################################################################ + +PYTHON_CHARDET_VERSION = 2.3.0 +PYTHON_CHARDET_SOURCE = chardet-$(PYTHON_CHARDET_VERSION).tar.gz +PYTHON_CHARDET_SITE = https://pypi.python.org/packages/7d/87/4e3a3f38b2f5c578ce44f8dc2aa053217de9f0b6d737739b0ddac38ed237 +PYTHON_CHARDET_SETUP_TYPE = setuptools +PYTHON_CHARDET_LICENSE = LGPLv2.1+ +PYTHON_CHARDET_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-configobj/python-configobj.hash b/package/python-configobj/python-configobj.hash index e4f5c6ca3d..d43c453796 100644 --- a/package/python-configobj/python-configobj.hash +++ b/package/python-configobj/python-configobj.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi/configobj/4.7.2 -md5 201dbaa732a9049c839f9bb6c27fc7b5 configobj-4.7.2.tar.gz -# Calculated based on the hash above -sha256 515ff923462592e8321df8b48c47e3428f8d406ee22b8de77bef969d1af11171 configobj-4.7.2.tar.gz +# md5 from https://pypi.python.org/pypi/configobj/json, sha256 locally computed +md5 e472a3a1c2a67bb0ec9b5d54c13a47d6 configobj-5.0.6.tar.gz +sha256 a2f5650770e1c87fb335af19a9b7eb73fc05ccf22144eb68db7d00cd2bcb0902 configobj-5.0.6.tar.gz diff --git a/package/python-configobj/python-configobj.mk b/package/python-configobj/python-configobj.mk index 5211b1d323..d9591d5be3 100644 --- a/package/python-configobj/python-configobj.mk +++ b/package/python-configobj/python-configobj.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CONFIGOBJ_VERSION = 4.7.2 +PYTHON_CONFIGOBJ_VERSION = 5.0.6 PYTHON_CONFIGOBJ_SOURCE = configobj-$(PYTHON_CONFIGOBJ_VERSION).tar.gz -PYTHON_CONFIGOBJ_SITE = http://pypi.python.org/packages/source/c/configobj +PYTHON_CONFIGOBJ_SITE = https://pypi.python.org/packages/64/61/079eb60459c44929e684fa7d9e2fdca403f67d64dd9dbac27296be2e0fab PYTHON_CONFIGOBJ_LICENSE = BSD-3c # License only mentioned in the source PYTHON_CONFIGOBJ_SETUP_TYPE = distutils diff --git a/package/python-configshell-fb/Config.in b/package/python-configshell-fb/Config.in index a680ce01f1..90a295fc8d 100644 --- a/package/python-configshell-fb/Config.in +++ b/package/python-configshell-fb/Config.in @@ -9,4 +9,4 @@ config BR2_PACKAGE_PYTHON_CONFIGSHELL_FB configshell-fb is a Python library that provides a framework for building simple but nice CLI-based applications. - https://github.com/agrover/configshell-fb + https://github.com/open-iscsi/configshell-fb diff --git a/package/python-configshell-fb/python-configshell-fb.hash b/package/python-configshell-fb/python-configshell-fb.hash new file mode 100644 index 0000000000..7bf4d347ca --- /dev/null +++ b/package/python-configshell-fb/python-configshell-fb.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 3685446d6ee02881930bb2fdc5fdd254938da66ce9843a5b3676c4246b058e4b python-configshell-fb-v1.1.fb18.tar.gz diff --git a/package/python-configshell-fb/python-configshell-fb.mk b/package/python-configshell-fb/python-configshell-fb.mk index d0671d5ec9..a2e9cae157 100644 --- a/package/python-configshell-fb/python-configshell-fb.mk +++ b/package/python-configshell-fb/python-configshell-fb.mk @@ -4,8 +4,10 @@ # ################################################################################ +# When upgrading the version, be sure to also upgrade python-rtslib-fb +# and targetcli-fb at the same time. PYTHON_CONFIGSHELL_FB_VERSION = v1.1.fb18 -PYTHON_CONFIGSHELL_FB_SITE = $(call github,agrover,configshell-fb,$(PYTHON_CONFIGSHELL_FB_VERSION)) +PYTHON_CONFIGSHELL_FB_SITE = $(call github,open-iscsi,configshell-fb,$(PYTHON_CONFIGSHELL_FB_VERSION)) PYTHON_CONFIGSHELL_FB_LICENSE = Apache-2.0 PYTHON_CONFIGSHELL_FB_LICENSE_FILES = COPYING PYTHON_CONFIGSHELL_FB_SETUP_TYPE = setuptools diff --git a/package/python-constantly/Config.in b/package/python-constantly/Config.in new file mode 100644 index 0000000000..13bb2e86d0 --- /dev/null +++ b/package/python-constantly/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_CONSTANTLY + bool "python-constantly" + help + A library that provides symbolic constant support. It + includes collections and constants with text, numeric, + and bit flag values. + + https://github.com/twisted/constantly diff --git a/package/python-constantly/python-constantly.hash b/package/python-constantly/python-constantly.hash new file mode 100644 index 0000000000..fb7787709c --- /dev/null +++ b/package/python-constantly/python-constantly.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/constantly/json, sha256 locally computed +md5 f0762f083d83039758e53f8cf0086eef constantly-15.1.0.tar.gz +sha256 586372eb92059873e29eba4f9dec8381541b4d3834660707faf8ba59146dfc35 constantly-15.1.0.tar.gz diff --git a/package/python-constantly/python-constantly.mk b/package/python-constantly/python-constantly.mk new file mode 100644 index 0000000000..783d198d06 --- /dev/null +++ b/package/python-constantly/python-constantly.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-constantly +# +################################################################################ + +PYTHON_CONSTANTLY_VERSION = 15.1.0 +PYTHON_CONSTANTLY_SOURCE = constantly-$(PYTHON_CONSTANTLY_VERSION).tar.gz +PYTHON_CONSTANTLY_SITE = https://pypi.python.org/packages/95/f1/207a0a478c4bb34b1b49d5915e2db574cadc415c9ac3a7ef17e29b2e8951 +PYTHON_CONSTANTLY_SETUP_TYPE = setuptools +PYTHON_CONSTANTLY_LICENSE = MIT +PYTHON_CONSTANTLY_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-couchdb/Config.in b/package/python-couchdb/Config.in new file mode 100644 index 0000000000..9156883b38 --- /dev/null +++ b/package/python-couchdb/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_COUCHDB + bool "python-couchdb" + select BR2_PACKAGE_PYTHON_SSL if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_SSL if BR2_PACKAGE_PYTHON3 # runtime + help + Python client library for working with CouchDB. + + https://github.com/djc/couchdb-python/ diff --git a/package/python-couchdb/python-couchdb.hash b/package/python-couchdb/python-couchdb.hash new file mode 100644 index 0000000000..f9422a8ce7 --- /dev/null +++ b/package/python-couchdb/python-couchdb.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/couchdb/json, sha256 locally computed +md5 2ed5ad2a477fd3cb472ed6dc5a381ff3 CouchDB-1.1.tar.gz +sha256 9503ea413956c33b5e2af248235afb5e0f011f33f816a32e872f8ff9b0a0e710 CouchDB-1.1.tar.gz diff --git a/package/python-couchdb/python-couchdb.mk b/package/python-couchdb/python-couchdb.mk new file mode 100644 index 0000000000..c88787c1db --- /dev/null +++ b/package/python-couchdb/python-couchdb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-couchdb +# +################################################################################ + +PYTHON_COUCHDB_VERSION = 1.1 +PYTHON_COUCHDB_SOURCE = CouchDB-$(PYTHON_COUCHDB_VERSION).tar.gz +PYTHON_COUCHDB_SITE = https://pypi.python.org/packages/9a/e8/c3c8da6d00145aaca07f2b784794917613dad26532068da4e8392dc48d7f +PYTHON_COUCHDB_SETUP_TYPE = setuptools +PYTHON_COUCHDB_LICENSE = BSD-3c +PYTHON_COUCHDB_LICENSE_FILES = COPYING + +$(eval $(python-package)) diff --git a/package/python-crc16/python-crc16.hash b/package/python-crc16/python-crc16.hash new file mode 100644 index 0000000000..81b39a0376 --- /dev/null +++ b/package/python-crc16/python-crc16.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 10aeda70fbe8b284874b3b1b8f74b9c1f6d5e8dee20ac8f9d5bc49f45f12a42a python-crc16-0.1.1.tar.gz diff --git a/package/python-crcmod/Config.in b/package/python-crcmod/Config.in new file mode 100644 index 0000000000..289a3aee8b --- /dev/null +++ b/package/python-crcmod/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_CRCMOD + bool "python-crcmod" + help + The software in this package is a Python module for + generating objects that compute the Cyclic Redundancy + Check (CRC). + + http://crcmod.sourceforge.net/ diff --git a/package/python-crcmod/python-crcmod.hash b/package/python-crcmod/python-crcmod.hash new file mode 100644 index 0000000000..7ce549c302 --- /dev/null +++ b/package/python-crcmod/python-crcmod.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/crcmod/json, sha256 locally computed +md5 2d5b92117d958dcead94f9e17f54cd32 crcmod-1.7.tar.gz +sha256 dc7051a0db5f2bd48665a990d3ec1cc305a466a77358ca4492826f41f283601e crcmod-1.7.tar.gz diff --git a/package/python-crcmod/python-crcmod.mk b/package/python-crcmod/python-crcmod.mk new file mode 100644 index 0000000000..1aab7f5084 --- /dev/null +++ b/package/python-crcmod/python-crcmod.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-crcmod +# +################################################################################ + +PYTHON_CRCMOD_VERSION = 1.7 +PYTHON_CRCMOD_SOURCE = crcmod-$(PYTHON_CRCMOD_VERSION).tar.gz +PYTHON_CRCMOD_SITE = https://pypi.python.org/packages/6b/b0/e595ce2a2527e169c3bcd6c33d2473c1918e0b7f6826a043ca1245dd4e5b +PYTHON_CRCMOD_SETUP_TYPE = distutils +PYTHON_CRCMOD_LICENSE = MIT +PYTHON_CRCMOD_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch b/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch new file mode 100644 index 0000000000..fb8e4a2763 --- /dev/null +++ b/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch @@ -0,0 +1,29 @@ +From 9ab2b96c2ee679c6dcb387174be211db5d70fa97 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 1 May 2016 15:35:32 +0200 +Subject: [PATCH] Avoid intentional syntax error + +This file has an intentional syntax error, meant to validate QA, but +it breaks byte compilation of this package. + +Issue reported upstream: +https://github.com/crossbario/crossbar/issues/750. + +Signed-off-by: Thomas Petazzoni +--- + crossbar/worker/test/examples/syntaxerror.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/crossbar/worker/test/examples/syntaxerror.py b/crossbar/worker/test/examples/syntaxerror.py +index a5947cc..585c995 100644 +--- a/crossbar/worker/test/examples/syntaxerror.py ++++ b/crossbar/worker/test/examples/syntaxerror.py +@@ -29,5 +29,3 @@ + ##################################################################################### + + from __future__ import absolute_import, division +- +-class # noqa +-- +2.7.4 + diff --git a/package/python-crossbar/Config.in b/package/python-crossbar/Config.in index 4e613db0df..7ef1aadbc9 100644 --- a/package/python-crossbar/Config.in +++ b/package/python-crossbar/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_CROSSBAR bool "python-crossbar" + depends on !BR2_TOOLCHAIN_USES_MUSL # python-psutil # All the following dependencies are runtime dependencies select BR2_PACKAGE_PYTHON_AUTOBAHN select BR2_PACKAGE_PYTHON_CBOR @@ -9,7 +10,6 @@ config BR2_PACKAGE_PYTHON_CROSSBAR select BR2_PACKAGE_PYTHON_JINJA2 select BR2_PACKAGE_PYTHON_LMDB select BR2_PACKAGE_PYTHON_MISTUNE - select BR2_PACKAGE_PYTHON_MSGPACK select BR2_PACKAGE_PYTHON_NETADDR select BR2_PACKAGE_PYTHON_PSUTIL select BR2_PACKAGE_PYTHON_PYASN @@ -20,6 +20,7 @@ config BR2_PACKAGE_PYTHON_CROSSBAR select BR2_PACKAGE_PYTHON_PYOPENSSL select BR2_PACKAGE_PYTHON_PYTRIE select BR2_PACKAGE_PYTHON_PYYAML + select BR2_PACKAGE_PYTHON_SDNOTIFY select BR2_PACKAGE_PYTHON_SETUPTOOLS select BR2_PACKAGE_PYTHON_SERVICE_IDENTITY select BR2_PACKAGE_PYTHON_SETPROCTITLE @@ -27,10 +28,11 @@ config BR2_PACKAGE_PYTHON_CROSSBAR select BR2_PACKAGE_PYTHON_SHUTILWHICH if BR2_PACKAGE_PYTHON select BR2_PACKAGE_PYTHON_TREQ select BR2_PACKAGE_PYTHON_TWISTED - select BR2_PACKAGE_PYTHON_UJSON + select BR2_PACKAGE_PYTHON_U_MSGPACK + select BR2_PACKAGE_PYTHON_UBJSON + select BR2_PACKAGE_PYTHON_WATCHDOG select BR2_PACKAGE_PYTHON_WSACCEL - depends on BR2_INSTALL_LIBSTDCPP # python-msgpack -> msgpack - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # python-msgpack -> msgpack + depends on BR2_INSTALL_LIBSTDCPP # python-pyasn help Crossbar.io is an open-source WAMP application router that allows to build advanced applications from loosely-coupled @@ -38,6 +40,5 @@ config BR2_PACKAGE_PYTHON_CROSSBAR https://pypi.python.org/pypi/crossbar -comment "python-crossbar needs a toolchain w/ C++" - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_INSTALL_LIBSTDCPP +comment "python-crossbar needs a uClibc or glibc toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/python-crossbar/python-crossbar.hash b/package/python-crossbar/python-crossbar.hash index 0690e56d51..a500bcf69f 100644 --- a/package/python-crossbar/python-crossbar.hash +++ b/package/python-crossbar/python-crossbar.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=cbe9b62a1ec2eebbc0cd0cef887a4993, sha256 locally computed. -md5 cbe9b62a1ec2eebbc0cd0cef887a4993 crossbar-0.12.1.tar.gz -sha256 4919e683bcfa3c633da8207f24189fd196ef8412b647f0365cf74c0bff8b4ada crossbar-0.12.1.tar.gz +# md5 from https://pypi.python.org/pypi/crossbar/json, sha256 locally computed. +md5 516478cc368503a0a0babc1dc28c5085 crossbar-0.14.0.tar.gz +sha256 6242ef34c56061850743d750d042993590ca7ec8ebe7b28c21ed05bb0904d71b crossbar-0.14.0.tar.gz diff --git a/package/python-crossbar/python-crossbar.mk b/package/python-crossbar/python-crossbar.mk index 96bc2544f9..3d82d77043 100644 --- a/package/python-crossbar/python-crossbar.mk +++ b/package/python-crossbar/python-crossbar.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CROSSBAR_VERSION = 0.12.1 +PYTHON_CROSSBAR_VERSION = 0.14.0 PYTHON_CROSSBAR_SOURCE = crossbar-$(PYTHON_CROSSBAR_VERSION).tar.gz -PYTHON_CROSSBAR_SITE = http://pypi.python.org/packages/source/c/crossbar +PYTHON_CROSSBAR_SITE = https://pypi.python.org/packages/f0/9a/e0b77e15698c47b6293655bc0e1996dd8e87bd8af7bc7434a5c8281a024e PYTHON_CROSSBAR_LICENSE = AGPLv3 PYTHON_CROSSBAR_LICENSE_FILES = LICENSE PYTHON_CROSSBAR_SETUP_TYPE = setuptools diff --git a/package/python-cryptography/python-cryptography.hash b/package/python-cryptography/python-cryptography.hash index fa15fa0583..7738d23490 100644 --- a/package/python-cryptography/python-cryptography.hash +++ b/package/python-cryptography/python-cryptography.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi?:action=show_md5&digest=bc8148d2ff2d80fef8ef2d2e856b3a7f -md5 bc8148d2ff2d80fef8ef2d2e856b3a7f cryptography-1.3.1.tar.gz -# Calculated based on the hash above -sha256 b4b36175e0f95ddc88435c26dbe3397edce48e2ff5fe41d504cdb3beddcd53e2 cryptography-1.3.1.tar.gz +# md5 from https://pypi.python.org/pypi/cryptography/json, sha256 locally computed +md5 2f63dee6ace602d1d20d1995f8538015 cryptography-1.7.1.tar.gz +sha256 953fef7d40a49a795f4d955c5ce4338abcec5dea822ed0414ed30348303fdb4c cryptography-1.7.1.tar.gz diff --git a/package/python-cryptography/python-cryptography.mk b/package/python-cryptography/python-cryptography.mk index 1b5eb9ca84..d4e18ec152 100644 --- a/package/python-cryptography/python-cryptography.mk +++ b/package/python-cryptography/python-cryptography.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CRYPTOGRAPHY_VERSION = 1.3.1 +PYTHON_CRYPTOGRAPHY_VERSION = 1.7.1 PYTHON_CRYPTOGRAPHY_SOURCE = cryptography-$(PYTHON_CRYPTOGRAPHY_VERSION).tar.gz -PYTHON_CRYPTOGRAPHY_SITE = https://pypi.python.org/packages/source/c/cryptography +PYTHON_CRYPTOGRAPHY_SITE = https://pypi.python.org/packages/82/f7/d6dfd7595910a20a563a83a762bf79a253c4df71759c3b228accb3d7e5e4 PYTHON_CRYPTOGRAPHY_SETUP_TYPE = setuptools PYTHON_CRYPTOGRAPHY_LICENSE = Apache-2.0 or BSD-3c PYTHON_CRYPTOGRAPHY_LICENSE_FILES = LICENSE LICENSE.APACHE LICENSE.BSD diff --git a/package/python-cssselect/python-cssselect.hash b/package/python-cssselect/python-cssselect.hash index 08c81e519b..d3ee055a7e 100644 --- a/package/python-cssselect/python-cssselect.hash +++ b/package/python-cssselect/python-cssselect.hash @@ -1,4 +1,4 @@ # md5 from https://pypi.python.org/pypi/cssselect/json -md5 c74f45966277dc7a0f768b9b0f3522ac cssselect-0.9.1.tar.gz -# sha256 calculated by scanpypi -sha256 0535a7e27014874b27ae3a4d33e8749e345bdfa62766195208b7996bf1100682 cssselect-0.9.1.tar.gz +md5 4c5931d8456dfe72fa4662f9c0509bfa cssselect-0.9.2.tar.gz +# sha256 locally computed +sha256 713b5b99ef08022257b3409c7ae1b18b2c6536b3f155e6237c5cfba0f67ae6f5 cssselect-0.9.2.tar.gz diff --git a/package/python-cssselect/python-cssselect.mk b/package/python-cssselect/python-cssselect.mk index c6b476b8a7..0db69b967d 100644 --- a/package/python-cssselect/python-cssselect.mk +++ b/package/python-cssselect/python-cssselect.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CSSSELECT_VERSION = 0.9.1 +PYTHON_CSSSELECT_VERSION = 0.9.2 PYTHON_CSSSELECT_SOURCE = cssselect-$(PYTHON_CSSSELECT_VERSION).tar.gz -PYTHON_CSSSELECT_SITE = https://pypi.python.org/packages/source/c/cssselect +PYTHON_CSSSELECT_SITE = https://pypi.python.org/packages/11/21/47b5d2696a945da177d2344b6e330b7b0d1c52404063cb387d2261517ccb PYTHON_CSSSELECT_SETUP_TYPE = setuptools PYTHON_CSSSELECT_LICENSE = BSD-3c PYTHON_CSSSELECT_LICENSE_FILES = LICENSE diff --git a/package/python-cssutils/Config.in b/package/python-cssutils/Config.in new file mode 100644 index 0000000000..74de742c31 --- /dev/null +++ b/package/python-cssutils/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_CSSUTILS + bool "python-cssutils" + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime + help + A CSS Cascading Style Sheets library for Python. + + http://cthedot.de/cssutils/ diff --git a/package/python-cssutils/python-cssutils.hash b/package/python-cssutils/python-cssutils.hash new file mode 100644 index 0000000000..7b188bcd43 --- /dev/null +++ b/package/python-cssutils/python-cssutils.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/cssutils/json, sha256 locally computed +md5 7fcdf2c3e9f053136af1990146eb361d cssutils-1.0.1.tar.gz +sha256 d8a18b2848ea1011750231f1dd64fe9053dbec1be0b37563c582561e7a529063 cssutils-1.0.1.tar.gz diff --git a/package/python-cssutils/python-cssutils.mk b/package/python-cssutils/python-cssutils.mk new file mode 100644 index 0000000000..3dd501aa04 --- /dev/null +++ b/package/python-cssutils/python-cssutils.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-cssutils +# +################################################################################ + +PYTHON_CSSUTILS_VERSION = 1.0.1 +PYTHON_CSSUTILS_SOURCE = cssutils-$(PYTHON_CSSUTILS_VERSION).tar.gz +PYTHON_CSSUTILS_SITE = https://pypi.python.org/packages/22/de/6b03e0088baf0299ab7d2e95a9e26c2092e9cb3855876b958b6a62175ca2 +PYTHON_CSSUTILS_LICENSE = LGPLv3+ +PYTHON_CSSUTILS_LICENSE_FILES = COPYING.LESSER +PYTHON_CSSUTILS_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-daemon/Config.in b/package/python-daemon/Config.in index b3cc8a2d3e..21f4407452 100644 --- a/package/python-daemon/Config.in +++ b/package/python-daemon/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PYTHON_DAEMON bool "python-daemon" - depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_DOCUTILS # runtime help Library to implement a well-behaved Unix daemon process. diff --git a/package/python-daemon/python-daemon.hash b/package/python-daemon/python-daemon.hash new file mode 100644 index 0000000000..12977b5795 --- /dev/null +++ b/package/python-daemon/python-daemon.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=72e2acf2c3d69c7fa75a6625d06adfd0, sha256 locally computed +md5 72e2acf2c3d69c7fa75a6625d06adfd0 python-daemon-2.1.1.tar.gz +sha256 58a8c187ee37c3a28913bef00f83240c9ecd4a59dce09a24d92f5c941606689f python-daemon-2.1.1.tar.gz diff --git a/package/python-daemon/python-daemon.mk b/package/python-daemon/python-daemon.mk index b8b80baa7d..648d549ca8 100644 --- a/package/python-daemon/python-daemon.mk +++ b/package/python-daemon/python-daemon.mk @@ -4,10 +4,11 @@ # ################################################################################ -PYTHON_DAEMON_VERSION = 1.5.5 +PYTHON_DAEMON_VERSION = 2.1.1 PYTHON_DAEMON_SITE = https://pypi.python.org/packages/source/p/python-daemon -PYTHON_DAEMON_LICENSE = Python-2.0 (library), GPLv2+ (test) -PYTHON_DAEMON_LICENSE_FILES = LICENSE.PSF-2 LICENSE.GPL-2 +PYTHON_DAEMON_LICENSE = Apache-2.0 (library), GPLv3+ (test, build) +PYTHON_DAEMON_LICENSE_FILES = LICENSE.ASF-2 LICENSE.GPL-3 PYTHON_DAEMON_SETUP_TYPE = setuptools +PYTHON_DAEMON_DEPENDENCIES = host-python-docutils $(eval $(python-package)) diff --git a/package/python-dataproperty/Config.in b/package/python-dataproperty/Config.in new file mode 100644 index 0000000000..7ef7f085be --- /dev/null +++ b/package/python-dataproperty/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_DATAPROPERTY + bool "python-dataproperty" + select BR2_PACKAGE_PYTHON_MBSTRDECODER # runtime + select BR2_PACKAGE_PYTHON_DATEUTIL # runtime + select BR2_PACKAGE_PYTHON_PYTZ # runtime + select BR2_PACKAGE_PYTHON_SIX # runtime + help + Python library for extract property from data. + + https://github.com/thombashi/DataProperty diff --git a/package/python-dataproperty/python-dataproperty.hash b/package/python-dataproperty/python-dataproperty.hash new file mode 100644 index 0000000000..d84b21458a --- /dev/null +++ b/package/python-dataproperty/python-dataproperty.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/dataproperty/json, sha256 locally computed +md5 a05cb97210d41677bde224b53562add4 DataProperty-0.16.2.tar.gz +sha256 c2c6e1f2558bf03b0f8f2dc53a5eb00d9540babd3d69d299be878f2e32937e53 DataProperty-0.16.2.tar.gz diff --git a/package/python-dataproperty/python-dataproperty.mk b/package/python-dataproperty/python-dataproperty.mk new file mode 100644 index 0000000000..997019c72d --- /dev/null +++ b/package/python-dataproperty/python-dataproperty.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-dataproperty +# +################################################################################ + +PYTHON_DATAPROPERTY_VERSION = 0.16.2 +PYTHON_DATAPROPERTY_SOURCE = DataProperty-$(PYTHON_DATAPROPERTY_VERSION).tar.gz +PYTHON_DATAPROPERTY_SITE = https://pypi.python.org/packages/c8/95/4803e558a7e29ccf3adbf8f993ec53fe28c46df450892c4cc35c2f0ccedc +PYTHON_DATAPROPERTY_SETUP_TYPE = setuptools +PYTHON_DATAPROPERTY_LICENSE = MIT +PYTHON_DATAPROPERTY_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-dateutil/Config.in b/package/python-dateutil/Config.in new file mode 100644 index 0000000000..56a1d838f7 --- /dev/null +++ b/package/python-dateutil/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_DATEUTIL + bool "python-dateutil" + select BR2_PACKAGE_PYTHON_SIX + help + Extensions to the standard Python datetime module. + + https://dateutil.readthedocs.org diff --git a/package/python-dateutil/python-dateutil.hash b/package/python-dateutil/python-dateutil.hash new file mode 100644 index 0000000000..adc24bdd16 --- /dev/null +++ b/package/python-dateutil/python-dateutil.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/python-dateutil/json, sha256 locally computed +md5 6e38f91e8c94c15a79ce22768dfeca87 python-dateutil-2.6.0.tar.gz +sha256 62a2f8df3d66f878373fd0072eacf4ee52194ba302e00082828e0d263b0418d2 python-dateutil-2.6.0.tar.gz diff --git a/package/python-dateutil/python-dateutil.mk b/package/python-dateutil/python-dateutil.mk new file mode 100644 index 0000000000..b1f5e68b8f --- /dev/null +++ b/package/python-dateutil/python-dateutil.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-dateutil +# +################################################################################ + +PYTHON_DATEUTIL_VERSION = 2.6.0 +PYTHON_DATEUTIL_SITE = https://pypi.python.org/packages/51/fc/39a3fbde6864942e8bb24c93663734b74e281b984d1b8c4f95d64b0c21f6 +PYTHON_DATEUTIL_SETUP_TYPE = setuptools +PYTHON_DATEUTIL_LICENSE = BSD-3c +PYTHON_DATEUTIL_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-dialog3/Config.in b/package/python-dialog3/Config.in new file mode 100644 index 0000000000..cd0760854b --- /dev/null +++ b/package/python-dialog3/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_DIALOG3 + bool "python-dialog3" + depends on BR2_PACKAGE_PYTHON3 + depends on BR2_USE_MMU # dialog + select BR2_PACKAGE_DIALOG + help + A Python 3 only interface to the UNIX dialog utility and + mostly-compatible programs. + + http://pythondialog.sourceforge.net/ diff --git a/package/python-dialog3/python-dialog3.hash b/package/python-dialog3/python-dialog3.hash new file mode 100644 index 0000000000..dae863b76a --- /dev/null +++ b/package/python-dialog3/python-dialog3.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pythondialog/json, sha256 locally computed +md5 3d5ebc33e85f6313964f5eef720dab19 pythondialog-3.4.0.tar.bz2 +sha256 019cdbffe3f61d32d6fb158ce48a767478af2aac2f31fb40460b39aefae604fe pythondialog-3.4.0.tar.bz2 diff --git a/package/python-dialog3/python-dialog3.mk b/package/python-dialog3/python-dialog3.mk new file mode 100644 index 0000000000..abc4a395ce --- /dev/null +++ b/package/python-dialog3/python-dialog3.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-dialog3 +# +################################################################################ + +PYTHON_DIALOG3_VERSION = 3.4.0 +PYTHON_DIALOG3_SOURCE = pythondialog-$(PYTHON_DIALOG3_VERSION).tar.bz2 +PYTHON_DIALOG3_SITE = https://pypi.python.org/packages/fa/f4/686742f01ebb5863d4c5e1acab620acfed0fe97280a26b4ed25917f4f333 +PYTHON_DIALOG3_LICENSE = LGPLv2.1+ +PYTHON_DIALOG3_LICENSE_FILES = COPYING +PYTHON_DIALOG3_SETUP_TYPE = distutils +PYTHON_DIALOG3_DEPENDENCIES = dialog + +$(eval $(python-package)) diff --git a/package/python-dicttoxml/Config.in b/package/python-dicttoxml/Config.in new file mode 100644 index 0000000000..152afbb6bf --- /dev/null +++ b/package/python-dicttoxml/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_DICTTOXML + bool "python-dicttoxml" + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 + help + Converts a Python dictionary or other native data type into a valid + XML string. + + https://github.com/quandyfactory/dicttoxml diff --git a/package/python-dicttoxml/python-dicttoxml.hash b/package/python-dicttoxml/python-dicttoxml.hash new file mode 100644 index 0000000000..32ba6b0fd0 --- /dev/null +++ b/package/python-dicttoxml/python-dicttoxml.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/dicttoxml/json, sha256 locally computed +md5 ec5643a048cf32dad3c28db236b923e4 dicttoxml-1.7.4.tar.gz +sha256 ea44cc4ec6c0f85098c57a431a1ee891b3549347b07b7414c8a24611ecf37e45 dicttoxml-1.7.4.tar.gz diff --git a/package/python-dicttoxml/python-dicttoxml.mk b/package/python-dicttoxml/python-dicttoxml.mk new file mode 100644 index 0000000000..6976715002 --- /dev/null +++ b/package/python-dicttoxml/python-dicttoxml.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-dicttoxml +# +################################################################################ + +PYTHON_DICTTOXML_VERSION = 1.7.4 +PYTHON_DICTTOXML_SOURCE = dicttoxml-$(PYTHON_DICTTOXML_VERSION).tar.gz +PYTHON_DICTTOXML_SITE = https://pypi.python.org/packages/74/36/534db111db9e7610a41641a1f6669a964aacaf51858f466de264cc8dcdd9 +PYTHON_DICTTOXML_SETUP_TYPE = distutils +PYTHON_DICTTOXML_LICENSE = GPLv2 +PYTHON_DICTTOXML_LICENSE_FILES = LICENCE.txt + +$(eval $(python-package)) diff --git a/package/python-django/python-django.hash b/package/python-django/python-django.hash index f51c9b4741..38b303bbf6 100644 --- a/package/python-django/python-django.hash +++ b/package/python-django/python-django.hash @@ -1,2 +1,3 @@ -# sha256 from https://www.djangoproject.com/m/pgp/Django-1.7.3.checksum.txt -sha256 f226fb8aa438456968d403f6739de1cf2dad128db86f66ee2b41dfebe3645c5b Django-1.7.3.tar.gz +# md5 from https://pypi.python.org/pypi/django/json, sha256 locally computed +md5 5342e77374b2acd2eafa86d2bb68f8c9 Django-1.10.2.tar.gz +sha256 e127f12a0bfb34843b6e8c82f91e26fff6445a7ca91d222c0794174cf97cbce1 Django-1.10.2.tar.gz diff --git a/package/python-django/python-django.mk b/package/python-django/python-django.mk index b67bce4504..2a502314c6 100644 --- a/package/python-django/python-django.mk +++ b/package/python-django/python-django.mk @@ -4,10 +4,10 @@ # ################################################################################ -PYTHON_DJANGO_VERSION = 1.7.3 +PYTHON_DJANGO_VERSION = 1.10.2 PYTHON_DJANGO_SOURCE = Django-$(PYTHON_DJANGO_VERSION).tar.gz # The official Django site has an unpractical URL -PYTHON_DJANGO_SITE = https://pypi.python.org/packages/source/D/Django +PYTHON_DJANGO_SITE = https://pypi.python.org/packages/57/9e/59444485f092b6ed4f1931e7d2e13b67fdab967c041d02f58a0d1dab8c23 PYTHON_DJANGO_LICENSE = BSD-3c PYTHON_DJANGO_LICENSE_FILES = LICENSE PYTHON_DJANGO_SETUP_TYPE = setuptools diff --git a/package/python-docopt/python-docopt.hash b/package/python-docopt/python-docopt.hash new file mode 100644 index 0000000000..c38e1ab737 --- /dev/null +++ b/package/python-docopt/python-docopt.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 2113eed1e7fbbcd43fb7ee6a977fb02d0b482753586c9dc1a8e3b7d541426e99 python-docopt-0.6.2.tar.gz diff --git a/package/python-docutils/Config.in b/package/python-docutils/Config.in new file mode 100644 index 0000000000..e7bf7e6321 --- /dev/null +++ b/package/python-docutils/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_DOCUTILS + bool "python-docutils" + help + Docutils is a modular system for processing documentation + into useful formats, such as HTML, XML, and LaTeX. For input + Docutils supports reStructuredText, an easy-to-read, + what-you-see-is-what-you-get plaintext markup syntax. + + http://docutils.sourceforge.net/ diff --git a/package/python-docutils/python-docutils.hash b/package/python-docutils/python-docutils.hash new file mode 100644 index 0000000000..9d45058f1a --- /dev/null +++ b/package/python-docutils/python-docutils.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/docutils/json, sha256 locally computed +md5 4622263b62c5c771c03502afa3157768 docutils-0.12.tar.gz +sha256 c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb89596fa docutils-0.12.tar.gz diff --git a/package/python-docutils/python-docutils.mk b/package/python-docutils/python-docutils.mk new file mode 100644 index 0000000000..a67d89fad1 --- /dev/null +++ b/package/python-docutils/python-docutils.mk @@ -0,0 +1,15 @@ +############################################################# +# +# python-docutils +# +############################################################# + +PYTHON_DOCUTILS_VERSION = 0.12 +PYTHON_DOCUTILS_SOURCE = docutils-$(PYTHON_DOCUTILS_VERSION).tar.gz +PYTHON_DOCUTILS_SITE = https://pypi.python.org/packages/37/38/ceda70135b9144d84884ae2fc5886c6baac4edea39550f28bcd144c1234d +PYTHON_DOCUTILS_LICENSE = Public Domain, BSD-2c, GPLv3 (emacs mode), other +PYTHON_DOCUTILS_LICENSE_FILES = COPYING.txt +PYTHON_DOCUTILS_SETUP_TYPE = distutils + +$(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/package/python-dominate/Config.in b/package/python-dominate/Config.in new file mode 100644 index 0000000000..35e9a0c85f --- /dev/null +++ b/package/python-dominate/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_DOMINATE + bool "python-dominate" + help + Dominate is a Python library for creating and manipulating + HTML documents using an elegant DOM API. + + http://github.com/Knio/dominate/ diff --git a/package/python-dominate/python-dominate.hash b/package/python-dominate/python-dominate.hash new file mode 100644 index 0000000000..2480b004be --- /dev/null +++ b/package/python-dominate/python-dominate.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/dominate/json, sha256 locally computed +md5 45bd97e6f7888aac24ae86013c57638e dominate-2.3.1.tar.gz +sha256 4b8ce6f33633c9dd9175b228d21c00c801b6bd0327747cd5e17fc2da934c3a69 dominate-2.3.1.tar.gz diff --git a/package/python-dominate/python-dominate.mk b/package/python-dominate/python-dominate.mk new file mode 100644 index 0000000000..3e264caa7d --- /dev/null +++ b/package/python-dominate/python-dominate.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-dominate +# +################################################################################ + +PYTHON_DOMINATE_VERSION = 2.3.1 +PYTHON_DOMINATE_SOURCE = dominate-$(PYTHON_DOMINATE_VERSION).tar.gz +PYTHON_DOMINATE_SITE = https://pypi.python.org/packages/43/b2/3b7d67dd59dab93ae08569384b254323516e8868b453eea5614a53835baf +PYTHON_DOMINATE_SETUP_TYPE = setuptools +PYTHON_DOMINATE_LICENSE = LGPLv3+ +PYTHON_DOMINATE_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-dpkt/python-dpkt.hash b/package/python-dpkt/python-dpkt.hash new file mode 100644 index 0000000000..db46016d08 --- /dev/null +++ b/package/python-dpkt/python-dpkt.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 33a98fd44eb0b6dfa6790c0fcef4d7e73a5cc12a664ea3c30f4d3c2b95f5efc4 python-dpkt-1.8.r98.tar.gz diff --git a/package/python-engineio/Config.in b/package/python-engineio/Config.in new file mode 100644 index 0000000000..b12db922a2 --- /dev/null +++ b/package/python-engineio/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_ENGINEIO + bool "python-engineio" + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 + help + Engine.IO server. + + http://github.com/miguelgrinberg/python-engineio/ diff --git a/package/python-engineio/python-engineio.hash b/package/python-engineio/python-engineio.hash new file mode 100644 index 0000000000..b2c0669bcc --- /dev/null +++ b/package/python-engineio/python-engineio.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/python-engineio/json +md5 9b0075dbbb25d7a302eba99dd9ba4af8 python-engineio-0.9.2.tar.gz +# sha256 calculated by scanpypi +sha256 c53282415ed9bc3cb4e7beafb2a1ce5c369af95dcf8f968061e5bc7572b60867 python-engineio-0.9.2.tar.gz diff --git a/package/python-engineio/python-engineio.mk b/package/python-engineio/python-engineio.mk new file mode 100644 index 0000000000..61d5da9aff --- /dev/null +++ b/package/python-engineio/python-engineio.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-engineio +# +################################################################################ + +PYTHON_ENGINEIO_VERSION = 0.9.2 +PYTHON_ENGINEIO_SITE = https://pypi.python.org/packages/c3/8f/0e066fc7a7029893b96b1d68a0cd5e75f6410f154fa4079b2be4991f5ae0 +PYTHON_ENGINEIO_SETUP_TYPE = setuptools +PYTHON_ENGINEIO_LICENSE = MIT +PYTHON_ENGINEIO_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-flask-babel/Config.in b/package/python-flask-babel/Config.in new file mode 100644 index 0000000000..61fd2c0570 --- /dev/null +++ b/package/python-flask-babel/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PYTHON_FLASK_BABEL + bool "python-flask-babel" + select BR2_PACKAGE_PYTHON_FLASK # runtime + select BR2_PACKAGE_PYTHON_BABEL # runtime + help + Flask-Babel is an extension to Flask that adds i18n and l10n + support to any Flask application with the help of babel, + pytz and speaklater. It has builtin support for date + formatting with timezone support as well as a very simple + and friendly interface to gettext translations. + + https://pythonhosted.org/Flask-Babel/ diff --git a/package/python-flask-babel/python-flask-babel.hash b/package/python-flask-babel/python-flask-babel.hash new file mode 100644 index 0000000000..c4420e4a99 --- /dev/null +++ b/package/python-flask-babel/python-flask-babel.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/Flask-Babel/json, sha256 locally computed +md5 658e84a20ddc545a7612144fe2c758d3 Flask-Babel-0.11.1.tar.gz +sha256 d29b36c399e42e98bc9401c8c1c159f2befcb8c12a2a2a87ec49ad7623036899 Flask-Babel-0.11.1.tar.gz diff --git a/package/python-flask-babel/python-flask-babel.mk b/package/python-flask-babel/python-flask-babel.mk new file mode 100644 index 0000000000..35d34d1ced --- /dev/null +++ b/package/python-flask-babel/python-flask-babel.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-flask-babel +# +################################################################################ + +PYTHON_FLASK_BABEL_VERSION = 0.11.1 +PYTHON_FLASK_BABEL_SOURCE = Flask-Babel-$(PYTHON_FLASK_BABEL_VERSION).tar.gz +PYTHON_FLASK_BABEL_SITE = https://pypi.python.org/packages/47/96/6013d4091fb4238e27e918aec4929f082942fa8c9489ae3aad2f18de4b5b +PYTHON_FLASK_BABEL_LICENSE = BSD-3c +PYTHON_FLASK_BABEL_SETUP_TYPE = setuptools +PYTHON_FLASK_BABEL_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-flask-jsonrpc/Config.in b/package/python-flask-jsonrpc/Config.in new file mode 100644 index 0000000000..c8ecd854b3 --- /dev/null +++ b/package/python-flask-jsonrpc/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_FLASK_JSONRPC + bool "python-flask-jsonrpc" + # runtime dependency + select BR2_PACKAGE_PYTHON_FLASK + help + A basic JSON-RPC implementation for your Flask-powered sites. + + https://github.com/cenobites/flask-jsonrpc diff --git a/package/python-flask-jsonrpc/python-flask-jsonrpc.hash b/package/python-flask-jsonrpc/python-flask-jsonrpc.hash new file mode 100644 index 0000000000..a25fbb7294 --- /dev/null +++ b/package/python-flask-jsonrpc/python-flask-jsonrpc.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/flask-jsonrpc/json, sha256 locally computed +md5 5c0592f53b2f18e34d5be435acee8842 Flask-JSONRPC-0.3.1.tar.gz +sha256 4d0cc9c20874093306af91f5a48009fb8659a041428dcdb11703598ffbbc97d0 Flask-JSONRPC-0.3.1.tar.gz diff --git a/package/python-flask-jsonrpc/python-flask-jsonrpc.mk b/package/python-flask-jsonrpc/python-flask-jsonrpc.mk new file mode 100644 index 0000000000..ade39e1b3e --- /dev/null +++ b/package/python-flask-jsonrpc/python-flask-jsonrpc.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-flask-jsonrpc +# +################################################################################ + +PYTHON_FLASK_JSONRPC_VERSION = 0.3.1 +PYTHON_FLASK_JSONRPC_SOURCE = Flask-JSONRPC-$(PYTHON_FLASK_JSONRPC_VERSION).tar.gz +PYTHON_FLASK_JSONRPC_SITE = https://pypi.python.org/packages/cb/1f/e6d66e8498609ba04bac76155b2ea884df95531e93501bf4ef009d40a83c +PYTHON_FLASK_JSONRPC_LICENSE = BSD-3c +PYTHON_FLASK_JSONRPC_LICENSE_FILES = setup.py +PYTHON_FLASK_JSONRPC_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-flask-login/Config.in b/package/python-flask-login/Config.in new file mode 100644 index 0000000000..88c413e2a2 --- /dev/null +++ b/package/python-flask-login/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_FLASK_LOGIN + bool "python-flask-login" + # runtime dependency + select BR2_PACKAGE_PYTHON_FLASK + help + Flask-Login provides user session management for Flask. + + https://github.com/maxcountryman/flask-login diff --git a/package/python-flask-login/python-flask-login.hash b/package/python-flask-login/python-flask-login.hash new file mode 100644 index 0000000000..c488a35e24 --- /dev/null +++ b/package/python-flask-login/python-flask-login.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/Flask-Login/0.3.2, sha256 locally computed: +md5 d95c2275d3e1c755145910077366dc45 Flask-Login-0.3.2.tar.gz +sha256 e72eff5c35e5a31db1aeca1db5d2501be702674ea88e8f223b5d2b11644beee6 Flask-Login-0.3.2.tar.gz diff --git a/package/python-flask-login/python-flask-login.mk b/package/python-flask-login/python-flask-login.mk new file mode 100644 index 0000000000..aa6d8e3de5 --- /dev/null +++ b/package/python-flask-login/python-flask-login.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-flask-login +# +################################################################################ + +PYTHON_FLASK_LOGIN_VERSION = 0.3.2 +PYTHON_FLASK_LOGIN_SOURCE = Flask-Login-$(PYTHON_FLASK_LOGIN_VERSION).tar.gz +PYTHON_FLASK_LOGIN_SITE = http://pypi.python.org/packages/source/F/Flask-Login +PYTHON_FLASK_LOGIN_LICENSE = MIT +PYTHON_FLASK_LOGIN_LICENSE_FILES = LICENSE +PYTHON_FLASK_LOGIN_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-flask/Config.in b/package/python-flask/Config.in index 4a955c4585..6f77913ed1 100644 --- a/package/python-flask/Config.in +++ b/package/python-flask/Config.in @@ -1,8 +1,11 @@ config BR2_PACKAGE_PYTHON_FLASK bool "python-flask" - select BR2_PACKAGE_PYTHON_WERKZEUG - select BR2_PACKAGE_PYTHON_JINJA2 - select BR2_PACKAGE_PYTHON_ITSDANGEROUS + select BR2_PACKAGE_PYTHON_CLICK # runtime + select BR2_PACKAGE_PYTHON_JINJA2 # runtime + select BR2_PACKAGE_PYTHON_WERKZEUG # runtime + select BR2_PACKAGE_PYTHON_ITSDANGEROUS # runtime + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 help Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions. diff --git a/package/python-flask/python-flask.hash b/package/python-flask/python-flask.hash index 55d0a5c584..919b075989 100644 --- a/package/python-flask/python-flask.hash +++ b/package/python-flask/python-flask.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=378670fe456957eb3c27ddaef60b2b24, sha256 locally computed -md5 378670fe456957eb3c27ddaef60b2b24 Flask-0.10.1.tar.gz -sha256 4c83829ff83d408b5e1d4995472265411d2c414112298f2eb4b359d9e4563373 Flask-0.10.1.tar.gz +# md5 from https://pypi.python.org/pypi/flask/json, sha256 locally computed +md5 c1d30f51cff4a38f9454b23328a15c5a Flask-0.12.tar.gz +sha256 93e803cdbe326a61ebd5c5d353959397c85f829bec610d59cb635c9f97d7ca8b Flask-0.12.tar.gz diff --git a/package/python-flask/python-flask.mk b/package/python-flask/python-flask.mk index 8aa675e2fb..6c25a6d144 100644 --- a/package/python-flask/python-flask.mk +++ b/package/python-flask/python-flask.mk @@ -4,12 +4,11 @@ # ################################################################################ -PYTHON_FLASK_VERSION = 0.10.1 +PYTHON_FLASK_VERSION = 0.12 PYTHON_FLASK_SOURCE = Flask-$(PYTHON_FLASK_VERSION).tar.gz -PYTHON_FLASK_SITE = http://pypi.python.org/packages/source/F/Flask +PYTHON_FLASK_SITE = https://pypi.python.org/packages/4b/3a/4c20183df155dd2e39168e35d53a388efb384a512ca6c73001d8292c094a PYTHON_FLASK_SETUP_TYPE = setuptools PYTHON_FLASK_LICENSE = BSD-3c PYTHON_FLASK_LICENSE_FILES = LICENSE -PYTHON_FLASK_DEPENDENCIES = python-werkzeug python-jinja2 python-itsdangerous $(eval $(python-package)) diff --git a/package/python-futures/Config.in b/package/python-futures/Config.in new file mode 100644 index 0000000000..2eb40e93bd --- /dev/null +++ b/package/python-futures/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_FUTURES + bool "python-futures" + depends on BR2_PACKAGE_PYTHON # not needed for python3 + help + Backport of the concurrent.futures package from Python 3.2. + + https://github.com/agronholm/pythonfutures diff --git a/package/python-futures/python-futures.hash b/package/python-futures/python-futures.hash new file mode 100644 index 0000000000..f0948ae4e2 --- /dev/null +++ b/package/python-futures/python-futures.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/futures/json, sha256 locally computed +md5 ced2c365e518242512d7a398b515ff95 futures-3.0.5.tar.gz +sha256 0542525145d5afc984c88f914a0c85c77527f65946617edb5274f72406f981df futures-3.0.5.tar.gz diff --git a/package/python-futures/python-futures.mk b/package/python-futures/python-futures.mk new file mode 100644 index 0000000000..8a1afa3386 --- /dev/null +++ b/package/python-futures/python-futures.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-futures +# +################################################################################ + +PYTHON_FUTURES_VERSION = 3.0.5 +PYTHON_FUTURES_SOURCE = futures-$(PYTHON_FUTURES_VERSION).tar.gz +PYTHON_FUTURES_SITE = https://pypi.python.org/packages/55/db/97c1ca37edab586a1ae03d6892b6633d8eaa23b23ac40c7e5bbc55423c78 +PYTHON_FUTURES_SETUP_TYPE = setuptools +PYTHON_FUTURES_LICENSE = BSD-2c +PYTHON_FUTURES_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-gunicorn/Config.in b/package/python-gunicorn/Config.in new file mode 100644 index 0000000000..79cda3eaa6 --- /dev/null +++ b/package/python-gunicorn/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_PYTHON_GUNICORN + bool "python-gunicorn" + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime + select BR2_PACKAGE_PYTHON_SSL if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_SSL if BR2_PACKAGE_PYTHON3 # runtime + help + Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for + UNIX. It’s a pre-fork worker model ported from Ruby’s + Unicorn project. The Gunicorn server is broadly compatible + with various web frameworks, simply implemented, light on + server resource usage, and fairly speedy. + + http://gunicorn.org/ diff --git a/package/python-gunicorn/python-gunicorn.hash b/package/python-gunicorn/python-gunicorn.hash new file mode 100644 index 0000000000..a282bc995d --- /dev/null +++ b/package/python-gunicorn/python-gunicorn.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/gunicorn/json, sha256 locally computed +md5 338e5e8a83ea0f0625f768dba4597530 gunicorn-19.6.0.tar.gz +sha256 813f6916d18a4c8e90efde72f419308b357692f81333cb1125f80013d22fb618 gunicorn-19.6.0.tar.gz diff --git a/package/python-gunicorn/python-gunicorn.mk b/package/python-gunicorn/python-gunicorn.mk new file mode 100644 index 0000000000..cfb7da110c --- /dev/null +++ b/package/python-gunicorn/python-gunicorn.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# python-gunicorn +# +################################################################################ + +PYTHON_GUNICORN_VERSION = 19.6.0 +PYTHON_GUNICORN_SOURCE = gunicorn-$(PYTHON_GUNICORN_VERSION).tar.gz +PYTHON_GUNICORN_SITE = https://pypi.python.org/packages/84/ce/7ea5396efad1cef682bbc4068e72a0276341d9d9d0f501da609fab9fcb80 +PYTHON_GUNICORN_SETUP_TYPE = setuptools +PYTHON_GUNICORN_LICENSE = MIT +PYTHON_GUNICORN_LICENSE_FILES = LICENSE + +# At the end of the build, we try to compile all py files using the host python +# that has been built. +# The GAIO HTTP Worker is only compatible with Python3.4.2 and up. So don't try +# to compile it with python 2.x +ifeq ($(BR2_PACKAGE_PYTHON),y) +define PYTHON_GUNICORN_REMOVE_GAIO_WORKER + find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/ \ + -name "_gaiohttp.py" -exec rm -f {} \; +endef +PYTHON_GUNICORN_POST_INSTALL_TARGET_HOOKS += PYTHON_GUNICORN_REMOVE_GAIO_WORKER +endif + +$(eval $(python-package)) diff --git a/package/python-html5lib/python-html5lib.hash b/package/python-html5lib/python-html5lib.hash index 0ec712a1e5..7ea082fa70 100644 --- a/package/python-html5lib/python-html5lib.hash +++ b/package/python-html5lib/python-html5lib.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=ef43cb05e9e799f25d65d1135838a96f, sha256 locally computed -md5 ef43cb05e9e799f25d65d1135838a96f html5lib-0.9999999.tar.gz -sha256 2612a191a8d5842bfa057e41ba50bbb9dcb722419d2408c78cff4758d0754868 html5lib-0.9999999.tar.gz +# md5 from https://pypi.python.org/pypi/html5lib/json, sha256 locally computed +md5 5ada1243b7a863624b2f35245b2186e9 html5lib-1.0b10.tar.gz +sha256 0d5fd54d5b2b79b876007a70c033a4023577768d18022c15681c00561432a0f9 html5lib-1.0b10.tar.gz diff --git a/package/python-html5lib/python-html5lib.mk b/package/python-html5lib/python-html5lib.mk index 93eef9a617..38affcbb4e 100644 --- a/package/python-html5lib/python-html5lib.mk +++ b/package/python-html5lib/python-html5lib.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_HTML5LIB_VERSION = 0.9999999 +PYTHON_HTML5LIB_VERSION = 1.0b10 PYTHON_HTML5LIB_SOURCE = html5lib-$(PYTHON_HTML5LIB_VERSION).tar.gz -PYTHON_HTML5LIB_SITE = https://pypi.python.org/packages/source/h/html5lib +PYTHON_HTML5LIB_SITE = https://pypi.python.org/packages/97/16/982214624095c1420c75f3bd295d9e658794aafb95fc075823de107e0ae4 PYTHON_HTML5LIB_LICENSE = MIT PYTHON_HTML5LIB_LICENSE_FILES = LICENSE -PYTHON_HTML5LIB_SETUP_TYPE = distutils +PYTHON_HTML5LIB_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-humanize/Config.in b/package/python-humanize/Config.in new file mode 100644 index 0000000000..f4f4e67b65 --- /dev/null +++ b/package/python-humanize/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_HUMANIZE + bool "python-humanize" + help + Python humanize package contains various common humanization + utilities, like turning a number into a fuzzy human readable + duration ('3 minutes ago') or into a human readable size or + throughput. + + http://github.com/jmoiron/humanize diff --git a/package/python-humanize/python-humanize.hash b/package/python-humanize/python-humanize.hash new file mode 100644 index 0000000000..bb66e44467 --- /dev/null +++ b/package/python-humanize/python-humanize.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/humanize/json, sha256 locally computed +md5 e8473d9dc1b220911cac2edd53b1d973 humanize-0.5.1.tar.gz +sha256 a43f57115831ac7c70de098e6ac46ac13be00d69abbf60bdcac251344785bb19 humanize-0.5.1.tar.gz diff --git a/package/python-humanize/python-humanize.mk b/package/python-humanize/python-humanize.mk new file mode 100644 index 0000000000..60ec82bd48 --- /dev/null +++ b/package/python-humanize/python-humanize.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-humanize +# +################################################################################ + +PYTHON_HUMANIZE_VERSION = 0.5.1 +PYTHON_HUMANIZE_SOURCE = humanize-$(PYTHON_HUMANIZE_VERSION).tar.gz +PYTHON_HUMANIZE_SITE = https://pypi.python.org/packages/8c/e0/e512e4ac6d091fc990bbe13f9e0378f34cf6eecd1c6c268c9e598dcf5bb9 +PYTHON_HUMANIZE_SETUP_TYPE = setuptools +PYTHON_HUMANIZE_LICENSE = MIT +PYTHON_HUMANIZE_LICENSE_FILES = LICENCE + +$(eval $(python-package)) diff --git a/package/python-incremental/Config.in b/package/python-incremental/Config.in new file mode 100644 index 0000000000..64f8623354 --- /dev/null +++ b/package/python-incremental/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_INCREMENTAL + bool "python-incremental" + help + A library for versioning your Python projects. + + https://github.com/hawkowl/incremental diff --git a/package/python-incremental/python-incremental.hash b/package/python-incremental/python-incremental.hash new file mode 100644 index 0000000000..580e76c7c2 --- /dev/null +++ b/package/python-incremental/python-incremental.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/incremental/json, sha256 locally computed +md5 3fe6b3b1da1d26a48187fb27e969f072 incremental-16.10.1.tar.gz +sha256 14ad6b720ec47aad6c9caa83e47db1843e2b9b98742da5dda08e16a99f400342 incremental-16.10.1.tar.gz diff --git a/package/python-incremental/python-incremental.mk b/package/python-incremental/python-incremental.mk new file mode 100644 index 0000000000..64eda68e85 --- /dev/null +++ b/package/python-incremental/python-incremental.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-incremental +# +################################################################################ + +PYTHON_INCREMENTAL_VERSION = 16.10.1 +PYTHON_INCREMENTAL_SOURCE = incremental-$(PYTHON_INCREMENTAL_VERSION).tar.gz +PYTHON_INCREMENTAL_SITE = https://pypi.python.org/packages/da/b0/32233c9e84b0d44b39015fba8fec03e88053723c1b455925081dc6ccd9e7 +PYTHON_INCREMENTAL_SETUP_TYPE = setuptools +PYTHON_INCREMENTAL_LICENSE = MIT +PYTHON_INCREMENTAL_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-ipaddress/python-ipaddress.hash b/package/python-ipaddress/python-ipaddress.hash index 21bc37318a..a7c3803fd8 100644 --- a/package/python-ipaddress/python-ipaddress.hash +++ b/package/python-ipaddress/python-ipaddress.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=12915e923b738107e47827478d553ba1, sha256 locally computed -md5 12915e923b738107e47827478d553ba1 ipaddress-1.0.15.tar.gz -sha256 af6c85cfc9cdb12b861655e6b9f2f59618bf3088cbde858727b2c0a98e9f6636 ipaddress-1.0.15.tar.gz +# md5 from https://pypi.python.org/pypi/ipaddress/json, sha256 locally computed +md5 8bbf0326719fafb1f453921ef96729fe ipaddress-1.0.17.tar.gz +sha256 3a21c5a15f433710aaa26f1ae174b615973a25182006ae7f9c26de151cd51716 ipaddress-1.0.17.tar.gz diff --git a/package/python-ipaddress/python-ipaddress.mk b/package/python-ipaddress/python-ipaddress.mk index 8019aa8a88..5ff70d48e0 100644 --- a/package/python-ipaddress/python-ipaddress.mk +++ b/package/python-ipaddress/python-ipaddress.mk @@ -4,10 +4,11 @@ # ################################################################################ -PYTHON_IPADDRESS_VERSION = 1.0.15 +PYTHON_IPADDRESS_VERSION = 1.0.17 PYTHON_IPADDRESS_SOURCE = ipaddress-$(PYTHON_IPADDRESS_VERSION).tar.gz -PYTHON_IPADDRESS_SITE = https://pypi.python.org/packages/source/i/ipaddress +PYTHON_IPADDRESS_SITE = https://pypi.python.org/packages/bb/26/3b64955ff73f9e3155079b9ed31812afdfa5333b5c76387454d651ef593a PYTHON_IPADDRESS_LICENSE = Python software foundation license +PYTHON_IPADDRESS_LICENSE_FILES = LICENSE PYTHON_IPADDRESS_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-ipy/python-ipy.hash b/package/python-ipy/python-ipy.hash new file mode 100644 index 0000000000..ed93448b1d --- /dev/null +++ b/package/python-ipy/python-ipy.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/ipy/json, sha256 locally computed +md5 7b8c6eb4111b15aea31b67108e769712 IPy-0.83.tar.gz +sha256 61da5a532b159b387176f6eabf11946e7458b6df8fb8b91ff1d345ca7a6edab8 IPy-0.83.tar.gz diff --git a/package/python-ipy/python-ipy.mk b/package/python-ipy/python-ipy.mk index 6773aafe44..ec0d0d7f39 100644 --- a/package/python-ipy/python-ipy.mk +++ b/package/python-ipy/python-ipy.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_IPY_VERSION = IPy-0.82a -PYTHON_IPY_SITE = $(call github,haypo,python-ipy,$(PYTHON_IPY_VERSION)) +PYTHON_IPY_VERSION = 0.83 +PYTHON_IPY_SOURCE = IPy-$(PYTHON_IPY_VERSION).tar.gz +PYTHON_IPY_SITE = https://pypi.python.org/packages/88/28/79162bfc351a3f1ab44d663ab3f03fb495806fdb592170990a1568ffbf63 PYTHON_IPY_LICENSE = BSD-3c PYTHON_IPY_LICENSE_FILES = COPYING PYTHON_IPY_SETUP_TYPE = distutils diff --git a/package/python-ipython/python-ipython.hash b/package/python-ipython/python-ipython.hash new file mode 100644 index 0000000000..250a022561 --- /dev/null +++ b/package/python-ipython/python-ipython.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ca86a6308c4b53ea8a040ba776066dc9a7af4ac738ad43ab2059a016c09b0c2d ipython-2.1.0.tar.gz diff --git a/package/python-itsdangerous/python-itsdangerous.hash b/package/python-itsdangerous/python-itsdangerous.hash new file mode 100644 index 0000000000..a927b8b7ab --- /dev/null +++ b/package/python-itsdangerous/python-itsdangerous.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 b035b2da1d493b00a5ee7a5b750f96929de87b610643939fbe382902774626fc python-itsdangerous-0.24.tar.gz diff --git a/package/python-jinja2/python-jinja2.hash b/package/python-jinja2/python-jinja2.hash index 04fcbc86c1..46ea75faa9 100644 --- a/package/python-jinja2/python-jinja2.hash +++ b/package/python-jinja2/python-jinja2.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=edb51693fe22c53cee5403775c71a99e, sha256 locally computed. -md5 edb51693fe22c53cee5403775c71a99e Jinja2-2.8.tar.gz -sha256 bc1ff2ff88dbfacefde4ddde471d1417d3b304e8df103a7a9437d47269201bf4 Jinja2-2.8.tar.gz +# md5 from https://pypi.python.org/pypi/jinja2/json, sha256 locally computed +md5 b151bfab6fb728fb7a06da4299161c74 Jinja2-2.9.4.tar.gz +sha256 aab8d8ca9f45624f1e77f2844bf3c144d180e97da8824c2a6d7552ad039b5442 Jinja2-2.9.4.tar.gz diff --git a/package/python-jinja2/python-jinja2.mk b/package/python-jinja2/python-jinja2.mk index ce6e2b9c5f..16b7b204ca 100644 --- a/package/python-jinja2/python-jinja2.mk +++ b/package/python-jinja2/python-jinja2.mk @@ -4,14 +4,24 @@ # ################################################################################ -PYTHON_JINJA2_VERSION = 2.8 +PYTHON_JINJA2_VERSION = 2.9.4 PYTHON_JINJA2_SOURCE = Jinja2-$(PYTHON_JINJA2_VERSION).tar.gz -PYTHON_JINJA2_SITE = http://pypi.python.org/packages/source/J/Jinja2 +PYTHON_JINJA2_SITE = https://pypi.python.org/packages/f4/3f/28387a5bbc6883082c16784c6135440b94f9d5938fb156ff579798e18eda PYTHON_JINJA2_SETUP_TYPE = setuptools PYTHON_JINJA2_LICENSE = BSD-3c PYTHON_JINJA2_LICENSE_FILES = LICENSE # In host build, setup.py tries to download markupsafe if it is not installed HOST_PYTHON_JINJA2_DEPENDENCIES = host-python-markupsafe +# Both asyncsupport.py and asyncfilters.py use async feature, that is +# not available in Python 2 and some features available in Python 3.6. +# So in both cases *.py compilation would produce compiler errors. +# Hence remove both files after package extraction. +define PYTHON_JINJA2_REMOVE_ASYNC_SUPPORT + rm $(@D)/jinja2/asyncsupport.py $(@D)/jinja2/asyncfilters.py +endef + +PYTHON_JINJA2_POST_EXTRACT_HOOKS = PYTHON_JINJA2_REMOVE_ASYNC_SUPPORT + $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-json-schema-validator/python-json-schema-validator.hash b/package/python-json-schema-validator/python-json-schema-validator.hash new file mode 100644 index 0000000000..7360abab9a --- /dev/null +++ b/package/python-json-schema-validator/python-json-schema-validator.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/json-schema-validator/json, sha256 locally computed +md5 7691b41739faaa8b0965279e72889932 json-schema-validator-2.4.1.tar.gz +sha256 1562a21d83e56231cef09b9aa2c06e8f845974bd26f24be293de6cab9a2fac91 json-schema-validator-2.4.1.tar.gz diff --git a/package/python-json-schema-validator/python-json-schema-validator.mk b/package/python-json-schema-validator/python-json-schema-validator.mk index 0ff5554b74..1456c349eb 100644 --- a/package/python-json-schema-validator/python-json-schema-validator.mk +++ b/package/python-json-schema-validator/python-json-schema-validator.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_JSON_SCHEMA_VALIDATOR_VERSION = 2.3 +PYTHON_JSON_SCHEMA_VALIDATOR_VERSION = 2.4.1 PYTHON_JSON_SCHEMA_VALIDATOR_SOURCE = json-schema-validator-$(PYTHON_JSON_SCHEMA_VALIDATOR_VERSION).tar.gz -PYTHON_JSON_SCHEMA_VALIDATOR_SITE = http://pypi.python.org/packages/source/j/json-schema-validator +PYTHON_JSON_SCHEMA_VALIDATOR_SITE = https://pypi.python.org/packages/70/46/ba39cb7efad1898cfc89bf3588b8612f24d128f1c25b761994f524a59cef PYTHON_JSON_SCHEMA_VALIDATOR_LICENSE = LGPLv3 PYTHON_JSON_SCHEMA_VALIDATOR_SETUP_TYPE = setuptools PYTHON_JSON_SCHEMA_VALIDATOR_DEPENDENCIES = python-versiontools diff --git a/package/python-jsonschema/Config.in b/package/python-jsonschema/Config.in new file mode 100644 index 0000000000..7002653722 --- /dev/null +++ b/package/python-jsonschema/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_JSONSCHEMA + bool "python-jsonschema" + help + An implementation of JSON Schema validation for Python. + + http://github.com/Julian/jsonschema diff --git a/package/python-jsonschema/python-jsonschema.hash b/package/python-jsonschema/python-jsonschema.hash new file mode 100644 index 0000000000..fc13630d66 --- /dev/null +++ b/package/python-jsonschema/python-jsonschema.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/jsonschema/json, sha256 locally computed +md5 374e848fdb69a3ce8b7e778b47c30640 jsonschema-2.5.1.tar.gz +sha256 36673ac378feed3daa5956276a829699056523d7961027911f064b52255ead41 jsonschema-2.5.1.tar.gz diff --git a/package/python-jsonschema/python-jsonschema.mk b/package/python-jsonschema/python-jsonschema.mk new file mode 100644 index 0000000000..0fb2be869f --- /dev/null +++ b/package/python-jsonschema/python-jsonschema.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-jsonschema +# +################################################################################ + +PYTHON_JSONSCHEMA_VERSION = 2.5.1 +PYTHON_JSONSCHEMA_SOURCE = jsonschema-$(PYTHON_JSONSCHEMA_VERSION).tar.gz +PYTHON_JSONSCHEMA_SITE = https://pypi.python.org/packages/58/0d/c816f5ea5adaf1293a1d81d32e4cdfdaf8496973aa5049786d7fdb14e7e7 +PYTHON_JSONSCHEMA_SETUP_TYPE = setuptools +PYTHON_JSONSCHEMA_LICENSE = MIT +PYTHON_JSONSCHEMA_LICENSE_FILES = COPYING json/LICENSE +PYTHON_JSONSCHEMA_DEPENDENCIES = host-python-vcversioner + +$(eval $(python-package)) diff --git a/package/python-keyring/python-keyring.hash b/package/python-keyring/python-keyring.hash new file mode 100644 index 0000000000..cd1683a7d1 --- /dev/null +++ b/package/python-keyring/python-keyring.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c3f0665ee2d969170dcd6b9e83e76cc7fca2be5a40943700ce2624a0a02f9658 keyring-3.0.5.zip diff --git a/package/python-libconfig/Config.in b/package/python-libconfig/Config.in index b49aa268a8..7cc5f8a3cd 100644 --- a/package/python-libconfig/Config.in +++ b/package/python-libconfig/Config.in @@ -1,5 +1,4 @@ comment "python-libconfig needs a toolchain w/ C++, threads" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS config BR2_PACKAGE_PYTHON_LIBCONFIG @@ -9,7 +8,6 @@ config BR2_PACKAGE_PYTHON_LIBCONFIG select BR2_PACKAGE_LIBCONFIG depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS help Python bindings to the C++ library libconfig diff --git a/package/python-libconfig/python-libconfig.hash b/package/python-libconfig/python-libconfig.hash new file mode 100644 index 0000000000..3839043439 --- /dev/null +++ b/package/python-libconfig/python-libconfig.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 f4cfb7e60b8fcee32ca3392c99932c579038db0852c1c2c42d7c4b859eea3c5c python-libconfig-b271c3d9dac938ad5cd29b67bd08cc5536a5a391.tar.gz diff --git a/package/python-logbook/Config.in b/package/python-logbook/Config.in new file mode 100644 index 0000000000..9ae914432d --- /dev/null +++ b/package/python-logbook/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_LOGBOOK + bool "python-logbook" + help + A logging replacement for Python. + + http://logbook.pocoo.org/ diff --git a/package/python-logbook/python-logbook.hash b/package/python-logbook/python-logbook.hash new file mode 100644 index 0000000000..1a79046c3d --- /dev/null +++ b/package/python-logbook/python-logbook.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/logbook/json, sha256 locally computed +md5 22fea705e067c118925898f0c30b0508 Logbook-1.0.0.tar.gz +sha256 87da2515a6b3db866283cb9d4e5a6ec44e52a1d556ebb2ea3b6e7e704b5f1872 Logbook-1.0.0.tar.gz diff --git a/package/python-logbook/python-logbook.mk b/package/python-logbook/python-logbook.mk new file mode 100644 index 0000000000..291237973a --- /dev/null +++ b/package/python-logbook/python-logbook.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-logbook +# +################################################################################ + +PYTHON_LOGBOOK_VERSION = 1.0.0 +PYTHON_LOGBOOK_SOURCE = Logbook-$(PYTHON_LOGBOOK_VERSION).tar.gz +PYTHON_LOGBOOK_SITE = https://pypi.python.org/packages/34/e8/6419c217bbf464fe8a902418120cccaf476201bd03b50958db24d6e90f65 +PYTHON_LOGBOOK_SETUP_TYPE = setuptools +PYTHON_LOGBOOK_LICENSE = BSD-3c + +$(eval $(python-package)) diff --git a/package/python-lxml/python-lxml.hash b/package/python-lxml/python-lxml.hash index 4cace8e02b..a1dc09391b 100644 --- a/package/python-lxml/python-lxml.hash +++ b/package/python-lxml/python-lxml.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 9c74ca28a7f0c30dca8872281b3c47705e21217c8bc63912d95c9e2a7cac6bdf lxml-3.6.0.tgz +sha256 59d9176360dbc3919e9d4bfca85c1ca64ab4f4ee00e6f119d7150ba887e3410a lxml-3.7.2.tgz diff --git a/package/python-lxml/python-lxml.mk b/package/python-lxml/python-lxml.mk index 039fadd1c6..62c2980b01 100644 --- a/package/python-lxml/python-lxml.mk +++ b/package/python-lxml/python-lxml.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_LXML_VERSION = 3.6.0 +PYTHON_LXML_VERSION = 3.7.2 PYTHON_LXML_SITE = http://lxml.de/files PYTHON_LXML_SOURCE = lxml-$(PYTHON_LXML_VERSION).tgz diff --git a/package/python-mad/python-mad.hash b/package/python-mad/python-mad.hash new file mode 100644 index 0000000000..ab91c3fe44 --- /dev/null +++ b/package/python-mad/python-mad.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 1c9fc529b78de7d26e9e47cf182c9f8bf43838d8f62a9c1773540d57f5ebc522 pymad-0.6.tar.gz diff --git a/package/python-mako/python-mako.hash b/package/python-mako/python-mako.hash index 374be1a1f7..b6a74f3dd1 100644 --- a/package/python-mako/python-mako.hash +++ b/package/python-mako/python-mako.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi/Mako/1.0.3 -md5 a78f20f6366a8a0659ce5532f8614e53 Mako-1.0.3.tar.gz -# Locally computed -sha256 7644bc0ee35965d2e146dde31827b8982ed70a58281085fac42869a09764d38c Mako-1.0.3.tar.gz +# md5 from https://pypi.python.org/pypi/Mako/json, sha256 locally computed +md5 c5fc31a323dd4990683d2f2da02d4e20 Mako-1.0.4.tar.gz +sha256 fed99dbe4d0ddb27a33ee4910d8708aca9ef1fe854e668387a9ab9a90cbf9059 Mako-1.0.4.tar.gz diff --git a/package/python-mako/python-mako.mk b/package/python-mako/python-mako.mk index 52679e0518..88ce13efd3 100644 --- a/package/python-mako/python-mako.mk +++ b/package/python-mako/python-mako.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MAKO_VERSION = 1.0.3 +PYTHON_MAKO_VERSION = 1.0.4 PYTHON_MAKO_SOURCE = Mako-$(PYTHON_MAKO_VERSION).tar.gz -PYTHON_MAKO_SITE = https://pypi.python.org/packages/source/M/Mako +PYTHON_MAKO_SITE = https://pypi.python.org/packages/7a/ae/925434246ee90b42e8ef57d3b30a0ab7caf9a2de3e449b876c56dcb48155 PYTHON_MAKO_SETUP_TYPE = setuptools PYTHON_MAKO_LICENSE = MIT PYTHON_MAKO_LICENSE_FILES = LICENSE diff --git a/package/python-markdown/python-markdown.hash b/package/python-markdown/python-markdown.hash new file mode 100644 index 0000000000..d30faaedda --- /dev/null +++ b/package/python-markdown/python-markdown.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/markdown/json, sha256 locally computed +md5 a06f1c5d462b32e0e8da014e9eebb0d9 Markdown-2.6.7.tar.gz +sha256 daebf24846efa7ff269cfde8c41a48bb2303920c7b2c7c5e04fa82e6282d05c0 Markdown-2.6.7.tar.gz diff --git a/package/python-markdown/python-markdown.mk b/package/python-markdown/python-markdown.mk index 3b2217ecaa..fb87ada759 100644 --- a/package/python-markdown/python-markdown.mk +++ b/package/python-markdown/python-markdown.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARKDOWN_VERSION = 2.5.2 +PYTHON_MARKDOWN_VERSION = 2.6.7 PYTHON_MARKDOWN_SOURCE = Markdown-$(PYTHON_MARKDOWN_VERSION).tar.gz -PYTHON_MARKDOWN_SITE = http://pypi.python.org/packages/source/M/Markdown +PYTHON_MARKDOWN_SITE = https://pypi.python.org/packages/d4/32/642bd580c577af37b00a1eb59b0eaa996f2d11dfe394f3dd0c7a8a2de81a PYTHON_MARKDOWN_LICENSE = BSD-3c PYTHON_MARKDOWN_LICENSE_FILES = LICENSE.md PYTHON_MARKDOWN_SETUP_TYPE = distutils diff --git a/package/python-markdown2/Config.in b/package/python-markdown2/Config.in new file mode 100644 index 0000000000..8fe2332491 --- /dev/null +++ b/package/python-markdown2/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_MARKDOWN2 + bool "python-markdown2" + help + A fast and complete Python implementation of Markdown. + + https://github.com/trentm/python-markdown2 diff --git a/package/python-markdown2/python-markdown2.hash b/package/python-markdown2/python-markdown2.hash new file mode 100644 index 0000000000..17ae7d901d --- /dev/null +++ b/package/python-markdown2/python-markdown2.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 07e077f5d4aa5f1e2f061f9f94d9e22f9ea266411b8c557b9164fc0e6dff0595 python-markdown2-2.3.2.tar.gz diff --git a/package/python-markdown2/python-markdown2.mk b/package/python-markdown2/python-markdown2.mk new file mode 100644 index 0000000000..1e343b43ff --- /dev/null +++ b/package/python-markdown2/python-markdown2.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-markdown2 +# +################################################################################ + +PYTHON_MARKDOWN2_VERSION = 2.3.2 +PYTHON_MARKDOWN2_SITE = $(call github,trentm,python-markdown2,$(PYTHON_MARKDOWN2_VERSION)) +PYTHON_MARKDOWN2_SETUP_TYPE = distutils +PYTHON_MARKDOWN2_LICENSE = MIT +PYTHON_MARKDOWN2_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-mbstrdecoder/Config.in b/package/python-mbstrdecoder/Config.in new file mode 100644 index 0000000000..017002c97a --- /dev/null +++ b/package/python-mbstrdecoder/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_MBSTRDECODER + bool "python-mbstrdecoder" + help + multi-byte character string decoder. + + https://github.com/thombashi/mbstrdecoder diff --git a/package/python-mbstrdecoder/python-mbstrdecoder.hash b/package/python-mbstrdecoder/python-mbstrdecoder.hash new file mode 100644 index 0000000000..1389ac3a86 --- /dev/null +++ b/package/python-mbstrdecoder/python-mbstrdecoder.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/mbstrdecoder/json, sha256 locally computed +md5 5548c4748cf0bc16befcf7ef848f95ff mbstrdecoder-0.1.0.tar.gz +sha256 7c65c4ea6681729ddfdb7612ac39f5accb10abb4e838ca810d810931ec023aad mbstrdecoder-0.1.0.tar.gz diff --git a/package/python-mbstrdecoder/python-mbstrdecoder.mk b/package/python-mbstrdecoder/python-mbstrdecoder.mk new file mode 100644 index 0000000000..f64bde95f2 --- /dev/null +++ b/package/python-mbstrdecoder/python-mbstrdecoder.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-mbstrdecoder +# +################################################################################ + +PYTHON_MBSTRDECODER_VERSION = 0.1.0 +PYTHON_MBSTRDECODER_SOURCE = mbstrdecoder-$(PYTHON_MBSTRDECODER_VERSION).tar.gz +PYTHON_MBSTRDECODER_SITE = https://pypi.python.org/packages/e4/10/fa3d8716b28e2b37eba1edab1c6831a56b805032328279c14fc99d37c391 +PYTHON_MBSTRDECODER_SETUP_TYPE = setuptools +PYTHON_MBSTRDECODER_LICENSE = MIT +PYTHON_MBSTRDECODER_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-meld3/Config.in b/package/python-meld3/Config.in index 8dee723e02..9366b3cda5 100644 --- a/package/python-meld3/Config.in +++ b/package/python-meld3/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_PYTHON_MELD3 bool "python-meld3" - depends on BR2_PACKAGE_PYTHON - select BR2_PACKAGE_PYTHON_PYEXPAT + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 help A HTML/XML templating system. diff --git a/package/python-meld3/python-meld3.hash b/package/python-meld3/python-meld3.hash new file mode 100644 index 0000000000..c7d9025e7c --- /dev/null +++ b/package/python-meld3/python-meld3.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/meld3/json, sha256 locally computed +md5 3ccc78cd79cffd63a751ad7684c02c91 meld3-1.0.2.tar.gz +sha256 f7b754a0fde7a4429b2ebe49409db240b5699385a572501bb0d5627d299f9558 meld3-1.0.2.tar.gz diff --git a/package/python-meld3/python-meld3.mk b/package/python-meld3/python-meld3.mk index 3c8acbc78e..529425c8b1 100644 --- a/package/python-meld3/python-meld3.mk +++ b/package/python-meld3/python-meld3.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_MELD3_VERSION = 0.6.8 +PYTHON_MELD3_VERSION = 1.0.2 PYTHON_MELD3_SOURCE = meld3-$(PYTHON_MELD3_VERSION).tar.gz -PYTHON_MELD3_SITE = http://pypi.python.org/packages/source/m/meld3 +PYTHON_MELD3_SITE = https://pypi.python.org/packages/45/a0/317c6422b26c12fe0161e936fc35f36552069ba8e6f7ecbd99bbffe32a5f PYTHON_MELD3_LICENSE = ZPLv2.1 PYTHON_MELD3_LICENSE_FILES = COPYRIGHT.txt LICENSE.txt -PYTHON_MELD3_SETUP_TYPE = distutils +PYTHON_MELD3_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-mistune/python-mistune.hash b/package/python-mistune/python-mistune.hash index 85096069c6..cfc6a25e2c 100644 --- a/package/python-mistune/python-mistune.hash +++ b/package/python-mistune/python-mistune.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=ed9ac03c99261bd1803e44ddaa4f87cb, sha256 locally computed. -md5 ed9ac03c99261bd1803e44ddaa4f87cb mistune-0.7.2.tar.gz -sha256 626f2516adcde4af608eaf83635ff20ff7e577c1898ad4d0f0fcd8c094399840 mistune-0.7.2.tar.gz +# md5 from https://pypi.python.org/pypi/mistune/json, sha256 locally computed +md5 4eba50bd121b83716fa4be6a4049004b mistune-0.7.3.tar.gz +sha256 21d0e869df3b9189f248e022f1c9763cf9069e1a2f00676f1f1852bd7f98b713 mistune-0.7.3.tar.gz diff --git a/package/python-mistune/python-mistune.mk b/package/python-mistune/python-mistune.mk index f0301a7ecf..91e97e8635 100644 --- a/package/python-mistune/python-mistune.mk +++ b/package/python-mistune/python-mistune.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MISTUNE_VERSION = 0.7.2 +PYTHON_MISTUNE_VERSION = 0.7.3 PYTHON_MISTUNE_SOURCE = mistune-$(PYTHON_MISTUNE_VERSION).tar.gz -PYTHON_MISTUNE_SITE = http://pypi.python.org/packages/source/m/mistune +PYTHON_MISTUNE_SITE = https://pypi.python.org/packages/88/1e/be99791262b3a794332fda598a07c2749a433b9378586361ba9d8e824607 PYTHON_MISTUNE_LICENSE = BSD-3c PYTHON_MISTUNE_LICENSE_FILES = LICENSE PYTHON_MISTUNE_SETUP_TYPE = setuptools diff --git a/package/python-mutagen/Config.in b/package/python-mutagen/Config.in new file mode 100644 index 0000000000..470cd996a7 --- /dev/null +++ b/package/python-mutagen/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_PYTHON_MUTAGEN + bool "python-mutagen" + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + help + Mutagen is a Python module to handle audio metadata. It + supports ASF, FLAC, MP4, Monkey’s Audio, MP3, Musepack, Ogg + Opus, Ogg FLAC, Ogg Speex, Ogg Theora, Ogg Vorbis, True + Audio, WavPack, OptimFROG, and AIFF audio files. All + versions of ID3v2 are supported, and all standard ID3v2.4 + frames are parsed. + + It can read Xing headers to accurately calculate the bitrate + and length of MP3s. ID3 and APEv2 tags can be edited + regardless of audio format. It can also manipulate Ogg + streams on an individual packet/page level. + + https://mutagen.readthedocs.io/en/latest/ diff --git a/package/python-mutagen/python-mutagen.hash b/package/python-mutagen/python-mutagen.hash new file mode 100644 index 0000000000..8970a23f8f --- /dev/null +++ b/package/python-mutagen/python-mutagen.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/mutagen, sha256 locally computed +md5 2bd50519d64411626fa22d405afbf078 mutagen-1.36.tar.gz +sha256 d7ee37e33b8c5893c3ebf66edac31241eb9d48e1dc7ec647bbfbc180565a4bcd mutagen-1.36.tar.gz diff --git a/package/python-mutagen/python-mutagen.mk b/package/python-mutagen/python-mutagen.mk new file mode 100644 index 0000000000..8458de5500 --- /dev/null +++ b/package/python-mutagen/python-mutagen.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-mutagen +# +################################################################################ + +PYTHON_MUTAGEN_VERSION = 1.36 +PYTHON_MUTAGEN_SOURCE = mutagen-$(PYTHON_MUTAGEN_VERSION).tar.gz +PYTHON_MUTAGEN_SITE = https://pypi.python.org/packages/69/14/4a5c8360a727563291a7159de935ffff2b99ee783928169f0fea7445370f +PYTHON_MUTAGEN_LICENSE = GPLv2 +PYTHON_MUTAGEN_LICENSE_FILES = COPYING +PYTHON_MUTAGEN_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-mwclient/0001-use-exec-in-py3-compatible-manner.patch b/package/python-mwclient/0001-use-exec-in-py3-compatible-manner.patch new file mode 100644 index 0000000000..ac7838a7f7 --- /dev/null +++ b/package/python-mwclient/0001-use-exec-in-py3-compatible-manner.patch @@ -0,0 +1,36 @@ +From 5de1bb82465d39962e26175c62f644a3e423d030 Mon Sep 17 00:00:00 2001 +From: Adam Williamson +Date: Thu, 21 Jan 2016 17:21:52 -0800 +Subject: [PATCH] use 'exec' in py3-compatible manner + +per https://docs.python.org/2/reference/simple_stmts.html , +as exec is a function not a statement in py3, the py2 version +has been set to allow the subsequent statement to be a tuple, +so we can invoke it like this to make it both py2 and py3 +compatible. Without this, byte-compiling the file fails under +py3. + +Signed-off-by: Bernd Kuhls +--- +downloaded from upstream commit: +https://github.com/mwclient/mwclient/commit/5de1bb82465d39962e26175c62f644a3e423d030 + + mwclient/ex.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mwclient/ex.py b/mwclient/ex.py +index db4006c..c0b1eae 100644 +--- a/mwclient/ex.py ++++ b/mwclient/ex.py +@@ -12,7 +12,7 @@ def read_config(config_files, **predata): + + def _read_config_file(_config_file, predata): + _file = open(_config_file) +- exec _file in globals(), predata ++ exec(_file, globals(), predata) + _file.close() + + for _k, _v in predata.iteritems(): +-- +2.9.3 + diff --git a/package/python-mwclient/Config.in b/package/python-mwclient/Config.in new file mode 100644 index 0000000000..be8897864c --- /dev/null +++ b/package/python-mwclient/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_MWCLIENT + bool "python-mwclient" + select BR2_PACKAGE_PYTHON_REQUESTS # runtime + select BR2_PACKAGE_PYTHON_SIX # runtime + help + MediaWiki API client. + + https://github.com/btongminh/mwclient diff --git a/package/python-mwclient/python-mwclient.hash b/package/python-mwclient/python-mwclient.hash new file mode 100644 index 0000000000..109897173e --- /dev/null +++ b/package/python-mwclient/python-mwclient.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/mwclient/json, sha256 locally computed +md5 c1334facf2d6ca54fe6dba4ab75ecf34 mwclient-0.8.1.tar.gz +sha256 5f892711cc0b23ff2a6d8b7986ee63cd43fd1ec92b0783604ffa7613cd1662e4 mwclient-0.8.1.tar.gz diff --git a/package/python-mwclient/python-mwclient.mk b/package/python-mwclient/python-mwclient.mk new file mode 100644 index 0000000000..1f1e209661 --- /dev/null +++ b/package/python-mwclient/python-mwclient.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-mwclient +# +################################################################################ + +PYTHON_MWCLIENT_VERSION = 0.8.1 +PYTHON_MWCLIENT_SOURCE = mwclient-$(PYTHON_MWCLIENT_VERSION).tar.gz +PYTHON_MWCLIENT_SITE = https://pypi.python.org/packages/19/79/481b288a497f625ee8f76141ff3472d81428b1f14b7155a28a63a3247197 +PYTHON_MWCLIENT_LICENSE = MIT +PYTHON_MWCLIENT_LICENSE_FILES = mwclient/__init__.py +PYTHON_MWCLIENT_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-mwscrape/Config.in b/package/python-mwscrape/Config.in new file mode 100644 index 0000000000..273ce9a4a8 --- /dev/null +++ b/package/python-mwscrape/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_PYTHON_MWSCRAPE + bool "python-mwscrape" + depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_COUCHDB # runtime + select BR2_PACKAGE_PYTHON_FUTURES # runtime + select BR2_PACKAGE_PYTHON_MWCLIENT # runtime + select BR2_PACKAGE_PYTHON_PYLRU # runtime + help + Download rendered articles from MediaWiki API to CouchDB + + https://github.com/itkach/mwscrape diff --git a/package/python-mwscrape/python-mwscrape.hash b/package/python-mwscrape/python-mwscrape.hash new file mode 100644 index 0000000000..b91ef69a28 --- /dev/null +++ b/package/python-mwscrape/python-mwscrape.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 8de8a5ef257851f6e1e41247f64710f48859a5e3f91ebc7200bb60769f02f296 python-mwscrape-6a58d7801eb1e884fd0516f1adbedbd4481c10e6.tar.gz diff --git a/package/python-mwscrape/python-mwscrape.mk b/package/python-mwscrape/python-mwscrape.mk new file mode 100644 index 0000000000..47b943f45f --- /dev/null +++ b/package/python-mwscrape/python-mwscrape.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-mwscrape +# +################################################################################ + +PYTHON_MWSCRAPE_VERSION = 6a58d7801eb1e884fd0516f1adbedbd4481c10e6 +PYTHON_MWSCRAPE_SITE = $(call github,itkach,mwscrape,$(PYTHON_MWSCRAPE_VERSION)) +PYTHON_MWSCRAPE_LICENSE = MPL-2.0 +PYTHON_MWSCRAPE_LICENSE_FILES = LICENSE.txt +PYTHON_MWSCRAPE_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-mwscrape2slob/Config.in b/package/python-mwscrape2slob/Config.in new file mode 100644 index 0000000000..799ab29c34 --- /dev/null +++ b/package/python-mwscrape2slob/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_PYTHON_MWSCRAPE2SLOB + bool "python-mwscrape2slob" + depends on !BR2_BINFMT_FLAT # python-slob -> python-pyicu -> icu + depends on BR2_INSTALL_LIBSTDCPP # python-slob -> python-pyicu -> icu + depends on BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON_COUCHDB # runtime + select BR2_PACKAGE_PYTHON_CSSSELECT # runtime + select BR2_PACKAGE_PYTHON_CSSUTILS # runtime + select BR2_PACKAGE_PYTHON_LXML # runtime + select BR2_PACKAGE_PYTHON_SLOB # runtime + help + A tool to create slob with content from a MediaWiki CouchDB + created by mwscrape. + + https://github.com/itkach/mwscrape2slob + +comment "python-mwscrape2slob needs a toolchain w/ C++" + depends on BR2_PACKAGE_PYTHON3 && !BR2_BINFMT_FLAT + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-mwscrape2slob/python-mwscrape2slob.hash b/package/python-mwscrape2slob/python-mwscrape2slob.hash new file mode 100644 index 0000000000..f1f5e4f166 --- /dev/null +++ b/package/python-mwscrape2slob/python-mwscrape2slob.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 367ffc3203f7eb2cc26211f58c0693526652d9a238af48c88f936920e804faf7 python-mwscrape2slob-0f9124ed62009dff6a230947d80340f5a61a6f49.tar.gz diff --git a/package/python-mwscrape2slob/python-mwscrape2slob.mk b/package/python-mwscrape2slob/python-mwscrape2slob.mk new file mode 100644 index 0000000000..4d27d8d6ea --- /dev/null +++ b/package/python-mwscrape2slob/python-mwscrape2slob.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-mwscrape2slob +# +################################################################################ + +PYTHON_MWSCRAPE2SLOB_VERSION = 0f9124ed62009dff6a230947d80340f5a61a6f49 +PYTHON_MWSCRAPE2SLOB_SITE = $(call github,itkach,mwscrape2slob,$(PYTHON_MWSCRAPE2SLOB_VERSION)) +PYTHON_MWSCRAPE2SLOB_LICENSE = GPLv3, Apache-2.0 (MathJax), GPL (MediaWiki monobook style sheet) +PYTHON_MWSCRAPE2SLOB_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-netifaces/python-netifaces.hash b/package/python-netifaces/python-netifaces.hash index aebfdf6694..6f3e358b08 100644 --- a/package/python-netifaces/python-netifaces.hash +++ b/package/python-netifaces/python-netifaces.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=36da76e2cfadd24cc7510c2c0012eb1e, sha256 locally computed -md5 36da76e2cfadd24cc7510c2c0012eb1e netifaces-0.10.4.tar.gz -sha256 9656a169cb83da34d732b0eb72b39373d48774aee009a3d1272b7ea2ce109cde netifaces-0.10.4.tar.gz +# md5 from https://pypi.python.org/pypi/netifaces/json, sha256 locally computed +md5 5b4d1f1310ed279e6df27ef3a9b71519 netifaces-0.10.5.tar.gz +sha256 59d8ad52dd3116fcb6635e175751b250dc783fb011adba539558bd764e5d628b netifaces-0.10.5.tar.gz diff --git a/package/python-netifaces/python-netifaces.mk b/package/python-netifaces/python-netifaces.mk index 2c51ce0689..3e01c24805 100644 --- a/package/python-netifaces/python-netifaces.mk +++ b/package/python-netifaces/python-netifaces.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_NETIFACES_VERSION = 0.10.4 +PYTHON_NETIFACES_VERSION = 0.10.5 PYTHON_NETIFACES_SOURCE = netifaces-$(PYTHON_NETIFACES_VERSION).tar.gz -PYTHON_NETIFACES_SITE = https://pypi.python.org/packages/source/n/netifaces +PYTHON_NETIFACES_SITE = https://pypi.python.org/packages/a7/4c/8e0771a59fd6e55aac993a7cc1b6a0db993f299514c464ae6a1ecf83b31d PYTHON_NETIFACES_LICENSE = MIT PYTHON_NETIFACES_LICENSE_FILES = README.rst PYTHON_NETIFACES_SETUP_TYPE = setuptools diff --git a/package/python-networkmanager/python-networkmanager.hash b/package/python-networkmanager/python-networkmanager.hash index 00d31d00d7..cbd6febcd1 100644 --- a/package/python-networkmanager/python-networkmanager.hash +++ b/package/python-networkmanager/python-networkmanager.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=d7f0337b8e58c193c574ceae984cc65f, sha256 locally computed -md5 d7f0337b8e58c193c574ceae984cc65f python-networkmanager-1.0.1.tar.gz -sha256 6eb4073a0d6572fe0bba8cbfe8423f6a8a51c4504a33e0eb4f1b1eadf54c4cee python-networkmanager-1.0.1.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=97c84c19b84b1124903a06379b107f77, sha256 locally computed +md5 97c84c19b84b1124903a06379b107f77 python-networkmanager-1.2.1.tar.gz +sha256 7107c07383f8077cfac33fdbb3c4cda4de40be20a6b20d30840055eb519a0e89 python-networkmanager-1.2.1.tar.gz diff --git a/package/python-networkmanager/python-networkmanager.mk b/package/python-networkmanager/python-networkmanager.mk index 04a2702133..875748f3ab 100644 --- a/package/python-networkmanager/python-networkmanager.mk +++ b/package/python-networkmanager/python-networkmanager.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_NETWORKMANAGER_VERSION = 1.0.1 -PYTHON_NETWORKMANAGER_SITE = http://pypi.python.org/packages/source/p/python-networkmanager +PYTHON_NETWORKMANAGER_VERSION = 1.2.1 +PYTHON_NETWORKMANAGER_SITE = https://pypi.python.org/packages/e7/b1/09993250ceea9e03bc65fbabcd5286540200292c011b22237b2963c11471 PYTHON_NETWORKMANAGER_SETUP_TYPE = distutils PYTHON_NETWORKMANAGER_LICENSE = GPLv3+ PYTHON_NETWORKMANAGER_LICENSE_FILES = COPYING diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash b/package/python-paho-mqtt/python-paho-mqtt.hash index 52729ccd34..6cb3cc2bf0 100644 --- a/package/python-paho-mqtt/python-paho-mqtt.hash +++ b/package/python-paho-mqtt/python-paho-mqtt.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=a6407b74eb5e5411e157be1de5c11366, sha256 locally computed -md5 a6407b74eb5e5411e157be1de5c11366 paho-mqtt-1.1.tar.gz -sha256 0f7a629efe6e3a2c61b59d3550aa9f2c4529b5689a65fde45e6f1ac36b9a261e paho-mqtt-1.1.tar.gz +# md5 from https://pypi.python.org/pypi/paho-mqtt/json, sha256 locally computed +md5 241150b3fcb920ddca4d33181f3238b1 paho-mqtt-1.2.tar.gz +sha256 9100a6aa706ab699d414ec02705a21eb66f436184691d0bf1f2a85a6213c6c1f paho-mqtt-1.2.tar.gz diff --git a/package/python-paho-mqtt/python-paho-mqtt.mk b/package/python-paho-mqtt/python-paho-mqtt.mk index 01da2b3d77..d783a9cb0d 100644 --- a/package/python-paho-mqtt/python-paho-mqtt.mk +++ b/package/python-paho-mqtt/python-paho-mqtt.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PAHO_MQTT_VERSION = 1.1 +PYTHON_PAHO_MQTT_VERSION = 1.2 PYTHON_PAHO_MQTT_SOURCE = paho-mqtt-$(PYTHON_PAHO_MQTT_VERSION).tar.gz -PYTHON_PAHO_MQTT_SITE = https://pypi.python.org/packages/source/p/paho-mqtt +PYTHON_PAHO_MQTT_SITE = https://pypi.python.org/packages/82/d9/7064d3a0a1d62756a1a809c85b99f864c641b66de84c15458f72193b7708 PYTHON_PAHO_MQTT_LICENSE = EPLv1.0 or EDLv1.0 PYTHON_PAHO_MQTT_LICENSE_FILES = LICENSE.txt edl-v10 epl-v10 PYTHON_PAHO_MQTT_SETUP_TYPE = distutils diff --git a/package/python-pam/Config.in b/package/python-pam/Config.in index b23a8e0172..02865d00d6 100644 --- a/package/python-pam/Config.in +++ b/package/python-pam/Config.in @@ -1,4 +1,4 @@ -comment "python-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "python-pam needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library" depends on BR2_PACKAGE_PYTHON depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ BR2_TOOLCHAIN_USES_MUSL @@ -8,6 +8,7 @@ config BR2_PACKAGE_PYTHON_PAM depends on BR2_PACKAGE_PYTHON # C extension not compatible with python3 depends on BR2_ENABLE_LOCALE # linux-pam depends on BR2_USE_WCHAR # linux-pam + depends on BR2_USE_MMU # linux-pam depends on !BR2_STATIC_LIBS # linux-pam depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM diff --git a/package/python-pam/python-pam.hash b/package/python-pam/python-pam.hash new file mode 100644 index 0000000000..14a89484a1 --- /dev/null +++ b/package/python-pam/python-pam.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 796ac019b9ee805696d0d277d8fb912fa2391b6ac070dc6f9f1a9a0fadbc3a5a PyPAM-0.5.0.tar.gz diff --git a/package/python-paramiko/Config.in b/package/python-paramiko/Config.in index 4c16a9a696..aad85cb134 100644 --- a/package/python-paramiko/Config.in +++ b/package/python-paramiko/Config.in @@ -1,10 +1,14 @@ config BR2_PACKAGE_PYTHON_PARAMIKO bool "python-paramiko" + depends on BR2_INSTALL_LIBSTDCPP # python-pyasn select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime - select BR2_PACKAGE_PYTHON_PYCRYPTO # runtime - select BR2_PACKAGE_PYTHON_ECDSA # runtime + select BR2_PACKAGE_PYTHON_CRYPTOGRAPHY # runtime + select BR2_PACKAGE_PYTHON_PYASN # runtime help SSH2 protocol library. https://github.com/paramiko/paramiko/ + +comment "python-paramiko needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-paramiko/python-paramiko.hash b/package/python-paramiko/python-paramiko.hash index 29af27d1f4..fca8fd754b 100644 --- a/package/python-paramiko/python-paramiko.hash +++ b/package/python-paramiko/python-paramiko.hash @@ -1,4 +1,3 @@ -# md5 from https://pypi.python.org/pypi/paramiko/json -md5 7e1203f5ffeb7d2bc2bffc4feb804216 paramiko-1.16.0.tar.gz -# sha256 calculated by scanpypi -sha256 3297ebd3cd072f573772f7c7426939a443c62c458d54bb632ff30fd6ecf96892 paramiko-1.16.0.tar.gz +# md5 from https://pypi.python.org/pypi/paramiko/json, sha256 locally computed +md5 9e8abe635baa6bb75a4cd55dcb56a264 paramiko-2.1.1.tar.gz +sha256 d51dada7ad0736c116f8bfe3263627925947e4a50e61436a83d58bfe7055b575 paramiko-2.1.1.tar.gz diff --git a/package/python-paramiko/python-paramiko.mk b/package/python-paramiko/python-paramiko.mk index 52822bb298..6c0df4d9fb 100644 --- a/package/python-paramiko/python-paramiko.mk +++ b/package/python-paramiko/python-paramiko.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PARAMIKO_VERSION = 1.16.0 +PYTHON_PARAMIKO_VERSION = 2.1.1 PYTHON_PARAMIKO_SOURCE = paramiko-$(PYTHON_PARAMIKO_VERSION).tar.gz -PYTHON_PARAMIKO_SITE = https://pypi.python.org/packages/source/p/paramiko +PYTHON_PARAMIKO_SITE = https://pypi.python.org/packages/d1/5a/ebd00d884f30baf208359a027eb7b38372d81d0c004724bb1aa71ae43b37 PYTHON_PARAMIKO_SETUP_TYPE = setuptools PYTHON_PARAMIKO_LICENSE = LGPLv2.1+ PYTHON_PARAMIKO_LICENSE_FILES = LICENSE diff --git a/package/python-pathpy/Config.in b/package/python-pathpy/Config.in new file mode 100644 index 0000000000..98c05126bf --- /dev/null +++ b/package/python-pathpy/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_PATHPY + bool "python-pathpy" + help + path.py implements a path objects as first-class + entities, allowing common operations on files to + be invoked on those path objects directly. + + https://github.com/jaraco/path.py diff --git a/package/python-pathpy/python-pathpy.hash b/package/python-pathpy/python-pathpy.hash new file mode 100644 index 0000000000..4824e2a3c8 --- /dev/null +++ b/package/python-pathpy/python-pathpy.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/path.py/json, sha256 locally computed +md5 eb8469ad498d2e462bff8f3b2b5ea68d path.py-10.0.tar.gz +sha256 ba984a2b536158a8841dd33150fce16bcf04210e83f92da674cad0a8a8f61e00 path.py-10.0.tar.gz diff --git a/package/python-pathpy/python-pathpy.mk b/package/python-pathpy/python-pathpy.mk new file mode 100644 index 0000000000..5776586027 --- /dev/null +++ b/package/python-pathpy/python-pathpy.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pathpy +# +################################################################################ + +PYTHON_PATHPY_VERSION = 10.0 +PYTHON_PATHPY_SOURCE = path.py-$(PYTHON_PATHPY_VERSION).tar.gz +PYTHON_PATHPY_SITE = https://pypi.python.org/packages/f3/4e/3bce93c0d9e20abc6ed3aa7866beb688e889828ca2666743df11d9a30050 +PYTHON_PATHPY_SETUP_TYPE = setuptools +PYTHON_PATHPY_LICENSE = MIT +PYTHON_PATHPY_DEPENDENCIES = host-python-setuptools-scm + +$(eval $(python-package)) diff --git a/package/python-pathtools/Config.in b/package/python-pathtools/Config.in new file mode 100644 index 0000000000..63777bd37f --- /dev/null +++ b/package/python-pathtools/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_PATHTOOLS + bool "python-pathtools" + help + File system general utilities. + + http://github.com/gorakhargosh/pathtools diff --git a/package/python-pathtools/python-pathtools.hash b/package/python-pathtools/python-pathtools.hash new file mode 100644 index 0000000000..1fa624df02 --- /dev/null +++ b/package/python-pathtools/python-pathtools.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/pathtools/json +md5 9a1af5c605768ea5804b03b734ff0f82 pathtools-0.1.2.tar.gz +# sha256 calculated by scanpypi +sha256 7c35c5421a39bb82e58018febd90e3b6e5db34c5443aaaf742b3f33d4655f1c0 pathtools-0.1.2.tar.gz diff --git a/package/python-pathtools/python-pathtools.mk b/package/python-pathtools/python-pathtools.mk new file mode 100644 index 0000000000..2b4a271150 --- /dev/null +++ b/package/python-pathtools/python-pathtools.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pathtools +# +################################################################################ + +PYTHON_PATHTOOLS_VERSION = 0.1.2 +PYTHON_PATHTOOLS_SOURCE = pathtools-$(PYTHON_PATHTOOLS_VERSION).tar.gz +PYTHON_PATHTOOLS_SITE = https://pypi.python.org/packages/e7/7f/470d6fcdf23f9f3518f6b0b76be9df16dcc8630ad409947f8be2eb0ed13a +PYTHON_PATHTOOLS_SETUP_TYPE = setuptools +PYTHON_PATHTOOLS_LICENSE = MIT +PYTHON_PATHTOOLS_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pathvalidate/Config.in b/package/python-pathvalidate/Config.in new file mode 100644 index 0000000000..60163fbe0b --- /dev/null +++ b/package/python-pathvalidate/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_PATHVALIDATE + bool "python-pathvalidate" + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_MBSTRDECODER # runtime + select BR2_PACKAGE_PYTHON_DATAPROPERTY # runtime + help + pathvalidate is a python library to validate/sanitize a string + such as filename/variable-name. + + https://github.com/thombashi/pathvalidate diff --git a/package/python-pathvalidate/python-pathvalidate.hash b/package/python-pathvalidate/python-pathvalidate.hash new file mode 100644 index 0000000000..68e6907db3 --- /dev/null +++ b/package/python-pathvalidate/python-pathvalidate.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pathvalidate/json, sha256 locally computed +md5 03f0af69596f7de52d52753c2a585fce pathvalidate-0.13.0.tar.gz +sha256 1ecaebfbd32794abe5f47a20189d5f7dd196a6ba445c1a07429de6ce608bf9b9 pathvalidate-0.13.0.tar.gz diff --git a/package/python-pathvalidate/python-pathvalidate.mk b/package/python-pathvalidate/python-pathvalidate.mk new file mode 100644 index 0000000000..a8ab4ad242 --- /dev/null +++ b/package/python-pathvalidate/python-pathvalidate.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pathvalidate +# +################################################################################ + +PYTHON_PATHVALIDATE_VERSION = 0.13.0 +PYTHON_PATHVALIDATE_SOURCE = pathvalidate-$(PYTHON_PATHVALIDATE_VERSION).tar.gz +PYTHON_PATHVALIDATE_SITE = https://pypi.python.org/packages/3a/03/ca01cdbf0f7b766b414d134e71b2eb689619dba0ddee002d53c2d58f6436 +PYTHON_PATHVALIDATE_SETUP_TYPE = setuptools +PYTHON_PATHVALIDATE_LICENSE = MIT +PYTHON_PATHVALIDATE_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pexpect/python-pexpect.hash b/package/python-pexpect/python-pexpect.hash index 29cf892add..e3836074ec 100644 --- a/package/python-pexpect/python-pexpect.hash +++ b/package/python-pexpect/python-pexpect.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org, sha256 locally computed -md5 056df81e6ca7081f1015b4b147b977b7 pexpect-4.0.1.tar.gz -sha256 232795ebcaaf2e120396dbbaa3a129eda51757eeaae1911558f4ef8ee414fc6c pexpect-4.0.1.tar.gz +# md5 from https://pypi.python.org/pypi/pexpect/json, sha256 locally computed +md5 3694410001a99dff83f0b500a1ca1c95 pexpect-4.2.1.tar.gz +sha256 3d132465a75b57aa818341c6521392a06cc660feb3988d7f1074f39bd23c9a92 pexpect-4.2.1.tar.gz diff --git a/package/python-pexpect/python-pexpect.mk b/package/python-pexpect/python-pexpect.mk index b74bf83510..f1f9903946 100644 --- a/package/python-pexpect/python-pexpect.mk +++ b/package/python-pexpect/python-pexpect.mk @@ -4,11 +4,21 @@ # ################################################################################ -PYTHON_PEXPECT_VERSION = 4.0.1 -PYTHON_PEXPECT_SITE = https://pypi.python.org/packages/source/p/pexpect +PYTHON_PEXPECT_VERSION = 4.2.1 PYTHON_PEXPECT_SOURCE = pexpect-$(PYTHON_PEXPECT_VERSION).tar.gz +PYTHON_PEXPECT_SITE = https://pypi.python.org/packages/e8/13/d0b0599099d6cd23663043a2a0bb7c61e58c6ba359b2656e6fb000ef5b98 PYTHON_PEXPECT_LICENSE = ISC PYTHON_PEXPECT_LICENSE_FILES = LICENSE PYTHON_PEXPECT_SETUP_TYPE = distutils +# async.py is not usable with Python 2, and removing is the solution +# recommended by upstream: +# https://github.com/pexpect/pexpect/issues/290 +ifeq ($(BR2_PACKAGE_PYTHON),y) +define PYTHON_PEXPECT_REMOVE_ASYNC_PY + $(RM) $(@D)/pexpect/async.py +endef +PYTHON_PEXPECT_POST_PATCH_HOOKS += PYTHON_PEXPECT_REMOVE_ASYNC_PY +endif + $(eval $(python-package)) diff --git a/package/python-pillow/Config.in b/package/python-pillow/Config.in index bbab470b69..3820ba8fb1 100644 --- a/package/python-pillow/Config.in +++ b/package/python-pillow/Config.in @@ -1,13 +1,13 @@ config BR2_PACKAGE_PYTHON_PILLOW bool "python-pillow" - select BR2_PACKAGE_DISTRIBUTE - select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_FREETYPE - select BR2_PACKAGE_JPEG_LIBRARY - select BR2_PACKAGE_TIFF help - Pillow is the "friendly" PIL fork by Alex Clark and Contributors. PIL is - the Python Imaging Library by Fredrik Lundh and Contributors. + Pillow is the "friendly" PIL fork by Alex Clark and + Contributors. PIL is the Python Imaging Library by Fredrik + Lundh and Contributors. + + Pillow relies on external libraries to provide support + various image formats. Select the corresponding package(s) + to get this support. Pillow can use jpeg, zlib (for PNG), + tiff, freetype, webp, and openjpeg (JPEG-2000). https://pypi.python.org/pypi/Pillow/ - diff --git a/package/python-pillow/python-pillow-01-crosscompiling.patch b/package/python-pillow/python-pillow-01-crosscompiling.patch deleted file mode 100644 index 0a7da3d74c..0000000000 --- a/package/python-pillow/python-pillow-01-crosscompiling.patch +++ /dev/null @@ -1,94 +0,0 @@ -diff -Naur python-pillow-2.4.0.orig/setup.cfg python-pillow-2.4.0.new/setup.cfg ---- python-pillow-2.4.0.orig/setup.cfg 2014-04-01 18:34:28.000000000 +0300 -+++ python-pillow-2.4.0.new/setup.cfg 2014-06-26 16:15:43.711930729 +0300 -@@ -3,3 +3,12 @@ - tag_date = 0 - tag_svn_revision = 0 - -+[build_ext] -+plat-name = linux-arm -+disable-webp = -+disable-lcms = -+disable-freetype = -+disable-jpeg2000 = -+disable-tcl = -+disable-webpmux = -+disable-tiff = " -diff -Naur python-pillow-2.4.0.orig/setup.py python-pillow-2.4.0.new/setup.py ---- python-pillow-2.4.0.orig/setup.py 2014-04-01 18:21:44.000000000 +0300 -+++ python-pillow-2.4.0.new/setup.py 2014-06-26 16:20:38.494366591 +0300 -@@ -225,60 +225,6 @@ - _add_directory(library_dirs, "/usr/X11/lib") - _add_directory(include_dirs, "/usr/X11/include") - -- elif sys.platform.startswith("linux"): -- arch_tp = (plat.processor(), plat.architecture()[0]) -- if arch_tp == ("x86_64","32bit"): -- # 32 bit build on 64 bit machine. -- _add_directory(library_dirs, "/usr/lib/i386-linux-gnu") -- else: -- for platform_ in arch_tp: -- -- if not platform_: -- continue -- -- if platform_ in ["x86_64", "64bit"]: -- _add_directory(library_dirs, "/lib64") -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, "/usr/lib/x86_64-linux-gnu") -- break -- elif platform_ in ["i386", "i686", "32bit"]: -- _add_directory(library_dirs, "/usr/lib/i386-linux-gnu") -- break -- elif platform_ in ["aarch64"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, "/usr/lib/aarch64-linux-gnu") -- break -- elif platform_ in ["arm", "armv7l"]: -- _add_directory(library_dirs, "/usr/lib/arm-linux-gnueabi") -- break -- elif platform_ in ["ppc64"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, "/usr/lib/ppc64-linux-gnu") -- _add_directory(library_dirs, "/usr/lib/powerpc64-linux-gnu") -- break -- elif platform_ in ["ppc"]: -- _add_directory(library_dirs, "/usr/lib/ppc-linux-gnu") -- _add_directory(library_dirs, "/usr/lib/powerpc-linux-gnu") -- break -- elif platform_ in ["s390x"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, "/usr/lib/s390x-linux-gnu") -- break -- elif platform_ in ["s390"]: -- _add_directory(library_dirs, "/usr/lib/s390-linux-gnu") -- break -- else: -- raise ValueError( -- "Unable to identify Linux platform: `%s`" % platform_) -- -- # XXX Kludge. Above /\ we brute force support multiarch. Here we -- # try Barry's more general approach. Afterward, something should -- # work ;-) -- self.add_multiarch_paths() -- -- elif sys.platform.startswith("gnu"): -- self.add_multiarch_paths() -- - elif sys.platform.startswith("netbsd"): - _add_directory(library_dirs, "/usr/pkg/lib") - _add_directory(include_dirs, "/usr/pkg/include") -@@ -323,13 +269,6 @@ - if os.path.isfile(os.path.join(tcl_dir, "tk.h")): - _add_directory(include_dirs, tcl_dir) - -- # standard locations -- _add_directory(library_dirs, "/usr/local/lib") -- _add_directory(include_dirs, "/usr/local/include") -- -- _add_directory(library_dirs, "/usr/lib") -- _add_directory(include_dirs, "/usr/include") -- - # on Windows, look for the OpenJPEG libraries in the location that - # the official installed puts them - if sys.platform == "win32": diff --git a/package/python-pillow/python-pillow.hash b/package/python-pillow/python-pillow.hash new file mode 100644 index 0000000000..182e82f8a5 --- /dev/null +++ b/package/python-pillow/python-pillow.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pillow/json, sha256 locally computed +md5 d5af224b0fa2c66dacc9814785fef9e7 Pillow-4.0.0.tar.gz +sha256 ee26d2d7e7e300f76ba7b796014c04011394d0c4a5ed9a288264a3e443abca50 Pillow-4.0.0.tar.gz diff --git a/package/python-pillow/python-pillow.mk b/package/python-pillow/python-pillow.mk index b4824c5eba..faa0e16688 100644 --- a/package/python-pillow/python-pillow.mk +++ b/package/python-pillow/python-pillow.mk @@ -4,37 +4,70 @@ # ################################################################################ -PYTHON_PILLOW_VERSION = 2.4.0 -PYTHON_PILLOW_SOURCE = Pillow-$(PYTHON_PILLOW_VERSION).zip -PYTHON_PILLOW_SITE = https://pypi.python.org/packages/source/P/Pillow -PYTHON_PILLOW_DEPENDENCIES = python zlib freetype jpeg host-python-setuptools +PYTHON_PILLOW_VERSION = 4.0.0 +PYTHON_PILLOW_SOURCE = Pillow-$(PYTHON_PILLOW_VERSION).tar.gz +PYTHON_PILLOW_SITE = https://pypi.python.org/packages/8d/80/eca7a2d1a3c2dafb960f32f844d570de988e609f5fd17de92e1cf6a01b0a +PYTHON_PILLOW_LICENSE = PIL Software License +PYTHON_PILLOW_LICENSE_FILES = LICENSE PYTHON_PILLOW_SETUP_TYPE = setuptools +PYTHON_PILLOW_BUILD_OPTS = --disable-platform-guessing -define PYTHON_PILLOW_EXTRACT_CMDS - (unzip -o $(DL_DIR)/$(PYTHON_PILLOW_SOURCE) -d $(BUILD_DIR); \ - mv $(BUILD_DIR)/Pillow-$(PYTHON_PILLOW_VERSION)/* $(@D)) -# echo "[build_ext]" >> $(@D)/setup.cfg -# echo "disable-webp = " >> $(@D)/setup.cfg -# echo "disable-lcms = " >> $(@D)/setup.cfg -# echo "disable-freetype = " >> $(@D)/setup.cfg -# echo "disable-jpeg2000 = " >> $(@D)/setup.cfg -# echo "disable-tcl = " >> $(@D)/setup.cfg -# echo "disable-webpmux = " >> $(@D)/setup.cfg -# echo "disable-tiff = " >> $(@D)/setup.cfg +ifeq ($(BR2_PACKAGE_FREETYPE),y) +PYTHON_PILLOW_DEPENDENCIES += freetype +PYTHON_PILLOW_BUILD_OPTS += --enable-freetype +else +PYTHON_PILLOW_BUILD_OPTS += --disable-freetype +endif + +ifeq ($(BR2_PACKAGE_JPEG),y) +PYTHON_PILLOW_DEPENDENCIES += jpeg +PYTHON_PILLOW_BUILD_OPTS += --enable-jpeg +else +PYTHON_PILLOW_BUILD_OPTS += --disable-jpeg +endif + +ifeq ($(BR2_PACKAGE_OPENJPEG),y) +PYTHON_PILLOW_DEPENDENCIES += openjpeg +PYTHON_PILLOW_BUILD_OPTS += --enable-jpeg2000 +else +PYTHON_PILLOW_BUILD_OPTS += --disable-jpeg2000 +endif + +ifeq ($(BR2_PACKAGE_TIFF),y) +PYTHON_PILLOW_DEPENDENCIES += tiff +PYTHON_PILLOW_BUILD_OPTS += --enable-tiff +else +PYTHON_PILLOW_BUILD_OPTS += --disable-tiff +endif + +ifeq ($(BR2_PACKAGE_WEBP),y) +PYTHON_PILLOW_DEPENDENCIES += webp +PYTHON_PILLOW_BUILD_OPTS += --enable-webp +else +PYTHON_PILLOW_BUILD_OPTS += --disable-webp +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +PYTHON_PILLOW_DEPENDENCIES += zlib +PYTHON_PILLOW_BUILD_OPTS += --enable-zlib +else +PYTHON_PILLOW_BUILD_OPTS += --disable-zlib +endif + +define PYTHON_PILLOW_BUILD_CMDS + cd $(PYTHON_PILLOW_BUILDDIR); \ + $(PYTHON_PILLOW_BASE_ENV) $(PYTHON_PILLOW_ENV) \ + $(PYTHON_PILLOW_PYTHON_INTERPRETER) setup.py build_ext \ + $(PYTHON_PILLOW_BASE_BUILD_OPTS) $(PYTHON_PILLOW_BUILD_OPTS) endef -define PYTHON_PILLOW_BUILD_CMDS__ - (cd $(@D); \ - PYTHONXCPREFIX="$(STAGING_DIR)/usr/" \ - LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \ - $(HOST_DIR)/usr/bin/python setup.py build build_ext --disable-lcms --disable-webp) -endef - -define PYTHON_PILLOW_INSTALL_TARGET_CMDS____ - (cd $(@D); \ - PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \ - $(HOST_DIR)/usr/bin/python setup.py install \ - --single-version-externally-managed --root=/ --prefix=$(TARGET_DIR)/usr) +define PYTHON_PILLOW_INSTALL_TARGET_CMDS + cd $(PYTHON_PILLOW_BUILDDIR); \ + $(PYTHON_PILLOW_BASE_ENV) $(PYTHON_PILLOW_ENV) \ + $(PYTHON_PILLOW_PYTHON_INTERPRETER) setup.py build_ext \ + $(PYTHON_PILLOW_BUILD_OPTS) install \ + $(PYTHON_PILLOW_BASE_INSTALL_TARGET_OPTS) \ + $(PYTHON_PILLOW_INSTALL_TARGET_OPTS) endef $(eval $(python-package)) diff --git a/package/python-posix-ipc/python-posix-ipc.hash b/package/python-posix-ipc/python-posix-ipc.hash new file mode 100644 index 0000000000..196f186de1 --- /dev/null +++ b/package/python-posix-ipc/python-posix-ipc.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/posix-ipc/json, sha256 locally computed +md5 85607a392087715ac3a3c7ded2492d06 posix_ipc-1.0.0.tar.gz +sha256 9c93070374ca672725575e5c9874930c8cde69367fb90378b2255e048e31efcb posix_ipc-1.0.0.tar.gz diff --git a/package/python-posix-ipc/python-posix-ipc.mk b/package/python-posix-ipc/python-posix-ipc.mk index 5fa7471eba..79165375f9 100644 --- a/package/python-posix-ipc/python-posix-ipc.mk +++ b/package/python-posix-ipc/python-posix-ipc.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_POSIX_IPC_VERSION = 0.9.6 +PYTHON_POSIX_IPC_VERSION = 1.0.0 PYTHON_POSIX_IPC_SOURCE = posix_ipc-$(PYTHON_POSIX_IPC_VERSION).tar.gz -PYTHON_POSIX_IPC_SITE = http://semanchuk.com/philip/posix_ipc +PYTHON_POSIX_IPC_SITE = https://pypi.python.org/packages/f0/e6/bff62b62b2e75f695b737695951b7a4c1c6595369268a37868f5c34e1c12 PYTHON_POSIX_IPC_LICENSE = BSD-3c PYTHON_POSIX_IPC_LICENSE_FILES = LICENSE PYTHON_POSIX_IPC_SETUP_TYPE = distutils diff --git a/package/python-prompt-toolkit/Config.in b/package/python-prompt-toolkit/Config.in new file mode 100644 index 0000000000..ccc9ebb0f5 --- /dev/null +++ b/package/python-prompt-toolkit/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_PROMPT_TOOLKIT + bool "python-prompt-toolkit" + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_WCWIDTH # runtime + help + Library for building powerful interactive command lines in + Python. + + https://github.com/jonathanslenders/python-prompt-toolkit diff --git a/package/python-prompt-toolkit/python-prompt-toolkit.hash b/package/python-prompt-toolkit/python-prompt-toolkit.hash new file mode 100644 index 0000000000..0211a96fae --- /dev/null +++ b/package/python-prompt-toolkit/python-prompt-toolkit.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/prompt-toolkit/json, sha256 locally computed +md5 f74cd8ac84176fac1cdb136843ccb0d6 prompt_toolkit-1.0.7.tar.gz +sha256 ef0b8188179fe7d052161ed274b43e18f5a680ff84d01462293b327e1668d2ef prompt_toolkit-1.0.7.tar.gz diff --git a/package/python-prompt-toolkit/python-prompt-toolkit.mk b/package/python-prompt-toolkit/python-prompt-toolkit.mk new file mode 100644 index 0000000000..7e85dcd221 --- /dev/null +++ b/package/python-prompt-toolkit/python-prompt-toolkit.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-prompt-toolkit +# +################################################################################ + +PYTHON_PROMPT_TOOLKIT_VERSION = 1.0.7 +PYTHON_PROMPT_TOOLKIT_SOURCE = prompt_toolkit-$(PYTHON_PROMPT_TOOLKIT_VERSION).tar.gz +PYTHON_PROMPT_TOOLKIT_SITE = https://pypi.python.org/packages/dd/55/2fb4883d2b21d072204fd21ca5e6040faa253135554590d0b67380669176 +PYTHON_PROMPT_TOOLKIT_SETUP_TYPE = setuptools +PYTHON_PROMPT_TOOLKIT_LICENSE = BSD-3c +PYTHON_PROMPT_TOOLKIT_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch b/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch deleted file mode 100644 index 3f0eabd23a..0000000000 --- a/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 7e7db7225e227905acabfa2149152ece21c93e70 Mon Sep 17 00:00:00 2001 -From: Steven Noonan -Date: Sun, 8 Nov 2015 09:03:00 -0800 -Subject: [PATCH] python-protobuf: don't require google-apputils - -This dependency is totally superfluous for successfully building/running -python-protobuf. It's only "required" at build time and is not staged into the -install directory, but it isn't even really required for a successful build. - -Signed-off-by: Steven Noonan ---- - python/setup.py | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/python/setup.py b/python/setup.py -index 2450a77..db6f497 100755 ---- a/python/setup.py -+++ b/python/setup.py -@@ -160,7 +160,6 @@ if __name__ == '__main__': - packages = [ 'google' ], - namespace_packages = [ 'google' ], - test_suite = 'setup.MakeTestSuite', -- google_test_dir = "google/protobuf/internal", - # Must list modules explicitly so that we don't install tests. - py_modules = [ - 'google.protobuf.internal.api_implementation', -@@ -189,7 +188,6 @@ if __name__ == '__main__': - 'google.protobuf.text_format'], - cmdclass = { 'clean': clean, 'build_py': build_py }, - install_requires = ['setuptools'], -- setup_requires = ['google-apputils'], - ext_modules = ext_module_list, - url = 'https://developers.google.com/protocol-buffers/', - maintainer = maintainer_email, --- -2.6.2 - diff --git a/package/python-protobuf/python-protobuf.hash b/package/python-protobuf/python-protobuf.hash new file mode 120000 index 0000000000..57a40ce5bd --- /dev/null +++ b/package/python-protobuf/python-protobuf.hash @@ -0,0 +1 @@ +../protobuf/protobuf.hash \ No newline at end of file diff --git a/package/python-psutil/Config.in b/package/python-psutil/Config.in index c64eeeed64..1aec35d274 100644 --- a/package/python-psutil/Config.in +++ b/package/python-psutil/Config.in @@ -1,8 +1,13 @@ config BR2_PACKAGE_PYTHON_PSUTIL bool "python-psutil" + # sys/sysinfo.h conflict with kernel headers + depends on !BR2_TOOLCHAIN_USES_MUSL help psutil is a cross-platform library for retrieving information on running processes and system utilization (CPU, memory, disks, network) in Python. https://pypi.python.org/pypi/psutil + +comment "python-psutil needs a uClibc or glibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL diff --git a/package/python-psutil/python-psutil.hash b/package/python-psutil/python-psutil.hash index 21de357b4d..ead2d9c5ba 100644 --- a/package/python-psutil/python-psutil.hash +++ b/package/python-psutil/python-psutil.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=53d18a5a2aff970d5658c22921c2bbe6, sha256 locally computed -md5 53d18a5a2aff970d5658c22921c2bbe6 psutil-3.4.2.tar.gz -sha256 b17fa01aa766daa388362d0eda5c215d77e03a8d37676b68971f37bf3913b725 psutil-3.4.2.tar.gz +# md5 from https://pypi.python.org/pypi/psutil/json, sha256 locally computed +md5 199a366dba829c88bddaf5b41d19ddc0 psutil-4.3.1.tar.gz +sha256 38f74182fb9e15cafd0cdf0821098a95cc17301807aed25634a18b66537ba51b psutil-4.3.1.tar.gz diff --git a/package/python-psutil/python-psutil.mk b/package/python-psutil/python-psutil.mk index 3570ff4fe4..1032318813 100644 --- a/package/python-psutil/python-psutil.mk +++ b/package/python-psutil/python-psutil.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PSUTIL_VERSION = 3.4.2 +PYTHON_PSUTIL_VERSION = 4.3.1 PYTHON_PSUTIL_SOURCE = psutil-$(PYTHON_PSUTIL_VERSION).tar.gz -PYTHON_PSUTIL_SITE = http://pypi.python.org/packages/source/p/psutil +PYTHON_PSUTIL_SITE = https://pypi.python.org/packages/78/cc/f267a1371f229bf16db6a4e604428c3b032b823b83155bd33cef45e49a53 PYTHON_PSUTIL_SETUP_TYPE = setuptools PYTHON_PSUTIL_LICENSE = BSD-3c PYTHON_PSUTIL_LICENSE_FILES = LICENSE diff --git a/package/python-pudb/Config.in b/package/python-pudb/Config.in new file mode 100644 index 0000000000..d4a4f73e6a --- /dev/null +++ b/package/python-pudb/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_PYTHON_PUDB + bool "python-pudb" + select BR2_PACKAGE_PYTHON_URWID # runtime + select BR2_PACKAGE_PYTHON_PYGMENTS # runtime + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime + select BR2_PACKAGE_PYTHON_CURSES if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_CURSES if BR2_PACKAGE_PYTHON3 # runtime + help + A full-screen, console-based Python debugger. + + https://github.com/inducer/pudb diff --git a/package/python-pudb/python-pudb.hash b/package/python-pudb/python-pudb.hash new file mode 100644 index 0000000000..b06d5e8b0a --- /dev/null +++ b/package/python-pudb/python-pudb.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pudb/json, sha256 locally computed +md5 4573b70163329c1cb59836a357bfdf7c pudb-2016.2.tar.gz +sha256 e958d7f7b1771cf297714e95054075df3b2a47455d7a740be4abbbd41289505a pudb-2016.2.tar.gz diff --git a/package/python-pudb/python-pudb.mk b/package/python-pudb/python-pudb.mk new file mode 100644 index 0000000000..5349c1e1ed --- /dev/null +++ b/package/python-pudb/python-pudb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pudb +# +################################################################################ + +PYTHON_PUDB_VERSION = 2016.2 +PYTHON_PUDB_SOURCE = pudb-$(PYTHON_PUDB_VERSION).tar.gz +PYTHON_PUDB_SITE = https://pypi.python.org/packages/50/1a/d9b692e32afff09ccb5aa33c3d51c6d5a80efbb59de90307b33601e7fa62 +PYTHON_PUDB_SETUP_TYPE = setuptools +PYTHON_PUDB_LICENSE = MIT +PYTHON_PUDB_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pycrypto/python-pycrypto.mk b/package/python-pycrypto/python-pycrypto.mk index 71943fa2cd..927ba918ae 100644 --- a/package/python-pycrypto/python-pycrypto.mk +++ b/package/python-pycrypto/python-pycrypto.mk @@ -26,6 +26,7 @@ HOST_PYTHON_PYCRYPTO_POST_EXTRACT_HOOKS += PYTHON_PYCRYPTO_RENAME_LICENSE PYTHON_PYCRYPTO_LICENSE_FILES += LEGAL/copy/LICENSE.original PYTHON_PYCRYPTO_DEPENDENCIES = gmp +HOST_PYTHON_PYCRYPTO_DEPENDENCIES = host-gmp # The configure step needs to be run outside of the setup.py since it isn't # run correctly for cross-compiling diff --git a/package/python-pydal/python-pydal.hash b/package/python-pydal/python-pydal.hash new file mode 100644 index 0000000000..ad17c33c02 --- /dev/null +++ b/package/python-pydal/python-pydal.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pydal/json, sha256 locally computed +md5 74c6cc43d5ee57bcffa804c1204030d8 pyDAL-16.9.tar.gz +sha256 e5e18b10df044c4328a5a2fe0400793a8f643fe3526daee8c99103fc5589476e pyDAL-16.9.tar.gz diff --git a/package/python-pydal/python-pydal.mk b/package/python-pydal/python-pydal.mk index 4c5da419c0..a0e9729d44 100644 --- a/package/python-pydal/python-pydal.mk +++ b/package/python-pydal/python-pydal.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_PYDAL_VERSION = v15.07 -PYTHON_PYDAL_SITE = $(call github,web2py,pydal,$(PYTHON_PYDAL_VERSION)) +PYTHON_PYDAL_VERSION = 16.9 +PYTHON_PYDAL_SOURCE = pyDAL-$(PYTHON_PYDAL_VERSION).tar.gz +PYTHON_PYDAL_SITE = https://pypi.python.org/packages/31/cb/7537f8d848106e3e4b4063955395a5dc3177c32c2cd2cc0a1938a486d4fa PYTHON_PYDAL_LICENSE = BSD-3c PYTHON_PYDAL_LICENSE_FILES = LICENSE PYTHON_PYDAL_SETUP_TYPE = setuptools diff --git a/package/python-pyelftools/Config.in b/package/python-pyelftools/Config.in new file mode 100644 index 0000000000..ca27302227 --- /dev/null +++ b/package/python-pyelftools/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_PYELFTOOLS + bool "python-pyelftools" + help + Pyelftools is a Python library for parsing and analyzing ELF + files and DWARF debug information. + + https://github.com/eliben/pyelftools diff --git a/package/python-pyelftools/python-pyelftools.hash b/package/python-pyelftools/python-pyelftools.hash new file mode 100644 index 0000000000..e345a5bbf9 --- /dev/null +++ b/package/python-pyelftools/python-pyelftools.hash @@ -0,0 +1,4 @@ +# From https://pypi.python.org/packages/ba/78/d4a186a2e38731286c99dc3e3ca8123b6f55cf2e28608e8daf2d84b65494/pyelftools-0.24.tar.gz#md5=c960d5fe0a9308d96ba38b4beec8ac8e +md5 c960d5fe0a9308d96ba38b4beec8ac8e pyelftools-0.24.tar.gz +# Locally calculated +sha256 e9dd97d685a5b96b88a988dabadb88e5a539b64cd7d7927fac9a7368dc4c459c pyelftools-0.24.tar.gz diff --git a/package/python-pyelftools/python-pyelftools.mk b/package/python-pyelftools/python-pyelftools.mk new file mode 100644 index 0000000000..5b5b488cf0 --- /dev/null +++ b/package/python-pyelftools/python-pyelftools.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyelftools +# +################################################################################ + +PYTHON_PYELFTOOLS_VERSION = 0.24 +PYTHON_PYELFTOOLS_SOURCE = pyelftools-$(PYTHON_PYELFTOOLS_VERSION).tar.gz +PYTHON_PYELFTOOLS_SITE = https://pypi.python.org/packages/ba/78/d4a186a2e38731286c99dc3e3ca8123b6f55cf2e28608e8daf2d84b65494 +PYTHON_PYELFTOOLS_LICENSE = Public domain +PYTHON_PYELFTOOLS_LICENSE_FILES = LICENSE +PYTHON_PYELFTOOLS_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-pyftpdlib/python-pyftpdlib.hash b/package/python-pyftpdlib/python-pyftpdlib.hash index b6d0cca416..9726f9f723 100644 --- a/package/python-pyftpdlib/python-pyftpdlib.hash +++ b/package/python-pyftpdlib/python-pyftpdlib.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0c6f7c447fb702af4d5ca0123003c9fd, sha256 locally computed -md5 0c6f7c447fb702af4d5ca0123003c9fd pyftpdlib-1.5.0.tar.gz -sha256 0111127418e9012a8e9e6c05a0c64af1acef8c31128834805fb0f9a49c746261 pyftpdlib-1.5.0.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=61b23e2362df23d0dfa5fe76f6e2ab55, sha256 locally computed +md5 61b23e2362df23d0dfa5fe76f6e2ab55 pyftpdlib-1.5.1.tar.gz +sha256 7bcd7fc825123414a157718c6dcdcb0978208d3c865d4650564acef4acce3354 pyftpdlib-1.5.1.tar.gz diff --git a/package/python-pyftpdlib/python-pyftpdlib.mk b/package/python-pyftpdlib/python-pyftpdlib.mk index 11e24e21c9..85d0b56adf 100644 --- a/package/python-pyftpdlib/python-pyftpdlib.mk +++ b/package/python-pyftpdlib/python-pyftpdlib.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYFTPDLIB_VERSION = 1.5.0 +PYTHON_PYFTPDLIB_VERSION = 1.5.1 PYTHON_PYFTPDLIB_SOURCE = pyftpdlib-$(PYTHON_PYFTPDLIB_VERSION).tar.gz -PYTHON_PYFTPDLIB_SITE = https://pypi.python.org/packages/source/p/pyftpdlib +PYTHON_PYFTPDLIB_SITE = https://pypi.python.org/packages/a8/f8/0f6db156898616dbcbd7bf865660295c81479071ab0fcd1898fe1b3a4fc4 PYTHON_PYFTPDLIB_SETUP_TYPE = setuptools PYTHON_PYFTPDLIB_LICENSE = MIT PYTHON_PYFTPDLIB_LICENSE_FILES = LICENSE diff --git a/package/python-pygame/python-pygame.mk b/package/python-pygame/python-pygame.mk index 995f80ad79..1ef2bdf62b 100644 --- a/package/python-pygame/python-pygame.mk +++ b/package/python-pygame/python-pygame.mk @@ -6,7 +6,7 @@ # stable 1.9.1 release requires V4L which has been wiped out of recent Linux # kernels, so use latest mercurial revision until next stable release is out. -PYTHON_PYGAME_VERSION = f0bb4a4b365d +PYTHON_PYGAME_VERSION = d61ea8eabd56 PYTHON_PYGAME_SOURCE = pygame-$(PYTHON_PYGAME_VERSION).tar.gz PYTHON_PYGAME_SITE = https://bitbucket.org/pygame/pygame PYTHON_PYGAME_SITE_METHOD = hg @@ -66,6 +66,10 @@ define PYTHON_PYGAME_UNCONFIGURE_SCRAP endef endif +define PYTHON_PYGAME_UNCONFIGURE_FREETYPE + $(SED) 's/^_freetype/#_freetype/' $(@D)/Setup +endef + PYTHON_PYGAME_SDL_FLAGS = `$(STAGING_DIR)/usr/bin/sdl-config --cflags` PYTHON_PYGAME_SDL_FLAGS += `$(STAGING_DIR)/usr/bin/sdl-config --libs` @@ -82,6 +86,7 @@ define PYTHON_PYGAME_CONFIGURE_CMDS $(PYTHON_PYGAME_UNCONFIGURE_SURFARRAY) $(PYTHON_PYGAME_UNCONFIGURE_MOVIE) $(PYTHON_PYGAME_UNCONFIGURE_SCRAP) + $(PYTHON_PYGAME_UNCONFIGURE_FREETYPE) endef define PYTHON_PYGAME_REMOVE_DOC diff --git a/package/python-pygments/python-pygments.hash b/package/python-pygments/python-pygments.hash index bb954dd551..2af1597fe8 100644 --- a/package/python-pygments/python-pygments.hash +++ b/package/python-pygments/python-pygments.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=84533d22f72de894f6d3907c3ca9eddf, sha256 locally computed. -md5 84533d22f72de894f6d3907c3ca9eddf Pygments-2.1.tar.gz -sha256 13a0ef5fafd7b16cf995bc28fe7aab0780dab1b2fda0fc89e033709af8b8a47b Pygments-2.1.tar.gz +# md5 from https://pypi.python.org/pypi/pygments/json, sha256 locally computed +md5 ed3fba2467c8afcda4d317e4ef2c6150 Pygments-2.1.3.tar.gz +sha256 88e4c8a91b2af5962bfa5ea2447ec6dd357018e86e94c7d14bd8cacbc5b55d81 Pygments-2.1.3.tar.gz diff --git a/package/python-pygments/python-pygments.mk b/package/python-pygments/python-pygments.mk index eafd77590b..16ed90dc37 100644 --- a/package/python-pygments/python-pygments.mk +++ b/package/python-pygments/python-pygments.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYGMENTS_VERSION = 2.1 +PYTHON_PYGMENTS_VERSION = 2.1.3 PYTHON_PYGMENTS_SOURCE = Pygments-$(PYTHON_PYGMENTS_VERSION).tar.gz -PYTHON_PYGMENTS_SITE = http://pypi.python.org/packages/source/P/Pygments +PYTHON_PYGMENTS_SITE = https://pypi.python.org/packages/b8/67/ab177979be1c81bc99c8d0592ef22d547e70bb4c6815c383286ed5dec504 PYTHON_PYGMENTS_LICENSE = BSD-2c PYTHON_PYGMENTS_LICENSE_FILES = LICENSE PYTHON_PYGMENTS_SETUP_TYPE = setuptools diff --git a/package/python-pyicu/Config.in b/package/python-pyicu/Config.in new file mode 100644 index 0000000000..a3578f10c1 --- /dev/null +++ b/package/python-pyicu/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_PYTHON_PYICU + bool "python-pyicu" + depends on !BR2_BINFMT_FLAT # icu + depends on BR2_INSTALL_LIBSTDCPP # icu + select BR2_PACKAGE_ICU + help + Python extension wrapping the ICU C++ API. + + http://pyicu.osafoundation.org/ + +comment "python-pyicu needs a toolchain w/ C++" + depends on !BR2_BINFMT_FLAT + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-pyicu/python-pyicu.hash b/package/python-pyicu/python-pyicu.hash new file mode 100644 index 0000000000..69edba83b1 --- /dev/null +++ b/package/python-pyicu/python-pyicu.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/PyICU/json, sha256 locally computed +md5 30f85b7272f15b26c110c9f3e3a9e7a0 PyICU-1.9.5.tar.gz +sha256 73b052b800861fae3281dbaf9c92d12a81cabf3d31912d94c51862e093ef359b PyICU-1.9.5.tar.gz diff --git a/package/python-pyicu/python-pyicu.mk b/package/python-pyicu/python-pyicu.mk new file mode 100644 index 0000000000..5c01421376 --- /dev/null +++ b/package/python-pyicu/python-pyicu.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-pyicu +# +################################################################################ + +PYTHON_PYICU_VERSION = 1.9.5 +PYTHON_PYICU_SOURCE = PyICU-$(PYTHON_PYICU_VERSION).tar.gz +PYTHON_PYICU_SITE = https://pypi.python.org/packages/a2/9f/1947f288143191b903e58633ee597cb98bc284de28dafb1231b6f8b67b99 +PYTHON_PYICU_LICENSE = MIT +PYTHON_PYICU_LICENSE_FILES = LICENSE +PYTHON_PYICU_DEPENDENCIES = icu +PYTHON_PYICU_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-pyinotify/python-pyinotify.hash b/package/python-pyinotify/python-pyinotify.hash new file mode 100644 index 0000000000..2bcf0541d0 --- /dev/null +++ b/package/python-pyinotify/python-pyinotify.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 7943f198c5cef2bdc121d847937fbe565daaa7d4daaf1b8de8ef5689812f481c python-pyinotify-0.9.6.tar.gz diff --git a/package/python-pylru/Config.in b/package/python-pylru/Config.in new file mode 100644 index 0000000000..c174576942 --- /dev/null +++ b/package/python-pylru/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_PYLRU + bool "python-pylru" + help + A least recently used (LRU) cache implementation. + + https://github.com/jlhutch/pylru diff --git a/package/python-pylru/python-pylru.hash b/package/python-pylru/python-pylru.hash new file mode 100644 index 0000000000..806ea36a0f --- /dev/null +++ b/package/python-pylru/python-pylru.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pylru/json, sha256 locally computed +md5 41369d58a1c4391c5cc36f84262abcdc pylru-1.0.9.tar.gz +sha256 71376192671f0ad1690b2a7427d39a29b1df994c8469a9b46b03ed7e28c0172c pylru-1.0.9.tar.gz diff --git a/package/python-pylru/python-pylru.mk b/package/python-pylru/python-pylru.mk new file mode 100644 index 0000000000..e670f3d1cf --- /dev/null +++ b/package/python-pylru/python-pylru.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pylru +# +################################################################################ + +PYTHON_PYLRU_VERSION = 1.0.9 +PYTHON_PYLRU_SOURCE = pylru-$(PYTHON_PYLRU_VERSION).tar.gz +PYTHON_PYLRU_SITE = https://pypi.python.org/packages/c0/7d/0de1055632f3871dfeaabe5a3f0510317cd98b93e7b792b44e4c7de2b17b +PYTHON_PYLRU_SETUP_TYPE = distutils +PYTHON_PYLRU_LICENSE = GPLv2 +PYTHON_PYLRU_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-pymysql/python-pymysql.hash b/package/python-pymysql/python-pymysql.hash index fc7e5e3ece..9e058abf30 100644 --- a/package/python-pymysql/python-pymysql.hash +++ b/package/python-pymysql/python-pymysql.hash @@ -1,4 +1,3 @@ -#md5 from https://pypi.python.org/pypi?:action=show_md5&digest=6d757cda8bfbd312714207f7c0bef5c7 -md5 6d757cda8bfbd312714207f7c0bef5c7 PyMySQL-0.7.2.tar.gz -# Locally calculated: -sha256 bd7acb4990dbf097fae3417641f93e25c690e01ed25c3ed32ea638d6c3ac04ba PyMySQL-0.7.2.tar.gz +# md5 from https://pypi.python.org/pypi/pymysql/json, sha256 locally computed +md5 bf82311ac2df4c43adad003a8c805b90 PyMySQL-0.7.9.tar.gz +sha256 2331f82b7b85d407c8d9d7a8d7901a6abbeb420533e5d5d64ded5009b5c6dcc3 PyMySQL-0.7.9.tar.gz diff --git a/package/python-pymysql/python-pymysql.mk b/package/python-pymysql/python-pymysql.mk index e58ff7e8bf..94a93a26cf 100644 --- a/package/python-pymysql/python-pymysql.mk +++ b/package/python-pymysql/python-pymysql.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYMYSQL_VERSION = 0.7.2 +PYTHON_PYMYSQL_VERSION = 0.7.9 PYTHON_PYMYSQL_SOURCE = PyMySQL-$(PYTHON_PYMYSQL_VERSION).tar.gz -PYTHON_PYMYSQL_SITE = https://pypi.python.org/packages/source/P/PyMySQL +PYTHON_PYMYSQL_SITE = https://pypi.python.org/packages/a4/c4/c15457f261fda9839637de044eca9b6da8f55503183fe887523801b85701 PYTHON_PYMYSQL_LICENSE = MIT PYTHON_PYMYSQL_LICENSE_FILES = LICENSE PYTHON_PYMYSQL_SETUP_TYPE = setuptools diff --git a/package/python-pyopenssl/python-pyopenssl.hash b/package/python-pyopenssl/python-pyopenssl.hash index 27427d2a15..894c4f8bab 100644 --- a/package/python-pyopenssl/python-pyopenssl.hash +++ b/package/python-pyopenssl/python-pyopenssl.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9587d813dcf656e9f2760e41a3682dc3, sha256 locally computed -md5 9587d813dcf656e9f2760e41a3682dc3 pyOpenSSL-16.0.0.tar.gz -sha256 363d10ee43d062285facf4e465f4f5163f9f702f9134f0a5896f134cbb92d17d pyOpenSSL-16.0.0.tar.gz +# md5 from https://pypi.python.org/pypi/pyopenssl/json, sha256 locally computed +md5 6635503758c65ea6f70d18d1b18e46d5 pyOpenSSL-16.2.0.tar.gz +sha256 7779a3bbb74e79db234af6a08775568c6769b5821faecf6e2f4143edb227516e pyOpenSSL-16.2.0.tar.gz diff --git a/package/python-pyopenssl/python-pyopenssl.mk b/package/python-pyopenssl/python-pyopenssl.mk index 7606411155..a5312a0635 100644 --- a/package/python-pyopenssl/python-pyopenssl.mk +++ b/package/python-pyopenssl/python-pyopenssl.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYOPENSSL_VERSION = 16.0.0 +PYTHON_PYOPENSSL_VERSION = 16.2.0 PYTHON_PYOPENSSL_SOURCE = pyOpenSSL-$(PYTHON_PYOPENSSL_VERSION).tar.gz -PYTHON_PYOPENSSL_SITE = https://pypi.python.org/packages/source/p/pyOpenSSL +PYTHON_PYOPENSSL_SITE = https://pypi.python.org/packages/0c/d6/b1fe519846a21614fa4f8233361574eddb223e0bc36b182140d916acfb3b PYTHON_PYOPENSSL_LICENSE = Apache-2.0 PYTHON_PYOPENSSL_LICENSE_FILES = LICENSE PYTHON_PYOPENSSL_SETUP_TYPE = setuptools diff --git a/package/python-pyparsing/python-pyparsing.hash b/package/python-pyparsing/python-pyparsing.hash index 93a08458df..6cf686a809 100644 --- a/package/python-pyparsing/python-pyparsing.hash +++ b/package/python-pyparsing/python-pyparsing.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi/pyparsing/2.0.3, sha256 locally computed -md5 0fe479be09fc2cf005f753d3acc35939 pyparsing-2.0.3.tar.gz -sha256 06e729e1cbf5274703b1f47b6135ed8335999d547f9d8cf048b210fb8ebf844f pyparsing-2.0.3.tar.gz +# md5 from https://pypi.python.org/pypi/pyparsing/json, sha256 locally computed +md5 ee943c354eac79526533c58342f322c7 pyparsing-2.1.9.tar.gz +sha256 93326f5490bcfe7069806ff342692e75f72529cfa82f20683b5fceeb5d4a7fc2 pyparsing-2.1.9.tar.gz diff --git a/package/python-pyparsing/python-pyparsing.mk b/package/python-pyparsing/python-pyparsing.mk index ad066b8f9e..652345d300 100644 --- a/package/python-pyparsing/python-pyparsing.mk +++ b/package/python-pyparsing/python-pyparsing.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_PYPARSING_VERSION = 2.0.3 +PYTHON_PYPARSING_VERSION = 2.1.9 PYTHON_PYPARSING_SOURCE = pyparsing-$(PYTHON_PYPARSING_VERSION).tar.gz -PYTHON_PYPARSING_SITE = https://pypi.python.org/packages/source/p/pyparsing +PYTHON_PYPARSING_SITE = https://pypi.python.org/packages/87/ee/6f3a94d834c82a5c1a74f2fc77775ff05b5fbbf7d97f844e6fff5e2ff94b PYTHON_PYPARSING_LICENSE = MIT PYTHON_PYPARSING_LICENSE_FILES = LICENSE -PYTHON_PYPARSING_SETUP_TYPE = distutils +PYTHON_PYPARSING_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-pypcap/python-pypcap.hash b/package/python-pypcap/python-pypcap.hash new file mode 100644 index 0000000000..30ddfab411 --- /dev/null +++ b/package/python-pypcap/python-pypcap.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 5716d97b39d40b79daf7b0c6a8c8c514f5f1de8f20561c8621ee62a90b93fb03 python-pypcap-6f46e7bf29a648256ddc732a7d0ec83d3ffca390.tar.gz diff --git a/package/python-pyqrcode/Config.in b/package/python-pyqrcode/Config.in new file mode 100644 index 0000000000..01b7ae8132 --- /dev/null +++ b/package/python-pyqrcode/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_PYTHON_PYQRCODE + bool "python-pyqrcode" + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_CODECSCJK if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_CODECSCJK if BR2_PACKAGE_PYTHON3 # runtime + help + A QR code generator written purely in Python with SVG, EPS, + PNG and terminal output. + + https://github.com/mnooner256/pyqrcode diff --git a/package/python-pyqrcode/python-pyqrcode.hash b/package/python-pyqrcode/python-pyqrcode.hash new file mode 100644 index 0000000000..619ddb0cc4 --- /dev/null +++ b/package/python-pyqrcode/python-pyqrcode.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pyqrcode/json, sha256 locally computed +md5 371f29f4b03bd2830c6e0319258b1259 PyQRCode-1.2.1.tar.gz +sha256 fdbf7634733e56b72e27f9bce46e4550b75a3a2c420414035cae9d9d26b234d5 PyQRCode-1.2.1.tar.gz diff --git a/package/python-pyqrcode/python-pyqrcode.mk b/package/python-pyqrcode/python-pyqrcode.mk new file mode 100644 index 0000000000..67e167a4bb --- /dev/null +++ b/package/python-pyqrcode/python-pyqrcode.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyqrcode +# +################################################################################ + +PYTHON_PYQRCODE_VERSION = 1.2.1 +PYTHON_PYQRCODE_SOURCE = PyQRCode-$(PYTHON_PYQRCODE_VERSION).tar.gz +PYTHON_PYQRCODE_SITE = https://pypi.python.org/packages/37/61/f07226075c347897937d4086ef8e55f0a62ae535e28069884ac68d979316 +PYTHON_PYQRCODE_SETUP_TYPE = setuptools +PYTHON_PYQRCODE_LICENSE = BSD-3c +PYTHON_PYQRCODE_LICENSE_FILES = setup.py + +$(eval $(python-package)) diff --git a/package/python-pyqt/Config.in b/package/python-pyqt/Config.in index a50cb74a43..6934a4c4ab 100644 --- a/package/python-pyqt/Config.in +++ b/package/python-pyqt/Config.in @@ -1,13 +1,9 @@ -comment "python-pyqt needs a toolchain w/ C++, threads" - depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS +comment "python-pyqt needs Qt4" + depends on !BR2_PACKAGE_QT config BR2_PACKAGE_PYTHON_PYQT bool "python-pyqt" - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS # qt - depends on BR2_USE_MMU # qt - select BR2_PACKAGE_QT + depends on BR2_PACKAGE_QT select BR2_PACKAGE_PYTHON_SIP help PyQt4 for Qt Embedded 4 bindings. diff --git a/package/python-pyqt/python-pyqt.mk b/package/python-pyqt/python-pyqt.mk index fa298c480f..50e835170f 100644 --- a/package/python-pyqt/python-pyqt.mk +++ b/package/python-pyqt/python-pyqt.mk @@ -108,9 +108,6 @@ define PYTHON_PYQT_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install touch $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4/__init__.py $(RM) -rf $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4/uic/$(PYTHON_PYQT_RM_PORT_BASE) - PYTHONPATH="$(PYTHON_PATH)" \ - $(HOST_DIR)/usr/bin/python -c "import compileall; \ - compileall.compile_dir('$(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4')" endef $(eval $(generic-package)) diff --git a/package/python-pyqt5/0001-configure-skip-qtdetail.patch b/package/python-pyqt5/0001-configure-skip-qtdetail.patch new file mode 100644 index 0000000000..2e7b331ed6 --- /dev/null +++ b/package/python-pyqt5/0001-configure-skip-qtdetail.patch @@ -0,0 +1,29 @@ +Do not run qtdetail + +qtdetail is a tool that generates qtdetail.out. Since this program is +cross-compiled, it's not possible to run it on the host. + +Consequently, python-pyqt5.mk generates the qtdetail.out file before +calling configure.py. + +Therefore, this patch makes sure that the pre-generated qtdetail.out +file is kept, and that qtdetail is not executed. + +Signed-off-by: Gwenhael Goavec-Merou +Signed-off-by: Sergey Kostanbaev +--- +Index: PyQt5_gpl-5.7/configure.py +=================================================================== +--- PyQt5_gpl-5.7.orig/configure.py ++++ PyQt5_gpl-5.7/configure.py +@@ -672,10 +672,6 @@ int main(int argc, char **argv) + if cmd is None: + error("Failed to determine the detail of your Qt installation. Try again using the --verbose flag to see more detail about the problem.") + +- # Create the output file, first making sure it doesn't exist. +- remove_file(out_file) +- run_command(cmd, verbose) +- + if not os.access(out_file, os.F_OK): + error("%s failed to create %s. Make sure your Qt installation is correct." % (cmd, out_file)) + diff --git a/package/python-pyqt5/0002-fix-qt-5.6.2.patch b/package/python-pyqt5/0002-fix-qt-5.6.2.patch new file mode 100644 index 0000000000..a56af09025 --- /dev/null +++ b/package/python-pyqt5/0002-fix-qt-5.6.2.patch @@ -0,0 +1,28 @@ +Fix the build with Qt 5.6.2 + +Building PyQt 5.7 with versions of Qt older than Qt 5.7 is supposed to +work, but currently fails in practice. In fact, this is due to the +fact that the %Timeline variable in QtCoremod.sip didn't contain the +5.6.2 Qt version, so if this version was used, PyQt was assuming it +was the later version 5.7, and therefore started enabling APIs only +available in Qt 5.7, causing build failures when building against Qt +5.6.2. + +Adding Qt_5_6_2 to the timeline fixes this problem. This fix was +suggested by Phil Thompson . + +Signed-off-by: Thomas Petazzoni + +Index: PyQt5_gpl-5.7/sip/QtCore/QtCoremod.sip +=================================================================== +--- PyQt5_gpl-5.7.orig/sip/QtCore/QtCoremod.sip 2016-07-25 15:55:37.000000000 +0200 ++++ PyQt5_gpl-5.7/sip/QtCore/QtCoremod.sip 2016-10-26 15:45:43.577153825 +0200 +@@ -22,7 +22,7 @@ + + %Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", version=1) + +-%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_7_0} ++%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_7_0} + + %Platforms {WS_X11 WS_WIN WS_MACX} + diff --git a/package/python-pyqt5/0003-remove-WindowOkButtonHint-and-WindowCancelButtonHint.patch b/package/python-pyqt5/0003-remove-WindowOkButtonHint-and-WindowCancelButtonHint.patch new file mode 100644 index 0000000000..146cce0348 --- /dev/null +++ b/package/python-pyqt5/0003-remove-WindowOkButtonHint-and-WindowCancelButtonHint.patch @@ -0,0 +1,27 @@ +From bb7cbdede46f72468bbb1b9bbefd43a1dbad21c0 Mon Sep 17 00:00:00 2001 +From: Zoltan Gyarmati +Date: Mon, 30 Jan 2017 18:28:15 +0100 +Subject: [PATCH] remove WindowOkButtonHint and WindowCancelButtonHint from + qnamespace.sip as they are removed from qt5.8 + +Signed-off-by: Zoltan Gyarmati +--- + sip/QtCore/qnamespace.sip | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/sip/QtCore/qnamespace.sip b/sip/QtCore/qnamespace.sip +index 2db83b7..559f410 100644 +--- a/sip/QtCore/qnamespace.sip ++++ b/sip/QtCore/qnamespace.sip +@@ -209,8 +209,6 @@ namespace Qt + WindowContextHelpButtonHint, + WindowShadeButtonHint, + WindowStaysOnTopHint, +- WindowOkButtonHint, +- WindowCancelButtonHint, + WindowStaysOnBottomHint, + WindowCloseButtonHint, + MacWindowToolBarButtonHint, +-- +2.7.4 + diff --git a/package/python-pyqt5/Config.in b/package/python-pyqt5/Config.in new file mode 100644 index 0000000000..20ac988703 --- /dev/null +++ b/package/python-pyqt5/Config.in @@ -0,0 +1,11 @@ +comment "python-pyqt5 needs Qt5" + depends on !BR2_PACKAGE_QT5 + +config BR2_PACKAGE_PYTHON_PYQT5 + bool "python-pyqt5" + depends on BR2_PACKAGE_QT5 + select BR2_PACKAGE_PYTHON_SIP + help + Python bindings for Qt 5 + + http://www.riverbankcomputing.com/software/pyqt/ diff --git a/package/python-pyqt5/python-pyqt5.hash b/package/python-pyqt5/python-pyqt5.hash new file mode 100644 index 0000000000..2a7d05b49a --- /dev/null +++ b/package/python-pyqt5/python-pyqt5.hash @@ -0,0 +1,3 @@ +# md5 from http://http://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.7, sha256 locally computed +md5 e3dc21f31fd714659f0688e1eb31bacf PyQt5_gpl-5.7.tar.gz +sha256 892693ba5f79989abb2061dad2d5c4e6f127e9dd3240f73f8220c7152cd35b05 PyQt5_gpl-5.7.tar.gz diff --git a/package/python-pyqt5/python-pyqt5.mk b/package/python-pyqt5/python-pyqt5.mk new file mode 100644 index 0000000000..e58ee5ad93 --- /dev/null +++ b/package/python-pyqt5/python-pyqt5.mk @@ -0,0 +1,79 @@ +################################################################################ +# +# python-pyqt5 +# +################################################################################ + +PYTHON_PYQT5_VERSION = 5.7 +PYTHON_PYQT5_SOURCE = PyQt5_gpl-$(PYTHON_PYQT5_VERSION).tar.gz +PYTHON_PYQT5_SITE = http://downloads.sourceforge.net/project/pyqt/PyQt5/PyQt-$(PYTHON_PYQT5_VERSION) +PYTHON_PYQT5_LICENSE = GPLv3 +PYTHON_PYQT5_LICENSE_FILES = LICENSE + +PYTHON_PYQT5_DEPENDENCIES = python-sip host-python-sip qt5base + +ifeq ($(BR2_PACKAGE_PYTHON),y) +PYTHON_PYQT5_PYTHON_DIR = python$(PYTHON_VERSION_MAJOR) +PYTHON_PYQT5_RM_PORT_BASE = port_v3 +else ifeq ($(BR2_PACKAGE_PYTHON3),y) +PYTHON_PYQT5_PYTHON_DIR = python$(PYTHON3_VERSION_MAJOR) +PYTHON_PYQT5_RM_PORT_BASE = port_v2 +endif + +PYTHON_PYQT5_QTDETAIL_LICENSE = Open Source + +PYTHON_PYQT5_QTDETAIL_TYPE = shared + +# Turn off features that aren't available in current qt configuration +PYTHON_PYQT5_QTDETAIL_DISABLE_FEATURES += $(if $(BR2_PACKAGE_OPENSSL),,PyQt_SSL) +PYTHON_PYQT5_QTDETAIL_DISABLE_FEATURES += $(if $(BR2_PACKAGE_QT5BASE_OPENGL),,PyQt_OpenGL) +PYTHON_PYQT5_QTDETAIL_DISABLE_FEATURES += $(if $(BR2_PACKAGE_QT5BASE_OPENGL_DESKTOP),,PyQt_Desktop_OpenGL) + +define PYTHON_PYQT5_QTDETAIL + echo $(1) >> $(2)/qtdetail.out +endef + +# Since we can't run generate qtdetail.out by running qtdetail on target device +# we must generate the configuration. +define PYTHON_PYQT5_GENERATE_QTDETAIL + $(RM) -f $(1)/qtdetail.out + $(call PYTHON_PYQT5_QTDETAIL,$(PYTHON_PYQT5_QTDETAIL_LICENSE),$(1)) + $(call PYTHON_PYQT5_QTDETAIL,$(PYTHON_PYQT5_QTDETAIL_TYPE),$(1)) + $(foreach f,$(PYTHON_PYQT5_QTDETAIL_DISABLE_FEATURES), + $(call PYTHON_PYQT5_QTDETAIL,$(f),$(1)) \ + ) +endef + +PYTHON_PYQT5_CONF_OPTS = \ + --bindir $(TARGET_DIR)/usr/bin \ + --destdir $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT5_PYTHON_DIR)/site-packages \ + --qmake $(HOST_DIR)/usr/bin/qmake \ + --sysroot $(STAGING_DIR)/usr \ + -w --confirm-license \ + --no-designer-plugin \ + --no-docstrings \ + --no-sip-files + +define PYTHON_PYQT5_CONFIGURE_CMDS + $(call PYTHON_PYQT5_GENERATE_QTDETAIL,$(@D)) + (cd $(@D); \ + $(TARGET_MAKE_ENV) \ + $(TARGET_CONFIGURE_OPTS) \ + $(HOST_DIR)/usr/bin/python configure.py \ + $(PYTHON_PYQT5_CONF_OPTS) \ + ) +endef + +define PYTHON_PYQT5_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +# __init__.py is needed to import PyQt5 +# __init__.pyc is needed if BR2_PACKAGE_PYTHON_PYC_ONLY is set +define PYTHON_PYQT5_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install + touch $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT5_PYTHON_DIR)/site-packages/PyQt5/__init__.py + $(RM) -rf $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT5_PYTHON_DIR)/site-packages/PyQt5/uic/$(PYTHON_PYQT5_RM_PORT_BASE) +endef + +$(eval $(generic-package)) diff --git a/package/python-pyro/python-pyro.hash b/package/python-pyro/python-pyro.hash new file mode 100644 index 0000000000..65ff0ae4e6 --- /dev/null +++ b/package/python-pyro/python-pyro.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 f01e32f8d1c3f427c4916e13d9e8cee24dbf924f72922a06591515911bd13756 Pyro-3.14.tar.gz diff --git a/package/python-pyroute2/python-pyroute2.hash b/package/python-pyroute2/python-pyroute2.hash index df9ff02cce..ff680fc235 100644 --- a/package/python-pyroute2/python-pyroute2.hash +++ b/package/python-pyroute2/python-pyroute2.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=459b4020073b767cc129e360dabbd2d7, sha256 locally computed -md5 459b4020073b767cc129e360dabbd2d7 pyroute2-0.3.20.tar.gz -sha256 ed28856753b941d4277b2f14b89c9edec35be4c97e1831f900fe4ce6fc12161b pyroute2-0.3.20.tar.gz +# md5 from https://pypi.python.org/pypi/pyroute2/json, sha256 locally computed +md5 317303ba8a5e3d55b4f918fd1b7e186d pyroute2-0.4.8.tar.gz +sha256 a59907d2c5756f188b5f8aa48e3060e31c6f40e076f8143b99240fe0108a48d6 pyroute2-0.4.8.tar.gz diff --git a/package/python-pyroute2/python-pyroute2.mk b/package/python-pyroute2/python-pyroute2.mk index 2e9e0ddff4..5ea4f54576 100644 --- a/package/python-pyroute2/python-pyroute2.mk +++ b/package/python-pyroute2/python-pyroute2.mk @@ -1,12 +1,12 @@ -############################################################# +################################################################################ # # python-pyroute2 # -############################################################# +################################################################################ -PYTHON_PYROUTE2_VERSION = 0.3.20 +PYTHON_PYROUTE2_VERSION = 0.4.8 PYTHON_PYROUTE2_SOURCE = pyroute2-$(PYTHON_PYROUTE2_VERSION).tar.gz -PYTHON_PYROUTE2_SITE = https://pypi.python.org/packages/source/p/pyroute2 +PYTHON_PYROUTE2_SITE = https://pypi.python.org/packages/fb/c1/2cbd9d3f91c663be7168ee2d8d6e919006ffeef57cac76bdd9e6cba7f468 PYTHON_PYROUTE2_LICENSE = Apache-2.0 or GPLv2+ PYTHON_PYROUTE2_LICENSE_FILES = LICENSE.Apache.v2 LICENSE.GPL.v2 README.license.md PYTHON_PYROUTE2_SETUP_TYPE = distutils diff --git a/package/python-pysnmp-apps/python-pysnmp-apps.hash b/package/python-pysnmp-apps/python-pysnmp-apps.hash new file mode 100644 index 0000000000..2b865cbce9 --- /dev/null +++ b/package/python-pysnmp-apps/python-pysnmp-apps.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pysnmp-apps/json, sha256 locally computed +md5 7fc08e2d81a77d558b38be5e49ff833e pysnmp-apps-0.4.1.tar.gz +sha256 57accb8c2fcb255b4da85af07ef9cd6a266dc5143b2834419ec8a39a879edeb7 pysnmp-apps-0.4.1.tar.gz diff --git a/package/python-pysnmp-apps/python-pysnmp-apps.mk b/package/python-pysnmp-apps/python-pysnmp-apps.mk index d6e9db2d79..2c831df1ee 100644 --- a/package/python-pysnmp-apps/python-pysnmp-apps.mk +++ b/package/python-pysnmp-apps/python-pysnmp-apps.mk @@ -4,12 +4,12 @@ # ################################################################################ -PYTHON_PYSNMP_APPS_VERSION = 0.3.3 +PYTHON_PYSNMP_APPS_VERSION = 0.4.1 PYTHON_PYSNMP_APPS_SOURCE = pysnmp-apps-$(PYTHON_PYSNMP_APPS_VERSION).tar.gz PYTHON_PYSNMP_APPS_SITE = https://pypi.python.org/packages/source/p/pysnmp-apps PYTHON_PYSNMP_APPS_SETUP_TYPE = setuptools PYTHON_PYSNMP_APPS_LICENSE = BSD-3c -PYTHON_PYSNMP_APPS_LICENSE_FILES = LICENSE +PYTHON_PYSNMP_APPS_LICENSE_FILES = LICENSE.txt PYTHON_PYSNMP_APPS_DEPENDENCIES = python-pysnmp diff --git a/package/python-pysnmp-mibs/python-pysnmp-mibs.hash b/package/python-pysnmp-mibs/python-pysnmp-mibs.hash new file mode 100644 index 0000000000..8deb2e530e --- /dev/null +++ b/package/python-pysnmp-mibs/python-pysnmp-mibs.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pysnmp-mibs/json, sha256 locally computed +md5 01845c4595d87d3c3485c0449616cbda pysnmp-mibs-0.1.6.tar.gz +sha256 00fa321ca598e8a14c0ad98702bf10fb5e9d57b7d06bb99dc818fea07683720c pysnmp-mibs-0.1.6.tar.gz diff --git a/package/python-pysnmp-mibs/python-pysnmp-mibs.mk b/package/python-pysnmp-mibs/python-pysnmp-mibs.mk index 21b9673764..a0db763cc6 100644 --- a/package/python-pysnmp-mibs/python-pysnmp-mibs.mk +++ b/package/python-pysnmp-mibs/python-pysnmp-mibs.mk @@ -4,12 +4,12 @@ # ################################################################################ -PYTHON_PYSNMP_MIBS_VERSION = 0.1.4 +PYTHON_PYSNMP_MIBS_VERSION = 0.1.6 PYTHON_PYSNMP_MIBS_SOURCE = pysnmp-mibs-$(PYTHON_PYSNMP_MIBS_VERSION).tar.gz -PYTHON_PYSNMP_MIBS_SITE = https://pypi.python.org/packages/source/p/pysnmp-mibs +PYTHON_PYSNMP_MIBS_SITE = https://pypi.python.org/packages/bf/7c/99ab192af934ed5d41ceef92a1b949b41652f29b46241b902ffec55642f4 PYTHON_PYSNMP_MIBS_SETUP_TYPE = setuptools PYTHON_PYSNMP_MIBS_LICENSE = BSD-3c -PYTHON_PYSNMP_MIBS_LICENSE_FILES = LICENSE +PYTHON_PYSNMP_MIBS_LICENSE_FILES = LICENSE.txt PYTHON_PYSNMP_MIBS_DEPENDENCIES = python-pysnmp diff --git a/package/python-pysnmp/python-pysnmp.hash b/package/python-pysnmp/python-pysnmp.hash new file mode 100644 index 0000000000..b0f0f4962b --- /dev/null +++ b/package/python-pysnmp/python-pysnmp.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pysnmp/json, sha256 locally computed +md5 9a4d23c4c1edea1c77faed72c469d8e8 pysnmp-4.3.2.tar.gz +sha256 7c2bd81df17aa7dca0057a68e7a32284a72231309a0237d66d5b803b5c118977 pysnmp-4.3.2.tar.gz diff --git a/package/python-pysnmp/python-pysnmp.mk b/package/python-pysnmp/python-pysnmp.mk index 3d0f3b52cd..dff8bdd3ce 100644 --- a/package/python-pysnmp/python-pysnmp.mk +++ b/package/python-pysnmp/python-pysnmp.mk @@ -4,13 +4,13 @@ # ################################################################################ -PYTHON_PYSNMP_VERSION = 4.2.4 +PYTHON_PYSNMP_VERSION = 4.3.2 PYTHON_PYSNMP_SOURCE = pysnmp-$(PYTHON_PYSNMP_VERSION).tar.gz -PYTHON_PYSNMP_SITE = https://pypi.python.org/packages/source/p/pysnmp +PYTHON_PYSNMP_SITE = https://pypi.python.org/packages/9e/77/795fcc9d9a01adcb6175a3bf6532132addb8904922afd7877a9930d89f2f PYTHON_PYSNMP_SETUP_TYPE = setuptools PYTHON_PYSNMP_LICENSE = BSD-3c -PYTHON_PYSNMP_LICENSE_FILES = LICENSE +PYTHON_PYSNMP_LICENSE_FILES = LICENSE.txt PYTHON_PYSNMP_DEPENDENCIES = python-pyasn python-pycrypto diff --git a/package/python-pysocks/python-pysocks.hash b/package/python-pysocks/python-pysocks.hash index 9388c42dac..556996a267 100644 --- a/package/python-pysocks/python-pysocks.hash +++ b/package/python-pysocks/python-pysocks.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=c825c7c52b2c79dde73cac8d04bd25cb, sha256 locally computed -md5 c825c7c52b2c79dde73cac8d04bd25cb PySocks-1.5.6.tar.gz -sha256 a62b35b13968ba3642a973d115ae6a11be886b5f5ae0841a3ecad4b4f1d7deb1 PySocks-1.5.6.tar.gz +# md5 from https://pypi.python.org/pypi/PySocks/json, sha256 locally computed +md5 68f4ad7a8d4fa725656ae3e9dd142d29 PySocks-1.5.7.tar.gz +sha256 e51c7694b10288e6fd9a28e15c0bcce9aca0327e7b32ebcd9af05fcd56f38b88 PySocks-1.5.7.tar.gz diff --git a/package/python-pysocks/python-pysocks.mk b/package/python-pysocks/python-pysocks.mk index a556ced8b4..a99a399ce8 100644 --- a/package/python-pysocks/python-pysocks.mk +++ b/package/python-pysocks/python-pysocks.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYSOCKS_VERSION = 1.5.6 +PYTHON_PYSOCKS_VERSION = 1.5.7 PYTHON_PYSOCKS_SOURCE = PySocks-$(PYTHON_PYSOCKS_VERSION).tar.gz -PYTHON_PYSOCKS_SITE = https://pypi.python.org/packages/source/P/PySocks +PYTHON_PYSOCKS_SITE = https://pypi.python.org/packages/16/56/9b3513078f837fa8cb88ee01ec1cd805ed8104a37bc02ca8c2588ae8fe5a PYTHON_PYSOCKS_LICENSE = BSD-3c PYTHON_PYSOCKS_LICENSE_FILES = socks.py PYTHON_PYSOCKS_SETUP_TYPE = distutils diff --git a/package/python-pytablereader/Config.in b/package/python-pytablereader/Config.in new file mode 100644 index 0000000000..050ff65c17 --- /dev/null +++ b/package/python-pytablereader/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_PYTHON_PYTABLEREADER + bool "python-pytablereader" + select BR2_PACKAGE_PYTHON_BEAUTIFULSOUP4 # runtime + select BR2_PACKAGE_PYTHON_DATAPROPERTY # runtime + select BR2_PACKAGE_PYTHON_JSONSCHEMA # runtime + select BR2_PACKAGE_PYTHON_LOGBOOK # runtime + select BR2_PACKAGE_PYTHON_MARKDOWN2 # runtime + select BR2_PACKAGE_PYTHON_MBSTRDECODER # runtime + select BR2_PACKAGE_PYTHON_PATHVALIDATE # runtime + select BR2_PACKAGE_PYTHON_PATHPY # runtime + select BR2_PACKAGE_PYTHON_REQUESTS # runtime + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_XLRD # runtime + help + A python library to load structured table data from + files/URL with various data formats: + CSV/Excel/HTML/JSON/LTSV/Markdown/TSV. + + https://github.com/thombashi/pytablereader diff --git a/package/python-pytablereader/python-pytablereader.hash b/package/python-pytablereader/python-pytablereader.hash new file mode 100644 index 0000000000..7d1438a1d5 --- /dev/null +++ b/package/python-pytablereader/python-pytablereader.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pytablereader/json, sha256 locally computed +md5 ae95462a1a982186d1307ee0d6e275e2 pytablereader-0.8.8.tar.gz +sha256 6ba95dc699d2c7ab7bc4b3f0224a17404255d110a3ece8ba12217d650aa7de79 pytablereader-0.8.8.tar.gz diff --git a/package/python-pytablereader/python-pytablereader.mk b/package/python-pytablereader/python-pytablereader.mk new file mode 100644 index 0000000000..2b6f2d46bb --- /dev/null +++ b/package/python-pytablereader/python-pytablereader.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pytablereader +# +################################################################################ + +PYTHON_PYTABLEREADER_VERSION = 0.8.8 +PYTHON_PYTABLEREADER_SOURCE = pytablereader-$(PYTHON_PYTABLEREADER_VERSION).tar.gz +PYTHON_PYTABLEREADER_SITE = https://pypi.python.org/packages/05/0c/7801617e60ce0d9b4cc57cb542cc431a95b9f43ac1ac14030017163da29d +PYTHON_PYTABLEREADER_SETUP_TYPE = setuptools +PYTHON_PYTABLEREADER_LICENSE = MIT +PYTHON_PYTABLEREADER_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pytablewriter/Config.in b/package/python-pytablewriter/Config.in new file mode 100644 index 0000000000..f270d0daa8 --- /dev/null +++ b/package/python-pytablewriter/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_PYTHON_PYTABLEWRITER + bool "python-pytablewriter" + select BR2_PACKAGE_PYTHON_DATAPROPERTY # runtime + select BR2_PACKAGE_PYTHON_DOMINATE # runtime + select BR2_PACKAGE_PYTHON_PATHVALIDATE # runtime + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_XLSXWRITER # runtime + select BR2_PACKAGE_PYTHON_XLWT # runtime + select BR2_PACKAGE_PYTHON_TOML # runtime + select BR2_PACKAGE_PYTHON_PYTABLEREADER # runtime + help + pytablewriter is a python library to write a table in various + formats: CSV, HTML, JavaScript, JSON, Markdown, Excel, Pandas, + Python, reStructuredText. + + https://github.com/thombashi/pytablewriter diff --git a/package/python-pytablewriter/python-pytablewriter.hash b/package/python-pytablewriter/python-pytablewriter.hash new file mode 100644 index 0000000000..3b5bef3220 --- /dev/null +++ b/package/python-pytablewriter/python-pytablewriter.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pytablewriter/json, sha256 locally computed +md5 7b909647bb8a87373f2553a6fccdf419 pytablewriter-0.17.1.tar.gz +sha256 20c58c41359941262bf288d2fe81ca506e2a38cfdd337d982dbcb2e26ec4a3ed pytablewriter-0.17.1.tar.gz diff --git a/package/python-pytablewriter/python-pytablewriter.mk b/package/python-pytablewriter/python-pytablewriter.mk new file mode 100644 index 0000000000..6d2e5456dd --- /dev/null +++ b/package/python-pytablewriter/python-pytablewriter.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pytablewriter +# +################################################################################ + +PYTHON_PYTABLEWRITER_VERSION = 0.17.1 +PYTHON_PYTABLEWRITER_SOURCE = pytablewriter-$(PYTHON_PYTABLEWRITER_VERSION).tar.gz +PYTHON_PYTABLEWRITER_SITE = https://pypi.python.org/packages/a2/2f/093dded4e265705c1d87d68a9062acb69b39c6ec615f74d71c62f6625afa +PYTHON_PYTABLEWRITER_SETUP_TYPE = setuptools +PYTHON_PYTABLEWRITER_LICENSE = MIT +PYTHON_PYTABLEWRITER_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pytz/Config.in b/package/python-pytz/Config.in index 0f51232334..949fbd3cd1 100644 --- a/package/python-pytz/Config.in +++ b/package/python-pytz/Config.in @@ -1,3 +1,6 @@ config BR2_PACKAGE_PYTHON_PYTZ bool "python-pytz" - depends on BR2_PACKAGE_PYTHON + help + World timezone definitions, modern and historical. + + http://pythonhosted.org/pytz diff --git a/package/python-pytz/python-pytz.hash b/package/python-pytz/python-pytz.hash new file mode 100644 index 0000000000..fbccc52bce --- /dev/null +++ b/package/python-pytz/python-pytz.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pytz/json, sha256 locally computed +md5 88b1d6c50c764579292edce3493c8a3a pytz-2016.10.tar.bz2 +sha256 7016b2c4fa075c564b81c37a252a5fccf60d8964aa31b7f5eae59aeb594ae02b pytz-2016.10.tar.bz2 diff --git a/package/python-pytz/python-pytz.mk b/package/python-pytz/python-pytz.mk index 79d0033934..9a8bd07e0f 100644 --- a/package/python-pytz/python-pytz.mk +++ b/package/python-pytz/python-pytz.mk @@ -4,9 +4,11 @@ # ################################################################################ -PYTHON_PYTZ_VERSION = 2014.2 -PYTHON_PYTZ_SOURCE = pytz-$(PYTHON_PYTZ_VERSION).tar.gz -PYTHON_PYTZ_SITE = http://pypi.python.org/packages/source/p/pytz +PYTHON_PYTZ_VERSION = 2016.10 +PYTHON_PYTZ_SOURCE = pytz-$(PYTHON_PYTZ_VERSION).tar.bz2 +PYTHON_PYTZ_SITE = https://pypi.python.org/packages/d0/e1/aca6ef73a7bd322a7fc73fd99631ee3454d4fc67dc2bee463e2adf6bb3d3 PYTHON_PYTZ_SETUP_TYPE = setuptools +PYTHON_PYTZ_LICENSE = MIT +PYTHON_PYTZ_LICENSE_FILES = LICENSE.txt $(eval $(python-package)) diff --git a/package/python-pyusb/Config.in b/package/python-pyusb/Config.in index de5b487014..1f97979c71 100644 --- a/package/python-pyusb/Config.in +++ b/package/python-pyusb/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_PYTHON_PYUSB bool "python-pyusb" - depends on BR2_PACKAGE_PYTHON depends on BR2_TOOLCHAIN_HAS_THREADS # libusb select BR2_PACKAGE_LIBUSB help @@ -10,5 +9,4 @@ config BR2_PACKAGE_PYTHON_PYUSB http://sourceforge.net/apps/trac/pyusb/ comment "python-pyusb needs a toolchain w/ threads" - depends on BR2_PACKAGE_PYTHON depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/python-pyusb/python-pyusb.hash b/package/python-pyusb/python-pyusb.hash new file mode 100644 index 0000000000..098d08f751 --- /dev/null +++ b/package/python-pyusb/python-pyusb.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pyusb/json, sha256 locally computed +md5 c8a571bfdba778555156af3facaea6fc PyUSB-1.0.0.tar.gz +sha256 5b34ffa74ac34f330bff949c94ee00ec4a9d147234db17ee2eed2a67c0275368 PyUSB-1.0.0.tar.gz diff --git a/package/python-pyusb/python-pyusb.mk b/package/python-pyusb/python-pyusb.mk index ae69026f4e..cfdef533a1 100644 --- a/package/python-pyusb/python-pyusb.mk +++ b/package/python-pyusb/python-pyusb.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_PYUSB_VERSION = 1.0.0b2 -PYTHON_PYUSB_SITE = $(call github,walac,pyusb,$(PYTHON_PYUSB_VERSION)) +PYTHON_PYUSB_VERSION = 1.0.0 +PYTHON_PYUSB_SOURCE = PyUSB-$(PYTHON_PYUSB_VERSION).tar.gz +PYTHON_PYUSB_SITE = https://pypi.python.org/packages/8a/19/66fb48a4905e472f5dfeda3a1bafac369fbf6d6fc5cf55b780864962652d PYTHON_PYUSB_LICENSE = BSD-3c PYTHON_PYUSB_LICENSE_FILES = LICENSE PYTHON_PYUSB_SETUP_TYPE = distutils diff --git a/package/python-pyxb/python-pyxb.hash b/package/python-pyxb/python-pyxb.hash index d8b43f8c45..9aa50fc76e 100644 --- a/package/python-pyxb/python-pyxb.hash +++ b/package/python-pyxb/python-pyxb.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 14ced19ecce51e7cd26434446f9bd6b4e309e91806f1f6fc5e21f4ac736aa0de python-pyxb-1.2.4.tar.gz +# md5 from https://pypi.python.org/pypi/pyxb/json, sha256 locally computed +md5 197c462ab8427ea197313ca3776b252a PyXB-1.2.5.tar.gz +sha256 4e8f62ee2cfffc37e4f40634ab9c79e0311cfaf28cf4ce5e7f4828ec56e4ff67 PyXB-1.2.5.tar.gz diff --git a/package/python-pyxb/python-pyxb.mk b/package/python-pyxb/python-pyxb.mk index eb9ffcebb2..d0b2da5461 100644 --- a/package/python-pyxb/python-pyxb.mk +++ b/package/python-pyxb/python-pyxb.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_PYXB_VERSION = 1.2.4 -PYTHON_PYXB_SITE = $(call github,pabigot,pyxb,PyXB-$(PYTHON_PYXB_VERSION)) +PYTHON_PYXB_VERSION = 1.2.5 +PYTHON_PYXB_SOURCE = PyXB-$(PYTHON_PYXB_VERSION).tar.gz +PYTHON_PYXB_SITE = https://pypi.python.org/packages/43/7a/9d40392e4380463f37bf5aa2851dfd8ba7c0e4d2a9dc2355177b8b785794 PYTHON_PYXB_LICENSE = Apache-2.0 PYTHON_PYXB_LICENSE_FILES = LICENSE PYTHON_PYXB_SETUP_TYPE = distutils diff --git a/package/python-pyyaml/python-pyyaml.hash b/package/python-pyyaml/python-pyyaml.hash index a6d9a776a0..209ab27e53 100644 --- a/package/python-pyyaml/python-pyyaml.hash +++ b/package/python-pyyaml/python-pyyaml.hash @@ -1,4 +1,3 @@ -# From https://pypi.python.org/pypi?:action=show_md5&digest=f50e08ef0fe55178479d3a618efe21db -md5 f50e08ef0fe55178479d3a618efe21db PyYAML-3.11.tar.gz -# Locally computed -sha256 c36c938a872e5ff494938b33b14aaa156cb439ec67548fcab3535bb78b0846e8 PyYAML-3.11.tar.gz +# md5 from https://pypi.python.org/pypi/pyyaml/json, sha256 locally computed +md5 4c129761b661d181ebf7ff4eb2d79950 PyYAML-3.12.tar.gz +sha256 592766c6303207a20efc445587778322d7f73b161bd994f227adaa341ba212ab PyYAML-3.12.tar.gz diff --git a/package/python-pyyaml/python-pyyaml.mk b/package/python-pyyaml/python-pyyaml.mk index f3d72833db..0509a7adb0 100644 --- a/package/python-pyyaml/python-pyyaml.mk +++ b/package/python-pyyaml/python-pyyaml.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYYAML_VERSION = 3.11 +PYTHON_PYYAML_VERSION = 3.12 PYTHON_PYYAML_SOURCE = PyYAML-$(PYTHON_PYYAML_VERSION).tar.gz -PYTHON_PYYAML_SITE = https://pypi.python.org/packages/source/P/PyYAML +PYTHON_PYYAML_SITE = https://pypi.python.org/packages/4a/85/db5a2df477072b2902b0eb892feb37d88ac635d36245a72a6a69b23b383a PYTHON_PYYAML_SETUP_TYPE = distutils PYTHON_PYYAML_LICENSE = Python software foundation license v2 PYTHON_PYYAML_LICENSE_FILES = LICENSE diff --git a/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch b/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch index 560606989e..cb52eaf6de 100644 --- a/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch +++ b/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch @@ -5,39 +5,47 @@ retrieve a version string for the installed ZMQ library, but if the cross compiler links it together, the result cannot be run on the host, due to different architectures and libraries. -And if the host compiler would compile/link it, it would not link with the -library version inside buildroot but with the library from the host, possibly returning a wrong version number. +And if the host compiler would compile/link it, it would not link with +the library version inside buildroot but with the library from the +host, possibly returning a wrong version number. Instead of trying to run the compiled test program to get the version dynamically, return the version of the buildroot environment. -Signed-off-by: Michael Rommel +Written by Michael Rommel, modified for version 16.0.2 by Lionel +Flandrin. ---- pyzmq-13.0.2/buildutils/detect.py.orig 2013-08-10 00:49:28.242557978 +0200 -+++ pyzmq-13.0.2/buildutils/detect.py 2013-08-10 00:44:35.197572704 +0200 -@@ -119,15 +119,17 @@ def detect_zmq(basedir, compiler=None, * - - efile = test_compilation(cfile, compiler=compiler, **compiler_attrs) +Signed-off-by: Lionel Flandrin +--- + buildutils/detect.py | 14 ++++++++------ + 1 file changed, 8 insertions(+), 6 deletions(-) + +diff --git a/buildutils/detect.py b/buildutils/detect.py +index 9520da7..823144f 100644 +--- a/buildutils/detect.py ++++ b/buildutils/detect.py +@@ -117,13 +117,15 @@ def detect_zmq(basedir, compiler=None, **compiler_attrs): -- result = Popen(efile, stdout=PIPE, stderr=PIPE) -- so, se = result.communicate() -+ # result = Popen(efile, stdout=PIPE, stderr=PIPE) -+ # so, se = result.communicate() - # for py3k: -- so = so.decode() -- se = se.decode() -- if result.returncode: + cc = get_compiler(compiler=compiler, **compiler_attrs) + efile = test_compilation(cfile, compiler=cc) +- patch_lib_paths(efile, cc.library_dirs) ++ #patch_lib_paths(efile, cc.library_dirs) + +- rc, so, se = get_output_error([efile]) +- if rc: - msg = "Error running version detection script:\n%s\n%s" % (so,se) - logging.error(msg) - raise IOError(msg) -+ #so = so.decode() -+ #se = se.decode() -+ #if result.returncode: -+ # msg = "Error running version detection script:\n%s\n%s" % (so,se) -+ # logging.error(msg) -+ # raise IOError(msg) ++ #rc, so, se = get_output_error([efile]) ++ # if rc: ++ # msg = "Error running version detection script:\n%s\n%s" % (so,se) ++ # logging.error(msg) ++ # raise IOError(msg) + + so = "vers: ##ZEROMQ_VERSION##" handlers = {'vers': lambda val: tuple(int(v) for v in val.split('.'))} +-- +2.11.0 + diff --git a/package/python-pyzmq/0002-replace-compile_and_run-with-compile_and_forget.patch b/package/python-pyzmq/0002-replace-compile_and_run-with-compile_and_forget.patch new file mode 100644 index 0000000000..278e939e0e --- /dev/null +++ b/package/python-pyzmq/0002-replace-compile_and_run-with-compile_and_forget.patch @@ -0,0 +1,76 @@ +detect.py: replace compile_and_run with compile_and_forget + +This function is only used in setup.py to detect the availability of +sys/un.h by compiling and running a small test program. Since we're +cross-compiling we can't run the generated program, however if the +header is missing the test will fail at the compilation step so +running the test in unnecessary. + +Signed-off-by: Lionel Flandrin +--- + buildutils/detect.py | 16 ++++++++-------- + setup.py | 4 ++-- + 2 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/buildutils/detect.py b/buildutils/detect.py +index 7a6c115..9520da7 100644 +--- a/buildutils/detect.py ++++ b/buildutils/detect.py +@@ -58,7 +58,7 @@ def test_compilation(cfile, compiler=None, **compiler_attrs): + cc.link_executable(objs, efile, extra_preargs=lpreargs) + return efile + +-def compile_and_run(basedir, src, compiler=None, **compiler_attrs): ++def compile_and_forget(basedir, src, compiler=None, **compiler_attrs): + if not os.path.exists(basedir): + os.makedirs(basedir) + cfile = pjoin(basedir, os.path.basename(src)) +@@ -66,16 +66,16 @@ def compile_and_run(basedir, src, compiler=None, **compiler_attrs): + try: + cc = get_compiler(compiler, **compiler_attrs) + efile = test_compilation(cfile, compiler=cc) +- patch_lib_paths(efile, cc.library_dirs) +- result = Popen(efile, stdout=PIPE, stderr=PIPE) +- so, se = result.communicate() +- # for py3k: +- so = so.decode() +- se = se.decode() ++ # patch_lib_paths(efile, cc.library_dirs) ++ # result = Popen(efile, stdout=PIPE, stderr=PIPE) ++ # so, se = result.communicate() ++ # # for py3k: ++ # so = so.decode() ++ # se = se.decode() + finally: + shutil.rmtree(basedir) + +- return result.returncode, so, se ++ return None + + + def detect_zmq(basedir, compiler=None, **compiler_attrs): +diff --git a/setup.py b/setup.py +index c3a2879..b8b0aaf 100755 +--- a/setup.py ++++ b/setup.py +@@ -54,7 +54,7 @@ from buildutils import ( + info, warn, fatal, debug, line, copy_and_patch_libzmq, localpath, + fetch_libzmq, stage_platform_hpp, + bundled_version, customize_mingw, +- compile_and_run, ++ compile_and_forget, + patch_lib_paths, + ) + +@@ -327,7 +327,7 @@ class Configure(build_ext): + except Exception: + pass + try: +- compile_and_run(self.tempdir, ++ compile_and_forget(self.tempdir, + pjoin('buildutils', 'check_sys_un.c'), + **minus_zmq + ) +-- +2.11.0 + diff --git a/package/python-pyzmq/Config.in b/package/python-pyzmq/Config.in index af4467fa7c..8f33a635c8 100644 --- a/package/python-pyzmq/Config.in +++ b/package/python-pyzmq/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_PYTHON_PYZMQ bool "python-pyzmq" - depends on BR2_USE_WCHAR # zeromq depends on BR2_INSTALL_LIBSTDCPP # zeromq depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq select BR2_PACKAGE_ZEROMQ @@ -9,7 +8,6 @@ config BR2_PACKAGE_PYTHON_PYZMQ http://zeromq.org/bindings:python -comment "python-pyzmq needs a toolchain w/ C++, wchar, threads" +comment "python-pyzmq needs a toolchain w/ C++, threads" depends on BR2_PACKAGE_PYTHON - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/python-pyzmq/python-pyzmq.hash b/package/python-pyzmq/python-pyzmq.hash new file mode 100644 index 0000000000..6cdd0b9f18 --- /dev/null +++ b/package/python-pyzmq/python-pyzmq.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/pyzmq/json, sha256 locally computed +md5 9a8768b00a566a400d70318f8c359cfe pyzmq-16.0.2.tar.gz +sha256 0322543fff5ab6f87d11a8a099c4c07dd8a1719040084b6ce9162bcdf5c45c9d pyzmq-16.0.2.tar.gz diff --git a/package/python-pyzmq/python-pyzmq.mk b/package/python-pyzmq/python-pyzmq.mk index 0e787b1d22..ade2d3a234 100644 --- a/package/python-pyzmq/python-pyzmq.mk +++ b/package/python-pyzmq/python-pyzmq.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYZMQ_VERSION = 14.3.1 +PYTHON_PYZMQ_VERSION = 16.0.2 PYTHON_PYZMQ_SOURCE = pyzmq-$(PYTHON_PYZMQ_VERSION).tar.gz -PYTHON_PYZMQ_SITE = http://pypi.python.org/packages/source/p/pyzmq +PYTHON_PYZMQ_SITE = https://pypi.python.org/packages/af/37/8e0bf3800823bc247c36715a52e924e8f8fd5d1432f04b44b8cd7a5d7e55 PYTHON_PYZMQ_LICENSE = LGPLv3+, BSD-3c, Apache-2.0 # Apache license only online: http://www.apache.org/licenses/LICENSE-2.0 PYTHON_PYZMQ_LICENSE_FILES = COPYING.LESSER COPYING.BSD diff --git a/package/python-requests-toolbelt/Config.in b/package/python-requests-toolbelt/Config.in new file mode 100644 index 0000000000..ba2b95152e --- /dev/null +++ b/package/python-requests-toolbelt/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_REQUESTS_TOOLBELT + bool "python-requests-toolbelt" + select BR2_PACKAGE_PYTHON_REQUESTS # runtime + help + A utility belt for advanced users of python-requests. + + https://toolbelt.readthedocs.org diff --git a/package/python-requests-toolbelt/python-requests-toolbelt.hash b/package/python-requests-toolbelt/python-requests-toolbelt.hash new file mode 100644 index 0000000000..89f5ca1114 --- /dev/null +++ b/package/python-requests-toolbelt/python-requests-toolbelt.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/requests-toolbelt/json, sha256 locally computed +md5 bfe2009905f460f4764c32cfbbf4205f requests-toolbelt-0.7.0.tar.gz +sha256 33899d4a559c3f0f5e9fbc115d337c4236febdc083755a160a4132d92fc3c91a requests-toolbelt-0.7.0.tar.gz diff --git a/package/python-requests-toolbelt/python-requests-toolbelt.mk b/package/python-requests-toolbelt/python-requests-toolbelt.mk new file mode 100644 index 0000000000..2e944c067d --- /dev/null +++ b/package/python-requests-toolbelt/python-requests-toolbelt.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-requests-toolbelt +# +################################################################################ + +PYTHON_REQUESTS_TOOLBELT_VERSION = 0.7.0 +PYTHON_REQUESTS_TOOLBELT_SOURCE = requests-toolbelt-$(PYTHON_REQUESTS_TOOLBELT_VERSION).tar.gz +PYTHON_REQUESTS_TOOLBELT_SITE = https://pypi.python.org/packages/59/78/1d391d30ebf74079a8e4de6ab66fdca5362903ef2df64496f4697e9bb626 +PYTHON_REQUESTS_TOOLBELT_SETUP_TYPE = setuptools +PYTHON_REQUESTS_TOOLBELT_LICENSE = Apache-2.0 +PYTHON_REQUESTS_TOOLBELT_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-requests/python-requests.hash b/package/python-requests/python-requests.hash index b567fe6adc..e441c00825 100644 --- a/package/python-requests/python-requests.hash +++ b/package/python-requests/python-requests.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0b7f480d19012ec52bab78292efd976d, sha256 locally computed -md5 0b7f480d19012ec52bab78292efd976d requests-2.9.1.tar.gz -sha256 c577815dd00f1394203fc44eb979724b098f88264a9ef898ee45b8e5e9cf587f requests-2.9.1.tar.gz +# md5 from https://pypi.python.org/pypi/requests/json, sha256 locally computed +md5 ad5f9c47b5c5dfdb28363ad7546b0763 requests-2.11.1.tar.gz +sha256 5acf980358283faba0b897c73959cecf8b841205bb4b2ad3ef545f46eae1a133 requests-2.11.1.tar.gz diff --git a/package/python-requests/python-requests.mk b/package/python-requests/python-requests.mk index 8cda2c5148..49980bf9bc 100644 --- a/package/python-requests/python-requests.mk +++ b/package/python-requests/python-requests.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_REQUESTS_VERSION = 2.9.1 +PYTHON_REQUESTS_VERSION = 2.11.1 PYTHON_REQUESTS_SOURCE = requests-$(PYTHON_REQUESTS_VERSION).tar.gz -PYTHON_REQUESTS_SITE = http://pypi.python.org/packages/source/r/requests +PYTHON_REQUESTS_SITE = https://pypi.python.org/packages/2e/ad/e627446492cc374c284e82381215dcd9a0a87c4f6e90e9789afefe6da0ad PYTHON_REQUESTS_SETUP_TYPE = setuptools PYTHON_REQUESTS_LICENSE = Apache-2.0 PYTHON_REQUESTS_LICENSE_FILES = LICENSE diff --git a/package/python-rpi-gpio/python-rpi-gpio.hash b/package/python-rpi-gpio/python-rpi-gpio.hash old mode 100755 new mode 100644 index 8b498f1f13..a502972c35 --- a/package/python-rpi-gpio/python-rpi-gpio.hash +++ b/package/python-rpi-gpio/python-rpi-gpio.hash @@ -1,3 +1,3 @@ -# md5sum from http://sourceforge.net/projects/raspberry-gpio-python/files/, sha256 calculated locally -md5 254d0443a436eb241367c487274e7197 RPi.GPIO-0.6.1.tar.gz -sha256 54e5fb06d9ea1a1389a497fb5a06dfa950c86303b0f4ba89b68c55999d1df064 RPi.GPIO-0.6.1.tar.gz +# md5 from https://pypi.python.org/pypi/rpi-gpio/json, sha256 locally computed +md5 9db86fd5f3bae872de9dbb068ee0b096 RPi.GPIO-0.6.2.tar.gz +sha256 82acff0ef6bbe3cdf6f4dbdd73d96add5294bb94baf7f51c1d901861af3c2392 RPi.GPIO-0.6.2.tar.gz diff --git a/package/python-rpi-gpio/python-rpi-gpio.mk b/package/python-rpi-gpio/python-rpi-gpio.mk old mode 100755 new mode 100644 index 106b8dd153..8f02d160e5 --- a/package/python-rpi-gpio/python-rpi-gpio.mk +++ b/package/python-rpi-gpio/python-rpi-gpio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_RPI_GPIO_VERSION = 0.6.1 +PYTHON_RPI_GPIO_VERSION = 0.6.2 PYTHON_RPI_GPIO_SOURCE = RPi.GPIO-$(PYTHON_RPI_GPIO_VERSION).tar.gz -PYTHON_RPI_GPIO_SITE = http://sourceforge.net/projects/raspberry-gpio-python/files +PYTHON_RPI_GPIO_SITE = https://pypi.python.org/packages/c1/a8/de92cf6d04376f541ce250de420f4fe7cbb2b32a7128929a600bc89aede5 PYTHON_RPI_GPIO_LICENSE = MIT PYTHON_RPI_GPIO_LICENSE_FILES = LICENCE.txt PYTHON_RPI_GPIO_SETUP_TYPE = distutils diff --git a/package/python-rtslib-fb/Config.in b/package/python-rtslib-fb/Config.in index 7bae560409..f4083340e6 100644 --- a/package/python-rtslib-fb/Config.in +++ b/package/python-rtslib-fb/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_PYTHON_RTSLIB_FB the LIO generic SCSI target, present in 3.x Linux kernel versions. - https://github.com/agrover/rtslib-fb + https://github.com/open-iscsi/rtslib-fb diff --git a/package/python-rtslib-fb/python-rtslib-fb.hash b/package/python-rtslib-fb/python-rtslib-fb.hash new file mode 100644 index 0000000000..fd0618581e --- /dev/null +++ b/package/python-rtslib-fb/python-rtslib-fb.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d5d81a78046b4c228d29ba88d9950e0f63858e5fcf601e3d0f8bf107fbaadc03 python-rtslib-fb-v2.1.fb57.tar.gz diff --git a/package/python-rtslib-fb/python-rtslib-fb.mk b/package/python-rtslib-fb/python-rtslib-fb.mk index 85bee0ba75..8236fb8eb1 100644 --- a/package/python-rtslib-fb/python-rtslib-fb.mk +++ b/package/python-rtslib-fb/python-rtslib-fb.mk @@ -4,8 +4,11 @@ # ################################################################################ +# When upgrading the version, be sure to also upgrade +# python-configshell-fb and targetcli-fb at the same time. PYTHON_RTSLIB_FB_VERSION = v2.1.fb57 -PYTHON_RTSLIB_FB_SITE = $(call github,agrover,rtslib-fb,$(PYTHON_RTSLIB_FB_VERSION)) +# Do not switch site to PyPI: it does not contain the latest version. +PYTHON_RTSLIB_FB_SITE = $(call github,open-iscsi,rtslib-fb,$(PYTHON_RTSLIB_FB_VERSION)) PYTHON_RTSLIB_FB_LICENSE = Apache-2.0 PYTHON_RTSLIB_FB_LICENSE_FILES = COPYING PYTHON_RTSLIB_FB_SETUP_TYPE = setuptools diff --git a/package/python-scapy3k/Config.in b/package/python-scapy3k/Config.in new file mode 100644 index 0000000000..3e75fcd177 --- /dev/null +++ b/package/python-scapy3k/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_SCAPY3K + bool "python-scapy3k" + depends on BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON3_ZLIB + help + Network packet and pcap file crafting/sniffing/manipulation + security tool (based on scapy) with python3 compatibility. + + https://github.com/phaethon/scapy diff --git a/package/python-scapy3k/python-scapy3k.hash b/package/python-scapy3k/python-scapy3k.hash new file mode 100644 index 0000000000..36d5dfed3c --- /dev/null +++ b/package/python-scapy3k/python-scapy3k.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 a4c68ef2f787d82a3aec8640cac8dbab6f5b9e31ae4d89a1877efbb9150a9e25 python-scapy3k-v0.18.tar.gz diff --git a/package/python-scapy3k/python-scapy3k.mk b/package/python-scapy3k/python-scapy3k.mk new file mode 100644 index 0000000000..661cb9d7fd --- /dev/null +++ b/package/python-scapy3k/python-scapy3k.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-scapy3k +# +################################################################################ + +PYTHON_SCAPY3K_VERSION = v0.18 +PYTHON_SCAPY3K_SITE = $(call github,phaethon,scapy,$(PYTHON_SCAPY3K_VERSION)) +PYTHON_SCAPY3K_SETUP_TYPE = distutils +PYTHON_SCAPY3K_LICENSE = GPLv2+ + +$(eval $(python-package)) diff --git a/package/python-sdnotify/Config.in b/package/python-sdnotify/Config.in new file mode 100644 index 0000000000..bc77a06774 --- /dev/null +++ b/package/python-sdnotify/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_SDNOTIFY + bool "python-sdnotify" + help + A pure Python implementation of systemd's service notification + protocol (sd_notify). + + https://github.com/bb4242/sdnotify diff --git a/package/python-sdnotify/python-sdnotify.hash b/package/python-sdnotify/python-sdnotify.hash new file mode 100644 index 0000000000..6d3ad6ba89 --- /dev/null +++ b/package/python-sdnotify/python-sdnotify.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/sdnotify/json +md5 a182c1ef47e1c6c965771aa3029da16f sdnotify-0.3.1.tar.gz +# sha256 calculated by scanpypi +sha256 e69220d4f6cbb02130f43f929350a80cf51033fde47dcb056fbda71e2dff2d5a sdnotify-0.3.1.tar.gz diff --git a/package/python-sdnotify/python-sdnotify.mk b/package/python-sdnotify/python-sdnotify.mk new file mode 100644 index 0000000000..7c24d32729 --- /dev/null +++ b/package/python-sdnotify/python-sdnotify.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-sdnotify +# +################################################################################ + +PYTHON_SDNOTIFY_VERSION = 0.3.1 +PYTHON_SDNOTIFY_SOURCE = sdnotify-$(PYTHON_SDNOTIFY_VERSION).tar.gz +PYTHON_SDNOTIFY_SITE = https://pypi.python.org/packages/57/f9/ae03e3ebc83be0d501cde1f5d6d23dee74f5c2105f2cdb98bff4fa9ada9c +PYTHON_SDNOTIFY_SETUP_TYPE = distutils +PYTHON_SDNOTIFY_LICENSE = MIT +PYTHON_SDNOTIFY_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-serial/python-serial.hash b/package/python-serial/python-serial.hash index 74006243a8..f98a8b91b2 100644 --- a/package/python-serial/python-serial.hash +++ b/package/python-serial/python-serial.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=f94bc6e141d60f17edc7bf8757c4d922, sha256 locally computed -md5 f94bc6e141d60f17edc7bf8757c4d922 pyserial-3.0.tar.gz -sha256 056c2d96c83c009d8d04aad43a90f91f10f6a97d42c0d9656c2655c63fb8ff07 pyserial-3.0.tar.gz +# md5 from http://pypi.python.org/pypi?:action=show_md5&digest=e849af7f8b7ec75cbc7a53da67c51a51, sha256 locally computed +md5 e849af7f8b7ec75cbc7a53da67c51a51 pyserial-3.1.tar.gz +sha256 c8ffdcbd8bfd308842409e558848c32aa3499a1bfe95a591e4210072b9520f1e pyserial-3.1.tar.gz diff --git a/package/python-serial/python-serial.mk b/package/python-serial/python-serial.mk index ba871eade2..4b3ffadc1c 100644 --- a/package/python-serial/python-serial.mk +++ b/package/python-serial/python-serial.mk @@ -4,11 +4,21 @@ # ################################################################################ -PYTHON_SERIAL_VERSION = 3.0 +PYTHON_SERIAL_VERSION = 3.1 PYTHON_SERIAL_SOURCE = pyserial-$(PYTHON_SERIAL_VERSION).tar.gz -PYTHON_SERIAL_SITE = http://pypi.python.org/packages/source/p/pyserial +PYTHON_SERIAL_SITE = https://pypi.python.org/packages/ce/9c/694ce79a9d4a164e109aeba1a40fba23336f3b7554978553e22a5d41d54d PYTHON_SERIAL_LICENSE = Python Software Foundation License PYTHON_SERIAL_LICENSE_FILES = LICENSE.txt PYTHON_SERIAL_SETUP_TYPE = setuptools +# aio.py is an experimental module, that is compatible only with +# Python 3, so remove it for Python 2 environment or it will +# cause compilation errors +ifeq ($(BR2_PACKAGE_PYTHON),y) +define PYTHON_SERIAL_REMOVE_AIO_PY + rm $(@D)/serial/aio.py +endef +PYTHON_SERIAL_POST_EXTRACT_HOOKS = PYTHON_SERIAL_REMOVE_AIO_PY +endif + $(eval $(python-package)) diff --git a/package/python-service-identity/python-service-identity.hash b/package/python-service-identity/python-service-identity.hash index caf29dc462..09561d8f93 100644 --- a/package/python-service-identity/python-service-identity.hash +++ b/package/python-service-identity/python-service-identity.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=cea0b0156d73b025ecef660fb51f0d9a, sha256 locally computed. -md5 cea0b0156d73b025ecef660fb51f0d9a service_identity-14.0.0.tar.gz -sha256 3105a319a7c558490666694f599be0c377ad54824eefb404cde4ce49e74a4f5a service_identity-14.0.0.tar.gz +# md5 from https://pypi.python.org/pypi/service_identity/json, sha256 locally computed +md5 d52392597b9c44a740abf322bfdb21e6 service_identity-16.0.0.tar.gz +sha256 0630e222f59f91f3db498be46b1d879ff220955d7bbad719a5cb9ad14e3c3036 service_identity-16.0.0.tar.gz diff --git a/package/python-service-identity/python-service-identity.mk b/package/python-service-identity/python-service-identity.mk index 9eca3c1da0..88549abff3 100644 --- a/package/python-service-identity/python-service-identity.mk +++ b/package/python-service-identity/python-service-identity.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SERVICE_IDENTITY_VERSION = 14.0.0 +PYTHON_SERVICE_IDENTITY_VERSION = 16.0.0 PYTHON_SERVICE_IDENTITY_SOURCE = service_identity-$(PYTHON_SERVICE_IDENTITY_VERSION).tar.gz -PYTHON_SERVICE_IDENTITY_SITE = http://pypi.python.org/packages/source/s/service_identity +PYTHON_SERVICE_IDENTITY_SITE = https://pypi.python.org/packages/f3/2a/7c04e7ab74f9f2be026745a9ffa81fd9d56139fa6f5f4b4c8a8c07b2bfba PYTHON_SERVICE_IDENTITY_LICENSE = MIT PYTHON_SERVICE_IDENTITY_LICENSE_FILES = LICENSE PYTHON_SERVICE_IDENTITY_SETUP_TYPE = setuptools diff --git a/package/python-setproctitle/python-setproctitle.hash b/package/python-setproctitle/python-setproctitle.hash index 3b0fd71c3a..bf4d960358 100644 --- a/package/python-setproctitle/python-setproctitle.hash +++ b/package/python-setproctitle/python-setproctitle.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=95d9e56c69437246460a20804961d70d, sha256 locally computed. -md5 95d9e56c69437246460a20804961d70d setproctitle-1.1.9.tar.gz -sha256 1c3414d18f9cacdab78b0ffd8e886d56ad45f22e55001a72aaa0b2aeb56a0ad7 setproctitle-1.1.9.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=2dcdd1b761700a5a13252fea3dfd1977, sha256 locally computed. +md5 2dcdd1b761700a5a13252fea3dfd1977 setproctitle-1.1.10.tar.gz +sha256 6283b7a58477dd8478fbb9e76defb37968ee4ba47b05ec1c053cb39638bd7398 setproctitle-1.1.10.tar.gz diff --git a/package/python-setproctitle/python-setproctitle.mk b/package/python-setproctitle/python-setproctitle.mk index 63dfad0cf5..36cfec3223 100644 --- a/package/python-setproctitle/python-setproctitle.mk +++ b/package/python-setproctitle/python-setproctitle.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SETPROCTITLE_VERSION = 1.1.9 +PYTHON_SETPROCTITLE_VERSION = 1.1.10 PYTHON_SETPROCTITLE_SOURCE = setproctitle-$(PYTHON_SETPROCTITLE_VERSION).tar.gz -PYTHON_SETPROCTITLE_SITE = http://pypi.python.org/packages/source/s/setproctitle +PYTHON_SETPROCTITLE_SITE = https://pypi.python.org/packages/5a/0d/dc0d2234aacba6cf1a729964383e3452c52096dc695581248b548786f2b3 PYTHON_SETPROCTITLE_LICENSE = BSD-3c PYTHON_SETPROCTITLE_LICENSE_FILES = COPYRIGHT PYTHON_SETPROCTITLE_SETUP_TYPE = distutils diff --git a/package/python-setuptools-scm/python-setuptools-scm.hash b/package/python-setuptools-scm/python-setuptools-scm.hash new file mode 100644 index 0000000000..734fc5a9df --- /dev/null +++ b/package/python-setuptools-scm/python-setuptools-scm.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/setuptools_scm/json, sha256 locally computed +md5 b6916c78ed6253d6602444fad4279c5b setuptools_scm-1.15.0.tar.gz +sha256 daf12d05aa2155a46aa357453757ffdc47d87f839e62114f042bceac6a619e2f setuptools_scm-1.15.0.tar.gz diff --git a/package/python-setuptools-scm/python-setuptools-scm.mk b/package/python-setuptools-scm/python-setuptools-scm.mk new file mode 100644 index 0000000000..993fbb978b --- /dev/null +++ b/package/python-setuptools-scm/python-setuptools-scm.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-setuptools-scm +# +################################################################################ + +PYTHON_SETUPTOOLS_SCM_VERSION = 1.15.0 +PYTHON_SETUPTOOLS_SCM_SOURCE = setuptools_scm-$(PYTHON_SETUPTOOLS_SCM_VERSION).tar.gz +PYTHON_SETUPTOOLS_SCM_SITE = https://pypi.python.org/packages/80/b7/31b6ae5fcb188e37f7e31abe75f9be90490a5456a72860fa6e643f8a3cbc +PYTHON_SETUPTOOLS_SCM_LICENSE = MIT +PYTHON_SETUPTOOLS_SCM_LICENSE_FILES = LICENSE +PYTHON_SETUPTOOLS_SCM_SETUP_TYPE = setuptools + +$(eval $(host-python-package)) diff --git a/package/python-sh/Config.in b/package/python-sh/Config.in new file mode 100644 index 0000000000..b55ea4a311 --- /dev/null +++ b/package/python-sh/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_SH + bool "python-sh" + help + Python subprocess replacement that allows you to call any + program as if it were a function. + + https://github.com/amoffat/sh diff --git a/package/python-sh/python-sh.hash b/package/python-sh/python-sh.hash new file mode 100644 index 0000000000..0445fa62fd --- /dev/null +++ b/package/python-sh/python-sh.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/sh/json, sha256 locally computed +md5 89d46b1dba32713b7df74b1bc59d74a1 sh-1.12.7.tar.gz +sha256 5a07373657a1a704a34ea1bf73b2e55c42388c5d449634d6d7c96147f5660086 sh-1.12.7.tar.gz diff --git a/package/python-sh/python-sh.mk b/package/python-sh/python-sh.mk new file mode 100644 index 0000000000..1aa6bb9b11 --- /dev/null +++ b/package/python-sh/python-sh.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-sh +# +################################################################################ + +PYTHON_SH_VERSION = 1.12.7 +PYTHON_SH_SOURCE = sh-$(PYTHON_SH_VERSION).tar.gz +PYTHON_SH_SITE = https://pypi.python.org/packages/c2/98/565d9b566b3153607336ae9e91c1c467896f7f786c2d5d8e50fef7d75b08 +PYTHON_SH_SETUP_TYPE = setuptools +PYTHON_SH_LICENSE = MIT +PYTHON_SH_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-simpleaudio/Config.in b/package/python-simpleaudio/Config.in new file mode 100644 index 0000000000..a3e07f9e2f --- /dev/null +++ b/package/python-simpleaudio/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_PYTHON_SIMPLEAUDIO + bool "python-simpleaudio" + depends on BR2_PACKAGE_PYTHON3 + depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib + select BR2_PACKAGE_ALSA_LIB + help + The simplaudio package provides cross-platform, dependency-free + audio playback capability for Python 3 on OSX, Windows, and Linux. + + https://github.com/hamiltron/py-simple-audio + +comment "python-simpleaudio needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/python-simpleaudio/python-simpleaudio.hash b/package/python-simpleaudio/python-simpleaudio.hash new file mode 100644 index 0000000000..7e3a7fb39b --- /dev/null +++ b/package/python-simpleaudio/python-simpleaudio.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/simpleaudio/json, sha256 locally computed +md5 8c1c82fdf7ebba1a79b1243651e451d7 simpleaudio-1.0.1.tar.gz +sha256 6cc84d50d8192c074505c719722138ae6ea987fd8eee7fd930237cb308962604 simpleaudio-1.0.1.tar.gz diff --git a/package/python-simpleaudio/python-simpleaudio.mk b/package/python-simpleaudio/python-simpleaudio.mk new file mode 100644 index 0000000000..b9562ee6b9 --- /dev/null +++ b/package/python-simpleaudio/python-simpleaudio.mk @@ -0,0 +1,15 @@ +############################################################# +# +# python-simpleaudio +# +############################################################# + +PYTHON_SIMPLEAUDIO_VERSION = 1.0.1 +PYTHON_SIMPLEAUDIO_SOURCE = simpleaudio-$(PYTHON_SIMPLEAUDIO_VERSION).tar.gz +PYTHON_SIMPLEAUDIO_SITE = https://pypi.python.org/packages/12/f6/327c1af94062a6a6a5ff06dcf9dc689ed81aa07ae757cca3438c3c9e50fe +PYTHON_SIMPLEAUDIO_LICENSE = MIT +PYTHON_SIMPLEAUDIO_LICENSE_FILES = LICENSE.txt +PYTHON_SIMPLEAUDIO_SETUP_TYPE = setuptools +PYTHON_SIMPLEAUDIO_DEPENDENCIES = alsa-lib + +$(eval $(python-package)) diff --git a/package/python-simplejson/python-simplejson.hash b/package/python-simplejson/python-simplejson.hash new file mode 100644 index 0000000000..19421b8633 --- /dev/null +++ b/package/python-simplejson/python-simplejson.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/simplejson/json, sha256 locally computed +md5 53b1371bbf883b129a12d594a97e9a18 simplejson-3.8.2.tar.gz +sha256 d58439c548433adcda98e695be53e526ba940a4b9c44fb9a05d92cd495cdd47f simplejson-3.8.2.tar.gz diff --git a/package/python-simplejson/python-simplejson.mk b/package/python-simplejson/python-simplejson.mk index 61283b717d..703bca22d6 100644 --- a/package/python-simplejson/python-simplejson.mk +++ b/package/python-simplejson/python-simplejson.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_SIMPLEJSON_VERSION = 3.5.3 +PYTHON_SIMPLEJSON_VERSION = 3.8.2 PYTHON_SIMPLEJSON_SOURCE = simplejson-$(PYTHON_SIMPLEJSON_VERSION).tar.gz -PYTHON_SIMPLEJSON_SITE = http://pypi.python.org/packages/source/s/simplejson -PYTHON_SIMPLEJSON_LICENSE = MIT +PYTHON_SIMPLEJSON_SITE = https://pypi.python.org/packages/f0/07/26b519e6ebb03c2a74989f7571e6ae6b82e9d7d81b8de6fcdbfc643c7b58 +PYTHON_SIMPLEJSON_LICENSE = Academic Free License (AFL), MIT PYTHON_SIMPLEJSON_LICENSE_FILES = LICENSE.txt -PYTHON_SIMPLEJSON_SETUP_TYPE = distutils +PYTHON_SIMPLEJSON_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-sip/Config.in b/package/python-sip/Config.in index 45e48ad00e..1f8961d0df 100644 --- a/package/python-sip/Config.in +++ b/package/python-sip/Config.in @@ -2,12 +2,17 @@ comment "python-sip needs a toolchain w/ C++, threads" depends on BR2_USE_MMU depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS +comment "python-sip needs qt or qt5" + depends on BR2_USE_MMU + depends on BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 + config BR2_PACKAGE_PYTHON_SIP bool "python-sip" depends on BR2_INSTALL_LIBSTDCPP # qt depends on BR2_TOOLCHAIN_HAS_THREADS # qt depends on BR2_USE_MMU # qt - select BR2_PACKAGE_QT + depends on BR2_PACKAGE_QT || BR2_PACKAGE_QT5 help SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries. It was originally diff --git a/package/python-sip/python-sip.hash b/package/python-sip/python-sip.hash index aba54708da..2f7d4309bc 100644 --- a/package/python-sip/python-sip.hash +++ b/package/python-sip/python-sip.hash @@ -1,4 +1,4 @@ -# From http://sourceforge.net/projects/pyqt/files/sip/sip-4.16.7/ -md5 32abc003980599d33ffd789734de4c36 sip-4.16.7.tar.gz +# From https://sourceforge.net/projects/pyqt/files/sip/sip-4.18/ +md5 78724bf2a79878201c3bc81a1d8248ea sip-4.18.tar.gz # Locally calculated: -sha256 4caa8d52e4403bae5c4c64f44de03a2cfd0bb10b6d96c5fb771133516df9abbd sip-4.16.7.tar.gz +sha256 f1dc5c81c07a9ad97edcd4a0af964a41e420024ba7ca165afd2b351efd249cb6 sip-4.18.tar.gz diff --git a/package/python-sip/python-sip.mk b/package/python-sip/python-sip.mk index 4651186615..0c0a94738d 100644 --- a/package/python-sip/python-sip.mk +++ b/package/python-sip/python-sip.mk @@ -4,13 +4,17 @@ # ################################################################################ -PYTHON_SIP_VERSION = 4.16.7 +PYTHON_SIP_VERSION = 4.18 PYTHON_SIP_SOURCE = sip-$(PYTHON_SIP_VERSION).tar.gz PYTHON_SIP_SITE = http://downloads.sourceforge.net/project/pyqt/sip/sip-$(PYTHON_SIP_VERSION) PYTHON_SIP_LICENSE = SIP license or GPLv2 or GPLv3 PYTHON_SIP_LICENSE_FILES = LICENSE LICENSE-GPL2 LICENSE-GPL3 +ifeq ($(BR2_PACKAGE_QT5),y) +PYTHON_SIP_DEPENDENCIES = qt5base +else PYTHON_SIP_DEPENDENCIES = qt +endif ifeq ($(BR2_PACKAGE_PYTHON),y) PYTHON_SIP_DEPENDENCIES += python diff --git a/package/python-slob/Config.in b/package/python-slob/Config.in new file mode 100644 index 0000000000..2c8ddb0880 --- /dev/null +++ b/package/python-slob/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_PYTHON_SLOB + bool "python-slob" + depends on !BR2_BINFMT_FLAT # python-pyicu -> icu + depends on BR2_INSTALL_LIBSTDCPP # python-pyicu -> icu + depends on BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON_PYICU # runtime + # although optional, it is used as default compression + select BR2_PACKAGE_PYTHON3_XZ # runtime + help + slob.py is a reference implementation of slob format reader + and writer. + + https://github.com/itkach/slob + +comment "python-slob needs a toolchain w/ C++" + depends on BR2_PACKAGE_PYTHON3 && !BR2_BINFMT_FLAT + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-slob/python-slob.hash b/package/python-slob/python-slob.hash new file mode 100644 index 0000000000..39d5d81f30 --- /dev/null +++ b/package/python-slob/python-slob.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 18eb4f45d09d49b1f776cac52ea70ab951566c60cd30bbec39e88f10908fd8ff python-slob-31ad0e769360a5b10a4893f686587bb8e48c3895.tar.gz diff --git a/package/python-slob/python-slob.mk b/package/python-slob/python-slob.mk new file mode 100644 index 0000000000..474c0c94df --- /dev/null +++ b/package/python-slob/python-slob.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-slob +# +################################################################################ + +PYTHON_SLOB_VERSION = 31ad0e769360a5b10a4893f686587bb8e48c3895 +PYTHON_SLOB_SITE = $(call github,itkach,slob,$(PYTHON_SLOB_VERSION)) +PYTHON_SLOB_LICENSE = GPLv3 +PYTHON_SLOB_LICENSE_FILES = LICENSE +PYTHON_SLOB_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-socketio/Config.in b/package/python-socketio/Config.in new file mode 100644 index 0000000000..af0f6f32e8 --- /dev/null +++ b/package/python-socketio/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_SOCKETIO + bool "python-socketio" + select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_ENGINEIO # runtime + help + Socket.IO server. + + http://github.com/miguelgrinberg/python-socketio/ diff --git a/package/python-socketio/python-socketio.hash b/package/python-socketio/python-socketio.hash new file mode 100644 index 0000000000..659d4d540c --- /dev/null +++ b/package/python-socketio/python-socketio.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/python-socketio/json +md5 44fd24e839dc3102920765f345740646 python-socketio-1.4.1.tar.gz +# sha256 calculated by scanpypi +sha256 ebd0984d831d602c8ec6d586ecde4466972cc7ed37dbbfe613192864e8263779 python-socketio-1.4.1.tar.gz diff --git a/package/python-socketio/python-socketio.mk b/package/python-socketio/python-socketio.mk new file mode 100644 index 0000000000..57dc1f8b48 --- /dev/null +++ b/package/python-socketio/python-socketio.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-socketio +# +################################################################################ + +PYTHON_SOCKETIO_VERSION = 1.4.1 +PYTHON_SOCKETIO_SITE = https://pypi.python.org/packages/da/00/66103df6a116a2ce3ea662a9c8c80f337d43d7f138caf04e9af6dec24ba7 +PYTHON_SOCKETIO_SETUP_TYPE = setuptools +PYTHON_SOCKETIO_LICENSE = MIT +PYTHON_SOCKETIO_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-spidev/0001-Fix-build-with-musl-libc.patch b/package/python-spidev/0001-Fix-build-with-musl-libc.patch deleted file mode 100644 index b22a73aa67..0000000000 --- a/package/python-spidev/0001-Fix-build-with-musl-libc.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 3d6e59bff088783f249a60a5f1c900c7f99f933b Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 31 Jan 2016 15:03:50 +0100 -Subject: [PATCH 1/1] Fix build with musl libc -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Include missing header to prevent build error: - -spidev_module.c: In function ‘SpiDev_xfer’: -spidev_module.c:330:27: error: ‘_IOC_SIZEBITS’ undeclared (first use in this function) - status = ioctl(self->fd, SPI_IOC_MESSAGE(1), &xfer); - ^ -spidev_module.c:330:27: note: each undeclared identifier is reported only once for each function it appears in -spidev_module.c: In function ‘SpiDev_xfer2’: -spidev_module.c:421:27: error: ‘_IOC_SIZEBITS’ undeclared (first use in this function) - status = ioctl(self->fd, SPI_IOC_MESSAGE(1), &xfer); - ^ - -Signed-off-by: Bernd Kuhls bernd.kuhls@t-online.de -Signed-off-by: Bernd Kuhls ---- -Patch sent upstream: https://github.com/doceme/py-spidev/pull/39 - - spidev_module.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/spidev_module.c b/spidev_module.c -index d58ef07..bccaacf 100644 ---- a/spidev_module.c -+++ b/spidev_module.c -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - #define SPIDEV_MAXPATH 4096 - --- -2.7.0 - diff --git a/package/python-spidev/python-spidev.hash b/package/python-spidev/python-spidev.hash index 49e8db8a86..dc08925d30 100644 --- a/package/python-spidev/python-spidev.hash +++ b/package/python-spidev/python-spidev.hash @@ -1,2 +1,3 @@ -# Locally calculated -sha256 355391e9ad3024950590626b080324394c12e75bb21923dbd56a978a1eac6ac7 spidev-3.1.tar.gz +# md5 from https://pypi.python.org/pypi/spidev/json, sha256 locally computed +md5 f601676f1bb48b9aa3b3897f95216365 spidev-3.2.tar.gz +sha256 09d2b5122f0dd79910713a11f9a0020f71537224bf829916def4fffc0ea59456 spidev-3.2.tar.gz diff --git a/package/python-spidev/python-spidev.mk b/package/python-spidev/python-spidev.mk index 0a8dd15646..d839bb3f7f 100644 --- a/package/python-spidev/python-spidev.mk +++ b/package/python-spidev/python-spidev.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SPIDEV_VERSION = 3.1 +PYTHON_SPIDEV_VERSION = 3.2 PYTHON_SPIDEV_SOURCE = spidev-$(PYTHON_SPIDEV_VERSION).tar.gz -PYTHON_SPIDEV_SITE = https://pypi.python.org/packages/source/s/spidev +PYTHON_SPIDEV_SITE = https://pypi.python.org/packages/36/83/73748b6e1819b57d8e1df8090200195cdae33aaa22a49a91ded16785eedd PYTHON_SPIDEV_SETUP_TYPE = distutils PYTHON_SPIDEV_LICENSE = GPLv2 PYTHON_SPIDEV_LICENSE_FILES = LICENSE.md diff --git a/package/python-thrift/python-thrift.hash b/package/python-thrift/python-thrift.hash index 811aa988e3..72269eb836 100644 --- a/package/python-thrift/python-thrift.hash +++ b/package/python-thrift/python-thrift.hash @@ -1,2 +1,3 @@ -# From https://www.apache.org/dist/thrift/0.9.2/thrift-0.9.2.tar.gz.md5 -md5 89f63cc4d0100912f4a1f8a9dee63678 thrift-0.9.2.tar.gz +# md5 from https://pypi.python.org/pypi/thrift/json, sha256 locally computed +md5 b519551d7a086bb0b4f222a8f566b7e8 thrift-0.9.3.tar.gz +sha256 dfbc3d3bd19d396718dab05abaf46d93ae8005e2df798ef02e32793cd963877e thrift-0.9.3.tar.gz diff --git a/package/python-thrift/python-thrift.mk b/package/python-thrift/python-thrift.mk index 99641b8b4b..d0e3a14685 100644 --- a/package/python-thrift/python-thrift.mk +++ b/package/python-thrift/python-thrift.mk @@ -4,12 +4,11 @@ # ################################################################################ -PYTHON_THRIFT_VERSION = 0.9.2 +PYTHON_THRIFT_VERSION = 0.9.3 PYTHON_THRIFT_SOURCE = thrift-$(PYTHON_THRIFT_VERSION).tar.gz -PYTHON_THRIFT_SITE = http://www.us.apache.org/dist/thrift/$(PYTHON_THRIFT_VERSION) +PYTHON_THRIFT_SITE = https://pypi.python.org/packages/ae/58/35e3f0cd290039ff862c2c9d8ae8a76896665d70343d833bdc2f748b8e55 PYTHON_THRIFT_LICENSE = Apache-2.0 -PYTHON_THRIFT_LICENSE_FILES = LICENSE +PYTHON_THRIFT_LICENSE_FILES = setup.py PYTHON_THRIFT_SETUP_TYPE = setuptools -PYTHON_THRIFT_SUBDIR = lib/py $(eval $(python-package)) diff --git a/package/python-tomako/Config.in b/package/python-tomako/Config.in new file mode 100644 index 0000000000..bd6d29982a --- /dev/null +++ b/package/python-tomako/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_TOMAKO + bool "python-tomako" + select BR2_PACKAGE_PYTHON_TORNADO # runtime + select BR2_PACKAGE_PYTHON_MAKO # runtime + help + Tomako is the easiest way to use Mako as a template engine for + Tornado. + + https://github.com/rcmachado/tomako diff --git a/package/python-tomako/python-tomako.hash b/package/python-tomako/python-tomako.hash new file mode 100644 index 0000000000..af07a88abc --- /dev/null +++ b/package/python-tomako/python-tomako.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/tomako/json, sha256 locally computed +md5 a2e9e99be4ddf2263ed441ddc3dfcf96 tomako-0.1.0.post1.tar.gz +sha256 2d8ec113199408eb16ec00361aac6f10b716925779b6331083f304d01dafd150 tomako-0.1.0.post1.tar.gz diff --git a/package/python-tomako/python-tomako.mk b/package/python-tomako/python-tomako.mk new file mode 100644 index 0000000000..23c0b34ff3 --- /dev/null +++ b/package/python-tomako/python-tomako.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-tomako +# +################################################################################ + +PYTHON_TOMAKO_VERSION = 0.1.0.post1 +PYTHON_TOMAKO_SOURCE = tomako-$(PYTHON_TOMAKO_VERSION).tar.gz +PYTHON_TOMAKO_SITE = https://pypi.python.org/packages/30/64/e174248281cb2fa8f5bce955d4bd49b253e622bb540a6001e48dec378a07 +PYTHON_TOMAKO_SETUP_TYPE = setuptools +PYTHON_TOMAKO_LICENSE = MIT +PYTHON_TOMAKO_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-toml/Config.in b/package/python-toml/Config.in new file mode 100644 index 0000000000..a41622fc2f --- /dev/null +++ b/package/python-toml/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_TOML + bool "python-toml" + help + Python Library for Tom's Obvious, Minimal Language. + + https://github.com/uiri/toml diff --git a/package/python-toml/python-toml.hash b/package/python-toml/python-toml.hash new file mode 100644 index 0000000000..cbc71a961b --- /dev/null +++ b/package/python-toml/python-toml.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 aee9679726f42fb09f48b9701a321571e0b6a51305c3e0f3913b3057d8bf7083 python-toml-0.9.2.tar.gz diff --git a/package/python-toml/python-toml.mk b/package/python-toml/python-toml.mk new file mode 100644 index 0000000000..fec113e1cb --- /dev/null +++ b/package/python-toml/python-toml.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-toml +# +################################################################################ + +PYTHON_TOML_VERSION = 0.9.2 +PYTHON_TOML_SITE = $(call github,uiri,toml,$(PYTHON_TOML_VERSION)) +PYTHON_TOML_SETUP_TYPE = distutils +PYTHON_TOML_LICENSE = MIT +PYTHON_TOML_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-tornado/Config.in b/package/python-tornado/Config.in index ac866824ec..a0ee78fb7a 100644 --- a/package/python-tornado/Config.in +++ b/package/python-tornado/Config.in @@ -1,9 +1,10 @@ config BR2_PACKAGE_PYTHON_TORNADO bool "python-tornado" - select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime - select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 select BR2_PACKAGE_PYTHON_SINGLEDISPATCH if BR2_PACKAGE_PYTHON # runtime - select BR2_PACKAGE_PYTHON_BACKPORTS_ABC # runtime + select BR2_PACKAGE_PYTHON_BACKPORTS_ABC if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON_CERTIFI if BR2_PACKAGE_PYTHON # runtime help Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. diff --git a/package/python-tornado/python-tornado.hash b/package/python-tornado/python-tornado.hash index e0f3c39a94..ee4080fe75 100644 --- a/package/python-tornado/python-tornado.hash +++ b/package/python-tornado/python-tornado.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=c548d7b77a11d523c3d7255bd7fd6df8, sha256 locally computed -md5 d13a99dc0b60ba69f5f8ec1235e5b232 tornado-4.3.tar.gz -sha256 c9c2d32593d16eedf2cec1b6a41893626a2649b40b21ca9c4cac4243bde2efbf tornado-4.3.tar.gz +# md5 from https://pypi.python.org/pypi/tornado/json, sha256 locally computed +md5 b4816ea209118667ffc52ce9ff06ac85 tornado-4.4.2.tar.gz +sha256 2898f992f898cd41eeb8d53b6df75495f2f423b6672890aadaf196ea1448edcc tornado-4.4.2.tar.gz diff --git a/package/python-tornado/python-tornado.mk b/package/python-tornado/python-tornado.mk index 64809b7902..e512e60fa1 100644 --- a/package/python-tornado/python-tornado.mk +++ b/package/python-tornado/python-tornado.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TORNADO_VERSION = 4.3 +PYTHON_TORNADO_VERSION = 4.4.2 PYTHON_TORNADO_SOURCE = tornado-$(PYTHON_TORNADO_VERSION).tar.gz -PYTHON_TORNADO_SITE = https://pypi.python.org/packages/source/t/tornado +PYTHON_TORNADO_SITE = https://pypi.python.org/packages/1e/7c/ea047f7bbd1ff22a7f69fe55e7561040e3e54d6f31da6267ef9748321f98 PYTHON_TORNADO_LICENSE = Apache-2.0 PYTHON_TORNADO_SETUP_TYPE = setuptools diff --git a/package/python-twisted/Config.in b/package/python-twisted/Config.in index 1221fc25bd..7fe4289d46 100644 --- a/package/python-twisted/Config.in +++ b/package/python-twisted/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_PYTHON_TWISTED bool "python-twisted" + select BR2_PACKAGE_PYTHON_INCREMENTAL + select BR2_PACKAGE_PYTHON_CONSTANTLY # runtime select BR2_PACKAGE_PYTHON_ZOPE_INTERFACE # runtime help Twisted is an event-driven networking engine written in Python. diff --git a/package/python-twisted/python-twisted.hash b/package/python-twisted/python-twisted.hash index 275cea89c6..cc78a4cb53 100644 --- a/package/python-twisted/python-twisted.hash +++ b/package/python-twisted/python-twisted.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=266a085f5ce3fbc060818bd00bd6a888, sha256 locally computed -md5 266a085f5ce3fbc060818bd00bd6a888 Twisted-16.1.1.tar.bz2 -sha256 fe7d001d9a803ed26cd0fd2f69fa4212ff025f3af6ef1a559d905fe551ab04e9 Twisted-16.1.1.tar.bz2 +# md5 from https://pypi.python.org/pypi/twisted/json, sha256 locally computed +md5 54a88ffe773d5a83c91fcfe86044b094 Twisted-16.6.0.tar.bz2 +sha256 d0fe115ea7ef8cf632d05103de60356c6e992b2153d6830bdc4476f8accb1fca Twisted-16.6.0.tar.bz2 diff --git a/package/python-twisted/python-twisted.mk b/package/python-twisted/python-twisted.mk index e98e03fa36..29fe735895 100644 --- a/package/python-twisted/python-twisted.mk +++ b/package/python-twisted/python-twisted.mk @@ -4,11 +4,12 @@ # ################################################################################ -PYTHON_TWISTED_VERSION = 16.1.1 +PYTHON_TWISTED_VERSION = 16.6.0 PYTHON_TWISTED_SOURCE = Twisted-$(PYTHON_TWISTED_VERSION).tar.bz2 -PYTHON_TWISTED_SITE = https://pypi.python.org/packages/source/T/Twisted +PYTHON_TWISTED_SITE = https://pypi.python.org/packages/dc/c0/a0114a6d7fa211c0904b0de931e8cafb5210ad824996cc6a9d67f3bae22c PYTHON_TWISTED_SETUP_TYPE = setuptools PYTHON_TWISTED_LICENSE = MIT PYTHON_TWISTED_LICENSE_FILES = LICENSE +PYTHON_TWISTED_DEPENDENCIES = python-incremental $(eval $(python-package)) diff --git a/package/python-txaio/python-txaio.hash b/package/python-txaio/python-txaio.hash index 5d9e6cf097..37da82b1b7 100644 --- a/package/python-txaio/python-txaio.hash +++ b/package/python-txaio/python-txaio.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=c2a7e6ebfdf8987c3938e40e39a3c5e7, sha256 locally computed -md5 c2a7e6ebfdf8987c3938e40e39a3c5e7 txaio-2.2.1.tar.gz -sha256 6eee00c397d8193d15313dfc36da3eac8d64edf0b92fe3b67cd5a735ffc3074b txaio-2.2.1.tar.gz +# md5 from https://pypi.python.org/pypi/txaio/json, sha256 locally computed. +md5 7b0f5321515d380ad5d32f01666b6ee7 txaio-2.5.1.tar.gz +sha256 625076477182e2dde78b79d0b2b0d6b3cecb0e24fe0ea7eaf2abd26a4c0dd1de txaio-2.5.1.tar.gz diff --git a/package/python-txaio/python-txaio.mk b/package/python-txaio/python-txaio.mk index 127bc62770..34c6e99cc6 100644 --- a/package/python-txaio/python-txaio.mk +++ b/package/python-txaio/python-txaio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TXAIO_VERSION = 2.2.1 +PYTHON_TXAIO_VERSION = 2.5.1 PYTHON_TXAIO_SOURCE = txaio-$(PYTHON_TXAIO_VERSION).tar.gz -PYTHON_TXAIO_SITE = http://pypi.python.org/packages/source/t/txaio +PYTHON_TXAIO_SITE = https://pypi.python.org/packages/45/e1/f7d88767d65dbfc20d4b4aa0dad657dbbe8ca629ead2bef24da04630a12a PYTHON_TXAIO_LICENSE = MIT PYTHON_TXAIO_LICENSE_FILES = LICENSE PYTHON_TXAIO_SETUP_TYPE = setuptools diff --git a/package/python-u-msgpack/Config.in b/package/python-u-msgpack/Config.in new file mode 100644 index 0000000000..ad0f90e8d2 --- /dev/null +++ b/package/python-u-msgpack/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_U_MSGPACK + bool "python-u-msgpack" + help + A portable, lightweight MessagePack serializer and deserializer + written in pure Python. + + https://github.com/vsergeev/u-msgpack-python diff --git a/package/python-u-msgpack/python-u-msgpack.hash b/package/python-u-msgpack/python-u-msgpack.hash new file mode 100644 index 0000000000..12f2be37af --- /dev/null +++ b/package/python-u-msgpack/python-u-msgpack.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/u-msgpack-python/json, sha256 locally computed +md5 f5adfb3e19910d8a41e331d3b03aa7c6 u-msgpack-python-2.2.tar.gz +sha256 cdd5a88f2313856a6a9f481f652dab9edd5731059badbb0111280f27249930d7 u-msgpack-python-2.2.tar.gz diff --git a/package/python-u-msgpack/python-u-msgpack.mk b/package/python-u-msgpack/python-u-msgpack.mk new file mode 100644 index 0000000000..a88beeb1c9 --- /dev/null +++ b/package/python-u-msgpack/python-u-msgpack.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-u-msgpack +# +################################################################################ + +PYTHON_U_MSGPACK_VERSION = 2.2 +PYTHON_U_MSGPACK_SOURCE = u-msgpack-python-$(PYTHON_U_MSGPACK_VERSION).tar.gz +PYTHON_U_MSGPACK_SITE = https://pypi.python.org/packages/66/5b/36fe0fcf290bd39f6ef6c1f5924cf0a9a76b0dc94575975ad7d318619cf9 +PYTHON_U_MSGPACK_SETUP_TYPE = distutils +PYTHON_U_MSGPACK_LICENSE = MIT +PYTHON_U_MSGPACK_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-ubjson/Config.in b/package/python-ubjson/Config.in new file mode 100644 index 0000000000..86ed3b2e1b --- /dev/null +++ b/package/python-ubjson/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_UBJSON + bool "python-ubjson" + help + This is a Python v3.2+ (and 2.7+) Universal Binary JSON + encoder/decoder based on the draft-12 specification. + + https://pypi.python.org/pypi/py-ubjson diff --git a/package/python-ubjson/python-ubjson.hash b/package/python-ubjson/python-ubjson.hash new file mode 100644 index 0000000000..88c8c62b3a --- /dev/null +++ b/package/python-ubjson/python-ubjson.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/py-ubjson/json, sha256 locally computed +md5 09584b02508451a8133095c3b5f2bf41 py-ubjson-0.8.5.tar.gz +sha256 e58e99753aaff3ed5d884989a6236bd98a4b0dfdb0e62f9753c20f485691fa9e py-ubjson-0.8.5.tar.gz diff --git a/package/python-ubjson/python-ubjson.mk b/package/python-ubjson/python-ubjson.mk new file mode 100644 index 0000000000..e42b2dc50c --- /dev/null +++ b/package/python-ubjson/python-ubjson.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-ubjson +# +################################################################################ + +PYTHON_UBJSON_VERSION = 0.8.5 +PYTHON_UBJSON_SOURCE = py-ubjson-$(PYTHON_UBJSON_VERSION).tar.gz +PYTHON_UBJSON_SITE = https://pypi.python.org/packages/99/12/173cd417cacdacd158f947365bb17952a93b4e9d08f8a2f4b77d6c17cb4e +PYTHON_UBJSON_LICENSE = Apache-2.0 +PYTHON_UBJSON_LICENSE_FILES = LICENSE +PYTHON_UBJSON_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-urllib3/python-urllib3.hash b/package/python-urllib3/python-urllib3.hash index 266b8e9023..fb5fd9dd27 100644 --- a/package/python-urllib3/python-urllib3.hash +++ b/package/python-urllib3/python-urllib3.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=5e1407428ac33b521c71a7ac273b3847, sha256 locally computed -md5 5e1407428ac33b521c71a7ac273b3847 urllib3-1.14.tar.gz -sha256 dd4fb13a4ce50b18338c7e4d665b21fd38632c5d4b1d9f1a1379276bd3c08d37 urllib3-1.14.tar.gz +# md5 from https://pypi.python.org/pypi/urllib3/json, sha256 locally computed +md5 1eadd93bd5e58d3528d977111f2997ea urllib3-1.18.tar.gz +sha256 d30dd4d1cbbc36ebab6e4a2076820cfe0c60f10adf087fecbc5a3edae79fdc81 urllib3-1.18.tar.gz diff --git a/package/python-urllib3/python-urllib3.mk b/package/python-urllib3/python-urllib3.mk index 0101053e9c..9043aa35a6 100644 --- a/package/python-urllib3/python-urllib3.mk +++ b/package/python-urllib3/python-urllib3.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_URLLIB3_VERSION = 1.14 +PYTHON_URLLIB3_VERSION = 1.18 PYTHON_URLLIB3_SOURCE = urllib3-$(PYTHON_URLLIB3_VERSION).tar.gz -PYTHON_URLLIB3_SITE = https://pypi.python.org/packages/source/u/urllib3 +PYTHON_URLLIB3_SITE = https://pypi.python.org/packages/8f/45/7434a6a44d42744b74fb969a39720f0c3d4f31f921737e51a69d8b15c859 PYTHON_URLLIB3_LICENSE = MIT PYTHON_URLLIB3_LICENSE_FILES = LICENSE.txt PYTHON_URLLIB3_SETUP_TYPE = setuptools diff --git a/package/python-urwid/python-urwid.hash b/package/python-urwid/python-urwid.hash index eceed9d555..c600851646 100644 --- a/package/python-urwid/python-urwid.hash +++ b/package/python-urwid/python-urwid.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi/urwid/1.3.0, sha256 locally computed -md5 a989acd54f4ff1a554add464803a9175 urwid-1.3.0.tar.gz -sha256 29f04fad3bf0a79c5491f7ebec2d50fa086e9d16359896c9204c6a92bc07aba2 urwid-1.3.0.tar.gz +# md5 from https://pypi.python.org/pypi/urwid/json, sha256 locally computed +md5 2e1a005cb31368fe21bfeba2d6ad5a5c urwid-1.3.1.tar.gz +sha256 cfcec03e36de25a1073e2e35c2c7b0cc6969b85745715c3a025a31d9786896a1 urwid-1.3.1.tar.gz diff --git a/package/python-urwid/python-urwid.mk b/package/python-urwid/python-urwid.mk index 1cd3022072..e52a155eb7 100644 --- a/package/python-urwid/python-urwid.mk +++ b/package/python-urwid/python-urwid.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_URWID_VERSION = 1.3.0 +PYTHON_URWID_VERSION = 1.3.1 PYTHON_URWID_SOURCE = urwid-$(PYTHON_URWID_VERSION).tar.gz PYTHON_URWID_SITE = https://pypi.python.org/packages/source/u/urwid PYTHON_URWID_LICENSE = LGPLv2.1+ diff --git a/package/python-vcversioner/python-vcversioner.hash b/package/python-vcversioner/python-vcversioner.hash new file mode 100644 index 0000000000..58573a18b3 --- /dev/null +++ b/package/python-vcversioner/python-vcversioner.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/vcversioner/json, sha256 locally computed +md5 aab6ef5e0cf8614a1b1140ed5b7f107d vcversioner-2.16.0.0.tar.gz +sha256 dae60c17a479781f44a4010701833f1829140b1eeccd258762a74974aa06e19b vcversioner-2.16.0.0.tar.gz diff --git a/package/python-vcversioner/python-vcversioner.mk b/package/python-vcversioner/python-vcversioner.mk new file mode 100644 index 0000000000..e7a62f864b --- /dev/null +++ b/package/python-vcversioner/python-vcversioner.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-vcversioner +# +################################################################################ + +PYTHON_VCVERSIONER_VERSION = 2.16.0.0 +PYTHON_VCVERSIONER_SOURCE = vcversioner-$(PYTHON_VCVERSIONER_VERSION).tar.gz +PYTHON_VCVERSIONER_SITE = https://pypi.python.org/packages/c5/cc/33162c0a7b28a4d8c83da07bc2b12cee58c120b4a9e8bba31c41c8d35a16 +PYTHON_VCVERSIONER_SETUP_TYPE = setuptools +PYTHON_VCVERSIONER_LICENSE = ISC + +$(eval $(host-python-package)) diff --git a/package/python-versiontools/python-versiontools.hash b/package/python-versiontools/python-versiontools.hash new file mode 100644 index 0000000000..1067c415cd --- /dev/null +++ b/package/python-versiontools/python-versiontools.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 a969332887a18a9c98b0df0ea4d4ca75972f24ca94f06fb87d591377e83414f6 versiontools-1.9.1.tar.gz diff --git a/package/python-watchdog/Config.in b/package/python-watchdog/Config.in new file mode 100644 index 0000000000..e5290897e8 --- /dev/null +++ b/package/python-watchdog/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_WATCHDOG + bool "python-watchdog" + select BR2_PACKAGE_PYTHON_PYYAML + select BR2_PACKAGE_PYTHON_ARGH + select BR2_PACKAGE_PYTHON_PATHTOOLS + help + Python API and shell utilities to monitor file system events. + + http://github.com/gorakhargosh/watchdog diff --git a/package/python-watchdog/python-watchdog.hash b/package/python-watchdog/python-watchdog.hash new file mode 100644 index 0000000000..9da2b37a7b --- /dev/null +++ b/package/python-watchdog/python-watchdog.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/watchdog/json +md5 bb16926bccc98eae2a04535e4512ddf1 watchdog-0.8.3.tar.gz +# sha256 calculated by scanpypi +sha256 7e65882adb7746039b6f3876ee174952f8eaaa34491ba34333ddf1fe35de4162 watchdog-0.8.3.tar.gz diff --git a/package/python-watchdog/python-watchdog.mk b/package/python-watchdog/python-watchdog.mk new file mode 100644 index 0000000000..3dd92e3a3d --- /dev/null +++ b/package/python-watchdog/python-watchdog.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-watchdog +# +################################################################################ + +PYTHON_WATCHDOG_VERSION = 0.8.3 +PYTHON_WATCHDOG_SOURCE = watchdog-$(PYTHON_WATCHDOG_VERSION).tar.gz +PYTHON_WATCHDOG_SITE = https://pypi.python.org/packages/54/7d/c7c0ad1e32b9f132075967fc353a244eb2b375a3d2f5b0ce612fd96e107e +PYTHON_WATCHDOG_SETUP_TYPE = setuptools +PYTHON_WATCHDOG_LICENSE = Apache-2.0 +PYTHON_WATCHDOG_LICENSE_FILES = LICENSE COPYING + +$(eval $(python-package)) diff --git a/package/python-wcwidth/Config.in b/package/python-wcwidth/Config.in new file mode 100644 index 0000000000..c5cc02234b --- /dev/null +++ b/package/python-wcwidth/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_WCWIDTH + bool "python-wcwidth" + help + This library measures number of Terminal column cells of + wide-character codes. + + https://github.com/jquast/wcwidth diff --git a/package/python-wcwidth/python-wcwidth.hash b/package/python-wcwidth/python-wcwidth.hash new file mode 100644 index 0000000000..a3ab50faed --- /dev/null +++ b/package/python-wcwidth/python-wcwidth.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/wcwidth/json, sha256 locally computed +md5 b3b6a0a08f0c8a34d1de8cf44150a4ad wcwidth-0.1.7.tar.gz +sha256 3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e wcwidth-0.1.7.tar.gz diff --git a/package/python-wcwidth/python-wcwidth.mk b/package/python-wcwidth/python-wcwidth.mk new file mode 100644 index 0000000000..2dd392a595 --- /dev/null +++ b/package/python-wcwidth/python-wcwidth.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-wcwidth +# +################################################################################ + +PYTHON_WCWIDTH_VERSION = 0.1.7 +PYTHON_WCWIDTH_SOURCE = wcwidth-$(PYTHON_WCWIDTH_VERSION).tar.gz +PYTHON_WCWIDTH_SITE = https://pypi.python.org/packages/55/11/e4a2bb08bb450fdbd42cc709dd40de4ed2c472cf0ccb9e64af22279c5495 +PYTHON_WCWIDTH_SETUP_TYPE = setuptools +PYTHON_WCWIDTH_LICENSE = MIT +PYTHON_WCWIDTH_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-werkzeug/python-werkzeug.hash b/package/python-werkzeug/python-werkzeug.hash index f833b89a4d..3f233524bd 100644 --- a/package/python-werkzeug/python-werkzeug.hash +++ b/package/python-werkzeug/python-werkzeug.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9479bc7ea6a42c2d0d82929d3926df67, sha256 locally computed -md5 9479bc7ea6a42c2d0d82929d3926df67 Werkzeug-0.11.3.tar.gz -sha256 eb5f700a9bfc96420b055635af9002d3662e43d80c3ffd31f224c25bc0d5f462 Werkzeug-0.11.3.tar.gz +# md5 from https://pypi.python.org/pypi/werkzeug/json, sha256 locally computed +md5 1d34afa1f19abcef4c0da51ebc2c4ea7 Werkzeug-0.11.11.tar.gz +sha256 e72c46bc14405cba7a26bd2ce28df734471bc9016bc8b4cb69466c2c14c2f7e5 Werkzeug-0.11.11.tar.gz diff --git a/package/python-werkzeug/python-werkzeug.mk b/package/python-werkzeug/python-werkzeug.mk index 3df481a635..072937fc27 100644 --- a/package/python-werkzeug/python-werkzeug.mk +++ b/package/python-werkzeug/python-werkzeug.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_WERKZEUG_VERSION = 0.11.3 +PYTHON_WERKZEUG_VERSION = 0.11.11 PYTHON_WERKZEUG_SOURCE = Werkzeug-$(PYTHON_WERKZEUG_VERSION).tar.gz -PYTHON_WERKZEUG_SITE = http://pypi.python.org/packages/source/W/Werkzeug +PYTHON_WERKZEUG_SITE = https://pypi.python.org/packages/43/2e/d822b4a4216804519ace92e0368dcfc4b0b2887462d852fdd476b253ecc9 PYTHON_WERKZEUG_SETUP_TYPE = setuptools PYTHON_WERKZEUG_LICENSE = BSD-3c PYTHON_WERKZEUG_LICENSE_FILES = LICENSE diff --git a/package/python-whoosh/Config.in b/package/python-whoosh/Config.in new file mode 100644 index 0000000000..1128ce6417 --- /dev/null +++ b/package/python-whoosh/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_WHOOSH + bool "python-whoosh" + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + help + Whoosh is a fast, pure-Python full text indexing, search and + spell checking library. + + https://pypi.python.org/pypi/Whoosh/ diff --git a/package/python-whoosh/python-whoosh.hash b/package/python-whoosh/python-whoosh.hash new file mode 100644 index 0000000000..b14dd0f877 --- /dev/null +++ b/package/python-whoosh/python-whoosh.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/Whoosh/json, sha256 locally computed +md5 9a0fc2df9335e1d2e81dd84a2c4c416f Whoosh-2.7.0.tar.gz +sha256 cdfc0e1c5173207ac7b312afe78d83fb552cfed30427bf7b3dba8b1d26cea8f7 Whoosh-2.7.0.tar.gz diff --git a/package/python-whoosh/python-whoosh.mk b/package/python-whoosh/python-whoosh.mk new file mode 100644 index 0000000000..64f3820c8a --- /dev/null +++ b/package/python-whoosh/python-whoosh.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-whoosh +# +################################################################################ + +PYTHON_WHOOSH_VERSION = 2.7.0 +PYTHON_WHOOSH_SOURCE = Whoosh-$(PYTHON_WHOOSH_VERSION).tar.gz +PYTHON_WHOOSH_SITE = http://pypi.python.org/packages/source/W/Whoosh +PYTHON_WHOOSH_SETUP_TYPE = setuptools +PYTHON_WHOOSH_LICENSE = BSD-3c +PYTHON_WHOOSH_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-ws4py/python-ws4py.hash b/package/python-ws4py/python-ws4py.hash index e58e14aaf3..4d5904ee0c 100644 --- a/package/python-ws4py/python-ws4py.hash +++ b/package/python-ws4py/python-ws4py.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=6b47e33cbd13f5c134b04f2a44a480ad, sha256 locally computed -md5 6b47e33cbd13f5c134b04f2a44a480ad ws4py-0.3.4.tar.gz -sha256 85d5c01bb0d031e151a32fad56094caf54e20c2ddb51cf25b5709421ff92d007 ws4py-0.3.4.tar.gz +# md5 from https://pypi.python.org/pypi/ws4py/json, sha256 locally computed +md5 b0cbe30433350ef5ec98e8cbb3c3b39c ws4py-0.3.5.tar.gz +sha256 c4cc4a872027f6a6006a6142a38eb6d65c2ece29a4cefac98dd20a48c34ec7a9 ws4py-0.3.5.tar.gz diff --git a/package/python-ws4py/python-ws4py.mk b/package/python-ws4py/python-ws4py.mk index f332d15078..fac99f328a 100644 --- a/package/python-ws4py/python-ws4py.mk +++ b/package/python-ws4py/python-ws4py.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_WS4PY_VERSION = 0.3.4 +PYTHON_WS4PY_VERSION = 0.3.5 PYTHON_WS4PY_SOURCE = ws4py-$(PYTHON_WS4PY_VERSION).tar.gz -PYTHON_WS4PY_SITE = https://pypi.python.org/packages/source/w/ws4py +PYTHON_WS4PY_SITE = https://pypi.python.org/packages/c8/b4/1784512791fbd196a48f282ca6c79398cace9541a9c151d89c30b6add6e1 PYTHON_WS4PY_SETUP_TYPE = setuptools PYTHON_WS4PY_LICENSE = BSD-3c PYTHON_WS4PY_LICENSE_FILES = ws4py/__init__.py diff --git a/package/python-xlrd/Config.in b/package/python-xlrd/Config.in new file mode 100644 index 0000000000..81331f9d58 --- /dev/null +++ b/package/python-xlrd/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_PYTHON_XLRD + bool "python-xlrd" + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 + help + Library for developers to extract data from Microsoft Excel (tm) + spreadsheet files. + + http://www.python-excel.org/ diff --git a/package/python-xlrd/python-xlrd.hash b/package/python-xlrd/python-xlrd.hash new file mode 100644 index 0000000000..8075605a95 --- /dev/null +++ b/package/python-xlrd/python-xlrd.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/xlrd/json +md5 9a91b688cd4945477ac28187a54f9a3b xlrd-1.0.0.tar.gz +# sha256 calculated by scanpypi +sha256 0ff87dd5d50425084f7219cb6f86bb3eb5aa29063f53d50bf270ed007e941069 xlrd-1.0.0.tar.gz diff --git a/package/python-xlrd/python-xlrd.mk b/package/python-xlrd/python-xlrd.mk new file mode 100644 index 0000000000..50f76243ee --- /dev/null +++ b/package/python-xlrd/python-xlrd.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-xlrd +# +################################################################################ + +PYTHON_XLRD_VERSION = 1.0.0 +PYTHON_XLRD_SOURCE = xlrd-$(PYTHON_XLRD_VERSION).tar.gz +PYTHON_XLRD_SITE = https://pypi.python.org/packages/42/85/25caf967c2d496067489e0bb32df069a8361e1fd96a7e9f35408e56b3aab +PYTHON_XLRD_SETUP_TYPE = setuptools +PYTHON_XLRD_LICENSE = BSD-3c +PYTHON_XLRD_LICENSE_FILES = xlrd/licences.py + +$(eval $(python-package)) diff --git a/package/python-xlsxwriter/Config.in b/package/python-xlsxwriter/Config.in new file mode 100644 index 0000000000..3641bd0525 --- /dev/null +++ b/package/python-xlsxwriter/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_XLSXWRITER + bool "python-xlsxwriter" + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 + help + A Python module for creating Excel XLSX files. + + https://github.com/jmcnamara/XlsxWriter diff --git a/package/python-xlsxwriter/python-xlsxwriter.hash b/package/python-xlsxwriter/python-xlsxwriter.hash new file mode 100644 index 0000000000..5d9a5ac2b5 --- /dev/null +++ b/package/python-xlsxwriter/python-xlsxwriter.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/xlsxwriter/json, sha256 locally computed +md5 17f48e222aa091b053fa2a14986b21c5 XlsxWriter-0.9.4.tar.gz +sha256 1642cf0adc6486dd3b17db9aba72a47fd41b947da6081e97acd6ab9872a22386 XlsxWriter-0.9.4.tar.gz diff --git a/package/python-xlsxwriter/python-xlsxwriter.mk b/package/python-xlsxwriter/python-xlsxwriter.mk new file mode 100644 index 0000000000..bd2ca086b8 --- /dev/null +++ b/package/python-xlsxwriter/python-xlsxwriter.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-xlsxwriter +# +################################################################################ + +PYTHON_XLSXWRITER_VERSION = 0.9.4 +PYTHON_XLSXWRITER_SOURCE = XlsxWriter-$(PYTHON_XLSXWRITER_VERSION).tar.gz +PYTHON_XLSXWRITER_SITE = https://pypi.python.org/packages/52/66/670322b9999b8e47659c8b172a11aa3c0e629a5fc86b5a8fd497b85941c0 +PYTHON_XLSXWRITER_SETUP_TYPE = setuptools +PYTHON_XLSXWRITER_LICENSE = BSD-2c +PYTHON_XLSXWRITER_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/package/python-xlutils/Config.in b/package/python-xlutils/Config.in new file mode 100644 index 0000000000..9c12d766b0 --- /dev/null +++ b/package/python-xlutils/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_XLUTILS + bool "python-xlutils" + select BR2_PACKAGE_PYTHON_XLRD # runtime + select BR2_PACKAGE_PYTHON_XLWT # runtime + help + Utilities for working with Excel files that require both + xlrd and xlwt. + + http://www.python-excel.org diff --git a/package/python-xlutils/python-xlutils.hash b/package/python-xlutils/python-xlutils.hash new file mode 100644 index 0000000000..4f99860cb6 --- /dev/null +++ b/package/python-xlutils/python-xlutils.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/xlutils/json +md5 7a6a339ddaacabce244341582ee61353 xlutils-2.0.0.tar.gz +# sha256 calculated by scanpypi +sha256 7e0e2c233bd185fecf5e2bd3f4e9469ca4a3bd87da64c82cfe5b2af27e7f9e54 xlutils-2.0.0.tar.gz diff --git a/package/python-xlutils/python-xlutils.mk b/package/python-xlutils/python-xlutils.mk new file mode 100644 index 0000000000..fc26b3cee5 --- /dev/null +++ b/package/python-xlutils/python-xlutils.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-xlutils +# +################################################################################ + +PYTHON_XLUTILS_VERSION = 2.0.0 +PYTHON_XLUTILS_SOURCE = xlutils-$(PYTHON_XLUTILS_VERSION).tar.gz +PYTHON_XLUTILS_SITE = https://pypi.python.org/packages/93/fe/af6d73e4bc7b0ce359d34bebb2e8d4d129763acfecd66a3a7efc587e54c9 +PYTHON_XLUTILS_SETUP_TYPE = setuptools +PYTHON_XLUTILS_LICENSE = MIT +PYTHON_XLUTILS_LICENSE_FILES = xlutils/license.txt + +$(eval $(python-package)) diff --git a/package/python-xlwt/Config.in b/package/python-xlwt/Config.in new file mode 100644 index 0000000000..a48ac6fb70 --- /dev/null +++ b/package/python-xlwt/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_XLWT + bool "python-xlwt" + help + Library to create spreadsheet files compatible with MS Excel + 97/2000/XP/2003 XLS files, on any platform, with Python 2.6, + 2.7, 3.3+. + + http://www.python-excel.org/ diff --git a/package/python-xlwt/python-xlwt.hash b/package/python-xlwt/python-xlwt.hash new file mode 100644 index 0000000000..4cacf2b492 --- /dev/null +++ b/package/python-xlwt/python-xlwt.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/xlwt/json +md5 fadf8d1be8c5f071561c4145ed5f5b89 xlwt-1.1.2.tar.gz +# sha256 calculated by scanpypi +sha256 aed648c17731f40f84550dd2a1aaa53569f0cbcaf5610ba895cd2632587b723c xlwt-1.1.2.tar.gz diff --git a/package/python-xlwt/python-xlwt.mk b/package/python-xlwt/python-xlwt.mk new file mode 100644 index 0000000000..38d5f09d31 --- /dev/null +++ b/package/python-xlwt/python-xlwt.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-xlwt +# +################################################################################ + +PYTHON_XLWT_VERSION = 1.1.2 +PYTHON_XLWT_SOURCE = xlwt-$(PYTHON_XLWT_VERSION).tar.gz +PYTHON_XLWT_SITE = https://pypi.python.org/packages/0b/69/644313df86e6375ec2c6b34ec8ac544b9cc7803b7d943223d32811860f3d +PYTHON_XLWT_SETUP_TYPE = setuptools +PYTHON_XLWT_LICENSE = BSD-3c, BSD-4c +PYTHON_XLWT_LICENSE_FILES = docs/licenses.rst + +$(eval $(python-package)) diff --git a/package/python-zope-interface/python-zope-interface.hash b/package/python-zope-interface/python-zope-interface.hash index 2c161f3766..7a46cd348f 100644 --- a/package/python-zope-interface/python-zope-interface.hash +++ b/package/python-zope-interface/python-zope-interface.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9ae3d24c0c7415deb249dd1a132f0f79, sha256 locally computed -md5 9ae3d24c0c7415deb249dd1a132f0f79 zope.interface-4.1.3.tar.gz -sha256 2e221a9eec7ccc58889a278ea13dcfed5ef939d80b07819a9a8b3cb1c681484f zope.interface-4.1.3.tar.gz +# md5 from https://pypi.python.org/pypi/zope-interface/json, sha256 locally computed +md5 ba3f32eacaea66094b7e2ae2788cec89 zope.interface-4.3.3.tar.gz +sha256 8780ef68ca8c3fe1abb30c058a59015129d6e04a6b02c2e56b9c7de6078dfa88 zope.interface-4.3.3.tar.gz diff --git a/package/python-zope-interface/python-zope-interface.mk b/package/python-zope-interface/python-zope-interface.mk index ac3c230149..3e3b464b28 100644 --- a/package/python-zope-interface/python-zope-interface.mk +++ b/package/python-zope-interface/python-zope-interface.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ZOPE_INTERFACE_VERSION = 4.1.3 +PYTHON_ZOPE_INTERFACE_VERSION = 4.3.3 PYTHON_ZOPE_INTERFACE_SOURCE = zope.interface-$(PYTHON_ZOPE_INTERFACE_VERSION).tar.gz -PYTHON_ZOPE_INTERFACE_SITE = https://pypi.python.org/packages/source/z/zope.interface +PYTHON_ZOPE_INTERFACE_SITE = https://pypi.python.org/packages/44/af/cea1e18bc0d3be0e0824762d3236f0e61088eeed75287e7b854d65ec9916 PYTHON_ZOPE_INTERFACE_SETUP_TYPE = setuptools PYTHON_ZOPE_INTERFACE_LICENSE = ZPLv2.1 PYTHON_ZOPE_INTERFACE_LICENSE_FILES = LICENSE.txt diff --git a/package/python/004-sysconfigdata-install-location.patch b/package/python/004-sysconfigdata-install-location.patch index edf7120e12..2998364fbf 100644 --- a/package/python/004-sysconfigdata-install-location.patch +++ b/package/python/004-sysconfigdata-install-location.patch @@ -58,9 +58,9 @@ Index: b/Makefile.pre.in -rm -f python*-gdb.py - -rm -f pybuilddir.txt + -rm -f pybuilddir.txt pysysconfigdatadir.txt - find $(srcdir)/[a-zA-Z]* '(' -name '*.fdc' -o -name '*~' \ - -o -name '[@,#]*' -o -name '*.old' \ - -o -name '*.orig' -o -name '*.rej' \ + # Issue #28258: set LC_ALL to avoid issues with Estonian locale. + # Expansion is performed here by shell (spawned by make) itself before + # arguments are passed to find. So LC_ALL=C must be set as a separate Index: b/configure.ac =================================================================== --- a/configure.ac diff --git a/package/python/010-fix-python-config.patch b/package/python/010-fix-python-config.patch index 1266f3d3af..b40339b42d 100644 --- a/package/python/010-fix-python-config.patch +++ b/package/python/010-fix-python-config.patch @@ -61,7 +61,7 @@ Index: b/Makefile.pre.in @@ -410,7 +410,7 @@ # Default target - all: build_all + all: @DEF_MAKE_ALL_RULE@ -build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks +build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks python-config diff --git a/package/python/011-remove-python-symlink.patch b/package/python/011-remove-python-symlink.patch index b0548c31df..e021d8320a 100644 --- a/package/python/011-remove-python-symlink.patch +++ b/package/python/011-remove-python-symlink.patch @@ -5,15 +5,17 @@ Buildroot needs to control to what python interpreter (python2 or python3) the python symlink points to. Signed-off-by: Samuel Martin +Signed-off-by: Bernd Kuhls +(rebased against version 2.7.12) Index: b/Makefile.pre.in =================================================================== --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -890,17 +890,10 @@ - # $(PYTHON) -> python2 -> python$(VERSION)) - # Also create equivalent chains for other installed files - bininstall: altbininstall +@@ -974,17 +974,10 @@ + echo "Creating directory $(LIBPC)"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$(LIBPC); \ + fi - -if test -f $(DESTDIR)$(BINDIR)/$(PYTHON) -o -h $(DESTDIR)$(BINDIR)/$(PYTHON); \ - then rm -f $(DESTDIR)$(BINDIR)/$(PYTHON); \ - else true; \ diff --git a/package/python/python.hash b/package/python/python.hash index d1cf1ba021..f285e4243f 100644 --- a/package/python/python.hash +++ b/package/python/python.hash @@ -1,4 +1,4 @@ -# From https://www.python.org/downloads/release/python-2711/ -md5 1dbcc848b4cd8399a8199d000f9f823c Python-2.7.11.tar.xz +# From https://www.python.org/downloads/release/python-2713/ +md5 53b43534153bb2a0363f08bae8b9d990 Python-2.7.13.tar.xz # Locally calculated -sha256 962b4c45af50124ea61f11a30deb4342fc0bc21126790fa1d7f6c79809413f46 Python-2.7.11.tar.xz +sha256 35d543986882f78261f97787fd3e06274bfa6df29fac9b4a94f73930ff98f731 Python-2.7.13.tar.xz diff --git a/package/python/python.mk b/package/python/python.mk index 4ecd0d1d89..7b20434c94 100644 --- a/package/python/python.mk +++ b/package/python/python.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON_VERSION_MAJOR = 2.7 -PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).11 +PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).13 PYTHON_SOURCE = Python-$(PYTHON_VERSION).tar.xz PYTHON_SITE = http://python.org/ftp/python/$(PYTHON_VERSION) PYTHON_LICENSE = Python software foundation license v2, others @@ -39,8 +39,12 @@ HOST_PYTHON_CONF_OPTS += \ # Make sure that LD_LIBRARY_PATH overrides -rpath. # This is needed because libpython may be installed at the same time that # python is called. +# Make python believe we don't have 'hg' and 'svn', so that it doesn't +# try to communicate over the network during the build. HOST_PYTHON_CONF_ENV += \ - LDFLAGS="$(HOST_LDFLAGS) -Wl,--enable-new-dtags" + LDFLAGS="$(HOST_LDFLAGS) -Wl,--enable-new-dtags" \ + ac_cv_prog_HAS_HG=/bin/false \ + ac_cv_prog_SVNVERSION=/bin/false # Building host python in parallel sometimes triggers a "Bus error" # during the execution of "./python setup.py build" in the @@ -126,11 +130,22 @@ else PYTHON_CONF_OPTS += --disable-ossaudiodev endif +# Make python believe we don't have 'hg' and 'svn', so that it doesn't +# try to communicate over the network during the build. PYTHON_CONF_ENV += \ ac_cv_have_long_long_format=yes \ ac_cv_file__dev_ptmx=yes \ ac_cv_file__dev_ptc=yes \ - ac_cv_working_tzset=yes + ac_cv_working_tzset=yes \ + ac_cv_prog_HAS_HG=/bin/false \ + ac_cv_prog_SVNVERSION=/bin/false + +# GCC is always compliant with IEEE754 +ifeq ($(BR2_ENDIAN),"LITTLE") +PYTHON_CONF_ENV += ac_cv_little_endian_double=yes +else +PYTHON_CONF_ENV += ac_cv_big_endian_double=yes +endif PYTHON_CONF_OPTS += \ --without-cxx-main \ @@ -143,7 +158,8 @@ PYTHON_CONF_OPTS += \ --disable-tk \ --disable-nis \ --disable-dbm \ - --disable-pyo-build + --disable-pyo-build \ + --disable-pyc-build # This is needed to make sure the Python build process doesn't try to # regenerate those files with the pgen program. Otherwise, it builds @@ -217,16 +233,38 @@ PYTHON_PATH = $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/sysconfigdata/ $(eval $(autotools-package)) $(eval $(host-autotools-package)) +define PYTHON_CREATE_PYC_FILES + PYTHONPATH="$(PYTHON_PATH)" \ + $(HOST_DIR)/usr/bin/python$(PYTHON_VERSION_MAJOR) \ + support/scripts/pycompile.py \ + $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) +endef + +ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY)$(BR2_PACKAGE_PYTHON_PY_PYC),y) +PYTHON_TARGET_FINALIZE_HOOKS += PYTHON_CREATE_PYC_FILES +endif + ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y) -define PYTHON_FINALIZE_TARGET - find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' -print0 | xargs -0 rm -f +define PYTHON_REMOVE_PY_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' -print0 | \ + xargs -0 --no-run-if-empty rm -f endef +PYTHON_TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PY_FILES endif +# Normally, *.pyc files should not have been compiled, but just in +# case, we make sure we remove all of them. ifeq ($(BR2_PACKAGE_PYTHON_PY_ONLY),y) -define PYTHON_FINALIZE_TARGET - find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyc' -print0 | xargs -0 rm -f +define PYTHON_REMOVE_PYC_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyc' -print0 | \ + xargs -0 --no-run-if-empty rm -f endef +PYTHON_TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PYC_FILES endif -TARGET_FINALIZE_HOOKS += PYTHON_FINALIZE_TARGET +# In all cases, we don't want to keep the optimized .pyo files +define PYTHON_REMOVE_PYO_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyo' -print0 | \ + xargs -0 --no-run-if-empty rm -f +endef +PYTHON_TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PYO_FILES diff --git a/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch index 3fafd903a1..defaad9c45 100644 --- a/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch +++ b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch @@ -1,4 +1,4 @@ -From 03a4c313f42ea1bbdfc4c64a285b3930766c2b23 Mon Sep 17 00:00:00 2001 +From d6093bad6c700312ff7ff4a7bb15c815dda6f46b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:28:34 +0100 Subject: [PATCH] setup.py: do not add invalid header locations @@ -28,10 +28,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index 2779658..d3bf8e5 100644 +index da67731..dbd2a3c 100644 --- a/setup.py +++ b/setup.py -@@ -493,7 +493,8 @@ class PyBuildExt(build_ext): +@@ -511,7 +511,8 @@ class PyBuildExt(build_ext): add_dir_to_list(dir_list, directory) if os.path.normpath(sys.base_prefix) != '/usr' \ diff --git a/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch index 57b55fb12c..8e930abf82 100644 --- a/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch +++ b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch @@ -1,4 +1,4 @@ -From 2f706a2ba92c88f1c8288e34d1937b6ba0e0214c Mon Sep 17 00:00:00 2001 +From 4ac038d30ec71b3f223ac7c91613856dd82b6347 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:29:04 +0100 Subject: [PATCH] Change the install location of _sysconfigdata.py @@ -25,10 +25,10 @@ Signed-off-by: Thomas Petazzoni 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 76aef28..58dab28 100644 +index 823def3..4d2a061 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -559,6 +559,9 @@ pybuilddir.txt: $(BUILDPYTHON) +@@ -585,6 +585,9 @@ pybuilddir.txt: $(BUILDPYTHON) rm -f ./pybuilddir.txt ; \ exit 1 ; \ fi @@ -38,7 +38,7 @@ index 76aef28..58dab28 100644 # Build the shared modules # Under GNU make, MAKEFLAGS are sorted and normalized; the 's' for -@@ -1197,7 +1200,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c +@@ -1235,7 +1238,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c else true; \ fi; \ done @@ -47,7 +47,7 @@ index 76aef28..58dab28 100644 do \ if test -x $$i; then \ $(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \ -@@ -1207,6 +1210,11 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c +@@ -1245,6 +1248,11 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c echo $(INSTALL_DATA) $$i $(LIBDEST); \ fi; \ done @@ -59,17 +59,17 @@ index 76aef28..58dab28 100644 @for d in $(LIBSUBDIRS); \ do \ a=$(srcdir)/Lib/$$d; \ -@@ -1533,7 +1541,7 @@ clean: pycremoval +@@ -1580,7 +1588,7 @@ clean: pycremoval find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name '*.py' -exec rm -f {} ';' || true find build -name '*.py[co]' -exec rm -f {} ';' || true - -rm -f pybuilddir.txt + -rm -f pybuilddir.txt pysysconfigdatadir.txt -rm -f Lib/lib2to3/*Grammar*.pickle - -rm -f Modules/_testembed Modules/_freeze_importlib - + -rm -f Programs/_testembed Programs/_freeze_importlib + -rm -rf build diff --git a/configure.ac b/configure.ac -index a0d0afa..7b491b4 100644 +index 694293e..76b70a0 100644 --- a/configure.ac +++ b/configure.ac @@ -70,7 +70,7 @@ if test "$cross_compiling" = yes; then diff --git a/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch b/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch deleted file mode 100644 index 03684afec5..0000000000 --- a/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 7c5338161263c290f18b1ff90859084d314be98c Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Wed, 23 Dec 2015 11:29:35 +0100 -Subject: [PATCH] Make the build of pyc and pyo files conditional - -This commit adds two new configure options: --disable-pyc-build and ---disable-pyo-build to disable the compilation of pyc and pyo files -respectively. - -Signed-off-by: Thomas Petazzoni ---- - Makefile.pre.in | 8 ++++++++ - configure.ac | 12 ++++++++++++ - 2 files changed, 20 insertions(+) - -diff --git a/Makefile.pre.in b/Makefile.pre.in -index 58dab28..f1bdd99 100644 ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -1245,24 +1245,32 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c - $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ - $(DESTDIR)$(LIBDEST)/distutils/tests ; \ - fi -+ifeq (@PYC_BUILD@,yes) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f \ - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ - $(DESTDIR)$(LIBDEST) -+endif -+ifeq (@PYO_BUILD@,yes) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f \ - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ - $(DESTDIR)$(LIBDEST) -+endif -+ifeq (@PYC_BUILD@,yes) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -+endif -+ifeq (@PYO_BUILD@,yes) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -+endif - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -diff --git a/configure.ac b/configure.ac -index 7b491b4..f2c4705 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -922,6 +922,18 @@ fi - - AC_MSG_CHECKING(LDLIBRARY) - -+AC_SUBST(PYC_BUILD) -+ -+AC_ARG_ENABLE(pyc-build, -+ AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]), -+ [ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ]) -+ -+AC_SUBST(PYO_BUILD) -+ -+AC_ARG_ENABLE(pyo-build, -+ AS_HELP_STRING([--disable-pyo-build], [disable build of pyo files]), -+ [ PYO_BUILD="${enableval}" ], [ PYO_BUILD=yes ]) -+ - # MacOSX framework builds need more magic. LDLIBRARY is the dynamic - # library that we build, but we do not want to link against it (we - # will find it with a -framework option). For this reason there is an --- -2.6.4 - diff --git a/package/python3/0003-Make-the-build-of-pyc-files-conditional.patch b/package/python3/0003-Make-the-build-of-pyc-files-conditional.patch new file mode 100644 index 0000000000..3251da5f3e --- /dev/null +++ b/package/python3/0003-Make-the-build-of-pyc-files-conditional.patch @@ -0,0 +1,54 @@ +From 28f81597314ea3ed03935b519453a55cf6c3c20d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:29:35 +0100 +Subject: [PATCH] Make the build of pyc files conditional + +This commit adds a new configure option --disable-pyc-build to disable +the compilation of pyc. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.pre.in | 2 ++ + configure.ac | 6 ++++++ + 2 files changed, 8 insertions(+) + +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 4d2a061..272f312 100644 +--- a/Makefile.pre.in ++++ b/Makefile.pre.in +@@ -1283,6 +1283,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c + $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ + $(DESTDIR)$(LIBDEST)/distutils/tests ; \ + fi ++ifeq (@PYC_BUILD@,yes) + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ +@@ -1310,6 +1311,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c + $(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages ++endif + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +diff --git a/configure.ac b/configure.ac +index 76b70a0..66d4642 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1056,6 +1056,12 @@ fi + + AC_MSG_CHECKING(LDLIBRARY) + ++AC_SUBST(PYC_BUILD) ++ ++AC_ARG_ENABLE(pyc-build, ++ AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]), ++ [ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ]) ++ + # MacOSX framework builds need more magic. LDLIBRARY is the dynamic + # library that we build, but we do not want to link against it (we + # will find it with a -framework option). For this reason there is an +-- +2.6.4 + diff --git a/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch b/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch index da2a65bc2f..183d6b300f 100644 --- a/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch +++ b/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch @@ -1,4 +1,4 @@ -From ef95d6a49f17522ed120def8093fa2fc0b86cbc8 Mon Sep 17 00:00:00 2001 +From 093caf46b7a742ee2f7bcf617a915ac1653aa8ac Mon Sep 17 00:00:00 2001 From: Vanya Sergeev Date: Wed, 23 Dec 2015 11:30:33 +0100 Subject: [PATCH] Disable buggy_getaddrinfo configure test when cross-compiling @@ -10,10 +10,10 @@ Signed-off-by: Vanya Sergeev 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac -index f2c4705..6342b81 100644 +index 66d4642..c492594 100644 --- a/configure.ac +++ b/configure.ac -@@ -3415,7 +3415,7 @@ fi +@@ -3662,7 +3662,7 @@ fi AC_MSG_RESULT($ac_cv_buggy_getaddrinfo) diff --git a/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch index 4a32bb191b..76a553b505 100644 --- a/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch +++ b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch @@ -1,4 +1,4 @@ -From 9eb1076b61e83647028a2f6b665b6f9afcb793b0 Mon Sep 17 00:00:00 2001 +From 3a9f4aa255909ed152883eee787313efd20dbc58 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:31:08 +0100 Subject: [PATCH] Add infrastructure to disable the build of certain extensions @@ -42,10 +42,10 @@ Signed-off-by: Thomas Petazzoni 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index f1bdd99..e0f9e0f 100644 +index 272f312..9420860 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -177,6 +177,8 @@ FILEMODE= 644 +@@ -182,6 +182,8 @@ FILEMODE= 644 # configure script arguments CONFIG_ARGS= @CONFIG_ARGS@ @@ -54,7 +54,7 @@ index f1bdd99..e0f9e0f 100644 # Subdirectories with code SRCDIRS= @SRCDIRS@ -@@ -574,6 +576,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt +@@ -600,6 +602,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt esac; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ @@ -62,7 +62,7 @@ index f1bdd99..e0f9e0f 100644 $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build # Build static library -@@ -1384,7 +1387,8 @@ libainstall: all python-config +@@ -1425,7 +1428,8 @@ libainstall: all python-config # Install the dynamically loadable modules # This goes into $(exec_prefix) sharedinstall: sharedmods @@ -73,10 +73,10 @@ index f1bdd99..e0f9e0f 100644 --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ diff --git a/configure.ac b/configure.ac -index 6342b81..a3026b8 100644 +index c492594..bfb599e 100644 --- a/configure.ac +++ b/configure.ac -@@ -2352,6 +2352,8 @@ LIBS="$withval $LIBS" +@@ -2588,6 +2588,8 @@ LIBS="$withval $LIBS" PKG_PROG_PKG_CONFIG @@ -86,10 +86,10 @@ index 6342b81..a3026b8 100644 AC_MSG_CHECKING(for --with-system-expat) AC_ARG_WITH(system_expat, diff --git a/setup.py b/setup.py -index d3bf8e5..2a504d2 100644 +index dbd2a3c..1ebfa50 100644 --- a/setup.py +++ b/setup.py -@@ -39,7 +39,10 @@ host_platform = get_platform() +@@ -44,7 +44,10 @@ host_platform = get_platform() COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS")) # This global variable is used to hold the list of modules to be disabled. diff --git a/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch index dcf32d6fec..b3e41b10d5 100644 --- a/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch +++ b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch @@ -1,4 +1,4 @@ -From bdb9cccdc2993e43af1e57ad3b8b0055bab64ba0 Mon Sep 17 00:00:00 2001 +From 7c560d917ee0e536c76fac275d1cb0b6136269ab Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:32:23 +0100 Subject: [PATCH] distutils/sysconfig: use sysconfigdata @@ -12,10 +12,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 4 insertions(+), 33 deletions(-) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index a1452fe..1df20ad 100644 +index 573724d..721edec 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -423,40 +423,11 @@ def expand_makefile_vars(s, vars): +@@ -414,40 +414,11 @@ def expand_makefile_vars(s, vars): _config_vars = None def _init_posix(): diff --git a/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch index 59d4ccd6d2..9ac65ba93b 100644 --- a/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch +++ b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch @@ -1,4 +1,4 @@ -From 678143ce6161379a3eebc20db6634f0c247f8605 Mon Sep 17 00:00:00 2001 +From e634929f76a45f5b683dc19bc01efed2ab83e19e Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:33:14 +0100 Subject: [PATCH] Adjust library/header paths for cross-compilation @@ -21,10 +21,10 @@ Signed-off-by: Thomas Petazzoni 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py -index acbe648..494a8c9 100644 +index d4cb11e..e7a0ba9 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py -@@ -239,7 +239,10 @@ class build_ext(Command): +@@ -232,7 +232,10 @@ class build_ext(Command): if (sysconfig.get_config_var('Py_ENABLE_SHARED')): if not sysconfig.python_build: # building third party extensions @@ -37,10 +37,10 @@ index acbe648..494a8c9 100644 # building python standard extensions self.library_dirs.append('.') diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 1df20ad..905d280 100644 +index 721edec..d20e2d8 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -16,10 +16,17 @@ import sys +@@ -17,10 +17,17 @@ import sys from .errors import DistutilsPlatformError # These are needed in a couple of spots, so just compute them once. @@ -61,7 +61,7 @@ index 1df20ad..905d280 100644 + BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix) # Path to the base directory of the project. On Windows the binary may - # live in project/PCBuild9. If we're dealing with an x64 Windows build, + # live in project/PCBuild/win32 or project/PCBuild/amd64. -- 2.6.4 diff --git a/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch index 19a76cfc85..47a0b83291 100644 --- a/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch +++ b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch @@ -1,4 +1,4 @@ -From 3ef1e30b88c4166f22220812b68e14f39f7ed15b Mon Sep 17 00:00:00 2001 +From d7c568632f7cb83346096ea114a06f89a0b488d6 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:36:00 +0100 Subject: [PATCH] Don't look in /usr/lib/termcap for libraries @@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/setup.py b/setup.py -index 2a504d2..acc4ad0 100644 +index 1ebfa50..24a7153 100644 --- a/setup.py +++ b/setup.py -@@ -733,12 +733,9 @@ class PyBuildExt(build_ext): +@@ -753,12 +753,9 @@ class PyBuildExt(build_ext): pass # Issue 7384: Already linked against curses or tinfo. elif curses_library: readline_libs.append(curses_library) diff --git a/package/python3/0009-Don-t-add-multiarch-paths.patch b/package/python3/0009-Don-t-add-multiarch-paths.patch index 693ab6a508..921e25ccbe 100644 --- a/package/python3/0009-Don-t-add-multiarch-paths.patch +++ b/package/python3/0009-Don-t-add-multiarch-paths.patch @@ -1,4 +1,4 @@ -From b910b3a6e61afcaa6f77b533a5cb4290c528f439 Mon Sep 17 00:00:00 2001 +From bac5ac529cc0902a340a5cd03308433c6e80d1f6 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:36:27 +0100 Subject: [PATCH] Don't add multiarch paths @@ -17,10 +17,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index acc4ad0..eab709e 100644 +index 24a7153..8380a64 100644 --- a/setup.py +++ b/setup.py -@@ -456,10 +456,10 @@ class PyBuildExt(build_ext): +@@ -474,10 +474,10 @@ class PyBuildExt(build_ext): if not cross_compiling: add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') diff --git a/package/python3/0010-Abort-on-failed-module-build.patch b/package/python3/0010-Abort-on-failed-module-build.patch index d2e98224cc..131354b3f5 100644 --- a/package/python3/0010-Abort-on-failed-module-build.patch +++ b/package/python3/0010-Abort-on-failed-module-build.patch @@ -1,4 +1,4 @@ -From 420e08fc9e77b650d11ce420f85257ce1710b70d Mon Sep 17 00:00:00 2001 +From 86ef08e36597e14cac06aef176f12375a27fdef5 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:43:24 +0100 Subject: [PATCH] Abort on failed module build @@ -14,17 +14,17 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py -index eab709e..86758ce 100644 +index 8380a64..15b39f5 100644 --- a/setup.py +++ b/setup.py -@@ -284,6 +284,7 @@ class PyBuildExt(build_ext): +@@ -296,6 +296,7 @@ class PyBuildExt(build_ext): print("Failed to build these modules:") print_three_column(failed) print() + sys.exit(1) - def build_extension(self, ext): - + if self.failed_on_import: + failed = self.failed_on_import[:] -- 2.6.4 diff --git a/package/python3/0011-Serial-ioctl-workaround.patch b/package/python3/0011-Serial-ioctl-workaround.patch index f1db62b6f2..9e7d79c49f 100644 --- a/package/python3/0011-Serial-ioctl-workaround.patch +++ b/package/python3/0011-Serial-ioctl-workaround.patch @@ -1,4 +1,4 @@ -From f67b0073a30eb83d42a2ead0a62020dfe5db8d1e Mon Sep 17 00:00:00 2001 +From ace3ebd517ea0ac42208b6a06c7e8f82da3b9c1b Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Wed, 23 Dec 2015 11:44:02 +0100 Subject: [PATCH] Serial ioctl() workaround diff --git a/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch index e4fbf4e4d6..2e50c1b1af 100644 --- a/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch +++ b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch @@ -1,4 +1,4 @@ -From 2cac07af643d989b352cccc3b96d86ed269df9b1 Mon Sep 17 00:00:00 2001 +From 45f482813de828415906e6a416c9c35450c38da7 Mon Sep 17 00:00:00 2001 From: Christophe Vu-Brugier Date: Wed, 23 Dec 2015 11:44:30 +0100 Subject: [PATCH] Do not adjust the shebang of Python scripts for diff --git a/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch index f9c7225726..872f04023f 100644 --- a/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch +++ b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch @@ -1,4 +1,4 @@ -From 4c0893221e2978854174806f7e14f7643eea32e7 Mon Sep 17 00:00:00 2001 +From 5858abdc25acd522869103d64b60a0c9687e2ec1 Mon Sep 17 00:00:00 2001 From: Peter Korsgaard Date: Thu, 20 Nov 2014 13:24:59 +0100 Subject: [PATCH] Misc/python-config.sh.in: ensure sed invocations only match @@ -25,7 +25,7 @@ Signed-off-by: Peter Korsgaard 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Misc/python-config.sh.in b/Misc/python-config.sh.in -index 64c81e5..f75eec5 100644 +index 30c6927..f905a71 100644 --- a/Misc/python-config.sh.in +++ b/Misc/python-config.sh.in @@ -29,12 +29,12 @@ prefix_real=$(installed_prefix "$0") @@ -52,7 +52,7 @@ index 64c81e5..f75eec5 100644 LIBDEST=${prefix}/lib/python${VERSION} -LIBPL=$(echo "@LIBPL@" | sed "s#$prefix_build#$prefix_real#") +LIBPL=$(echo "@LIBPL@" | sed "s#^$prefix_build#$prefix_real#") - SO="@SO@" + SO="@EXT_SUFFIX@" PYTHONFRAMEWORK="@PYTHONFRAMEWORK@" INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}" -- diff --git a/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch index 4a64427579..f11d946461 100644 --- a/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch +++ b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch @@ -1,4 +1,4 @@ -From a87f08318cf40a27d41957dcc7312c3b3083ba86 Mon Sep 17 00:00:00 2001 +From be44636b36086ca1b6de24265b7c3cc0c2bae913 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:45:13 +0100 Subject: [PATCH] Do not harcode invalid path to ncursesw headers @@ -14,10 +14,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 1 deletion(-) diff --git a/setup.py b/setup.py -index 86758ce..565c304 100644 +index 15b39f5..9e08e7e 100644 --- a/setup.py +++ b/setup.py -@@ -1276,7 +1276,6 @@ class PyBuildExt(build_ext): +@@ -1296,7 +1296,6 @@ class PyBuildExt(build_ext): panel_library = 'panel' if curses_library == 'ncursesw': curses_defines.append(('HAVE_NCURSESW', '1')) diff --git a/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch index e358e44462..22af71d1db 100644 --- a/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch +++ b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch @@ -1,4 +1,4 @@ -From 807357dc50a5a97016ce22646b5eb6a5b64a1a5d Mon Sep 17 00:00:00 2001 +From 46fda6fc83500bf5663397f9d28b618e6b6b20c1 Mon Sep 17 00:00:00 2001 From: Samuel Cabrero Date: Wed, 23 Dec 2015 11:45:48 +0100 Subject: [PATCH] Override system locale and set to default when adding gcc @@ -20,10 +20,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index 565c304..8966779 100644 +index 9e08e7e..3feca04 100644 --- a/setup.py +++ b/setup.py -@@ -423,7 +423,7 @@ class PyBuildExt(build_ext): +@@ -441,7 +441,7 @@ class PyBuildExt(build_ext): tmpfile = os.path.join(self.build_temp, 'gccpaths') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) diff --git a/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch b/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch index 02f1d164f7..54a0b87ada 100644 --- a/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch +++ b/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch @@ -1,4 +1,4 @@ -From 1153f503a38daf6388021575f1ad6ce8b702911b Mon Sep 17 00:00:00 2001 +From d2b5be9a0627e38d2280ef865dab3e74b7d2bde4 Mon Sep 17 00:00:00 2001 From: Christophe Vu-Brugier Date: Wed, 23 Dec 2015 11:46:14 +0100 Subject: [PATCH] Add importlib fix for PEP 3147 issue @@ -19,44 +19,51 @@ This effectively disables PEP 3147 for: Signed-off-by: Christophe Vu-Brugier --- - Lib/importlib/_bootstrap.py | 26 +++++--------------------- - 1 file changed, 5 insertions(+), 21 deletions(-) + Lib/importlib/_bootstrap_external.py | 37 +++++------------------------------- + 1 file changed, 5 insertions(+), 32 deletions(-) -diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py -index 5b91c05..a1755ec 100644 ---- a/Lib/importlib/_bootstrap.py -+++ b/Lib/importlib/_bootstrap.py -@@ -444,8 +444,6 @@ def cache_from_source(path, debug_override=None): - If debug_override is not None, then it must be a boolean and is used in - place of sys.flags.optimize. +diff --git a/Lib/importlib/_bootstrap_external.py b/Lib/importlib/_bootstrap_external.py +index 616b17f..e30129c 100644 +--- a/Lib/importlib/_bootstrap_external.py ++++ b/Lib/importlib/_bootstrap_external.py +@@ -255,8 +255,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None): + a True value is the same as setting 'optimization' to the empty string + while a False value is equivalent to setting 'optimization' to '1'. - If sys.implementation.cache_tag is None then NotImplementedError is raised. - """ - debug = not sys.flags.optimize if debug_override is None else debug_override - if debug: -@@ -454,33 +452,19 @@ def cache_from_source(path, debug_override=None): - suffixes = OPTIMIZED_BYTECODE_SUFFIXES + if debug_override is not None: + _warnings.warn('the debug_override parameter is deprecated; use ' +@@ -267,10 +265,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None): + optimization = '' if debug_override else 1 head, tail = _path_split(path) base, sep, rest = tail.rpartition('.') - tag = sys.implementation.cache_tag - if tag is None: - raise NotImplementedError('sys.implementation.cache_tag is None') -- filename = ''.join([(base if base else rest), sep, tag, suffixes[0]]) -- return _path_join(head, _PYCACHE, filename) -+ filename = ''.join([(base if base else rest), suffixes[0]]) -+ return _path_join(head, filename) +- almost_filename = ''.join([(base if base else rest), sep, tag]) ++ almost_filename = ''.join([(base if base else rest)]) + if optimization is None: + if sys.flags.optimize == 0: + optimization = '' +@@ -281,39 +276,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None): + if not optimization.isalnum(): + raise ValueError('{!r} is not alphanumeric'.format(optimization)) + almost_filename = '{}.{}{}'.format(almost_filename, _OPT, optimization) +- return _path_join(head, _PYCACHE, almost_filename + BYTECODE_SUFFIXES[0]) ++ return _path_join(head, almost_filename + BYTECODE_SUFFIXES[0]) def source_from_cache(path): - """Given the path to a .pyc./.pyo file, return the path to its .py file. + """Given the path to a .pyc. file, return the path to its .py file. - The .pyc/.pyo file does not need to exist; this simply returns the path to -- the .py file calculated to correspond to the .pyc/.pyo file. If path does -- not conform to PEP 3147 format, ValueError will be raised. If + The .pyc file does not need to exist; this simply returns the path to +- the .py file calculated to correspond to the .pyc file. If path does +- not conform to PEP 3147/488 format, ValueError will be raised. If - sys.implementation.cache_tag is None then NotImplementedError is raised. -+ the .py file calculated to correspond to the .pyc/.pyo file. - +- ++ the .py file calculated to correspond to the .pyc file. """ - if sys.implementation.cache_tag is None: - raise NotImplementedError('sys.implementation.cache_tag is None') @@ -65,9 +72,19 @@ index 5b91c05..a1755ec 100644 - if pycache != _PYCACHE: - raise ValueError('{} not bottom-level directory in ' - '{!r}'.format(_PYCACHE, path)) -- if pycache_filename.count('.') != 2: -- raise ValueError('expected only 2 dots in ' +- dot_count = pycache_filename.count('.') +- if dot_count not in {2, 3}: +- raise ValueError('expected only 2 or 3 dots in ' - '{!r}'.format(pycache_filename)) +- elif dot_count == 3: +- optimization = pycache_filename.rsplit('.', 2)[-2] +- if not optimization.startswith(_OPT): +- raise ValueError("optimization portion of filename does not start " +- "with {!r}".format(_OPT)) +- opt_level = optimization[len(_OPT):] +- if not opt_level.isalnum(): +- raise ValueError("optimization level {!r} is not an alphanumeric " +- "value".format(optimization)) - base_filename = pycache_filename.partition('.')[0] + head, filename = _path_split(path) + base_filename = filename.partition('.')[0] diff --git a/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch index 6e0f07c87e..ee0134a5d6 100644 --- a/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch +++ b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch @@ -1,4 +1,4 @@ -From 3cdd905ad1ff001713d20b768c001b5299a2e72c Mon Sep 17 00:00:00 2001 +From 1d2891204c6bf05d5e2eb0e5fa2ee78f6a2b755b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:47:00 +0100 Subject: [PATCH] Add an option to disable installation of test modules @@ -14,12 +14,12 @@ Signed-off-by: Samuel Martin 2 files changed, 42 insertions(+), 20 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index e0f9e0f..12fae84 100644 +index 9420860..d4c771a 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1133,8 +1133,30 @@ PLATDIR= plat-$(MACHDEP) - EXTRAPLATDIR= @EXTRAPLATDIR@ - MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR) +@@ -1166,8 +1166,30 @@ maninstall: altmaninstall + PLATDIR= @PLATDIR@ + MACHDEPS= $(PLATDIR) XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax -LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ - tkinter/test/test_ttk site-packages test \ @@ -50,7 +50,7 @@ index e0f9e0f..12fae84 100644 test/audiodata \ test/capath test/data \ test/cjkencodings test/decimaltestdata test/xmltestdata \ -@@ -1161,28 +1183,22 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ +@@ -1199,28 +1221,22 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ test/test_importlib/namespace_pkgs/project3/parent/child \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ @@ -92,10 +92,10 @@ index e0f9e0f..12fae84 100644 @for i in $(SCRIPTDIR) $(LIBDEST); \ do \ diff --git a/configure.ac b/configure.ac -index a3026b8..b7a8836 100644 +index bfb599e..9f3d226 100644 --- a/configure.ac +++ b/configure.ac -@@ -2659,6 +2659,12 @@ if test "$posix_threads" = "yes"; then +@@ -2895,6 +2895,12 @@ if test "$posix_threads" = "yes"; then fi diff --git a/package/python3/0018-Add-an-option-to-disable-pydoc.patch b/package/python3/0018-Add-an-option-to-disable-pydoc.patch index 22f194a555..670ad40c5e 100644 --- a/package/python3/0018-Add-an-option-to-disable-pydoc.patch +++ b/package/python3/0018-Add-an-option-to-disable-pydoc.patch @@ -1,4 +1,4 @@ -From 99ef88cb47a396e2c7005e59e50d34e0a60dd3cb Mon Sep 17 00:00:00 2001 +From a83b79b964700604de386800f86e5a55f53a0e17 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:47:11 +0100 Subject: [PATCH] Add an option to disable pydoc @@ -15,10 +15,10 @@ Signed-off-by: Samuel Martin 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 12fae84..5e2333e 100644 +index d4c771a..a98ad65 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1100,7 +1100,9 @@ bininstall: altbininstall +@@ -1134,7 +1134,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(BINDIR)/idle3 (cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3) -rm -f $(DESTDIR)$(BINDIR)/pydoc3 @@ -28,7 +28,7 @@ index 12fae84..5e2333e 100644 -rm -f $(DESTDIR)$(BINDIR)/2to3 (cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3) -rm -f $(DESTDIR)$(BINDIR)/pyvenv -@@ -1151,7 +1153,7 @@ LIBSUBDIRS= tkinter \ +@@ -1184,7 +1186,7 @@ LIBSUBDIRS= tkinter \ multiprocessing multiprocessing/dummy \ unittest \ venv venv/scripts venv/scripts/posix \ @@ -37,7 +37,7 @@ index 12fae84..5e2333e 100644 TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test test/test_asyncio \ -@@ -1195,6 +1197,10 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ +@@ -1233,6 +1235,10 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/import_ test/test_importlib/source \ unittest/test unittest/test/testmock @@ -49,10 +49,10 @@ index 12fae84..5e2333e 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index b7a8836..2e75345 100644 +index 9f3d226..e9b6d6f 100644 --- a/configure.ac +++ b/configure.ac -@@ -2658,6 +2658,11 @@ if test "$posix_threads" = "yes"; then +@@ -2894,6 +2894,11 @@ if test "$posix_threads" = "yes"; then AC_CHECK_FUNCS(pthread_atfork) fi @@ -65,10 +65,10 @@ index b7a8836..2e75345 100644 AC_SUBST(TEST_MODULES) diff --git a/setup.py b/setup.py -index 8966779..69198db 100644 +index 3feca04..137911d 100644 --- a/setup.py +++ b/setup.py -@@ -2200,6 +2200,12 @@ def main(): +@@ -2220,6 +2220,12 @@ def main(): # turn off warnings when deprecated modules are imported import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) @@ -81,7 +81,7 @@ index 8966779..69198db 100644 setup(# PyPI Metadata (PEP 301) name = "Python", version = sys.version.split()[0], -@@ -2224,8 +2230,7 @@ def main(): +@@ -2244,8 +2250,7 @@ def main(): # If you change the scripts installed here, you also need to # check the PyBuildScripts command above, and change the links # created by the bininstall target in Makefile.pre.in diff --git a/package/python3/0019-Add-an-option-to-disable-lib2to3.patch b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch index 8a22c0f26e..f0d4770135 100644 --- a/package/python3/0019-Add-an-option-to-disable-lib2to3.patch +++ b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch @@ -1,4 +1,4 @@ -From 4d6bc8497ab740ae23a7091ff91dba06a63ba877 Mon Sep 17 00:00:00 2001 +From 3c877ea9f09913586f87064b7a2b9d2b49cb05aa Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:48:44 +0100 Subject: [PATCH] Add an option to disable lib2to3 @@ -15,10 +15,10 @@ Signed-off-by: Samuel Martin 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 5e2333e..6656f48 100644 +index a98ad65..3823940 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1104,7 +1104,9 @@ ifeq (@PYDOC@,yes) +@@ -1138,7 +1138,9 @@ ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) endif -rm -f $(DESTDIR)$(BINDIR)/2to3 @@ -28,7 +28,7 @@ index 5e2333e..6656f48 100644 -rm -f $(DESTDIR)$(BINDIR)/pyvenv (cd $(DESTDIR)$(BINDIR); $(LN) -s pyvenv-$(VERSION) pyvenv) if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \ -@@ -1144,7 +1146,6 @@ LIBSUBDIRS= tkinter \ +@@ -1177,7 +1179,6 @@ LIBSUBDIRS= tkinter \ html json http dbm xmlrpc \ sqlite3 \ logging csv wsgiref urllib \ @@ -36,7 +36,7 @@ index 5e2333e..6656f48 100644 ctypes ctypes/macholib \ idlelib idlelib/Icons \ distutils distutils/command $(XMLLIBSUBDIRS) \ -@@ -1186,9 +1187,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ +@@ -1224,9 +1225,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ sqlite3/test \ @@ -46,7 +46,7 @@ index 5e2333e..6656f48 100644 ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1201,6 +1199,14 @@ ifeq (@PYDOC@,yes) +@@ -1239,6 +1237,14 @@ ifeq (@PYDOC@,yes) LIBSUBDIRS += pydoc_data endif @@ -61,7 +61,7 @@ index 5e2333e..6656f48 100644 ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -@@ -1296,10 +1302,12 @@ ifeq (@PYO_BUILD@,yes) +@@ -1337,10 +1343,12 @@ ifeq (@PYC_BUILD@,yes) -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages endif @@ -75,10 +75,10 @@ index 5e2333e..6656f48 100644 # Create the PLATDIR source directory, if one wasn't distributed.. $(srcdir)/Lib/$(PLATDIR): diff --git a/configure.ac b/configure.ac -index 2e75345..0ed6b17 100644 +index e9b6d6f..652ad88 100644 --- a/configure.ac +++ b/configure.ac -@@ -2670,6 +2670,12 @@ AC_ARG_ENABLE(test-modules, +@@ -2906,6 +2906,12 @@ AC_ARG_ENABLE(test-modules, AS_HELP_STRING([--disable-test-modules], [disable test modules]), [ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ]) @@ -92,10 +92,10 @@ index 2e75345..0ed6b17 100644 AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) AC_MSG_CHECKING([if --enable-ipv6 is specified]) diff --git a/setup.py b/setup.py -index 69198db..a2bf05a 100644 +index 137911d..722308b 100644 --- a/setup.py +++ b/setup.py -@@ -2201,10 +2201,11 @@ def main(): +@@ -2221,10 +2221,11 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) diff --git a/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch index 26a7b34c3b..20936841c4 100644 --- a/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch +++ b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch @@ -1,4 +1,4 @@ -From f218ef22019d4c03427113982edc42beddd05683 Mon Sep 17 00:00:00 2001 +From 9ae1dce0a2fa01fc3dbc83d8b8c1b56e4b1b162b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:49:01 +0100 Subject: [PATCH] Add option to disable the sqlite3 module @@ -11,10 +11,10 @@ Signed-off-by: Samuel Martin 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 6656f48..433cac1 100644 +index 3823940..c822dbd 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1144,7 +1144,6 @@ LIBSUBDIRS= tkinter \ +@@ -1177,7 +1177,6 @@ LIBSUBDIRS= tkinter \ email email/mime \ ensurepip ensurepip/_bundled \ html json http dbm xmlrpc \ @@ -22,7 +22,7 @@ index 6656f48..433cac1 100644 logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ -@@ -1186,7 +1185,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ +@@ -1224,7 +1223,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/namespace_pkgs/project3/parent/child \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ @@ -30,7 +30,7 @@ index 6656f48..433cac1 100644 ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1207,6 +1205,11 @@ TESTSUBDIRS += lib2to3/tests \ +@@ -1245,6 +1243,11 @@ TESTSUBDIRS += lib2to3/tests \ lib2to3/tests/data/fixers/myfixes endif @@ -43,10 +43,10 @@ index 6656f48..433cac1 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index 0ed6b17..aaffbd6 100644 +index 652ad88..cae12ad 100644 --- a/configure.ac +++ b/configure.ac -@@ -2658,6 +2658,15 @@ if test "$posix_threads" = "yes"; then +@@ -2894,6 +2894,15 @@ if test "$posix_threads" = "yes"; then AC_CHECK_FUNCS(pthread_atfork) fi diff --git a/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch index fc3c9b431c..7dfb339ea4 100644 --- a/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch +++ b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch @@ -1,4 +1,4 @@ -From 006bf215734ad63007de044fe7803f66f83a4d19 Mon Sep 17 00:00:00 2001 +From d0d42570e5a23c3bf559e0413ec97729fd2f9e24 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:49:14 +0100 Subject: [PATCH] Add an option to disable the tk module @@ -11,19 +11,19 @@ Signed-off-by: Samuel Martin 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 433cac1..e492d7b 100644 +index c822dbd..0a93c27 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1137,7 +1137,7 @@ PLATDIR= plat-$(MACHDEP) - EXTRAPLATDIR= @EXTRAPLATDIR@ - MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR) +@@ -1170,7 +1170,7 @@ maninstall: altmaninstall + PLATDIR= @PLATDIR@ + MACHDEPS= $(PLATDIR) XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax -LIBSUBDIRS= tkinter \ +LIBSUBDIRS= \ site-packages \ asyncio \ collections concurrent concurrent/futures encodings \ -@@ -1155,8 +1155,7 @@ LIBSUBDIRS= tkinter \ +@@ -1188,8 +1188,7 @@ LIBSUBDIRS= tkinter \ venv venv/scripts venv/scripts/posix \ curses $(MACHDEPS) @@ -33,7 +33,7 @@ index 433cac1..e492d7b 100644 test/test_email test/test_email/data \ test/test_json \ test/audiodata \ -@@ -1210,6 +1209,12 @@ LIBSUBDIRS += sqlite3 +@@ -1248,6 +1247,12 @@ LIBSUBDIRS += sqlite3 TESTSUBDIRS += sqlite3/test endif @@ -47,10 +47,10 @@ index 433cac1..e492d7b 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index aaffbd6..7efd54f 100644 +index cae12ad..787b185 100644 --- a/configure.ac +++ b/configure.ac -@@ -2667,6 +2667,15 @@ if test "$SQLITE3" = "no" ; then +@@ -2903,6 +2903,15 @@ if test "$SQLITE3" = "no" ; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" fi diff --git a/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch index de78bb0608..22f7a24945 100644 --- a/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch +++ b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch @@ -1,4 +1,4 @@ -From 42725aef353df06f760f0a47b80001187d04d8b4 Mon Sep 17 00:00:00 2001 +From d04ec780bf7c0825ab260bd1d6b7292141b2dcde Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:49:30 +0100 Subject: [PATCH] Add an option to disable the curses module @@ -11,10 +11,10 @@ Signed-off-by: Samuel Martin 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index e492d7b..66b2c45 100644 +index 0a93c27..b97c21e 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1153,7 +1153,7 @@ LIBSUBDIRS= \ +@@ -1186,7 +1186,7 @@ LIBSUBDIRS= \ multiprocessing multiprocessing/dummy \ unittest \ venv venv/scripts venv/scripts/posix \ @@ -23,7 +23,7 @@ index e492d7b..66b2c45 100644 TESTSUBDIRS = test test/test_asyncio \ test/test_email test/test_email/data \ -@@ -1215,6 +1215,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \ +@@ -1253,6 +1253,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \ tkinter/test/test_ttk endif @@ -35,10 +35,10 @@ index e492d7b..66b2c45 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index 7efd54f..e48f38e 100644 +index 787b185..0be47b2 100644 --- a/configure.ac +++ b/configure.ac -@@ -2676,6 +2676,15 @@ if test "$TK" = "no"; then +@@ -2912,6 +2912,15 @@ if test "$TK" = "no"; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter" fi diff --git a/package/python3/0023-Add-an-option-to-disable-expat.patch b/package/python3/0023-Add-an-option-to-disable-expat.patch index 9cb0799c5d..73f9b36bd0 100644 --- a/package/python3/0023-Add-an-option-to-disable-expat.patch +++ b/package/python3/0023-Add-an-option-to-disable-expat.patch @@ -1,4 +1,4 @@ -From f98b83bca09882d27bb04d7dbcd50f9979ad0569 Mon Sep 17 00:00:00 2001 +From 6281850ee8c3fb6d93b4997833af0cca4a48947b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:49:42 +0100 Subject: [PATCH] Add an option to disable expat @@ -18,10 +18,10 @@ Signed-off-by: Samuel Martin 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 66b2c45..884d5aa 100644 +index b97c21e..bdfee19 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1147,7 +1147,7 @@ LIBSUBDIRS= \ +@@ -1180,7 +1180,7 @@ LIBSUBDIRS= \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ @@ -30,7 +30,7 @@ index 66b2c45..884d5aa 100644 importlib \ turtledemo \ multiprocessing multiprocessing/dummy \ -@@ -1219,6 +1219,10 @@ ifeq (@CURSES@,yes) +@@ -1257,6 +1257,10 @@ ifeq (@CURSES@,yes) LIBSUBDIRS += curses endif @@ -42,10 +42,10 @@ index 66b2c45..884d5aa 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index e48f38e..4bbd597 100644 +index 0be47b2..e6bcacc 100644 --- a/configure.ac +++ b/configure.ac -@@ -2355,13 +2355,21 @@ PKG_PROG_PKG_CONFIG +@@ -2591,13 +2591,21 @@ PKG_PROG_PKG_CONFIG AC_SUBST(DISABLED_EXTENSIONS) # Check for use of the system expat library @@ -73,10 +73,10 @@ index e48f38e..4bbd597 100644 # Check for use of the system libffi library AC_MSG_CHECKING(for --with-system-ffi) diff --git a/setup.py b/setup.py -index a2bf05a..fd3ac65 100644 +index 722308b..ecddb6a 100644 --- a/setup.py +++ b/setup.py -@@ -1414,7 +1414,7 @@ class PyBuildExt(build_ext): +@@ -1434,7 +1434,7 @@ class PyBuildExt(build_ext): # # More information on Expat can be found at www.libexpat.org. # diff --git a/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch index b4d77849e3..d3af94fb29 100644 --- a/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch +++ b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch @@ -1,4 +1,4 @@ -From cf731841e1209c6faa99e2db4cf4c890e7c28080 Mon Sep 17 00:00:00 2001 +From 18265d05ee97ad0c43995acdadce2458b57d7d64 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:49:55 +0100 Subject: [PATCH] Add an option to disable CJK codecs @@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 6 insertions(+) diff --git a/configure.ac b/configure.ac -index 4bbd597..05817f0 100644 +index e6bcacc..38b7515 100644 --- a/configure.ac +++ b/configure.ac -@@ -2675,6 +2675,12 @@ if test "$SQLITE3" = "no" ; then +@@ -2911,6 +2911,12 @@ if test "$SQLITE3" = "no" ; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" fi diff --git a/package/python3/0025-Add-an-option-to-disable-NIS.patch b/package/python3/0025-Add-an-option-to-disable-NIS.patch index cd6b19d79a..ef9ff42715 100644 --- a/package/python3/0025-Add-an-option-to-disable-NIS.patch +++ b/package/python3/0025-Add-an-option-to-disable-NIS.patch @@ -1,4 +1,4 @@ -From f99823ef41d6f5c8e67b198b04b289d9b6ef8570 Mon Sep 17 00:00:00 2001 +From 733ee65f308ec48be427463c06f372ca116ccada Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:50:11 +0100 Subject: [PATCH] Add an option to disable NIS @@ -12,10 +12,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 6 insertions(+) diff --git a/configure.ac b/configure.ac -index 05817f0..4fb35a8 100644 +index 38b7515..f25733a 100644 --- a/configure.ac +++ b/configure.ac -@@ -2681,6 +2681,12 @@ AC_ARG_ENABLE(codecs-cjk, +@@ -2917,6 +2917,12 @@ AC_ARG_ENABLE(codecs-cjk, DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022" fi]) diff --git a/package/python3/0026-Add-an-option-to-disable-unicodedata.patch b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch index a5880f2603..56a5178952 100644 --- a/package/python3/0026-Add-an-option-to-disable-unicodedata.patch +++ b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch @@ -1,4 +1,4 @@ -From 4a32e709d128886dab10e59fad60fde005933aff Mon Sep 17 00:00:00 2001 +From 64fa1fc3a9aea7ffba7b96d08a14df91051f2b6f Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:50:27 +0100 Subject: [PATCH] Add an option to disable unicodedata @@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 6 insertions(+) diff --git a/configure.ac b/configure.ac -index 4fb35a8..58f2dd9 100644 +index f25733a..a7ddb2b 100644 --- a/configure.ac +++ b/configure.ac -@@ -2687,6 +2687,12 @@ AC_ARG_ENABLE(nis, +@@ -2923,6 +2923,12 @@ AC_ARG_ENABLE(nis, DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis" fi]) diff --git a/package/python3/0027-Add-an-option-to-disable-IDLE.patch b/package/python3/0027-Add-an-option-to-disable-IDLE.patch index c2b59e8258..73fc3959b3 100644 --- a/package/python3/0027-Add-an-option-to-disable-IDLE.patch +++ b/package/python3/0027-Add-an-option-to-disable-IDLE.patch @@ -1,4 +1,4 @@ -From 9336cf4eb4ded1eaa83da5549e4aba62b34ef888 Mon Sep 17 00:00:00 2001 +From 2766bcdd8f9b7395ce32a6d8480ef0a2186f2098 Mon Sep 17 00:00:00 2001 From: Maxime Ripard Date: Wed, 23 Dec 2015 11:50:42 +0100 Subject: [PATCH] Add an option to disable IDLE @@ -14,10 +14,10 @@ Signed-off-by: Maxime Ripard 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 884d5aa..48b4812 100644 +index bdfee19..2466615 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1098,7 +1098,9 @@ bininstall: altbininstall +@@ -1132,7 +1132,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(LIBPC)/python3.pc (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python3.pc) -rm -f $(DESTDIR)$(BINDIR)/idle3 @@ -27,7 +27,7 @@ index 884d5aa..48b4812 100644 -rm -f $(DESTDIR)$(BINDIR)/pydoc3 ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) -@@ -1146,7 +1148,6 @@ LIBSUBDIRS= \ +@@ -1179,7 +1181,6 @@ LIBSUBDIRS= \ html json http dbm xmlrpc \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ @@ -35,7 +35,7 @@ index 884d5aa..48b4812 100644 distutils distutils/command \ importlib \ turtledemo \ -@@ -1223,6 +1224,10 @@ ifeq (@EXPAT@,yes) +@@ -1261,6 +1262,10 @@ ifeq (@EXPAT@,yes) LIBSUBDIRS += $(XMLLIBSUBDIRS) endif @@ -47,10 +47,10 @@ index 884d5aa..48b4812 100644 LIBSUBDIRS += $(TESTSUBDIRS) endif diff --git a/configure.ac b/configure.ac -index 58f2dd9..0ba25e4 100644 +index a7ddb2b..6b59792 100644 --- a/configure.ac +++ b/configure.ac -@@ -2729,6 +2729,12 @@ AC_ARG_ENABLE(lib2to3, +@@ -2965,6 +2965,12 @@ AC_ARG_ENABLE(lib2to3, AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]), [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ]) @@ -64,10 +64,10 @@ index 58f2dd9..0ba25e4 100644 AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) AC_MSG_CHECKING([if --enable-ipv6 is specified]) diff --git a/setup.py b/setup.py -index fd3ac65..3655e57 100644 +index ecddb6a..7fe68e8 100644 --- a/setup.py +++ b/setup.py -@@ -2201,11 +2201,13 @@ def main(): +@@ -2221,11 +2221,13 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) diff --git a/package/python3/0028-Add-an-option-to-disable-decimal.patch b/package/python3/0028-Add-an-option-to-disable-decimal.patch index df85325998..1ac91dd611 100644 --- a/package/python3/0028-Add-an-option-to-disable-decimal.patch +++ b/package/python3/0028-Add-an-option-to-disable-decimal.patch @@ -1,4 +1,4 @@ -From 8fee92a85c170ac4ce24dda5a960f24b83d6f103 Mon Sep 17 00:00:00 2001 +From ff77defc777a57d4caee5183796fd44dd265e78b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:51:31 +0100 Subject: [PATCH] Add an option to disable decimal @@ -15,10 +15,10 @@ Signed-off-by: Thomas Petazzoni 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac -index 0ba25e4..536b9b2 100644 +index 6b59792..51e1760 100644 --- a/configure.ac +++ b/configure.ac -@@ -2388,13 +2388,20 @@ AC_SUBST(LIBFFI_INCLUDEDIR) +@@ -2624,13 +2624,20 @@ AC_SUBST(LIBFFI_INCLUDEDIR) AC_MSG_RESULT($with_system_ffi) # Check for use of the system libmpdec library @@ -45,10 +45,10 @@ index 0ba25e4..536b9b2 100644 # Check for support for loadable sqlite extensions AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions) diff --git a/setup.py b/setup.py -index 3655e57..7f7627d 100644 +index 7fe68e8..364b350 100644 --- a/setup.py +++ b/setup.py -@@ -1968,7 +1968,7 @@ class PyBuildExt(build_ext): +@@ -1988,7 +1988,7 @@ class PyBuildExt(build_ext): def _decimal_ext(self): extra_compile_args = [] undef_macros = [] diff --git a/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch index 56b6ae1a79..9ac9173dcf 100644 --- a/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch +++ b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch @@ -1,4 +1,4 @@ -From 53639100c2f7836ce9a51b5e5b9b4ea08ba1dc4e Mon Sep 17 00:00:00 2001 +From 789b0f99d7c1d25bfa9c05fd12f4d55bb70f377b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 23 Dec 2015 11:51:58 +0100 Subject: [PATCH] Add an option to disable the ossaudiodev module @@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni 1 file changed, 6 insertions(+) diff --git a/configure.ac b/configure.ac -index 536b9b2..c1ab3a1 100644 +index 51e1760..c4c2353 100644 --- a/configure.ac +++ b/configure.ac -@@ -2403,6 +2403,12 @@ else +@@ -2639,6 +2639,12 @@ else fi AC_SUBST(MPDEC) diff --git a/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch b/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch new file mode 100644 index 0000000000..156eb2958d --- /dev/null +++ b/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch @@ -0,0 +1,62 @@ +From 4f851142b8f3149d23654117621285df34ec768b Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 13:58:00 +0100 +Subject: [PATCH] Support PGEN_FOR_BUILD and FREEZE_IMPORTLIB_FOR_BUILD + +Signed-off-by: Thomas Petazzoni +--- + Makefile.pre.in | 10 ++++++++++ + configure.ac | 3 +++ + 2 files changed, 13 insertions(+) + +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 2466615..fdf622d 100644 +--- a/Makefile.pre.in ++++ b/Makefile.pre.in +@@ -712,10 +712,15 @@ Programs/_testembed: Programs/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) + ############################################################################ + # Importlib + ++ifeq (@FREEZE_IMPORTLIB_FOR_BUILD@,) + Programs/_freeze_importlib.o: Programs/_freeze_importlib.c Makefile + + Programs/_freeze_importlib: Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) + $(LINKCC) $(PY_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) ++else ++Programs/_freeze_importlib: @FREEZE_IMPORTLIB_FOR_BUILD@ ++ cp $^ $@ ++endif + + Python/importlib_external.h: $(srcdir)/Lib/importlib/_bootstrap_external.py Programs/_freeze_importlib + ./Programs/_freeze_importlib \ +@@ -789,8 +794,13 @@ $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGEN) + $(GRAMMAR_C): $(GRAMMAR_H) + touch $(GRAMMAR_C) + ++ifeq (@PGEN_FOR_BUILD@,) + $(PGEN): $(PGENOBJS) + $(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) ++else ++$(PGEN): @PGEN_FOR_BUILD@ ++ cp $^ $@ ++endif + + Parser/grammar.o: $(srcdir)/Parser/grammar.c \ + $(srcdir)/Include/token.h \ +diff --git a/configure.ac b/configure.ac +index c4c2353..750c232 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -79,6 +79,9 @@ else + fi + AC_SUBST(PYTHON_FOR_BUILD) + ++AC_SUBST(PGEN_FOR_BUILD) ++AC_SUBST(FREEZE_IMPORTLIB_FOR_BUILD) ++ + dnl Ensure that if prefix is specified, it does not end in a slash. If + dnl it does, we get path names containing '//' which is both ugly and + dnl can cause trouble. +-- +2.6.4 + diff --git a/package/python3/0031-Add-an-option-to-disable-openssl.patch b/package/python3/0031-Add-an-option-to-disable-openssl.patch new file mode 100644 index 0000000000..d4375203b4 --- /dev/null +++ b/package/python3/0031-Add-an-option-to-disable-openssl.patch @@ -0,0 +1,23 @@ +From: Nicolas Cavallari +Subject: [PATCH] Add an option to disable openssl support. + +Signed-off-by: Nicolas Cavallari +--- + configure.ac | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/configure.ac ++++ b/configure.ac +@@ -3027,6 +3027,12 @@ + DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata" + fi]) + ++AC_ARG_ENABLE(openssl, ++ AS_HELP_STRING([--disable-openssl], [disable openssl support]), ++ [ if test "$enableval" = "no"; then ++ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib" ++ fi]) ++ + AC_SUBST(TK) + AC_ARG_ENABLE(tk, + AS_HELP_STRING([--disable-tk], [disable tk]), diff --git a/package/python3/Config.in b/package/python3/Config.in index 0f4fc88a6e..35f57e65ce 100644 --- a/package/python3/Config.in +++ b/package/python3/Config.in @@ -40,8 +40,8 @@ menu "core python3 modules" comment "The following modules are unusual or require extra libraries" config BR2_PACKAGE_PYTHON3_BZIP2 - select BR2_PACKAGE_BZIP2 bool "bz2 module" + select BR2_PACKAGE_BZIP2 help bzip2 module for Python3 @@ -51,14 +51,14 @@ config BR2_PACKAGE_PYTHON3_CODECSCJK Chinese/Japanese/Korean codecs module for Python (large). config BR2_PACKAGE_PYTHON3_CURSES - select BR2_PACKAGE_NCURSES bool "curses module" + select BR2_PACKAGE_NCURSES help curses module for Python3. config BR2_PACKAGE_PYTHON3_DECIMAL - select BR2_PACKAGE_MPDECIMAL bool "decimal module" + select BR2_PACKAGE_MPDECIMAL help decimal module for Python3. @@ -68,15 +68,15 @@ config BR2_PACKAGE_PYTHON3_OSSAUDIODEV ossaudiodev module for Python3. config BR2_PACKAGE_PYTHON3_READLINE - select BR2_PACKAGE_READLINE bool "readline" + select BR2_PACKAGE_READLINE help readline module for Python3 (required for command-line editing in the Python shell). config BR2_PACKAGE_PYTHON3_SSL - select BR2_PACKAGE_OPENSSL bool "ssl" + select BR2_PACKAGE_OPENSSL help _ssl module for Python3 (required for https in urllib etc). @@ -93,11 +93,17 @@ config BR2_PACKAGE_PYTHON3_SQLITE SQLite database support config BR2_PACKAGE_PYTHON3_PYEXPAT - select BR2_PACKAGE_EXPAT bool "xml module" + select BR2_PACKAGE_EXPAT help pyexpat and xml libraries for Python3. +config BR2_PACKAGE_PYTHON3_XZ + bool "xz module" + select BR2_PACKAGE_XZ + help + xz (a.k.a lzma) module for Python3 + config BR2_PACKAGE_PYTHON3_ZLIB bool "zlib module" select BR2_PACKAGE_ZLIB diff --git a/package/python3/python3.hash b/package/python3/python3.hash index 60ac23055f..f6f70a206c 100644 --- a/package/python3/python3.hash +++ b/package/python3/python3.hash @@ -1,4 +1,4 @@ -# From https://www.python.org/downloads/release/python-343/ -md5 7d092d1bba6e17f0d9bd21b49e441dd5 Python-3.4.3.tar.xz +# From https://www.python.org/downloads/release/python-352/ +md5 8906efbacfcdc7c3c9198aeefafd159e Python-3.5.2.tar.xz # Locally computed -sha256 b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8 Python-3.4.3.tar.xz +sha256 0010f56100b9b74259ebcd5d4b295a32324b58b517403a10d1a2aa7cb22bca40 Python-3.5.2.tar.xz diff --git a/package/python3/python3.mk b/package/python3/python3.mk index a37b791a87..8bfae79f58 100644 --- a/package/python3/python3.mk +++ b/package/python3/python3.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON3_VERSION_MAJOR = 3.4 -PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).3 +PYTHON3_VERSION_MAJOR = 3.5 +PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).2 PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz PYTHON3_SITE = http://python.org/ftp/python/$(PYTHON3_VERSION) PYTHON3_LICENSE = Python software foundation license v2, others @@ -37,13 +37,16 @@ HOST_PYTHON3_CONF_OPTS += \ --disable-test-modules \ --disable-idle3 \ --disable-ossaudiodev \ - --disable-pyo-build + --disable-openssl # Make sure that LD_LIBRARY_PATH overrides -rpath. # This is needed because libpython may be installed at the same time that # python is called. +# Make python believe we don't have 'hg', so that it doesn't try to +# communicate over the network during the build. HOST_PYTHON3_CONF_ENV += \ - LDFLAGS="$(HOST_LDFLAGS) -Wl,--enable-new-dtags" + LDFLAGS="$(HOST_LDFLAGS) -Wl,--enable-new-dtags" \ + ac_cv_prog_HAS_HG=/bin/false PYTHON3_DEPENDENCIES = host-python3 libffi @@ -79,10 +82,6 @@ ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y) PYTHON3_CONF_OPTS += --enable-old-stdlib-cache endif -ifeq ($(BR2_PACKAGE_PYTHON3_PY_ONLY),y) -PYTHON3_CONF_OPTS += --disable-pyc-build -endif - ifeq ($(BR2_PACKAGE_PYTHON3_SQLITE),y) PYTHON3_DEPENDENCIES += sqlite else @@ -105,6 +104,10 @@ ifeq ($(BR2_PACKAGE_PYTHON3_BZIP2),y) PYTHON3_DEPENDENCIES += bzip2 endif +ifeq ($(BR2_PACKAGE_PYTHON3_XZ),y) +PYTHON3_DEPENDENCIES += xz +endif + ifeq ($(BR2_PACKAGE_PYTHON3_ZLIB),y) PYTHON3_DEPENDENCIES += zlib endif @@ -115,11 +118,21 @@ else PYTHON3_CONF_OPTS += --disable-ossaudiodev endif +# Make python believe we don't have 'hg', so that it doesn't try to +# communicate over the network during the build. PYTHON3_CONF_ENV += \ ac_cv_have_long_long_format=yes \ ac_cv_file__dev_ptmx=yes \ ac_cv_file__dev_ptc=yes \ - ac_cv_working_tzset=yes + ac_cv_working_tzset=yes \ + ac_cv_prog_HAS_HG=/bin/false + +# GCC is always compliant with IEEE754 +ifeq ($(BR2_ENDIAN),"LITTLE") +PYTHON3_CONF_ENV += ac_cv_little_endian_double=yes +else +PYTHON3_CONF_ENV += ac_cv_big_endian_double=yes +endif # uClibc is known to have a broken wcsftime() implementation, so tell # Python 3 to fall back to strftime() instead. @@ -137,27 +150,23 @@ PYTHON3_CONF_OPTS += \ --disable-tk \ --disable-nis \ --disable-idle3 \ - --disable-pyo-build + --disable-pyc-build -# This is needed to make sure the Python build process doesn't try to -# regenerate those files with the pgen program. Otherwise, it builds -# pgen for the target, and tries to run it on the host. - -define PYTHON3_TOUCH_GRAMMAR_FILES - touch $(@D)/Include/graminit.h $(@D)/Python/graminit.c +# Python builds two tools to generate code: 'pgen' and +# '_freeze_importlib'. Unfortunately, for the target Python, they are +# built for the target, while we need to run them at build time. So +# when installing host-python, we copy them to +# $(HOST_DIR)/usr/bin. And then, when building the target python +# package, we tell the configure script where they are located. +define HOST_PYTHON3_INSTALL_TOOLS + cp $(@D)/Parser/pgen $(HOST_DIR)/usr/bin/python-pgen + cp $(@D)/Programs/_freeze_importlib $(HOST_DIR)/usr/bin/python-freeze-importlib endef +HOST_PYTHON3_POST_INSTALL_HOOKS += HOST_PYTHON3_INSTALL_TOOLS -# This prevents the Python Makefile from regenerating the -# Python/importlib.h header if Lib/importlib/_bootstrap.py has changed -# because its generation is broken in a cross-compilation environment -# and importlib.h is not used. - -define PYTHON3_TOUCH_IMPORTLIB_H - touch $(@D)/Python/importlib.h -endef - -PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_GRAMMAR_FILES -PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_IMPORTLIB_H +PYTHON3_CONF_ENV += \ + PGEN_FOR_BUILD=$(HOST_DIR)/usr/bin/python-pgen \ + FREEZE_IMPORTLIB_FOR_BUILD=$(HOST_DIR)/usr/bin/python-freeze-importlib # # Remove useless files. In the config/ directory, only the Makefile @@ -218,16 +227,40 @@ PYTHON3_PATH = $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/sysconfigdat $(eval $(autotools-package)) $(eval $(host-autotools-package)) +define PYTHON3_CREATE_PYC_FILES + PYTHONPATH="$(PYTHON3_PATH)" \ + $(HOST_DIR)/usr/bin/python$(PYTHON3_VERSION_MAJOR) \ + support/scripts/pycompile.py \ + $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) +endef + +ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY)$(BR2_PACKAGE_PYTHON3_PY_PYC),y) +PYTHON3_TARGET_FINALIZE_HOOKS += PYTHON3_CREATE_PYC_FILES +endif + ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y) -define PYTHON3_FINALIZE_TARGET - find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' -print0 | xargs -0 rm -f +define PYTHON3_REMOVE_PY_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' -print0 | \ + xargs -0 --no-run-if-empty rm -f endef +PYTHON3_TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_PY_FILES endif +# Normally, *.pyc files should not have been compiled, but just in +# case, we make sure we remove all of them. ifeq ($(BR2_PACKAGE_PYTHON3_PY_ONLY),y) -define PYTHON3_FINALIZE_TARGET - find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.pyc' -print0 | xargs -0 rm -f +define PYTHON3_REMOVE_PYC_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.pyc' -print0 | \ + xargs -0 --no-run-if-empty rm -f endef +PYTHON3_TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_PYC_FILES endif -TARGET_FINALIZE_HOOKS += PYTHON3_FINALIZE_TARGET +# In all cases, we don't want to keep the optimized .opt-1.pyc and +# .opt-2.pyc files, since they can't work without their non-optimized +# variant. +define PYTHON3_REMOVE_OPTIMIZED_PYC_FILES + find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.opt-1.pyc' -print0 -o -name '*.opt-2.pyc' -print0 | \ + xargs -0 --no-run-if-empty rm -f +endef +PYTHON3_TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_OPTIMIZED_PYC_FILES diff --git a/package/qdecoder/qdecoder.hash b/package/qdecoder/qdecoder.hash new file mode 100644 index 0000000000..6b30310784 --- /dev/null +++ b/package/qdecoder/qdecoder.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 641d3df4895626d7a530c5d26724e9b5887e9845d4b47f42c1cbce4a17ebf6af qdecoder-r12.0.5.tar.gz diff --git a/package/qemu/Config.in b/package/qemu/Config.in index ea6b94605c..f4a75fc269 100644 --- a/package/qemu/Config.in +++ b/package/qemu/Config.in @@ -2,7 +2,8 @@ config BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET bool # Only tested on these architectures default y if BR2_aarch64 || BR2_i386 || BR2_mips || BR2_mipsel \ - || BR2_x86_64 || BR2_arm + || BR2_x86_64 || BR2_arm \ + || BR2_powerpc64 || BR2_powerpc64le comment "QEMU requires a toolchain with wchar, threads" depends on BR2_PACKAGE_QEMU_ARCH_SUPPORTS_TARGET @@ -69,11 +70,16 @@ comment "systems emulation needs a toolchain w/ dynamic library" config BR2_PACKAGE_QEMU_LINUX_USER bool "Enable all Linux user-land emulation" + # Incompatible "struct sigevent" definition on musl + depends on !BR2_TOOLCHAIN_USES_MUSL help Say 'y' to build all Linux user-land emulators that QEMU supports. # Note: bsd-user can not be build on Linux +comment "Linux user-land emulation needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL + endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == "" config BR2_PACKAGE_QEMU_HAS_EMULS @@ -106,4 +112,9 @@ comment "FDT support needs a toolchain w/ dynamic library" endif # BR2_PACKAGE_QEMU_HAS_EMULS +config BR2_PACKAGE_QEMU_TOOLS + bool "Enable tools" + help + Say 'y' here to include tools packaged with QEMU (e.g. qemu-img). + endif # BR2_PACKAGE_QEMU diff --git a/package/qemu/Config.in.host b/package/qemu/Config.in.host index c5c3f05e9f..b3eb5906cc 100644 --- a/package/qemu/Config.in.host +++ b/package/qemu/Config.in.host @@ -1,8 +1,7 @@ config BR2_PACKAGE_HOST_QEMU bool "host qemu" - # So far, we only build the user mode emulation, so this list - # of architecture dependencies only takes into account this - # emulation mode. + select BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE \ + if !BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE depends on BR2_arm || BR2_armeb || BR2_aarch64 || \ BR2_i386 || BR2_m68k || BR2_microblazeel || \ BR2_microblazebe || BR2_mips || BR2_mipsel || \ @@ -12,6 +11,31 @@ config BR2_PACKAGE_HOST_QEMU help QEMU is a generic and open source machine emulator and virtualizer. - This option builds a user emulator for your selected architecture. + This option builds an emulator for your selected architecture. http://www.qemu.org + +if BR2_PACKAGE_HOST_QEMU + +comment "Emulators selection" + +config BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE + bool "Enable system emulation" + help + Enables the build of the system emulator, which allows to + boot an entire system in Qemu. + +config BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE + bool "Enable Linux user-land emulation" + help + Enables the build of the user-land emulator, which allows to + run user-space applications. + +config BR2_PACKAGE_HOST_QEMU_VDE2 + bool "VDE2 support" + help + Enables VDE2 support. VDE2 stands for Virtual Distributed + Ethernet and can be used to create virtual switches to + "plug" both physical and virtual machines in them. + +endif diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash index d35960a4eb..572a5c911a 100644 --- a/package/qemu/qemu.hash +++ b/package/qemu/qemu.hash @@ -1,2 +1,2 @@ # Locally computed, tarball verified with GPG signature -sha256 28d9946e43765a44ccccca3cba5f4f9034f2759ec1f2ce16594ddb6776c8efe6 qemu-2.5.1.1.tar.bz2 +sha256 326e739506ba690daf69fc17bd3913a6c313d9928d743bd8eddb82f403f81e53 qemu-2.7.0.tar.bz2 diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index 5fa95bbd2e..66efcba345 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -4,7 +4,7 @@ # ################################################################################ -QEMU_VERSION = 2.5.1.1 +QEMU_VERSION = 2.7.0 QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.bz2 QEMU_SITE = http://wiki.qemu.org/download QEMU_LICENSE = GPLv2, LGPLv2.1, MIT, BSD-3c, BSD-2c, Others/BSD-1c @@ -34,6 +34,8 @@ HOST_QEMU_DEPENDENCIES = host-pkgconf host-python host-zlib host-libglib2 host-p # mips64 mips64 # mips64el mips64el # powerpc ppc +# powerpc64 ppc64 +# powerpc64le ppc64 (system) / ppc64le (usermode) # sh2a not supported # sh4 sh4 # sh4eb sh4eb @@ -55,15 +57,33 @@ endif ifeq ($(HOST_QEMU_ARCH),powerpc) HOST_QEMU_ARCH = ppc endif +ifeq ($(HOST_QEMU_ARCH),powerpc64) +HOST_QEMU_ARCH = ppc64 +endif +ifeq ($(HOST_QEMU_ARCH),powerpc64le) +HOST_QEMU_ARCH = ppc64le +HOST_QEMU_SYS_ARCH = ppc64 +endif ifeq ($(HOST_QEMU_ARCH),sh4a) HOST_QEMU_ARCH = sh4 endif ifeq ($(HOST_QEMU_ARCH),sh4aeb) HOST_QEMU_ARCH = sh4eb endif -HOST_QEMU_TARGETS = $(HOST_QEMU_ARCH)-linux-user +HOST_QEMU_SYS_ARCH ?= $(HOST_QEMU_ARCH) + +ifeq ($(BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE),y) +HOST_QEMU_TARGETS += $(HOST_QEMU_SYS_ARCH)-softmmu +HOST_QEMU_OPTS += --enable-system --enable-fdt +HOST_QEMU_DEPENDENCIES += host-dtc +else +HOST_QEMU_OPTS += --disable-system +endif + +ifeq ($(BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE),y) +HOST_QEMU_TARGETS += $(HOST_QEMU_ARCH)-linux-user +HOST_QEMU_OPTS += --enable-linux-user -ifeq ($(BR2_PACKAGE_HOST_QEMU),y) HOST_QEMU_HOST_SYSTEM_TYPE = $(shell uname -s) ifneq ($(HOST_QEMU_HOST_SYSTEM_TYPE),Linux) $(error "qemu-user can only be used on Linux hosts") @@ -84,23 +104,36 @@ HOST_QEMU_COMPARE_VERSION = $(shell test $(HOST_QEMU_HOST_SYSTEM_VERSION) -ge $( # built with kernel headers that are older or the same as the kernel # version running on the host machine. # + ifeq ($(BR_BUILDING),y) ifneq ($(HOST_QEMU_COMPARE_VERSION),OK) $(error "Refusing to build qemu-user: target Linux version newer than host's.") endif -endif +endif # BR_BUILDING + +else # BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE +HOST_QEMU_OPTS += --disable-linux-user +endif # BR2_PACKAGE_HOST_QEMU_LINUX_USER_MODE + +ifeq ($(BR2_PACKAGE_HOST_QEMU_VDE2),y) +HOST_QEMU_OPTS += --enable-vde +HOST_QEMU_DEPENDENCIES += host-vde2 endif +# Override CPP, as it expects to be able to call it like it'd +# call the compiler. define HOST_QEMU_CONFIGURE_CMDS - cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure \ - --target-list="$(HOST_QEMU_TARGETS)" \ - --prefix="$(HOST_DIR)/usr" \ - --interp-prefix=$(STAGING_DIR) \ - --cc="$(HOSTCC)" \ - --host-cc="$(HOSTCC)" \ - --python=$(HOST_DIR)/usr/bin/python2 \ - --extra-cflags="$(HOST_CFLAGS)" \ - --extra-ldflags="$(HOST_LDFLAGS)" + cd $(@D); $(HOST_CONFIGURE_OPTS) CPP="$(HOSTCC) -E" \ + ./configure \ + --target-list="$(HOST_QEMU_TARGETS)" \ + --prefix="$(HOST_DIR)/usr" \ + --interp-prefix=$(STAGING_DIR) \ + --cc="$(HOSTCC)" \ + --host-cc="$(HOSTCC)" \ + --python=$(HOST_DIR)/usr/bin/python2 \ + --extra-cflags="$(HOST_CFLAGS)" \ + --extra-ldflags="$(HOST_LDFLAGS)" \ + $(HOST_QEMU_OPTS) endef define HOST_QEMU_BUILD_CMDS @@ -173,11 +206,20 @@ else QEMU_OPTS += --disable-fdt endif +ifeq ($(BR2_PACKAGE_QEMU_TOOLS),y) +QEMU_OPTS += --enable-tools +else +QEMU_OPTS += --disable-tools +endif + +# Override CPP, as it expects to be able to call it like it'd +# call the compiler. define QEMU_CONFIGURE_CMDS ( cd $(@D); \ LIBS='$(QEMU_LIBS)' \ $(TARGET_CONFIGURE_OPTS) \ $(TARGET_CONFIGURE_ARGS) \ + CPP="$(TARGET_CC) -E" \ $(QEMU_VARS) \ ./configure \ --prefix=/usr \ @@ -208,7 +250,6 @@ define QEMU_CONFIGURE_CMDS --disable-strip \ --disable-seccomp \ --disable-sparse \ - --disable-tools \ $(QEMU_OPTS) \ ) endef diff --git a/package/qextserialport/0001-Create-a-main-include-file-QExtSerialPort.patch b/package/qextserialport/0001-Create-a-main-include-file-QExtSerialPort.patch new file mode 100644 index 0000000000..e1d99f0fcb --- /dev/null +++ b/package/qextserialport/0001-Create-a-main-include-file-QExtSerialPort.patch @@ -0,0 +1,40 @@ +From 62fbe9c3539945df6204501b7e3ae0d51db075a3 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 24 Nov 2016 22:30:40 +0100 +Subject: [PATCH] Create a main include file QExtSerialPort + +This main include file will be installed in + so that Qt applications can use this +library by including header files in a Qt-like style. + +Signed-off-by: Thomas Petazzoni +[Arnout: add it to qextserialport.pri so it is installed] +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + src/QExtSerialPort | 2 ++ + src/qextserialport.pri | 3 ++- + 2 files changed, 4 insertions(+), 1 deletion(-) + create mode 100644 src/QExtSerialPort + +diff --git a/src/QExtSerialPort b/src/QExtSerialPort +new file mode 100644 +index 0000000..a48aeea +--- /dev/null ++++ b/src/QExtSerialPort +@@ -0,0 +1,2 @@ ++#include "qextserialport.h" ++#include "qextserialenumerator.h" +diff --git a/src/qextserialport.pri b/src/qextserialport.pri +index 461d56f..f8a678d 100644 +--- a/src/qextserialport.pri ++++ b/src/qextserialport.pri +@@ -3,7 +3,8 @@ + + PUBLIC_HEADERS += $$PWD/qextserialport.h \ + $$PWD/qextserialenumerator.h \ +- $$PWD/qextserialport_global.h ++ $$PWD/qextserialport_global.h \ ++ $$PWD/QExtSerialPort + + HEADERS += $$PUBLIC_HEADERS \ + $$PWD/qextserialport_p.h \ diff --git a/package/qextserialport/0001-gui.patch b/package/qextserialport/0001-gui.patch deleted file mode 100644 index d3dedae824..0000000000 --- a/package/qextserialport/0001-gui.patch +++ /dev/null @@ -1,16 +0,0 @@ -Don't require Qt GUI module - -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- -diff -Nrup qextserialport-f83b4e7ca922e53.orig/qextserialport.pro qextserialport-f83b4e7ca922e53/qextserialport.pro ---- qextserialport-f83b4e7ca922e53.orig/qextserialport.pro 2012-10-17 09:13:53.000000000 +0200 -+++ qextserialport-f83b4e7ca922e53/qextserialport.pro 2012-11-13 22:48:29.249431510 +0100 -@@ -41,6 +41,8 @@ macx:qesp_mac_framework { - - win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all - -+!win32*:!wince*:QT -= gui -+ - #generate proper library name - greaterThan(QT_MAJOR_VERSION, 4) { - QESP_LIB_BASENAME = QtExtSerialPort diff --git a/package/qextserialport/0002-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch b/package/qextserialport/0002-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch new file mode 100644 index 0000000000..09e26a961c --- /dev/null +++ b/package/qextserialport/0002-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch @@ -0,0 +1,28 @@ +From 14d4d3e7b5c748118acffddd397fb67b37fd5054 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Thu, 24 Nov 2016 22:44:02 +0100 +Subject: [PATCH] Tell qmake to add a pkgconfig file to ease usage with + applications + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + qextserialport.pro | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/qextserialport.pro b/qextserialport.pro +index 8d2c03a..2fcb39c 100644 +--- a/qextserialport.pro ++++ b/qextserialport.pro +@@ -42,7 +42,8 @@ TEMPLATE=lib + include(src/qextserialport.pri) + + #create_prl is needed, otherwise, MinGW can't found libqextserialport1.a +-CONFIG += create_prl ++CONFIG += create_prl create_pc ++QMAKE_PKGCONFIG_DESTDIR = pkgconfig + + #mac framework is designed for shared library + macx:qesp_mac_framework:qesp_static: CONFIG -= qesp_static +-- +2.10.2 + diff --git a/package/qextserialport/0002-main-include.patch b/package/qextserialport/0002-main-include.patch deleted file mode 100644 index 858f3354d5..0000000000 --- a/package/qextserialport/0002-main-include.patch +++ /dev/null @@ -1,15 +0,0 @@ -Create a main include file QExtSerialPort - -This main include file will be installed in - so that Qt applications can use this -library by including header files in a Qt-like style. - -Signed-off-by: Thomas Petazzoni - -Index: qextserialport-ef4af2a2ee3f/src/QExtSerialPort -=================================================================== ---- /dev/null -+++ qextserialport-ef4af2a2ee3f/src/QExtSerialPort -@@ -0,0 +1,2 @@ -+#include "qextserialport.h" -+#include "qextserialenumerator.h" diff --git a/package/qextserialport/0003-pkgconfig.patch b/package/qextserialport/0003-pkgconfig.patch deleted file mode 100644 index d67f3fcbb3..0000000000 --- a/package/qextserialport/0003-pkgconfig.patch +++ /dev/null @@ -1,19 +0,0 @@ -Add a pkgconfig file to ease usage with applications - -Signed-off-by: Thomas Petazzoni - -Index: qextserialport-ef4af2a2ee3f/qextserialport.pc -=================================================================== ---- /dev/null -+++ qextserialport-ef4af2a2ee3f/qextserialport.pc -@@ -0,0 +1,10 @@ -+prefix=/usr -+exec_prefix=${prefix} -+libdir=${prefix}/lib -+includedir=${prefix}/include/QExtSerialPort -+ -+Name: QtExtSerialPort -+Description: QtExtSerialPort library -+Version: 1.2.0 -+Libs: -L${libdir} -lqextserialport -+Cflags: -I${includedir} diff --git a/package/qextserialport/qextserialport.hash b/package/qextserialport/qextserialport.hash new file mode 100644 index 0000000000..60c0ff3224 --- /dev/null +++ b/package/qextserialport/qextserialport.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 23e3b10a8d8a1e2fb071047144222c43d150748ce6670e5d047ba5b0502ad0b2 qextserialport-ada321a9ee463f628e7b781b8ed00ff219152158.tar.gz diff --git a/package/qextserialport/qextserialport.mk b/package/qextserialport/qextserialport.mk index 39e04075b7..e3e325ce6c 100644 --- a/package/qextserialport/qextserialport.mk +++ b/package/qextserialport/qextserialport.mk @@ -10,32 +10,36 @@ QEXTSERIALPORT_LICENSE = MIT QEXTSERIALPORT_LICENSE_FILES = LICENSE.md QEXTSERIALPORT_INSTALL_STAGING = YES +ifeq ($(BR2_STATIC_LIBS),y) +QEXTSERIALPORT_CONF_OPTS += CONFIG+=qesp_static +endif + ifeq ($(BR2_PACKAGE_QT),y) QEXTSERIALPORT_DEPENDENCIES += qt -define QEXTSERIALPORT_CONFIGURE_CMDS - (cd $(@D); $(TARGET_MAKE_ENV) $(QT_QMAKE)) -endef +QEXTSERIALPORT_QMAKE = $(QT_QMAKE) else ifeq ($(BR2_PACKAGE_QT5),y) QEXTSERIALPORT_DEPENDENCIES += qt5base -define QEXTSERIALPORT_CONFIGURE_CMDS - (cd $(@D); $(TARGET_MAKE_ENV) $(QT5_QMAKE)) -endef +QEXTSERIALPORT_QMAKE = $(QT5_QMAKE) endif +define QEXTSERIALPORT_CONFIGURE_CMDS + cd $(@D); $(TARGET_MAKE_ENV) $(QEXTSERIALPORT_QMAKE) $(QEXTSERIALPORT_CONF_OPTS) +endef + define QEXTSERIALPORT_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define QEXTSERIALPORT_INSTALL_STAGING_CMDS - mkdir -p $(STAGING_DIR)/usr/include/QExtSerialPort - cp $(@D)/src/*.h $(STAGING_DIR)/usr/include/QExtSerialPort/ - cp $(@D)/src/QExtSerialPort $(STAGING_DIR)/usr/include/QExtSerialPort/ - cp -a $(@D)/*.so* $(STAGING_DIR)/usr/lib/ - cp $(@D)/qextserialport.pc $(STAGING_DIR)/usr/lib/pkgconfig/ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install endef +ifeq ($(BR2_STATIC_LIBS),y) +QEXTSERIALPORT_INSTALL_TARGET = NO +else define QEXTSERIALPORT_INSTALL_TARGET_CMDS cp -a $(@D)/*.so.* $(TARGET_DIR)/usr/lib endef +endif $(eval $(generic-package)) diff --git a/package/qjson/0001-fix-Qt4-package-error-in-CMakeLists.txt.patch b/package/qjson/0001-fix-Qt4-package-error-in-CMakeLists.txt.patch index 6f7a9ba237..a9e34e4c26 100644 --- a/package/qjson/0001-fix-Qt4-package-error-in-CMakeLists.txt.patch +++ b/package/qjson/0001-fix-Qt4-package-error-in-CMakeLists.txt.patch @@ -1,10 +1,7 @@ -From 45ec86156819c0872d023b05001682a8d2d2dc25 Mon Sep 17 00:00:00 2001 +From 254858bbf443bded2e80480e9f9032ce166b923e Mon Sep 17 00:00:00 2001 From: Zoltan Gyarmati -Date: Sat, 6 Apr 2013 16:54:25 +0200 -Subject: [PATCH] fix Qt4 package error in CMakeLists.txt - -Avoid checking for uic executable by cmake as it results configure -time error if QtGui isn't installed. +Date: Fri, 2 Dec 2016 23:00:58 +0100 +Subject: [PATCH] CMake, Qt4: check specifically for QtCore, fixes #96 Signed-off-by: Zoltan Gyarmati --- @@ -12,18 +9,18 @@ Signed-off-by: Zoltan Gyarmati 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index adb65e9..81854b1 100644 +index 31d9987..2fde79f 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -52,7 +52,7 @@ IF (Qt5Core_FOUND) +@@ -62,7 +62,7 @@ IF (Qt5Core_FOUND) ELSE() MESSAGE ("Qt5 not found, searching for Qt4") # Find Qt4 -- FIND_PACKAGE( Qt4 REQUIRED ) -+ FIND_PACKAGE( Qt4 COMPONENTS QtCore REQUIRED ) - - # Include the cmake file needed to use qt4 - INCLUDE( ${QT_USE_FILE} ) +- FIND_PACKAGE( Qt4 4.5 REQUIRED ) ++ FIND_PACKAGE( Qt4 4.5 REQUIRED QtCore) + # QStringBuilder is supported since Qt 4.8 for both QString and QByteArray + IF (NOT (${QT_VERSION_MINOR} STRLESS "8")) + MESSAGE ("Enable QStringBuilder") -- -2.1.1 +2.7.4 diff --git a/package/qjson/Config.in b/package/qjson/Config.in index 0f0cc0983e..5c423bf317 100644 --- a/package/qjson/Config.in +++ b/package/qjson/Config.in @@ -1,8 +1,13 @@ config BR2_PACKAGE_QJSON bool "qjson" + depends on !BR2_STATIC_LIBS depends on BR2_PACKAGE_QT || BR2_PACKAGE_QT5 help QJson is a Qt-based library that maps JSON data to QVariant objects and vice versa. http://qjson.sourceforge.net + +comment "qjson needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 diff --git a/package/qjson/qjson.hash b/package/qjson/qjson.hash new file mode 100644 index 0000000000..d794b48727 --- /dev/null +++ b/package/qjson/qjson.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e812617477f3c2bb990561767a4cd8b1d3803a52018d4878da302529552610d4 qjson-0.9.0.tar.gz diff --git a/package/qjson/qjson.mk b/package/qjson/qjson.mk index 6a1661733d..dab2381bee 100644 --- a/package/qjson/qjson.mk +++ b/package/qjson/qjson.mk @@ -4,7 +4,7 @@ # ################################################################################ -QJSON_VERSION = ba273682a9d33a7b3090e74f4742b5f3bf6c9b02 +QJSON_VERSION = 0.9.0 QJSON_SITE = $(call github,flavio,qjson,$(QJSON_VERSION)) QJSON_INSTALL_STAGING = YES QJSON_DEPENDENCIES = \ diff --git a/package/qlibc/0002-obey-destdir.patch b/package/qlibc/0002-obey-destdir.patch index 02b0bc490f..f007aa4f24 100644 --- a/package/qlibc/0002-obey-destdir.patch +++ b/package/qlibc/0002-obey-destdir.patch @@ -1,90 +1,144 @@ -Make sure the Makefile obeys $(DESTDIR) +From dbdc772a35244b45c725a72fad5ddade9bd7d521 Mon Sep 17 00:00:00 2001 +From: pcarpent +Date: Tue, 15 Dec 2015 10:23:44 +0100 +Subject: [PATCH] fix makefile -Signed-off-by: Thomas Petazzoni +add DESTDIR variables in install targets -Index: b/src/Makefile.in -=================================================================== +Signed-off-by: Bernd Kuhls +(downloaded from upstream commit not included in v2.4.1 + https://github.com/wolkykim/qlibc/commit/dbdc772a35244b45c725a72fad5ddade9bd7d521) +--- + src/Makefile.in | 110 ++++++++++++++++++++++++++++---------------------------- + 1 file changed, 55 insertions(+), 55 deletions(-) + +diff --git a/src/Makefile.in b/src/Makefile.in +index 8a7ab43..4e274ed 100644 --- a/src/Makefile.in +++ b/src/Makefile.in -@@ -120,48 +120,48 @@ +@@ -122,70 +122,70 @@ qlibcext: ${QLIBCEXT_OBJS} install: ${INSTALL_TARGETS} install-qlibc: qlibc - ${MKDIR_P} ${INST_INCDIR}/qlibc - ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${INST_INCDIR}/qlibc/qlibc.h +- ${MKDIR_P} ${INST_INCDIR}/qlibc/containers/ +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qtreetbl.h ${INST_INCDIR}/qlibc/containers/qtreetbl.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qhashtbl.h ${INST_INCDIR}/qlibc/containers/qhashtbl.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qhasharr.h ${INST_INCDIR}/qlibc/containers/qhasharr.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qlisttbl.h ${INST_INCDIR}/qlibc/containers/qlisttbl.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qlist.h ${INST_INCDIR}/qlibc/containers/qlist.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qvector.h ${INST_INCDIR}/qlibc/containers/qvector.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qqueue.h ${INST_INCDIR}/qlibc/containers/qqueue.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qstack.h ${INST_INCDIR}/qlibc/containers/qstack.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qgrow.h ${INST_INCDIR}/qlibc/containers/qgrow.h +- ${MKDIR_P} ${INST_INCDIR}/qlibc/utilities/ +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qcount.h ${INST_INCDIR}/qlibc/utilities/qcount.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qencode.h ${INST_INCDIR}/qlibc/utilities/qencode.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qfile.h ${INST_INCDIR}/qlibc/utilities/qfile.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qhash.h ${INST_INCDIR}/qlibc/utilities/qhash.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qio.h ${INST_INCDIR}/qlibc/utilities/qio.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qsocket.h ${INST_INCDIR}/qlibc/utilities/qsocket.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qstring.h ${INST_INCDIR}/qlibc/utilities/qstring.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qsystem.h ${INST_INCDIR}/qlibc/utilities/qsystem.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qtime.h ${INST_INCDIR}/qlibc/utilities/qtime.h +- ${MKDIR_P} ${INST_INCDIR}/qlibc/ipc/ +- ${INSTALL_DATA} ${QLIBC_INCDIR}/ipc/qsem.h ${INST_INCDIR}/qlibc/ipc/qsem.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/ipc/qshm.h ${INST_INCDIR}/qlibc/ipc/qshm.h - ${MKDIR_P} ${INST_LIBDIR} - ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${INST_LIBDIR}/${QLIBC_LIBNAME} - ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${INST_LIBDIR}/${QLIBC_SLIBREALNAME} - ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} ) -+ ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h -+ ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR} -+ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME} -+ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME} -+ ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} ) ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h $(DESTDIR)/${INST_INCDIR}/qlibc/qlibc.h ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc/containers/ ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qtreetbl.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qtreetbl.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qhashtbl.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qhashtbl.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qhasharr.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qhasharr.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qlisttbl.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qlisttbl.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qlist.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qlist.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qvector.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qvector.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qqueue.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qqueue.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qstack.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qstack.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/containers/qgrow.h $(DESTDIR)/${INST_INCDIR}/qlibc/containers/qgrow.h ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/ ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qcount.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qcount.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qencode.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qencode.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qfile.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qfile.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qhash.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qhash.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qio.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qio.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qsocket.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qsocket.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qstring.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qstring.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qsystem.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qsystem.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/utilities/qtime.h $(DESTDIR)/${INST_INCDIR}/qlibc/utilities/qtime.h ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc/ipc/ ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/ipc/qsem.h $(DESTDIR)/${INST_INCDIR}/qlibc/ipc/qsem.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/ipc/qshm.h $(DESTDIR)/${INST_INCDIR}/qlibc/ipc/qshm.h ++ ${MKDIR_P} $(DESTDIR)/${INST_LIBDIR} ++ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} $(DESTDIR)/${INST_LIBDIR}/${QLIBC_LIBNAME} ++ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} $(DESTDIR)/${INST_LIBDIR}/${QLIBC_SLIBREALNAME} ++ ( cd $(DESTDIR)/${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} ) uninstall-qlibc: - ${RM} -f ${INST_INCDIR}/qlibc/qlibc.h +- ${RM} -rf ${INST_INCDIR}/qlibc/containers +- ${RM} -rf ${INST_INCDIR}/qlibc/utilities +- ${RM} -rf ${INST_INCDIR}/qlibc/ipc - ${RM} -f ${INST_LIBDIR}/${QLIBC_LIBNAME} - ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBREALNAME} - ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBNAME} -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME} -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME} -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBNAME} ++ ${RM} -f $(DESTDIR)/${INST_INCDIR}/qlibc/qlibc.h ++ ${RM} -rf $(DESTDIR)/${INST_INCDIR}/qlibc/containers ++ ${RM} -rf $(DESTDIR)/${INST_INCDIR}/qlibc/utilities ++ ${RM} -rf $(DESTDIR)/${INST_INCDIR}/qlibc/ipc ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBC_LIBNAME} ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBC_SLIBREALNAME} ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBC_SLIBNAME} install-qlibcext: qlibcext - ${MKDIR_P} ${INST_INCDIR}/qlibc -- ${MKDIR_P} ${INST_INCDIR}/qlibc/qlibcext/ - ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${INST_INCDIR}/qlibc/qlibcext.h -- ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${INST_INCDIR}/qlibc/qlibcext/qconfig.h -- ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${INST_INCDIR}/qlibc/qlibcext/qaconf.h -- ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${INST_INCDIR}/qlibc/qlibcext/qlog.h -- ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h -- ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h +- ${MKDIR_P} ${INST_INCDIR}/qlibc/extensions/ +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qconfig.h ${INST_INCDIR}/qlibc/extensions/qconfig.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qaconf.h ${INST_INCDIR}/qlibc/extensions/qaconf.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qlog.h ${INST_INCDIR}/qlibc/extensions/qlog.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qhttpclient.h ${INST_INCDIR}/qlibc/extensions/qhttpclient.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qdatabase.h ${INST_INCDIR}/qlibc/extensions/qdatabase.h +- ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qtokenbucket.h ${INST_INCDIR}/qlibc/extensions/qtokenbucket.h - ${MKDIR_P} ${INST_LIBDIR} - ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${INST_LIBDIR}/${QLIBCEXT_LIBNAME} - ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} - ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} ) -+ ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc -+ ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/ -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h -+ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h -+ ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR} -+ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME} -+ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} -+ ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} ) ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h $(DESTDIR)/${INST_INCDIR}/qlibc/qlibcext.h ++ ${MKDIR_P} $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/ ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qconfig.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qconfig.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qaconf.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qaconf.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qlog.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qlog.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qhttpclient.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qhttpclient.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qdatabase.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qdatabase.h ++ ${INSTALL_DATA} ${QLIBC_INCDIR}/extensions/qtokenbucket.h $(DESTDIR)/${INST_INCDIR}/qlibc/extensions/qtokenbucket.h ++ ${MKDIR_P} $(DESTDIR)/${INST_LIBDIR} ++ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} $(DESTDIR)/${INST_LIBDIR}/${QLIBCEXT_LIBNAME} ++ ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} $(DESTDIR)/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ++ ( cd $(DESTDIR)/${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} ) uninstall-qlibcext: - ${RM} -f ${INST_INCDIR}/qlibc/qlibcext.h -- ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qconfig.h -- ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qaconf.h -- ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qlog.h -- ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h -- ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h +- ${RM} -rf ${INST_INCDIR}/qlibc/extensions - ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_LIBNAME} - ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} - ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBNAME} -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h -+ ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME} -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} -+ ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBNAME} ++ ${RM} -f $(DESTDIR)/${INST_INCDIR}/qlibc/qlibcext.h ++ ${RM} -rf $(DESTDIR)/${INST_INCDIR}/qlibc/extensions ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBCEXT_LIBNAME} ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ++ ${RM} -f $(DESTDIR)/${INST_LIBDIR}/${QLIBCEXT_SLIBNAME} deinstall: uninstall uninstall: uninstall-qlibc uninstall-qlibcext -- ${RMDIR} ${INST_INCDIR}/qlibc/qlibcext - ${RMDIR} ${INST_INCDIR}/qlibc -+ ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext -+ ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc ++ ${RMDIR} $(DESTDIR)/${INST_INCDIR}/qlibc clean: ${RM} -f ${QLIBC_OBJS} diff --git a/package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch b/package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch deleted file mode 100644 index 2ce37572c0..0000000000 --- a/package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch +++ /dev/null @@ -1,60 +0,0 @@ -From fe45b18f777b1414aee908f08f56a5730a00dbb5 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sat, 21 May 2016 09:59:56 +0200 -Subject: [PATCH 1/1] md5: fix musl build by removing usage of internal glibc - header sys/cdefs.h - -As suggested in musl FAQ: -http://wiki.musl-libc.org/wiki/FAQ#Q:_I.27m_trying_to_compile_something_against_musl_and_I_get_error_messages_about_sys.2Fcdefs.h - -Signed-off-by: Bernd Kuhls -(Patch for master branch sent upstream: - https://github.com/wolkykim/qlibc/pull/53, - this patch is a backport for v2.1.6) ---- - src/internal/md5/md5.h | 10 ++++++---- - src/internal/md5/md5c.c | 1 - - 2 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/src/internal/md5/md5.h b/src/internal/md5/md5.h -index cbfa7ca..8e726fe 100644 ---- a/src/internal/md5/md5.h -+++ b/src/internal/md5/md5.h -@@ -35,9 +35,9 @@ typedef struct MD5Context { - unsigned char buffer[64]; /* input buffer */ - } MD5_CTX; - --#include -- --__BEGIN_DECLS -+#ifdef __cplusplus -+extern "C" { -+#endif - void MD5Init (MD5_CTX *); - void MD5Update (MD5_CTX *, const unsigned char *, unsigned int); - void MD5Final (unsigned char[16], MD5_CTX *); -@@ -45,6 +45,8 @@ char * MD5End(MD5_CTX *, char *); - char * MD5File(const char *, char *); - char * MD5FileChunk(const char *, char *, off_t, off_t); - char * MD5Data(const unsigned char *, unsigned int, char *); --__END_DECLS -+#ifdef __cplusplus -+} -+#endif - - #endif /* Q_MD5_H */ -diff --git a/src/internal/md5/md5c.c b/src/internal/md5/md5c.c -index de9e47f..040bf5e 100644 ---- a/src/internal/md5/md5c.c -+++ b/src/internal/md5/md5c.c -@@ -26,7 +26,6 @@ - * edited for clarity and style only. - */ - --#include - #include - #include - #include "md5.h" --- -2.8.1 - diff --git a/package/qlibc/qlibc.hash b/package/qlibc/qlibc.hash new file mode 100644 index 0000000000..6b8e4d8940 --- /dev/null +++ b/package/qlibc/qlibc.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1f9aa5eefd28c45d409130a35104816d41405da64fe900f70a1c41150891501a qlibc-v2.4.1.tar.gz diff --git a/package/qlibc/qlibc.mk b/package/qlibc/qlibc.mk index 6a747e4e62..a146fa387f 100644 --- a/package/qlibc/qlibc.mk +++ b/package/qlibc/qlibc.mk @@ -4,10 +4,10 @@ # ################################################################################ -QLIBC_VERSION = v2.1.6 +QLIBC_VERSION = v2.4.1 QLIBC_SITE = $(call github,wolkykim,qlibc,$(QLIBC_VERSION)) QLIBC_LICENSE = BSD-2c -QLIBC_LICENSE_FILES = COPYING +QLIBC_LICENSE_FILES = LICENSE # We're patching configure.ac QLIBC_AUTORECONF = YES diff --git a/package/qpid-proton/Config.in b/package/qpid-proton/Config.in index f8aaf395fa..47cddebe91 100644 --- a/package/qpid-proton/Config.in +++ b/package/qpid-proton/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_QPID_PROTON bool "qpid-proton" depends on !BR2_STATIC_LIBS # build a shared library - depends on BR2_USE_WCHAR # util-linux select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID help @@ -14,5 +13,5 @@ config BR2_PACKAGE_QPID_PROTON https://qpid.apache.org/proton/ -comment "qpid-proton needs a toolchain w/ dynamic library, wchar" - depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR +comment "qpid-proton needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/qt/0012-OpenGL-EGL-Avoid-X11-header-collision.patch b/package/qt/0012-OpenGL-EGL-Avoid-X11-header-collision.patch new file mode 100644 index 0000000000..8c65d1db38 --- /dev/null +++ b/package/qt/0012-OpenGL-EGL-Avoid-X11-header-collision.patch @@ -0,0 +1,60 @@ +From 87c9c18fad02744238336a6cf1ce70d3ec2c89c2 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 11 Jun 2016 17:03:07 +0200 +Subject: [PATCH 1/1] OpenGL/EGL: Avoid X11 header collision + +Including X11 headers via EGL/egl.h leads to a collision of defines +between Qt and X11. To fix this qt5 added + DEFINES += MESA_EGL_NO_X11_HEADERS +in various files: + +https://github.com/qtproject/qtbase/blob/dev/src/platformsupport/eglconvenience/eglconvenience.pri#L19 +https://github.com/qtproject/qtbase/blob/dev/src/plugins/platforms/minimalegl/minimalegl.pro#L10 +https://github.com/qtproject/qtbase/blob/dev/src/plugins/platforms/eglfs/deviceintegration/eglfs_x11/eglfs_x11.pro#L6 +[...] + +This patch fixes a similar compile error in qt4: +http://autobuild.buildroot.net/results/9b0/9b0ed92984eead89d148eaa71aff6e2f1e117837/ +http://autobuild.buildroot.org/results/4fd/4fd57553336d36439fab32a7221fc8639758e887/ +http://autobuild.buildroot.org/results/5cb/5cb8072f8220f7203fa79936eedcc43eab53ec66/ + +Signed-off-by: Bernd Kuhls +(patch not sent upstream because qt4 branch is closed: + http://blog.qt.io/blog/2015/05/26/qt-4-8-7-released/) +--- + + src/gui/egl/egl.pri | 3 +++ + src/opengl/opengl.pro | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git a/src/gui/egl/egl.pri b/src/gui/egl/egl.pri +index 8e8664c..715ffd7 100644 +--- a/src/gui/egl/egl.pri ++++ b/src/gui/egl/egl.pri +@@ -22,6 +22,9 @@ contains(QT_CONFIG, egl): { + !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL + } + ++ # Avoid X11 header collision ++ DEFINES += MESA_EGL_NO_X11_HEADERS ++ + wince*: SOURCES += egl/qegl_wince.cpp + + unix { +diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro +index ce1a5d2..65b1031 100644 +--- a/src/opengl/opengl.pro ++++ b/src/opengl/opengl.pro +@@ -149,6 +149,9 @@ embedded { + qglwindowsurface_qws_p.h \ + qgl_egl_p.h + ++ # Avoid X11 header collision ++ DEFINES += MESA_EGL_NO_X11_HEADERS ++ + contains(QT_CONFIG, fontconfig) { + include($$QT_SOURCE_TREE/config.tests/unix/freetype/freetype.pri) + } else { +-- +2.8.1 + diff --git a/package/qt/Config.in b/package/qt/Config.in index 0ab8417b86..fa5235d6f4 100644 --- a/package/qt/Config.in +++ b/package/qt/Config.in @@ -126,6 +126,7 @@ config BR2_PACKAGE_QT_CONFIG_FILE config BR2_PACKAGE_QT_QT3SUPPORT bool "Compatibility with Qt3" depends on BR2_PACKAGE_QT_GUI_MODULE + select BR2_PACKAGE_QT_SQL_MODULE help Turns on support for older Qt3. This will create an additional library with proxy code and increase the space required on target. @@ -265,7 +266,7 @@ config BR2_PACKAGE_QT_SYSTEMJPEG config BR2_PACKAGE_QT_QTJPEG bool "Use Qt bundled libjpeg" help - Link against libjpeg proveded with Qt + Link against libjpeg provided with Qt endchoice choice @@ -302,6 +303,11 @@ config BR2_PACKAGE_QT_QTTIFF bool "Use Qt bundled libtiff" endchoice +config BR2_PACKAGE_QT_ACCESSIBILITY + bool "Enable accessibility support" + help + This enables and compiles the accessibility support. + endif # BR2_PACKAGE_QT_GUI_MODULE choice @@ -350,6 +356,31 @@ config BR2_PACKAGE_QT_PHONON_BACKEND Build the platform Phonon plugin. If unsure, say n. +config BR2_PACKAGE_QT_OPENGL + bool "OpenGL support" + depends on (BR2_PACKAGE_HAS_LIBGL && BR2_PACKAGE_QT_X11) || \ + (BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_HAS_LIBGLES) + default y + help + This option enables OpenGL support. + +if BR2_PACKAGE_QT_OPENGL + +choice + prompt "OpenGL API" + help + Select OpenGL API. + +comment "Desktop OpenGL not available (needs Qt standard (X11))" + depends on !BR2_PACKAGE_QT_X11 + +config BR2_PACKAGE_QT_OPENGL_GL_DESKTOP + bool "Desktop OpenGL" + depends on BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_QT_X11 + help + Use desktop OpenGL. + config BR2_PACKAGE_QT_OPENGL_ES bool "OpenGL ES v2.x support" depends on BR2_PACKAGE_HAS_LIBGLES @@ -357,6 +388,10 @@ config BR2_PACKAGE_QT_OPENGL_ES help Enable the OpenGL ES v2.x support. +endchoice + +endif # BR2_PACKAGE_QT_OPENGL + endif config BR2_PACKAGE_QT_DBUS @@ -434,15 +469,23 @@ config BR2_PACKAGE_QT_WEBKIT depends on BR2_PACKAGE_QT_NETWORK depends on BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # needs pthread_getattr_np() + depends on BR2_PACKAGE_GSTREAMER + select BR2_PACKAGE_GST_PLUGINS_BASE + select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP help Build the WebKit module. If unsure, say n. -comment "WebKit needs shared library/NPTL toolchain/script/gui/network support" - depends on !(BR2_PACKAGE_QT_SCRIPT && BR2_PACKAGE_QT_SHARED && \ - BR2_PACKAGE_QT_GUI_MODULE && BR2_PACKAGE_QT_NETWORK) - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL +comment "WebKit needs a toolchain w/ dynamic library, NPTL" depends on BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIB + +comment "WebKit needs QtShared/Script/Gui/Network and Gstreamer 0.10" + depends on BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL && !BR2_STATIC_LIB + depends on !BR2_PACKAGE_QT_SCRIPT || !BR2_PACKAGE_QT_SHARED \ + || !BR2_PACKAGE_QT_GUI_MODULE || !BR2_PACKAGE_QT_NETWORK \ + || !BR2_PACKAGE_GSTREAMER config BR2_PACKAGE_QT_STL bool "STL support" diff --git a/package/qt/qt.hash b/package/qt/qt.hash index 301010cae1..de81368511 100644 --- a/package/qt/qt.hash +++ b/package/qt/qt.hash @@ -1,3 +1,4 @@ # md5 http://download.qt.io/official_releases/qt/4.8/4.8.7/md5sums-4.8.7, sha256 locally computed: md5 d990ee66bf7ab0c785589776f35ba6ad qt-everywhere-opensource-src-4.8.7.tar.gz sha256 e2882295097e47fe089f8ac741a95fef47e0a73a3f3cdf21b56990638f626ea0 qt-everywhere-opensource-src-4.8.7.tar.gz +sha256 e03740e20b8dbf52d163d8a4a37125e7c55b59a9a5e7cf7e89a08e07286b6135 b8f98d956501dfa4ce03a137f15d404930a56066.patch diff --git a/package/qt/qt.mk b/package/qt/qt.mk index f29a6714bc..29dcc46b7b 100644 --- a/package/qt/qt.mk +++ b/package/qt/qt.mk @@ -15,6 +15,9 @@ QT_VERSION_MAJOR = 4.8 QT_VERSION = $(QT_VERSION_MAJOR).7 QT_SOURCE = qt-everywhere-opensource-src-$(QT_VERSION).tar.gz QT_SITE = http://download.qt-project.org/official_releases/qt/$(QT_VERSION_MAJOR)/$(QT_VERSION) +# Patch fixing ALSA detection. Taken from Qt5, but applies fine to +# Qt4. +QT_PATCH = https://github.com/qtproject/qtbase/commit/b8f98d956501dfa4ce03a137f15d404930a56066.patch QT_DEPENDENCIES = host-pkgconf QT_INSTALL_STAGING = YES @@ -38,6 +41,11 @@ QT_CFLAGS = $(TARGET_CFLAGS) QT_CXXFLAGS = $(TARGET_CXXFLAGS) QT_LDFLAGS = $(TARGET_LDFLAGS) +# Qt WebKit build fails when gcc-6 is used for build, because +# 'std::auto_ptr' is deprecated starting from gcc 6.x. So, we have to +# use an older c++ standard to prevent build failure +QT_CXXFLAGS += -std=gnu++98 + # Qt has some assembly function that are not present in thumb1 mode: # Error: selected processor does not support Thumb mode `swp r3,r7,[r4]' # so, we desactivate thumb mode @@ -258,6 +266,12 @@ else QT_CONFIGURE_OPTS += -no-libmng endif +ifeq ($(BR2_PACKAGE_QT_ACCESSIBILITY),y) +QT_CONFIGURE_OPTS += -accessibility +else +QT_CONFIGURE_OPTS += -no-accessibility +endif + ifeq ($(BR2_PACKAGE_QT_QTZLIB),y) QT_CONFIGURE_OPTS += -qt-zlib else @@ -336,6 +350,9 @@ QT_DEPENDENCIES += libgles libegl QT_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags egl` QT_CXXFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags egl` QT_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs egl` +else ifeq ($(BR2_PACKAGE_QT_OPENGL_GL_DESKTOP),y) +QT_CONFIGURE_OPTS += -opengl desktop +QT_DEPENDENCIES += libgl else QT_CONFIGURE_OPTS += -no-opengl endif @@ -417,6 +434,7 @@ endif ifeq ($(BR2_PACKAGE_QT_WEBKIT),y) QT_CONFIGURE_OPTS += -webkit +QT_DEPENDENCIES += gstreamer gst-plugins-base else QT_CONFIGURE_OPTS += -no-webkit endif @@ -487,7 +505,7 @@ endef endif define QT_CONFIGURE_CMDS - -[ -f $(@D)/Makefile ] && $(MAKE) -C $(@D) confclean + -[ -f $(@D)/Makefile ] && $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) confclean $(QT_CONFIGURE_IPV6) $(QT_CONFIGURE_CONFIG_FILE) # Fix compiler path @@ -509,7 +527,7 @@ define QT_CONFIGURE_CMDS PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig:$(PKG_CONFIG_PATH)" \ - $(QT_CONFIGURE_ENV) \ + $(TARGET_MAKE_ENV) \ MAKEFLAGS="$(MAKEFLAGS) -j$(PARALLEL_JOBS)" ./configure \ $(if $(VERBOSE),-verbose,-silent) \ -force-pkg-config \ @@ -517,7 +535,6 @@ define QT_CONFIGURE_CMDS -no-xinerama \ -no-cups \ -no-nis \ - -no-accessibility \ -no-separate-debug-info \ -prefix /usr \ -plugindir /usr/lib/qt/plugins \ @@ -615,7 +632,7 @@ endef # remove the sysroot path from them, since pkg-config already adds it # automatically. define QT_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install mkdir -p $(HOST_DIR)/usr/bin mv $(addprefix $(STAGING_DIR)/usr/bin/,$(QT_HOST_PROGRAMS)) $(HOST_DIR)/usr/bin ln -sf $(STAGING_DIR)/usr/mkspecs $(HOST_DIR)/usr/mkspecs diff --git a/package/qt5/Config.in b/package/qt5/Config.in index 84cbb0fbe6..b3cb2adfe0 100644 --- a/package/qt5/Config.in +++ b/package/qt5/Config.in @@ -30,8 +30,31 @@ menuconfig BR2_PACKAGE_QT5 http://qt.io if BR2_PACKAGE_QT5 -source "package/qt5/qt5base/Config.in" + +choice + prompt "Qt5 version" + +config BR2_PACKAGE_QT5_VERSION_LATEST + bool "Latest (5.8)" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_HOST_GCC_AT_LEAST_4_8 # C++11 + help + This option builds Qt 5.8, which is licensed under + (L)GPLv3+. + +comment "Latest Qt version needs host/toolchain w/ gcc >= 4.8" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_HOST_GCC_AT_LEAST_4_8 + +config BR2_PACKAGE_QT5_VERSION_5_6 + bool "LTS (5.6)" + help + This option builds Qt 5.6, which is licensed under + (L)GPLv2+. + +endchoice + source "package/qt5/qt53d/Config.in" +source "package/qt5/qt5base/Config.in" source "package/qt5/qt5canvas3d/Config.in" source "package/qt5/qt5connectivity/Config.in" source "package/qt5/qt5declarative/Config.in" @@ -41,18 +64,16 @@ source "package/qt5/qt5imageformats/Config.in" source "package/qt5/qt5location/Config.in" source "package/qt5/qt5multimedia/Config.in" source "package/qt5/qt5quickcontrols/Config.in" +source "package/qt5/qt5quickcontrols2/Config.in" +source "package/qt5/qt5script/Config.in" source "package/qt5/qt5sensors/Config.in" source "package/qt5/qt5serialbus/Config.in" source "package/qt5/qt5serialport/Config.in" source "package/qt5/qt5svg/Config.in" source "package/qt5/qt5tools/Config.in" source "package/qt5/qt5webchannel/Config.in" +source "package/qt5/qt5webkit/Config.in" source "package/qt5/qt5websockets/Config.in" source "package/qt5/qt5x11extras/Config.in" source "package/qt5/qt5xmlpatterns/Config.in" -comment "technology preview" -source "package/qt5/qt5quickcontrols2/Config.in" -comment "legacy compatibility" -source "package/qt5/qt5script/Config.in" -source "package/qt5/qt5webkit/Config.in" endif diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk index e43795f0c2..9e77ce351c 100644 --- a/package/qt5/qt5.mk +++ b/package/qt5/qt5.mk @@ -1,6 +1,15 @@ -QT5_VERSION_MAJOR = 5.6 +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5_VERSION_MAJOR = 5.8 QT5_VERSION = $(QT5_VERSION_MAJOR).0 QT5_SITE = http://download.qt.io/official_releases/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules +QT5_SNAPSHOTS_SITE = http://download.qt.io/snapshots/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/latest_src/submodules +else +QT5_VERSION_MAJOR = 5.6 +QT5_VERSION = $(QT5_VERSION_MAJOR).2 +QT5_SITE = http://download.qt.io/official_releases/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules +QT5_SNAPSHOTS_SITE = http://download.qt.io/snapshots/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/latest_src/submodules +endif + include $(sort $(wildcard package/qt5/*/*.mk)) define QT5_LA_PRL_FILES_FIXUP diff --git a/package/qt5/qt53d/Config.in b/package/qt5/qt53d/Config.in index ff50204fc8..27f27a8070 100644 --- a/package/qt5/qt53d/Config.in +++ b/package/qt5/qt53d/Config.in @@ -12,6 +12,10 @@ config BR2_PACKAGE_QT53D This package corresponds to the qt53d module. + + This module was in tech preview in Qt 5.6, and promoted + to a core module in Qt 5.7.0. + Enable the assimp package to gain the assimp sceneparser plugin. http://doc.qt.io/qt-5/qt3d-index.html diff --git a/package/qt5/qt53d/qt53d.hash b/package/qt5/qt53d/qt53d.hash index 8d9a3d68f0..7eaf2cdb13 100644 --- a/package/qt5/qt53d/qt53d.hash +++ b/package/qt5/qt53d/qt53d.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qt3d-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 b961789daecebed030ad36568301d1fe6c1ad97e9a2726fad5bd96ad603f439d qt3d-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qt3d-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 a21786db6e0f5c6c70213fe1a3530ed3d7f28f28401a0f793970e9bc860ce941 qt3d-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qt3d-opensource-src-5.8.0.tar.xz +sha256 3a224576fc922195ac0063b5b351cd6b9d13afcde9cec14317be0347d10c8ae5 qt3d-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5base/0001-Disable-c-standard-compiler-flags-for-the-host-build.patch b/package/qt5/qt5base/0001-Disable-c-standard-compiler-flags-for-the-host-build.patch deleted file mode 100644 index 54e4db8e67..0000000000 --- a/package/qt5/qt5base/0001-Disable-c-standard-compiler-flags-for-the-host-build.patch +++ /dev/null @@ -1,44 +0,0 @@ -From e69e69519661954716d59bfa5bbd0626515cfda9 Mon Sep 17 00:00:00 2001 -From: Peter Seiderer -Date: Thu, 3 Mar 2016 15:17:31 +0100 -Subject: [PATCH] Disable c++ standard compiler flags for the host build -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -There is no test for c++ standard support for the host build -(only for the target compiler/build) which leads to trouble -in some cross compiling environments (old host compiler, new -cross compiler): - - g++: error: unrecognized command line option ‘-std=c++1z’ - -So disable c++ standard compiler flags unconditionally for host builds. - -Task-number: QTBUG-51644 -Change-Id: Ifb3042e125fe199a7e081740d1171d26ccacf0c5 -Reviewed-by: Oswald Buddenhagen -Signed-off-by: Yegor Yefremov ---- - mkspecs/features/default_post.prf | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf -index cd8d885..561c8f4 100644 ---- a/mkspecs/features/default_post.prf -+++ b/mkspecs/features/default_post.prf -@@ -95,7 +95,10 @@ breakpad { - !isEmpty(QMAKE_STRIP):QMAKE_POST_LINK = $$QMAKE_POST_LINK$$escape_expand(\\n\\t)$$quote($$QMAKE_STRIP $$DEBUGFILENAME) - } - --c++11|c++14|c++1z { -+# Disable special compiler flags for host builds (needs to be changed for 5.7 -+# to fall back to c++11 because since 5.7 c++11 is required everywhere, -+# including host builds). -+if(!host_build|!cross_compile):if(c++11|c++14|c++1z) { - c++1z: cxxstd = CXX1Z - else: c++14: cxxstd = CXX14 - else: cxxstd = CXX11 --- -2.1.4 - diff --git a/package/qt5/qt5base/0007-build-with-explicitlib-after-all.patch b/package/qt5/qt5base/0007-build-with-explicitlib-after-all.patch deleted file mode 100644 index a878ba6451..0000000000 --- a/package/qt5/qt5base/0007-build-with-explicitlib-after-all.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 523c7e3fd55c853dd424d57f28e225d57439cf89 Mon Sep 17 00:00:00 2001 -From: Oswald Buddenhagen -Date: Thu, 3 Mar 2016 14:12:16 +0100 -Subject: [PATCH] build with explicitlib after all - -unlike speculated in 2fe363514, this is not a workaround at all: it -causes that libraries' public link interfaces (LIBS) are exported in the -first place. unlike with staticlib, this does not export LIBS_PRIVATE, -so it wouldn't even be a particularly effective workaround for rpath -brokenness anyway. - -the problem was pretty well hidden by the qt module system, which at the -level of libraries is pretty redundant with the .prl file handling, -which shows just how stupid the whole "design" is. - -unlike before, we now enable explicitlib for all libraries, not just qt -modules - we enable create_prl for all of them as well, after all. - -an immediate effect of this change is that it fixes linking on RaspPI: -the qtcore headers make the user code require linking libatomic, so we -must add it to our public link interface. - -Task-number: QTBUG-51621 -Change-Id: I5742c88694db8e8a9b79d17222dc6df2b38e5ab2 -Reviewed-by: Joerg Bornemann -Reviewed-by: Allan Sandfeld Jensen - -Upstream: https://codereview.qt-project.org/gitweb?p=qt%2Fqtbase.git;a=commit;h=523c7e3fd55c853dd424d57f28e225d57439cf89 -Signed-off: Peter Seiderer ---- - mkspecs/features/qt_build_config.prf | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf -index 518fd93..b3081b9 100644 ---- a/mkspecs/features/qt_build_config.prf -+++ b/mkspecs/features/qt_build_config.prf -@@ -72,6 +72,10 @@ CONFIG += \ - # However, testcases should be still built with exceptions. - exceptions_off testcase_exceptions - -+# Under Windows, this is neither necessary (transitive deps are automatically -+# resolved), nor functional (.res files end up in .prl files and break things). -+unix: CONFIG += explicitlib -+ - - defineTest(qtBuildPart) { - bp = $$eval($$upper($$section(_QMAKE_CONF_, /, -2, -2))_BUILD_PARTS) --- -2.7.4 - diff --git a/package/qt5/qt5base/0006-eglfs-rasp-pi-header-inclusion.patch b/package/qt5/qt5base/5.6.2/0001-eglfs-rasp-pi-header-inclusion.patch similarity index 100% rename from package/qt5/qt5base/0006-eglfs-rasp-pi-header-inclusion.patch rename to package/qt5/qt5base/5.6.2/0001-eglfs-rasp-pi-header-inclusion.patch diff --git a/package/qt5/qt5base/5.6.2/0002-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch b/package/qt5/qt5base/5.6.2/0002-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch new file mode 100644 index 0000000000..cbafb397bb --- /dev/null +++ b/package/qt5/qt5base/5.6.2/0002-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch @@ -0,0 +1,53 @@ +From b6c602e4264021f98ec2c72316e2a2000bf35e82 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 14 Nov 2016 23:42:25 +0100 +Subject: [PATCH] eglfs: fix eglfs_mali compile for odroid-mali + +Avoid duplicated struct fbdev_window definition (introduced by [1]) by +renaming struct fbdev_window to shadow_fbdev_window. + +Fixes the following buildroot compile failure ([2]): + +qeglfsmaliintegration.cpp:45:8: error: redefinition of 'struct fbdev_window' + struct fbdev_window { + ^ +In file included from /accts/mlweber1/rc-buildroot-test/scripts/instance-0/output/host/usr/aarch64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:28:0, + from /accts/mlweber1/rc-buildroot-test/scripts/instance-0/output/host/usr/aarch64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:36, + from ../../../eglfs/qeglfsglobal.h:45, + from ../../../eglfs/qeglfsdeviceintegration.h:48, + from qeglfsmaliintegration.h:37, + from qeglfsmaliintegration.cpp:34: + +[1] https://code.qt.io/cgit/qt/qtbase.git/commit/?h=dev&id=58bed4cda98e8e25db8adc61c7db73b6853077dc +[2] http://autobuild.buildroot.net/results/48c/48c458c035162169e8ca7c34ae65e9064822f25a + +Signed-off-by: Peter Seiderer +--- + .../eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp +index 43decdf..aeba83f 100644 +--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp ++++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp +@@ -42,7 +42,7 @@ + + QT_BEGIN_NAMESPACE + +-struct fbdev_window { ++struct shadow_fbdev_window { + unsigned short width; + unsigned short height; + }; +@@ -85,7 +85,7 @@ EGLNativeWindowType QEglFSMaliIntegration::createNativeWindow(QPlatformWindow *w + Q_UNUSED(window); + Q_UNUSED(format); + +- fbdev_window *fbwin = reinterpret_cast(malloc(sizeof(fbdev_window))); ++ shadow_fbdev_window *fbwin = reinterpret_cast(malloc(sizeof(shadow_fbdev_window))); + if (NULL == fbwin) + return 0; + +-- +2.8.1 + diff --git a/package/qt5/qt5base/5.8.0/0001-fix-parallel-builds-with-qt-freetype-system-libpng.patch b/package/qt5/qt5base/5.8.0/0001-fix-parallel-builds-with-qt-freetype-system-libpng.patch new file mode 100644 index 0000000000..8548ef0e25 --- /dev/null +++ b/package/qt5/qt5base/5.8.0/0001-fix-parallel-builds-with-qt-freetype-system-libpng.patch @@ -0,0 +1,34 @@ +From 74af93f5298b54bc2327843f390bf202776f2f48 Mon Sep 17 00:00:00 2001 +From: Oswald Buddenhagen +Date: Tue, 10 Jan 2017 14:18:02 +0100 +Subject: [PATCH] fix parallel builds with -qt-freetype -system-libpng + +freetype has no dependency on gui, so it needs to pull in gui's +configuration manually, as that's where the system libpng is found. + +Task-number: QTBUG-58038 +Change-Id: I881495f7d2a8f7c1a45d7d4c9e7698ff1d30f2a9 +Reviewed-by: Joerg Bornemann +Reviewed-by: Joni Poikelin + +Upstream: https://code.qt.io/cgit/qt/qtbase.git/commit/?id=4dcfd90e4fd7d4c49138038dbbcbda8794a9fbff +Signed-off-by: Peter Seiderer +--- + src/3rdparty/freetype/freetype.pro | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/3rdparty/freetype/freetype.pro b/src/3rdparty/freetype/freetype.pro +index 5b1eb92e..390a6da7 100644 +--- a/src/3rdparty/freetype/freetype.pro ++++ b/src/3rdparty/freetype/freetype.pro +@@ -69,6 +69,7 @@ DEFINES += FT_CONFIG_OPTION_SYSTEM_ZLIB + include(../zlib_dependency.pri) + + DEFINES += FT_CONFIG_OPTION_USE_PNG ++include($$OUT_PWD/../../gui/qtgui-config.pri) + QMAKE_USE_PRIVATE += libpng + + DEFINES += TT_CONFIG_OPTION_SUBPIXEL_HINTING +-- +2.11.0 + diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in index 64a7f65386..f22e034b30 100644 --- a/package/qt5/qt5base/Config.in +++ b/package/qt5/qt5base/Config.in @@ -16,6 +16,17 @@ config BR2_PACKAGE_QT5BASE if BR2_PACKAGE_QT5BASE +config BR2_PACKAGE_QT5BASE_CUSTOM_CONF_OPTS + string "Custom configuration options" + help + Define custom qt5 configuration options which can be used to + enable or disable options not managed by buildroot. These + options are appended to the ones generated by buildroot and + passed to qt5base during configuration. + + E.g. to remove the Windows Vista style option, add the option + -no-feature-style_windowsvista. + config BR2_PACKAGE_QT5BASE_LICENSE_APPROVED bool "Approve free license" help @@ -180,7 +191,7 @@ config BR2_PACKAGE_QT5BASE_DIRECTFB bool "directfb support" depends on BR2_PACKAGE_DIRECTFB -comment "directfb backend if directb is enabled" +comment "directfb backend available if directfb is enabled" depends on !BR2_PACKAGE_DIRECTFB config BR2_PACKAGE_QT5BASE_XCB diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf index 2152d3c7a4..49cf898316 100644 --- a/package/qt5/qt5base/qmake.conf +++ b/package/qt5/qt5base/qmake.conf @@ -19,6 +19,7 @@ QMAKE_CXXFLAGS_RELEASE += -O3 CONFIG += nostrip QMAKE_LIBS += -lrt -lpthread -ldl +QMAKE_CFLAGS_ISYSTEM = include(../common/linux_device_post.conf) load(qt_config) diff --git a/package/qt5/qt5base/qt5base.hash b/package/qt5/qt5base/qt5base.hash index 934fb5db16..3f6af8acb0 100644 --- a/package/qt5/qt5base/qt5base.hash +++ b/package/qt5/qt5base/qt5base.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtbase-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 6efa8a5c559e92b2e526d48034e858023d5fd3c39115ac1bfd3bb65834dbd67a qtbase-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtbase-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 2f6eae93c5d982fe0a387a01aeb3435571433e23e9d9d9246741faf51f1ee787 qtbase-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtbase-opensource-src-5.8.0.tar.xz +sha256 c17111ae02a44dc7be1ec2cf979a47ee9e58edf4904041a525c21f4fa53fc005 qtbase-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 9ff7af167f..09bf5cf7bd 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -20,27 +20,46 @@ QT5BASE_INSTALL_STAGING = YES # want to use the one packaged in Buildroot QT5BASE_CONFIGURE_OPTS += \ -optimized-qmake \ - -no-kms \ -no-cups \ - -no-nis \ -no-iconv \ -system-zlib \ -system-pcre \ -no-pch \ -shared +QT5BASE_CONFIGURE_OPTS += $(call qstrip,$(BR2_PACKAGE_QT5BASE_CUSTOM_CONF_OPTS)) + +# Uses libgbm from mesa3d +ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) +QT5BASE_CONFIGURE_OPTS += -kms -gbm +QT5BASE_DEPENDENCIES += mesa3d +else +QT5BASE_CONFIGURE_OPTS += -no-kms +endif + ifeq ($(BR2_ENABLE_DEBUG),y) QT5BASE_CONFIGURE_OPTS += -debug else QT5BASE_CONFIGURE_OPTS += -release endif +ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y) QT5BASE_CONFIGURE_OPTS += -largefile +endif ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) QT5BASE_CONFIGURE_OPTS += -opensource -confirm-license +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5BASE_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5BASE_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5BASE_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5BASE_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5BASE_LICENSE := $(QT5BASE_LICENSE), BSD-3c (examples) +QT5BASE_LICENSE_FILES += header.BSD +endif else QT5BASE_LICENSE = Commercial license QT5BASE_REDISTRIBUTE = NO @@ -52,6 +71,10 @@ ifneq ($(QT5BASE_CONFIG_FILE),) QT5BASE_CONFIGURE_OPTS += -qconfig buildroot endif +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +QT5BASE_DEPENDENCIES += udev +endif + # Qt5 SQL Plugins ifeq ($(BR2_PACKAGE_QT5BASE_SQL),y) ifeq ($(BR2_PACKAGE_QT5BASE_MYSQL),y) @@ -143,6 +166,7 @@ QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_ICU),icu) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_EXAMPLES),-make,-nomake) examples +ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y) # gstreamer 0.10 support is broken in qt5multimedia ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) QT5BASE_CONFIGURE_OPTS += -gstreamer 1.0 @@ -150,6 +174,14 @@ QT5BASE_DEPENDENCIES += gst1-plugins-base else QT5BASE_CONFIGURE_OPTS += -no-gstreamer endif +endif + +ifeq ($(BR2_PACKAGE_LIBINPUT),y) +QT5BASE_CONFIGURE_OPTS += -libinput +QT5BASE_DEPENDENCIES += libinput +else +QT5BASE_CONFIGURE_OPTS += -no-libinput +endif # Build the list of libraries to be installed on the target QT5BASE_INSTALL_LIBS_y += Qt5Core @@ -160,7 +192,11 @@ QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL) += Qt5Sql QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_TEST) += Qt5Test QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XML) += Qt5Xml QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_OPENGL_LIB) += Qt5OpenGL +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglFSDeviceIntegration +else QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_EGLFS) += Qt5EglDeviceIntegration +endif QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_GUI) += Qt5Gui QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_WIDGETS) += Qt5Widgets @@ -226,12 +262,14 @@ define QT5BASE_INSTALL_TARGET_PLUGINS fi endef +ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y) define QT5BASE_INSTALL_TARGET_FONTS if [ -d $(STAGING_DIR)/usr/lib/fonts/ ] ; then \ mkdir -p $(TARGET_DIR)/usr/lib/fonts ; \ cp -dpfr $(STAGING_DIR)/usr/lib/fonts/* $(TARGET_DIR)/usr/lib/fonts ; \ fi endef +endif define QT5BASE_INSTALL_TARGET_EXAMPLES if [ -d $(STAGING_DIR)/usr/lib/qt/examples/ ] ; then \ diff --git a/package/qt5/qt5canvas3d/Config.in b/package/qt5/qt5canvas3d/Config.in index 3ae5192844..8058a2e25f 100644 --- a/package/qt5/qt5canvas3d/Config.in +++ b/package/qt5/qt5canvas3d/Config.in @@ -8,9 +8,10 @@ config BR2_PACKAGE_QT5CANVAS3D Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5canvas3d module. + Qt Canvas 3D module provides a way to make WebGL-like + 3D drawing calls from Qt Quick JavaScript. - http://qt.io + http://doc.qt.io/qt-5/qtcanvas3d-index.html comment "qt5canvas3d needs an OpenGL-capable backend" depends on !BR2_PACKAGE_QT5_GL_AVAILABLE diff --git a/package/qt5/qt5canvas3d/qt5canvas3d.hash b/package/qt5/qt5canvas3d/qt5canvas3d.hash index 57ae4d739d..2d84fe45c8 100644 --- a/package/qt5/qt5canvas3d/qt5canvas3d.hash +++ b/package/qt5/qt5canvas3d/qt5canvas3d.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtcanvas3d-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 66add59e826a0161f4a4dc3ec0b44c17fad1451390b4f7c67af23ee7429d9ecf qtcanvas3d-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtcanvas3d-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 d7584d006b03f99692ccabce922e755a6f12bb1ed1fbc99c2b84842b9e0aa0ad qtcanvas3d-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtcanvas3d-opensource-src-5.8.0.tar.xz +sha256 5446f790f526f582df7790e1e1442357f61aac9c23ea9b00d4a791c9d78ccaa3 qtcanvas3d-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5connectivity/Config.in b/package/qt5/qt5connectivity/Config.in index d529ea7f85..8903fc9496 100644 --- a/package/qt5/qt5connectivity/Config.in +++ b/package/qt5/qt5connectivity/Config.in @@ -1,21 +1,19 @@ config BR2_PACKAGE_QT5CONNECTIVITY bool "qt5connectivity" - select BR2_PACKAGE_BLUEZ_UTILS select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5BASE_CONCURRENT select BR2_PACKAGE_QT5BASE_DBUS - depends on !BR2_STATIC_LIBS # bluez_utils - depends on BR2_USE_WCHAR # bluez_utils - depends on BR2_TOOLCHAIN_HAS_THREADS # bluez_utils - depends on BR2_USE_MMU # bluez_utils + depends on BR2_PACKAGE_NEARD || BR2_PACKAGE_BLUEZ_UTILS || BR2_PACKAGE_BLUEZ5_UTILS help Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5connectivity module. + Qt Connectivity module provides support for Bluetooth/NFC + peripherials. - http://qt.io + http://doc.qt.io/qt-5/qtbluetooth-index.html + http://doc.qt.io/qt-5/qtnfc-index.html -comment "qt5connectivity 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 +comment "qt5connectivity needs neard and/or bluez(5)_utils" + depends on !BR2_PACKAGE_NEARD && !BR2_PACKAGE_BLUEZ_UTILS && \ + !BR2_PACKAGE_BLUEZ5_UTILS diff --git a/package/qt5/qt5connectivity/qt5connectivity.hash b/package/qt5/qt5connectivity/qt5connectivity.hash index a8676a9dd4..d6b841aa45 100644 --- a/package/qt5/qt5connectivity/qt5connectivity.hash +++ b/package/qt5/qt5connectivity/qt5connectivity.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtconnectivity-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 0c5cb0c100006759b6954a36e7dc66f8f1ac2b61b3f639152cf6ecb8d48a40eb qtconnectivity-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtconnectivity-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 1b672923e0703d62f605ccec97b454b1a04c1f0db47f54b687d009e84eabedf9 qtconnectivity-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtconnectivity-opensource-src-5.8.0.tar.xz +sha256 7b2d01e9d67f6390a9e64bdae62e81a965b0f0b21137cf1a021e08a28bb227f1 qtconnectivity-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5connectivity/qt5connectivity.mk b/package/qt5/qt5connectivity/qt5connectivity.mk index 936bc6f63c..f00dcb22f8 100644 --- a/package/qt5/qt5connectivity/qt5connectivity.mk +++ b/package/qt5/qt5connectivity/qt5connectivity.mk @@ -7,20 +7,29 @@ QT5CONNECTIVITY_VERSION = $(QT5_VERSION) QT5CONNECTIVITY_SITE = $(QT5_SITE) QT5CONNECTIVITY_SOURCE = qtconnectivity-opensource-src-$(QT5CONNECTIVITY_VERSION).tar.xz -QT5CONNECTIVITY_DEPENDENCIES = bluez_utils qt5base +QT5CONNECTIVITY_DEPENDENCIES = qt5base QT5CONNECTIVITY_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5CONNECTIVITY_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5CONNECTIVITY_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5CONNECTIVITY_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5CONNECTIVITY_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5CONNECTIVITY_LICENSE := $(QT5CONNECTIVITY_LICENSE), BSD-3c (examples) +endif else QT5CONNECTIVITY_LICENSE = Commercial license QT5CONNECTIVITY_REDISTRIBUTE = NO endif -ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y) -QT5CONNECTIVITY_DEPENDENCIES += qt5declarative -endif +QT5CONNECTIVITY_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5DECLARATIVE),qt5declarative) +QT5CONNECTIVITY_DEPENDENCIES += $(if $(BR2_PACKAGE_BLUEZ_UTILS),bluez_utils) +QT5CONNECTIVITY_DEPENDENCIES += $(if $(BR2_PACKAGE_BLUEZ5_UTILS),bluez5_utils) +QT5CONNECTIVITY_DEPENDENCIES += $(if $(BR2_PACKAGE_NEARD),neard) define QT5CONNECTIVITY_CONFIGURE_CMDS (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake) @@ -36,15 +45,48 @@ define QT5CONNECTIVITY_INSTALL_STAGING_CMDS endef ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK),y) -define QT5CONNECTIVITY_INSTALL_TARGET_QMLS +ifneq ($(BR2_PACKAGE_BLUEZ_UTILS)$(BR2_PACKAGE_BLUEZ5_UTILS),) +define QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH_QMLS cp -dpfr $(STAGING_DIR)/usr/qml/QtBluetooth $(TARGET_DIR)/usr/qml/ endef endif +ifeq ($(BR2_PACKAGE_NEARD),y) +define QT5CONNECTIVITY_INSTALL_TARGET_NFC_QMLS + cp -dpfr $(STAGING_DIR)/usr/qml/QtNfc $(TARGET_DIR)/usr/qml/ +endef +endif +endif -define QT5CONNECTIVITY_INSTALL_TARGET_CMDS +ifneq ($(BR2_PACKAGE_BLUEZ_UTILS)$(BR2_PACKAGE_BLUEZ5_UTILS),) +define QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH cp -dpf $(STAGING_DIR)/usr/lib/libQt5Bluetooth.so.* $(TARGET_DIR)/usr/lib cp -dpf $(STAGING_DIR)/usr/bin/sdpscanner $(TARGET_DIR)/usr/bin - $(QT5CONNECTIVITY_INSTALL_TARGET_QMLS) +endef +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +define QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH_EXAMPLES + cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/bluetooth $(TARGET_DIR)/usr/lib/qt/examples/ +endef +endif +endif + +ifeq ($(BR2_PACKAGE_NEARD),y) +define QT5CONNECTIVITY_INSTALL_TARGET_NFC + cp -dpf $(STAGING_DIR)/usr/lib/libQt5Nfc.so.* $(TARGET_DIR)/usr/lib +endef +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +define QT5CONNECTIVITY_INSTALL_TARGET_NFC_EXAMPLES + cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/nfc $(TARGET_DIR)/usr/lib/qt/examples/ +endef +endif +endif + +define QT5CONNECTIVITY_INSTALL_TARGET_CMDS + $(QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH) + $(QT5CONNECTIVITY_INSTALL_TARGET_NFC) + $(QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH_QMLS) + $(QT5CONNECTIVITY_INSTALL_TARGET_NFC_QMLS) + $(QT5CONNECTIVITY_INSTALL_TARGET_BLUETOOTH_EXAMPLES) + $(QT5CONNECTIVITY_INSTALL_TARGET_NFC_EXAMPLES) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5declarative/Config.in b/package/qt5/qt5declarative/Config.in index eba4c8d61d..853322cab3 100644 --- a/package/qt5/qt5declarative/Config.in +++ b/package/qt5/qt5declarative/Config.in @@ -8,9 +8,11 @@ config BR2_PACKAGE_QT5DECLARATIVE Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5declarative module. + Qt Declarative module provides the Qt QML and Qt Quick + modules for developing UIs with the QML language - http://qt.io + http://doc.qt.io/qt-5/qtqml-index.html + http://doc.qt.io/qt-5/qtquick-index.html if BR2_PACKAGE_QT5DECLARATIVE diff --git a/package/qt5/qt5declarative/qt5declarative.hash b/package/qt5/qt5declarative/qt5declarative.hash index 830e18f9e2..98a46f1fed 100644 --- a/package/qt5/qt5declarative/qt5declarative.hash +++ b/package/qt5/qt5declarative/qt5declarative.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtdeclarative-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 8c55f053f0e348577b56da541af74d02d0f2b61c9a6c15152b03dad03dfde04c qtdeclarative-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtdeclarative-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 0086a986bc36b398ba518c404d08cdff0a0d7978c30aa3fa2ab73d71654209da qtdeclarative-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtdeclarative-opensource-src-5.8.0.tar.xz +sha256 32941eb9ad12d8735dfc64de8b50b5ab830a6d8705a421c57369de7cb5708a46 qtdeclarative-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5declarative/qt5declarative.mk b/package/qt5/qt5declarative/qt5declarative.mk index be3a7b7d7a..fb546bd73b 100644 --- a/package/qt5/qt5declarative/qt5declarative.mk +++ b/package/qt5/qt5declarative/qt5declarative.mk @@ -11,8 +11,13 @@ QT5DECLARATIVE_DEPENDENCIES = qt5base qt5xmlpatterns QT5DECLARATIVE_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5DECLARATIVE_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5DECLARATIVE_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5DECLARATIVE_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5DECLARATIVE_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5DECLARATIVE_LICENSE = Commercial license QT5DECLARATIVE_REDISTRIBUTE = NO diff --git a/package/qt5/qt5enginio/Config.in b/package/qt5/qt5enginio/Config.in index fcb866cd6d..102058e7c5 100644 --- a/package/qt5/qt5enginio/Config.in +++ b/package/qt5/qt5enginio/Config.in @@ -8,6 +8,10 @@ config BR2_PACKAGE_QT5ENGINIO Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5enginio module. + Enginio is a Backend-as-a-Service solution for simplifying + backend development of connected and data-driven applications. - http://qt.io + This package has been tagged as deprecated since version + 5.6 and not recommended for new design. + + http://doc.qt.io/archives/qt-5.5/enginio-index.html diff --git a/package/qt5/qt5enginio/qt5enginio.hash b/package/qt5/qt5enginio/qt5enginio.hash index 3f66ee0a2a..995183484c 100644 --- a/package/qt5/qt5enginio/qt5enginio.hash +++ b/package/qt5/qt5enginio/qt5enginio.hash @@ -1,2 +1,2 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtenginio-opensource-src-1.6.0.tar.xz.mirrorlist -sha256 627ddcfbbfc3ec1a83c9dbb5f24287b5cd6cb5d3b9d09af4d1c444c6ac147f0c qtenginio-opensource-src-1.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtenginio-opensource-src-1.6.2.tar.xz.mirrorlist +sha256 90ffc38d214a75ab0ef90a4760843f12bc073ae49c17de24c677d1d403bddcc3 qtenginio-opensource-src-1.6.2.tar.xz diff --git a/package/qt5/qt5enginio/qt5enginio.mk b/package/qt5/qt5enginio/qt5enginio.mk index b858d1cbbf..dad7889767 100644 --- a/package/qt5/qt5enginio/qt5enginio.mk +++ b/package/qt5/qt5enginio/qt5enginio.mk @@ -6,7 +6,7 @@ # Qt5Enginio does not follow Qt versionning # see https://bugreports.qt.io/browse/QTBUG-50111 -QT5ENGINIO_VERSION = 1.6.0 +QT5ENGINIO_VERSION = 1.6.2 QT5ENGINIO_SITE = $(QT5_SITE) QT5ENGINIO_SOURCE = qtenginio-opensource-src-$(QT5ENGINIO_VERSION).tar.xz QT5ENGINIO_DEPENDENCIES = openssl qt5base @@ -15,6 +15,9 @@ QT5ENGINIO_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) QT5ENGINIO_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5ENGINIO_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5ENGINIO_LICENSE := $(QT5ENGINIO_LICENSE), BSD-3c (examples) +endif else QT5ENGINIO_LICENSE = Commercial license QT5ENGINIO_REDISTRIBUTE = NO diff --git a/package/qt5/qt5graphicaleffects/Config.in b/package/qt5/qt5graphicaleffects/Config.in index a42e1f8f2a..df23425975 100644 --- a/package/qt5/qt5graphicaleffects/Config.in +++ b/package/qt5/qt5graphicaleffects/Config.in @@ -8,9 +8,11 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5graphicaleffects module. + The Qt Graphical Effects module provides a set of QML types + for adding visually impressive and configurable effects to + user interfaces. - http://qt.io + http://doc.qt.io/qt-5/qtgraphicaleffects-index.html comment "qt5graphicaleffects needs an OpenGL-capable backend" depends on !BR2_PACKAGE_QT5_GL_AVAILABLE diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash index 847458eac6..ac4167be9e 100644 --- a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash +++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtgraphicaleffects-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 01e911fdcf85a13b927cba341d15a0baeead3eba85c4532b1b45bb5c334416e8 qtgraphicaleffects-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtgraphicaleffects-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 1e9f0fac2c72a812d396db74b2d9d12f513d2ec9135d5982ca85aee7f00be75e qtgraphicaleffects-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtgraphicaleffects-opensource-src-5.8.0.tar.xz +sha256 5f2a9b50530ac83d7c2b2ce73fbdf03ac61f83a9521e9d4b796fa17a969dd919 qtgraphicaleffects-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk index 223374a27c..aef69eb419 100644 --- a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk +++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk @@ -11,8 +11,13 @@ QT5GRAPHICALEFFECTS_DEPENDENCIES = qt5base qt5declarative QT5GRAPHICALEFFECTS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5GRAPHICALEFFECTS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5GRAPHICALEFFECTS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5GRAPHICALEFFECTS_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5GRAPHICALEFFECTS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5GRAPHICALEFFECTS_LICENSE = Commercial license QT5GRAPHICALEFFECTS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5imageformats/Config.in b/package/qt5/qt5imageformats/Config.in index 4dd848e41f..44c85c9b38 100644 --- a/package/qt5/qt5imageformats/Config.in +++ b/package/qt5/qt5imageformats/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_QT5IMAGEFORMATS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5imageformats module. + The Qt Image Formats module provides plugins for + additional image formats: TIFF, MNG, TGA, WBMP - http://qt.io + http://doc.qt.io/qt-5/qtimageformats-index.html diff --git a/package/qt5/qt5imageformats/qt5imageformats.hash b/package/qt5/qt5imageformats/qt5imageformats.hash index 05b8cbc60c..0a635233f2 100644 --- a/package/qt5/qt5imageformats/qt5imageformats.hash +++ b/package/qt5/qt5imageformats/qt5imageformats.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtimageformats-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 2c854275a689a513ba24f4266cc6017d76875336671c2c8801b4b7289081bada qtimageformats-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtimageformats-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 4fb153be62dac393cbcebab65040b3b9d6edecd1ebbe5e543401b0e45bd147e4 qtimageformats-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtimageformats-opensource-src-5.8.0.tar.xz +sha256 75045eeac11c96194260badbdb4d3e9eb7b7f9972d18d3491230ea820be4606f qtimageformats-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5imageformats/qt5imageformats.mk b/package/qt5/qt5imageformats/qt5imageformats.mk index 921656d0aa..d7649255f1 100644 --- a/package/qt5/qt5imageformats/qt5imageformats.mk +++ b/package/qt5/qt5imageformats/qt5imageformats.mk @@ -11,8 +11,13 @@ QT5IMAGEFORMATS_DEPENDENCIES = qt5base QT5IMAGEFORMATS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5IMAGEFORMATS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5IMAGEFORMATS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5IMAGEFORMATS_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5IMAGEFORMATS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5IMAGEFORMATS_LICENSE = Commercial license QT5IMAGEFORMATS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5location/Config.in b/package/qt5/qt5location/Config.in index 209d134215..e1778182a0 100644 --- a/package/qt5/qt5location/Config.in +++ b/package/qt5/qt5location/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_QT5LOCATION Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5location module. + The Qt Location API helps you create viable mapping + solutions using the data available from some of the + popular location services. - http://qt.io + http://doc.qt.io/qt-5/qtlocation-index.html diff --git a/package/qt5/qt5location/qt5location.hash b/package/qt5/qt5location/qt5location.hash index e078ec5cb6..6afc918ea8 100644 --- a/package/qt5/qt5location/qt5location.hash +++ b/package/qt5/qt5location/qt5location.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtlocation-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 360e1519d0fcafe4f86923d224e76d56dd785dfb0e1a19fd2e2b0016799653c9 qtlocation-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtlocation-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 7a8995206ed0220f943a33c037527a1a8243d5386f5ca77bf88152675c28d23a qtlocation-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtlocation-opensource-src-5.8.0.tar.xz +sha256 48a1e39ed989f0133aeacaa379e9c3958ec9b08c043626bba503619891d21abb qtlocation-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5location/qt5location.mk b/package/qt5/qt5location/qt5location.mk index 358b1621c5..dbdc64573d 100644 --- a/package/qt5/qt5location/qt5location.mk +++ b/package/qt5/qt5location/qt5location.mk @@ -11,8 +11,13 @@ QT5LOCATION_DEPENDENCIES = qt5base QT5LOCATION_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5LOCATION_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5LOCATION_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5LOCATION_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5LOCATION_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5LOCATION_LICENSE = Commercial license QT5LOCATION_REDISTRIBUTE = NO diff --git a/package/qt5/qt5multimedia/Config.in b/package/qt5/qt5multimedia/Config.in index 7549b35192..5b14ac57f1 100644 --- a/package/qt5/qt5multimedia/Config.in +++ b/package/qt5/qt5multimedia/Config.in @@ -8,6 +8,9 @@ config BR2_PACKAGE_QT5MULTIMEDIA Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5multimedia module. + The Qt Multimedia module provides a rich feature set that + enables you to easily take advantage of a platform's multimedia + capabilities such as media playback and the use of camera and + radio devices. - http://qt.io + http://doc.qt.io/qt-5/multimediaoverview.html diff --git a/package/qt5/qt5multimedia/qt5multimedia.hash b/package/qt5/qt5multimedia/qt5multimedia.hash index f988666291..ffd8a77912 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.hash +++ b/package/qt5/qt5multimedia/qt5multimedia.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtmultimedia-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 103f99d6cd266f5c4485546a75ef0c6ee7e88dc901a0be21447cf89159370686 qtmultimedia-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtmultimedia-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 cb9a70a7c6c0eb5be4a3fcaf9590863479e95a255308bbf07d5b7aa303bb8caf qtmultimedia-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtmultimedia-opensource-src-5.8.0.tar.xz +sha256 a8bc044834f95208261915feefe5e2fdb6761b76f0f99e21062963bd9f9d4a07 qtmultimedia-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk index 67e79686cb..fccdd5d64b 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.mk +++ b/package/qt5/qt5multimedia/qt5multimedia.mk @@ -11,8 +11,13 @@ QT5MULTIMEDIA_DEPENDENCIES = qt5base QT5MULTIMEDIA_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5MULTIMEDIA_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5MULTIMEDIA_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5MULTIMEDIA_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5MULTIMEDIA_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5MULTIMEDIA_LICENSE = Commercial license QT5MULTIMEDIA_REDISTRIBUTE = NO @@ -59,9 +64,16 @@ define QT5MULTIMEDIA_INSTALL_TARGET_QMLS endef endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +define QT5MULTIMEDIA_INSTALL_TARGET_EXAMPLES + cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/multimedia* $(TARGET_DIR)/usr/lib/qt/examples/ +endef +endif + define QT5MULTIMEDIA_INSTALL_TARGET_CMDS $(QT5MULTIMEDIA_INSTALL_TARGET_LIBS) $(QT5MULTIMEDIA_INSTALL_TARGET_QMLS) + $(QT5MULTIMEDIA_INSTALL_TARGET_EXAMPLES) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5quickcontrols/Config.in b/package/qt5/qt5quickcontrols/Config.in index 0fe8465e2e..3ab6ded403 100644 --- a/package/qt5/qt5quickcontrols/Config.in +++ b/package/qt5/qt5quickcontrols/Config.in @@ -8,9 +8,10 @@ config BR2_PACKAGE_QT5QUICKCONTROLS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5quickcontrols module. + The Qt Quick Controls module provides a set of controls + that can be used to build complete interfaces in Qt Quick. - http://qt.io + http://doc.qt.io/qt-5/qtquickcontrols-index.html comment "qt5quickcontrols needs an OpenGL-capable backend" depends on !BR2_PACKAGE_QT5_GL_AVAILABLE diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash index 409efde1ec..95657d2588 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtquickcontrols-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 ec0896792f2a08d109ab3791aa4e47747aab22ebfad281005c4bf8f26f9f788b qtquickcontrols-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtquickcontrols-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 5ed0f2292be10222dfb1b57a05472798fd759279f65455d91c02ef4fb746102c qtquickcontrols-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtquickcontrols-opensource-src-5.8.0.tar.xz +sha256 04e70d0ccfd9ba882691a5e8f81e3428ae1b72a76bb9f43ba242f1c33bd7b326 qtquickcontrols-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk index b33ff1575e..c2946bc753 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk @@ -31,7 +31,10 @@ define QT5QUICKCONTROLS_INSTALL_STAGING_CMDS endef define QT5QUICKCONTROLS_INSTALL_TARGET_CMDS - cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick $(TARGET_DIR)/usr/qml + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Controls $(TARGET_DIR)/usr/qml/QtQuick + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Dialogs $(TARGET_DIR)/usr/qml/QtQuick + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Extras $(TARGET_DIR)/usr/qml/QtQuick + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/PrivateWidgets $(TARGET_DIR)/usr/qml/QtQuick endef $(eval $(generic-package)) diff --git a/package/qt5/qt5quickcontrols2/Config.in b/package/qt5/qt5quickcontrols2/Config.in index 1e57674dc8..adf89d0de7 100644 --- a/package/qt5/qt5quickcontrols2/Config.in +++ b/package/qt5/qt5quickcontrols2/Config.in @@ -10,7 +10,10 @@ config BR2_PACKAGE_QT5QUICKCONTROLS2 This package corresponds to the qt5quickcontrols2 module. - http://qt.io + This module was in tech preview in Qt 5.6, and promoted + to a core module in Qt 5.7.0. + + https://doc.qt.io/qt-5/qtquickcontrols2-index.html comment "qt5quickcontrols2 needs an OpenGL-capable backend" depends on !BR2_PACKAGE_QT5_GL_AVAILABLE diff --git a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash index aaf8fcfa84..80a3103b95 100644 --- a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash +++ b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtquickcontrols2-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 59ec6ea2282931bc0d0748b3979a52e1a322e7ef8d1e5490b8a34931e8b9fee0 qtquickcontrols2-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtquickcontrols2-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 09dc1710aa4701aebe145829eb99bab94d0870cf578f7dddcec0af92286dfec1 qtquickcontrols2-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtquickcontrols2-opensource-src-5.8.0.tar.xz +sha256 b099866ec74f13cf0047274c61f0486d1eba27716fa07b69f682c54d3a4ade1b qtquickcontrols2-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk index a5ad3f6d4f..f6aca2cd46 100644 --- a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk +++ b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk @@ -30,11 +30,30 @@ define QT5QUICKCONTROLS2_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install endef +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +define QT5QUICKCONTROLS2_INSTALL_TARGET_EXAMPLES + cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/quickcontrols2 $(TARGET_DIR)/usr/lib/qt/examples/ +endef +endif + +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +define QT5QUICKCONTROLS2_INSTALL_TARGET_CMDS + cp -dpf $(STAGING_DIR)/usr/lib/libQt5QuickTemplates2.so.* $(TARGET_DIR)/usr/lib + cp -dpf $(STAGING_DIR)/usr/lib/libQt5QuickControls2.so.* $(TARGET_DIR)/usr/lib + cp -dpfr $(STAGING_DIR)/usr/qml/Qt/labs/calendar $(TARGET_DIR)/usr/qml/Qt/labs + cp -dpfr $(STAGING_DIR)/usr/qml/Qt/labs/platform $(TARGET_DIR)/usr/qml/Qt/labs + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Controls.2 $(TARGET_DIR)/usr/qml/QtQuick + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Templates.2 $(TARGET_DIR)/usr/qml/QtQuick + $(QT5QUICKCONTROLS2_INSTALL_TARGET_EXAMPLES) +endef +else define QT5QUICKCONTROLS2_INSTALL_TARGET_CMDS cp -dpf $(STAGING_DIR)/usr/lib/libQt5LabsTemplates.so.* $(TARGET_DIR)/usr/lib cp -dpfr $(STAGING_DIR)/usr/qml/Qt/labs/controls $(TARGET_DIR)/usr/qml/Qt/labs cp -dpfr $(STAGING_DIR)/usr/qml/Qt/labs/calendar $(TARGET_DIR)/usr/qml/Qt/labs cp -dpfr $(STAGING_DIR)/usr/qml/Qt/labs/templates $(TARGET_DIR)/usr/qml/Qt/labs + $(QT5QUICKCONTROLS2_INSTALL_TARGET_EXAMPLES) endef +endif $(eval $(generic-package)) diff --git a/package/qt5/qt5script/Config.in b/package/qt5/qt5script/Config.in index 0d15ef265c..ad19727ac2 100644 --- a/package/qt5/qt5script/Config.in +++ b/package/qt5/qt5script/Config.in @@ -6,10 +6,11 @@ config BR2_PACKAGE_QT5SCRIPT Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5script module. + Qt Script provides support for making Qt applications + scriptable. Provided for Qt 4.x compatibility. This package has been tagged as deprecated since version 5.5.0 and should be replaced by Qt QML module in new design. - http://qt.io + http://doc.qt.io/qt-5/qtscript-index.html diff --git a/package/qt5/qt5script/qt5script.hash b/package/qt5/qt5script/qt5script.hash index cc32efc13b..6e369d8e0c 100644 --- a/package/qt5/qt5script/qt5script.hash +++ b/package/qt5/qt5script/qt5script.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtscript-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 ac7475197d9a0f3c7284f002390e2427fef84ec90dc590630431a848099c5042 qtscript-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtscript-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 e06ef6b271cae2187b57cd4ffdd6759428fd47f94a060e2ed2af024a8c14110e qtscript-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtscript-opensource-src-5.8.0.tar.xz +sha256 293ab91d2d189d889dc80609aa259190fb7de636d360e904784a5ce1a45e5ad3 qtscript-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5sensors/Config.in b/package/qt5/qt5sensors/Config.in index 741ebba142..4846a3f95f 100644 --- a/package/qt5/qt5sensors/Config.in +++ b/package/qt5/qt5sensors/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_QT5SENSORS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5sensors module. + The Qt Sensors API provides access to sensor hardware + via QML and C++ interfaces. - http://qt.io + http://doc.qt.io/qt-5/qtsensors-index.html diff --git a/package/qt5/qt5sensors/qt5sensors.hash b/package/qt5/qt5sensors/qt5sensors.hash index 4f23af0037..307ad6fbd7 100644 --- a/package/qt5/qt5sensors/qt5sensors.hash +++ b/package/qt5/qt5sensors/qt5sensors.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtsensors-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 518f392fec5e01aaa7f95e9141678cc99b02ed067ebbd24c38c1420067c59c2e qtsensors-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtsensors-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 a7809081aab4f2f0d7a4f40c3abb02e1690bb390d1dd410d7c6c5019a5053427 qtsensors-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtsensors-opensource-src-5.8.0.tar.xz +sha256 3a5d0639ecf8cd30c8ca349c353a8f3c424889b53831e70b6d8c481fc45de796 qtsensors-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5sensors/qt5sensors.mk b/package/qt5/qt5sensors/qt5sensors.mk index 0dd952a4ca..fb9ef32e64 100644 --- a/package/qt5/qt5sensors/qt5sensors.mk +++ b/package/qt5/qt5sensors/qt5sensors.mk @@ -11,8 +11,13 @@ QT5SENSORS_DEPENDENCIES = qt5base QT5SENSORS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5SENSORS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5SENSORS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5SENSORS_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5SENSORS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5SENSORS_LICENSE = Commercial license QT5SENSORS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5serialbus/Config.in b/package/qt5/qt5serialbus/Config.in index f5b713dbae..2882d50644 100644 --- a/package/qt5/qt5serialbus/Config.in +++ b/package/qt5/qt5serialbus/Config.in @@ -9,7 +9,10 @@ config BR2_PACKAGE_QT5SERIALBUS This package corresponds to the qt5serialbus module. - http://qt.io + This module was in tech preview in Qt 5.6, and promoted + to a core module in Qt 5.8.0. + + http://doc.qt.io/qt-5/qtserialbus-index.html comment "qt5serialbus needs headers >= 3.6" depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 diff --git a/package/qt5/qt5serialbus/qt5serialbus.hash b/package/qt5/qt5serialbus/qt5serialbus.hash index da46e766a3..f15945c736 100644 --- a/package/qt5/qt5serialbus/qt5serialbus.hash +++ b/package/qt5/qt5serialbus/qt5serialbus.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtserialbus-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 8cca530ee53f19672f57ffee6f2f28866d5c84b8cb3dbbd67c05d27893ac0b8e qtserialbus-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtserialbus-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 b39260091691532382935ed51de9ead8e66cfb5f7a6e5410c17cd0695ccaf826 qtserialbus-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtserialbus-opensource-src-5.8.0.tar.xz +sha256 58343dd9f2e339d4900a2d4b54ee25ed959cf62bacb012fe61e6b99d7958c10a qtserialbus-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5serialport/Config.in b/package/qt5/qt5serialport/Config.in index c419d17dd0..3538c52556 100644 --- a/package/qt5/qt5serialport/Config.in +++ b/package/qt5/qt5serialport/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_QT5SERIALPORT Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5serialport module. + Qt Serial Port provides the basic functionality, which + includes configuring, I/O operations, getting and setting + the control signals of the RS-232 pinouts. - http://qt.io + http://doc.qt.io/qt-5/qtserialport-index.html diff --git a/package/qt5/qt5serialport/qt5serialport.hash b/package/qt5/qt5serialport/qt5serialport.hash index f2f0fe90d3..18c590b642 100644 --- a/package/qt5/qt5serialport/qt5serialport.hash +++ b/package/qt5/qt5serialport/qt5serialport.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtserialport-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 16ee7fb66bb997df674a12a7a5a1450e2a2b860c8d34d237f3631d9f60853c1f qtserialport-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtserialport-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 af76281bad2c2bd283189635316b46091f6712134b845ae1b9e3016eec94f376 qtserialport-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtserialport-opensource-src-5.8.0.tar.xz +sha256 52317fded73ad0beb0a2ecf93124a8e2dfdcf14270a762c1f4fd06fb075506ad qtserialport-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5serialport/qt5serialport.mk b/package/qt5/qt5serialport/qt5serialport.mk index 04df021b52..4fbca9ea1b 100644 --- a/package/qt5/qt5serialport/qt5serialport.mk +++ b/package/qt5/qt5serialport/qt5serialport.mk @@ -11,8 +11,13 @@ QT5SERIALPORT_DEPENDENCIES = qt5base QT5SERIALPORT_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5SERIALPORT_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5SERIALPORT_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5SERIALPORT_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5SERIALPORT_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5SERIALPORT_LICENSE = Commercial license QT5SERIALPORT_REDISTRIBUTE = NO diff --git a/package/qt5/qt5svg/Config.in b/package/qt5/qt5svg/Config.in index e1acafbfea..bc80b62674 100644 --- a/package/qt5/qt5svg/Config.in +++ b/package/qt5/qt5svg/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_QT5SVG Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5svg module. + Qt SVG provides classes for rendering and displaying SVG + drawings in widgets and on other paint devices. - http://qt.io + http://doc.qt.io/qt-5/qtsvg-index.html diff --git a/package/qt5/qt5svg/qt5svg.hash b/package/qt5/qt5svg/qt5svg.hash index 56043cfc49..6855e85cbd 100644 --- a/package/qt5/qt5svg/qt5svg.hash +++ b/package/qt5/qt5svg/qt5svg.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtsvg-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 798799319138bb40b6187f4ecc1099956a0d62148f78512e9cb085d1fa5f641f qtsvg-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtsvg-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 f7a361bf661b31ae7779513559dd0b774171911bc57f5cfb6bed6878ddc8bc4e qtsvg-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtsvg-opensource-src-5.8.0.tar.xz +sha256 9873191c211ab4da9c0bc47b1e3549f475db4d448bba3175e0f86b24eefadc89 qtsvg-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5svg/qt5svg.mk b/package/qt5/qt5svg/qt5svg.mk index ebd5cba802..08821e486e 100644 --- a/package/qt5/qt5svg/qt5svg.mk +++ b/package/qt5/qt5svg/qt5svg.mk @@ -11,8 +11,13 @@ QT5SVG_DEPENDENCIES = qt5base QT5SVG_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5SVG_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5SVG_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.LGPLv3 LICENSE.FDL +else QT5SVG_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5SVG_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5SVG_LICENSE = Commercial license QT5SVG_REDISTRIBUTE = NO diff --git a/package/qt5/qt5tools/0001-Disable-qdoc-needs-qtdeclarative.patch b/package/qt5/qt5tools/0001-Disable-qdoc-needs-qtdeclarative.patch deleted file mode 100644 index 61cbdfe6a1..0000000000 --- a/package/qt5/qt5tools/0001-Disable-qdoc-needs-qtdeclarative.patch +++ /dev/null @@ -1,30 +0,0 @@ -From acdb24783322bb6e69df61cf04df2b2e47a06ad2 Mon Sep 17 00:00:00 2001 -From: Peter Seiderer -Date: Tue, 29 Mar 2016 13:37:09 +0200 -Subject: [PATCH] Disable qdoc (needs qtdeclarative). - -Fixes: - - Project ERROR: Unknown module(s) in QT: qmldevtools-private - Makefile:63: recipe for target 'sub-qdoc-qmake_all' failed - -Signed-off-by: Peter Seiderer ---- - src/src.pro | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/src.pro b/src/src.pro -index 387d54f..494898f 100644 ---- a/src/src.pro -+++ b/src/src.pro -@@ -14,7 +14,6 @@ qtHaveModule(widgets) { - } - - SUBDIRS += linguist \ -- qdoc \ - qtplugininfo - if(!android|android_app):!ios: SUBDIRS += qtpaths - --- -2.1.4 - diff --git a/package/qt5/qt5tools/Config.in b/package/qt5/qt5tools/Config.in index 453913b8ad..20f00f6b2f 100644 --- a/package/qt5/qt5tools/Config.in +++ b/package/qt5/qt5tools/Config.in @@ -4,9 +4,10 @@ config BR2_PACKAGE_QT5TOOLS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5tools module. + Qt Tools provides tools facilitate the development + and design of applications. - http://qt.io + http://doc.qt.io/qt-5/qtmodules.html#qt-tools if BR2_PACKAGE_QT5TOOLS diff --git a/package/qt5/qt5tools/qt5tools.hash b/package/qt5/qt5tools/qt5tools.hash index 84be92d68b..541d95bef1 100644 --- a/package/qt5/qt5tools/qt5tools.hash +++ b/package/qt5/qt5tools/qt5tools.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qttools-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 0d244c61bbe5505cb94310e980b06ef13dd573511e80ccbdc060f71d5462219d qttools-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qttools-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 db2bb4318786257a47172c377d9c456d5d5ec760d5d69240a4693dc87989e1b7 qttools-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qttools-opensource-src-5.8.0.tar.xz +sha256 95ec8e76d393b6ba26ffff5041fce41946d2bf3aec1402c6533e24d9fc269d83 qttools-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5tools/qt5tools.mk b/package/qt5/qt5tools/qt5tools.mk index 6befb8b2ce..0395f96bab 100644 --- a/package/qt5/qt5tools/qt5tools.mk +++ b/package/qt5/qt5tools/qt5tools.mk @@ -20,8 +20,13 @@ QT5TOOLS_DEPENDENCIES += qt5declarative endif ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5TOOLS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5TOOLS_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.LGPLv3 LICENSE.FDL +else QT5TOOLS_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5TOOLS_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5TOOLS_LICENSE = Commercial license QT5TOOLS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5webchannel/Config.in b/package/qt5/qt5webchannel/Config.in index 218629a7cc..e3d840584f 100644 --- a/package/qt5/qt5webchannel/Config.in +++ b/package/qt5/qt5webchannel/Config.in @@ -6,6 +6,8 @@ config BR2_PACKAGE_QT5WEBCHANNEL Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5webchannel module. + Qt WebChannel enables peer-to-peer communication between + a server (QML/C++ application) and a client + (HTML/JavaScript or QML application). - http://qt.io + http://doc.qt.io/qt-5/qtwebchannel-index.html diff --git a/package/qt5/qt5webchannel/qt5webchannel.hash b/package/qt5/qt5webchannel/qt5webchannel.hash index 4f93cdbe22..7fd01efbe7 100644 --- a/package/qt5/qt5webchannel/qt5webchannel.hash +++ b/package/qt5/qt5webchannel/qt5webchannel.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtwebchannel-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 c25424935e866e77f31e5ebc50fc97eaedd4d77f6e967bfc59ce7fa6a7b4c14f qtwebchannel-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtwebchannel-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 700efdef5f51bdb77093f4db212afe275ad35a710ea08ba0e9e9cbc8f09f1a52 qtwebchannel-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtwebchannel-opensource-src-5.8.0.tar.xz +sha256 5bf5b15413baa235ee2cbfd136ea3b9303b32879b54f9f25bfb4dc96d37d0b4a qtwebchannel-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5webchannel/qt5webchannel.mk b/package/qt5/qt5webchannel/qt5webchannel.mk index 9e94914b90..9522a745ac 100644 --- a/package/qt5/qt5webchannel/qt5webchannel.mk +++ b/package/qt5/qt5webchannel/qt5webchannel.mk @@ -11,8 +11,16 @@ QT5WEBCHANNEL_DEPENDENCIES = qt5base qt5websockets QT5WEBCHANNEL_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5WEBCHANNEL_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5WEBCHANNEL_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5WEBCHANNEL_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5WEBCHANNEL_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5WEBCHANNEL_LICENSE := $(QT5WEBCHANNEL_LICENSE), BSD-3c (examples) +endif else QT5WEBCHANNEL_LICENSE = Commercial license QT5WEBCHANNEL_REDISTRIBUTE = NO @@ -62,6 +70,7 @@ define QT5WEBCHANNEL_INSTALL_TARGET_CMDS $(QT5WEBCHANNEL_INSTALL_TARGET_LIBS) $(QT5WEBCHANNEL_INSTALL_TARGET_QMLS) $(QT5WEBCHANNEL_INSTALL_TARGET_JAVASCRIPT) + $(QT5WEBCHANNEL_INSTALL_TARGET_EXAMPLES) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5webkit/0004-Fix-linking-with-libpthread.patch b/package/qt5/qt5webkit/0004-Fix-linking-with-libpthread.patch deleted file mode 100644 index b7b6791ab7..0000000000 --- a/package/qt5/qt5webkit/0004-Fix-linking-with-libpthread.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 5dd4bb67cfce812fd7686e43616e2069f354a7df Mon Sep 17 00:00:00 2001 -From: Allan Sandfeld Jensen -Date: Mon, 22 Feb 2016 10:57:32 +0100 -Subject: [PATCH] Fix linking with libpthread - -WebKit use libpthread directly but is depending on other qt modules -causing it to be linked against, which might break unless -lpthread -is last. Instead just add it explicitly after the static libraries. - -Upstream-Status: Backport from 5.7 branch - -Change-Id: I2b95cff2c96373f8dce6f95052c4fccbe1982b33 -Reviewed-by: Simon Hausmann -Signed-off-by: Jonathan Liu -Signed-off-by: Gary Bisson ---- - Tools/qmake/mkspecs/features/default_post.prf | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Tools/qmake/mkspecs/features/default_post.prf b/Tools/qmake/mkspecs/features/default_post.prf -index 67276b7..39bb3f7 100644 ---- a/Tools/qmake/mkspecs/features/default_post.prf -+++ b/Tools/qmake/mkspecs/features/default_post.prf -@@ -201,6 +201,7 @@ needToLink() { - linkAgainstLibrary($$library, $$eval(WEBKIT.$${library_identifier}.root_source_dir)) - LIBS += $$eval(WEBKIT.$${library_identifier}.dependent_libs) - } -+ posix:!darwin: LIBS += -lpthread - } - - creating_module { --- -2.7.1 - diff --git a/package/qt5/qt5webkit/Config.in b/package/qt5/qt5webkit/Config.in index 7add5f95a9..e9c11fbe6f 100644 --- a/package/qt5/qt5webkit/Config.in +++ b/package/qt5/qt5webkit/Config.in @@ -13,16 +13,18 @@ config BR2_PACKAGE_QT5WEBKIT Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5webkit module. + The Qt WebKit module provides the WebView API, which + allows QML applications to render regions of dynamic + web content. This package has been removed from the official release packages since Qt5.6.0, but it is still available for users to build it from source. This is useful for platforms without GPU since the successor (QtWebEngine) requires OpenGL support. - http://qt.io + http://doc.qt.io/archives/qt-5.5/qtwebkit-index.html comment "qt5webkit needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS - depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on !BR2_BINFMT_FLAT + depends on BR2_STATIC_LIBS + depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE + depends on !BR2_BINFMT_FLAT diff --git a/package/qt5/qt5webkit/qt5webkit.hash b/package/qt5/qt5webkit/qt5webkit.hash index d2ac7bbcc3..4431e2d163 100644 --- a/package/qt5/qt5webkit/qt5webkit.hash +++ b/package/qt5/qt5webkit/qt5webkit.hash @@ -1,2 +1,5 @@ -# locally computed -sha256 1c79843ef32313312290d4fe0b87256a9129dc44d62b01789a692981edf4d8ab qt5webkit-d2ff5a085572b1ee24dcb42ae107063f3142d14e.tar.gz +# Hash from: http://download.qt.io/snapshots/qt/5.6/5.6.2/latest_src/submodules/qtwebkit-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 528a6b8b1c5095367b26e8ce4f3a46bb739e2e9913ff4dfc6ef58a04fcd73966 qtwebkit-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtwebkit-opensource-src-5.8.0.tar.xz +sha256 79ae8660086bf92ffb0008b17566270e6477c8fa0daf9bb3ac29404fb5911bec qtwebkit-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5webkit/qt5webkit.mk b/package/qt5/qt5webkit/qt5webkit.mk index 629e40a3ec..980d2aff01 100644 --- a/package/qt5/qt5webkit/qt5webkit.mk +++ b/package/qt5/qt5webkit/qt5webkit.mk @@ -4,11 +4,12 @@ # ################################################################################ -QT5WEBKIT_VERSION = d2ff5a085572b1ee24dcb42ae107063f3142d14e -# Using GitHub since it supports downloading tarballs from random commits. -# The http://code.qt.io/cgit/qt/qtwebkit.git/ repo doesn't allow to do so. -QT5WEBKIT_SITE = $(call github,qtproject,qtwebkit,$(QT5WEBKIT_VERSION)) -QT5WEBKIT_DEPENDENCIES = qt5base sqlite host-ruby host-gperf host-bison host-flex +QT5WEBKIT_VERSION = $(QT5_VERSION) +QT5WEBKIT_SITE = $(QT5_SNAPSHOTS_SITE) +QT5WEBKIT_SOURCE = qtwebkit-opensource-src-$(QT5WEBKIT_VERSION).tar.xz +QT5WEBKIT_DEPENDENCIES = \ + host-bison host-flex host-gperf host-python host-ruby \ + qt5base sqlite QT5WEBKIT_INSTALL_STAGING = YES QT5WEBKIT_LICENSE_FILES = Source/WebCore/LICENSE-LGPL-2 Source/WebCore/LICENSE-LGPL-2.1 @@ -31,23 +32,26 @@ ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y) QT5WEBKIT_DEPENDENCIES += qt5declarative endif -# Since we get the source from git, generated header files are not included. -# qmake detects that header file generation (using the syncqt tool) must be -# done based on the existence of a .git directory (cfr. the git_build config -# option which is set in qt_build_paths.prf). -# So, to make sure that qmake detects that header files must be generated, -# create an empty .git directory. +# QtWebkit's build system uses python, but only supports python2. We work +# around this by forcing python2 early in the PATH, via a python->python2 +# symlink. +QT5WEBKIT_ENV = PATH=$(@D)/host-bin:$(BR_PATH) +define QT5WEBKIT_PYTHON2_SYMLINK + mkdir -p $(@D)/host-bin + ln -sf $(HOST_DIR)/usr/bin/python2 $(@D)/host-bin/python +endef +QT5WEBKIT_PRE_CONFIGURE_HOOKS += QT5WEBKIT_PYTHON2_SYMLINK + define QT5WEBKIT_CONFIGURE_CMDS - mkdir -p $(@D)/.git - (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake) + (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/usr/bin/qmake) endef define QT5WEBKIT_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(MAKE) -C $(@D) endef define QT5WEBKIT_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install + $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(MAKE) -C $(@D) install $(QT5_LA_PRL_FILES_FIXUP) endef diff --git a/package/qt5/qt5websockets/Config.in b/package/qt5/qt5websockets/Config.in index 385a07c9fa..0cfde91c8b 100644 --- a/package/qt5/qt5websockets/Config.in +++ b/package/qt5/qt5websockets/Config.in @@ -6,6 +6,9 @@ config BR2_PACKAGE_QT5WEBSOCKETS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5websockets module. + The Qt WebSockets module provides C++ and QML interfaces + that enable Qt applications to act as a server that can + process WebSocket requests, or a client that can + consume data received from the server, or both. - http://qt.io + http://doc.qt.io/qt-5/qtwebsockets-index.html diff --git a/package/qt5/qt5websockets/qt5websockets.hash b/package/qt5/qt5websockets/qt5websockets.hash index d803285575..a91e0842c7 100644 --- a/package/qt5/qt5websockets/qt5websockets.hash +++ b/package/qt5/qt5websockets/qt5websockets.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtwebsockets-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 268ab869fe3d0d22abd9668851155db79aff2f386bc448051b6ef477841d719f qtwebsockets-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtwebsockets-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 3cd9d4bbff8e6be5e252f00fc9ecb9ac2d8a193020288c7d1e82583daeb5ba35 qtwebsockets-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtwebsockets-opensource-src-5.8.0.tar.xz +sha256 aa110af297d0d3239f346c3ee0cd43621adf463eb62a04941bbfe3fcccb845f5 qtwebsockets-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5websockets/qt5websockets.mk b/package/qt5/qt5websockets/qt5websockets.mk index f1200c283a..975ea64388 100644 --- a/package/qt5/qt5websockets/qt5websockets.mk +++ b/package/qt5/qt5websockets/qt5websockets.mk @@ -11,8 +11,16 @@ QT5WEBSOCKETS_DEPENDENCIES = qt5base QT5WEBSOCKETS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5WEBSOCKETS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools) +QT5WEBSOCKETS_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 +else QT5WEBSOCKETS_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3 QT5WEBSOCKETS_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 +endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5WEBSOCKETS_LICENSE := $(QT5WEBSOCKETS_LICENSE), BSD-3c (examples) +endif else QT5WEBSOCKETS_LICENSE = Commercial license QT5WEBSOCKETS_REDISTRIBUTE = NO @@ -56,6 +64,7 @@ endif define QT5WEBSOCKETS_INSTALL_TARGET_CMDS $(QT5WEBSOCKETS_INSTALL_TARGET_LIBS) $(QT5WEBSOCKETS_INSTALL_TARGET_QMLS) + $(QT5WEBSOCKETS_INSTALL_TARGET_EXAMPLES) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5x11extras/Config.in b/package/qt5/qt5x11extras/Config.in index 6fc2c0ade6..9c514cdd03 100644 --- a/package/qt5/qt5x11extras/Config.in +++ b/package/qt5/qt5x11extras/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_QT5X11EXTRAS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5x11extras module. + Qt X11 Extras enables the Qt programmer to write + applications for the Linux/X11 platform. - http://qt.io + http://doc.qt.io/qt-5/qtx11extras-index.html diff --git a/package/qt5/qt5x11extras/qt5x11extras.hash b/package/qt5/qt5x11extras/qt5x11extras.hash index 5f5481e0bd..eb0dc6c254 100644 --- a/package/qt5/qt5x11extras/qt5x11extras.hash +++ b/package/qt5/qt5x11extras/qt5x11extras.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtx11extras-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 47ed768d02bc09edfa20332bc58c4188b9529235cdb616802ef775d6e7613425 qtx11extras-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtx11extras-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 71ffde1cfaeec310677b69ecd16cb5992e8885cf3e73b4cec7d6e7a115b40ced qtx11extras-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtx11extras-opensource-src-5.8.0.tar.xz +sha256 bed7f2b5123a9849ec94afa67db5f296e6f527c6330f47a680c83586d3a4280e qtx11extras-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5x11extras/qt5x11extras.mk b/package/qt5/qt5x11extras/qt5x11extras.mk index a0e1209868..996056b719 100644 --- a/package/qt5/qt5x11extras/qt5x11extras.mk +++ b/package/qt5/qt5x11extras/qt5x11extras.mk @@ -11,8 +11,13 @@ QT5X11EXTRAS_DEPENDENCIES = qt5base QT5X11EXTRAS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5X11EXTRAS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5X11EXTRAS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5X11EXTRAS_LICENSE = GPLv2 or GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5X11EXTRAS_LICENSE_FILES = LICENSE.GPLv2 LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif else QT5X11EXTRAS_LICENSE = Commercial license QT5X11EXTRAS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5xmlpatterns/Config.in b/package/qt5/qt5xmlpatterns/Config.in index 8c82656c5d..dd8b54eba1 100644 --- a/package/qt5/qt5xmlpatterns/Config.in +++ b/package/qt5/qt5xmlpatterns/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_QT5XMLPATTERNS Qt is a cross-platform application and UI framework for developers using C++. - This package corresponds to the qt5xmlpatterns module. + The Qt XML Patterns module provides support for XPath, + XQuery, XSLT, and XML Schema validation. - http://qt.io + http://doc.qt.io/qt-5/qtxmlpatterns-index.html diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash index ffe2a4049a..c1bb6637db 100644 --- a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash +++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash @@ -1,2 +1,5 @@ -# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/qtxmlpatterns-opensource-src-5.6.0.tar.xz.mirrorlist -sha256 baed1b3bd3f010b8c4a96b4ca7a595b665d43d2e5758b55a364dbc9f2ac819d4 qtxmlpatterns-opensource-src-5.6.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.6/5.6.2/submodules/qtxmlpatterns-opensource-src-5.6.2.tar.xz.mirrorlist +sha256 7c6df3eebf188d8ce6822a22cebbc63da5ac27047cf1bd7236d5b988244782cc qtxmlpatterns-opensource-src-5.6.2.tar.xz + +# Hash from: http://download.qt.io/official_releases/qt/5.8/5.8.0/submodules/qtxmlpatterns-opensource-src-5.8.0.tar.xz +sha256 7bffa65ea52e54fb1314b45222888612d55eaf51a936a6119b8756266439da04 qtxmlpatterns-opensource-src-5.8.0.tar.xz diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk index 31477a7c0b..e5981af532 100644 --- a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk +++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk @@ -11,8 +11,16 @@ QT5XMLPATTERNS_DEPENDENCIES = qt5base QT5XMLPATTERNS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) +QT5XMLPATTERNS_LICENSE = GPLv2+ or LGPLv3, GPLv3 with exception(tools), GFDLv1.3 (docs) +QT5XMLPATTERNS_LICENSE_FILES = LICENSE.GPL2 LICENSE.GPLv3 LICENSE.GPL3-EXCEPT LICENSE.LGPLv3 LICENSE.FDL +else QT5XMLPATTERNS_LICENSE = GPLv3 or LGPLv2.1 with exception or LGPLv3, GFDLv1.3 (docs) QT5XMLPATTERNS_LICENSE_FILES = LICENSE.GPLv3 LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.FDL +endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +QT5XMLPATTERNS_LICENSE := $(QT5XMLPATTERNS_LICENSE), BSD-3c (examples) +endif else QT5XMLPATTERNS_LICENSE = Commercial license QT5XMLPATTERNS_REDISTRIBUTE = NO @@ -32,9 +40,20 @@ define QT5XMLPATTERNS_INSTALL_STAGING_CMDS endef ifeq ($(BR2_STATIC_LIBS),) -define QT5XMLPATTERNS_INSTALL_TARGET_CMDS +define QT5XMLPATTERNS_INSTALL_TARGET_LIBS cp -dpf $(STAGING_DIR)/usr/lib/libQt5XmlPatterns*.so.* $(TARGET_DIR)/usr/lib endef endif +ifeq ($(BR2_PACKAGE_QT5BASE_EXAMPLES),y) +define QT5XMLPATTERNS_INSTALL_TARGET_EXAMPLES + cp -dpfr $(STAGING_DIR)/usr/lib/qt/examples/xmlpatterns $(TARGET_DIR)/usr/lib/qt/examples/ +endef +endif + +define QT5XMLPATTERNS_INSTALL_TARGET_CMDS + $(QT5XMLPATTERNS_INSTALL_TARGET_LIBS) + $(QT5XMLPATTERNS_INSTALL_TARGET_EXAMPLES) +endef + $(eval $(generic-package)) diff --git a/package/qtuio/qtuio.hash b/package/qtuio/qtuio.hash new file mode 100644 index 0000000000..bb9bdb1848 --- /dev/null +++ b/package/qtuio/qtuio.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 65308adb59e910d552d4885772c7f99c7d19dec5e924d852a5a39a1972f8d223 qtuio-abe4973ff60654aad9df7037c4ca15c45f811d24.tar.gz diff --git a/package/qtuio/qtuio.mk b/package/qtuio/qtuio.mk index 5fa10a76b7..6238b50f8b 100644 --- a/package/qtuio/qtuio.mk +++ b/package/qtuio/qtuio.mk @@ -32,7 +32,7 @@ endef ifeq ($(BR2_QTUIO_EXAMPLES),y) define QTUIO_BUILD_EXAMPLES for example in $(QTUIO_EXAMPLES) ; do \ - $(MAKE) -C $(@D)/examples/$${example} || exit 1; \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/examples/$${example} || exit 1; \ done endef endif diff --git a/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch b/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch new file mode 100644 index 0000000000..6990f47cda --- /dev/null +++ b/package/quagga/0003-lib-memory-fix-indirect-static-link-with-zlib.patch @@ -0,0 +1,108 @@ +From 008dd9771057dbbd7ce971c43bce2a0b05e2cf97 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Sun, 21 Aug 2016 08:56:57 +0300 +Subject: [PATCH] lib/memory: fix indirect static link with zlib + +quagga SNMP support depends on netsnmp, that optionally depends on OpenSSL, +which in turn requires zlib. zlib exports the 'zcalloc' symbol, which collides +with a function of the same name in memory.c. This is not a problem when +linking dynamically, since quagga does not use zlib directly. But static +linking fails with the error: + + CCLD ospfd +.../output/host/usr/mips64el-buildroot-linux-uclibc/sysroot/usr/lib/libz.a(zutil.o): In function `zcalloc': +zutil.c:(.text+0x48): multiple definition of `zcalloc' +.../output/build/quagga-1.0.20160315/lib/.libs/libzebra.a(memory.o):memory.c:(.text+0x1a0): first defined here + +Rename 'zcalloc' to 'zzcalloc' to avoid symbol collision. + +Signed-off-by: Baruch Siach +--- +Patch status: posted upstream +https://lists.quagga.net/pipermail/quagga-dev/2016-August/016109.html + + lib/memory.c | 14 ++++++++------ + lib/memory.h | 4 ++-- + 2 files changed, 10 insertions(+), 8 deletions(-) + +diff --git a/lib/memory.c b/lib/memory.c +index 269520d5a435..b1680a5e6f07 100644 +--- a/lib/memory.c ++++ b/lib/memory.c +@@ -80,9 +80,11 @@ zmalloc (int type, size_t size) + + /* + * Allocate memory as in zmalloc, and also clear the memory. ++ * Add an extra 'z' prefix to function name to avoid collision when linking ++ * statically with zlib that exports the 'zcalloc' symbol. + */ + void * +-zcalloc (int type, size_t size) ++zzcalloc (int type, size_t size) + { + void *memory; + +@@ -97,9 +99,9 @@ zcalloc (int type, size_t size) + } + + /* +- * Given a pointer returned by zmalloc or zcalloc, free it and ++ * Given a pointer returned by zmalloc or zzcalloc, free it and + * return a pointer to a new size, basically acting like realloc(). +- * Requires: ptr was returned by zmalloc, zcalloc, or zrealloc with the ++ * Requires: ptr was returned by zmalloc, zzcalloc, or zrealloc with the + * same type. + * Effects: Returns a pointer to the new memory, or aborts. + */ +@@ -109,7 +111,7 @@ zrealloc (int type, void *ptr, size_t size) + void *memory; + + if (ptr == NULL) /* is really alloc */ +- return zcalloc(type, size); ++ return zzcalloc(type, size); + + memory = realloc (ptr, size); + if (memory == NULL) +@@ -122,7 +124,7 @@ zrealloc (int type, void *ptr, size_t size) + + /* + * Free memory allocated by z*alloc or zstrdup. +- * Requires: ptr was returned by zmalloc, zcalloc, or zrealloc with the ++ * Requires: ptr was returned by zmalloc, zzcalloc, or zrealloc with the + * same type. + * Effects: The memory is freed and may no longer be referenced. + */ +@@ -196,7 +198,7 @@ mtype_zcalloc (const char *file, int line, int type, size_t size) + mstat[type].c_calloc++; + mstat[type].t_calloc++; + +- memory = zcalloc (type, size); ++ memory = zzcalloc (type, size); + mtype_log ("xcalloc", memory, file, line, type); + + return memory; +diff --git a/lib/memory.h b/lib/memory.h +index 23962235dbfe..501352993d21 100644 +--- a/lib/memory.h ++++ b/lib/memory.h +@@ -56,7 +56,7 @@ extern struct mlist mlists[]; + mtype_zstrdup (__FILE__, __LINE__, (mtype), (str)) + #else + #define XMALLOC(mtype, size) zmalloc ((mtype), (size)) +-#define XCALLOC(mtype, size) zcalloc ((mtype), (size)) ++#define XCALLOC(mtype, size) zzcalloc ((mtype), (size)) + #define XREALLOC(mtype, ptr, size) zrealloc ((mtype), (ptr), (size)) + #define XFREE(mtype, ptr) do { \ + zfree ((mtype), (ptr)); \ +@@ -67,7 +67,7 @@ extern struct mlist mlists[]; + + /* Prototypes of memory function. */ + extern void *zmalloc (int type, size_t size); +-extern void *zcalloc (int type, size_t size); ++extern void *zzcalloc (int type, size_t size); + extern void *zrealloc (int type, void *ptr, size_t size); + extern void zfree (int type, void *ptr); + extern char *zstrdup (int type, const char *str); +-- +2.8.1 + diff --git a/package/quagga/Config.in b/package/quagga/Config.in index 56b8cad93c..4eacaf047a 100644 --- a/package/quagga/Config.in +++ b/package/quagga/Config.in @@ -25,9 +25,9 @@ config BR2_PACKAGE_QUAGGA_TCP_ZEBRA on different hosts. config BR2_PACKAGE_QUAGGA_BGPD - bool "BPGv4+ protocol" + bool "BGPv4+ protocol" help - Build bpgd daemon. + Build bgpd daemon. config BR2_PACKAGE_QUAGGA_BGP_ANNOUNCE bool "BGP route announcement" diff --git a/package/quagga/quagga.hash b/package/quagga/quagga.hash index 23a0a8245b..6da37cf806 100644 --- a/package/quagga/quagga.hash +++ b/package/quagga/quagga.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 d284af5dd875dbba90ab875d40db5d68fdc9ede17a76f2af525f85344be56767 quagga-1.0.20160315.tar.xz +sha256 b5a94e5bdad3062e04595a5692b8cc435f0a85102f75dfdca0a06d093b4ef63f quagga-1.1.1.tar.gz diff --git a/package/quagga/quagga.mk b/package/quagga/quagga.mk index 22e90add2c..c17ceaade3 100644 --- a/package/quagga/quagga.mk +++ b/package/quagga/quagga.mk @@ -4,10 +4,9 @@ # ################################################################################ -QUAGGA_VERSION = 1.0.20160315 -QUAGGA_SOURCE = quagga-$(QUAGGA_VERSION).tar.xz +QUAGGA_VERSION = 1.1.1 QUAGGA_SITE = http://download.savannah.gnu.org/releases/quagga -QUAGGA_DEPENDENCIES = host-gawk +QUAGGA_DEPENDENCIES = host-gawk host-pkgconf QUAGGA_LICENSE = GPLv2+ QUAGGA_LICENSE_FILES = COPYING @@ -29,6 +28,13 @@ else QUAGGA_CONF_OPTS += --disable-capabilities endif +ifeq ($(BR2_PACKAGE_PROTOBUF_C),y) +QUAGGA_CONF_OPTS += --enable-protobuf +QUAGGA_DEPENDENCIES += protobuf-c +else +QUAGGA_CONF_OPTS += --disable-protobuf +endif + QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_ZEBRA),--enable-zebra,--disable-zebra) QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_BGPD),--enable-bgpd,--disable-bgpd) QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_RIPD),--enable-ripd,--disable-ripd) @@ -68,13 +74,15 @@ else QUAGGA_CONF_OPTS += --disable-vtysh endif -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) QUAGGA_CONF_OPTS += --disable-pie endif define QUAGGA_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 644 package/quagga/quagga_tmpfiles.conf \ $(TARGET_DIR)/usr/lib/tmpfiles.d/quagga.conf + $(INSTALL) -D -m 644 package/quagga/quagga@.service \ + $(TARGET_DIR)/usr/lib/systemd/system/quagga@.service endef $(eval $(autotools-package)) diff --git a/package/quagga/quagga@.service b/package/quagga/quagga@.service new file mode 100644 index 0000000000..797af32e12 --- /dev/null +++ b/package/quagga/quagga@.service @@ -0,0 +1,17 @@ +[Unit] +Description=Quagga %i routing daemon +ConditionFileIsExecutable=/usr/sbin/%i +Wants=quagga@zebra.service + +[Service] +Type=simple +EnvironmentFile=/etc/default/quagga-%i +PrivateTmp=true +# Systemd doesn't like having %i in the executable path. +ExecStart=/usr/bin/env /usr/sbin/%i $OPTS -f /etc/quagga/%i.conf +ExecReload=/bin/kill -HUP $MAINPID +Restart=on-failure + +[Install] +WantedBy=multi-user.target + diff --git a/package/quota/0003-remove-non-posix-types.patch b/package/quota/0003-remove-non-posix-types.patch new file mode 100644 index 0000000000..869c85f23e --- /dev/null +++ b/package/quota/0003-remove-non-posix-types.patch @@ -0,0 +1,200 @@ +Use proper C99 integer types + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +[Thomas: borrowed from OpenEmbedded.] +Signed-off-by: Thomas Petazzoni + +Index: quota-tools/bylabel.c +=================================================================== +--- quota-tools.orig/bylabel.c ++++ quota-tools/bylabel.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include "bylabel.h" + #include "common.h" +@@ -37,32 +38,32 @@ static struct uuidCache_s { + + #define EXT2_SUPER_MAGIC 0xEF53 + struct ext2_super_block { +- u_char s_dummy1[56]; +- u_char s_magic[2]; +- u_char s_dummy2[46]; +- u_char s_uuid[16]; +- u_char s_volume_name[16]; ++ uint8_t s_dummy1[56]; ++ uint8_t s_magic[2]; ++ uint8_t s_dummy2[46]; ++ uint8_t s_uuid[16]; ++ uint8_t s_volume_name[16]; + }; + +-#define ext2magic(s) ((uint) s.s_magic[0] + (((uint) s.s_magic[1]) << 8)) ++#define ext2magic(s) ((uint32_t) s.s_magic[0] + (((uint32_t) s.s_magic[1]) << 8)) + + #define XFS_SUPER_MAGIC "XFSB" + #define XFS_SUPER_MAGIC2 "BSFX" + struct xfs_super_block { +- u_char s_magic[4]; +- u_char s_dummy[28]; +- u_char s_uuid[16]; +- u_char s_dummy2[60]; +- u_char s_fsname[12]; ++ uint8_t s_magic[4]; ++ uint8_t s_dummy[28]; ++ uint8_t s_uuid[16]; ++ uint8_t s_dummy2[60]; ++ uint8_t s_fsname[12]; + }; + + #define REISER_SUPER_MAGIC "ReIsEr2Fs" + struct reiserfs_super_block { +- u_char s_dummy1[52]; +- u_char s_magic[10]; +- u_char s_dummy2[22]; +- u_char s_uuid[16]; +- u_char s_volume_name[16]; ++ uint8_t s_dummy1[52]; ++ uint8_t s_magic[10]; ++ uint8_t s_dummy2[22]; ++ uint8_t s_uuid[16]; ++ uint8_t s_volume_name[16]; + }; + + static inline unsigned short swapped(unsigned short a) +@@ -222,7 +223,7 @@ static char *get_spec_by_x(int n, const + return NULL; + } + +-static u_char fromhex(char c) ++static uint8_t fromhex(char c) + { + if (isdigit(c)) + return (c - '0'); +@@ -234,7 +235,7 @@ static u_char fromhex(char c) + + static char *get_spec_by_uuid(const char *s) + { +- u_char uuid[16]; ++ uint8_t uuid[16]; + int i; + + if (strlen(s) != 36 || s[8] != '-' || s[13] != '-' || s[18] != '-' || s[23] != '-') +Index: quota-tools/quot.c +=================================================================== +--- quota-tools.orig/quot.c ++++ quota-tools/quot.c +@@ -47,6 +47,7 @@ + #include + #include + #include ++#include + + #include "pot.h" + #include "quot.h" +@@ -56,8 +57,8 @@ + #include "quotasys.h" + + #define TSIZE 500 +-static __uint64_t sizes[TSIZE]; +-static __uint64_t overflow; ++static uint64_t sizes[TSIZE]; ++static uint64_t overflow; + + static int aflag; + static int cflag; +@@ -72,7 +73,7 @@ static time_t now; + char *progname; + + static void mounttable(void); +-static char *idname(__uint32_t, int); ++static char *idname(uint32_t, int); + static void report(const char *, const char *, int); + static void creport(const char *, const char *); + +@@ -173,7 +174,7 @@ static int qcmp(du_t * p1, du_t * p2) + static void creport(const char *file, const char *fsdir) + { + int i; +- __uint64_t t = 0; ++ uint64_t t = 0; + + printf(_("%s (%s):\n"), file, fsdir); + for (i = 0; i < TSIZE - 1; i++) +@@ -219,7 +220,7 @@ static void report(const char *file, con + } + } + +-static idcache_t *getnextent(int type, __uint32_t id, int byid) ++static idcache_t *getnextent(int type, uint32_t id, int byid) + { + struct passwd *pw; + struct group *gr; +@@ -240,7 +241,7 @@ static idcache_t *getnextent(int type, _ + return &idc; + } + +-static char *idname(__uint32_t id, int type) ++static char *idname(uint32_t id, int type) + { + idcache_t *ncp, *idp; + static idcache_t nc[2][NID]; +@@ -286,8 +287,8 @@ static void acctXFS(xfs_bstat_t *p) + { + register du_t *dp; + du_t **hp; +- __uint64_t size; +- __uint32_t i, id; ++ uint64_t size; ++ uint32_t i, id; + + if ((p->bs_mode & S_IFMT) == 0) + return; +Index: quota-tools/quot.h +=================================================================== +--- quota-tools.orig/quot.h ++++ quota-tools/quot.h +@@ -35,18 +35,18 @@ + #define SEC24HR (60*60*24) /* seconds per day */ + + typedef struct { +- __uint32_t id; ++ uint32_t id; + char name[UT_NAMESIZE + 1]; + } idcache_t; + + typedef struct du { + struct du *next; +- __uint64_t blocks; +- __uint64_t blocks30; +- __uint64_t blocks60; +- __uint64_t blocks90; +- __uint64_t nfiles; +- __uint32_t id; ++ uint64_t blocks; ++ uint64_t blocks30; ++ uint64_t blocks60; ++ uint64_t blocks90; ++ uint64_t nfiles; ++ uint32_t id; + } du_t; + + #define NDU 60000 +Index: quota-tools/rquota_server.c +=================================================================== +--- quota-tools.orig/rquota_server.c ++++ quota-tools/rquota_server.c +@@ -60,7 +60,7 @@ extern char nfs_pseudoroot[PATH_MAX]; + */ + extern struct authunix_parms *unix_cred; + +-int in_group(gid_t * gids, u_int len, gid_t gid) ++int in_group(gid_t * gids, uint32_t len, gid_t gid) + { + gid_t *gidsp = gids + len; + diff --git a/package/quota/0004-import-sys-cdefs.patch b/package/quota/0004-import-sys-cdefs.patch new file mode 100644 index 0000000000..9acd1fe4f9 --- /dev/null +++ b/package/quota/0004-import-sys-cdefs.patch @@ -0,0 +1,18 @@ +Add missing include + +quota.h uses the __P definition, so it must include . + +Signed-off-by: Thomas Petazzoni + +Index: b/quota.h +=================================================================== +--- a/quota.h ++++ b/quota.h +@@ -2,6 +2,7 @@ + #define GUARD_QUOTA_H + + #include ++#include + + typedef u_int32_t qid_t; /* Type in which we store ids in memory */ + typedef int64_t qsize_t; /* Type in which we store size limitations */ diff --git a/package/quota/0005-include-fcntl.patch b/package/quota/0005-include-fcntl.patch new file mode 100644 index 0000000000..fe7ea98831 --- /dev/null +++ b/package/quota/0005-include-fcntl.patch @@ -0,0 +1,20 @@ +Include to get loff_t definition + +Fixes the following build issue with musl: + +dqblk_v2.h:32:2: error: unknown type name ‘loff_t’ + +Signed-off-by: Thomas Petazzoni + +Index: b/dqblk_v2.h +=================================================================== +--- a/dqblk_v2.h ++++ b/dqblk_v2.h +@@ -8,6 +8,7 @@ + #define GUARD_DQBLK_V2_H + + #include ++#include + #include "quota_tree.h" + + #define Q_V2_GETQUOTA 0x0D00 /* Get limits and usage */ diff --git a/package/quota/quota.mk b/package/quota/quota.mk index c30a2bd85e..a1e343a388 100644 --- a/package/quota/quota.mk +++ b/package/quota/quota.mk @@ -21,6 +21,11 @@ endif ifeq ($(BR2_PACKAGE_E2FSPROGS),y) QUOTA_DEPENDENCIES += e2fsprogs QUOTA_CONF_OPTS += --enable-ext2direct +# quote does not use pkg-config to find e2fsprogs, so it does not know it +# may require -pthreads in case of static build +ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) +QUOTA_LIBS += -pthread +endif else QUOTA_CONF_OPTS += --disable-ext2direct endif diff --git a/package/qwt/Config.in b/package/qwt/Config.in index 810bd754ba..a678637b6c 100644 --- a/package/qwt/Config.in +++ b/package/qwt/Config.in @@ -29,7 +29,8 @@ config BR2_PACKAGE_QWT_OPENGL bool "OpenGL support" depends on (BR2_PACKAGE_HAS_LIBGLES && BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_QT) || \ (BR2_PACKAGE_QT5_GL_AVAILABLE && BR2_PACKAGE_QT5) - select BR2_PACKAGE_QT_OPENGL_ES if BR2_PACKAGE_QT + select BR2_PACKAGE_QT_OPENGL if BR2_PACKAGE_QT + select BR2_PACKAGE_QT5BASE_OPENGL if BR2_PACKAGE_QT5 select BR2_PACKAGE_QT5BASE_OPENGL_LIB if BR2_PACKAGE_QT5 endif diff --git a/package/qwt/qwt.hash b/package/qwt/qwt.hash index fc78b753b4..a0077a6804 100644 --- a/package/qwt/qwt.hash +++ b/package/qwt/qwt.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 2b08f18d1d3970e7c3c6096d850f17aea6b54459389731d3ce715d193e243d0c qwt-6.1.2.tar.bz2 +# From https://sourceforge.net/projects/qwt/files/qwt/6.1.3/ +sha1 90ec21bc42f7fae270482e1a0df3bc79cb10e5c7 qwt-6.1.3.tar.bz2 +md5 19d1f5fa5e22054d22ee3accc37c54ba qwt-6.1.3.tar.bz2 diff --git a/package/qwt/qwt.mk b/package/qwt/qwt.mk index 0bea5f35a3..d1bb5245b1 100644 --- a/package/qwt/qwt.mk +++ b/package/qwt/qwt.mk @@ -4,7 +4,7 @@ # ################################################################################ -QWT_VERSION = 6.1.2 +QWT_VERSION = 6.1.3 QWT_SOURCE = qwt-$(QWT_VERSION).tar.bz2 QWT_SITE = http://downloads.sourceforge.net/project/qwt/qwt/$(QWT_VERSION) QWT_INSTALL_STAGING = YES @@ -54,13 +54,13 @@ endef # that when building with qmake, -L$(STAGING_DIR)/usr/lib is used and # not -L/usr/lib. define QWT_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) install INSTALL_ROOT=$(STAGING_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install INSTALL_ROOT=$(STAGING_DIR) $(SED) "s%QWT_INSTALL_PREFIX = .*%QWT_INSTALL_PREFIX = $(STAGING_DIR)/usr%" \ $(STAGING_DIR)/usr/mkspecs/features/qwtconfig.pri endef define QWT_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) install INSTALL_ROOT=$(TARGET_DIR) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install INSTALL_ROOT=$(TARGET_DIR) rm -Rf $(TARGET_DIR)/usr/mkspecs endef diff --git a/package/rabbitmq-c/Config.in b/package/rabbitmq-c/Config.in index 0d08233a70..b330c90474 100644 --- a/package/rabbitmq-c/Config.in +++ b/package/rabbitmq-c/Config.in @@ -1,9 +1,6 @@ config BR2_PACKAGE_RABBITMQ_C bool "rabbitmq-c" depends on BR2_TOOLCHAIN_HAS_THREADS - # too old uClibc, not providing posix_spawn functions - # http://autobuild.buildroot.net/results/a6c3e79c61c5a535970d03bf37b068349f766a7f/ - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX help This is a C-language AMQP client library for use with v2.0+ of the RabbitMQ broker. @@ -12,4 +9,3 @@ config BR2_PACKAGE_RABBITMQ_C comment "rabbitmq-c needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX diff --git a/package/rabbitmq-server/Config.in b/package/rabbitmq-server/Config.in new file mode 100644 index 0000000000..6a323aff92 --- /dev/null +++ b/package/rabbitmq-server/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_RABBITMQ_SERVER + bool "rabbitmq-server" + depends on BR2_PACKAGE_ERLANG + select BR2_PACKAGE_LIBXSLT + select BR2_PACKAGE_OPENSSL # Required to build Erlang's crypto and ssl + # applications + help + High-performance AMQP-compliant message broker written in Erlang. + + http://www.rabbitmq.com + +comment "rabbitmq-server needs erlang" + depends on !BR2_PACKAGE_ERLANG diff --git a/package/rabbitmq-server/S50rabbitmq-server b/package/rabbitmq-server/S50rabbitmq-server new file mode 100755 index 0000000000..faf248ded2 --- /dev/null +++ b/package/rabbitmq-server/S50rabbitmq-server @@ -0,0 +1,28 @@ +#!/bin/sh +# +# Start/stop rabbitmq-server +# + +INSTALLUSER=rabbitmq +RUNDIR=/var/run/rabbitmq + +case "$1" in + start) + install -d -o "$INSTALLUSER" -g "$INSTALLUSER" "$RUNDIR" || exit 1 + printf "Starting rabbitmq-server: " + su -c "/usr/sbin/rabbitmq-server -detached" - "$INSTALLUSER" 2>/dev/null + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + stop) + printf "Stopping rabbitmq-server: " + su -c "/usr/sbin/rabbitmqctl stop" - "$INSTALLUSER" + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + restart|reload) + "$0" stop || true + "$0" start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac diff --git a/package/rabbitmq-server/rabbitmq-server.hash b/package/rabbitmq-server/rabbitmq-server.hash new file mode 100644 index 0000000000..3cd412dd0f --- /dev/null +++ b/package/rabbitmq-server/rabbitmq-server.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 395689bcf57fd48aed452fcd43ff9a992de40067d3ea5c44e14680d69db7b78e rabbitmq-server-3.6.6.tar.xz diff --git a/package/rabbitmq-server/rabbitmq-server.mk b/package/rabbitmq-server/rabbitmq-server.mk new file mode 100644 index 0000000000..d55a8cc47c --- /dev/null +++ b/package/rabbitmq-server/rabbitmq-server.mk @@ -0,0 +1,55 @@ +############################################################# +# +# rabbitmq-server +# +############################################################# + +RABBITMQ_SERVER_VERSION = 3.6.6 +RABBITMQ_SERVER_SITE = http://www.rabbitmq.com/releases/rabbitmq-server/v$(RABBITMQ_SERVER_VERSION) +RABBITMQ_SERVER_SOURCE = rabbitmq-server-$(RABBITMQ_SERVER_VERSION).tar.xz +RABBITMQ_SERVER_LICENSE = MPLv1.1, Apache-2.0, BSD-2c, EPL, MIT, MPLv2.0 +RABBITMQ_SERVER_LICENSE_FILES = LICENSE-MPL-RabbitMQ \ + LICENSE LICENSE-APACHE2-ExplorerCanvas \ + LICENSE-APL2-Rebar LICENSE-APL2-Stomp-Websocket \ + LICENSE-BSD-base64js LICENSE-BSD-glMatrix \ + LICENSE-EPL-OTP LICENSE-MIT-EJS10 \ + LICENSE-MIT-Flot LICENSE-MIT-jQuery164 \ + LICENSE-MIT-Mochi LICENSE-MIT-Mochiweb \ + LICENSE-MIT-Sammy060 LICENSE-MIT-SockJS \ + LICENSE-MPL2 +RABBITMQ_SERVER_DEPENDENCIES = host-libxslt host-zip erlang libxslt +RABBITMQ_SERVER_TARGET_BINS = rabbitmq-plugins rabbitmq-server rabbitmqctl rabbitmq-env rabbitmq-defaults + +define RABBITMQ_SERVER_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define RABBITMQ_SERVER_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=$(TARGET_DIR)/usr -C $(@D) install + + for bin in $(RABBITMQ_SERVER_TARGET_BINS); do \ + ln -sf ../lib/erlang/lib/rabbitmq_server-$(RABBITMQ_SERVER_VERSION)/sbin/$$bin \ + $(TARGET_DIR)/usr/sbin/$$bin; \ + done +endef + +define RABBITMQ_SERVER_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/rabbitmq-server/rabbitmq-server.service \ + $(TARGET_DIR)/usr/lib/systemd/system/rabbitmq-server.service + + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + + ln -fs ../../../../usr/lib/systemd/system/rabbitmq-server.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/rabbitmq-server.service +endef + +define RABBITMQ_SERVER_INSTALL_INIT_SYSV + $(INSTALL) -D -m 0755 package/rabbitmq-server/S50rabbitmq-server \ + $(TARGET_DIR)/etc/init.d/S50rabbitmq-server +endef + +define RABBITMQ_SERVER_USERS + rabbitmq -1 rabbitmq -1 * /var/lib/rabbitmq /bin/sh - rabbitmq-server daemon +endef + +$(eval $(generic-package)) diff --git a/package/rabbitmq-server/rabbitmq-server.service b/package/rabbitmq-server/rabbitmq-server.service new file mode 100644 index 0000000000..268b4bdcd2 --- /dev/null +++ b/package/rabbitmq-server/rabbitmq-server.service @@ -0,0 +1,15 @@ +[Unit] +Description=RabbitMQ Messaging Server +After=syslog.target network.target + +[Service] +Type=simple +User=rabbitmq +Group=rabbitmq +Environment=HOME=/var/lib/rabbitmq +WorkingDirectory=/var/lib/rabbitmq +ExecStart=/usr/sbin/rabbitmq-server +ExecStop=/usr/sbin/rabbitmqctl stop + +[Install] +WantedBy=multi-user.target diff --git a/package/racehound/Config.in b/package/racehound/Config.in index 6f62f81c55..2d1ccb8381 100644 --- a/package/racehound/Config.in +++ b/package/racehound/Config.in @@ -29,7 +29,7 @@ comment "racehound needs an Linux kernel >= 3.14 to be built" depends on !BR2_LINUX_KERNEL depends on BR2_i386 || BR2_x86_64 -comment "racehound needs a uClibc or (e)glibc toolchain w/ C++, wchar, dynamic library" +comment "racehound needs a uClibc or glibc toolchain w/ C++, wchar, dynamic library" depends on BR2_i386 || BR2_x86_64 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/racehound/racehound.hash b/package/racehound/racehound.hash new file mode 100644 index 0000000000..d9a7f061f7 --- /dev/null +++ b/package/racehound/racehound.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 935bc4a7c7b645dee5b905f6e97d0db3f0ac4f48e71d15f4e3982811017ac43c racehound-f09f06fcc3c77c8c5541be3ba5be80aa8148ce0c.tar.gz diff --git a/package/rapidjson/rapidjson.hash b/package/rapidjson/rapidjson.hash new file mode 100644 index 0000000000..bde8319cd8 --- /dev/null +++ b/package/rapidjson/rapidjson.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e rapidjson-v1.1.0.tar.gz diff --git a/package/rapidjson/rapidjson.mk b/package/rapidjson/rapidjson.mk index 5da407b79f..d06f52962e 100644 --- a/package/rapidjson/rapidjson.mk +++ b/package/rapidjson/rapidjson.mk @@ -4,7 +4,7 @@ # ################################################################################ -RAPIDJSON_VERSION = v1.0.2 +RAPIDJSON_VERSION = v1.1.0 RAPIDJSON_SITE = $(call github,miloyip,rapidjson,$(RAPIDJSON_VERSION)) RAPIDJSON_LICENSE = MIT RAPIDJSON_LICENSE_FILES = license.txt diff --git a/package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch b/package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch new file mode 100644 index 0000000000..fcf1b3cce6 --- /dev/null +++ b/package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch @@ -0,0 +1,38 @@ +[PATCH] ensure internal print operations are declared before use + +Stock rapidxml-1.13 does not allow implementers of the +`rapidxml_print.hpp` header to build under GCC 4.7 (or newer) due to +compliation issues. This is a result of "Name lookup changes" introduced +in GCC 4.7 [1]. The following adds forward declarations required to +compile with GCC 4.7+. + +This issue has been mentioned upstream [2], but it has yet to be fixed +in official sources. + +[1]: https://gcc.gnu.org/gcc-4.7/porting_to.html +[2]: https://sourceforge.net/p/rapidxml/bugs/16/ + +Signed-off-by: James Knight + +Index: b/rapidxml_print.hpp +=================================================================== +--- a/rapidxml_print.hpp ++++ b/rapidxml_print.hpp +@@ -101,7 +101,16 @@ + + /////////////////////////////////////////////////////////////////////////// + // Internal printing operations +- ++ ++ template inline OutIt print_cdata_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_children(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_comment_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_data_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_declaration_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_doctype_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_element_node(OutIt out, const xml_node *node, int flags, int indent); ++ template inline OutIt print_pi_node(OutIt out, const xml_node *node, int flags, int indent); ++ + // Print node + template + inline OutIt print_node(OutIt out, const xml_node *node, int flags, int indent) diff --git a/package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch b/package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch new file mode 100644 index 0000000000..cdab6070c2 --- /dev/null +++ b/package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch @@ -0,0 +1,28 @@ +From 5b015e67af27679f4ca8f7f5f2f71020ec054b0c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 2 Dec 2016 23:09:44 +0100 +Subject: [PATCH] Makefile: allow passing CFLAGS/LDFLAGS + +This might be needed to pass some custom CFLAGS/LDFLAGS when building +rpiboot. + +Submitted-upstream: https://github.com/raspberrypi/usbboot/pull/2 +Signed-off-by: Thomas Petazzoni +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 3e7d1e4..d9a7220 100755 +--- a/Makefile ++++ b/Makefile +@@ -1,5 +1,5 @@ + rpiboot: main.c +- $(CC) -g -o $@ $< -lusb-1.0 ++ $(CC) -g $(CFLAGS) -o $@ $< -lusb-1.0 $(LDFLAGS) + + install: rpiboot + cp rpiboot /usr/bin +-- +2.7.4 + diff --git a/package/raspberrypi-usbboot/0002-Makefile-add-DESTDIR-support.patch b/package/raspberrypi-usbboot/0002-Makefile-add-DESTDIR-support.patch new file mode 100644 index 0000000000..c37d5a1e0a --- /dev/null +++ b/package/raspberrypi-usbboot/0002-Makefile-add-DESTDIR-support.patch @@ -0,0 +1,49 @@ +From 905bc741b189d67160b27551b8ad01459c2707a0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 2 Dec 2016 23:10:37 +0100 +Subject: [PATCH] Makefile: add DESTDIR support + +This allows installing rpiboot outside of /usr if needed. + +Submitted-upstream: https://github.com/raspberrypi/usbboot/pull/2 +Signed-off-by: Thomas Petazzoni +--- + Makefile | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/Makefile b/Makefile +index d9a7220..7835b7f 100755 +--- a/Makefile ++++ b/Makefile +@@ -2,18 +2,18 @@ rpiboot: main.c + $(CC) -g $(CFLAGS) -o $@ $< -lusb-1.0 $(LDFLAGS) + + install: rpiboot +- cp rpiboot /usr/bin +- mkdir -p /usr/share/rpiboot +- cp usbbootcode.bin /usr/share/rpiboot +- cp msd.elf /usr/share/rpiboot +- cp buildroot.elf /usr/share/rpiboot ++ cp rpiboot $(DESTDIR)/usr/bin ++ mkdir -p $(DESTDIR)//usr/share/rpiboot ++ cp usbbootcode.bin $(DESTDIR)/usr/share/rpiboot ++ cp msd.elf $(DESTDIR)/usr/share/rpiboot ++ cp buildroot.elf $(DESTDIR)/usr/share/rpiboot + + uninstall: +- rm -f /usr/bin/rpiboot +- rm -f /usr/share/rpiboot/usbbootcode.bin +- rm -f /usr/share/rpiboot/msd.elf +- rm -f /usr/share/rpiboot/buildroot.elf +- rmdir --ignore-fail-on-non-empty /usr/share/rpiboot/ ++ rm -f $(DESTDIR)/usr/bin/rpiboot ++ rm -f $(DESTDIR)/usr/share/rpiboot/usbbootcode.bin ++ rm -f $(DESTDIR)/usr/share/rpiboot/msd.elf ++ rm -f $(DESTDIR)/usr/share/rpiboot/buildroot.elf ++ rmdir --ignore-fail-on-non-empty $(DESTDIR)/usr/share/rpiboot/ + + clean: + rm rpiboot +-- +2.7.4 + diff --git a/package/raspberrypi-usbboot/0003-main.c-rework-logic-to-find-def1-def2-and-def3-files.patch b/package/raspberrypi-usbboot/0003-main.c-rework-logic-to-find-def1-def2-and-def3-files.patch new file mode 100644 index 0000000000..30cde49f34 --- /dev/null +++ b/package/raspberrypi-usbboot/0003-main.c-rework-logic-to-find-def1-def2-and-def3-files.patch @@ -0,0 +1,127 @@ +From 935894908dc24acda0acea7d211a9d80e55ecadb Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 2 Dec 2016 23:43:23 +0100 +Subject: [PATCH] main.c: rework logic to find def1, def2 and def3 files + +The current logic to find def1, def2 and def3 first tries to find them +in the local directory, and if they are not available, find them in +/usr/share. + +However, this doesn't work if rpiboot and its related files are +installed, but not in /usr. In order to address this use-case, this +commit reworks the logic to find the file path. + +A new function, getfilepath() is created. If the requested file is +available in the current directory, it is used. If not, then the path to +the file is inferred from the location of the currently running +program. I.e if we run /home/foo/sys/bin/rpiboot, then we will search +def1 in usbbootcode.bin in +/home/foo/sys/bin/../share/rpiboot/usbbootcode.bin. + +This continues to address the case of an installation in /usr, while +allowing installation in other locations as well. + +Submitted-upstream: https://github.com/raspberrypi/usbboot/pull/2 +Signed-off-by: Thomas Petazzoni +--- + main.c | 61 ++++++++++++++++++++++++++++++++++++++++++++++++------------- + 1 file changed, 48 insertions(+), 13 deletions(-) + +diff --git a/main.c b/main.c +index 1b4e042..7c571d6 100755 +--- a/main.c ++++ b/main.c +@@ -1,10 +1,12 @@ +-#include "libusb-1.0/libusb.h" ++#define _GNU_SOURCE + #include + #include + #include +- ++#include + #include + ++#include "libusb-1.0/libusb.h" ++ + int verbose = 0; + int out_ep = 1; + int in_ep = 2; +@@ -146,6 +148,37 @@ int ep_read(unsigned char *buf, int len, libusb_device_handle * usb_device) + return len; + } + ++char *getfilepath(char *filename) ++{ ++ char *progpath, *filepath, *progdir; ++ ssize_t len; ++ ++ /* If file is available locally, use it */ ++ if (access(filename, F_OK) != -1) ++ return filename; ++ ++ /* Otherwise, use the installed version */ ++ progpath = malloc(PATH_MAX); ++ len = readlink("/proc/self/exe", progpath, PATH_MAX - 1); ++ if (len == -1) ++ { ++ free(progpath); ++ return NULL; ++ } ++ ++ progpath[len] = '\0'; ++ progdir = dirname(progpath); ++ if (asprintf(&filepath, "%s/../share/rpiboot/%s", progdir, filename) < 0) ++ { ++ free(progpath); ++ return NULL; ++ } ++ ++ free(progpath); ++ ++ return filepath; ++} ++ + int main(int argc, char *argv[]) + { + int result; +@@ -157,13 +190,9 @@ int main(int argc, char *argv[]) + int last_serial = -1; + FILE *fp1, *fp2, *fp; + +- char def1_inst[] = "/usr/share/rpiboot/usbbootcode.bin"; +- char def2_inst[] = "/usr/share/rpiboot/msd.elf"; +- char def3_inst[] = "/usr/share/rpiboot/buildroot.elf"; +- +- char def1_loc[] = "./usbbootcode.bin"; +- char def2_loc[] = "./msd.elf"; +- char def3_loc[] = "./buildroot.elf"; ++ char def1_name[] = "usbbootcode.bin"; ++ char def2_name[] = "msd.elf"; ++ char def3_name[] = "buildroot.elf"; + + char *def1, *def2, *def3; + +@@ -171,10 +200,16 @@ int main(int argc, char *argv[]) + char *fatimage = NULL, *executable = NULL; + int loop = 0; + +-// if local file version exists use it else use installed +- if( access( def1_loc, F_OK ) != -1 ) { def1 = def1_loc; } else { def1 = def1_inst; } +- if( access( def2_loc, F_OK ) != -1 ) { def2 = def2_loc; } else { def2 = def2_inst; } +- if( access( def3_loc, F_OK ) != -1 ) { def3 = def3_loc; } else { def3 = def3_inst; } ++ def1 = getfilepath(def1_name); ++ def2 = getfilepath(def2_name); ++ def3 = getfilepath(def3_name); ++ ++ if (!def1 || !def2 || !def3) ++ { ++ fprintf(stderr, "One of %s, %s or %s cannot be found\n", ++ def1_name, def2_name, def3_name); ++ exit(1); ++ } + + stage1 = def1; + stage2 = def2; +-- +2.7.4 + diff --git a/package/raspberrypi-usbboot/Config.in.host b/package/raspberrypi-usbboot/Config.in.host new file mode 100644 index 0000000000..dce2fccd54 --- /dev/null +++ b/package/raspberrypi-usbboot/Config.in.host @@ -0,0 +1,12 @@ +config BR2_PACKAGE_HOST_RASPBERRYPI_USBBOOT + bool "host raspberrypi-usbboot" + depends on BR2_arm + help + This package builds and install the "rpiboot" tool for the + host machine. This tool allows to boot the Broadcom BCM + processor used in the RaspberryPi to boot over USB, and have + it expose a USB mass storage device in order to reflash the + built-in storage of the RaspberryPi (useful for the eMMC + built into the Compute module). + + https://github.com/raspberrypi/usbboot diff --git a/package/raspberrypi-usbboot/raspberrypi-usbboot.hash b/package/raspberrypi-usbboot/raspberrypi-usbboot.hash new file mode 100644 index 0000000000..94860a9dab --- /dev/null +++ b/package/raspberrypi-usbboot/raspberrypi-usbboot.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a8893f8a10522bd58866eb34e7f0d7731c43200d585f122681f428cdef76e676 raspberrypi-usbboot-f4e3f0f9a3c64d846ba53ec3367e33a4f9a7d051.tar.gz diff --git a/package/raspberrypi-usbboot/raspberrypi-usbboot.mk b/package/raspberrypi-usbboot/raspberrypi-usbboot.mk new file mode 100644 index 0000000000..7018617906 --- /dev/null +++ b/package/raspberrypi-usbboot/raspberrypi-usbboot.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# raspberrypi-usbboot +# +################################################################################ + +RASPBERRYPI_USBBOOT_VERSION = f4e3f0f9a3c64d846ba53ec3367e33a4f9a7d051 +RASPBERRYPI_USBBOOT_SITE = $(call github,raspberrypi,usbboot,$(RASPBERRYPI_USBBOOT_VERSION)) + +HOST_RASPBERRYPI_USBBOOT_DEPENDENCIES = host-libusb + +define HOST_RASPBERRYPI_USBBOOT_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) +endef + +define HOST_RASPBERRYPI_USBBOOT_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) \ + DESTDIR=$(HOST_DIR) install +endef + +$(eval $(host-generic-package)) diff --git a/package/readline/0001-patchlevel-1.patch b/package/readline/0001-patchlevel-1.patch deleted file mode 100644 index 8593073b9b..0000000000 --- a/package/readline/0001-patchlevel-1.patch +++ /dev/null @@ -1,47 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-001 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-001 - -Bug-Reported-by: Daan van Rossum -Bug-Reference-ID: <20140307072523.GA14250@flash.uchicago.edu> -Bug-Reference-URL: - -Bug-Description: - -The `.' command in vi mode cannot undo multi-key commands beginning with -`c', `d', and `y' (command plus motion specifier). - -Patch (apply with `patch -p0'): - -*** a/readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400 ---- b/readline.c 2014-03-07 15:20:33.000000000 -0500 -*************** -*** 965,969 **** - if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap && - key != ANYOTHERKEY && -! rl_key_sequence_length == 1 && /* XXX */ - _rl_vi_textmod_command (key)) - _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign); ---- 965,969 ---- - if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap && - key != ANYOTHERKEY && -! _rl_dispatching_keymap == vi_movement_keymap && - _rl_vi_textmod_command (key)) - _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign); -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 5 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 1 diff --git a/package/readline/0002-patchlevel-2.patch b/package/readline/0002-patchlevel-2.patch deleted file mode 100644 index a8a94e0810..0000000000 --- a/package/readline/0002-patchlevel-2.patch +++ /dev/null @@ -1,48 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-002 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-002 - -Bug-Reported-by: Anatol Pomozov -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html - -Bug-Description: - -When in callback mode, some readline commands can cause readline to seg -fault by passing invalid contexts to callback functions. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400 ---- b/readline.c 2014-03-10 14:15:02.000000000 -0400 -*************** -*** 745,749 **** - - RL_CHECK_SIGNALS (); -! if (r == 0) /* success! */ - { - _rl_keyseq_chain_dispose (); ---- 745,750 ---- - - RL_CHECK_SIGNALS (); -! /* We only treat values < 0 specially to simulate recursion. */ -! if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /* success! or failure! */ - { - _rl_keyseq_chain_dispose (); -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 1 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 2 diff --git a/package/readline/0003-patchlevel-3.patch b/package/readline/0003-patchlevel-3.patch deleted file mode 100644 index 195ed554e9..0000000000 --- a/package/readline/0003-patchlevel-3.patch +++ /dev/null @@ -1,51 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-003 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-003 - -Bug-Reported-by: -Bug-Reference-ID: -Bug-Reference-URL: - -Bug-Description: - -There are debugging functions in the readline release that are theoretically -exploitable as security problems. They are not public functions, but have -global linkage. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3/util.c 2013-09-02 13:36:12.000000000 -0400 ---- b/util.c 2014-03-20 10:25:53.000000000 -0400 -*************** -*** 477,480 **** ---- 479,483 ---- - } - -+ #if defined (DEBUG) - #if defined (USE_VARARGS) - static FILE *_rl_tracefp; -*************** -*** 539,542 **** ---- 542,546 ---- - } - #endif -+ #endif /* DEBUG */ - - -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 2 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 3 diff --git a/package/readline/0004-patchlevel-4.patch b/package/readline/0004-patchlevel-4.patch deleted file mode 100644 index 86ab3d5079..0000000000 --- a/package/readline/0004-patchlevel-4.patch +++ /dev/null @@ -1,49 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-004 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-004 - -Bug-Reported-by: Egmont Koblinger -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html - -Bug-Description: - -The signal handling changes to bash and readline (to avoid running any code -in a signal handler context) cause the cursor to be placed on the wrong -line of a multi-line command after a ^C interrupts editing. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000 -0500 ---- b/display.c 2014-03-27 11:52:45.000000000 -0400 -*************** -*** 2678,2682 **** - if (_rl_echoing_p) - { -! _rl_move_vert (_rl_vis_botlin); - _rl_vis_botlin = 0; - fflush (rl_outstream); ---- 2678,2683 ---- - if (_rl_echoing_p) - { -! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */ -! _rl_move_vert (_rl_vis_botlin); - _rl_vis_botlin = 0; - fflush (rl_outstream); -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 3 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 4 diff --git a/package/readline/0005-patchlevel-5.patch b/package/readline/0005-patchlevel-5.patch deleted file mode 100644 index 6e73c7f263..0000000000 --- a/package/readline/0005-patchlevel-5.patch +++ /dev/null @@ -1,62 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-005 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-005 - -Bug-Reported-by: Juergen Daubert -Bug-Reference-ID: <20140303180430.GA7346@jue.netz> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00002.html - -Bug-Description: - -There are still applications using the deprecated Function/VFunction/etc. -typedefs in rltypedefs.h. This patch restores the typedefs, but attempts -to mark them as deprecated using gcc/clang attributes. Thanks to Max Horn -for the suggestion. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3-patched/rltypedefs.h 2011-03-26 14:53:31.000000000 -0400 ---- b/rltypedefs.h 2014-04-10 11:30:45.000000000 -0400 -*************** -*** 27,30 **** ---- 27,49 ---- - #endif - -+ /* Old-style, attempt to mark as deprecated in some way people will notice. */ -+ -+ #if !defined (_FUNCTION_DEF) -+ # define _FUNCTION_DEF -+ -+ #if defined(__GNUC__) || defined(__clang__) -+ typedef int Function () __attribute__ ((deprecated)); -+ typedef void VFunction () __attribute__ ((deprecated)); -+ typedef char *CPFunction () __attribute__ ((deprecated)); -+ typedef char **CPPFunction () __attribute__ ((deprecated)); -+ #else -+ typedef int Function (); -+ typedef void VFunction (); -+ typedef char *CPFunction (); -+ typedef char **CPPFunction (); -+ #endif -+ -+ #endif /* _FUNCTION_DEF */ -+ - /* New style. */ - -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 4 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 5 diff --git a/package/readline/0006-patchlevel-6.patch b/package/readline/0006-patchlevel-6.patch deleted file mode 100644 index b28b53c7ab..0000000000 --- a/package/readline/0006-patchlevel-6.patch +++ /dev/null @@ -1,67 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-006 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-006 - -Bug-Reported-by: -Bug-Reference-ID: -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html - -Bug-Description: - -Using reverse-i-search when horizontal scrolling is enabled does not redisplay -the entire line containing the successful search results. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000 -0400 ---- b/display.c 2014-04-20 18:32:52.000000000 -0400 -*************** -*** 1638,1642 **** - the spot of first difference is before the end of the invisible chars, - lendiff needs to be adjusted. */ -! if (current_line == 0 && !_rl_horizontal_scroll_mode && - current_invis_chars != visible_wrap_offset) - { ---- 1638,1642 ---- - the spot of first difference is before the end of the invisible chars, - lendiff needs to be adjusted. */ -! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */ - current_invis_chars != visible_wrap_offset) - { -*************** -*** 1826,1831 **** - _rl_last_c_pos += bytes_to_insert; - - if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new))) -! goto clear_rest_of_line; - } - } ---- 1826,1836 ---- - _rl_last_c_pos += bytes_to_insert; - -+ /* XXX - we only want to do this if we are at the end of the line -+ so we move there with _rl_move_cursor_relative */ - if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new))) -! { -! _rl_move_cursor_relative (ne-new, new); -! goto clear_rest_of_line; -! } - } - } -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 5 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 6 diff --git a/package/readline/0007-patchlevel-7.patch b/package/readline/0007-patchlevel-7.patch deleted file mode 100644 index 4c6f59cd24..0000000000 --- a/package/readline/0007-patchlevel-7.patch +++ /dev/null @@ -1,51 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-007 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-007 - -Bug-Reported-by: John Lenton -Bug-Reference-ID: -Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476 - -Bug-Description: - -Readline should allow SIGALRM and SIGVTALRM (if available) to `interrupt' -rl_getc and cause the handler to run when not in a signal handling context. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3-patched/input.c 2014-01-10 15:07:08.000000000 -0500 ---- b/input.c 2014-05-30 16:20:56.000000000 -0400 -*************** -*** 535,540 **** ---- 538,551 ---- - else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM) - return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF); -+ /* keyboard-generated signals of interest */ - else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT) - RL_CHECK_SIGNALS (); -+ /* non-keyboard-generated signals of interest */ -+ else if (_rl_caught_signal == SIGALRM -+ #if defined (SIGVTALRM) -+ || _rl_caught_signal == SIGVTALRM -+ #endif -+ ) -+ RL_CHECK_SIGNALS (); - - if (rl_signal_event_hook) -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 6 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 7 diff --git a/package/readline/0008-patchlevel-8.patch b/package/readline/0008-patchlevel-8.patch deleted file mode 100644 index 412ba352d6..0000000000 --- a/package/readline/0008-patchlevel-8.patch +++ /dev/null @@ -1,51 +0,0 @@ -From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-008 - -Signed-off-by: Gustavo Zacarias - - READLINE PATCH REPORT - ===================== - -Readline-Release: 6.3 -Patch-ID: readline63-008 - -Bug-Reported-by: Jared Yanovich -Bug-Reference-ID: <20140625225019.GJ17044@nightderanger.psc.edu> -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html - -Bug-Description: - -When the readline `revert-all-at-newline' option is set, pressing newline -when the current line is one retrieved from history results in a double free -and a segmentation fault. - -Patch (apply with `patch -p0'): - -*** a/readline-6.3-patched/misc.c 2012-09-01 18:03:11.000000000 -0400 ---- b/misc.c 2014-06-30 13:41:19.000000000 -0400 -*************** -*** 462,465 **** ---- 462,466 ---- - /* Set up rl_line_buffer and other variables from history entry */ - rl_replace_from_history (entry, 0); /* entry->line is now current */ -+ entry->data = 0; /* entry->data is now current undo list */ - /* Undo all changes to this history entry */ - while (rl_undo_list) -*************** -*** 469,473 **** - FREE (entry->line); - entry->line = savestring (rl_line_buffer); -- entry->data = 0; - } - entry = previous_history (); ---- 470,473 ---- -*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 ---- b/patchlevel 2014-03-21 08:28:40.000000000 -0400 -*************** -*** 1,3 **** - # Do not edit -- exists only for use by patch - -! 7 ---- 1,3 ---- - # Do not edit -- exists only for use by patch - -! 8 diff --git a/package/readline/Config.in b/package/readline/Config.in index fbebf18a8a..1cb0672cf1 100644 --- a/package/readline/Config.in +++ b/package/readline/Config.in @@ -5,3 +5,5 @@ config BR2_PACKAGE_READLINE The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in. + + https://cnswww.cns.cwru.edu/php/chet/readline/rltop.html diff --git a/package/readline/readline.hash b/package/readline/readline.hash index d8833e9192..43f8c64bb2 100644 --- a/package/readline/readline.hash +++ b/package/readline/readline.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43 readline-6.3.tar.gz +sha256 750d437185286f40a369e1e4f4764eda932b9459b5ec9a731628393dd3d32334 readline-7.0.tar.gz diff --git a/package/readline/readline.mk b/package/readline/readline.mk index 763197085e..ed4e1442ee 100644 --- a/package/readline/readline.mk +++ b/package/readline/readline.mk @@ -4,7 +4,7 @@ # ################################################################################ -READLINE_VERSION = 6.3 +READLINE_VERSION = 7.0 READLINE_SITE = $(BR2_GNU_MIRROR)/readline READLINE_INSTALL_STAGING = YES READLINE_DEPENDENCIES = ncurses diff --git a/package/redis/0003-redis.conf-adjust-defauts-for-buildroot.patch b/package/redis/0003-redis.conf-adjust-defauts-for-buildroot.patch new file mode 100644 index 0000000000..6ad81a493d --- /dev/null +++ b/package/redis/0003-redis.conf-adjust-defauts-for-buildroot.patch @@ -0,0 +1,29 @@ +From f79d1d1bf9e6f54b67e5482602084fbff7fd9cc9 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Fri, 28 Oct 2016 12:50:34 -0300 +Subject: [PATCH] redis.conf: adjust defauts for buildroot + +Based on Martin Bark's patch hence archlinux package. +We just need to specify a proper db directory. + +Signed-off-by: Gustavo Zacarias +--- + redis.conf | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/redis.conf b/redis.conf +index 22e00bc..3bb0430 100644 +--- a/redis.conf ++++ b/redis.conf +@@ -244,7 +244,7 @@ dbfilename dump.rdb + # The Append Only File will also be created inside this directory. + # + # Note that you must specify a directory here, not a file name. +-dir ./ ++dir /var/lib/redis/ + + ################################# REPLICATION ################################# + +-- +2.7.3 + diff --git a/package/redis/0003-redis.conf-sane-defaults.patch b/package/redis/0003-redis.conf-sane-defaults.patch deleted file mode 100644 index 6ee3f210ca..0000000000 --- a/package/redis/0003-redis.conf-sane-defaults.patch +++ /dev/null @@ -1,37 +0,0 @@ -Taken from archlinux redis package -See https://projects.archlinux.org/svntogit/community.git/tree/trunk/redis.conf-sane-defaults.patch?h=packages/redis&id=5b2491ea61b746f289acebd12bc66e337d7e5b88 - -Signed-off-by: Martin Bark - -========================================================================= -diff --git a/redis.conf b/redis.conf -index 6efb6ac..344e021 100644 ---- a/redis.conf -+++ b/redis.conf -@@ -61,7 +61,7 @@ tcp-backlog 511 - # Examples: - # - # bind 192.168.1.100 10.0.0.1 --# bind 127.0.0.1 -+bind 127.0.0.1 - - # Specify the path for the Unix socket that will be used to listen for - # incoming connections. There is no default, so Redis will not listen -@@ -87,7 +87,7 @@ timeout 0 - # On other kernels the period depends on the kernel configuration. - # - # A reasonable value for this option is 60 seconds. --tcp-keepalive 0 -+tcp-keepalive 60 - - # Specify the server verbosity level. - # This can be one of: -@@ -184,7 +184,7 @@ dbfilename dump.rdb - # The Append Only File will also be created inside this directory. - # - # Note that you must specify a directory here, not a file name. --dir ./ -+dir /var/lib/redis/ - - ################################# REPLICATION ################################# - diff --git a/package/redis/redis.hash b/package/redis/redis.hash index 07783f545f..d4ac7c3557 100644 --- a/package/redis/redis.hash +++ b/package/redis/redis.hash @@ -1,4 +1,4 @@ # From https://github.com/antirez/redis-hashes/blob/master/README -sha1 e56b4b7e033ae8dbf311f9191cf6fdf3ae974d1c redis-3.0.7.tar.gz +sha1 6889af053020cd72ebb16805ead0ce9b3a69a9ef redis-3.2.7.tar.gz # Calculated based on the hash above -sha256 b2a791c4ea3bb7268795c45c6321ea5abcc24457178373e6a6e3be6372737f23 redis-3.0.7.tar.gz +sha256 bf9df3e5374bfe7bfc3386380f9df13d94990011504ef07632b3609bb2836fa9 redis-3.2.7.tar.gz diff --git a/package/redis/redis.mk b/package/redis/redis.mk index a9df6e712f..63964b5f98 100644 --- a/package/redis/redis.mk +++ b/package/redis/redis.mk @@ -4,7 +4,7 @@ # ################################################################################ -REDIS_VERSION = 3.0.7 +REDIS_VERSION = 3.2.7 REDIS_SITE = http://download.redis.io/releases REDIS_LICENSE = BSD-3c (core); MIT and BSD family licenses (Bundled components) REDIS_LICENSE_FILES = COPYING diff --git a/package/riemann-c-client/Config.in b/package/riemann-c-client/Config.in new file mode 100644 index 0000000000..e9982b2fb0 --- /dev/null +++ b/package/riemann-c-client/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_RIEMANN_C_CLIENT + bool "riemann-c-client" + depends on BR2_INSTALL_LIBSTDCPP # protobuf-c + depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf-c + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" # protobuf-c + select BR2_PACKAGE_PROTOBUF_C + help + Riemann-c-client is a C client library for the Riemann + monitoring system, providing a convenient and simple API, + high test coverage and a copyleft license, along with API + and ABI stability. + + https://github.com/algernon/riemann-c-client + +comment "riemann-c-client needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" diff --git a/package/riemann-c-client/riemann-c-client.hash b/package/riemann-c-client/riemann-c-client.hash new file mode 100644 index 0000000000..090288156c --- /dev/null +++ b/package/riemann-c-client/riemann-c-client.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 4b18804f489834fa953f4af887290173c745b471a5993bb108a9142c867de457 riemann-c-client-1.9.1.tar.xz diff --git a/package/riemann-c-client/riemann-c-client.mk b/package/riemann-c-client/riemann-c-client.mk new file mode 100644 index 0000000000..5593519987 --- /dev/null +++ b/package/riemann-c-client/riemann-c-client.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# riemann-c-client +# +################################################################################ + +RIEMANN_C_CLIENT_VERSION = 1.9.1 +RIEMANN_C_CLIENT_SOURCE = riemann-c-client-$(RIEMANN_C_CLIENT_VERSION).tar.xz +RIEMANN_C_CLIENT_SITE = https://github.com/algernon/riemann-c-client/releases/download/riemann-c-client-$(RIEMANN_C_CLIENT_VERSION) +RIEMANN_C_CLIENT_LICENSE = LGPLv3+ +RIEMANN_C_CLIENT_LICENSE_FILES = LICENSE +RIEMANN_C_CLIENT_INSTALL_STAGING = YES +RIEMANN_C_CLIENT_DEPENDENCIES = \ + host-pkgconf protobuf-c \ + $(if $(BR2_PACKAGE_GNUTLS),gnutls) \ + $(if $(BR2_PACKAGE_JSON_C),json-c) + +ifeq ($(BR2_bfin),y) +# ld symbol versioning not working on bfin +RIEMANN_C_CLIENT_CONF_ENV += ac_cv_prog_ld_version_script=no +endif + +$(eval $(autotools-package)) diff --git a/package/rng-tools/Config.in b/package/rng-tools/Config.in index 469b60e89b..b00477d336 100644 --- a/package/rng-tools/Config.in +++ b/package/rng-tools/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_RNG_TOOLS bool "rng-tools" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS || !(BR2_i386 || BR2_x86_64) # libgcrypt select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL # For rdrand ligcrypt is required and it's not obvious to users select BR2_PACKAGE_LIBGCRYPT if BR2_i386 || BR2_x86_64 diff --git a/package/rp-pppoe/Config.in b/package/rp-pppoe/Config.in index 7f6afe27ea..a41de33332 100644 --- a/package/rp-pppoe/Config.in +++ b/package/rp-pppoe/Config.in @@ -1,10 +1,11 @@ -comment "rp-pppoe needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "rp-pppoe needs a uClibc or glibc toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL depends on BR2_USE_MMU config BR2_PACKAGE_RP_PPPOE bool "rp-pppoe" depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # pppd depends on BR2_USE_MMU # fork() select BR2_PACKAGE_PPPD help diff --git a/package/rp-pppoe/rp-pppoe.mk b/package/rp-pppoe/rp-pppoe.mk index 43062549b8..99d231e579 100644 --- a/package/rp-pppoe/rp-pppoe.mk +++ b/package/rp-pppoe/rp-pppoe.mk @@ -15,8 +15,16 @@ RP_PPPOE_TARGET_SCRIPTS = pppoe-connect pppoe-init pppoe-setup pppoe-start \ pppoe-status pppoe-stop RP_PPPOE_MAKE_OPTS = PLUGIN_DIR=/usr/lib/pppd/$(PPPD_VERSION) RP_PPPOE_CONF_OPTS = --disable-debugging + +# The pppd, echo, setsid and id paths must be the ones on the +# target. Indeed, the result of these checks is used to replace +# variables in scripts that are installed in the target. RP_PPPOE_CONF_ENV = \ rpppoe_cv_pack_bitfields=normal \ + ac_cv_path_PPPD=/usr/sbin/pppd \ + ac_cv_path_ECHO=/bin/echo \ + ac_cv_path_SETSID=/usr/bin/setsid \ + ac_cv_path_ID=/usr/bin/id \ PPPD_H=$(PPPD_DIR)/pppd/pppd.h define RP_PPPOE_INSTALL_TARGET_CMDS diff --git a/package/rpcbind/0003-src-remove-use-of-the-__P-macro.patch b/package/rpcbind/0003-src-remove-use-of-the-__P-macro.patch new file mode 100644 index 0000000000..72fda880ce --- /dev/null +++ b/package/rpcbind/0003-src-remove-use-of-the-__P-macro.patch @@ -0,0 +1,243 @@ +From 2f7d15304e0544e4c693c86d8ab8b2f08b9e9886 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Mon, 15 Aug 2016 16:36:40 +0200 +Subject: [PATCH] src: remove use of the __P() macro + +The __P() macro is a legacy compatibility macro aimed making pre-ANSI +(i.e. K&R) compilers that do not support function prototypes happy, +while still allowing such prototypes for ANSI-compliant compilers. + +Since virtually all compilers have been ANSI-compliant for a few decades +now, use of __P() is totally useless. + +Furthermore, __P() is defined in the non-standard sys/cdefs.h header. +This header is present in glibc and uClibc, and both have it included +from many of their headers. So, sys/cdefs.h is automagically included in +most cases and its macros are available. + +However, the musl C library does not provide this sys/cdefs.h header. +Thus, the build breaks on musl. + +For all the above reasons, get rid of __P() wherever it is used; just +always declare real function prototypes. + +Signed-off-by: "Yann E. MORIN" +Cc: Chuck Lever +Cc: Steve Dickson +--- + src/check_bound.c | 2 +- + src/pmap_svc.c | 10 +++++----- + src/rpcb_svc.c | 10 +++++----- + src/rpcb_svc_4.c | 14 ++++++-------- + src/rpcb_svc_com.c | 46 +++++++++++++++++++++++----------------------- + src/rpcbind.c | 12 ++++++------ + src/util.c | 2 +- + src/warmstart.c | 4 ++-- + 8 files changed, 49 insertions(+), 51 deletions(-) + +diff --git a/src/check_bound.c b/src/check_bound.c +index c70b845..92bfd36 100644 +--- a/src/check_bound.c ++++ b/src/check_bound.c +@@ -70,7 +70,7 @@ static struct fdlist *fdhead; /* Link list of the check fd's */ + static struct fdlist *fdtail; + static char *nullstring = ""; + +-static bool_t check_bound __P((struct fdlist *, char *uaddr)); ++static bool_t check_bound(struct fdlist *, char *uaddr); + + /* + * Returns 1 if the given address is bound for the given addr & transport +diff --git a/src/pmap_svc.c b/src/pmap_svc.c +index ad28b93..4c744fe 100644 +--- a/src/pmap_svc.c ++++ b/src/pmap_svc.c +@@ -60,11 +60,11 @@ static char sccsid[] = "@(#)pmap_svc.c 1.23 89/04/05 Copyr 1984 Sun Micro"; + #include "rpcbind.h" + #include "xlog.h" + #include /* svc_getcaller routine definition */ +-static struct pmaplist *find_service_pmap __P((rpcprog_t, rpcvers_t, +- rpcprot_t)); +-static bool_t pmapproc_change __P((struct svc_req *, SVCXPRT *, u_long)); +-static bool_t pmapproc_getport __P((struct svc_req *, SVCXPRT *)); +-static bool_t pmapproc_dump __P((struct svc_req *, SVCXPRT *)); ++static struct pmaplist *find_service_pmap(rpcprog_t, rpcvers_t, ++ rpcprot_t); ++static bool_t pmapproc_change(struct svc_req *, SVCXPRT *, u_long); ++static bool_t pmapproc_getport(struct svc_req *, SVCXPRT *); ++static bool_t pmapproc_dump(struct svc_req *, SVCXPRT *); + + /* + * Called for all the version 2 inquiries. +diff --git a/src/rpcb_svc.c b/src/rpcb_svc.c +index bd92201..709e3fb 100644 +--- a/src/rpcb_svc.c ++++ b/src/rpcb_svc.c +@@ -53,10 +53,10 @@ + #include "rpcbind.h" + #include "xlog.h" + +-static void *rpcbproc_getaddr_3_local __P((void *, struct svc_req *, SVCXPRT *, +- rpcvers_t)); +-static void *rpcbproc_dump_3_local __P((void *, struct svc_req *, SVCXPRT *, +- rpcvers_t)); ++static void *rpcbproc_getaddr_3_local(void *, struct svc_req *, SVCXPRT *, ++ rpcvers_t); ++static void *rpcbproc_dump_3_local(void *, struct svc_req *, SVCXPRT *, ++ rpcvers_t); + + /* + * Called by svc_getreqset. There is a separate server handle for +@@ -75,7 +75,7 @@ rpcb_service_3(struct svc_req *rqstp, SVCXPRT *transp) + } argument; + char *result; + xdrproc_t xdr_argument, xdr_result; +- void *(*local) __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t)); ++ void *(*local)(void *, struct svc_req *, SVCXPRT *, rpcvers_t); + rpcprog_t setprog = 0; + + rpcbs_procinfo(RPCBVERS_3_STAT, rqstp->rq_proc); +diff --git a/src/rpcb_svc_4.c b/src/rpcb_svc_4.c +index b673452..5094879 100644 +--- a/src/rpcb_svc_4.c ++++ b/src/rpcb_svc_4.c +@@ -54,13 +54,11 @@ + #include "rpcbind.h" + #include "xlog.h" + +-static void *rpcbproc_getaddr_4_local __P((void *, struct svc_req *, SVCXPRT *, +- rpcvers_t)); +-static void *rpcbproc_getversaddr_4_local __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t)); +-static void *rpcbproc_getaddrlist_4_local +- __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t)); +-static void free_rpcb_entry_list __P((rpcb_entry_list_ptr *)); +-static void *rpcbproc_dump_4_local __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t)); ++static void *rpcbproc_getaddr_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t); ++static void *rpcbproc_getversaddr_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t); ++static void *rpcbproc_getaddrlist_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t); ++static void free_rpcb_entry_list(rpcb_entry_list_ptr *); ++static void *rpcbproc_dump_4_local(void *, struct svc_req *, SVCXPRT *, rpcvers_t); + + /* + * Called by svc_getreqset. There is a separate server handle for +@@ -78,7 +76,7 @@ rpcb_service_4(struct svc_req *rqstp, SVCXPRT *transp) + } argument; + char *result; + xdrproc_t xdr_argument, xdr_result; +- void *(*local) __P((void *, struct svc_req *, SVCXPRT *, rpcvers_t)); ++ void *(*local)(void *, struct svc_req *, SVCXPRT *, rpcvers_t); + rpcprog_t setprog = 0; + + rpcbs_procinfo(RPCBVERS_4_STAT, rqstp->rq_proc); +diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c +index 148fe42..5862c26 100644 +--- a/src/rpcb_svc_com.c ++++ b/src/rpcb_svc_com.c +@@ -100,29 +100,29 @@ struct finfo { + static struct finfo FINFO[NFORWARD]; + + +-static bool_t xdr_encap_parms __P((XDR *, struct encap_parms *)); +-static bool_t xdr_rmtcall_args __P((XDR *, struct r_rmtcall_args *)); +-static bool_t xdr_rmtcall_result __P((XDR *, struct r_rmtcall_args *)); +-static bool_t xdr_opaque_parms __P((XDR *, struct r_rmtcall_args *)); +-static int find_rmtcallfd_by_netid __P((char *)); +-static SVCXPRT *find_rmtcallxprt_by_fd __P((int)); +-static int forward_register __P((u_int32_t, struct netbuf *, int, char *, +- rpcproc_t, rpcvers_t, u_int32_t *)); +-static struct finfo *forward_find __P((u_int32_t)); +-static int free_slot_by_xid __P((u_int32_t)); +-static int free_slot_by_index __P((int)); +-static int netbufcmp __P((struct netbuf *, struct netbuf *)); +-static struct netbuf *netbufdup __P((struct netbuf *)); +-static void netbuffree __P((struct netbuf *)); +-static int check_rmtcalls __P((struct pollfd *, int)); +-static void xprt_set_caller __P((SVCXPRT *, struct finfo *)); +-static void send_svcsyserr __P((SVCXPRT *, struct finfo *)); +-static void handle_reply __P((int, SVCXPRT *)); +-static void find_versions __P((rpcprog_t, char *, rpcvers_t *, rpcvers_t *)); +-static rpcblist_ptr find_service __P((rpcprog_t, rpcvers_t, char *)); +-static char *getowner __P((SVCXPRT *, char *, size_t)); +-static int add_pmaplist __P((RPCB *)); +-static int del_pmaplist __P((RPCB *)); ++static bool_t xdr_encap_parms(XDR *, struct encap_parms *); ++static bool_t xdr_rmtcall_args(XDR *, struct r_rmtcall_args *); ++static bool_t xdr_rmtcall_result(XDR *, struct r_rmtcall_args *); ++static bool_t xdr_opaque_parms(XDR *, struct r_rmtcall_args *); ++static int find_rmtcallfd_by_netid(char *); ++static SVCXPRT *find_rmtcallxprt_by_fd(int); ++static int forward_register(u_int32_t, struct netbuf *, int, char *, ++ rpcproc_t, rpcvers_t, u_int32_t *); ++static struct finfo *forward_find(u_int32_t); ++static int free_slot_by_xid(u_int32_t); ++static int free_slot_by_index(int); ++static int netbufcmp(struct netbuf *, struct netbuf *); ++static struct netbuf *netbufdup(struct netbuf *); ++static void netbuffree(struct netbuf *); ++static int check_rmtcalls(struct pollfd *, int); ++static void xprt_set_caller(SVCXPRT *, struct finfo *); ++static void send_svcsyserr(SVCXPRT *, struct finfo *); ++static void handle_reply(int, SVCXPRT *); ++static void find_versions(rpcprog_t, char *, rpcvers_t *, rpcvers_t *); ++static rpcblist_ptr find_service(rpcprog_t, rpcvers_t, char *); ++static char *getowner(SVCXPRT *, char *, size_t); ++static int add_pmaplist(RPCB *); ++static int del_pmaplist(RPCB *); + + /* + * Set a mapping of program, version, netid +diff --git a/src/rpcbind.c b/src/rpcbind.c +index c4265cd..87ccdc2 100644 +--- a/src/rpcbind.c ++++ b/src/rpcbind.c +@@ -136,13 +136,13 @@ char *tcp_uaddr; /* Universal TCP address */ + static char servname[] = "rpcbind"; + static char superuser[] = "superuser"; + +-int main __P((int, char *[])); ++int main(int, char *[]); + +-static int init_transport __P((struct netconfig *)); +-static void rbllist_add __P((rpcprog_t, rpcvers_t, struct netconfig *, +- struct netbuf *)); +-static void terminate __P((int)); +-static void parseargs __P((int, char *[])); ++static int init_transport(struct netconfig *); ++static void rbllist_add(rpcprog_t, rpcvers_t, struct netconfig *, ++ struct netbuf *); ++static void terminate(int); ++static void parseargs(int, char *[]); + + int + main(int argc, char *argv[]) +diff --git a/src/util.c b/src/util.c +index a6c835b..74b0284 100644 +--- a/src/util.c ++++ b/src/util.c +@@ -70,7 +70,7 @@ static struct sockaddr_in *local_in4; + static struct sockaddr_in6 *local_in6; + #endif + +-static int bitmaskcmp __P((void *, void *, void *, int)); ++static int bitmaskcmp(void *, void *, void *, int); + + /* + * For all bits set in "mask", compare the corresponding bits in +diff --git a/src/warmstart.c b/src/warmstart.c +index b6eb73e..122a058 100644 +--- a/src/warmstart.c ++++ b/src/warmstart.c +@@ -58,8 +58,8 @@ + #define PMAPFILE RPCBIND_STATEDIR "/portmap.xdr" + #endif + +-static bool_t write_struct __P((char *, xdrproc_t, void *)); +-static bool_t read_struct __P((char *, xdrproc_t, void *)); ++static bool_t write_struct(char *, xdrproc_t, void *); ++static bool_t read_struct(char *, xdrproc_t, void *); + + static bool_t + write_struct(char *filename, xdrproc_t structproc, void *list) +-- +2.7.4 + diff --git a/package/rpi-firmware/Config.in b/package/rpi-firmware/Config.in index 405674f423..c2983aa84e 100644 --- a/package/rpi-firmware/Config.in +++ b/package/rpi-firmware/Config.in @@ -73,7 +73,7 @@ config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG help Install vcdbg, to help debug communication with the GPU. -comment "vcdbg needs an (e)glibc toolchain w/ C++" +comment "vcdbg needs a glibc toolchain w/ C++" depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_INSTALL_LIBSTDCPP endif # BR2_PACKAGE_RPI_FIRMWARE diff --git a/package/rpi-firmware/cmdline.txt b/package/rpi-firmware/cmdline.txt index 38aa378262..155a54693b 100644 --- a/package/rpi-firmware/cmdline.txt +++ b/package/rpi-firmware/cmdline.txt @@ -1 +1 @@ -root=/dev/mmcblk0p2 rootwait +root=/dev/mmcblk0p2 rootwait console=tty1 console=ttyAMA0,115200 diff --git a/package/rpi-firmware/mkknlimg b/package/rpi-firmware/mkknlimg deleted file mode 100644 index 33f81874bf..0000000000 --- a/package/rpi-firmware/mkknlimg +++ /dev/null @@ -1,299 +0,0 @@ -#!/usr/bin/env perl -# -# Originaly from: https://github.com/raspberrypi/tools/blob/master/mkimage/mkknlimg -# Original cset : f5642106425d430e1f82ee064121a5fd0e05a386 -# -# ---------------------------------------------------------------------- -# mkknlimg by Phil Elwell for Raspberry Pi -# based on extract-ikconfig by Dick Streefland -# -# (c) 2009,2010 Dick Streefland -# (c) 2014,2015 Raspberry Pi (Trading) Limited -# -# Licensed under the terms of the GNU General Public License. -# ---------------------------------------------------------------------- - -use strict; -use warnings; -use integer; - -use constant FLAG_PI => 1; -use constant FLAG_DTOK => 2; -use constant FLAG_DDTK => 4; -use constant FLAG_283X => 8; - -my $trailer_magic = 'RPTL'; - -my $tmpfile1 = "/tmp/mkknlimg_$$.1"; -my $tmpfile2 = "/tmp/mkknlimg_$$.2"; - -my $dtok = 0; -my $ddtk = 0; -my $is_283x = 0; - -while (@ARGV && ($ARGV[0] =~ /^-/)) -{ - my $arg = shift(@ARGV); - if ($arg eq '--dtok') - { - $dtok = 1; - } - elsif ($arg eq '--ddtk') - { - $ddtk = 1; - } - elsif ($arg eq '--283x') - { - $is_283x = 1; - } - else - { - print ("* Unknown option '$arg'\n"); - usage(); - } -} - -usage() if (@ARGV != 2); - -my $kernel_file = $ARGV[0]; -my $out_file = $ARGV[1]; - -if (! -r $kernel_file) -{ - print ("* File '$kernel_file' not found\n"); - usage(); -} - -my $wanted_configs = -{ - 'CONFIG_BCM2708_DT' => FLAG_PI | FLAG_DTOK, - 'CONFIG_ARCH_BCM2835' => FLAG_PI | FLAG_DTOK | FLAG_283X, -}; - -my $wanted_strings = -{ - 'bcm2708_fb' => FLAG_PI, - 'brcm,bcm2835-mmc' => FLAG_PI, - 'brcm,bcm2835-sdhost' => FLAG_PI, - 'brcm,bcm2708-pinctrl' => FLAG_PI | FLAG_DTOK, - 'brcm,bcm2835-gpio' => FLAG_PI | FLAG_DTOK, - 'brcm,bcm2835-pm-wdt' => FLAG_PI | FLAG_DTOK | FLAG_283X, - 'of_overlay_apply' => FLAG_DTOK | FLAG_DDTK, -}; - -my $res = try_extract($kernel_file, $tmpfile1); -$res ||= try_decompress('\037\213\010', 'xy', 'gunzip', 0, - $kernel_file, $tmpfile1, $tmpfile2); -$res ||= try_decompress('\3757zXZ\000', 'abcde', 'unxz --single-stream', -1, - $kernel_file, $tmpfile1, $tmpfile2); -$res ||= try_decompress('BZh', 'xy', 'bunzip2', 0, - $kernel_file, $tmpfile1, $tmpfile2); -$res ||= try_decompress('\135\0\0\0', 'xxx', 'unlzma', 0, - $kernel_file, $tmpfile1, $tmpfile2); -$res ||= try_decompress('\211\114\132', 'xy', 'lzop -d', 0, - $kernel_file, $tmpfile1, $tmpfile2); -$res ||= try_decompress('\002\041\114\030', 'xy', 'lz4 -d', 1, - $kernel_file, $tmpfile1, $tmpfile2); - -my $append_trailer; -my $trailer; -my $kver = '?'; - -$append_trailer = $dtok; - -if ($res) -{ - $kver = $res->{'kver'} || '?'; - my $flags = $res->{'flags'}; - print("Version: $kver\n"); - - if ($flags & FLAG_PI) - { - $append_trailer = 1; - $dtok ||= ($flags & FLAG_DTOK) != 0; - $is_283x ||= ($flags & FLAG_283X) != 0; - $ddtk ||= ($flags & FLAG_DDTK) != 0; - } - else - { - print ("* This doesn't look like a Raspberry Pi kernel. In pass-through mode.\n"); - } -} -elsif (!$dtok) -{ - print ("* Is this a valid kernel? In pass-through mode.\n"); -} - -if ($append_trailer) -{ - printf("DT: %s\n", $dtok ? "y" : "n"); - printf("DDT: %s\n", $ddtk ? "y" : "n"); - printf("283x: %s\n", $is_283x ? "y" : "n"); - - my @atoms; - - push @atoms, [ $trailer_magic, pack('V', 0) ]; - push @atoms, [ 'KVer', $kver ]; - push @atoms, [ 'DTOK', pack('V', $dtok) ]; - push @atoms, [ 'DDTK', pack('V', $ddtk) ]; - push @atoms, [ '283x', pack('V', $is_283x) ]; - - $trailer = pack_trailer(\@atoms); - $atoms[0]->[1] = pack('V', length($trailer)); - - $trailer = pack_trailer(\@atoms); -} - -my $ofh; -my $total_len = 0; - -if ($out_file eq $kernel_file) -{ - die "* Failed to open '$out_file' for append\n" - if (!open($ofh, '>>', $out_file)); - $total_len = tell($ofh); -} -else -{ - die "* Failed to open '$kernel_file'\n" - if (!open(my $ifh, '<', $kernel_file)); - die "* Failed to create '$out_file'\n" - if (!open($ofh, '>', $out_file)); - - my $copybuf; - while (1) - { - my $bytes = sysread($ifh, $copybuf, 64*1024); - last if (!$bytes); - syswrite($ofh, $copybuf, $bytes); - $total_len += $bytes; - } - close($ifh); -} - -if ($trailer) -{ - # Pad to word-alignment - syswrite($ofh, "\x000\x000\x000", (-$total_len & 0x3)); - syswrite($ofh, $trailer); -} - -close($ofh); - -exit($trailer ? 0 : 1); - -END { - unlink($tmpfile1) if ($tmpfile1); - unlink($tmpfile2) if ($tmpfile2); -} - - -sub usage -{ - print ("Usage: mkknlimg [--dtok] [--283x] \n"); - exit(1); -} - -sub try_extract -{ - my ($knl, $tmp) = @_; - - my $ver = `strings "$knl" | grep -a -E "^Linux version [1-9]"`; - - return undef if (!$ver); - - chomp($ver); - - my $res = { 'kver'=>$ver }; - $res->{'flags'} = strings_to_flags($knl, $wanted_strings) | - configs_to_flags($knl, $tmp, $wanted_configs); - - return $res; -} - - -sub try_decompress -{ - my ($magic, $subst, $zcat, $idx, $knl, $tmp1, $tmp2) = @_; - - my $pos = `tr "$magic\n$subst" "\n$subst=" < "$knl" | grep -abo "^$subst"`; - if ($pos) - { - chomp($pos); - $pos = (split(/[\r\n]+/, $pos))[$idx]; - return undef if (!defined($pos)); - $pos =~ s/:.*[\r\n]*$//s; - my $cmd = "tail -c+$pos \"$knl\" | $zcat > $tmp2 2> /dev/null"; - my $err = (system($cmd) >> 8); - return undef if (($err != 0) && ($err != 2)); - - return try_extract($tmp2, $tmp1); - } - - return undef; -} - - -sub strings_to_flags -{ - my ($knl, $strings) = @_; - my $string_pattern = '^('.join('|', keys(%$strings)).')$'; - my $flags = 0; - - my @matches = `strings \"$knl\" | grep -E \"$string_pattern\"`; - foreach my $match (@matches) - { - chomp($match); - $flags |= $strings->{$match}; - } - - return $flags; -} - -sub configs_to_flags -{ - my ($knl, $tmp, $configs) = @_; - my $config_pattern = '^('.join('|', keys(%$configs)).')=(.*)$'; - my $cf1 = 'IKCFG_ST\037\213\010'; - my $cf2 = '0123456789'; - my $flags = 0; - - my $pos = `tr "$cf1\n$cf2" "\n$cf2=" < "$knl" | grep -abo "^$cf2"`; - if ($pos) - { - $pos =~ s/:.*[\r\n]*$//s; - $pos += 8; - my $err = (system("tail -c+$pos \"$knl\" | zcat > $tmp 2> /dev/null") >> 8); - if (($err == 0) || ($err == 2)) - { - if (open(my $fh, '<', $tmp)) - { - while (my $line = <$fh>) - { - chomp($line); - if (($line =~ /$config_pattern/) && - (($2 eq 'y') || ($2 eq 'm'))) - { - $flags |= $configs->{$1}; - } - } - - close($fh); - } - } - } - - return $flags; -} - -sub pack_trailer -{ - my ($atoms) = @_; - my $trailer = pack('VV', 0, 0); - for (my $i = $#$atoms; $i>=0; $i--) - { - my $atom = $atoms->[$i]; - $trailer .= pack('a*x!4Va4', $atom->[1], length($atom->[1]), $atom->[0]); - } - return $trailer; -} diff --git a/package/rpi-firmware/rpi-firmware.hash b/package/rpi-firmware/rpi-firmware.hash new file mode 100644 index 0000000000..8161d7aeba --- /dev/null +++ b/package/rpi-firmware/rpi-firmware.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 144de63ee1999155fc1ff597630f1a13f798e597e7c4d144b8b625fa774c1f9b rpi-firmware-7f8ac8dac0b80291cbf5e56580139034a0a42070.tar.gz diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk index 61d1a7cc2b..d2cd481911 100644 --- a/package/rpi-firmware/rpi-firmware.mk +++ b/package/rpi-firmware/rpi-firmware.mk @@ -4,15 +4,12 @@ # ################################################################################ -RPI_FIRMWARE_VERSION = 2190ebaaab17d690fb4a6aa767ff7755eaf51b12 +RPI_FIRMWARE_VERSION = 7f8ac8dac0b80291cbf5e56580139034a0a42070 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION)) RPI_FIRMWARE_LICENSE = BSD-3c RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom -RPI_FIRMWARE_INSTALL_TARGET = NO RPI_FIRMWARE_INSTALL_IMAGES = YES -RPI_FIRMWARE_DEPENDENCIES += host-rpi-firmware - ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y) define RPI_FIRMWARE_INSTALL_DTB $(INSTALL) -D -m 0644 $(@D)/boot/bcm2708-rpi-b.dtb $(BINARIES_DIR)/rpi-firmware/bcm2708-rpi-b.dtb @@ -47,14 +44,4 @@ define RPI_FIRMWARE_INSTALL_IMAGES_CMDS $(RPI_FIRMWARE_INSTALL_DTB_OVERLAYS) endef -# We have no host sources to get, since we already -# bundle the script we want to install. -HOST_RPI_FIRMWARE_SOURCE = -HOST_RPI_FIRMWARE_DEPENDENCIES = - -define HOST_RPI_FIRMWARE_INSTALL_CMDS - $(INSTALL) -D -m 0755 package/rpi-firmware/mkknlimg $(HOST_DIR)/usr/bin/mkknlimg -endef - $(eval $(generic-package)) -$(eval $(host-generic-package)) diff --git a/package/rpi-userland/S94vcfiled b/package/rpi-userland/S94vcfiled index a70e0ae67d..4d27b91bae 100755 --- a/package/rpi-userland/S94vcfiled +++ b/package/rpi-userland/S94vcfiled @@ -12,14 +12,14 @@ PIDFILE="/var/run/$NAME.pid" start() { - echo -n "Starting $DESC: " + printf "Starting $DESC: " start-stop-daemon -S -q -p "$PIDFILE" -x "$DAEMON" -- $DAEMON_ARGS && echo "done" || echo "failed" } stop() { - echo -n "Stopping $DESC: " + printf "Stopping $DESC: " if start-stop-daemon -K -q -R TERM/30/KILL/5 -p "$PIDFILE" -n "$NAME"; then # This daemon does not remove its PID file when it exits. rm -f "$PIDFILE" diff --git a/package/rpi-userland/rpi-userland.hash b/package/rpi-userland/rpi-userland.hash new file mode 100644 index 0000000000..24b6584bc9 --- /dev/null +++ b/package/rpi-userland/rpi-userland.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 f229c29ceae611101bf4716b112251b2f2a33cfbb6636d736deda4e1314bb9d9 rpi-userland-c139376e9bc6fbd93f777c7fc3c7d7cf2cc35122.tar.gz diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk index 30ea69e8c0..4e3b4ec47b 100644 --- a/package/rpi-userland/rpi-userland.mk +++ b/package/rpi-userland/rpi-userland.mk @@ -4,13 +4,14 @@ # ################################################################################ -RPI_USERLAND_VERSION = 338428cf852c658e39987c06b845cb6332394109 +RPI_USERLAND_VERSION = c139376e9bc6fbd93f777c7fc3c7d7cf2cc35122 RPI_USERLAND_SITE = $(call github,raspberrypi,userland,$(RPI_USERLAND_VERSION)) RPI_USERLAND_LICENSE = BSD-3c RPI_USERLAND_LICENSE_FILES = LICENCE RPI_USERLAND_INSTALL_STAGING = YES RPI_USERLAND_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr \ - -DCMAKE_C_FLAGS="-DVCFILED_LOCKFILE=\\\"/var/run/vcfiled.pid\\\"" + -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) \ + -DVCFILED_LOCKFILE=\\\"/var/run/vcfiled.pid\\\"" RPI_USERLAND_PROVIDES = libegl libgles libopenmax libopenvg diff --git a/package/rpm/0001-Detect-bfd.h-to-enable-disable-sepdebugcrcfix-buildi.patch b/package/rpm/0001-Detect-bfd.h-to-enable-disable-sepdebugcrcfix-buildi.patch new file mode 100644 index 0000000000..e1fd0697e6 --- /dev/null +++ b/package/rpm/0001-Detect-bfd.h-to-enable-disable-sepdebugcrcfix-buildi.patch @@ -0,0 +1,55 @@ +From edadcf67980764c104c25c7c1a0ba91257b89698 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 8 Dec 2016 23:33:30 +0100 +Subject: [PATCH 1/2] Detect bfd.h to enable/disable sepdebugcrcfix building + +tools/sepdebugcrcfix includes , but this header from binutils +is not checked in the configure script. Due to this, sepdebugcrcfix is +attempted to be built even when is not available. This commit +addresses that by adding the appropriate configure check. + +This fixes the following build error: + +tools/sepdebugcrcfix.c:31:17: fatal error: bfd.h: No such file or directory +compilation terminated. +make[3]: *** [tools/sepdebugcrcfix.o] Error 1 + +Signed-off-by: Thomas Petazzoni +--- + Makefile.am | 2 ++ + configure.ac | 3 +++ + 2 files changed, 5 insertions(+) + +diff --git a/Makefile.am b/Makefile.am +index 863138c..d8a68f0 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -168,9 +168,11 @@ elfdeps_SOURCES = tools/elfdeps.c + elfdeps_LDADD = rpmio/librpmio.la + elfdeps_LDADD += @WITH_LIBELF_LIB@ @WITH_POPT_LIB@ + ++if HAS_BFD_H + rpmlibexec_PROGRAMS += sepdebugcrcfix + sepdebugcrcfix_SOURCES = tools/sepdebugcrcfix.c + sepdebugcrcfix_LDADD = @WITH_LIBELF_LIB@ ++endif # HAS_BFD_H + endif + endif + +diff --git a/configure.ac b/configure.ac +index c5ae701..b99ecb8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -242,6 +242,9 @@ AC_CHECK_HEADERS([dwarf.h], [ + ]) + AM_CONDITIONAL(LIBDWARF,[test "$WITH_LIBDWARF" = yes]) + ++AC_CHECK_HEADERS([bfd.h]) ++AM_CONDITIONAL(HAS_BFD_H, [test "${ac_cv_header_bfd_h}" = "yes"]) ++ + #================= + # Check for beecrypt library if requested. + AC_ARG_WITH(beecrypt, [ --with-beecrypt build with beecrypt support ],,[with_beecrypt=no]) +-- +2.7.4 + diff --git a/package/rpm/0002-depends-fix.patch b/package/rpm/0002-depends-fix.patch deleted file mode 100644 index 4a92775763..0000000000 --- a/package/rpm/0002-depends-fix.patch +++ /dev/null @@ -1,19 +0,0 @@ -Bugfix included upstream - -diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_depends-fix/lib/depends.c ---- rpm-5.2.0_vanilla/lib/depends.c 2009-05-23 01:23:46.000000000 +0000 -+++ rpm-5.2.0_depends-fix/lib/depends.c 2009-09-22 06:33:37.950783501 +0000 -@@ -2371,11 +2371,11 @@ - - memset(selected, 0, sizeof(*selected) * ts->orderCount); - -- if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) { -- - /* Avoid narcisstic relations. */ - selected[rpmtsiOc(pi)] = 1; - -+ if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) { -+ - /* T2. Next "q <- p" relation. */ - - /* First, do pre-requisites. */ diff --git a/package/rpm/0002-tools-sepdebugcrcfix.c-fix-build-with-recent-binutil.patch b/package/rpm/0002-tools-sepdebugcrcfix.c-fix-build-with-recent-binutil.patch new file mode 100644 index 0000000000..bebe94511d --- /dev/null +++ b/package/rpm/0002-tools-sepdebugcrcfix.c-fix-build-with-recent-binutil.patch @@ -0,0 +1,43 @@ +From 65afab91444d4996a8e61d1e2d27d52e18417ef5 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 8 Dec 2016 23:45:55 +0100 +Subject: [PATCH 2/2] tools/sepdebugcrcfix.c: fix build with recent binutils + +Moderately recent binutils versions install a header that +checks if config.h is included. While this makes sense in binutils +itself, it does not outside. So the binutils developers have added a +check: if PACKAGE or PACKAGE_VERSION are defined, they assume you're +re-using bfd.h outside of binutils, and therefore including it without +including config.h is legit. + +So we take the same approch as numerous users of bfd.h: fake a PACKAGE +definition. See for example tools/perf/util/srcline.c in the Linux +kernel source tree. + +This fixes the following build error: + +In file included from tools/sepdebugcrcfix.c:31:0: +/home/test/autobuild/run/instance-0/output/host/usr/arc-buildroot-linux-uclibc/sysroot/usr/include/bfd.h:35:2: error: #error config.h must be included before this header + #error config.h must be included before this header + +Signed-off-by: Thomas Petazzoni +--- + tools/sepdebugcrcfix.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/tools/sepdebugcrcfix.c b/tools/sepdebugcrcfix.c +index cd7fa02..e7b480f 100644 +--- a/tools/sepdebugcrcfix.c ++++ b/tools/sepdebugcrcfix.c +@@ -28,6 +28,8 @@ + #include + #include + #include ++/* Needed to please */ ++#define PACKAGE "rpm" + #include + + #define _(x) x +-- +2.7.4 + diff --git a/package/rpm/0003-exclude-some-tools.patch b/package/rpm/0003-exclude-some-tools.patch deleted file mode 100644 index 2cbc7cbf6a..0000000000 --- a/package/rpm/0003-exclude-some-tools.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -ru rpm-5.2.0_vanilla/tools/Makefile.am rpm-5.2.0_exclude-some-tools/tools/Makefile.am ---- rpm-5.2.0_vanilla/tools/Makefile.am 2009-06-03 01:24:42.000000000 +0000 -+++ rpm-5.2.0_exclude-some-tools/tools/Makefile.am 2009-12-20 07:47:13.000000000 +0000 -@@ -45,9 +45,7 @@ - bin_PROGRAMS = rpm2cpio - - pkgbindir = @USRLIBRPM@/bin --pkgbin_PROGRAMS = \ -- rpmcache rpmdigest grep mtree rpmrepo rpmspecdump wget \ -- rpmcmp rpmdeps @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@ -+pkgbin_PROGRAMS = - dist_man_MANS = rpmgrep.1 - - debugedit_SOURCES = debugedit.c hashtab.c -diff -ru rpm-5.2.0_vanilla/tools/Makefile.in rpm-5.2.0_exclude-some-tools/tools/Makefile.in ---- rpm-5.2.0_vanilla/tools/Makefile.in 2009-07-07 21:14:06.000000000 +0000 -+++ rpm-5.2.0_exclude-some-tools/tools/Makefile.in 2009-12-20 07:47:37.000000000 +0000 -@@ -39,11 +39,7 @@ - target_triplet = @target@ - EXTRA_PROGRAMS = rpmkey$(EXEEXT) debugedit$(EXEEXT) - bin_PROGRAMS = rpm2cpio$(EXEEXT) --pkgbin_PROGRAMS = rpmcache$(EXEEXT) rpmdigest$(EXEEXT) grep$(EXEEXT) \ -- mtree$(EXEEXT) rpmrepo$(EXEEXT) rpmspecdump$(EXEEXT) \ -- wget$(EXEEXT) rpmcmp$(EXEEXT) rpmdeps$(EXEEXT) \ -- @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@ $(am__EXEEXT_1) \ -- $(am__EXEEXT_2) -+pkgbin_PROGRAMS = - @WITH_XAR_TRUE@am__append_1 = txar - @WITH_DB_INTERNAL_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_2 = db_tool - @WITH_DB_INTERNAL_TRUE@@WITH_DB_RPC_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_3 = \ diff --git a/package/rpm/0004-ignore-shared-mutexes.patch b/package/rpm/0004-ignore-shared-mutexes.patch deleted file mode 100644 index f19d6b6f32..0000000000 --- a/package/rpm/0004-ignore-shared-mutexes.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru rpm-5.2.0_vanilla/db/env/env_open.c rpm-5.2.0_test/db/env/env_open.c ---- rpm-5.2.0_vanilla/db/env/env_open.c 2008-05-28 01:23:27.000000000 +0000 -+++ rpm-5.2.0_test/db/env/env_open.c 2009-12-24 14:54:55.000000000 +0000 -@@ -124,7 +124,7 @@ - } - } - --#ifdef HAVE_MUTEX_THREAD_ONLY -+#ifdef NK_HAVE_MUTEX_THREAD_ONLY - /* - * Currently we support one kind of mutex that is intra-process only, - * POSIX 1003.1 pthreads, because a variety of systems don't support diff --git a/package/rpm/0005-no-parentdirs.patch b/package/rpm/0005-no-parentdirs.patch deleted file mode 100644 index d05c99ad61..0000000000 --- a/package/rpm/0005-no-parentdirs.patch +++ /dev/null @@ -1,14 +0,0 @@ -Reduce parentdirs we use, parentdirs are used for ordering -Included upstream -diff -u --new-file --recursive rpm-5.1.9_vanilla/lib/depends.c rpm-5.1.9_no-parentdirs/lib/depends.c ---- rpm-5.1.9_vanilla/lib/depends.c 2009-04-12 19:46:17.000000000 +0000 -+++ rpm-5.1.9_no-parentdirs/lib/depends.c 2009-06-13 15:21:43.504999639 +0000 -@@ -2257,7 +2257,7 @@ - #define isAuto(_x) ((_x) & _autobits) - - /*@unchecked@*/ --static int slashDepth = 100; /* #slashes pemitted in parentdir deps. */ -+static int slashDepth = 2; /* #slashes pemitted in parentdir deps. */ - - static int countSlashes(const char * dn) - /*@*/ diff --git a/package/rpm/0006-ordering-fix.patch b/package/rpm/0006-ordering-fix.patch deleted file mode 100644 index a618e1f2c9..0000000000 --- a/package/rpm/0006-ordering-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -Included upstream ---- x/lib/depends.c 2009/05/15 13:40:58 1.445 -+++ y/lib/depends.c 2009/08/22 22:12:02 1.446 -@@ -2216,9 +2216,6 @@ - { - rpmte q, qprev; - -- /* Mark the package as queued. */ -- rpmteTSI(p)->tsi_queued = 1; -- - if ((*rp) == NULL) { /* 1st element */ - /*@-dependenttrans@*/ /* FIX: double indirection */ - (*rp) = (*qp) = p; -@@ -2238,6 +2235,12 @@ - /* XXX Insure removed after added. */ - if (rpmteType(p) == TR_REMOVED && rpmteType(p) != rpmteType(q)) - continue; -+ -+ /* XXX Follow all previous generations in the queue. */ -+ if (rpmteTSI(p)->tsi_queued > rpmteTSI(q)->tsi_queued) -+ continue; -+ -+ /* XXX Within a generation, queue behind more "important". */ - if (rpmteTSI(q)->tsi_qcnt <= rpmteTSI(p)->tsi_qcnt) - break; - } -@@ -2521,6 +2524,9 @@ - - if (rpmteTSI(p)->tsi_count != 0) - continue; -+ -+ /* Mark the package as queued. */ -+ rpmteTSI(p)->tsi_queued = orderingCount + 1; - rpmteTSI(p)->tsi_suc = NULL; - addQ(p, &q, &r, prefcolor); - qlen++; -@@ -2584,6 +2590,8 @@ - (void) rpmteSetParent(p, q); - (void) rpmteSetDegree(q, rpmteDegree(q)+1); - -+ /* Mark the package as queued. */ -+ rpmteTSI(p)->tsi_queued = orderingCount + 1; - /* XXX TODO: add control bit. */ - rpmteTSI(p)->tsi_suc = NULL; - /*@-nullstate@*/ /* XXX FIX: rpmteTSI(q)->tsi_suc can be NULL. */ diff --git a/package/rpm/0007-parentdir-vs-requires.patch b/package/rpm/0007-parentdir-vs-requires.patch deleted file mode 100644 index 309ab254e0..0000000000 --- a/package/rpm/0007-parentdir-vs-requires.patch +++ /dev/null @@ -1,37 +0,0 @@ -Avoid looking up files or directories that this package provides -Included upstream -diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_parentdir-vs-requires/lib/depends.c ---- rpm-5.2.0_vanilla/lib/depends.c 2009-05-23 01:23:46.000000000 +0000 -+++ rpm-5.2.0_parentdir-vs-requires/lib/depends.c 2009-09-22 17:00:24.880956271 +0000 -@@ -2095,6 +2095,7 @@ - rpmtsi qi; rpmte q; - tsortInfo tsi; - nsType NSType = rpmdsNSType(requires); -+ const char * N = rpmdsN(requires); - fnpyKey key; - int teType = rpmteType(p); - alKey pkgKey; -@@ -2128,6 +2129,23 @@ - break; - } - -+ /* Avoid looking up files/directories that are "owned" by _THIS_ package. */ -+ if (*N == '/') { -+ rpmfi fi = rpmteFI(p, RPMTAG_BASENAMES); -+ int bingo = 0; -+ -+ fi = rpmfiInit(fi, 0); -+ while (rpmfiNext(fi) >= 0) { -+ const char * fn = rpmfiFN(fi); -+ if (strcmp(N, fn)) -+ continue; -+ bingo = 1; -+ break; -+ } -+ if (bingo) -+ return 0; -+ } -+ - pkgKey = RPMAL_NOMATCH; - key = rpmalSatisfiesDepend(al, requires, &pkgKey); - diff --git a/package/rpm/0008-short-circuit-c99.patch b/package/rpm/0008-short-circuit-c99.patch deleted file mode 100644 index 5d7b53a25d..0000000000 --- a/package/rpm/0008-short-circuit-c99.patch +++ /dev/null @@ -1,235 +0,0 @@ -Buildroot specific -diff -ru rpm-5.1.9_vanilla/xz/configure rpm-5.1.9_short-circuit-c99/xz/configure ---- rpm-5.1.9_vanilla/xz/configure 2009-04-18 16:47:23.000000000 +0000 -+++ rpm-5.1.9_short-circuit-c99/xz/configure 2009-08-04 08:25:59.000000000 +0000 -@@ -4970,214 +4970,7 @@ - am__fastdepCC_FALSE= - fi - -- -- { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5 --$as_echo_n "checking for $CC option to accept ISO C99... " >&6; } --if test "${ac_cv_prog_cc_c99+set}" = set; then -- $as_echo_n "(cached) " >&6 --else -- ac_cv_prog_cc_c99=no --ac_save_CC=$CC --cat >conftest.$ac_ext <<_ACEOF --/* confdefs.h. */ --_ACEOF --cat confdefs.h >>conftest.$ac_ext --cat >>conftest.$ac_ext <<_ACEOF --/* end confdefs.h. */ --#include --#include --#include --#include --#include -- --// Check varargs macros. These examples are taken from C99 6.10.3.5. --#define debug(...) fprintf (stderr, __VA_ARGS__) --#define showlist(...) puts (#__VA_ARGS__) --#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) --static void --test_varargs_macros (void) --{ -- int x = 1234; -- int y = 5678; -- debug ("Flag"); -- debug ("X = %d\n", x); -- showlist (The first, second, and third items.); -- report (x>y, "x is %d but y is %d", x, y); --} -- --// Check long long types. --#define BIG64 18446744073709551615ull --#define BIG32 4294967295ul --#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) --#if !BIG_OK -- your preprocessor is broken; --#endif --#if BIG_OK --#else -- your preprocessor is broken; --#endif --static long long int bignum = -9223372036854775807LL; --static unsigned long long int ubignum = BIG64; -- --struct incomplete_array --{ -- int datasize; -- double data[]; --}; -- --struct named_init { -- int number; -- const wchar_t *name; -- double average; --}; -- --typedef const char *ccp; -- --static inline int --test_restrict (ccp restrict text) --{ -- // See if C++-style comments work. -- // Iterate through items via the restricted pointer. -- // Also check for declarations in for loops. -- for (unsigned int i = 0; *(text+i) != '\0'; ++i) -- continue; -- return 0; --} -- --// Check varargs and va_copy. --static void --test_varargs (const char *format, ...) --{ -- va_list args; -- va_start (args, format); -- va_list args_copy; -- va_copy (args_copy, args); -- -- const char *str; -- int number; -- float fnumber; -- -- while (*format) -- { -- switch (*format++) -- { -- case 's': // string -- str = va_arg (args_copy, const char *); -- break; -- case 'd': // int -- number = va_arg (args_copy, int); -- break; -- case 'f': // float -- fnumber = va_arg (args_copy, double); -- break; -- default: -- break; -- } -- } -- va_end (args_copy); -- va_end (args); --} -- --int --main () --{ -- -- // Check bool. -- _Bool success = false; -- -- // Check restrict. -- if (test_restrict ("String literal") == 0) -- success = true; -- char *restrict newvar = "Another string"; -- -- // Check varargs. -- test_varargs ("s, d' f .", "string", 65, 34.234); -- test_varargs_macros (); -- -- // Check flexible array members. -- struct incomplete_array *ia = -- malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); -- ia->datasize = 10; -- for (int i = 0; i < ia->datasize; ++i) -- ia->data[i] = i * 1.234; -- -- // Check named initializers. -- struct named_init ni = { -- .number = 34, -- .name = L"Test wide string", -- .average = 543.34343, -- }; -- -- ni.number = 58; -- -- int dynamic_array[ni.number]; -- dynamic_array[ni.number - 1] = 543; -- -- // work around unused variable warnings -- return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' -- || dynamic_array[ni.number - 1] != 543); -- -- ; -- return 0; --} --_ACEOF --for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -xc99=all -qlanglvl=extc99 --do -- CC="$ac_save_CC $ac_arg" -- rm -f conftest.$ac_objext --if { (ac_try="$ac_compile" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" --$as_echo "$ac_try_echo") >&5 -- (eval "$ac_compile") 2>conftest.er1 -- ac_status=$? -- grep -v '^ *+' conftest.er1 >conftest.err -- rm -f conftest.er1 -- cat conftest.err >&5 -- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 -- (exit $ac_status); } && { -- test -z "$ac_c_werror_flag" || -- test ! -s conftest.err -- } && test -s conftest.$ac_objext; then -- ac_cv_prog_cc_c99=$ac_arg --else -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- --fi -- --rm -f core conftest.err conftest.$ac_objext -- test "x$ac_cv_prog_cc_c99" != "xno" && break --done --rm -f conftest.$ac_ext --CC=$ac_save_CC -- --fi --# AC_CACHE_VAL --case "x$ac_cv_prog_cc_c99" in -- x) -- { $as_echo "$as_me:$LINENO: result: none needed" >&5 --$as_echo "none needed" >&6; } ;; -- xno) -- { $as_echo "$as_me:$LINENO: result: unsupported" >&5 --$as_echo "unsupported" >&6; } ;; -- *) -- CC="$CC $ac_cv_prog_cc_c99" -- { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5 --$as_echo "$ac_cv_prog_cc_c99" >&6; } ;; --esac -- -- -- --if test x$ac_cv_prog_cc_c99 = xno ; then -- { { $as_echo "$as_me:$LINENO: error: No C99 compiler was found." >&5 --$as_echo "$as_me: error: No C99 compiler was found." >&2;} -- { (exit 1); exit 1; }; } --fi -+CC="$CC -std=c99" - - if test "x$CC" != xcc; then - { $as_echo "$as_me:$LINENO: checking whether $CC and cc understand -c and -o together" >&5 -diff -ru rpm-5.1.9_vanilla/xz/configure.ac rpm-5.1.9_short-circuit-c99/xz/configure.ac ---- rpm-5.1.9_vanilla/xz/configure.ac 2009-02-16 17:07:46.000000000 +0000 -+++ rpm-5.1.9_short-circuit-c99/xz/configure.ac 2009-08-04 08:25:28.000000000 +0000 -@@ -402,10 +402,7 @@ - AM_INIT_AUTOMAKE([1.10 foreign tar-v7 filename-length-max=99]) - AC_PROG_LN_S - --AC_PROG_CC_C99 --if test x$ac_cv_prog_cc_c99 = xno ; then -- AC_MSG_ERROR([No C99 compiler was found.]) --fi -+CC="$CC -std=c99" - - AM_PROG_CC_C_O - AM_PROG_AS diff --git a/package/rpm/Config.in b/package/rpm/Config.in index ad8279ef28..9b4c8a7e82 100644 --- a/package/rpm/Config.in +++ b/package/rpm/Config.in @@ -1,26 +1,21 @@ -comment "rpm needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_USE_MMU # fork() - -comment "rpm needs a toolchain w/ gcc >= 5" - depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5 && BR2_sh +comment "rpm needs a toolchain w/ dynamic library and threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + depends on BR2_USE_MMU config BR2_PACKAGE_RPM bool "rpm" - # triggers internal compiler error - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 || !BR2_sh + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS depends on BR2_TOOLCHAIN_HAS_THREADS # beecrypt depends on BR2_USE_MMU # fork() - select BR2_PACKAGE_BEECRYPT + select BR2_PACKAGE_BEECRYPT if !BR2_PACKAGE_LIBNSS + select BR2_PACKAGE_BERKELEYDB + select BR2_PACKAGE_FILE select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE - select BR2_PACKAGE_NEON - select BR2_PACKAGE_NEON_SSL - select BR2_PACKAGE_NEON_XML - select BR2_PACKAGE_NEON_ZLIB - select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_POPT select BR2_PACKAGE_ZLIB help - The RPM package management system. + The RPM Package Manager (RPM). - http://rpm5.org + http://www.rpm.org/ diff --git a/package/rpm/rpm.hash b/package/rpm/rpm.hash index 06657464ee..c9c4d659a1 100644 --- a/package/rpm/rpm.hash +++ b/package/rpm/rpm.hash @@ -1,2 +1,5 @@ -# Locally calculated -sha256 34a959c0ed670cadcdc52c6025e822fac6f5d1015e3b75123f53ebe53b923e98 rpm-5.2.0.tar.gz +# From http://rpm.org/wiki/Releases/4.13.0 +sha1 c6ce4f879ca6a75340921093105e5ef9d33381d3 rpm-4.13.0.tar.bz2 +# Locally computed +sha256 a3e5568d721737a24141737e6036bb39ba9dfbeaa03fa4a51cc7881a243e0c5d b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch +sha256 7ab0e08e143bb2d43d5b0553ee22ea34da15a611c597860a6110745467d20fa8 c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch diff --git a/package/rpm/rpm.mk b/package/rpm/rpm.mk index 7f346b213a..2e829d751a 100644 --- a/package/rpm/rpm.mk +++ b/package/rpm/rpm.mk @@ -4,61 +4,86 @@ # ################################################################################ -RPM_VERSION_MAJOR = 5.2 -RPM_VERSION = $(RPM_VERSION_MAJOR).0 -RPM_SITE = http://rpm5.org/files/rpm/rpm-$(RPM_VERSION_MAJOR) -RPM_DEPENDENCIES = host-pkgconf zlib beecrypt neon popt openssl -RPM_LICENSE = LGPLv2.1 -RPM_LICENSE_FILES = COPYING.LIB +RPM_VERSION = 4.13.0 +RPM_SOURCE = rpm-$(RPM_VERSION).tar.bz2 +RPM_SITE = https://github.com/rpm-software-management/rpm/releases/download/rpm-$(RPM_VERSION)-release +RPM_DEPENDENCIES = host-pkgconf berkeleydb file popt zlib +RPM_LICENSE = GPLv2 or LGPLv2 (library only) +RPM_LICENSE_FILES = COPYING +RPM_PATCH = \ + https://github.com/rpm-software-management/rpm/commit/b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch \ + https://github.com/rpm-software-management/rpm/commit/c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch -RPM_CONF_ENV = \ - CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/beecrypt -I$(STAGING_DIR)/usr/include/neon -DHAVE_MUTEX_THREAD_ONLY" \ - ac_cv_va_copy=yes +# b5f1895aae096836d6e8e155ee289e1b10fcabcb.patch +# c810a0aca3f1148d2072d44b91b8cc9caeb4cf19.patch +RPM_AUTORECONF = YES RPM_CONF_OPTS = \ - --disable-build-versionscript \ + --disable-python \ --disable-rpath \ - --without-selinux \ - --without-python \ - --without-perl \ - --with-openssl=external \ - --with-zlib=external \ - --with-libbeecrypt=$(STAGING_DIR) \ - --with-popt=external + --with-external-db \ + --with-gnu-ld \ + --without-cap \ + --without-hackingdocs \ + --without-lua + +ifeq ($(BR2_PACKAGE_ACL),y) +RPM_DEPENDENCIES += acl +RPM_CONF_OPTS += --with-acl +else +RPM_CONF_OPTS += --without-acl +endif + +ifeq ($(BR2_PACKAGE_LIBNSS),y) +RPM_DEPENDENCIES += libnss +RPM_CONF_OPTS += --without-beecrypt +RPM_CFLAGS += -I$(STAGING_DIR)/usr/include/nss -I$(STAGING_DIR)/usr/include/nspr +else +RPM_DEPENDENCIES += beecrypt +RPM_CONF_OPTS += --with-beecrypt +RPM_CFLAGS += -I$(STAGING_DIR)/usr/include/beecrypt +endif ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) RPM_DEPENDENCIES += gettext -endif - -ifeq ($(BR2_PACKAGE_PCRE),y) -RPM_DEPENDENCIES += pcre -RPM_CONF_OPTS += --with-pcre=external +RPM_CONF_OPTS += --with-libintl-prefix=$(STAGING_DIR)/usr else -RPM_CONF_OPTS += --with-pcre=none +RPM_CONF_OPTS += --without-libintl-prefix endif -ifeq ($(BR2_PACKAGE_FILE),y) -RPM_DEPENDENCIES += file -RPM_CONF_OPTS += --with-file=external +ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) +RPM_DEPENDENCIES += libarchive +RPM_CONF_OPTS += --with-archive else -RPM_CONF_OPTS += --with-file=none +RPM_CONF_OPTS += --without-archive endif -# xz payload support needs a toolchain w/ C++ -ifeq ($(BR2_PACKAGE_XZ)$(BR2_INSTALL_LIBSTDCPP),yy) -RPM_DEPENDENCIES += xz -RPM_CONF_OPTS += --with-xz=external +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +RPM_DEPENDENCIES += libselinux +RPM_CONF_OPTS += --with-selinux else -RPM_CONF_OPTS += --with-xz=none +RPM_CONF_OPTS += --without-selinux endif -ifeq ($(BR2_PACKAGE_BZIP2),y) -RPM_CONF_OPTS += --with-bzip2 -RPM_DEPENDENCIES += bzip2 +# For the elfutils and binutils dependencies, there are no +# configuration options to explicitly enable/disable them. +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +RPM_DEPENDENCIES += elfutils endif -RPM_MAKE = $(MAKE1) +ifeq ($(BR2_PACKAGE_BINUTILS),y) +RPM_DEPENDENCIES += binutils +endif -RPM_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) program_transform_name= install +# RPM, when using NLS, requires GNU gettext's _nl_msg_cat_cntr, which is not +# provided in musl. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +RPM_CONF_OPTS += --disable-nls +endif + +# ac_cv_prog_cc_c99: RPM uses non-standard GCC extensions (ex. `asm`). +RPM_CONF_ENV = \ + ac_cv_prog_cc_c99='-std=gnu99' \ + CFLAGS="$(TARGET_CFLAGS) $(RPM_CFLAGS)" $(eval $(autotools-package)) diff --git a/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch b/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch deleted file mode 100644 index afb62927de..0000000000 --- a/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch +++ /dev/null @@ -1,71 +0,0 @@ -From deaef0790f3cbbce826275d3564551fc9568b628 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 2 Dec 2015 14:31:52 -0300 -Subject: [PATCH] Add configure option to disable documentation - -Signed-off-by: Gustavo Zacarias ---- - Makefile.am | 6 +++++- - configure.ac | 8 ++++++++ - 2 files changed, 13 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index f45975c..1f46a9b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -5,7 +5,11 @@ RSYNC = rsync --rsh=ssh - - # build the following subdirectories - --SUBDIRS = po src doc bindings tests -+SUBDIRS = po src bindings tests -+ -+if BUILD_DOCS -+SUBDIRS += doc -+endif - - if BUILD_EXAMPLES - SUBDIRS += examples -diff --git a/configure.ac b/configure.ac -index dc70e7d..7460c67 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -100,6 +100,9 @@ AC_ARG_VAR(RRDGRAPH_YLEGEND_ANGLE, - AC_DEFINE_UNQUOTED(RRDGRAPH_YLEGEND_ANGLE,${RRDGRAPH_YLEGEND_ANGLE:-90.0}, - [Vertical label angle: -90.0 (default) or 90.0]) - -+AC_ARG_ENABLE(docs,AS_HELP_STRING([--disable-docs],[disable building documentation]), -+[],[enable_docs=yes]) -+ - AC_ARG_ENABLE(examples,AS_HELP_STRING([--disable-examples],[disable building of examples]), - [],[enable_examples=yes]) - -@@ -115,6 +118,7 @@ AC_ARG_ENABLE(rrd_graph,AS_HELP_STRING([--disable-rrd_graph],[disable all rrd_gr - AC_ARG_ENABLE(rrd_restore,AS_HELP_STRING([--disable-rrd_restore],[disable rrd_restore XML import functions]), - [],[enable_rrd_restore=yes]) - -+AM_CONDITIONAL(BUILD_DOCS,[test $enable_docs != no]) - AM_CONDITIONAL(BUILD_EXAMPLES,[test $enable_examples != no]) - AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no]) - AM_CONDITIONAL(BUILD_RRDCACHED,[test $enable_rrdcached != no]) -@@ -945,6 +949,8 @@ fi - - AC_SUBST(COMP_PYTHON) - -+if test $enable_docs != no; then -+ - dnl Check for nroff - AC_ARG_VAR(NROFF, [path to the local nroff version]) - AC_PATH_PROGS(NROFF, [gnroff nroff]) -@@ -961,6 +967,8 @@ AC_ARG_VAR(RRDDOCDIR, [[DATADIR/doc/PACKAGE-VERSION] Documentation directory]) - if test -z "$RRDDOCDIR"; then - RRDDOCDIR='${datadir}/doc/${PACKAGE}-${VERSION}'; fi - -+fi -+ - # systemd check - PKG_PROG_PKG_CONFIG - AC_ARG_WITH([systemdsystemunitdir], --- -2.4.10 - diff --git a/package/rrdtool/Config.in b/package/rrdtool/Config.in index 631ed32847..3d8c0c6444 100644 --- a/package/rrdtool/Config.in +++ b/package/rrdtool/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_RRDTOOL depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT help RRDtool is the OpenSource industry standard, high performance data logging and graphing system for time series data. diff --git a/package/rrdtool/rrdtool.hash b/package/rrdtool/rrdtool.hash index 97741c916b..cff5501de9 100644 --- a/package/rrdtool/rrdtool.hash +++ b/package/rrdtool/rrdtool.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9832775479684b8f94767201ee0440a1cacdbbbb7dd6736eb96b9a0750644ce8 rrdtool-1.5.6.tar.gz +sha256 cd948e89cd2d8825fab4a6fb0323f810948d934af7d92c9ee8b5e9e1350e52d7 rrdtool-1.6.0.tar.gz diff --git a/package/rrdtool/rrdtool.mk b/package/rrdtool/rrdtool.mk index 6d6ab0c6a1..abca1d80f5 100644 --- a/package/rrdtool/rrdtool.mk +++ b/package/rrdtool/rrdtool.mk @@ -4,12 +4,13 @@ # ################################################################################ -RRDTOOL_VERSION = 1.5.6 +RRDTOOL_VERSION = 1.6.0 RRDTOOL_SITE = http://oss.oetiker.ch/rrdtool/pub RRDTOOL_LICENSE = GPLv2+ with FLOSS license exceptions as explained in COPYRIGHT RRDTOOL_LICENSE_FILES = COPYRIGHT LICENSE RRDTOOL_DEPENDENCIES = host-pkgconf libglib2 -# For 0001-Add-configure-option-to-disable-documentation.patch +# autoreconf needed to avoid link failure due to missing -lintl, +# gettextize needed as a consequence of autoreconf RRDTOOL_AUTORECONF = YES RRDTOOL_GETTEXTIZE = YES RRDTOOL_INSTALL_STAGING = YES @@ -24,6 +25,11 @@ RRDTOOL_CONF_OPTS = \ --disable-ruby \ --disable-tcl + +ifeq ($(BR2_NEEDS_GETTEXT),y) +RRDTOOL_DEPENDENCIES += gettext +endif + ifeq ($(BR2_PACKAGE_RRDTOOL_RRDGRAPH),y) RRDTOOL_DEPENDENCIES += cairo pango else diff --git a/package/rs485conf/Config.in b/package/rs485conf/Config.in new file mode 100644 index 0000000000..ff0b7432fd --- /dev/null +++ b/package/rs485conf/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_RS485CONF + bool "rs485conf" + help + rs485conf is intended to be used on embedded boards with RS485 + interface. It can show as well as modify RS485 configuration + parameters of TTY device with easy to use command line + options. + + https://github.com/mniestroj/rs485conf diff --git a/package/rs485conf/rs485conf.hash b/package/rs485conf/rs485conf.hash new file mode 100644 index 0000000000..e2ccbfd433 --- /dev/null +++ b/package/rs485conf/rs485conf.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 f163f81cd50aae6fa39cbb4f6408a3699da7a87a56649c4b96d6f168c9be6a7d rs485conf-5c8d00cf70950fab3454549b81dea843d844492a.tar.gz diff --git a/package/rs485conf/rs485conf.mk b/package/rs485conf/rs485conf.mk new file mode 100644 index 0000000000..8749268fd5 --- /dev/null +++ b/package/rs485conf/rs485conf.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# rs485conf +# +################################################################################ + +RS485CONF_VERSION = 5c8d00cf70950fab3454549b81dea843d844492a +RS485CONF_SITE = $(call github,mniestroj,rs485conf,$(RS485CONF_VERSION)) +RS485CONF_LICENSE = BSD-3c +RS485CONF_LICENSE_FILES = LICENSE + +define RS485CONF_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define RS485CONF_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) PREFIX="$(TARGET_DIR)/usr" -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/rsh-redone/Config.in b/package/rsh-redone/Config.in index 316ff7a1db..6a8aec0369 100644 --- a/package/rsh-redone/Config.in +++ b/package/rsh-redone/Config.in @@ -17,9 +17,10 @@ config BR2_PACKAGE_RSH_REDONE_RLOGIND depends on !BR2_STATIC_LIBS depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on BR2_USE_MMU # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rlogind needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "rlogind 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 @@ -31,9 +32,10 @@ config BR2_PACKAGE_RSH_REDONE_RSHD depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR depends on !BR2_STATIC_LIBS depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam + depends on BR2_USE_MMU # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rshd needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "rshd 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 diff --git a/package/rsyslog/0001-musl-fcntl-h.patch b/package/rsyslog/0001-musl-fcntl-h.patch deleted file mode 100644 index 5c2daee695..0000000000 --- a/package/rsyslog/0001-musl-fcntl-h.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 835571774dc519dd2cff7ab1020cf298cc953a8f Mon Sep 17 00:00:00 2001 -From: Thordur Bjornsson -Date: Tue, 7 Jul 2015 12:34:08 +0200 -Subject: [PATCH] omfile: unconditionally include fcntl.h. - -required for open() flags - -Signed-off-by: Thordur Bjornsson -[Bernd: downloaded from upstream commit: - https://github.com/rsyslog/rsyslog/commit/835571774dc519dd2cff7ab1020cf298cc953a8f -Signed-off-by: Bernd Kuhls ---- - tools/omfile.c | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/tools/omfile.c b/tools/omfile.c -index 482e723..4444b97 100644 ---- a/tools/omfile.c -+++ b/tools/omfile.c -@@ -48,9 +48,7 @@ - #include - #include - #include --#ifdef OS_SOLARIS --# include --#endif -+#include - #ifdef HAVE_ATOMIC_BUILTINS - # include - #endif diff --git a/package/rsyslog/Config.in b/package/rsyslog/Config.in index 35992077a4..c4dc97af33 100644 --- a/package/rsyslog/Config.in +++ b/package/rsyslog/Config.in @@ -3,17 +3,23 @@ config BR2_PACKAGE_RSYSLOG select BR2_PACKAGE_ZLIB select BR2_PACKAGE_LIBESTR select BR2_PACKAGE_LIBLOGGING - select BR2_PACKAGE_JSON_C + select BR2_PACKAGE_LIBFASTJSON depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # modules - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + depends on !BR2_TOOLCHAIN_USES_MUSL # GLOB_BRACE + # Propagate the exact same dependency from libfastjson, + # even though rsyslog already depends on threads for itself: + depends on BR2_TOOLCHAIN_HAS_SYNC_4 || BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Rsyslog is a powerful and flexible syslog implementation http://www.rsyslog.com -comment "rsyslog needs a toolchain w/ threads, dynamic library" +comment "rsyslog needs a uClibc or glibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_MUSL + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/rsyslog/rsyslog.hash b/package/rsyslog/rsyslog.hash index 5f9e0edaab..4fe6a0e261 100644 --- a/package/rsyslog/rsyslog.hash +++ b/package/rsyslog/rsyslog.hash @@ -1,2 +1,2 @@ # From http://www.rsyslog.com/downloads/download-v8-stable/ -sha256 eab00e8e758cd9dd33b3e2cf6af80297d1951dc7db37bd723a6488a35d577adc rsyslog-8.9.0.tar.gz +sha256 06e2884181333dccecceaca82827ae24ca7a258b4fbf7b1e07a80d4caae640ca rsyslog-8.22.0.tar.gz diff --git a/package/rsyslog/rsyslog.mk b/package/rsyslog/rsyslog.mk index 5dde924316..3254d99933 100644 --- a/package/rsyslog/rsyslog.mk +++ b/package/rsyslog/rsyslog.mk @@ -4,11 +4,11 @@ # ################################################################################ -RSYSLOG_VERSION = 8.9.0 +RSYSLOG_VERSION = 8.22.0 RSYSLOG_SITE = http://rsyslog.com/files/download/rsyslog RSYSLOG_LICENSE = GPLv3, LGPLv3, Apache-2.0 RSYSLOG_LICENSE_FILES = COPYING COPYING.LESSER COPYING.ASL20 -RSYSLOG_DEPENDENCIES = zlib libestr liblogging json-c host-pkgconf +RSYSLOG_DEPENDENCIES = zlib libestr liblogging libfastjson host-pkgconf RSYSLOG_CONF_ENV = ac_cv_prog_cc_c99='-std=c99' RSYSLOG_PLUGINS = imdiag imfile impstats imptcp \ mmanon mmaudit mmfields mmjsonparse mmpstrucdata mmsequence mmutf8fix \ @@ -22,6 +22,13 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) RSYSLOG_DEPENDENCIES += busybox endif +ifeq ($(BR2_PACKAGE_GNUTLS),y) +RSYSLOG_DEPENDENCIES += gnutls +RSYSLOG_CONF_OPTS += --enable-gnutls +else +RSYSLOG_CONF_OPTS += --disable-gnutls +endif + ifeq ($(BR2_PACKAGE_LIBEE),y) RSYSLOG_DEPENDENCIES += libee endif @@ -59,11 +66,14 @@ endif ifeq ($(BR2_INIT_SYSTEMD),y) RSYSLOG_CONF_OPTS += \ - --enable-systemd \ + --enable-imjournal \ + --enable-omjournal \ --with-systemdsystemunitdir=/usr/lib/systemd/system RSYSLOG_DEPENDENCIES += systemd else -RSYSLOG_CONF_OPTS += --disable-systemd +RSYSLOG_CONF_OPTS += \ + --disable-imjournal \ + --disable-omjournal endif define RSYSLOG_INSTALL_INIT_SYSV diff --git a/package/rt-tests/0001-Fix-various-minor-issues-with-rt-tests-build-system.patch b/package/rt-tests/0001-Fix-various-minor-issues-with-rt-tests-build-system.patch new file mode 100644 index 0000000000..157514a8e3 --- /dev/null +++ b/package/rt-tests/0001-Fix-various-minor-issues-with-rt-tests-build-system.patch @@ -0,0 +1,55 @@ +From eb47c07e9d20e0b1a6cc4b0df26f24f22f024f1c Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Mon, 10 Nov 2014 11:44:55 +0300 +Subject: [PATCH] Fix various minor issues with rt-tests build system + +The issues fixed are : + + * Remove the automatic NUMA detection from the host + architecture. This is broken when doing cross-compilation. One can + still set NUMA=1 if NUMA support is desired. + +Signed-off-by: Thomas Petazzoni +Signed-off-by: Alexey Brodkin +Cc: Peter Korsgaard +[Romain: + rebase on v1.0 + Remove HASPYTHON since PYLIB can be overriden from the environment] +Signed-off-by: Romain Naour +--- + Makefile | 19 ------------------- + 1 file changed, 19 deletions(-) + +diff --git a/Makefile b/Makefile +index a54d82b..0946f93 100644 +--- a/Makefile ++++ b/Makefile +@@ -38,25 +38,6 @@ else + CFLAGS += -O0 -g + endif + +-# We make some gueses on how to compile rt-tests based on the machine type +-# and the ostype. These can often be overridden. +-dumpmachine := $(shell $(CC) -dumpmachine) +- +-# The ostype is typically something like linux or android +-ostype := $(lastword $(subst -, ,$(dumpmachine))) +- +-machinetype := $(shell echo $(dumpmachine)| \ +- sed -e 's/-.*//' -e 's/i.86/i386/' -e 's/mips.*/mips/' -e 's/ppc.*/powerpc/') +- +-# The default is to assume you have libnuma installed, which is fine to do +-# even on non-numa machines. If you don't want to install the numa libs, for +-# example, they might not be available in an embedded environment, then +-# compile with +-# make NUMA=0 +-ifneq ($(filter x86_64 i386 ia64 mips powerpc,$(machinetype)),) +-NUMA := 1 +-endif +- + # The default is to assume that you have numa_parse_cpustring_all + # If you have an older version of libnuma that only has numa_parse_cpustring + # then compile with +-- +2.5.5 + diff --git a/package/rt-tests/0002-Fix-a-build-issue-with-uClibc-ng.patch b/package/rt-tests/0002-Fix-a-build-issue-with-uClibc-ng.patch new file mode 100644 index 0000000000..785d93c9be --- /dev/null +++ b/package/rt-tests/0002-Fix-a-build-issue-with-uClibc-ng.patch @@ -0,0 +1,33 @@ +From 21e0c16a85c2e028a963703511d750d1751bc254 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Wed, 13 Jul 2016 23:46:38 +0200 +Subject: [PATCH] Fix a build issue with uClibc-ng + +uClibc-ng has clock_nanosleep() if built with UCLIBC_HAS_ADVANCED_REALTIME, + conflicting with emulation function. + +Signed-off-by: Peter Korsgaard +[Romain: + rebase on v1.0 + remove uClibc legacy support, uClibc-ng provide utmpx.h] +Signed-off-by: Romain Naour +--- + src/cyclictest/cyclictest.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c +index 00e5f3d..92fa3dd 100644 +--- a/src/cyclictest/cyclictest.c ++++ b/src/cyclictest/cyclictest.c +@@ -58,7 +58,7 @@ + #define gettid() syscall(__NR_gettid) + #define sigev_notify_thread_id _sigev_un._tid + +-#ifdef __UCLIBC__ ++#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_ADVANCED_REALTIME__) + #define MAKE_PROCESS_CPUCLOCK(pid, clock) \ + ((~(clockid_t) (pid) << 3) | (clockid_t) (clock)) + #define CPUCLOCK_SCHED 2 +-- +2.5.5 + diff --git a/package/rt-tests/0003-Add-syscall-number-for-sched_-gs-etattr-for-SH4.patch b/package/rt-tests/0003-Add-syscall-number-for-sched_-gs-etattr-for-SH4.patch new file mode 100644 index 0000000000..9d606a4dfd --- /dev/null +++ b/package/rt-tests/0003-Add-syscall-number-for-sched_-gs-etattr-for-SH4.patch @@ -0,0 +1,34 @@ +From 53c7e8bc75f0f27752309ddae49e8d3b867a7681 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Mon, 15 Aug 2016 18:20:47 +0200 +Subject: [PATCH] Add syscall-number for sched_(gs)etattr() for SH4 + +Signed-off-by: Romain Naour +--- + src/include/rt-sched.h | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/src/include/rt-sched.h b/src/include/rt-sched.h +index 679c4bd..83394c6 100644 +--- a/src/include/rt-sched.h ++++ b/src/include/rt-sched.h +@@ -51,6 +51,16 @@ + #endif + #endif + ++/* SCHED_DEADLINE available on sh4 since kernel 4.8 */ ++#ifdef __SH4__ ++#ifndef __NR_sched_setattr ++#define __NR_sched_setattr 370 ++#endif ++#ifndef __NR_sched_getattr ++#define __NR_sched_getattr 369 ++#endif ++#endif ++ + #ifdef __tilegx__ + #define __NR_sched_setattr 274 + #define __NR_sched_getattr 275 +-- +2.5.5 + diff --git a/package/rt-tests/01-fix-build-system.patch b/package/rt-tests/01-fix-build-system.patch deleted file mode 100644 index 36af74776f..0000000000 --- a/package/rt-tests/01-fix-build-system.patch +++ /dev/null @@ -1,52 +0,0 @@ -From f9a55a87af57780ea8940561d22cd6a90f461416 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Mon, 10 Nov 2014 11:44:55 +0300 -Subject: [PATCH] Fix various minor issues with rt-tests build system - -The issues fixed are : - - * Remove the automatic NUMA detection from the host - architecture. This is broken when doing cross-compilation. One can - still set NUMA=1 if NUMA support is desired. - - * Provide a HASPYTHON variable to tell whether the target system has - Python or not. Otherwise, the build system simply tests whether - Python is available on the host. The PYLIB variable is also changed - so that it can be overriden from the environment, in order to - provide the correct Python module location for the target. - -Signed-off-by: Thomas Petazzoni -Signed-off-by: Alexey Brodkin -Cc: Peter Korsgaard ---- - Makefile | 10 +++------- - 1 file changed, 3 insertions(+), 7 deletions(-) - -diff --git a/Makefile b/Makefile -index 318a5c6..645d138 100644 ---- a/Makefile -+++ b/Makefile -@@ -14,17 +14,13 @@ bindir ?= $(prefix)/bin - mandir ?= $(prefix)/share/man - srcdir ?= $(prefix)/src - --machinetype = $(shell $(CC) -dumpmachine | \ -- sed -e 's/-.*//' -e 's/i.86/i386/' -e 's/mips.*/mips/' -e 's/ppc.*/powerpc/') --ifneq ($(filter x86_64 i386 ia64 mips powerpc,$(machinetype)),) --NUMA := 1 --endif -- - CFLAGS ?= -Wall -Wno-nonnull - CPPFLAGS += -D_GNU_SOURCE -Isrc/include - LDFLAGS ?= - --PYLIB := $(shell python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()') -+ifeq ($(HASPYTHON),1) -+PYLIB ?= $(shell python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()') -+endif - - ifndef DEBUG - CFLAGS += -O2 --- -1.9.3 - diff --git a/package/rt-tests/02-uclibc.patch b/package/rt-tests/02-uclibc.patch deleted file mode 100644 index 180bdf7c6e..0000000000 --- a/package/rt-tests/02-uclibc.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 713224456f4a3242496af803413f670433f27c74 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Mon, 10 Nov 2014 11:55:27 +0300 -Subject: [PATCH] [PATCH] fix build with uClibc - -Fix two build issues with (modern) uClibc: -- uClibc has clock_nanosleep() if built with UCLIBC_HAS_ADVANCED_REALTIME, - conflicting with emulation function -- uClibc doesn't provide utmpx.h if not built with UCLIBC_HAS_UTMPX, which - is included in several files (but not needed). - -Signed-off-by: Peter Korsgaard ---- - src/backfire/sendme.c | 1 - - src/cyclictest/cyclictest.c | 3 ++- - src/pmqtest/pmqtest.c | 1 - - src/ptsematest/ptsematest.c | 1 - - src/sigwaittest/sigwaittest.c | 2 -- - src/svsematest/svsematest.c | 1 - - 6 files changed, 2 insertions(+), 7 deletions(-) - -diff --git a/src/backfire/sendme.c b/src/backfire/sendme.c -index 8c169dd..b959951 100644 ---- a/src/backfire/sendme.c -+++ b/src/backfire/sendme.c -@@ -32,7 +32,6 @@ - #include "rt-utils.h" - #include "rt-get_cpu.h" - --#include - #include - #include - #include -diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c -index 4547831..343e421 100644 ---- a/src/cyclictest/cyclictest.c -+++ b/src/cyclictest/cyclictest.c -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - #include - #include - -@@ -56,7 +57,7 @@ - #define gettid() syscall(__NR_gettid) - #define sigev_notify_thread_id _sigev_un._tid - --#ifdef __UCLIBC__ -+#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_ADVANCED_REALTIME__) - #define MAKE_PROCESS_CPUCLOCK(pid, clock) \ - ((~(clockid_t) (pid) << 3) | (clockid_t) (clock)) - #define CPUCLOCK_SCHED 2 -diff --git a/src/pmqtest/pmqtest.c b/src/pmqtest/pmqtest.c -index 336a8eb..2e34afe 100644 ---- a/src/pmqtest/pmqtest.c -+++ b/src/pmqtest/pmqtest.c -@@ -33,7 +33,6 @@ - #include - #include - #include --#include - #include - #include "rt-utils.h" - #include "rt-get_cpu.h" -diff --git a/src/ptsematest/ptsematest.c b/src/ptsematest/ptsematest.c -index 7558a41..5358a65 100644 ---- a/src/ptsematest/ptsematest.c -+++ b/src/ptsematest/ptsematest.c -@@ -33,7 +33,6 @@ - #include - #include - #include --#include - #include "rt-utils.h" - #include "rt-get_cpu.h" - #include "error.h" -diff --git a/src/sigwaittest/sigwaittest.c b/src/sigwaittest/sigwaittest.c -index 428f5ce..85c32a2 100644 ---- a/src/sigwaittest/sigwaittest.c -+++ b/src/sigwaittest/sigwaittest.c -@@ -31,11 +31,9 @@ - #include - #include - #include --#include - #include - #include - #include --#include - #include "rt-utils.h" - #include "rt-get_cpu.h" - -diff --git a/src/svsematest/svsematest.c b/src/svsematest/svsematest.c -index c1128cc..5d02550 100644 ---- a/src/svsematest/svsematest.c -+++ b/src/svsematest/svsematest.c -@@ -31,7 +31,6 @@ - #include - #include - #include --#include - - #include - --- -1.9.3 - diff --git a/package/rt-tests/03-fix-non-nptl-buil.patch b/package/rt-tests/03-fix-non-nptl-buil.patch deleted file mode 100644 index 5c65018916..0000000000 --- a/package/rt-tests/03-fix-non-nptl-buil.patch +++ /dev/null @@ -1,55 +0,0 @@ -From c6920f97be02ca3fba9320b043acd578ce4c62d8 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Mon, 10 Nov 2014 10:00:13 +0300 -Subject: [PATCH] Makefile: allow building selected tests with non-NPTL - toolchain - -Some architectures are still stuck with non-NPTL toolchains. -These are for example ARC, Blackfin, Xtensa etc. - -Still rt-tests are very good benchmarks and it would be good to enable use of -at least selected (those that will be built) tests on those architectures. - -This change makes it possible to only build subset of tests that don't require -NPTL calls. - -By default behavior is not modified - all tests are built, but if one wants -to build with non-NPTL toolchain just add "HAVE_NPTL=no" in command line -or modify "HAVE_NPTL" variable right in Makefile and execute "make". - -This patch was submitted upstream: -https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg762958.html -so as soon as it is accepted with the next version bump this patch should be -removed. - -Signed-off-by: Alexey Brodkin -Cc: Vineet Gupta -Cc: Clark Williams ---- - Makefile | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index 318a5c6..675edf7 100644 ---- a/Makefile -+++ b/Makefile -@@ -1,8 +1,13 @@ - VERSION_STRING = 0.89 - --sources = cyclictest.c signaltest.c pi_stress.c rt-migrate-test.c \ -- ptsematest.c sigwaittest.c svsematest.c pmqtest.c sendme.c \ -- pip_stress.c hackbench.c -+HAVE_NPTL ?= yes -+ -+ifeq ($(HAVE_NPTL),yes) -+sources = cyclictest.c pi_stress.c pip_stress.c pmqtest.c rt-migrate-test.c -+endif -+ -+sources += signaltest.c ptsematest.c sigwaittest.c svsematest.c sendme.c \ -+ hackbench.c - - TARGETS = $(sources:.c=) - --- -1.9.3 - diff --git a/package/rt-tests/04-Makefile-fix-tests-dependencies.patch b/package/rt-tests/04-Makefile-fix-tests-dependencies.patch deleted file mode 100644 index 0b2feb16d5..0000000000 --- a/package/rt-tests/04-Makefile-fix-tests-dependencies.patch +++ /dev/null @@ -1,50 +0,0 @@ -From e464368807211978fe2dfccf081fa8dc7a35b71b Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Fri, 23 Jan 2015 07:52:21 +0200 -Subject: [PATCH] Makefile: fix tests dependencies - -librttest is listed in $(LIBS) so all tests must depend on librttest.a. -Fixes build failures like: - -.../armv7-ctng-linux-gnueabihf-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g2 -o hackbench hackbench.o -lrt -lpthread -lrttest -L. -.../armv7-ctng-linux-gnueabihf/bin/ld: cannot find -lrttest -collect2: error: ld returned 1 exit status - -Signed-off-by: Baruch Siach ---- - Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index a3879cea8164..b9a1fed1b920 100644 ---- a/Makefile -+++ b/Makefile -@@ -69,14 +69,14 @@ cyclictest: cyclictest.o librttest.a - signaltest: signaltest.o librttest.a - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) - --pi_stress: pi_stress.o -+pi_stress: pi_stress.o librttest.a - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) - - hwlatdetect: src/hwlatdetect/hwlatdetect.py - chmod +x src/hwlatdetect/hwlatdetect.py - ln -s src/hwlatdetect/hwlatdetect.py hwlatdetect - --rt-migrate-test: rt-migrate-test.o -+rt-migrate-test: rt-migrate-test.o librttest.a - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) - - ptsematest: ptsematest.o librttest.a -@@ -97,7 +97,7 @@ sendme: sendme.o librttest.a - pip_stress: pip_stress.o librttest.a - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) - --hackbench: hackbench.o -+hackbench: hackbench.o librttest.a - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) - - librttest.a: rt-utils.o error.o rt-get_cpu.o --- -2.1.4 - diff --git a/package/rt-tests/Config.in b/package/rt-tests/Config.in index 4c57c0f037..b39856d34f 100644 --- a/package/rt-tests/Config.in +++ b/package/rt-tests/Config.in @@ -1,8 +1,10 @@ config BR2_PACKAGE_RT_TESTS bool "rt-tests" - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 # deadline scheduler syscall depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # dlopen + depends on !BR2_TOOLCHAIN_USES_MUSL # cyclictest help Set of utilities for testing the real-time behaviour of a Linux system. @@ -15,9 +17,9 @@ config BR2_PACKAGE_RT_TESTS Note that this package requires a toolchain built with the NPTL implementation of the pthread API (this is always the - case with glibc/eglibc toolchains, but may not necessarily - be the case with uClibc toolchains, since the thread - implementation is configurable). + case with glibc toolchains, but may not necessarily be the + case with uClibc toolchains, since the thread implementation + is configurable). http://rt.wiki.kernel.org @@ -27,6 +29,7 @@ comment "rt-tests may not work on MIPS with an external uClibc toolchain" depends on BR2_TOOLCHAIN_EXTERNAL_UCLIBC depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el -comment "rt-tests needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS +comment "rt-tests needs a uClibc or glibc toolchain w/ NPTL, headers >= 3.14, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_MUSL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 depends on BR2_USE_MMU diff --git a/package/rt-tests/rt-tests.hash b/package/rt-tests/rt-tests.hash new file mode 100644 index 0000000000..f37af4384f --- /dev/null +++ b/package/rt-tests/rt-tests.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 aea85fd8eda8c1d96e9d32a019bfd4a1d2e0d362971d97838996f49d1af2d470 rt-tests-1.0.tar.xz diff --git a/package/rt-tests/rt-tests.mk b/package/rt-tests/rt-tests.mk index 74d7c6dfe8..addc15e6fd 100644 --- a/package/rt-tests/rt-tests.mk +++ b/package/rt-tests/rt-tests.mk @@ -4,8 +4,9 @@ # ################################################################################ -RT_TESTS_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests.git -RT_TESTS_VERSION = v0.89 +RT_TESTS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/rt-tests +RT_TESTS_SOURCE = rt-tests-$(RT_TESTS_VERSION).tar.xz +RT_TESTS_VERSION = 1.0 RT_TESTS_LICENSE = GPLv2+ RT_TESTS_LICENSE_FILES = COPYING @@ -13,26 +14,18 @@ ifeq ($(BR2_PACKAGE_PYTHON),y) RT_TESTS_DEPENDENCIES = python endif -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),y) -RT_TESTS_HAVE_NPTL=yes -else -RT_TESTS_HAVE_NPTL=no -endif - define RT_TESTS_BUILD_CMDS - $(MAKE) -C $(@D) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ CC="$(TARGET_CC)" \ - HAVE_NPTL=$(RT_TESTS_HAVE_NPTL) \ CFLAGS="$(TARGET_CFLAGS)" \ prefix=/usr endef define RT_TESTS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) \ - HAVE_NPTL=$(RT_TESTS_HAVE_NPTL) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ DESTDIR="$(TARGET_DIR)" \ prefix=/usr \ - $(if $(BR2_PACKAGE_PYTHON),HASPYTHON=1 PYLIB=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/) \ + $(if $(BR2_PACKAGE_PYTHON),PYLIB=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/,PYLIB="") \ install endef diff --git a/package/rtl8188eu/rtl8188eu.hash b/package/rtl8188eu/rtl8188eu.hash new file mode 100644 index 0000000000..6f68f44259 --- /dev/null +++ b/package/rtl8188eu/rtl8188eu.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 9f16fab009bd7bc9e377cf7dcdf82be1b60e7f88e27f2833eea5b422d104e3fe rtl8188eu-ced2b64a1139dcaf86947e3a9f7617dffbd64239.tar.gz diff --git a/package/rtl8188eu/rtl8188eu.mk b/package/rtl8188eu/rtl8188eu.mk index d1034c4ccf..8560be297d 100644 --- a/package/rtl8188eu/rtl8188eu.mk +++ b/package/rtl8188eu/rtl8188eu.mk @@ -4,18 +4,17 @@ # ################################################################################ -RTL8188EU_VERSION = 3091828c8f4b4a01cbec6025128bf77e6e7b9f97 +RTL8188EU_VERSION = ced2b64a1139dcaf86947e3a9f7617dffbd64239 RTL8188EU_SITE = $(call github,lwfinger,rtl8188eu,$(RTL8188EU_VERSION)) RTL8188EU_LICENSE = GPLv2, proprietary (rtl8188eufw.bin firmware blob) RTL8188EU_LICENSE_FILES = COPYING RTL8188EU_MODULE_MAKE_OPTS = CONFIG_RTL8188EU=m -$(eval $(kernel-module)) - define RTL8188EU_INSTALL_FIRMWARE $(INSTALL) -D -m 644 $(@D)/rtl8188eufw.bin \ $(TARGET_DIR)/lib/firmware/rtlwifi/rtl8188eufw.bin endef RTL8188EU_POST_INSTALL_TARGET_HOOKS += RTL8188EU_INSTALL_FIRMWARE +$(eval $(kernel-module)) $(eval $(generic-package)) diff --git a/package/rtl8723bs/0001-rtl8723bs-add-debug-level-modparam.patch b/package/rtl8723bs/0001-rtl8723bs-add-debug-level-modparam.patch new file mode 100644 index 0000000000..0443c1f995 --- /dev/null +++ b/package/rtl8723bs/0001-rtl8723bs-add-debug-level-modparam.patch @@ -0,0 +1,41 @@ +From 9f70428f506ac9d5af325004c01c59c62669d7eb Mon Sep 17 00:00:00 2001 +From: Jason Abele +Date: Sat, 15 Aug 2015 18:20:54 -0700 +Subject: [PATCH] rtl8723bs: add debug level modparam + +For ease of controlling debug printk verbosity, add a module parameter +which sets debug level at module load. + +Signed-off-by: Jason Abele +[Fixed to apply on current version] +Signed-off-by: Ariel D'Alessandro +--- + os_dep/os_intfs.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/os_dep/os_intfs.c b/os_dep/os_intfs.c +index b30c2a0..eeb8946 100644 +--- a/os_dep/os_intfs.c ++++ b/os_dep/os_intfs.c +@@ -231,6 +231,10 @@ module_param(rtw_decrypt_phy_file, int, 0644); + MODULE_PARM_DESC(rtw_decrypt_phy_file,"Enable Decrypt PHY File"); + #endif + ++int rtw_debug_level = _drv_err_; ++module_param(rtw_debug_level, int, 0644); ++MODULE_PARM_DESC(rtw_debug_level,"Set Driver Debug Verbosity"); ++ + int _netdev_open(struct net_device *pnetdev); + int netdev_open (struct net_device *pnetdev); + static int netdev_close (struct net_device *pnetdev); +@@ -347,6 +351,7 @@ static uint loadparam(struct adapter *padapter, _nic_hdl pnetdev) + registry_par->qos_opt_enable = (u8)rtw_qos_opt_enable; + + registry_par->hiq_filter = (u8)rtw_hiq_filter; ++ GlobalDebugLevel = rtw_debug_level; + return status; + } + +-- +2.8.3 + diff --git a/package/rtl8723bs/Config.in b/package/rtl8723bs/Config.in new file mode 100644 index 0000000000..3d5dea40b5 --- /dev/null +++ b/package/rtl8723bs/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_RTL8723BS + bool "rtl8723bs" + depends on BR2_LINUX_KERNEL + help + rtl8723bs wifi driver + + https://github.com/hadess/rtl8723bs + +comment "rtl8723bs needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/rtl8723bs/rtl8723bs.mk b/package/rtl8723bs/rtl8723bs.mk new file mode 100644 index 0000000000..f5bc1acd3c --- /dev/null +++ b/package/rtl8723bs/rtl8723bs.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# rtl8723bs +# +################################################################################ + +RTL8723BS_VERSION = 11ab92d8ccd71c80f0102828366b14ef6b676fb2 +RTL8723BS_SITE = $(call github,hadess,rtl8723bs,$(RTL8723BS_VERSION)) +RTL8723BS_LICENSE = GPLv2, proprietary (*.bin firmware blobs) + +RTL8723BS_MODULE_MAKE_OPTS = \ + CONFIG_RTL8723BS=m \ + KVER=$(LINUX_VERSION_PROBED) \ + KSRC=$(LINUX_DIR) + +RTL8723BS_BINS = rtl8723bs_ap_wowlan.bin rtl8723bs_wowlan.bin \ + rtl8723bs_bt.bin rtl8723bs_nic.bin + +define RTL8723BS_INSTALL_FIRMWARE + $(foreach bin, $(RTL8723BS_BINS), \ + $(INSTALL) -D -m 644 $(@D)/$(bin) $(TARGET_DIR)/lib/firmware/rtlwifi/$(bin) + ) +endef +RTL8723BS_POST_INSTALL_TARGET_HOOKS += RTL8723BS_INSTALL_FIRMWARE + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/rtl8821au/rtl8821au.hash b/package/rtl8821au/rtl8821au.hash index 2e3c56c375..01f22cc072 100644 --- a/package/rtl8821au/rtl8821au.hash +++ b/package/rtl8821au/rtl8821au.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 26e1a72b553a044ec34b57d9264ae7616c008a598a9009faba51331b55285a5b rtl8821au-4c298b160253a7efa507c8ecdb868d1579ad02a7.tar.gz +sha256 6e4334b0718b2ac611bf8b4d7a493b016bdb1c24daa7b459f091b92b6fd961c7 rtl8821au-c33ddb05a77741d2a9c9b974ad0cf0fa26d17b6e.tar.gz diff --git a/package/rtl8821au/rtl8821au.mk b/package/rtl8821au/rtl8821au.mk index 58a91da6a7..9ba43ef146 100644 --- a/package/rtl8821au/rtl8821au.mk +++ b/package/rtl8821au/rtl8821au.mk @@ -4,9 +4,9 @@ # ################################################################################ -RTL8821AU_VERSION = 4c298b160253a7efa507c8ecdb868d1579ad02a7 -RTL8821AU_SITE = $(call github,ulli-kroll,rtl8821au,$(RTL8821AU_VERSION)) -RTL8821AU_LICENSE = GPLv2, proprietary (rtl8821au.bin firmware) +RTL8821AU_VERSION = c33ddb05a77741d2a9c9b974ad0cf0fa26d17b6e +RTL8821AU_SITE = $(call github,abperiasamy,rtl8812AU_8821AU_linux,$(RTL8821AU_VERSION)) +RTL8821AU_LICENSE = GPLv2 RTL8821AU_LICENSE_FILES = COPYING RTL8821AU_MODULE_MAKE_OPTS = \ @@ -14,12 +14,5 @@ RTL8821AU_MODULE_MAKE_OPTS = \ KVER=$(LINUX_VERSION_PROBED) \ USER_EXTRA_CFLAGS=-DCONFIG_$(call qstrip,$(BR2_ENDIAN))_ENDIAN -define RTL8821AU_FIRMWARE_INSTALL - mkdir -p $(TARGET_DIR)/lib/firmware/rtlwifi/ - $(INSTALL) -D -m 0644 $(@D)/firmware/* $(TARGET_DIR)/lib/firmware/rtlwifi/ -endef - -RTL8821AU_POST_INSTALL_TARGET_HOOKS += RTL8821AU_FIRMWARE_INSTALL - $(eval $(kernel-module)) $(eval $(generic-package)) diff --git a/package/rtmpdump/rtmpdump.mk b/package/rtmpdump/rtmpdump.mk index ad4308c5b6..2e3428f15e 100644 --- a/package/rtmpdump/rtmpdump.mk +++ b/package/rtmpdump/rtmpdump.mk @@ -38,7 +38,7 @@ RTMPDUMP_MAKE_FLAGS = \ $(RTMPDUMP_SHARED) define RTMPDUMP_BUILD_CMDS - $(MAKE) $(RTMPDUMP_MAKE_FLAGS) \ + $(TARGET_MAKE_ENV) $(MAKE) $(RTMPDUMP_MAKE_FLAGS) \ XCFLAGS="$(RTMPDUMP_CFLAGS)" \ XLDFLAGS="$(TARGET_LDFLAGS)" \ CROSS_COMPILE="$(TARGET_CROSS)" \ @@ -46,11 +46,11 @@ define RTMPDUMP_BUILD_CMDS endef define RTMPDUMP_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D)/librtmp install DESTDIR=$(STAGING_DIR) $(RTMPDUMP_MAKE_FLAGS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/librtmp install DESTDIR=$(STAGING_DIR) $(RTMPDUMP_MAKE_FLAGS) endef define RTMPDUMP_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D)/librtmp install DESTDIR=$(TARGET_DIR) $(RTMPDUMP_MAKE_FLAGS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/librtmp install DESTDIR=$(TARGET_DIR) $(RTMPDUMP_MAKE_FLAGS) endef $(eval $(generic-package)) diff --git a/package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch b/package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch deleted file mode 100644 index 701c1059d2..0000000000 --- a/package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 24e6d5bcf791a5c3f46191e544731420ff8b1312 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Thu, 19 May 2016 11:10:02 -0300 -Subject: [PATCH] process.c: fix rb_spawn_process() for nommu - -rb_spawn_process() in process.c tries different solutions for when fork -and/or spawnv are/aren't available. -The last resort when both aren't is to use the system() call which -stores the value in the status variable, which isn't declared. - -Signed-off-by: Gustavo Zacarias ---- -Patch status: reported https://bugs.ruby-lang.org/issues/12398 - - process.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/process.c b/process.c -index e196639..40967f7 100644 ---- a/process.c -+++ b/process.c -@@ -3897,6 +3897,9 @@ rb_spawn_process(struct rb_execarg *eargp, char *errmsg, size_t errmsg_buflen) - VALUE prog; - struct rb_execarg sarg; - #endif -+#if !defined HAVE_WORKING_FORK || !USE_SPAWNV -+ int status; -+#endif - - #if defined HAVE_WORKING_FORK && !USE_SPAWNV - pid = rb_fork_async_signal_safe(NULL, rb_exec_atfork, eargp, eargp->redirect_fds, errmsg, errmsg_buflen); --- -2.7.3 - diff --git a/package/ruby/ruby.hash b/package/ruby/ruby.hash index 7e627441a1..19722a3c96 100644 --- a/package/ruby/ruby.hash +++ b/package/ruby/ruby.hash @@ -1,2 +1,2 @@ -# From https://www.ruby-lang.org/en/news/2016/04/26/ruby-2-3-1-released/ -sha256 6725b5534d5a3a21ec4f14d6d7b9921a0d00d08acb88fd04cd50b47b70496338 ruby-2.3.1.tar.xz +# From https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/ +sha256 3a87fef45cba48b9322236be60c455c13fd4220184ce7287600361319bb63690 ruby-2.4.0.tar.xz diff --git a/package/ruby/ruby.mk b/package/ruby/ruby.mk index 3b8310c112..f0dc63b471 100644 --- a/package/ruby/ruby.mk +++ b/package/ruby/ruby.mk @@ -4,9 +4,9 @@ # ################################################################################ -RUBY_VERSION_MAJOR = 2.3 -RUBY_VERSION = $(RUBY_VERSION_MAJOR).1 -RUBY_VERSION_EXT = 2.3.0 +RUBY_VERSION_MAJOR = 2.4 +RUBY_VERSION = $(RUBY_VERSION_MAJOR).0 +RUBY_VERSION_EXT = 2.4.0 RUBY_SITE = http://cache.ruby-lang.org/pub/ruby/$(RUBY_VERSION_MAJOR) RUBY_SOURCE = ruby-$(RUBY_VERSION).tar.xz RUBY_DEPENDENCIES = host-pkgconf host-ruby @@ -24,11 +24,22 @@ RUBY_CFLAGS = $(TARGET_CFLAGS) # With some SuperH toolchains (like Sourcery CodeBench 2012.09), ruby fails to # build with 'pcrel too far'. This seems to be caused by the -Os option we pass # by default. To fix the problem, use standard -O2 optimization instead. -ifeq ($(BR2_sh)$(BR2_sh64),y) +ifeq ($(BR2_sh),y) RUBY_CFLAGS += -O2 endif RUBY_CONF_ENV = CFLAGS="$(RUBY_CFLAGS)" +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +# On uClibc, finite, isinf and isnan are not directly implemented as +# functions. Instead math.h #define's these to __finite, __isinf and +# __isnan, confusing the Ruby configure script. Tell it that they +# really are available. +RUBY_CONF_ENV += \ + ac_cv_func_finite=yes \ + ac_cv_func_isinf=yes \ + ac_cv_func_isnan=yes +endif + ifeq ($(BR2_bfin),y) RUBY_CONF_ENV += ac_cv_func_dl_iterate_phdr=no # Blackfin doesn't have FFI closure support, needed by the fiddle diff --git a/package/runc/Config.in b/package/runc/Config.in new file mode 100644 index 0000000000..fd5dee7c5b --- /dev/null +++ b/package/runc/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_RUNC + bool "runc" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + runC is a CLI tool for spawning and running containers + according to the OCP specification. + + https://github.com/opencontainers/runc + +comment "runc needs a toolchain w/ threads" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS && \ + BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/runc/runc.hash b/package/runc/runc.hash new file mode 100644 index 0000000000..0b6a24ffcb --- /dev/null +++ b/package/runc/runc.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 374822cc2895ed3899b7a3a03b566413ea782fccec1307231f27894e9c6d5bea runc-50a19c6ff828c58e5dab13830bd3dacde268afe5.tar.gz diff --git a/package/runc/runc.mk b/package/runc/runc.mk new file mode 100644 index 0000000000..95afcaaff8 --- /dev/null +++ b/package/runc/runc.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# runc +# +################################################################################ + +RUNC_VERSION = 50a19c6ff828c58e5dab13830bd3dacde268afe5 +RUNC_SITE = $(call github,opencontainers,runc,$(RUNC_VERSION)) +RUNC_LICENSE = Apache-2.0 +RUNC_LICENSE_FILES = LICENSE + +RUNC_DEPENDENCIES = host-go + +RUNC_GOPATH = "$(@D)/Godeps/_workspace" +RUNC_MAKE_ENV = $(HOST_GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GOBIN="$(@D)/bin" \ + GOPATH="$(RUNC_GOPATH)" \ + PATH=$(BR_PATH) + +RUNC_GLDFLAGS = \ + -X main.gitCommit=$(RUNC_VERSION) + +ifeq ($(BR2_STATIC_LIBS),y) +RUNC_GLDFLAGS += -extldflags '-static' +endif + +RUNC_GOTAGS = cgo static_build + +ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +RUNC_GOTAGS += seccomp +RUNC_DEPENDENCIES += libseccomp host-pkgconf +endif + +define RUNC_CONFIGURE_CMDS + mkdir -p $(RUNC_GOPATH)/src/github.com/opencontainers + ln -s $(@D) $(RUNC_GOPATH)/src/github.com/opencontainers/runc +endef + +define RUNC_BUILD_CMDS + cd $(@D) && $(RUNC_MAKE_ENV) $(HOST_DIR)/usr/bin/go \ + build -v -o $(@D)/bin/runc \ + -tags "$(RUNC_GOTAGS)" -ldflags "$(RUNC_GLDFLAGS)" . +endef + +define RUNC_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/bin/runc $(TARGET_DIR)/usr/bin/runc +endef + +$(eval $(generic-package)) diff --git a/package/sam-ba/sam-ba.hash b/package/sam-ba/sam-ba.hash new file mode 100644 index 0000000000..61feb32d8d --- /dev/null +++ b/package/sam-ba/sam-ba.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 302734f53e471b5d1a292c9af937262f4fd766ec47ebfea62439761e7c1cd9d7 sam-ba_2.16_linux.zip diff --git a/package/sam-ba/sam-ba.mk b/package/sam-ba/sam-ba.mk index 2a3c2a1aa1..7fc65c01a9 100644 --- a/package/sam-ba/sam-ba.mk +++ b/package/sam-ba/sam-ba.mk @@ -5,10 +5,12 @@ ################################################################################ SAM_BA_SITE = http://www.atmel.com/dyn/resources/prod_documents -SAM_BA_VERSION = 2.15 -SAM_BA_SOURCE = sam-ba_$(SAM_BA_VERSION).zip -SAM_BA_LICENSE = BSD-like (partly binary-only) -SAM_BA_LICENSE_FILES = doc/readme.txt +SAM_BA_VERSION = 2.16 +SAM_BA_SOURCE = sam-ba_$(SAM_BA_VERSION)_linux.zip +SAM_BA_LICENSE = SAM-BA license (sam-ba executable), \ + BSD-2c like, BSD-4c (TCL and applets code) +SAM_BA_LICENSE_FILES = doc/license.txt tcl_lib/boards.tcl \ + applets/sam4c/libraries/libchip_sam4c/include/sam4c/sam4c32e-1.h define HOST_SAM_BA_EXTRACT_CMDS $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(SAM_BA_SOURCE) diff --git a/package/samba4/0001-disable-libbsd.patch b/package/samba4/0001-libreplace-disable-libbsd-support.patch similarity index 56% rename from package/samba4/0001-disable-libbsd.patch rename to package/samba4/0001-libreplace-disable-libbsd-support.patch index 67f79d0059..4d0c770af4 100644 --- a/package/samba4/0001-disable-libbsd.patch +++ b/package/samba4/0001-libreplace-disable-libbsd-support.patch @@ -1,16 +1,25 @@ +From fc0304ba92ec7ae9a2f75fbc31d97fee39d19665 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Wed, 7 Sep 2016 23:03:43 -0300 +Subject: [PATCH] libreplace: disable libbsd support + Disable libbsd support, samba4 uses a global config.h for its own codebase and that of heimdal (when building with builtin). -This causes redefinition conflicts for link(2) when both standard unistd.h -and bsd/unistd.h get included. +This causes redefinition conflicts for link(2) when both standard +unistd.h and bsd/unistd.h get included. Signed-off-by: Gustavo Zacarias +--- + lib/replace/wscript | 12 ------------ + 1 file changed, 12 deletions(-) -diff -Nura samba-4.2.0rc1.orig/lib/replace/wscript samba-4.2.0rc1/lib/replace/wscript ---- samba-4.2.0rc1.orig/lib/replace/wscript 2014-10-01 06:17:32.000000000 -0300 -+++ samba-4.2.0rc1/lib/replace/wscript 2014-10-01 07:21:13.559498987 -0300 -@@ -282,15 +282,6 @@ - conf.CHECK_FUNCS('strtouq strtoll __strtoll strtoq memalign posix_memalign') - conf.CHECK_FUNCS('prctl') +diff --git a/lib/replace/wscript b/lib/replace/wscript +index 1dfd902..456be9b 100644 +--- a/lib/replace/wscript ++++ b/lib/replace/wscript +@@ -248,18 +248,6 @@ def configure(conf): + + conf.CHECK_FUNCS('prctl dirname basename') - # libbsd on some platforms provides strlcpy and strlcat - if not conf.CHECK_FUNCS('strlcpy strlcat'): @@ -20,7 +29,13 @@ diff -Nura samba-4.2.0rc1.orig/lib/replace/wscript samba-4.2.0rc1/lib/replace/ws - conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') - if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): - conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') +- +- if not conf.CHECK_FUNCS('closefrom'): +- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') - conf.CHECK_CODE(''' struct ucred cred; socklen_t cred_len; +-- +2.7.3 + diff --git a/package/samba4/Config.in b/package/samba4/Config.in index 5ae2c366ab..ce97bea84f 100644 --- a/package/samba4/Config.in +++ b/package/samba4/Config.in @@ -7,7 +7,7 @@ comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, threads" config BR2_PACKAGE_SAMBA4 bool "samba4" depends on BR2_USE_MMU # fork() - depends on BR2_USE_WCHAR # e2fsprogs + depends on BR2_USE_WCHAR # python depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_TOOLCHAIN_HAS_THREADS # python -> libffi depends on !BR2_STATIC_LIBS # python diff --git a/package/samba4/samba4-cache.txt b/package/samba4/samba4-cache.txt index c9e34b630b..3ba8a75ea6 100644 --- a/package/samba4/samba4-cache.txt +++ b/package/samba4/samba4-cache.txt @@ -23,6 +23,7 @@ Checking whether setreuid is available: OK Checking whether setresuid is available: OK Checking whether seteuid is available: OK Checking whether fcntl locking is available: OK +Checking whether fcntl lock supports open file description locks: OK Checking for the maximum value of the 'time_t' type: OK Checking whether the realpath function allows a NULL argument: OK Checking whether POSIX capabilities are available: OK diff --git a/package/samba4/samba4.hash b/package/samba4/samba4.hash index 042c7db6bd..4fec55dd60 100644 --- a/package/samba4/samba4.hash +++ b/package/samba4/samba4.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 031e6ada6d15deae6850845eed41497af32207fb679d6c6c74f19acc99d437ba samba-4.4.3.tar.gz +# Locally calculated +sha256 bff02762b3e4ee030f02266c6e24a0b888248b387246219b7fbe3e1758ef2184 samba-4.5.5.tar.gz diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index c09706882a..4020caafe6 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -4,8 +4,8 @@ # ################################################################################ -SAMBA4_VERSION = 4.4.3 -SAMBA4_SITE = http://ftp.samba.org/pub/samba/stable +SAMBA4_VERSION = 4.5.5 +SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES SAMBA4_LICENSE = GPLv3+ @@ -14,7 +14,6 @@ SAMBA4_DEPENDENCIES = \ host-e2fsprogs host-heimdal host-python \ e2fsprogs popt python zlib \ $(if $(BR2_PACKAGE_LIBAIO),libaio) \ - $(if $(BR2_PACKAGE_LIBBSD),libbsd) \ $(if $(BR2_PACKAGE_LIBCAP),libcap) \ $(if $(BR2_PACKAGE_READLINE),readline) @@ -118,16 +117,6 @@ define SAMBA4_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef -# Samba just installs .py files so the purge causes problems with some tools -ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y) -define SAMBA4_BUILD_PYC_FILES - PYTHONPATH="$(PYTHON_PATH)" \ - $(HOST_DIR)/usr/bin/python -c "import compileall; \ - compileall.compile_dir('$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/samba')" -endef -SAMBA4_POST_INSTALL_TARGET_HOOKS += SAMBA4_BUILD_PYC_FILES -endif - ifeq ($(BR2_PACKAGE_SAMBA4_AD_DC),) SAMBA4_CONF_OPTS += --without-ad-dc endif @@ -166,8 +155,8 @@ define SAMBA4_INSTALL_INIT_SYSTEMD ln -sf ../../../../usr/lib/systemd/system/winbind.service \ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/winbind.service $(INSTALL) -D -m 644 $(@D)/packaging/systemd/samba.conf.tmp \ - $(TARGET_DIR)/etc/tmpfiles.d/samba.conf - printf "d /var/log/samba 755 root root\n" >>$(TARGET_DIR)/etc/tmpfiles.d/samba.conf + $(TARGET_DIR)/usr/lib/tmpfiles.d/samba.conf + printf "d /var/log/samba 755 root root\n" >>$(TARGET_DIR)/usr/lib/tmpfiles.d/samba.conf endef $(eval $(generic-package)) diff --git a/package/sane-backends/0002-Add-missing-sys-types.h-includes.patch b/package/sane-backends/0002-Add-missing-sys-types.h-includes.patch new file mode 100644 index 0000000000..8ab41f1fef --- /dev/null +++ b/package/sane-backends/0002-Add-missing-sys-types.h-includes.patch @@ -0,0 +1,106 @@ +From d33f16f463e888846d69ddfbeeb963d40972b654 Mon Sep 17 00:00:00 2001 +From: Luiz Angelo Daros de Luca +Date: Thu, 15 Oct 2015 12:35:00 +0900 +Subject: [PATCH] Add missing includes + +[Thomas: backport from upstream commit +33495ef9b42a783c8f5f2c056ac5699481d3cc7e, allows to fix the build with +the musl C library.] +Signed-off-by: Thomas Petazzoni +--- + backend/epsonds-io.c | 3 +++ + backend/hp5400.c | 3 +++ + backend/hp5590.c | 3 +++ + backend/kvs20xx_cmd.h | 4 ++++ + backend/kvs40xx.h | 3 +++ + include/sane/sanei_udp.h | 3 +++ + 6 files changed, 19 insertions(+) + +diff --git a/backend/epsonds-io.c b/backend/epsonds-io.c +index 28bacfc..512997d 100644 +--- a/backend/epsonds-io.c ++++ b/backend/epsonds-io.c +@@ -16,6 +16,9 @@ + #include "sane/config.h" + #include + #include /* sleep */ ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif + + #include "epsonds.h" + #include "epsonds-io.h" +diff --git a/backend/hp5400.c b/backend/hp5400.c +index 61de3db..cfa2dc9 100644 +--- a/backend/hp5400.c ++++ b/backend/hp5400.c +@@ -67,6 +67,9 @@ + #include /* malloc, free */ + #include /* memcpy */ + #include ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif + + + #define HP5400_CONFIG_FILE "hp5400.conf" +diff --git a/backend/hp5590.c b/backend/hp5590.c +index 7b1cd60..5422372 100644 +--- a/backend/hp5590.c ++++ b/backend/hp5590.c +@@ -48,6 +48,9 @@ + #include + #include + #include ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif + + #include "../include/sane/sane.h" + #define BACKEND_NAME hp5590 +diff --git a/backend/kvs20xx_cmd.h b/backend/kvs20xx_cmd.h +index c18b754..4acaf62 100644 +--- a/backend/kvs20xx_cmd.h ++++ b/backend/kvs20xx_cmd.h +@@ -9,6 +9,10 @@ + Panasonic KV-S20xx USB-SCSI scanners. + */ + ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif ++ + #define COMMAND_BLOCK 1 + #define DATA_BLOCK 2 + #define RESPONSE_BLOCK 3 +diff --git a/backend/kvs40xx.h b/backend/kvs40xx.h +index fa17163..02e0da6 100644 +--- a/backend/kvs40xx.h ++++ b/backend/kvs40xx.h +@@ -10,6 +10,9 @@ + + #include "../include/sane/config.h" + #include ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif + + #undef BACKEND_NAME + #define BACKEND_NAME kvs40xx +diff --git a/include/sane/sanei_udp.h b/include/sane/sanei_udp.h +index c44afdd..e32fc1a 100644 +--- a/include/sane/sanei_udp.h ++++ b/include/sane/sanei_udp.h +@@ -27,6 +27,9 @@ + #include + #include + #endif ++#ifdef HAVE_SYS_TYPES_H ++#include ++#endif + + extern SANE_Status sanei_udp_open(const char *host, int port, int *fdp); + extern SANE_Status sanei_udp_open_broadcast(int *fdp); +-- +2.7.4 + diff --git a/package/sane-backends/0003-sane_backend-add-missing-config.h.patch b/package/sane-backends/0003-sane_backend-add-missing-config.h.patch new file mode 100644 index 0000000000..8e56b0284b --- /dev/null +++ b/package/sane-backends/0003-sane_backend-add-missing-config.h.patch @@ -0,0 +1,49 @@ +From 13aadf79659dd238b618c8be7c1de44960bd5d50 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 11 Nov 2016 22:20:03 +0100 +Subject: [PATCH] sane_backend: add missing config.h + +We should include config.h from sanei_backend.h in order to use the +correct if/else HAVE_FOO. + +For some reason with Glibc or uClibc there is no problem but with musl +we have the following weird issue: + +In file included from epsonds.h:41:0, + from epsonds-jpeg.c:18: +../include/sane/sanei_backend.h:99:33: error: expected ';', identifier or '(' before 'int' + # define sigset_t int + ^ +../include/sane/sanei_backend.h:99:33: warning: useless type name in empty declaration + +That's because HAVE_SIGPROCMASK is not defined although it's correctly +detected by the configure script. + +$ grep config.log +config.log:#define HAVE_SIGPROCMASK 1 + +So, include config.h to avoid to redefine sigset_t. + +Fixes: +http://autobuild.buildroot.net/results/9f1/9f1f1cb727b5c5407e69172280a3dee880e55cdf + +Signed-off-by: Romain Naour +--- + include/sane/sanei_backend.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/sane/sanei_backend.h b/include/sane/sanei_backend.h +index 1b5afe2..2a96532 100644 +--- a/include/sane/sanei_backend.h ++++ b/include/sane/sanei_backend.h +@@ -8,6 +8,7 @@ + * @sa sanei.h sanei_thread.h + */ + ++#include "../include/sane/config.h" + + /* + * Compiler related options +-- +2.5.5 + diff --git a/package/sane-backends/Config.in b/package/sane-backends/Config.in index 8156e858dc..3e5a27ffe0 100644 --- a/package/sane-backends/Config.in +++ b/package/sane-backends/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_SANE_BACKENDS bool "sane-backends" depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS help SANE - Scanner Access Now Easy @@ -9,3 +10,7 @@ config BR2_PACKAGE_SANE_BACKENDS Backends are included automatically based on the libraries that have been selected: libusb, jpeg, tiff, avahi (with dbus and libglib2), and netsnmp. + +comment "sane-backends needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in index 4083aa7dce..f03af8dd22 100644 --- a/package/sconeserver/Config.in +++ b/package/sconeserver/Config.in @@ -2,6 +2,7 @@ menuconfig BR2_PACKAGE_SCONESERVER bool "sconeserver" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on !BR2_STATIC_LIBS # dlopen() select BR2_PACKAGE_PCRE help Sconeserver is a modular, object-orientated and extremely versatile @@ -102,5 +103,6 @@ comment "ui module requires X.org" endif # BR2_PACKAGE_SCONESERVER -comment "sconeserver needs a toolchain w/ C++, NPTL" - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS_NPTL) +comment "sconeserver needs a toolchain with dynamic library, C++, NPTL" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || BR2_STATIC_LIBS diff --git a/package/sconeserver/sconeserver.hash b/package/sconeserver/sconeserver.hash index 2e1fe84237..978b442f53 100644 --- a/package/sconeserver/sconeserver.hash +++ b/package/sconeserver/sconeserver.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 442c29ae93f615b610983187023ba6c1a9ca69526cb07f69576efba1d29d9daf sconeserver-c4b8e14f6e9e06cbff5b4195f69d6fce9391a1cd.tar.gz +sha256 38e72b962eb42bea8f0deb6f101833f8f2f2fa8c53f0dc03f3eb5d56873517c8 sconeserver-d659468cd164e6a6cc12932cc6780566b04f8328.tar.gz diff --git a/package/sconeserver/sconeserver.mk b/package/sconeserver/sconeserver.mk index 592de22d69..793ca6fb26 100644 --- a/package/sconeserver/sconeserver.mk +++ b/package/sconeserver/sconeserver.mk @@ -4,13 +4,13 @@ # ################################################################################ -SCONESERVER_VERSION = c4b8e14f6e9e06cbff5b4195f69d6fce9391a1cd +SCONESERVER_VERSION = d659468cd164e6a6cc12932cc6780566b04f8328 SCONESERVER_SITE = $(call github,sconemad,sconeserver,$(SCONESERVER_VERSION)) SCONESERVER_LICENSE = GPLv2+ SCONESERVER_LICENSE_FILES = COPYING # fetching from Git, we need to generate the configure script SCONESERVER_AUTORECONF = YES -SCONESERVER_DEPENDENCIES += pcre +SCONESERVER_DEPENDENCIES = host-pkgconf pcre # disable markdown module because its git submodule cmark # https://github.com/sconemad/sconeserver/tree/master/markdown # has no cross-compile support provided by the sconeserver build system @@ -46,7 +46,7 @@ SCONESERVER_CONF_OPTS += --without-sconesite endif ifeq ($(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),y) -SCONESERVER_DEPENDENCIES += imagemagick host-pkgconf +SCONESERVER_DEPENDENCIES += imagemagick SCONESERVER_CONF_OPTS += \ --with-sconesite-image \ --with-Magick++-config="$(STAGING_DIR)/usr/bin/Magick++-config" @@ -79,7 +79,7 @@ SCONESERVER_CONF_OPTS += --without-rss endif ifeq ($(BR2_PACKAGE_SCONESERVER_LOCATION),y) -SCONESERVER_DEPENDENCIES += host-pkgconf gpsd +SCONESERVER_DEPENDENCIES += gpsd SCONESERVER_CONF_OPTS += --with-location else SCONESERVER_CONF_OPTS += --without-location diff --git a/package/screen/screen.hash b/package/screen/screen.hash index 10ba21407d..7ddc33700a 100644 --- a/package/screen/screen.hash +++ b/package/screen/screen.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 fa4049f8aee283de62e283d427f2cfd35d6c369b40f7f45f947dbfd915699d63 screen-4.3.1.tar.gz +sha256 01c3a7c362185f35d6a95dff52d64337076496acd034d717de3c263500cfefb0 screen-4.5.0.tar.gz diff --git a/package/screen/screen.mk b/package/screen/screen.mk index 0316e3d266..519a02ab42 100644 --- a/package/screen/screen.mk +++ b/package/screen/screen.mk @@ -4,13 +4,14 @@ # ################################################################################ -SCREEN_VERSION = 4.3.1 +SCREEN_VERSION = 4.5.0 SCREEN_SITE = $(BR2_GNU_MIRROR)/screen SCREEN_LICENSE = GPLv3+ SCREEN_LICENSE_FILES = COPYING SCREEN_DEPENDENCIES = ncurses SCREEN_AUTORECONF = YES SCREEN_CONF_ENV = CFLAGS="$(TARGET_CFLAGS)" +SCREEN_CONF_OPTS = --enable-colors256 SCREEN_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) SCREEN=screen install_bin define SCREEN_INSTALL_SCREENRC diff --git a/package/sdl2/0001-ppc.patch b/package/sdl2/0001-ppc.patch new file mode 100644 index 0000000000..0161103067 --- /dev/null +++ b/package/sdl2/0001-ppc.patch @@ -0,0 +1,47 @@ +Fixed bug 3466 - Can't build 2.0.5 on ppc64 + +/home/fedora/SDL2-2.0.5/src/video/SDL_blit_N.c: In function 'calc_swizzle32': +/home/fedora/SDL2-2.0.5/src/video/SDL_blit_N.c:127:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] +const vector unsigned char plus = VECUINT8_LITERAL(0x00, 0x00, 0x00, 0x00, +^ + +Downloaded from upstream repo +https://hg.libsdl.org/SDL/rev/5184186d4366 + +Signed-off-by: Bernd Kuhls + +diff -r 71d4148e32de -r 5184186d4366 src/video/SDL_blit_N.c +--- a/src/video/SDL_blit_N.c Wed Oct 19 21:22:42 2016 -0700 ++++ b/src/video/SDL_blit_N.c Sat Oct 22 11:01:55 2016 -0700 +@@ -118,12 +118,6 @@ + 16, 8, 0, 24, + 0, NULL + }; +- if (!srcfmt) { +- srcfmt = &default_pixel_format; +- } +- if (!dstfmt) { +- dstfmt = &default_pixel_format; +- } + const vector unsigned char plus = VECUINT8_LITERAL(0x00, 0x00, 0x00, 0x00, + 0x04, 0x04, 0x04, 0x04, + 0x08, 0x08, 0x08, 0x08, +@@ -136,6 +130,14 @@ + Uint32 gmask = RESHIFT(srcfmt->Gshift) << (dstfmt->Gshift); + Uint32 bmask = RESHIFT(srcfmt->Bshift) << (dstfmt->Bshift); + Uint32 amask; ++ ++ if (!srcfmt) { ++ srcfmt = &default_pixel_format; ++ } ++ if (!dstfmt) { ++ dstfmt = &default_pixel_format; ++ } ++ + /* Use zero for alpha if either surface doesn't have alpha */ + if (dstfmt->Amask) { + amask = + + + + diff --git a/package/sdl2/0002-gcc6.patch b/package/sdl2/0002-gcc6.patch new file mode 100644 index 0000000000..6b5e901dfe --- /dev/null +++ b/package/sdl2/0002-gcc6.patch @@ -0,0 +1,64 @@ + +# HG changeset patch +# User Sam Lantinga +# Date 1479201270 28800 +# Node ID ea44906e19b837f4d5b309525ca79ed9d00b1897 +# Parent 6b2307dbec54f0bf4d5d8abf86241e29f3a03562 +Fixed bug 3490 - Build failure with --enable-video-directfb + +felix + +Building SDL 2.0.5, or even the Mercurial snapshot (r10608) with GCC 6.2.1 and --enable-video-directfb generates a number of compiler diagnostics and fails. + +Downloaded from upstream repo +https://hg.libsdl.org/SDL/rev/ea44906e19b8 + +Signed-off-by: Bernd Kuhls + +diff -r 6b2307dbec54 -r ea44906e19b8 src/video/directfb/SDL_DirectFB_render.c +--- a/src/video/directfb/SDL_DirectFB_render.c Tue Nov 15 01:12:27 2016 -0800 ++++ b/src/video/directfb/SDL_DirectFB_render.c Tue Nov 15 01:14:30 2016 -0800 +@@ -1273,7 +1273,7 @@ + Uint32 format, void * pixels, int pitch) + { + Uint32 sdl_format; +- void * laypixels; ++ unsigned char* laypixels; + int laypitch; + DFBSurfacePixelFormat dfb_format; + DirectFB_RenderData *data = (DirectFB_RenderData *) renderer->driverdata; +@@ -1303,7 +1303,7 @@ + SDL_Window *window = renderer->window; + SDL_DFB_WINDOWDATA(window); + Uint32 sdl_format; +- void * laypixels; ++ unsigned char* laypixels; + int laypitch; + DFBSurfacePixelFormat dfb_format; + +diff -r 6b2307dbec54 -r ea44906e19b8 src/video/directfb/SDL_DirectFB_shape.c +--- a/src/video/directfb/SDL_DirectFB_shape.c Tue Nov 15 01:12:27 2016 -0800 ++++ b/src/video/directfb/SDL_DirectFB_shape.c Tue Nov 15 01:14:30 2016 -0800 +@@ -37,17 +37,19 @@ + SDL_WindowShaper* + DirectFB_CreateShaper(SDL_Window* window) { + SDL_WindowShaper* result = NULL; ++ SDL_ShapeData* data; ++ int resized_properly; + + result = malloc(sizeof(SDL_WindowShaper)); + result->window = window; + result->mode.mode = ShapeModeDefault; + result->mode.parameters.binarizationCutoff = 1; + result->userx = result->usery = 0; +- SDL_ShapeData* data = SDL_malloc(sizeof(SDL_ShapeData)); ++ data = SDL_malloc(sizeof(SDL_ShapeData)); + result->driverdata = data; + data->surface = NULL; + window->shaper = result; +- int resized_properly = DirectFB_ResizeWindowShape(window); ++ resized_properly = DirectFB_ResizeWindowShape(window); + SDL_assert(resized_properly == 0); + + return result; + diff --git a/package/sdl2/Config.in b/package/sdl2/Config.in index b73611dbb0..8fc14ee737 100644 --- a/package/sdl2/Config.in +++ b/package/sdl2/Config.in @@ -21,11 +21,13 @@ comment "DirectFB video driver needs directfb" config BR2_PACKAGE_SDL2_X11 bool "X11 video driver" depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXEXT comment "X11 video driver needs X.org" depends on !BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU endif diff --git a/package/sdl2/sdl2.hash b/package/sdl2/sdl2.hash index 6e8533f6c1..d69d43811d 100644 --- a/package/sdl2/sdl2.hash +++ b/package/sdl2/sdl2.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.0.3.tar.gz.sig -sha256 a5a69a6abf80bcce713fa873607735fe712f44276a7f048d60a61bb2f6b3c90c SDL2-2.0.3.tar.gz +# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.0.5.tar.gz.sig +sha256 442038cf55965969f2ff06d976031813de643af9c9edc9e331bd761c242e8785 SDL2-2.0.5.tar.gz diff --git a/package/sdl2/sdl2.mk b/package/sdl2/sdl2.mk index 814cc196e4..2ec12e639e 100644 --- a/package/sdl2/sdl2.mk +++ b/package/sdl2/sdl2.mk @@ -4,7 +4,7 @@ # ################################################################################ -SDL2_VERSION = 2.0.3 +SDL2_VERSION = 2.0.5 SDL2_SOURCE = SDL2-$(SDL2_VERSION).tar.gz SDL2_SITE = http://www.libsdl.org/release SDL2_LICENSE = zlib diff --git a/package/sdl2_gfx/Config.in b/package/sdl2_gfx/Config.in new file mode 100644 index 0000000000..f5dafc56f3 --- /dev/null +++ b/package/sdl2_gfx/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_SDL2_GFX + bool "sdl2_gfx" + depends on BR2_PACKAGE_SDL2 + help + The SDL2_gfx library is an extension to the SDL2 library + which provides basic antialiased drawing routines such as + lines, circles or polygons, an interpolating rotozoomer for + SDL surfaces, framerate control and MMX image filters. + + http://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx diff --git a/package/sdl2_gfx/sdl2_gfx.hash b/package/sdl2_gfx/sdl2_gfx.hash new file mode 100644 index 0000000000..4cb07ee935 --- /dev/null +++ b/package/sdl2_gfx/sdl2_gfx.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 d69bcbceb811b4e5712fbad3ede737166327f44b727f1388c32581dbbe8c599a SDL2_gfx-1.0.1.tar.gz diff --git a/package/sdl2_gfx/sdl2_gfx.mk b/package/sdl2_gfx/sdl2_gfx.mk new file mode 100644 index 0000000000..975bca73ad --- /dev/null +++ b/package/sdl2_gfx/sdl2_gfx.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# sdl2_gfx +# +################################################################################ + +SDL2_GFX_VERSION = 1.0.1 +SDL2_GFX_SOURCE = SDL2_gfx-$(SDL2_GFX_VERSION).tar.gz +SDL2_GFX_SITE = http://www.ferzkopp.net/Software/SDL2_gfx +SDL2_GFX_LICENSE = zlib +SDL2_GFX_LICENSE_FILES = COPYING SDL2_framerate.h +SDL2_GFX_INSTALL_STAGING = YES +SDL2_GFX_DEPENDENCIES = sdl2 host-pkgconf +SDL2_GFX_CONF_OPTS = --disable-sdltest +# configure/Makefile.in not up-to-date, causing aclocal to be used at +# build time if we don't autoreconf. +SDL2_GFX_AUTORECONF = YES + +# Even though x86_64 processors support MMX, the MMX-specific assembly +# code in sdl2_gfx is IA32 specific, and does not build for x86_64. +ifeq ($(BR2_i386)$(BR2_X86_CPU_HAS_MMX),yy) +SDL2_GFX_CONF_OPTS += --enable-mmx +else +SDL2_GFX_CONF_OPTS += --disable-mmx +endif + +$(eval $(autotools-package)) diff --git a/package/sdl2_image/Config.in b/package/sdl2_image/Config.in new file mode 100644 index 0000000000..9b4a38354f --- /dev/null +++ b/package/sdl2_image/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SDL2_IMAGE + bool "sdl2_image" + depends on BR2_PACKAGE_SDL2 + help + SDL2_image is an image file loading library. It loads images + as SDL surfaces, and supports the following formats: BMP, + GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, XCF, XPM, XV. + + http://www.libsdl.org/projects/SDL_image/ diff --git a/package/sdl2_image/sdl2_image.hash b/package/sdl2_image/sdl2_image.hash new file mode 100644 index 0000000000..26d0a88cb5 --- /dev/null +++ b/package/sdl2_image/sdl2_image.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3a3eafbceea5125c04be585373bfd8b3a18f259bd7eae3efc4e6d8e60e0d7f64 SDL2_image-2.0.1.tar.gz diff --git a/package/sdl2_image/sdl2_image.mk b/package/sdl2_image/sdl2_image.mk new file mode 100644 index 0000000000..cf3b738edc --- /dev/null +++ b/package/sdl2_image/sdl2_image.mk @@ -0,0 +1,58 @@ +################################################################################ +# +# sdl2_image +# +################################################################################ + +SDL2_IMAGE_VERSION = 2.0.1 +SDL2_IMAGE_SOURCE = SDL2_image-$(SDL2_IMAGE_VERSION).tar.gz +SDL2_IMAGE_SITE = http://www.libsdl.org/projects/SDL_image/release +SDL2_IMAGE_INSTALL_STAGING = YES +SDL2_IMAGE_LICENSE = zlib +SDL2_IMAGE_LICENSE_FILES = COPYING.txt + +# Unconditionally enable support for image formats that don't require +# any dependency. +SDL2_IMAGE_CONF_OPTS = \ + --disable-sdltest \ + --enable-bmp \ + --enable-gif \ + --enable-lbm \ + --enable-pcx \ + --enable-pnm \ + --enable-tga \ + --enable-xcf \ + --enable-xpm \ + --enable-xv + +SDL2_IMAGE_DEPENDENCIES = sdl2 host-pkgconf + +ifeq ($(BR2_PACKAGE_JPEG),y) +SDL2_IMAGE_CONF_OPTS += --enable-jpg +SDL2_IMAGE_DEPENDENCIES += jpeg +else +SDL2_IMAGE_CONF_OPTS += --disable-jpg +endif + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +SDL2_IMAGE_CONF_OPTS += --enable-png +SDL2_IMAGE_DEPENDENCIES += libpng +else +SDL2_IMAGE_CONF_OPTS += --disable-png +endif + +ifeq ($(BR2_PACKAGE_TIFF),y) +SDL2_IMAGE_CONF_OPTS += --enable-tif +SDL2_IMAGE_DEPENDENCIES += tiff +else +SDL2_IMAGE_CONF_OPTS += --disable-tif +endif + +ifeq ($(BR2_PACKAGE_WEBP),y) +SDL2_IMAGE_CONF_OPTS += --enable-webp +SDL2_IMAGE_DEPENDENCIES += webp +else +SDL2_IMAGE_CONF_OPTS += --disable-webp +endif + +$(eval $(autotools-package)) diff --git a/package/sdl2_ttf/0001-fix-opengl-detection.patch b/package/sdl2_ttf/0001-fix-opengl-detection.patch new file mode 100644 index 0000000000..06e0abf8b9 --- /dev/null +++ b/package/sdl2_ttf/0001-fix-opengl-detection.patch @@ -0,0 +1,37 @@ +# HG changeset patch +# User Sam Lantinga +# Date 1485568474 28800 +# Node ID 3b93536d291a34183592fd29ef1df9cf1416ac09 +# Parent 184c34c673d479477d34194e3c0b1abe7ca5d828 +Make sure we can link with OpenGL libraries in the OpenGL configure test + +[yann.morin.1998@free.fr: + - backported from upstream + - drop the configure hunk for autoreconf +] +Signed-off-by: "Yann E. MORIN" + +diff -r 184c34c673d4 -r 3b93536d291a configure.in +--- a/configure.in Sun Jan 01 18:46:38 2017 -0800 ++++ b/configure.in Fri Jan 27 17:54:34 2017 -0800 +@@ -164,14 +164,17 @@ + esac + AC_MSG_CHECKING(for OpenGL support) + have_opengl=no +-AC_TRY_COMPILE([ ++save_LIBS="$LIBS" ++LIBS="$LIBS $SYS_GL_LIBS" ++AC_TRY_LINK([ + #include "SDL_opengl.h" + ],[ +- GLuint texture; ++ glOrtho( -2.0, 2.0, -2.0, 2.0, -20.0, 20.0 ); + ],[ + have_opengl=yes + ]) + AC_MSG_RESULT($have_opengl) ++LIBS="$save_LIBS" + if test x$have_opengl = xyes; then + CFLAGS="$CFLAGS -DHAVE_OPENGL" + GL_LIBS="$SYS_GL_LIBS" + diff --git a/package/sdl2_ttf/0002-fix-autoreconf.patch b/package/sdl2_ttf/0002-fix-autoreconf.patch new file mode 100644 index 0000000000..88543a9491 --- /dev/null +++ b/package/sdl2_ttf/0002-fix-autoreconf.patch @@ -0,0 +1,30 @@ +# HG changeset patch +# User "Yann E. MORIN" +# Date 1485597428 -3600 +# Node ID 26376ce4a3e6565885fd984b3fe5a39a6895dcdd +# Parent 3b93536d291a34183592fd29ef1df9cf1416ac09 +configure: fix autoreconf + +Signed-off-by: "Yann E. MORIN" + +diff --git a/configure.in b/configure.in +--- a/configure.in ++++ b/configure.in +@@ -1,5 +1,6 @@ + dnl Process this file with autoconf to produce a configure script. +-AC_INIT(README.txt) ++dnl The version string must be a literal ++AC_INIT([SDL2_ttf],[2.0.14]) + + dnl Set various version strings - taken gratefully from the GTk sources + +@@ -42,7 +42,7 @@ + AC_CANONICAL_HOST + + dnl Setup for automake +-AM_INIT_AUTOMAKE(SDL2_ttf, $VERSION) ++AM_INIT_AUTOMAKE([foreign]) + + dnl Check for tools + AC_PROG_LIBTOOL + diff --git a/package/sdl2_ttf/Config.in b/package/sdl2_ttf/Config.in new file mode 100644 index 0000000000..fc870a71c5 --- /dev/null +++ b/package/sdl2_ttf/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SDL2_TTF + bool "sdl2_ttf" + depends on BR2_PACKAGE_SDL2 + select BR2_PACKAGE_FREETYPE + help + SDL2_ttf is a sample TrueType font library. It allows you to + use TrueType fonts in your SDL2 applications. + + http://www.libsdl.org/projects/SDL_ttf/ diff --git a/package/sdl2_ttf/sdl2_ttf.hash b/package/sdl2_ttf/sdl2_ttf.hash new file mode 100644 index 0000000000..515189afd9 --- /dev/null +++ b/package/sdl2_ttf/sdl2_ttf.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 34db5e20bcf64e7071fe9ae25acaa7d72bdc4f11ab3ce59acc768ab62fe39276 SDL2_ttf-2.0.14.tar.gz diff --git a/package/sdl2_ttf/sdl2_ttf.mk b/package/sdl2_ttf/sdl2_ttf.mk new file mode 100644 index 0000000000..86916c3443 --- /dev/null +++ b/package/sdl2_ttf/sdl2_ttf.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# sdl2_ttf +# +################################################################################ + +SDL2_TTF_VERSION = 2.0.14 +SDL2_TTF_SOURCE = SDL2_ttf-$(SDL2_TTF_VERSION).tar.gz +SDL2_TTF_SITE = http://www.libsdl.org/projects/SDL_ttf/release +SDL2_TTF_LICENSE = zlib +SDL2_TTF_LICENSE_FILES = COPYING.txt +SDL2_TTF_INSTALL_STAGING = YES +SDL2_TTF_DEPENDENCIES = sdl2 freetype host-pkgconf + +# Two patches touching configure.in +SDL2_TTF_AUTORECONF = YES + +SDL2_TTF_CONF_ENV = \ + FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config + +# x-includes and x-libraries must be set for cross-compiling +# By default x_includes and x_libraries contains unsafe paths. +# (/usr/include and /usr/lib) +ifeq ($(BR2_PACKAGE_SDL2_X11),y) +SDL2_TTF_CONF_OPTS += \ + --with-x \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib +else +SDL2_TTF_CONF_OPTS += \ + --without-x +endif + +$(eval $(autotools-package)) diff --git a/package/sdl_image/Config.in b/package/sdl_image/Config.in index 1b98066827..c719d441bd 100644 --- a/package/sdl_image/Config.in +++ b/package/sdl_image/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_SDL_IMAGE +menuconfig BR2_PACKAGE_SDL_IMAGE bool "SDL_image" depends on BR2_PACKAGE_SDL help @@ -10,52 +10,48 @@ config BR2_PACKAGE_SDL_IMAGE if BR2_PACKAGE_SDL_IMAGE -menu "SDL_image file format support" - config BR2_PACKAGE_SDL_IMAGE_BMP - bool "enable BMP file format support" + bool "BMP support" default y config BR2_PACKAGE_SDL_IMAGE_GIF - bool "enable GIF file format support" + bool "GIF support" config BR2_PACKAGE_SDL_IMAGE_JPEG - bool "enable JPEG file format support" + bool "JPEG support" select BR2_PACKAGE_JPEG config BR2_PACKAGE_SDL_IMAGE_LBM - bool "enable LBM file format support" + bool "LBM support" config BR2_PACKAGE_SDL_IMAGE_PCX - bool "enable PCX file format support" + bool "PCX support" config BR2_PACKAGE_SDL_IMAGE_PNG - bool "enable PNG file format support" + bool "PNG support" select BR2_PACKAGE_LIBPNG config BR2_PACKAGE_SDL_IMAGE_PNM - bool "enable PNM file format support" + bool "PNM support" config BR2_PACKAGE_SDL_IMAGE_TARGA - bool "enable TARGA format support" + bool "TARGA support" config BR2_PACKAGE_SDL_IMAGE_TIFF - bool "enable TIFF file format support" + bool "TIFF support" select BR2_PACKAGE_TIFF config BR2_PACKAGE_SDL_IMAGE_WEBP - bool "enable WEBP file format support" + bool "WEBP support" select BR2_PACKAGE_WEBP config BR2_PACKAGE_SDL_IMAGE_XCF - bool "enable XCF file format support" + bool "XCF support" config BR2_PACKAGE_SDL_IMAGE_XPM - bool "enable XPM format support" + bool "XPM support" config BR2_PACKAGE_SDL_IMAGE_XV - bool "enable XV file format support" - -endmenu + bool "XV support" endif diff --git a/package/sdl_image/sdl_image.mk b/package/sdl_image/sdl_image.mk index b46fc6440f..f88aa0e7c7 100644 --- a/package/sdl_image/sdl_image.mk +++ b/package/sdl_image/sdl_image.mk @@ -28,7 +28,7 @@ SDL_IMAGE_CONF_OPTS = \ --enable-webp=$(if $(BR2_PACKAGE_SDL_IMAGE_WEBP),yes,no) \ --enable-xcf=$(if $(BR2_PACKAGE_SDL_IMAGE_XCF),yes,no) \ --enable-xpm=$(if $(BR2_PACKAGE_SDL_IMAGE_XPM),yes,no) \ - --enable-xv=$(if $(BR2_PACKAGE_SDL_IMAGE_XV),yes,no) \ + --enable-xv=$(if $(BR2_PACKAGE_SDL_IMAGE_XV),yes,no) SDL_IMAGE_DEPENDENCIES = sdl \ $(if $(BR2_PACKAGE_SDL_IMAGE_JPEG),jpeg) \ @@ -43,7 +43,7 @@ HOST_SDL_IMAGE_CONF_OPTS = \ --disable-static \ --disable-jpg-shared \ --disable-png-shared \ - --disable-tif-shared \ + --disable-tif-shared HOST_SDL_IMAGE_DEPENDENCIES = host-libjpeg host-libpng host-sdl diff --git a/package/sdl_mixer/0002-add-LDFLAGS-while-linking.patch b/package/sdl_mixer/0002-add-LDFLAGS-while-linking.patch new file mode 100644 index 0000000000..4144660741 --- /dev/null +++ b/package/sdl_mixer/0002-add-LDFLAGS-while-linking.patch @@ -0,0 +1,29 @@ +Pass LDFLAGS while creating binaries. + +Fixes following linking error with uClibc-ng: +br/output/host/usr/lib/gcc/powerpc-buildroot-linux-uclibc/5.4.0/libgcc.a(unwind-dw2-fde-dip.o): In function `_Unwind_Find_FDE': +br/output/build/host-gcc-final-5.4.0/build/powerpc-buildroot-linux-uclibc/libgcc/../../../libgcc/unwind-dw2-fde-dip.c:465: undefined reference to `dl_iterate_phdr' +collect2: error: ld returned 1 exit status + +Since uClibc-ng 1.0.18 a circular dependency between libc and libgcc +exist, when static linking is used. It can be resolved by the compiler +when -static is correctly passed in the linking step. + +Signed-off-by: Waldemar Brodkorb + +diff -Nur SDL_mixer-1.2.12.orig/Makefile.in SDL_mixer-1.2.12/Makefile.in +--- SDL_mixer-1.2.12.orig/Makefile.in 2012-01-15 23:01:04.000000000 +0100 ++++ SDL_mixer-1.2.12/Makefile.in 2016-12-07 08:29:22.479786596 +0100 +@@ -66,10 +66,10 @@ + $(LIBTOOL) --mode=link $(CC) -o $@ $(OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) + + $(objects)/playwave$(EXE): $(objects)/playwave.lo $(objects)/$(TARGET) +- $(LIBTOOL) --mode=link $(CC) -o $@ $(objects)/playwave.lo $(SDL_CFLAGS) $(SDL_LIBS) $(objects)/$(TARGET) ++ $(LIBTOOL) --mode=link $(CC) -o $@ $(objects)/playwave.lo $(SDL_CFLAGS) $(SDL_LIBS) $(LDFLAGS) $(objects)/$(TARGET) + + $(objects)/playmus$(EXE): $(objects)/playmus.lo $(objects)/$(TARGET) +- $(LIBTOOL) --mode=link $(CC) -o $@ $(objects)/playmus.lo $(SDL_CFLAGS) $(SDL_LIBS) $(objects)/$(TARGET) ++ $(LIBTOOL) --mode=link $(CC) -o $@ $(objects)/playmus.lo $(SDL_CFLAGS) $(SDL_LIBS) $(LDFLAGS) $(objects)/$(TARGET) + + install: all install-hdrs install-lib #install-bin + install-hdrs: diff --git a/package/sed/Config.in b/package/sed/Config.in index c6c91df48f..6adebf24de 100644 --- a/package/sed/Config.in +++ b/package/sed/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_SED bool "sed" depends on BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help Super-useful stream editor. @@ -8,3 +9,4 @@ config BR2_PACKAGE_SED comment "sed needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/sepolgen/sepolgen.hash b/package/sepolgen/sepolgen.hash index a377c66aef..b338a7019f 100644 --- a/package/sepolgen/sepolgen.hash +++ b/package/sepolgen/sepolgen.hash @@ -1,2 +1,2 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 8a1c6d3a78c9b6ad3555c74def555f65a62950bf21c111c585bfc382fec3a645 sepolgen-1.1.9.tar.gz +sha256 6a327b1576d914e57ad796a541a7a9bcceefb14c445355559993de0fdb8e7a60 sepolgen-2.6.tar.gz diff --git a/package/sepolgen/sepolgen.mk b/package/sepolgen/sepolgen.mk index 7c958662c4..137eaed612 100644 --- a/package/sepolgen/sepolgen.mk +++ b/package/sepolgen/sepolgen.mk @@ -4,8 +4,8 @@ # ################################################################################ -SEPOLGEN_VERSION = 1.1.9 -SEPOLGEN_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20130423 +SEPOLGEN_VERSION = 2.6 +SEPOLGEN_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20161014 SEPOLGEN_LICENSE = GPLv2 SEPOLGEN_LICENSE_FILES = COPYING @@ -20,11 +20,11 @@ HOST_SEPOLGEN_MAKE_CMDS = $(HOST_CONFIGURE_OPTS) \ endif define HOST_SEPOLGEN_BUILD_CMDS - $(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) endef define HOST_SEPOLGEN_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) install + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) install endef $(eval $(host-generic-package)) diff --git a/package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch b/package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch deleted file mode 100644 index 9c6d1689b7..0000000000 --- a/package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch +++ /dev/null @@ -1,65 +0,0 @@ -ser2net: Fix compilation failures due to missing TIOCSRS485 macro - -Patch sent upstream: - https://sourceforge.net/p/ser2net/mailman/message/32905302/ - -Signed-off-by: Vicente Olivert Riera - -From: Yegor Yefremov - -include fixes compilations for systems, -where won't be included automatically. - -Move special Linux includes to dataxfer.h. - -Signed-off-by: Yegor Yefremov ---- - dataxfer.h | 5 +++-- - devcfg.c | 2 -- - 2 files changed, 3 insertions(+), 4 deletions(-) - -diff --git a/dataxfer.h b/dataxfer.h -index bd2665e..c3d7431 100644 ---- a/dataxfer.h -+++ b/dataxfer.h -@@ -20,8 +20,6 @@ - #ifndef DATAXFER - #define DATAXFER - --#include -- - #include "controller.h" - - #ifdef USE_UUCP_LOCKING -@@ -30,6 +28,9 @@ extern int uucp_locking_enabled; - - #ifdef linux - -+#include -+#include -+ - #define USE_RS485_FEATURE - - /* Check, if the toolchain provides serial_rs485 structure and macros */ -diff --git a/devcfg.c b/devcfg.c -index ab819a6..1f84714 100644 ---- a/devcfg.c -+++ b/devcfg.c -@@ -18,7 +18,6 @@ - */ - - /* This code handles generating the configuration for the serial port. */ -- - #include - #include - #include -@@ -31,7 +30,6 @@ - #include - #include - #include --#include - - #include "ser2net.h" - #include "selector.h" --- -1.9.1 diff --git a/package/ser2net/S50ser2net b/package/ser2net/S50ser2net new file mode 100644 index 0000000000..200dfd0e4d --- /dev/null +++ b/package/ser2net/S50ser2net @@ -0,0 +1,43 @@ +#!/bin/sh +# +# Startup script for ser2net +# + +start() { + printf "Starting ser2net: " + if [ ! -f /etc/ser2net.conf ] ; then + echo "no configuration file" + exit 1 + fi + + start-stop-daemon -S -q --exec /usr/sbin/ser2net -- -P /var/run/ser2net.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Shutting down ser2net: " + start-stop-daemon -K -q -p /var/run/ser2net.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + restart + ;; + *) + echo "Usage: ser2net {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/ser2net/ser2net.hash b/package/ser2net/ser2net.hash index 4675164e49..ae45e9cecf 100644 --- a/package/ser2net/ser2net.hash +++ b/package/ser2net/ser2net.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 98f6193225338e25f35302fef5e1f16688693ed43e7b3c3e9e09187eb54547ac ser2net-2.10.0.tar.gz +sha256 3d1cef5f48df8291e57d4d7d4eac2fc809ae644a5524ffca4aebef0f4e4153dc ser2net-3.3.tar.gz diff --git a/package/ser2net/ser2net.mk b/package/ser2net/ser2net.mk index 414f1eda32..a786b1a2a7 100644 --- a/package/ser2net/ser2net.mk +++ b/package/ser2net/ser2net.mk @@ -4,9 +4,20 @@ # ################################################################################ -SER2NET_VERSION = 2.10.0 +SER2NET_VERSION = 3.3 SER2NET_SITE = http://downloads.sourceforge.net/project/ser2net/ser2net SER2NET_LICENSE = GPLv2+ SER2NET_LICENSE_FILES = COPYING +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +SER2NET_CONF_OPTS += --with-pthreads +else +SER2NET_CONF_OPTS += --without-pthreads +endif + +define SER2NET_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/ser2net/S50ser2net \ + $(TARGET_DIR)/etc/init.d/S50ser2net +endef + $(eval $(autotools-package)) diff --git a/package/setools/0003-setools-Update-for-2015-02-02-Userspace-release.patch b/package/setools/0003-setools-Update-for-2015-02-02-Userspace-release.patch new file mode 100644 index 0000000000..b0842d961a --- /dev/null +++ b/package/setools/0003-setools-Update-for-2015-02-02-Userspace-release.patch @@ -0,0 +1,90 @@ +setools: Add patch to support 2.4 toolstack. +Signed-off-by: Philip Tricca +Signed-off-by: Joe MacDonald +URL: https://github.com/flihp/meta-selinux/commit/e09eaef7a9acb552a4a5e1f90117154ae06b6fda + +Signed-off-by: Adam Duskett + +diff --git a/libqpol/src/policy_define.c b/libqpol/src/policy_define.c +index fad6b60..231962f 100644 +--- a/libqpol/src/policy_define.c ++++ b/libqpol/src/policy_define.c +@@ -1449,7 +1449,7 @@ int define_compute_type_helper(int which, avrule_t ** rule) + return -1; + } + class_perm_node_init(perm); +- perm->class = i + 1; ++ perm->tclass = i + 1; + perm->data = datum->s.value; + perm->next = avrule->perms; + avrule->perms = perm; +@@ -1699,7 +1699,7 @@ int define_te_avtab_helper(int which, avrule_t ** rule) + goto out; + } + class_perm_node_init(cur_perms); +- cur_perms->class = i + 1; ++ cur_perms->tclass = i + 1; + if (!perms) + perms = cur_perms; + if (tail) +diff --git a/libqpol/src/policy_extend.c b/libqpol/src/policy_extend.c +index 5325a87..1417271 100644 +--- a/libqpol/src/policy_extend.c ++++ b/libqpol/src/policy_extend.c +@@ -843,7 +843,7 @@ static int qpol_syn_rule_table_insert_sepol_avrule(qpol_policy_t * policy, qpol_ + for (class_node = rule->perms; class_node; class_node = class_node->next) { + key.rule_type = rule->specified; + key.source_val = key.target_val = i + 1; +- key.class_val = class_node->class; ++ key.class_val = class_node->tclass; + key.cond = cond; + if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule)) + goto err; +@@ -856,7 +856,7 @@ static int qpol_syn_rule_table_insert_sepol_avrule(qpol_policy_t * policy, qpol_ + key.rule_type = rule->specified; + key.source_val = i + 1; + key.target_val = j + 1; +- key.class_val = class_node->class; ++ key.class_val = class_node->tclass; + key.cond = cond; + if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule)) + goto err; +diff --git a/libqpol/src/syn_rule_query.c b/libqpol/src/syn_rule_query.c +index 3e63204..d7578f1 100644 +--- a/libqpol/src/syn_rule_query.c ++++ b/libqpol/src/syn_rule_query.c +@@ -67,7 +67,7 @@ static void *syn_rule_class_state_get_cur(const qpol_iterator_t * iter) + return NULL; + } + +- return db->class_val_to_struct[srcs->cur->class - 1]; ++ return db->class_val_to_struct[srcs->cur->tclass - 1]; + } + + static int syn_rule_class_state_next(qpol_iterator_t * iter) +@@ -465,10 +465,10 @@ int qpol_syn_avrule_get_perm_iter(const qpol_policy_t * policy, const qpol_syn_a + } + + for (node = internal_rule->perms; node; node = node->next) { +- for (i = 0; i < db->class_val_to_struct[node->class - 1]->permissions.nprim; i++) { ++ for (i = 0; i < db->class_val_to_struct[node->tclass - 1]->permissions.nprim; i++) { + if (!(node->data & (1 << i))) + continue; +- tmp = sepol_av_to_string(db, node->class, (sepol_access_vector_t) (1 << i)); ++ tmp = sepol_av_to_string(db, node->tclass, (sepol_access_vector_t) (1 << i)); + if (tmp) { + tmp++; /* remove prepended space */ + for (cur = 0; cur < perm_list_sz; cur++) +diff --git a/secmds/replcon.cc b/secmds/replcon.cc +index 34f7c1a..307c39f 100644 +--- a/secmds/replcon.cc ++++ b/secmds/replcon.cc +@@ -60,7 +60,7 @@ static struct option const longopts[] = { + {NULL, 0, NULL, 0} + }; + +-extern int lsetfilecon_raw(const char *, security_context_t) __attribute__ ((weak)); ++extern int lsetfilecon_raw(const char *, const char *) __attribute__ ((weak)); + + /** + * As that setools must work with older libselinux versions that may diff --git a/package/setools/Config.in b/package/setools/Config.in index c291b2176e..5e7f39d65f 100644 --- a/package/setools/Config.in +++ b/package/setools/Config.in @@ -8,6 +8,7 @@ config BR2_PACKAGE_SETOOLS depends on !BR2_STATIC_LIBS depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_USES_GLIBC # libselinux # bfin: infamous _ symbol prefix issue # nios2: triggers some toolchain issue "No symbol version # section for versioned symbol" @@ -28,7 +29,8 @@ config BR2_PACKAGE_SETOOLS https://github.com/TresysTechnology/setools3/wiki -comment "setools needs a toolchain w/ threads, C++, wchar, dynamic library" +comment "setools needs a glibc toolchain w/ threads, C++, wchar, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ - || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_nios2 && !BR2_bfin && !BR2_arc diff --git a/package/sg3_utils/0001-support-uclinux-as-a-linux.patch b/package/sg3_utils/0001-support-uclinux-as-a-linux.patch new file mode 100644 index 0000000000..d9106cd9f8 --- /dev/null +++ b/package/sg3_utils/0001-support-uclinux-as-a-linux.patch @@ -0,0 +1,16 @@ +Recognise uclinux as a linux + +Signed-off-by: "Yann E. MORIN" + +diff -durN sg3_utils-1.42.orig/configure.ac sg3_utils-1.42/configure.ac +--- sg3_utils-1.42.orig/configure.ac 2015-10-21 01:10:59.000000000 +0200 ++++ sg3_utils-1.42/configure.ac 2016-08-14 19:30:37.841766149 +0200 +@@ -71,7 +71,7 @@ + + # Define platform-specific symbol. + AM_CONDITIONAL(OS_FREEBSD, [echo $host_os | grep 'freebsd' > /dev/null]) +-AM_CONDITIONAL(OS_LINUX, [echo $host_os | grep '^linux' > /dev/null]) ++AM_CONDITIONAL(OS_LINUX, [echo $host_os | grep -E '^(uc)?linux' > /dev/null]) + AM_CONDITIONAL(OS_OSF, [echo $host_os | grep '^osf' > /dev/null]) + AM_CONDITIONAL(OS_SOLARIS, [echo $host_os | grep '^solaris' > /dev/null]) + AM_CONDITIONAL(OS_WIN32_MINGW, [echo $host_os | grep '^mingw' > /dev/null]) diff --git a/package/sg3_utils/sg3_utils.mk b/package/sg3_utils/sg3_utils.mk index 36cb32e33a..e7af83a523 100644 --- a/package/sg3_utils/sg3_utils.mk +++ b/package/sg3_utils/sg3_utils.mk @@ -14,6 +14,9 @@ SG3_UTILS_LICENSE += GPLv2+ endif SG3_UTILS_LICENSE_FILES = COPYING BSD_LICENSE +# Patching configure.ac +SG3_UTILS_AUTORECONF = YES + # install the libsgutils2 library SG3_UTILS_INSTALL_STAGING = YES diff --git a/package/shairport-sync/shairport-sync.hash b/package/shairport-sync/shairport-sync.hash index a452bbdd12..45bce1016a 100644 --- a/package/shairport-sync/shairport-sync.hash +++ b/package/shairport-sync/shairport-sync.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 4dfdaf0883b94c7061c894be295c878ede3048355bd415905db14ccb74159b72 shairport-sync-2.8.3.tar.gz +sha256 2e73416ac8fdda1657034afaa143f1710852ebed06e0aa43dafc2b7dc5eb653d shairport-sync-2.8.6.tar.gz diff --git a/package/shairport-sync/shairport-sync.mk b/package/shairport-sync/shairport-sync.mk index 32127b15e9..00d6a695b8 100644 --- a/package/shairport-sync/shairport-sync.mk +++ b/package/shairport-sync/shairport-sync.mk @@ -4,7 +4,7 @@ # ################################################################################ -SHAIRPORT_SYNC_VERSION = 2.8.3 +SHAIRPORT_SYNC_VERSION = 2.8.6 SHAIRPORT_SYNC_SITE = $(call github,mikebrady,shairport-sync,$(SHAIRPORT_SYNC_VERSION)) SHAIRPORT_SYNC_LICENSE = MIT, BSD-3c diff --git a/package/shapelib/Config.in b/package/shapelib/Config.in new file mode 100644 index 0000000000..aa2297b277 --- /dev/null +++ b/package/shapelib/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SHAPELIB + bool "shapelib" + help + The Shapefile C Library provides the ability to write simple + C programs for reading, writing and updating (to a limited + extent) ESRI Shapefiles, and the associated attribute file + (.dbf). + + http://shapelib.maptools.org/ diff --git a/package/shapelib/shapelib.hash b/package/shapelib/shapelib.hash new file mode 100644 index 0000000000..f3f812ebf9 --- /dev/null +++ b/package/shapelib/shapelib.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 23d474016158ab5077db2f599527631706ba5c0dc7c4178a6a1d685bb014f68f shapelib-1.3.0.tar.gz diff --git a/package/shapelib/shapelib.mk b/package/shapelib/shapelib.mk new file mode 100644 index 0000000000..2e8fe6d7b2 --- /dev/null +++ b/package/shapelib/shapelib.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# shapelib +# +################################################################################ + +SHAPELIB_VERSION = 1.3.0 +SHAPELIB_SITE = http://download.osgeo.org/shapelib +SHAPELIB_LICENSE = MIT or LGPLv2 +SHAPELIB_LICENSE_FILES = web/license.html LICENSE.LGPL +SHAPELIB_INSTALL_STAGING = YES + +define SHAPELIB_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define SHAPELIB_INSTALL_STAGING_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(STAGING_DIR)/usr/ lib_install +endef + +define SHAPELIB_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(TARGET_DIR)/usr/ bin_install +endef + +$(eval $(generic-package)) diff --git a/package/shared-mime-info/Config.in b/package/shared-mime-info/Config.in index 91a5a15a05..514044bea2 100644 --- a/package/shared-mime-info/Config.in +++ b/package/shared-mime-info/Config.in @@ -10,7 +10,7 @@ config BR2_PACKAGE_SHARED_MIME_INFO database of common types and the update-mime-database command used to extend it. - http://freedesktop.org/wiki/Software/shared-mime-info + https://freedesktop.org/wiki/Software/shared-mime-info/ comment "shared-mime-info needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU diff --git a/package/shared-mime-info/shared-mime-info.hash b/package/shared-mime-info/shared-mime-info.hash index 997751d995..cf6c8f3eb7 100644 --- a/package/shared-mime-info/shared-mime-info.hash +++ b/package/shared-mime-info/shared-mime-info.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 b2f8f85b6467933824180d0252bbcaee523f550a8fbc95cc4391bd43c03bc34c shared-mime-info-1.6.tar.xz +sha256 2af55ef1a0319805b74ab40d331a3962c905477d76c086f49e34dc96363589e9 shared-mime-info-1.8.tar.xz diff --git a/package/shared-mime-info/shared-mime-info.mk b/package/shared-mime-info/shared-mime-info.mk index a70bc9a1c4..64bb4d5187 100644 --- a/package/shared-mime-info/shared-mime-info.mk +++ b/package/shared-mime-info/shared-mime-info.mk @@ -4,9 +4,9 @@ # ################################################################################ -SHARED_MIME_INFO_VERSION = 1.6 +SHARED_MIME_INFO_VERSION = 1.8 SHARED_MIME_INFO_SOURCE = shared-mime-info-$(SHARED_MIME_INFO_VERSION).tar.xz -SHARED_MIME_INFO_SITE = http://freedesktop.org/~hadess +SHARED_MIME_INFO_SITE = https://people.freedesktop.org/~hadess SHARED_MIME_INFO_INSTALL_STAGING = YES SHARED_MIME_INFO_CONF_ENV = XMLLINT=$(HOST_DIR)/usr/bin/xmllint SHARED_MIME_INFO_DEPENDENCIES = host-shared-mime-info libxml2 libglib2 diff --git a/package/shellinabox/0001-Makefile-disable-always-building-statically.patch b/package/shellinabox/0001-Makefile-disable-always-building-statically.patch new file mode 100644 index 0000000000..2f2097e099 --- /dev/null +++ b/package/shellinabox/0001-Makefile-disable-always-building-statically.patch @@ -0,0 +1,26 @@ +From c060e6f06a81ffa400266a6d0bfc58511265a16f Mon Sep 17 00:00:00 2001 +From: Olivier Singla +Date: Thu, 4 Aug 2016 21:23:41 +0200 +Subject: [PATCH] Makefile: disable always building statically + +Signed-off-by: Olivier Singla +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 7b8e7ab..5c4c71e 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -126,7 +126,7 @@ BUILT_SOURCES = shellinabox/beep.h \ + + shellinaboxd_LDADD = liblogging.la \ + libhttp.la +-shellinaboxd_LDFLAGS = -static ++shellinaboxd_LDFLAGS = + ## Added this for compatibility with older versions of autoconf/automake + docdir = ${datadir}/doc/${PACKAGE} + +-- +2.7.4 + diff --git a/package/shellinabox/0002-launcher.c-include-sys-ttydefaults.h.patch b/package/shellinabox/0002-launcher.c-include-sys-ttydefaults.h.patch new file mode 100644 index 0000000000..caa5456609 --- /dev/null +++ b/package/shellinabox/0002-launcher.c-include-sys-ttydefaults.h.patch @@ -0,0 +1,27 @@ +From c8d9df500b1ca83ad6da9b6055549adaba6ee0d3 Mon Sep 17 00:00:00 2001 +From: Olivier Singla +Date: Thu, 4 Aug 2016 22:05:08 +0200 +Subject: [PATCH] launcher.c: include + +This include is needed to get the definition of TTYDEF_*. + +Signed-off-by: Olivier Singla +--- + shellinabox/launcher.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/shellinabox/launcher.c b/shellinabox/launcher.c +index 2bac171..c8ba6cb 100644 +--- a/shellinabox/launcher.c ++++ b/shellinabox/launcher.c +@@ -66,6 +66,7 @@ + #include + #include + #include ++#include + #include + #include + +-- +2.7.4 + diff --git a/package/shellinabox/Config.in b/package/shellinabox/Config.in new file mode 100644 index 0000000000..63a298dcae --- /dev/null +++ b/package/shellinabox/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_SHELLINABOX + bool "shellinabox" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlfcn.h + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB + help + Shell In A Box implements a web server that can export + arbitrary command line tools to a web based terminal + emulator. This emulator is accessible to any JavaScript and + CSS enabled web browser and does not require any additional + browser plugins. + + https://github.com/shellinabox/shellinabox + +comment "shellinabox needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/shellinabox/shellinabox.hash b/package/shellinabox/shellinabox.hash new file mode 100644 index 0000000000..4bc110385a --- /dev/null +++ b/package/shellinabox/shellinabox.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking pgp signature +sha256 d25ba9f72f04471fc1a8a564c65ef466c4553280ff3eeb365ed9c897d05ed2da shellinabox-v2.19.tar.gz diff --git a/package/shellinabox/shellinabox.mk b/package/shellinabox/shellinabox.mk new file mode 100644 index 0000000000..1173ef7d1c --- /dev/null +++ b/package/shellinabox/shellinabox.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# shellinabox +# +################################################################################ + +SHELLINABOX_VERSION = v2.19 +SHELLINABOX_SITE = $(call github,shellinabox,shellinabox,$(SHELLINABOX_VERSION)) +SHELLINABOX_LICENSE = GPLv2 with OpenSSL exception +SHELLINABOX_LICENSE_FILES = COPYING GPL-2 + +# Fetching from Github, and patching Makefile.am, so we need to autoreconf +SHELLINABOX_AUTORECONF = YES + +# The OpenSSL support is supposed to be optional, but in practice, +# with OpenSSL disabled, it fails to build. See +# https://github.com/shellinabox/shellinabox/issues/385. +SHELLINABOX_DEPENDENCIES = zlib openssl +SHELLINABOX_CONF_OPTS = \ + --disable-runtime-loading \ + --enable-ssl + +# musl's implementation of utmpx is a dummy one, and some aspects of +# it cause build failures in shellinabox +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +SHELLINABOX_CONF_ENV += ac_cv_header_utmpx_h=no +endif + +$(eval $(autotools-package)) diff --git a/package/skalibs/0001-No-runtime-tests-for-endianness.patch b/package/skalibs/0001-No-runtime-tests-for-endianness.patch new file mode 100644 index 0000000000..4390d449dd --- /dev/null +++ b/package/skalibs/0001-No-runtime-tests-for-endianness.patch @@ -0,0 +1,95 @@ +From 1e6f0b094c6ce6454be572704b866d2ce0962e59 Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan +Date: Sun, 4 Dec 2016 19:10:40 +0100 +Subject: [PATCH] No runtime tests for endianness + +Replace build and execution of runtime test programs for determining +the endianness of the target with compile time test programs. + +This improves support for cross-compilation. + +Signed-off-by: Eric Le Bihan +--- + configure | 15 +++++++++++---- + src/sysdeps/trybigendian.c | 16 ++++++++++++++++ + src/sysdeps/trylittleendian.c | 16 ++++++++++++++++ + 3 files changed, 43 insertions(+), 4 deletions(-) + create mode 100644 src/sysdeps/trybigendian.c + create mode 100644 src/sysdeps/trylittleendian.c + +diff --git a/configure b/configure +index 1579025..4da9c5e 100755 +--- a/configure ++++ b/configure +@@ -463,13 +463,20 @@ EOF + fi + exec 3>&- + +- echo "Checking system endianness..." +- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o tryendianness src/sysdeps/tryendianness.c +- endianness=$(./tryendianness) || fail "$0: unable to determine endianness" ++ echo "Checking system endianness..." ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trybigendian src/sysdeps/trybigendian.c 2>/dev/null; then ++ endianness=big ++ else ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trylittleendian src/sysdeps/trylittleendian.c 2>/dev/null; then ++ endianness=little ++ else ++ fail "$0: unable to determine endianness" ++ fi ++ fi + echo "endianness: $endianness" >> $sysdeps/sysdeps + echo "#define ${package_macro_name}_ENDIANNESS \"$endianness\"" >> $sysdeps/sysdeps.h + echo " ... $endianness" +- rm -f tryendianness ++ rm -f trybigendian trylittleendian + + trytypesize ushort USHORT "unsigned short" + trytypesize uint UINT "unsigned int" +diff --git a/src/sysdeps/trybigendian.c b/src/sysdeps/trybigendian.c +new file mode 100644 +index 0000000..d857572 +--- /dev/null ++++ b/src/sysdeps/trybigendian.c +@@ -0,0 +1,16 @@ ++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN) || \ ++ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) || \ ++ defined(__BIG_ENDIAN) || \ ++ defined(__ARMEB__) || \ ++ defined(__THUMBEB__) || \ ++ defined(__AARCH64EB__) || \ ++ defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__) ++#define YEAH ++#else ++#error "not big endian" ++#endif ++ ++int main(void) ++{ ++ return 0; ++} +diff --git a/src/sysdeps/trylittleendian.c b/src/sysdeps/trylittleendian.c +new file mode 100644 +index 0000000..eba065a +--- /dev/null ++++ b/src/sysdeps/trylittleendian.c +@@ -0,0 +1,16 @@ ++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN) || \ ++ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) || \ ++ defined(__LITTLE_ENDIAN) || \ ++ defined(__ARMEL__) || \ ++ defined(__THUMBEL__) || \ ++ defined(__AARCH64EL__) || \ ++ defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__) ++#define YEAH ++#else ++#error "not little endian" ++#endif ++ ++int main(void) ++{ ++ return 0; ++} +-- +2.5.5 + diff --git a/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch new file mode 100644 index 0000000000..3f16171e21 --- /dev/null +++ b/package/skalibs/0002-No-runtime-tests-for-type-sizes.patch @@ -0,0 +1,54 @@ +From d868600a3f437750bc44a783d677a25a48100096 Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan +Date: Sun, 4 Dec 2016 19:11:25 +0100 +Subject: [PATCH] No runtime tests for type sizes + +Replace build and execution of runtime test programs for determining +some type sizes of the target with compile time test programs. + +This improves support for cross-compilation. + +Signed-off-by: Eric Le Bihan +--- + configure | 24 +++++++++++++++++++++--- + 1 file changed, 21 insertions(+), 3 deletions(-) + +diff --git a/configure b/configure +index 4da9c5e..b5926ca 100755 +--- a/configure ++++ b/configure +@@ -157,10 +157,28 @@ choose () { + + trytypesize () { + echo "Checking size of $3..." +- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 src/sysdeps/trysizeof$1.c +- type_size=$(./trysizeof$1) || fail "$0: unable to determine size of $3" ++ r=false ++ type_size=0 ++ while true; do ++ cat<trysizeof$1.c ++#include ++ ++int main(void) ++{ ++ static int v = 1 / !!((sizeof($3) == $type_size)); ++ return 0; ++} ++EOF ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 trysizeof$1.c 2>/dev/null; then ++ r=true ++ break ++ fi ++ type_size=$(expr $type_size + 1) ++ test $type_size -le 16 || break ++ done ++ test $r = true || fail "$0: unable to determine size of $3" + type_bits=$(expr 8 \* $type_size) +- rm -f trysizeof$1 ++ rm -f trysizeof$1 trysizeof$1.c + echo "sizeof$1: $type_size" >> $sysdeps/sysdeps + echo "#define ${package_macro_name}_SIZEOF$2 $type_size" >> $sysdeps/sysdeps.h + echo "#define ${package_macro_name}_$2_BITS $type_bits" >> $sysdeps/sysdeps.h +-- +2.5.5 + diff --git a/package/skalibs/0003-Make-linker-use-dummy-file-when-testing-libs.patch b/package/skalibs/0003-Make-linker-use-dummy-file-when-testing-libs.patch new file mode 100644 index 0000000000..ef0e173b91 --- /dev/null +++ b/package/skalibs/0003-Make-linker-use-dummy-file-when-testing-libs.patch @@ -0,0 +1,44 @@ +From da293110f429e1206728c1551cf0f6b462b3d8c0 Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan +Date: Thu, 29 Dec 2016 19:36:24 +0100 +Subject: [PATCH] Make linker use dummy file when testing libs + +For some architectures, like Xtensa or HPPA, ld from binutils requires +the output file to be a regular file, as mentioned in a bug report on +the mailing list [1]. + +So, use a dummy file as output file for ld in trylibs(), instead of +/dev/null. + +[1] https://sourceware.org/bugzilla/show_bug.cgi?id=19526 + +Signed-off-by: Eric Le Bihan +--- + configure | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 1579025..12980fb 100755 +--- a/configure ++++ b/configure +@@ -173,7 +173,7 @@ trylibs () { + echo "Checking whether system has $2..." >&3 + shift 2 + if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -c -o try$name.o src/sysdeps/try$name.c 2>/dev/null ; then +- until $CC_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o /dev/null try$name.o $args 2>/dev/null ; do ++ until $CC_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o try$name try$name.o $args 2>/dev/null ; do + if test -z "$*" ; then + rm -f try$name.o + echo +@@ -189,7 +189,7 @@ trylibs () { + else + echo " ... yes, with$args" >&3 + fi +- rm -f try$name.o ++ rm -f try$name.o try$name + return 0 + else + echo +-- +2.4.11 + diff --git a/package/skalibs/Config.in b/package/skalibs/Config.in new file mode 100644 index 0000000000..7802ae30c4 --- /dev/null +++ b/package/skalibs/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SKALIBS + bool "skalibs" + depends on BR2_USE_MMU # fork() + help + skalibs is a package centralizing the FOSS C development + files used for building all software at skarnet.org: + it contains essentially general-purpose libraries. + + http://skarnet.org/software/skalibs/ diff --git a/package/skalibs/skalibs.hash b/package/skalibs/skalibs.hash new file mode 100644 index 0000000000..195ac47988 --- /dev/null +++ b/package/skalibs/skalibs.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 0708172bc2ec9825f8a4f312d35f8dcd94da5f291425a598c33c873b3de77df8 skalibs-2.4.0.2.tar.gz diff --git a/package/skalibs/skalibs.mk b/package/skalibs/skalibs.mk new file mode 100644 index 0000000000..55b8a293a7 --- /dev/null +++ b/package/skalibs/skalibs.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# skalibs +# +################################################################################ + +SKALIBS_VERSION = 2.4.0.2 +SKALIBS_SITE = http://skarnet.org/software/skalibs +SKALIBS_LICENSE = ISC +SKALIBS_LICENSE_FILES = COPYING +SKALIBS_INSTALL_STAGING = YES + +SKALIBS_CONF_OPTS = \ + --prefix=/usr \ + --with-default-path=/sbin:/usr/sbin:/bin:/usr/bin \ + $(SHARED_STATIC_LIBS_OPTS) + +define SKALIBS_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(SKALIBS_CONF_OPTS)) +endef + +define SKALIBS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define SKALIBS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + rm -rf $(TARGET_DIR)/usr/lib/skalibs +endef + +define SKALIBS_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install +endef + +HOST_SKALIBS_CONF_OPTS = \ + --prefix=$(HOST_DIR)/usr \ + --disable-static \ + --enable-shared \ + --disable-allstatic + +define HOST_SKALIBS_CONFIGURE_CMDS + (cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_SKALIBS_CONF_OPTS)) +endef + +define HOST_SKALIBS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define HOST_SKALIBS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/skeleton/skeleton.mk b/package/skeleton/skeleton.mk index 4e3cdc68df..1000161c34 100644 --- a/package/skeleton/skeleton.mk +++ b/package/skeleton/skeleton.mk @@ -4,9 +4,6 @@ # ################################################################################ -# source included in buildroot -SKELETON_SOURCE = - # The skeleton can't depend on the toolchain, since all packages depends on the # skeleton and the toolchain is a target package, as is skeleton. # Hence, skeleton would depends on the toolchain and the toolchain would depend @@ -20,6 +17,12 @@ ifeq ($(BR2_ROOTFS_SKELETON_CUSTOM),y) SKELETON_PATH = $(call qstrip,$(BR2_ROOTFS_SKELETON_CUSTOM_PATH)) +ifeq ($(BR_BUILDING),y) +ifeq ($(SKELETON_PATH),) +$(error No path specified for the custom skeleton) +endif +endif + ifeq ($(BR2_ROOTFS_MERGED_USR),y) # Ensure the user has prepared a merged /usr. @@ -110,6 +113,10 @@ define SKELETON_INSTALL_STAGING_CMDS ln -snf lib $(STAGING_DIR)/usr/$(SKELETON_LIB_SYMLINK) endef +# The TARGET_FINALIZE_HOOKS must be sourced only if the users choose to use the +# default skeleton. +ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) + SKELETON_TARGET_GENERIC_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) SKELETON_TARGET_GENERIC_ISSUE = $(call qstrip,$(BR2_TARGET_GENERIC_ISSUE)) SKELETON_TARGET_GENERIC_ROOT_PASSWD = $(call qstrip,$(BR2_TARGET_GENERIC_ROOT_PASSWD)) @@ -121,24 +128,24 @@ SKELETON_TARGET_GENERIC_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TE SKELETON_TARGET_GENERIC_GETTY_OPTIONS = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_OPTIONS)) ifneq ($(SKELETON_TARGET_GENERIC_HOSTNAME),) -define SYSTEM_HOSTNAME +define SKELETON_SET_HOSTNAME mkdir -p $(TARGET_DIR)/etc echo "$(SKELETON_TARGET_GENERIC_HOSTNAME)" > $(TARGET_DIR)/etc/hostname $(SED) '$$a \127.0.1.1\t$(SKELETON_TARGET_GENERIC_HOSTNAME)' \ -e '/^127.0.1.1/d' $(TARGET_DIR)/etc/hosts endef -TARGET_FINALIZE_HOOKS += SYSTEM_HOSTNAME +TARGET_FINALIZE_HOOKS += SKELETON_SET_HOSTNAME endif ifneq ($(SKELETON_TARGET_GENERIC_ISSUE),) -define SYSTEM_ISSUE +define SKELETON_SET_ISSUE mkdir -p $(TARGET_DIR)/etc echo "$(SKELETON_TARGET_GENERIC_ISSUE)" > $(TARGET_DIR)/etc/issue endef -TARGET_FINALIZE_HOOKS += SYSTEM_ISSUE +TARGET_FINALIZE_HOOKS += SKELETON_SET_ISSUE endif -define SET_NETWORK_LOCALHOST +define SKELETON_SET_NETWORK_LOCALHOST ( \ echo "# interface file auto-generated by buildroot"; \ echo ; \ @@ -147,14 +154,14 @@ define SET_NETWORK_LOCALHOST ) > $(TARGET_DIR)/etc/network/interfaces endef -NETWORK_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP)) +SKELETON_NETWORK_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP)) -ifneq ($(NETWORK_DHCP_IFACE),) -define SET_NETWORK_DHCP +ifneq ($(SKELETON_NETWORK_DHCP_IFACE),) +define SKELETON_SET_NETWORK_DHCP ( \ echo ; \ - echo "auto $(NETWORK_DHCP_IFACE)"; \ - echo "iface $(NETWORK_DHCP_IFACE) inet dhcp"; \ + echo "auto $(SKELETON_NETWORK_DHCP_IFACE)"; \ + echo "iface $(SKELETON_NETWORK_DHCP_IFACE) inet dhcp"; \ echo " pre-up /etc/network/nfs_check"; \ echo " wait-delay 15"; \ ) >> $(TARGET_DIR)/etc/network/interfaces @@ -163,80 +170,76 @@ define SET_NETWORK_DHCP endef endif -define SET_NETWORK +define SKELETON_SET_NETWORK mkdir -p $(TARGET_DIR)/etc/network/ - $(SET_NETWORK_LOCALHOST) - $(SET_NETWORK_DHCP) + $(SKELETON_SET_NETWORK_LOCALHOST) + $(SKELETON_SET_NETWORK_DHCP) endef -TARGET_FINALIZE_HOOKS += SET_NETWORK - -# The TARGET_FINALIZE_HOOKS must be sourced only if the users choose to use the -# default skeleton. -ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) +TARGET_FINALIZE_HOOKS += SKELETON_SET_NETWORK ifeq ($(BR2_TARGET_ENABLE_ROOT_LOGIN),y) ifeq ($(SKELETON_TARGET_GENERIC_ROOT_PASSWD),) -SYSTEM_ROOT_PASSWORD = +SKELETON_ROOT_PASSWORD = else ifneq ($(filter $$1$$% $$5$$% $$6$$%,$(SKELETON_TARGET_GENERIC_ROOT_PASSWD)),) -SYSTEM_ROOT_PASSWORD = '$(SKELETON_TARGET_GENERIC_ROOT_PASSWD)' +SKELETON_ROOT_PASSWORD = '$(SKELETON_TARGET_GENERIC_ROOT_PASSWD)' else SKELETON_DEPENDENCIES += host-mkpasswd # This variable will only be evaluated in the finalize stage, so we can # be sure that host-mkpasswd will have already been built by that time. -SYSTEM_ROOT_PASSWORD = "`$(MKPASSWD) -m "$(SKELETON_TARGET_GENERIC_PASSWD_METHOD)" "$(SKELETON_TARGET_GENERIC_ROOT_PASSWD)"`" +SKELETON_ROOT_PASSWORD = "`$(MKPASSWD) -m "$(SKELETON_TARGET_GENERIC_PASSWD_METHOD)" "$(SKELETON_TARGET_GENERIC_ROOT_PASSWD)"`" endif else # !BR2_TARGET_ENABLE_ROOT_LOGIN -SYSTEM_ROOT_PASSWORD = "*" +SKELETON_ROOT_PASSWORD = "*" endif -define SKELETON_SYSTEM_SET_ROOT_PASSWD - $(SED) s,^root:[^:]*:,root:$(SYSTEM_ROOT_PASSWORD):, $(TARGET_DIR)/etc/shadow +define SKELETON_SET_ROOT_PASSWD + $(SED) s,^root:[^:]*:,root:$(SKELETON_ROOT_PASSWORD):, $(TARGET_DIR)/etc/shadow endef -TARGET_FINALIZE_HOOKS += SKELETON_SYSTEM_SET_ROOT_PASSWD +TARGET_FINALIZE_HOOKS += SKELETON_SET_ROOT_PASSWD ifeq ($(BR2_SYSTEM_BIN_SH_NONE),y) -define SKELETON_SYSTEM_BIN_SH +define SKELETON_BIN_SH rm -f $(TARGET_DIR)/bin/sh endef else -define SKELETON_SYSTEM_BIN_SH +define SKELETON_BIN_SH ln -sf $(SKELETON_TARGET_GENERIC_BIN_SH) $(TARGET_DIR)/bin/sh endef endif -TARGET_FINALIZE_HOOKS += SKELETON_SYSTEM_BIN_SH +TARGET_FINALIZE_HOOKS += SKELETON_BIN_SH ifeq ($(BR2_TARGET_GENERIC_GETTY),y) ifeq ($(BR2_INIT_SYSV),y) # In sysvinit inittab, the "id" must not be longer than 4 bytes, so we # skip the "tty" part and keep only the remaining. -define SKELETON_SYSTEM_GETTY +define SKELETON_SET_GETTY $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(SKELETON_TARGET_GENERIC_GETTY_PORT) | tail -c+4)::respawn:/sbin/getty -L $(SKELETON_TARGET_GENERIC_GETTY_OPTIONS) $(SKELETON_TARGET_GENERIC_GETTY_PORT) $(SKELETON_TARGET_GENERIC_GETTY_BAUDRATE) $(SKELETON_TARGET_GENERIC_GETTY_TERM) #~' \ $(TARGET_DIR)/etc/inittab endef else ifeq ($(BR2_INIT_BUSYBOX),y) # Add getty to busybox inittab -define SKELETON_SYSTEM_GETTY +define SKELETON_SET_GETTY $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(SKELETON_TARGET_GENERIC_GETTY_PORT)::respawn:/sbin/getty -L $(SKELETON_TARGET_GENERIC_GETTY_OPTIONS) $(SKELETON_TARGET_GENERIC_GETTY_PORT) $(SKELETON_TARGET_GENERIC_GETTY_BAUDRATE) $(SKELETON_TARGET_GENERIC_GETTY_TERM) #~' \ $(TARGET_DIR)/etc/inittab endef endif -TARGET_FINALIZE_HOOKS += SKELETON_SYSTEM_GETTY +TARGET_FINALIZE_HOOKS += SKELETON_SET_GETTY endif ifeq ($(BR2_INIT_BUSYBOX)$(BR2_INIT_SYSV),y) ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) # Find commented line, if any, and remove leading '#'s -define SKELETON_SYSTEM_REMOUNT_RW +define SKELETON_REMOUNT_RW $(SED) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab endef else # Find uncommented line, if any, and add a leading '#' -define SKELETON_SYSTEM_REMOUNT_RW +define SKELETON_REMOUNT_RW $(SED) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR)/etc/inittab endef endif -TARGET_FINALIZE_HOOKS += SKELETON_SYSTEM_REMOUNT_RW +TARGET_FINALIZE_HOOKS += SKELETON_REMOUNT_RW endif # BR2_INIT_BUSYBOX || BR2_INIT_SYSV endif # BR2_ROOTFS_SKELETON_DEFAULT diff --git a/package/sl/sl.hash b/package/sl/sl.hash new file mode 100644 index 0000000000..be74670ffb --- /dev/null +++ b/package/sl/sl.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1e5996757f879c81f202a18ad8e982195cf51c41727d3fea4af01fdcbbb5563a sl-5.02.tar.gz diff --git a/package/smack/smack.hash b/package/smack/smack.hash new file mode 100644 index 0000000000..fd51249811 --- /dev/null +++ b/package/smack/smack.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 94dc21b4a5e570af0eb44debf57491170cccdbf60e03b5a3210f2a14d6448390 smack-v1.1.0.tar.gz diff --git a/package/smcroute/smcroute.hash b/package/smcroute/smcroute.hash index b24228f620..e1483ec180 100644 --- a/package/smcroute/smcroute.hash +++ b/package/smcroute/smcroute.hash @@ -1,4 +1,4 @@ # Locally generated -sha256 66fd32dc66b5d32670918205a94c4f2ac8c56741486326922e4d1a92f628db48 smcroute-2.0.0.tar.xz -# From https://github.com/troglobit/smcroute/releases/download/2.0.0/smcroute-2.0.0.tar.xz.md5 -md5 cbf478e52ab9ae411adca41b9d22f68a smcroute-2.0.0.tar.xz +sha256 cf344922b4298b94e53fa2db8f2b064bece60f75926966f330437dfcbd76d425 smcroute-2.1.1.tar.xz +# From https://github.com/troglobit/smcroute/releases/download/2.1.1/smcroute-2.1.1.tar.xz.md5 +md5 cd9256577fe06beaf8da2eba1a02f953 smcroute-2.1.1.tar.xz diff --git a/package/smcroute/smcroute.mk b/package/smcroute/smcroute.mk index 77e7e63195..a3d4bc4f17 100755 --- a/package/smcroute/smcroute.mk +++ b/package/smcroute/smcroute.mk @@ -4,7 +4,7 @@ # ################################################################################ -SMCROUTE_VERSION = 2.0.0 +SMCROUTE_VERSION = 2.1.1 SMCROUTE_SOURCE = smcroute-$(SMCROUTE_VERSION).tar.xz SMCROUTE_SITE = https://github.com/troglobit/smcroute/releases/download/$(SMCROUTE_VERSION) SMCROUTE_LICENSE = GPLv2+ diff --git a/package/smstools3/smstools3.mk b/package/smstools3/smstools3.mk index a1684de8df..52f9b319e9 100644 --- a/package/smstools3/smstools3.mk +++ b/package/smstools3/smstools3.mk @@ -14,7 +14,7 @@ SMSTOOLS3_CFLAGS += -D NUMBER_OF_MODEMS=$(BR2_PACKAGE_SMSTOOLS3_NB_MODEMS) SMSTOOLS3_CFLAGS += -D NOSTATS define SMSTOOLS3_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(SMSTOOLS3_CFLAGS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(SMSTOOLS3_CFLAGS)" -C $(@D) endef define SMSTOOLS3_INSTALL_INIT_SYSV diff --git a/package/snappy/snappy.hash b/package/snappy/snappy.hash new file mode 100644 index 0000000000..bb7f104cca --- /dev/null +++ b/package/snappy/snappy.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f50719c6dc7103d65df66882a3b4569d598eda251266463eca716928187dc12b snappy-32d6d7d8a2ef328a2ee1dd40f072e21f4983ebda.tar.gz diff --git a/package/snappy/snappy.mk b/package/snappy/snappy.mk index b00dddf6cf..fcbcd1368f 100644 --- a/package/snappy/snappy.mk +++ b/package/snappy/snappy.mk @@ -4,7 +4,7 @@ # ################################################################################ -SNAPPY_VERSION = 1ff9be9b8fafc8528ca9e055646f5932aa5db9c4 +SNAPPY_VERSION = 32d6d7d8a2ef328a2ee1dd40f072e21f4983ebda SNAPPY_SITE = $(call github,google,snappy,$(SNAPPY_VERSION)) SNAPPY_LICENSE = BSD-3c SNAPPY_LICENSE_FILES = COPYING @@ -16,4 +16,13 @@ SNAPPY_INSTALL_STAGING = YES # Disable tests SNAPPY_CONF_OPTS = --disable-gtest +# libsnappy links with libstdc++. Some libstdc++/arch variants use +# pthread symbols for internal locking if built with thead +# support. libstdc++ does not have a .pc file, and its .la file does +# not mention -pthread. So, static linkig to libstdc++ will fail if +# -pthread is not explicity linked to. Only do that for static builds. +ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) +SNAPPY_CONF_OPTS += LIBS=-pthread +endif + $(eval $(autotools-package)) diff --git a/package/sngrep/Config.in b/package/sngrep/Config.in new file mode 100644 index 0000000000..4d0d80c13c --- /dev/null +++ b/package/sngrep/Config.in @@ -0,0 +1,14 @@ +comment "sngrep needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_SNGREP + bool "sngrep" + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_LIBPCAP + help + sngrep is a tool for displaying SIP calls message flows from + terminal. It supports live capture to display realtime SIP + packets and can also be used as PCAP viewer. + + https://github.com/irontec/sngrep diff --git a/package/sngrep/sngrep.hash b/package/sngrep/sngrep.hash new file mode 100644 index 0000000000..dd75f89566 --- /dev/null +++ b/package/sngrep/sngrep.hash @@ -0,0 +1 @@ +sha256 30fbfb4f90ed8805194b39683a8a2ed465776ffd60df4482bd029d63b316b3f1 sngrep-v1.4.2.tar.gz diff --git a/package/sngrep/sngrep.mk b/package/sngrep/sngrep.mk new file mode 100644 index 0000000000..b82d8cefa7 --- /dev/null +++ b/package/sngrep/sngrep.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# sngrep +# +################################################################################ + +SNGREP_VERSION = v1.4.2 +SNGREP_SITE = $(call github,irontec,sngrep,$(SNGREP_VERSION)) +SNGREP_LICENSE = GPLv3+ +SNGREP_LICENSE_FILES = LICENSE +SNGREP_AUTORECONF = YES +SNGREP_DEPENDENCIES = libpcap ncurses + +SNGREP_CONF_ENV += \ + $(if $(BR2_STATIC_LIBS),LIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --libs`") + +# our ncurses wchar support is not properly detected +SNGREP_CONF_OPTS += --disable-unicode + +# openssl and gnutls can't be enabled at the same time. +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SNGREP_DEPENDENCIES += openssl +SNGREP_CONF_OPTS += --with-openssl --without-gnutls +# gnutls support also requires libgcrypt +else ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy) +SNGREP_DEPENDENCIES += gnutls +SNGREP_CONF_OPTS += --with-gnutls --without-openssl +else +SNGREP_CONF_OPTS += --without-gnutls --without-openssl +endif + +ifeq ($(BR2_PACKAGE_PCRE),y) +SNGREP_DEPENDENCIES += pcre +SNGREP_CONF_OPTS += --with-pcre +else +SNGREP_CONF_OPTS += --without-pcre +endif + +$(eval $(autotools-package)) diff --git a/package/snmppp/0001-Add-missing-includes.patch b/package/snmppp/0001-Add-missing-includes.patch deleted file mode 100644 index c3fa491525..0000000000 --- a/package/snmppp/0001-Add-missing-includes.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 6433c6e8d81313ec7ef6c8d3abf96fffa537e23e Mon Sep 17 00:00:00 2001 -From: Luca Ceresoli -Date: Tue, 1 Apr 2014 14:35:25 +0200 -Subject: [PATCH] Add missing includes - -Signed-off-by: Luca Ceresoli ---- - include/snmp_pp/config_snmp_pp.h.in | 4 ++++ - include/snmp_pp/smival.h | 1 + - 2 files changed, 5 insertions(+) - -diff --git a/include/snmp_pp/config_snmp_pp.h.in b/include/snmp_pp/config_snmp_pp.h.in -index 89a5b0d..3100713 100644 ---- a/include/snmp_pp/config_snmp_pp.h.in -+++ b/include/snmp_pp/config_snmp_pp.h.in -@@ -28,6 +28,10 @@ - #ifndef _CONFIG_SNMP_PP_H_ - #define _CONFIG_SNMP_PP_H_ - -+#ifdef __linux__ -+#include -+#endif -+ - #define SNMP_PP_VERSION_STRING "@VERSION@" - #define SNMP_PP_VERSION @SNMP_PP_MAJOR_VERSION@ - #define SNMP_PP_RELEASE @SNMP_PP_MINOR_VERSION@ -diff --git a/include/snmp_pp/smival.h b/include/snmp_pp/smival.h -index 7a36fab..7522087 100644 ---- a/include/snmp_pp/smival.h -+++ b/include/snmp_pp/smival.h -@@ -59,6 +59,7 @@ - #define _SMIVALUE - - //----[ includes ]----------------------------------------------------- -+#include - #include "snmp_pp/smi.h" - - #ifdef SNMP_PP_NAMESPACE --- -1.8.3.2 - diff --git a/package/snmppp/snmppp.hash b/package/snmppp/snmppp.hash index a278ebfb28..75ecddade2 100644 --- a/package/snmppp/snmppp.hash +++ b/package/snmppp/snmppp.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 65d8bef3fb0e28892b7768e4027c2873b5556fc89c5440008508bf8ec91764cd snmp++-3.3.5.tar.gz +sha256 2ef0cb20658c1eb9e053f8a7a9d5c8f5ebf2f734d37b692fdbf7163ea17dde6f snmp++-3.3.9.tar.gz diff --git a/package/snmppp/snmppp.mk b/package/snmppp/snmppp.mk index 026fe6ecca..67410d9e4d 100644 --- a/package/snmppp/snmppp.mk +++ b/package/snmppp/snmppp.mk @@ -4,7 +4,7 @@ # ################################################################################ -SNMPPP_VERSION = 3.3.5 +SNMPPP_VERSION = 3.3.9 SNMPPP_SOURCE = snmp++-$(SNMPPP_VERSION).tar.gz SNMPPP_SITE = http://www.agentpp.com/download SNMPPP_DEPENDENCIES = host-pkgconf diff --git a/package/snowball-hdmiservice/Config.in b/package/snowball-hdmiservice/Config.in deleted file mode 100644 index 21a4f3c3cb..0000000000 --- a/package/snowball-hdmiservice/Config.in +++ /dev/null @@ -1,14 +0,0 @@ -config BR2_PACKAGE_SNOWBALL_HDMISERVICE - bool "snowball-hdmiservice" - depends on BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_STATIC_LIBS - help - HDMI userspace control daemon - - This package contains the HDMI userspace control daemon for the - snowball board - - http://www.igloocommunity.org - -comment "snowball-hdmiservice needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/snowball-hdmiservice/snowball-hdmiservice.mk b/package/snowball-hdmiservice/snowball-hdmiservice.mk deleted file mode 100644 index 267b5ad9b8..0000000000 --- a/package/snowball-hdmiservice/snowball-hdmiservice.mk +++ /dev/null @@ -1,25 +0,0 @@ -################################################################################ -# -# snowball-hdmiservice -# -################################################################################ - -SNOWBALL_HDMISERVICE_VERSION = f75c99d1c52707240a78b4ba78e41d20d3aa3b08 -SNOWBALL_HDMISERVICE_SITE = $(call github,igloocommunity,hdmiservice,$(SNOWBALL_HDMISERVICE_VERSION)) -SNOWBALL_HDMISERVICE_LICENSE = MIT -SNOWBALL_HDMISERVICE_LICENSE_FILES = debian/copyright -SNOWBALL_HDMISERVICE_INSTALL_STAGING = YES - -define SNOWBALL_HDMISERVICE_BUILD_CMDS - $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS)" -endef - -define SNOWBALL_HDMISERVICE_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS)" DESTDIR=$(STAGING_DIR) install -endef - -define SNOWBALL_HDMISERVICE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS)" DESTDIR=$(TARGET_DIR) install -endef - -$(eval $(generic-package)) diff --git a/package/snowball-init/Config.in b/package/snowball-init/Config.in deleted file mode 100644 index 6c94731203..0000000000 --- a/package/snowball-init/Config.in +++ /dev/null @@ -1,17 +0,0 @@ -config BR2_PACKAGE_SNOWBALL_INIT - bool "snowball-init" - # Runtime dependency, needed by snowball startup script - select BR2_PACKAGE_BLUEZ_UTILS - depends on !BR2_STATIC_LIBS # bluez_utils - depends on BR2_USE_WCHAR # libglib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, alsa-lib, libglib2 - depends on BR2_USE_MMU # dbus - select BR2_PACKAGE_UX500_FIRMWARE - help - Snowball init scripts - - http://www.igloocommunity.org - -comment "snowball-init 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/snowball-init/snowball-init.mk b/package/snowball-init/snowball-init.mk deleted file mode 100644 index f06b03277a..0000000000 --- a/package/snowball-init/snowball-init.mk +++ /dev/null @@ -1,16 +0,0 @@ -################################################################################ -# -# snowball-init -# -################################################################################ - -SNOWBALL_INIT_VERSION = b064be21de25729039e5e54037bbdd2e25cfd5b7 -SNOWBALL_INIT_SITE = $(call github,igloocommunity,snowball-init,$(SNOWBALL_INIT_VERSION)) -SNOWBALL_INIT_LICENSE = BSD-4c -SNOWBALL_INIT_LICENSE_FILES = debian/copyright - -define SNOWBALL_INIT_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 $(@D)/snowball $(TARGET_DIR)/etc/init.d/S50snowball -endef - -$(eval $(generic-package)) diff --git a/package/socat/0003-compat-set-NETDB_INTERNAL.patch b/package/socat/0003-compat-set-NETDB_INTERNAL.patch new file mode 100644 index 0000000000..da31073ba5 --- /dev/null +++ b/package/socat/0003-compat-set-NETDB_INTERNAL.patch @@ -0,0 +1,35 @@ +From e7804d1750652e39c7a5803d360b29b2637a695f Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 28 Aug 2016 21:04:01 +0200 +Subject: [PATCH] compat: set NETDB_INTERNAL + +Musl doesn't provide NETDB_INTERNAL which is defined in resolv/netdb.h +in Glibc [1]. + +Set NETDB_INTERNAL to -1 locally if not already defined. +Based on [2]. + +[1] https://sourceware.org/git/?p=glibc.git;a=blob;f=resolv/netdb.h;h=3aba530932c7a62a4f23e3193e9186da677f552b;hb=fdfc9260b61d3d72541f18104d24c7bcb0ce5ca2#l74 +[2] http://git.alpinelinux.org/cgit/aports/tree/main/socat/netdb-internal.patch?id=5a45173b50892cb634197c30b3506ebff98d3b7d + +Signed-off-by: Romain Naour +--- + compat.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/compat.h b/compat.h +index 19a929f..4f5ee6d 100644 +--- a/compat.h ++++ b/compat.h +@@ -666,6 +666,8 @@ typedef int sig_atomic_t; + + #if !defined(NETDB_INTERNAL) && defined(h_NETDB_INTERNAL) + # define NETDB_INTERNAL h_NETDB_INTERNAL ++#elif !defined(NETDB_INTERNAL) ++# define NETDB_INTERNAL (-1) + #endif + + #ifndef INET_ADDRSTRLEN +-- +2.5.5 + diff --git a/package/socat/0004-xio-tun-remove-if_tun.h-kernel-header.patch b/package/socat/0004-xio-tun-remove-if_tun.h-kernel-header.patch new file mode 100644 index 0000000000..7704123f30 --- /dev/null +++ b/package/socat/0004-xio-tun-remove-if_tun.h-kernel-header.patch @@ -0,0 +1,91 @@ +From 1c141194e3587cc8124e5f4512dc3030e5a104b1 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 28 Aug 2016 22:06:09 +0200 +Subject: [PATCH] xio-tun: remove if_tun.h kernel header + +xio-tun mixes userspace and kernel headers. + +http://wiki.musl-libc.org/wiki/FAQ#Q:_why_am_i_getting_.22error:_redefinition_of_struct_ethhdr.2Ftcphdr.2Fetc.22_.3F + +Signed-off-by: Romain Naour +--- + config.h.in | 3 --- + configure.in | 8 +------- + sysincludes.h | 3 --- + xio-tun.c | 6 ++++++ + 4 files changed, 7 insertions(+), 13 deletions(-) + +diff --git a/config.h.in b/config.h.in +index 9058bf8..ed0962c 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -258,9 +258,6 @@ + /* Define if you have the header file. */ + #undef HAVE_LINUX_ERRQUEUE_H + +-/* Define if you have the header file. */ +-#undef HAVE_LINUX_IF_TUN_H +- + /* Define if you have the header file. */ + #undef HAVE_NETPACKET_PACKET_H + +diff --git a/configure.in b/configure.in +index 1d2e76f..27bb3d5 100644 +--- a/configure.in ++++ b/configure.in +@@ -78,7 +78,7 @@ AC_CHECK_HEADERS(arpa/nameser.h) + + AC_HEADER_RESOLV() + +-AC_CHECK_HEADERS(termios.h linux/if_tun.h) ++AC_CHECK_HEADERS(termios.h) + AC_CHECK_HEADERS(net/if_dl.h) + AC_CHECK_HEADERS(linux/types.h) + AC_CHECK_HEADER(linux/errqueue.h, AC_DEFINE(HAVE_LINUX_ERRQUEUE_H), [], [#include +@@ -680,12 +680,6 @@ AC_ARG_ENABLE(tun, [ --disable-tun disable TUN/TAP support], + esac], + [AC_MSG_RESULT(yes); WITH_TUN=1 ]) + +-# +-if ! test "$ac_cv_header_linux_if_tun_h" = 'yes'; then +- AC_MSG_WARN(include file linux/if_tun.h not found, disabling TUN) +- WITH_TUN= +-fi +-# + if test -n "$WITH_TUN"; then + AC_DEFINE(WITH_TUN) + fi +diff --git a/sysincludes.h b/sysincludes.h +index 98dff77..28067f4 100644 +--- a/sysincludes.h ++++ b/sysincludes.h +@@ -142,9 +142,6 @@ + #if HAVE_NETINET_IF_ETHER_H + #include + #endif +-#if HAVE_LINUX_IF_TUN_H +-#include +-#endif + + #if HAVE_TERMIOS_H && _WITH_TERMIOS + #include +diff --git a/xio-tun.c b/xio-tun.c +index 0628d27..f965a7e 100644 +--- a/xio-tun.c ++++ b/xio-tun.c +@@ -14,6 +14,12 @@ + + #include "xio-tun.h" + ++/* TUNSETIFF flags from if_tun.h kernel header */ ++#define IFF_TUN 0x0001 ++#define IFF_TAP 0x0002 ++#define IFF_NO_PI 0x1000 ++ ++#define TUNSETIFF _IOW('T', 202, int) + + static int xioopen_tun(int argc, const char *argv[], struct opt *opts, int xioflags, xiofile_t *fd, unsigned groups, int dummy1, int dummy2, int dummy3); + +-- +2.5.5 + diff --git a/package/socketcand/0001-Remove-inline-keyword.patch b/package/socketcand/0001-Remove-inline-keyword.patch deleted file mode 100644 index 92e8737ba0..0000000000 --- a/package/socketcand/0001-Remove-inline-keyword.patch +++ /dev/null @@ -1,90 +0,0 @@ -From bdb3cd081a694f8f6924e399d944e32c1578235c Mon Sep 17 00:00:00 2001 -From: Yegor Yefremov -Date: Wed, 22 Jul 2015 11:03:27 +0200 -Subject: [PATCH] Remove inline keyword - -Fixes GCC5.x compilation issues related to C99 inline semantics. - -Signed-off-by: Yegor Yefremov ---- - socketcand.h | 8 ++++---- - state_bcm.c | 2 +- - state_control.c | 2 +- - state_isotp.c | 2 +- - state_raw.c | 2 +- - 5 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/socketcand.h b/socketcand.h -index a287fe2..39eef83 100644 ---- a/socketcand.h -+++ b/socketcand.h -@@ -27,10 +27,10 @@ - - #undef DEBUG_RECEPTION - --inline void state_bcm(); --inline void state_raw(); --inline void state_isotp(); --inline void state_control(); -+void state_bcm(); -+void state_raw(); -+void state_isotp(); -+void state_control(); - - extern int client_socket; - extern char **interface_names; -diff --git a/state_bcm.c b/state_bcm.c -index c63a0a9..0c980fa 100644 ---- a/state_bcm.c -+++ b/state_bcm.c -@@ -28,7 +28,7 @@ int sc = -1; - fd_set readfds; - struct timeval tv; - --inline void state_bcm() { -+void state_bcm() { - int i, ret; - struct sockaddr_can caddr; - socklen_t caddrlen = sizeof(caddr); -diff --git a/state_control.c b/state_control.c -index 5f62b74..baa9df6 100644 ---- a/state_control.c -+++ b/state_control.c -@@ -17,7 +17,7 @@ - #include - #include - --inline void state_control() { -+void state_control() { - char buf[MAXLEN]; - int i, items; - -diff --git a/state_isotp.c b/state_isotp.c -index ae66035..4005f94 100644 ---- a/state_isotp.c -+++ b/state_isotp.c -@@ -24,7 +24,7 @@ - int si = -1; - fd_set readfds; - --inline void state_isotp() { -+void state_isotp() { - int i, items, ret; - - struct sockaddr_can addr; -diff --git a/state_raw.c b/state_raw.c -index 1bd2ece..99111ae 100644 ---- a/state_raw.c -+++ b/state_raw.c -@@ -31,7 +31,7 @@ char ctrlmsg[CMSG_SPACE(sizeof(struct timeval)) + CMSG_SPACE(sizeof(__u32))]; - struct timeval tv; - struct cmsghdr *cmsg; - --inline void state_raw() { -+void state_raw() { - char buf[MAXLEN]; - int i, ret, items; - --- -2.1.4 - diff --git a/package/socketcand/socketcand.hash b/package/socketcand/socketcand.hash new file mode 100644 index 0000000000..6398d6dd83 --- /dev/null +++ b/package/socketcand/socketcand.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 7e9a02fdd61be8780ca3ff8678a37f8574fdcf74b1ab9de79bbb65257daf05db socketcand-df7fb4ff8a4439d7737fe2df3540e1ab7465721a.tar.gz diff --git a/package/socketcand/socketcand.mk b/package/socketcand/socketcand.mk index 10b8b5b411..0cc56ef9f1 100644 --- a/package/socketcand/socketcand.mk +++ b/package/socketcand/socketcand.mk @@ -4,7 +4,7 @@ # ################################################################################ -SOCKETCAND_VERSION = 8339e62a6bf60be571672678fb1de544768cf40e +SOCKETCAND_VERSION = df7fb4ff8a4439d7737fe2df3540e1ab7465721a SOCKETCAND_SITE = $(call github,dschanoeh,socketcand,$(SOCKETCAND_VERSION)) SOCKETCAND_AUTORECONF = YES SOCKETCAND_LICENSE = BSD-3c or GPLv2 diff --git a/package/softether/softether.hash b/package/softether/softether.hash new file mode 100644 index 0000000000..ecc5d25d1a --- /dev/null +++ b/package/softether/softether.hash @@ -0,0 +1,4 @@ +# Locally computed +sha256 4bdcc05fcd163eea735444283264e40b86626d24fddf110aa416f2c8cb82448b softether-1e17c9bcfd7e7b31756aa5389bcbff76c2c9c88a.tar.gz +sha256 fe5ff8f13b42737dfd5eb53f14c55aed714c380f181a1ae112055b04e8c97229 c5e5d7e93c6f3302adf5821c29c4efdb7630e418.patch +sha256 b5a8750426387b9211754b199f7f9f6a013dba6a1cd731c210a205679ffa1d1c 75625af541fd128f51079d0ffe5ef24645b8f421.patch diff --git a/package/softether/softether.mk b/package/softether/softether.mk index 489341e7e7..da7d129723 100644 --- a/package/softether/softether.mk +++ b/package/softether/softether.mk @@ -4,7 +4,7 @@ # ################################################################################ -SOFTETHER_VERSION = 4b65e251f240d0b36c704acd598f4ceb07c41413 +SOFTETHER_VERSION = 1e17c9bcfd7e7b31756aa5389bcbff76c2c9c88a SOFTETHER_SITE = $(call github,SoftEtherVPN,SoftEtherVPN,$(SOFTETHER_VERSION)) SOFTETHER_PATCH = \ https://github.com/dajhorn/SoftEtherVPN/commit/c5e5d7e93c6f3302adf5821c29c4efdb7630e418.patch \ @@ -34,9 +34,9 @@ HOST_SOFTETHER_DEPENDENCIES = host-pkgconf host-openssl host-readline # target build creates the file hamcore.se2 which needs the host variant of # hamcorebuilder, for details see http://www.vpnusers.com/viewtopic.php?p=5426 define HOST_SOFTETHER_BUILD_CMDS - $(MAKE) -C $(@D)/src/Mayaqua - $(MAKE) -C $(@D)/src/Cedar - $(MAKE) -C $(@D)/src/hamcorebuilder + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/src/Mayaqua + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/src/Cedar + $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/src/hamcorebuilder endef define HOST_SOFTETHER_INSTALL_CMDS diff --git a/package/sphinxbase/Config.in b/package/sphinxbase/Config.in new file mode 100644 index 0000000000..00a19f6178 --- /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 0000000000..9fbb6dfd79 --- /dev/null +++ b/package/sphinxbase/sphinxbase.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 06971dbe272d2f73bde0ef7b3538c0c8f8ea885cb171fd6b17a5975bced66e64 sphinxbase-5prealpha.tar.gz diff --git a/package/sphinxbase/sphinxbase.mk b/package/sphinxbase/sphinxbase.mk new file mode 100644 index 0000000000..5c87c89a43 --- /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-2c +# 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/spidev_test/spidev_test.mk b/package/spidev_test/spidev_test.mk index 646372f2f5..52441bb3da 100644 --- a/package/spidev_test/spidev_test.mk +++ b/package/spidev_test/spidev_test.mk @@ -16,6 +16,15 @@ SPIDEV_TEST_SITE = http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.gi SPIDEV_TEST_SOURCE = spidev_test.c?id=$(SPIDEV_TEST_VERSION) SPIDEV_TEST_LICENSE = GPLv2 +# 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 $(BR2_DL_DIR)/$(SPIDEV_TEST_SOURCE) $(@D)/spidev_test.c endef diff --git a/package/sqlcipher/sqlcipher.hash b/package/sqlcipher/sqlcipher.hash new file mode 100644 index 0000000000..f3c7e0bd9c --- /dev/null +++ b/package/sqlcipher/sqlcipher.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 25fa4f4cb38dcf9e52e4d1f46be8fee9c7aaef35b6df96912a216b289e22c2af sqlcipher-v3.2.0.tar.gz diff --git a/package/sqlite/sqlite.hash b/package/sqlite/sqlite.hash index a005cb11a4..bb3707da5e 100644 --- a/package/sqlite/sqlite.hash +++ b/package/sqlite/sqlite.hash @@ -1,4 +1,4 @@ # From http://www.sqlite.org/download.html -sha1 b43c2e7238e54c50b95fbbd85c48792f4f39af8c sqlite-autoconf-3120200.tar.gz +sha1 64ca578ad44a94115b1db0406740e14288f74bb8 sqlite-autoconf-3160200.tar.gz # Calculated based on the hash above -sha256 fd00770c9afd39db555c78400e52f55e8bd6568c78be23561abb472a22d09abb sqlite-autoconf-3120200.tar.gz +sha256 65cc0c3e9366f50c0679c5ccd31432cea894bc4a3e8947dabab88c8693263615 sqlite-autoconf-3160200.tar.gz diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk index 2f9b6ce760..790caaf4df 100644 --- a/package/sqlite/sqlite.mk +++ b/package/sqlite/sqlite.mk @@ -4,9 +4,9 @@ # ################################################################################ -SQLITE_VERSION = 3120200 +SQLITE_VERSION = 3160200 SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz -SQLITE_SITE = http://www.sqlite.org/2016 +SQLITE_SITE = http://www.sqlite.org/2017 SQLITE_LICENSE = Public domain SQLITE_LICENSE_FILES = tea/license.terms SQLITE_INSTALL_STAGING = YES diff --git a/package/squashfs/squashfs.hash b/package/squashfs/squashfs.hash index e308089b99..eb456be364 100644 --- a/package/squashfs/squashfs.hash +++ b/package/squashfs/squashfs.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 0d605512437b1eb800b4736791559295ee5f60177e102e4d4ccd0ee241a5f3f6 squashfs4.3.tar.gz +# Locally computed +sha256 e807202ab4dcfeea214df49d3a728b9a85644a7e7262fc6fcd875a0def99d4ed squashfs-9c1db6d13a51a2e009f0027ef336ce03624eac0d.tar.gz diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk index cdeb9c8f72..4f84872319 100644 --- a/package/squashfs/squashfs.mk +++ b/package/squashfs/squashfs.mk @@ -4,9 +4,9 @@ # ################################################################################ -SQUASHFS_VERSION = 4.3 -SQUASHFS_SOURCE = squashfs$(SQUASHFS_VERSION).tar.gz -SQUASHFS_SITE = http://downloads.sourceforge.net/project/squashfs/squashfs/squashfs$(SQUASHFS_VERSION) +SQUASHFS_VERSION = 3de1687d7432ea9b302c2db9521996f506c140a3 +SQUASHFS_SITE = https://git.kernel.org/pub/scm/fs/squashfs/squashfs-tools.git +SQUASHFS_SITE_METHOD = git SQUASHFS_LICENSE = GPLv2+ SQUASHFS_LICENSE_FILES = COPYING SQUASHFS_MAKE_ARGS = XATTR_SUPPORT=1 diff --git a/package/squeezelite/Config.in b/package/squeezelite/Config.in index 79d2947497..63b9183026 100644 --- a/package/squeezelite/Config.in +++ b/package/squeezelite/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_SQUEEZELITE bool "squeezelite" depends on BR2_USE_WCHAR # flac - depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU # mpg123 depends on !BR2_STATIC_LIBS # dlopen select BR2_PACKAGE_ALSA_LIB @@ -36,7 +36,7 @@ config BR2_PACKAGE_SQUEEZELITE_VISEXPORT endif -comment "squeezelite needs a toolchain w/ wchar, threads, dynamic library" +comment "squeezelite needs a toolchain w/ wchar, NPTL, dynamic library" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ || BR2_STATIC_LIBS diff --git a/package/squid/squid.hash b/package/squid/squid.hash index c8f25b047c..d9b7924de1 100644 --- a/package/squid/squid.hash +++ b/package/squid/squid.hash @@ -1,3 +1,3 @@ -# From http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.19.tar.xz.asc -md5 a1d990284c429a63ee85d80ee5b3b8b9 squid-3.5.19.tar.xz -sha1 809133b751df9fb5bca07f181b3e2f7df392f761 squid-3.5.19.tar.xz +# From http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.24.tar.xz.asc +md5 3fae511e16b6379b61c011914673973d squid-3.5.24.tar.xz +sha1 f203637783301a4b86e554b6dd226de721762ae5 squid-3.5.24.tar.xz diff --git a/package/squid/squid.mk b/package/squid/squid.mk index 847ed303df..cf0378a8d2 100644 --- a/package/squid/squid.mk +++ b/package/squid/squid.mk @@ -5,7 +5,7 @@ ################################################################################ SQUID_VERSION_MAJOR = 3.5 -SQUID_VERSION = $(SQUID_VERSION_MAJOR).19 +SQUID_VERSION = $(SQUID_VERSION_MAJOR).24 SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz SQUID_SITE = http://www.squid-cache.org/Versions/v3/$(SQUID_VERSION_MAJOR) SQUID_LICENSE = GPLv2+ @@ -25,7 +25,7 @@ SQUID_CONF_ENV = \ BUILDCXXFLAGS="$(HOST_CXXFLAGS)" SQUID_CONF_OPTS = \ --enable-async-io=8 \ - --enable-linux-netfilter \ + $(if $(BR2_TOOLCHAIN_USES_MUSL),--disable-linux-netfilter,--enable-linux-netfilter) \ --enable-removal-policies="lru,heap" \ --with-filedescriptors=1024 \ --disable-ident-lookups \ diff --git a/package/sshfs/sshfs.hash b/package/sshfs/sshfs.hash index 77f6a0fa89..09ae5d1cfa 100644 --- a/package/sshfs/sshfs.hash +++ b/package/sshfs/sshfs.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 ce5f9d390934fc88c287dd937a39d15c2b40cbea6967ba24ad93ed90e0027128 sshfs-2.7.tar.gz +# Locally calculated after checking pgp signature +sha256 7f689174d02e6b7e2631306fda4fb8e6b4483102d1bce82b3cdafba33369ad22 sshfs-2.8.tar.gz diff --git a/package/sshfs/sshfs.mk b/package/sshfs/sshfs.mk index 716b362aee..de4c361d9f 100644 --- a/package/sshfs/sshfs.mk +++ b/package/sshfs/sshfs.mk @@ -4,8 +4,8 @@ # ################################################################################ -SSHFS_VERSION = 2.7 -SSHFS_SITE = https://github.com/libfuse/sshfs/releases/download/sshfs-$(SSHFS_VERSION) +SSHFS_VERSION = 2.8 +SSHFS_SITE = https://github.com/libfuse/sshfs/releases/download/sshfs_$(SSHFS_VERSION) SSHFS_LICENSE = GPLv2 SSHFS_LICENSE_FILES = COPYING SSHFS_DEPENDENCIES = \ diff --git a/package/sshpass/sshpass.hash b/package/sshpass/sshpass.hash index 12871e1ca8..f6e0611c2f 100644 --- a/package/sshpass/sshpass.hash +++ b/package/sshpass/sshpass.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 c3f78752a68a0c3f62efb3332cceea0c8a1f04f7cf6b46e00ec0c3000bc8483e sshpass-1.05.tar.gz +sha256 c6324fcee608b99a58f9870157dfa754837f8c48be3df0f5e2f3accf145dee60 sshpass-1.06.tar.gz diff --git a/package/sshpass/sshpass.mk b/package/sshpass/sshpass.mk index 7344ca6921..de46604812 100644 --- a/package/sshpass/sshpass.mk +++ b/package/sshpass/sshpass.mk @@ -4,7 +4,7 @@ # ################################################################################ -SSHPASS_VERSION = 1.05 +SSHPASS_VERSION = 1.06 SSHPASS_SITE = http://downloads.sourceforge.net/project/sshpass/sshpass/$(SSHPASS_VERSION) SSHPASS_LICENSE = GPLv2+ SSHPASS_LICENSE_FILES = COPYING diff --git a/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch b/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch new file mode 100644 index 0000000000..5cb8ce2541 --- /dev/null +++ b/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch @@ -0,0 +1,43 @@ +From 0c39699da9a3d6534b6d26e7c9686ee76d81b64a Mon Sep 17 00:00:00 2001 +From: David Bachelart +Date: Thu, 26 Jan 2017 10:07:47 +0100 +Subject: [PATCH] fix version extraction when building in a larger git tree + +sslh uses host git to extract its own version number. In buildroot, this +is an issue since extracted information is conflicting with buildroot git +status if we use git as VCS for buildroot. + +Since these git calls are legitimate only if git is used for the sslh +subtree only, this patch adds a check : a .git directory has to exist at +the root of the project to enable git-extracted version string. + +Signed-off-by: David Bachelart +--- + genver.sh | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/genver.sh b/genver.sh +index 79fd0a0..051e57b 100755 +--- a/genver.sh ++++ b/genver.sh +@@ -7,7 +7,7 @@ else + QUIET=0 + fi + +-if ! `(git status | grep -q "On branch") 2> /dev/null`; then ++if [ ! -d .git ] || ! `(git status | grep -q "On branch") 2> /dev/null`; then + # If we don't have git, we can't work out what + # version this is. It must have been downloaded as a + # zip file. +@@ -25,7 +25,7 @@ if ! `(git status | grep -q "On branch") 2> /dev/null`; then + fi + fi + +-if head=`git rev-parse --verify HEAD 2>/dev/null`; then ++if [ -d .git ] && head=`git rev-parse --verify HEAD 2>/dev/null`; then + # generate the version info based on the tag + release=`(git describe --tags || git --describe || git describe --all --long) \ + 2>/dev/null | tr -d '\n'` +-- +2.1.4 + diff --git a/package/sslh/Config.in b/package/sslh/Config.in new file mode 100644 index 0000000000..21bd65f165 --- /dev/null +++ b/package/sslh/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SSLH + bool "sslh" + depends on BR2_INSTALL_LIBSTDCPP + # uses fork() + depends on BR2_USE_MMU + select BR2_PACKAGE_LIBCONFIG + help + Applicative protocol multiplexer + + http://www.rutschle.net/tech/sslh.shtml + +comment "sslh needs a toolchain w/ C++" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/sslh/S35sslh b/package/sslh/S35sslh new file mode 100644 index 0000000000..4a613f8400 --- /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 0000000000..757005dd38 --- /dev/null +++ b/package/sslh/sslh.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1601a5b377dcafc6b47d2fbb8d4d25cceb83053a4adcc5874d501a2d5a7745ad sslh-v1.18.tar.gz diff --git a/package/sslh/sslh.mk b/package/sslh/sslh.mk new file mode 100644 index 0000000000..31774441ca --- /dev/null +++ b/package/sslh/sslh.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# sslh +# +################################################################################ + +SSLH_VERSION = v1.18 +SSLH_SITE = http://www.rutschle.net/tech/sslh +SSLH_LICENSE = GPLv2+ +SSLH_LICENSE_FILES = COPYING + +SSLH_DEPENDENCIES = libconfig + +define SSLH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define SSLH_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -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/sstrip/Config.in b/package/sstrip/Config.in deleted file mode 100644 index 12a5941c54..0000000000 --- a/package/sstrip/Config.in +++ /dev/null @@ -1,7 +0,0 @@ -config BR2_PACKAGE_SSTRIP - bool "sstrip" - help - Small utility that removes a few bytes from an executable that - strip leaves behind. - - http://www.muppetlabs.com/~breadbox/software/elfkickers.html diff --git a/package/sstrip/sstrip.mk b/package/sstrip/sstrip.mk deleted file mode 100644 index fe57b3c19b..0000000000 --- a/package/sstrip/sstrip.mk +++ /dev/null @@ -1,32 +0,0 @@ -################################################################################ -# -# sstrip -# -################################################################################ - -SSTRIP_SITE = svn://svn.openwrt.org/openwrt/trunk/tools/sstrip -SSTRIP_VERSION = 20154 -HOST_SSTRIP_BINARY = $(GNU_TARGET_NAME)-sstrip - -define SSTRIP_BUILD_CMDS - cd $(@D) ; \ - $(TARGET_CC) $(TARGET_CFLAGS) -include endian.h -include byteswap.h \ - -o sstrip src/sstrip.c -endef - -define SSTRIP_INSTALL_TARGET_CMDS - $(INSTALL) -D $(@D)/sstrip $(TARGET_DIR)/usr/bin/sstrip -endef - -define HOST_SSTRIP_BUILD_CMDS - cd $(@D) ; \ - $(HOSTCC) $(HOST_CFLAGS) -include endian.h -include byteswap.h \ - -o sstrip src/sstrip.c -endef - -define HOST_SSTRIP_INSTALL_CMDS - $(INSTALL) -D $(@D)/sstrip $(HOST_DIR)/usr/bin/$(HOST_SSTRIP_BINARY) -endef - -$(eval $(generic-package)) -$(eval $(host-generic-package)) diff --git a/package/start-stop-daemon/Config.in b/package/start-stop-daemon/Config.in index 7d8eb34a82..8cf44f7805 100644 --- a/package/start-stop-daemon/Config.in +++ b/package/start-stop-daemon/Config.in @@ -1,6 +1,7 @@ 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. diff --git a/package/start-stop-daemon/start-stop-daemon.hash b/package/start-stop-daemon/start-stop-daemon.hash index a05b9a0664..7ce6cc3663 100644 --- a/package/start-stop-daemon/start-stop-daemon.hash +++ b/package/start-stop-daemon/start-stop-daemon.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.18.4.dsc -sha256 fe89243868888ce715bf45861f26264f767d4e4dbd0d6f1a26ce60bbbbf106da dpkg_1.18.4.tar.xz +# From http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.18.10.dsc +sha256 025524da41ba18b183ff11e388eb8686f7cc58ee835ed7d48bd159c46a8b6dc5 dpkg_1.18.10.tar.xz diff --git a/package/start-stop-daemon/start-stop-daemon.mk b/package/start-stop-daemon/start-stop-daemon.mk index e0ef6c992c..5aac541707 100644 --- a/package/start-stop-daemon/start-stop-daemon.mk +++ b/package/start-stop-daemon/start-stop-daemon.mk @@ -7,9 +7,9 @@ # 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.4 +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/20151225T154922Z/pool/main/d/dpkg +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 \ diff --git a/package/statserial/statserial.mk b/package/statserial/statserial.mk index f0e15bc451..22b468ebb8 100644 --- a/package/statserial/statserial.mk +++ b/package/statserial/statserial.mk @@ -11,7 +11,7 @@ STATSERIAL_LICENSE = GPLv2+ STATSERIAL_LICENSE_FILES = COPYING define STATSERIAL_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) endef define STATSERIAL_INSTALL_TARGET_CMDS diff --git a/package/stella/0001-Add-cross-compilation-support.patch b/package/stella/0001-Add-cross-compilation-support.patch new file mode 100644 index 0000000000..3266d31d26 --- /dev/null +++ b/package/stella/0001-Add-cross-compilation-support.patch @@ -0,0 +1,29 @@ +From fba2627bebc7d497f64827a0517316e9b5c64c0a Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Tue, 26 Jul 2016 13:24:00 -0300 +Subject: [PATCH 1/2] Add cross-compilation support + +Signed-off-by: Sergio Prado +--- + configure | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 0d90a4f0acde..a4afea8e1880 100755 +--- a/configure ++++ b/configure +@@ -502,8 +502,9 @@ if test -n "$_host"; then + _host_os=win32 + ;; + *) +- echo "Cross-compiling to unknown target, please add your target to configure." +- exit 1 ++ echo "Cross-compiling to $_host target" ++ DEFINES="$DEFINES -DUNIX" ++ _host_os=unix + ;; + esac + +-- +1.9.1 + diff --git a/package/stella/0002-Do-not-strip-when-installing.patch b/package/stella/0002-Do-not-strip-when-installing.patch new file mode 100644 index 0000000000..cba4b088fd --- /dev/null +++ b/package/stella/0002-Do-not-strip-when-installing.patch @@ -0,0 +1,26 @@ +From a86140353cb2e162d88da9caa1716915be2f6893 Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Tue, 26 Jul 2016 13:25:12 -0300 +Subject: [PATCH 2/2] Do not strip when installing + +Signed-off-by: Sergio Prado +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 6dd0129587b3..b1aea5eed4a1 100644 +--- a/Makefile ++++ b/Makefile +@@ -172,7 +172,7 @@ config.mak: $(srcdir)/configure + + install: all + $(INSTALL) -d "$(DESTDIR)$(BINDIR)" +- $(INSTALL) -c -s -m 755 "$(srcdir)/stella$(EXEEXT)" "$(DESTDIR)$(BINDIR)/stella$(EXEEXT)" ++ $(INSTALL) -c -m 755 "$(srcdir)/stella$(EXEEXT)" "$(DESTDIR)$(BINDIR)/stella$(EXEEXT)" + $(INSTALL) -d "$(DESTDIR)$(DOCDIR)" + $(INSTALL) -c -m 644 "$(srcdir)/Announce.txt" "$(srcdir)/Changes.txt" "$(srcdir)/Copyright.txt" "$(srcdir)/License.txt" "$(srcdir)/README-SDL.txt" "$(srcdir)/Readme.txt" "$(srcdir)/Todo.txt" "$(srcdir)/docs/index.html" "$(srcdir)/docs/debugger.html" "$(DESTDIR)$(DOCDIR)/" + $(INSTALL) -d "$(DESTDIR)$(DOCDIR)/graphics" +-- +1.9.1 + diff --git a/package/stella/0003-configure-Add-CXXFLAGS-for-test-compilations.patch b/package/stella/0003-configure-Add-CXXFLAGS-for-test-compilations.patch new file mode 100644 index 0000000000..c548d0825f --- /dev/null +++ b/package/stella/0003-configure-Add-CXXFLAGS-for-test-compilations.patch @@ -0,0 +1,44 @@ +From 28f0c20302e5c64712899848cae3d0a48a9dc952 Mon Sep 17 00:00:00 2001 +From: Vlad Zakharov +Date: Wed, 10 Aug 2016 18:02:59 +0300 +Subject: [PATCH] configure: Add $CXXFLAGS for test compilations + +Why we are passing only linker flags when compiling test code? +Loosing compiler flags leads to errors. + +Signed-off-by: Vlad Zakharov +--- + configure | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/configure b/configure +index 0d90a4f..618fe78 100755 +--- a/configure ++++ b/configure +@@ -63,9 +63,9 @@ cc_check() { + echo >> "$TMPLOG" + cat "$TMPC" >> "$TMPLOG" + echo >> "$TMPLOG" +- echo "$CXX $TMPC $LDFLAGS -o $TMPO$EXEEXT $@" >> "$TMPLOG" ++ echo "$CXX $TMPC $CXXFLAGS $LDFLAGS -o $TMPO$EXEEXT $@" >> "$TMPLOG" + rm -f "$TMPO$EXEEXT" +- ( $CXX "$TMPC" $LDFLAGS -o "$TMPO$EXEEXT" "$@" ) >> "$TMPLOG" 2>&1 ++ ( $CXX "$TMPC" $CXXFLAGS $LDFLAGS -o "$TMPO$EXEEXT" "$@" ) >> "$TMPLOG" 2>&1 + TMP="$?" + echo >> "$TMPLOG" + return "$TMP" +@@ -107,9 +107,9 @@ EOF + + if test -n "$_host"; then + # In cross-compiling mode, we cannot run the result +- eval "$1 $LDFLAGS -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp ++ eval "$1 $CXXFLAGS $LDFLAGS -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp + else +- eval "$1 $LDFLAGS -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp ++ eval "$1 $CXXFLAGS $LDFLAGS -o tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp 2> /dev/null" && eval "./tmp_cxx_compiler 2> /dev/null" && rm -f tmp_cxx_compiler$EXEEXT tmp_cxx_compiler.cpp + fi + } + +-- +2.5.5 + diff --git a/package/stella/0004-Use-gnu-11-standard-to-prevent-errors-on-PPC.patch b/package/stella/0004-Use-gnu-11-standard-to-prevent-errors-on-PPC.patch new file mode 100644 index 0000000000..76d12a2cdd --- /dev/null +++ b/package/stella/0004-Use-gnu-11-standard-to-prevent-errors-on-PPC.patch @@ -0,0 +1,35 @@ +From 6946a491cae42b971aad3bc5d822e0e549eca8bd Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Thu, 1 Dec 2016 15:20:33 -0200 +Subject: [PATCH] Use gnu++11 standard to prevent errors on PPC. + +PPC altivec vectorization triggers a bug when compiling with -std=c++11 +because "bool" is redefined in altivec.h. + +Acording to a bug report in GCC, "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 let's use gnu++11 standard. + +Signed-off-by: Sergio Prado +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 6dd0129587b3..6ed50ea4c335 100644 +--- a/Makefile ++++ b/Makefile +@@ -51,7 +51,7 @@ else + endif + CXXFLAGS+= -Wall -Wextra -Wno-unused-parameter -Wno-ignored-qualifiers + ifdef HAVE_GCC +- CXXFLAGS+= -Wno-multichar -Wunused -fno-rtti -Woverloaded-virtual -Wnon-virtual-dtor -std=c++11 ++ CXXFLAGS+= -Wno-multichar -Wunused -fno-rtti -Woverloaded-virtual -Wnon-virtual-dtor -std=gnu++11 + endif + + ifdef PROFILE +-- +1.9.1 + diff --git a/package/stella/Config.in b/package/stella/Config.in new file mode 100644 index 0000000000..55f177f753 --- /dev/null +++ b/package/stella/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_STELLA + bool "stella" + select BR2_PACKAGE_SDL2 + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_ZLIB + depends on !BR2_STATIC_LIBS # sdl2 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + help + Stella is a multi-platform Atari 2600 VCS emulator. + + http://stella.sourceforge.net/ + +comment "stella needs a toolchain w/ dynamic library, C++, gcc >= 4.8" + depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/stella/stella.hash b/package/stella/stella.hash new file mode 100644 index 0000000000..71defd28d0 --- /dev/null +++ b/package/stella/stella.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 b2727a0e2d3b112d35dcb89b4bdc789e2c7f15e9d9c7054a69a2f67facd7416e stella-4.7.2-src.tar.xz diff --git a/package/stella/stella.mk b/package/stella/stella.mk new file mode 100644 index 0000000000..2e9d57b8c1 --- /dev/null +++ b/package/stella/stella.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# stella +# +################################################################################ + +STELLA_VERSION = 4.7.2 +STELLA_SOURCE = stella-$(STELLA_VERSION)-src.tar.xz +STELLA_SITE = http://downloads.sourceforge.net/stella +STELLA_LICENSE = GPLv2+ +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/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch b/package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch deleted file mode 100644 index 0d81b59081..0000000000 --- a/package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch +++ /dev/null @@ -1,104 +0,0 @@ -From d83bcfa9a2977c037c638ae09e561f554ab19681 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Sat, 26 Dec 2015 00:13:36 +0300 -Subject: [PATCH] arc, metag, nios2, or1k, tile: fix build - -Fix build regression introduced by commit -34683e3926d8c2daa368afb805da422ee7043396. - -* linux/32/syscallent.h: Add sys_ prefix to ARCH_mmap and mmap. -* linux/arc/syscallent.h: Add sys_ prefix to ARCH_mmap and mmap_pgoff. -* linux/nios2/syscallent.h: Likewise. -* linux/or1k/syscallent.h: Likewise. -* linux/tile/syscallent1.h: Add sys_ prefix to ARCH_mmap and sys_mmap_4koff. -* pathtrace.c (pathtrace_match): Handle SEN_ARCH_mmap. - -This is a back-port of upstream commit -http://sourceforge.net/p/strace/code/ci/dd1a80c8d213eed95fe55b7ebcb07ee165dd8e4b/ - -It should be removed upon the next bump of strace version. - -Signed-off-by: Alexey Brodkin ---- - linux/32/syscallent.h | 6 +++--- - linux/arc/syscallent.h | 2 +- - linux/nios2/syscallent.h | 2 +- - linux/or1k/syscallent.h | 2 +- - linux/tile/syscallent1.h | 2 +- - pathtrace.c | 1 + - 6 files changed, 8 insertions(+), 7 deletions(-) - -diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h -index 5f997e7..e6f895c 100644 ---- a/linux/32/syscallent.h -+++ b/linux/32/syscallent.h -@@ -1,5 +1,5 @@ --#ifndef ARCH_mmap --# define ARCH_mmap mmap -+#ifndef sys_ARCH_mmap -+# define sys_ARCH_mmap sys_mmap - #endif - [ 0] = { 2, 0, SEN(io_setup), "io_setup" }, - [ 1] = { 1, 0, SEN(io_destroy), "io_destroy" }, -@@ -276,5 +276,5 @@ - [283] = { 2, 0, SEN(membarrier), "membarrier", }, - [284] = { 3, TM, SEN(mlock2), "mlock2" }, - --#undef ARCH_mmap -+#undef sys_ARCH_mmap - #undef ARCH_WANT_SYNC_FILE_RANGE2 -diff --git a/linux/arc/syscallent.h b/linux/arc/syscallent.h -index 5847dc4..1100008 100644 ---- a/linux/arc/syscallent.h -+++ b/linux/arc/syscallent.h -@@ -1,4 +1,4 @@ --#define ARCH_mmap mmap_pgoff -+#define sys_ARCH_mmap sys_mmap_pgoff - #include "32/syscallent.h" - [244] = { 3, 0, SEN(printargs), "arc_cacheflush"}, - [245] = { 1, 0, SEN(printargs), "arc_settls" }, -diff --git a/linux/nios2/syscallent.h b/linux/nios2/syscallent.h -index 8a4b70e..01efe3a 100644 ---- a/linux/nios2/syscallent.h -+++ b/linux/nios2/syscallent.h -@@ -1,4 +1,4 @@ --#define ARCH_mmap mmap_pgoff -+#define sys_ARCH_mmap sys_mmap_pgoff - #include "32/syscallent.h" - [244] = {4, 0, SEN(cacheflush), "cacheflush"}, - [245 ... 259] = { }, -diff --git a/linux/or1k/syscallent.h b/linux/or1k/syscallent.h -index ed84b3b..351fe25 100644 ---- a/linux/or1k/syscallent.h -+++ b/linux/or1k/syscallent.h -@@ -1,4 +1,4 @@ --#define ARCH_mmap mmap_pgoff -+#define sys_ARCH_mmap sys_mmap_pgoff - #include "32/syscallent.h" - [244] = { 3, NF, SEN(or1k_atomic), "or1k_atomic" }, - [245 ... 259] = { }, -diff --git a/linux/tile/syscallent1.h b/linux/tile/syscallent1.h -index c86f059..28dbab4 100644 ---- a/linux/tile/syscallent1.h -+++ b/linux/tile/syscallent1.h -@@ -1,4 +1,4 @@ --#define ARCH_mmap mmap_4koff -+#define sys_ARCH_mmap sys_mmap_4koff - #define ARCH_WANT_SYNC_FILE_RANGE2 1 - #include "32/syscallent.h" - [244] = { 1, 0, SEN(printargs), "cmpxchg_badaddr" }, -diff --git a/pathtrace.c b/pathtrace.c -index d530ec2..e72cdf7 100644 ---- a/pathtrace.c -+++ b/pathtrace.c -@@ -216,6 +216,7 @@ pathtrace_match(struct tcb *tcp) - case SEN_mmap: - case SEN_mmap_4koff: - case SEN_mmap_pgoff: -+ case SEN_ARCH_mmap: - /* x, x, x, x, fd */ - return fdmatch(tcp, tcp->u_arg[4]); - --- -2.4.3 - diff --git a/package/strace/strace.hash b/package/strace/strace.hash index f47d51b059..c7695ff391 100644 --- a/package/strace/strace.hash +++ b/package/strace/strace.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/strace/files/strace/4.11/ -md5 a15d2555a7febb56d00c6e1a51c655dc strace-4.11.tar.xz -sha1 8fd717dc3c51b69fde51ce0bdb066404a678363c strace-4.11.tar.xz +# From https://sourceforge.net/projects/strace/files/strace/4.15/ +md5 1ff96209fec19914c920608ed0791864 strace-4.15.tar.xz +sha1 18fbaeb07d089023764f618f179091b663a0d21e strace-4.15.tar.xz diff --git a/package/strace/strace.mk b/package/strace/strace.mk index e25428e653..b8de81afd2 100644 --- a/package/strace/strace.mk +++ b/package/strace/strace.mk @@ -4,15 +4,19 @@ # ################################################################################ -STRACE_VERSION = 4.11 +STRACE_VERSION = 4.15 STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz STRACE_SITE = http://downloads.sourceforge.net/project/strace/strace/$(STRACE_VERSION) STRACE_LICENSE = BSD-3c STRACE_LICENSE_FILES = COPYING -STRACE_CONF_ENV = \ - ac_cv_header_linux_if_packet_h=yes \ - ac_cv_header_linux_netlink_h=yes +# strace bundle some kernel headers to build libmpers, this mixes userspace +# headers and kernel headers which break the build with musl. +# The stddef.h from gcc is used instead of the one from musl. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +STRACE_CONF_OPTS += st_cv_m32_mpers=no \ + st_cv_mx32_mpers=no +endif define STRACE_REMOVE_STRACE_GRAPH rm -f $(TARGET_DIR)/usr/bin/strace-graph diff --git a/package/stress-ng/stress-ng.hash b/package/stress-ng/stress-ng.hash index d09edc0e2f..e735439a7e 100644 --- a/package/stress-ng/stress-ng.hash +++ b/package/stress-ng/stress-ng.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 7af9759a37902ebf401f92fedeada0b82bcd1e3f4e9e10130177344f143470eb stress-ng-0.06.02.tar.gz +sha256 0e1d7733b35f594f7461dedbf836bd4966d0611da4cd4e85cde4804d2a425e6d stress-ng-0.06.15.tar.gz diff --git a/package/stress-ng/stress-ng.mk b/package/stress-ng/stress-ng.mk index 6015a1e9e9..b4d4699383 100644 --- a/package/stress-ng/stress-ng.mk +++ b/package/stress-ng/stress-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -STRESS_NG_VERSION = 0.06.02 +STRESS_NG_VERSION = 0.06.15 STRESS_NG_SITE = http://kernel.ubuntu.com/~cking/tarballs/stress-ng STRESS_NG_LICENSE = GPLv2+ STRESS_NG_LICENSE_FILES = COPYING @@ -15,8 +15,11 @@ 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 - $(TARGET_CONFIGURE_OPTS) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install + $(INSTALL) -m 0755 -D $(@D)/stress-ng $(TARGET_DIR)/usr/bin/stress-ng endef $(eval $(generic-package)) diff --git a/package/strongswan/Config.in b/package/strongswan/Config.in index b49435c8c7..0a95ac021e 100644 --- a/package/strongswan/Config.in +++ b/package/strongswan/Config.in @@ -35,6 +35,7 @@ config BR2_PACKAGE_STRONGSWAN_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 diff --git a/package/stunnel/stunnel.hash b/package/stunnel/stunnel.hash index 3f0d6e5364..c4e70a7f9a 100644 --- a/package/stunnel/stunnel.hash +++ b/package/stunnel/stunnel.hash @@ -1,2 +1,2 @@ -# From http://www.stunnel.org/pipermail/stunnel-announce/2016-March/000120.html -sha256 a746b71ab3dc6c23eacb0daf7342467870e43ac933430905eb1b1d050bbae0b7 stunnel-5.31.tar.gz +# From http://www.stunnel.org/pipermail/stunnel-announce/2016-September/000125.html +sha256 eb8952fcfdfcdf5056a1f1a78e1ec5014b819c5f5f7599b924dc4490ffe4b5ea stunnel-5.36.tar.gz diff --git a/package/stunnel/stunnel.mk b/package/stunnel/stunnel.mk index a222a1c8e8..f98e7b59eb 100644 --- a/package/stunnel/stunnel.mk +++ b/package/stunnel/stunnel.mk @@ -5,13 +5,14 @@ ################################################################################ STUNNEL_VERSION_MAJOR = 5 -STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).31 +STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).36 STUNNEL_SITE = http://www.usenix.org.uk/mirrors/stunnel/archive/$(STUNNEL_VERSION_MAJOR).x STUNNEL_DEPENDENCIES = 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) + ax_cv_check_cflags___fstack_protector=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) \ + LIBS=$(if $(BR2_STATIC_LIBS),-lz) STUNNEL_LICENSE = GPLv2+ STUNNEL_LICENSE_FILES = COPYING COPYRIGHT.GPL diff --git a/package/subversion/subversion.hash b/package/subversion/subversion.hash index 926bbc5579..1a85961fe1 100644 --- a/package/subversion/subversion.hash +++ b/package/subversion/subversion.hash @@ -1,2 +1,5 @@ # From http://subversion.apache.org/download.cgi#recommended-release -sha1 bc7d51fdda43bea01e1272dfe9d23d0a9d6cd11c subversion-1.9.4.tar.bz2 +sha1 8bd6a44a1aed30c4c6b6b068488dafb44eaa6adf subversion-1.9.5.tar.bz2 +# Locally calculated after checking PGP signature +# https://www.apache.org/dist/subversion/subversion-1.9.5.tar.bz2.asc +sha256 8a4fc68aff1d18dcb4dd9e460648d24d9e98657fbed496c582929c6b3ce555e5 subversion-1.9.5.tar.bz2 diff --git a/package/subversion/subversion.mk b/package/subversion/subversion.mk index 720a1a10e9..05569c11a7 100644 --- a/package/subversion/subversion.mk +++ b/package/subversion/subversion.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUBVERSION_VERSION = 1.9.4 +SUBVERSION_VERSION = 1.9.5 SUBVERSION_SOURCE = subversion-$(SUBVERSION_VERSION).tar.bz2 SUBVERSION_SITE = http://mirror.catn.com/pub/apache/subversion SUBVERSION_LICENSE = Apache-2.0 diff --git a/package/sudo/sudo.hash b/package/sudo/sudo.hash index 4c2431f13d..82e1ad66fe 100644 --- a/package/sudo/sudo.hash +++ b/package/sudo/sudo.hash @@ -1,2 +1,2 @@ # From: http://www.sudo.ws/download.html -sha256 4316381708324da8b6cb151f655c1a11855207c7c02244d8ffdea5104d7cc308 sudo-1.8.15.tar.gz +sha256 237e18e67c2ad59ecacfa4b7707198b09fcf84914621585a9bc670dcc31a52e0 sudo-1.8.19p2.tar.gz diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk index f28312ace1..b1a6dd35fc 100644 --- a/package/sudo/sudo.mk +++ b/package/sudo/sudo.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUDO_VERSION = 1.8.15 +SUDO_VERSION = 1.8.19p2 SUDO_SITE = http://www.sudo.ws/sudo/dist SUDO_LICENSE = ISC BSD-3c SUDO_LICENSE_FILES = doc/LICENSE @@ -30,6 +30,20 @@ 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 +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) \ diff --git a/package/sunxi-boards/sunxi-boards.hash b/package/sunxi-boards/sunxi-boards.hash new file mode 100644 index 0000000000..755682402d --- /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-cedarx/Config.in b/package/sunxi-cedarx/Config.in index fc6e5298c3..43fcce58c2 100644 --- a/package/sunxi-cedarx/Config.in +++ b/package/sunxi-cedarx/Config.in @@ -11,6 +11,6 @@ config BR2_PACKAGE_SUNXI_CEDARX http://github.com/linux-sunxi/cedarx-libs http://linux-sunxi.org/CedarX -comment "sunxi-cedarx needs an (e)glibc toolchain" +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 0000000000..048b868982 --- /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-mali-prop/Config.in b/package/sunxi-mali-prop/Config.in deleted file mode 100644 index b9efb4e351..0000000000 --- a/package/sunxi-mali-prop/Config.in +++ /dev/null @@ -1,4 +0,0 @@ -# Sunxi-mali-prop is a git submodule of sunxi-mali. To use this package -# select the sunxi-mali option. -config BR2_PACKAGE_SUNXI_MALI_PROP - bool diff --git a/package/sunxi-mali-prop/sunxi-mali-prop.mk b/package/sunxi-mali-prop/sunxi-mali-prop.mk deleted file mode 100644 index b828dc275d..0000000000 --- a/package/sunxi-mali-prop/sunxi-mali-prop.mk +++ /dev/null @@ -1,10 +0,0 @@ -################################################################################ -# -# sunxi-mali-prop -# -################################################################################ - -SUNXI_MALI_PROP_VERSION = 1c5063f43cdc9de341c0d63b2e3921cab86c7742 -SUNXI_MALI_PROP_SITE = $(call github,linux-sunxi,sunxi-mali-proprietary,$(SUNXI_MALI_PROP_VERSION)) - -$(eval $(generic-package)) diff --git a/package/sunxi-mali/Config.in b/package/sunxi-mali/Config.in index f0c1b35898..5e3ae4cd01 100644 --- a/package/sunxi-mali/Config.in +++ b/package/sunxi-mali/Config.in @@ -3,9 +3,6 @@ config BR2_PACKAGE_SUNXI_MALI select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_LIBUMP - # The egl/gles mali libraries are provided as a git submodule of the - # sunxi-mali repo and are downloaded by the sunxi-mali-prop package. - select BR2_PACKAGE_SUNXI_MALI_PROP depends on BR2_TOOLCHAIN_USES_GLIBC depends on BR2_arm help @@ -64,6 +61,6 @@ endchoice endif -comment "sunxi-mali needs an (e)glibc toolchain" +comment "sunxi-mali needs a glibc toolchain" depends on BR2_arm depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/sunxi-mali/sunxi-mali.mk b/package/sunxi-mali/sunxi-mali.mk index 3e5443b41b..c808db6cf6 100644 --- a/package/sunxi-mali/sunxi-mali.mk +++ b/package/sunxi-mali/sunxi-mali.mk @@ -4,11 +4,16 @@ # ################################################################################ -SUNXI_MALI_VERSION = d343311efc8db166d8371b28494f0f27b6a58724 -SUNXI_MALI_SITE = $(call github,linux-sunxi,sunxi-mali,$(SUNXI_MALI_VERSION)) +# last sha1 character dropped to ensure unique filename +SUNXI_MALI_VERSION = d343311efc8db166d8371b28494f0f27b6a5872 +SUNXI_MALI_SITE = https://github.com/linux-sunxi/sunxi-mali +SUNXI_MALI_SITE_METHOD = git + +# Get the sunxi-mali-proprietary libraries +SUNXI_MALI_GIT_SUBMODULES = YES SUNXI_MALI_INSTALL_STAGING = YES -SUNXI_MALI_DEPENDENCIES = libump sunxi-mali-prop +SUNXI_MALI_DEPENDENCIES = libump SUNXI_MALI_PROVIDES = libegl libgles # The options below must be provided in the environment. Providing these @@ -41,13 +46,6 @@ ifeq ($(BR2_PACKAGE_SUNXI_MALI_R3P1),y) SUNXI_MALI_MAKE_OPTS += VERSION=r3p1 endif -define SUNXI_MALI_GIT_SUBMODULE_FIXUP - rm -rf $(@D)/lib/mali - cp -rf $(SUNXI_MALI_PROP_SRCDIR) $(@D)/lib/mali -endef - -SUNXI_MALI_PRE_CONFIGURE_HOOKS += SUNXI_MALI_GIT_SUBMODULE_FIXUP - define SUNXI_MALI_BUILD_CMDS $(SUNXI_MALI_MAKE_ENV) $(MAKE) -C $(@D) $(SUNXI_MALI_MAKE_OPTS) all $(TARGET_CC) $(TARGET_CFLAGS) -o $(@D)/version/version \ diff --git a/package/sunxi-tools/sunxi-tools.hash b/package/sunxi-tools/sunxi-tools.hash index c0499cd0ac..efb2b54d9c 100644 --- a/package/sunxi-tools/sunxi-tools.hash +++ b/package/sunxi-tools/sunxi-tools.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 2aa0afc21476ee9b03acff20a19f32c522106e61bcbfa1a9463168fe90a85fc5 sunxi-tools-v1.3.tar.gz +sha256 da5d762608517b4b2e9bd392bd9a63afae3973d9c8264cbcfb757ddac8120d1b sunxi-tools-v1.4.1.tar.gz diff --git a/package/sunxi-tools/sunxi-tools.mk b/package/sunxi-tools/sunxi-tools.mk index 4c497c7ba4..1a58aff1be 100644 --- a/package/sunxi-tools/sunxi-tools.mk +++ b/package/sunxi-tools/sunxi-tools.mk @@ -4,27 +4,27 @@ # ################################################################################ -SUNXI_TOOLS_VERSION = v1.3 +SUNXI_TOOLS_VERSION = v1.4.1 SUNXI_TOOLS_SITE = $(call github,linux-sunxi,sunxi-tools,$(SUNXI_TOOLS_VERSION)) SUNXI_TOOLS_LICENSE = GPLv2+ -SUNXI_TOOLS_LICENSE_FILES = COPYING +SUNXI_TOOLS_LICENSE_FILES = LICENSE.md HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb host-pkgconf FEX2BIN = $(HOST_DIR)/usr/bin/fex2bin define HOST_SUNXI_TOOLS_BUILD_CMDS - $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ - CFLAGS="$(HOST_CFLAGS) -std=c99 -D_POSIX_C_SOURCE=200112L -Iinclude/" \ + $(HOST_MAKE_ENV) $(MAKE) CC="$(HOSTCC)" PREFIX=$(HOST_DIR)/usr \ + EXTRA_CFLAGS="$(HOST_CFLAGS)" LDFLAGS="$(HOST_LDFLAGS)" \ -C $(@D) tools endef define HOST_SUNXI_TOOLS_INSTALL_CMDS - $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ + $(HOST_MAKE_ENV) $(MAKE) PREFIX=$(HOST_DIR)/usr \ -C $(@D) install-tools endef define SUNXI_TOOLS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) PREFIX=/usr \ - CFLAGS="$(TARGET_CFLAGS) -std=c99 -D_POSIX_C_SOURCE=200112L -Iinclude/" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" PREFIX=/usr \ + EXTRA_CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" \ -C $(@D) sunxi-nand-part endef diff --git a/package/supertuxkart/0001-irrlicht-Get-rid-of-unprefixed-cflags.patch b/package/supertuxkart/0001-irrlicht-Get-rid-of-unprefixed-cflags.patch new file mode 100644 index 0000000000..351b5875a3 --- /dev/null +++ b/package/supertuxkart/0001-irrlicht-Get-rid-of-unprefixed-cflags.patch @@ -0,0 +1,34 @@ +From 73bed675202cf1f1c748540a4363d7d99e161dca Mon Sep 17 00:00:00 2001 +From: Ezequiel Garcia +Date: Thu, 9 Jun 2016 18:58:51 -0300 +Subject: [PATCH 1/2] irrlicht: Get rid of unprefixed cflags + +Cross-building requires proper include paths. This commit +removes the unprefixed -I/usr/X11R6/include in irrlicht cflags. + +Signed-off-by: Ezequiel Garcia +--- +Fix sent upstream as part of pull: +https://github.com/supertuxkart/stk-code/pull/2554 + + lib/irrlicht/CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/irrlicht/CMakeLists.txt b/lib/irrlicht/CMakeLists.txt +index 46d54008c291..5f4975e3a6f9 100644 +--- a/lib/irrlicht/CMakeLists.txt ++++ b/lib/irrlicht/CMakeLists.txt +@@ -25,8 +25,8 @@ elseif(MINGW) + add_definitions(-D_IRR_STATIC_LIB_) + add_definitions(-D_CRT_SECURE_NO_WARNINGS) # Shut up about unsafe stuff + else() +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include") +- set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing") ++ set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing") + if(CMAKE_COMPILER_IS_GNUCC) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fexpensive-optimizations") + endif() +-- +2.9.0 + diff --git a/package/supertuxkart/0002-irrlicht-Fix-boolean-return-type-for-jpeglib-s-callb.patch b/package/supertuxkart/0002-irrlicht-Fix-boolean-return-type-for-jpeglib-s-callb.patch new file mode 100644 index 0000000000..1a89bead85 --- /dev/null +++ b/package/supertuxkart/0002-irrlicht-Fix-boolean-return-type-for-jpeglib-s-callb.patch @@ -0,0 +1,39 @@ +From fe71624eb39e0bc302a7603c79503fb12667dc2b Mon Sep 17 00:00:00 2001 +From: Ezequiel Garcia +Date: Sun, 3 Jul 2016 15:16:59 -0300 +Subject: [PATCH 2/2] irrlicht: Fix boolean return type for jpeglib's callback + +Building on certain toolchains can fail due to returning an integer +instead of TRUE. In any case, only {TRUE,FALSE} should be used +as 'boolean' jpeglib type. Fix this by returning TRUE. + + CImageLoaderJPG.cpp: In static member function 'static boolean + irr::video::CImageLoaderJPG::fill_input_buffer(j_decompress_ptr)': + CImageLoaderJPG.cpp:69:9: error: invalid conversion from 'int' to 'boolean' + [-fpermissive] + +Signed-off-by: Romain Naour +Signed-off-by: Ezequiel Garcia +--- +Fix sent upstream as part of pull: +https://github.com/supertuxkart/stk-code/pull/2554 + + lib/irrlicht/source/Irrlicht/CImageLoaderJPG.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/irrlicht/source/Irrlicht/CImageLoaderJPG.cpp b/lib/irrlicht/source/Irrlicht/CImageLoaderJPG.cpp +index 8fc5222a1e9b..1811f31dd28f 100644 +--- a/lib/irrlicht/source/Irrlicht/CImageLoaderJPG.cpp ++++ b/lib/irrlicht/source/Irrlicht/CImageLoaderJPG.cpp +@@ -66,7 +66,7 @@ void CImageLoaderJPG::init_source (j_decompress_ptr cinfo) + boolean CImageLoaderJPG::fill_input_buffer (j_decompress_ptr cinfo) + { + // DO NOTHING +- return 1; ++ return TRUE; + } + + +-- +2.9.0 + diff --git a/package/supertuxkart/Config.in b/package/supertuxkart/Config.in new file mode 100644 index 0000000000..4919b50a2b --- /dev/null +++ b/package/supertuxkart/Config.in @@ -0,0 +1,38 @@ +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_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_JPEG + select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBGLU + select BR2_PACKAGE_LIBOGG + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_LIBVORBIS + 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++" + 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_PACKAGE_HAS_LIBGL \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/supertuxkart/supertuxkart.hash b/package/supertuxkart/supertuxkart.hash new file mode 100644 index 0000000000..45ad8c5089 --- /dev/null +++ b/package/supertuxkart/supertuxkart.hash @@ -0,0 +1,5 @@ +# Locally computed +sha256 0b080bb098a26adb552d6fd48905bcb6b1e873ef1567457d7268d7d3aaa48282 supertuxkart-0.9.2-src.tar.xz +# From https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/0.9.2/ +sha1 df3805a8f9dc556a0fc5af44442dae8126db5d5a supertuxkart-0.9.2-src.tar.xz +md5 f1f5081fd41b8eeb310b4edc07b9ee12 supertuxkart-0.9.2-src.tar.xz diff --git a/package/supertuxkart/supertuxkart.mk b/package/supertuxkart/supertuxkart.mk new file mode 100644 index 0000000000..037c6f359d --- /dev/null +++ b/package/supertuxkart/supertuxkart.mk @@ -0,0 +1,48 @@ +################################################################################ +# +# supertuxkart +# +################################################################################ + +SUPERTUXKART_VERSION = 0.9.2 +SUPERTUXKART_SOURCE = supertuxkart-$(SUPERTUXKART_VERSION)-src.tar.xz +SUPERTUXKART_SITE = http://downloads.sourceforge.net/project/supertuxkart/SuperTuxKart/$(SUPERTUXKART_VERSION) + +# Supertuxkart itself is GPLv3+, but it bundles a few libraries with different +# licenses. Irrlicht, bullet and angelscript have zlib license, while glew is +# BSD-3c. Since they are linked statically, the result is GPLv3+. +SUPERTUXKART_LICENSE = GPLv3+ +SUPERTUXKART_LICENSE_FILES = COPYING + +SUPERTUXKART_DEPENDENCIES = \ + jpeg \ + libcurl \ + libgl \ + libglu \ + libogg \ + libpng \ + 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. +SUPERTUXKART_CONF_OPTS = -DBUILD_SHARED_LIBS=OFF + +ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) +SUPERTUXKART_DEPENDENCIES += libfribidi +SUPERTUXKART_CONF_OPTS += -DUSE_FRIBIDI=ON +else +SUPERTUXKART_CONF_OPTS += -DUSE_FRIBIDI=OFF +endif + +ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y) +SUPERTUXKART_DEPENDENCIES += bluez5_utils +SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=ON +else +# Wiimote support relies on bluez5. +SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/swig/swig.hash b/package/swig/swig.hash index 62e3d20f68..92ddc110ca 100644 --- a/package/swig/swig.hash +++ b/package/swig/swig.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 06dc8816a225667ce1eee545af3caf87e1bbaa379c32838d4cea53152514348d swig-3.0.7.tar.gz +sha256 2939aae39dec06095462f1b95ce1c958ac80d07b926e48871046d17c0094f44c swig-3.0.10.tar.gz diff --git a/package/swig/swig.mk b/package/swig/swig.mk index e4bd64cd3d..8fed8dabc4 100644 --- a/package/swig/swig.mk +++ b/package/swig/swig.mk @@ -5,9 +5,9 @@ ################################################################################ SWIG_VERSION_MAJOR = 3.0 -SWIG_VERSION = $(SWIG_VERSION_MAJOR).7 +SWIG_VERSION = $(SWIG_VERSION_MAJOR).10 SWIG_SITE = http://downloads.sourceforge.net/project/swig/swig/swig-$(SWIG_VERSION) -SWIG_DEPENDENCIES = host-bison +HOST_SWIG_DEPENDENCIES = host-bison HOST_SWIG_CONF_OPTS = \ --without-pcre \ --disable-ccache \ diff --git a/package/swupdate/Config.in b/package/swupdate/Config.in index 1d14a7cdb4..d9ef1bc7a4 100644 --- a/package/swupdate/Config.in +++ b/package/swupdate/Config.in @@ -3,7 +3,8 @@ config BR2_PACKAGE_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_LUA_5_2 + 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. @@ -18,10 +19,13 @@ config BR2_PACKAGE_SWUPDATE use your own modified configuration, you have to select the necessary packages manually: - * Select BR2_PACKAGE_LUA if you want to have Lua support. + * Select BR2_PACKAGE_LUA or BR2_PACKAGE_LUAJIT if you want + to have Lua support. + CONFIG_HANDLER_IN_LUA is not supported in LuaJIT or Lua 5.1. + Note that for LuaJIT support, you need to set + CONFIG_LUAVERSION="jit-5.1". * Select BR2_LIBCURL if you want to use the download feature. - * Select BR2_PACKAGE_OPENSSL is you want to add encryptions support - to the webserver. + * Select BR2_PACKAGE_OPENSSL is 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 diff --git a/package/swupdate/swupdate.config b/package/swupdate/swupdate.config index b5180eeb3c..51869bb9d9 100644 --- a/package/swupdate/swupdate.config +++ b/package/swupdate/swupdate.config @@ -14,14 +14,8 @@ CONFIG_HAVE_DOT_CONFIG=y CONFIG_SCRIPTS=y # CONFIG_HW_COMPATIBILITY is not set CONFIG_SW_VERSIONS_FILE="/etc/sw-versions" - -# -# MTD support needs libmtd -# - -# -# Lua support needs a Lua interpreter -# +# CONFIG_MTD is not set +# CONFIG_LUA is not set # CONFIG_FEATURE_SYSLOG is not set # @@ -40,10 +34,9 @@ CONFIG_EXTRA_LDLIBS="" # CONFIG_DEBUG is not set # CONFIG_WERROR is not set # CONFIG_NOCLEANUP is not set - -# -# Image downloading support needs libcurl -# +# CONFIG_DOWNLOAD is not set +# CONFIG_SIGNED_IMAGES is not set +# CONFIG_SURICATTA is not set CONFIG_WEBSERVER=y # @@ -55,41 +48,25 @@ CONFIG_MONGOOSE=y # Mongoose Feature # CONFIG_MONGOOSEIPV6=y - -# -# SSL support needs libcrypto, libssl -# +# CONFIG_MONGOOSESSL is not set # # Archival Features # -CONFIG_CPIO=y - -# -# gunzip support needs libz -# +# CONFIG_GUNZIP is not set # # Parser Features # CONFIG_LIBCONFIG=y CONFIG_LIBCONFIGROOT="" - -# -# JSON config parser support needs json-c -# +# CONFIG_JSON is not set # CONFIG_SETSWDESCRIPTION is not set # # Image Handlers # - -# -# ubivol support needs libubi -# CONFIG_RAW=y # CONFIG_SHELLSCRIPTHANDLER is not set - -# -# uboot support needs libz -# +# CONFIG_ARCHIVE is not set +# CONFIG_UBOOT is not set \ No newline at end of file diff --git a/package/swupdate/swupdate.hash b/package/swupdate/swupdate.hash index 70299a9b9b..1ba10f6457 100644 --- a/package/swupdate/swupdate.hash +++ b/package/swupdate/swupdate.hash @@ -1,3 +1,2 @@ # Locally calculated -sha256 534342ecb89e004edf641945afb49ae185e2599fd93dbcba8dbf1ba77e507f46 swupdate-2016.04.tar.gz -sha256 089393b0c8aec626078bc66f759474fa3d1bb7c48c7ae3c493d981514248fed5 69c0e66994f01ce1bf2299fbce86aee7a1baa37b.patch +sha256 840d6287a41f7a42e08a74045ee40b7c2f82c1ecfedf8c915e3935d4f0084376 swupdate-2016.10.tar.gz diff --git a/package/swupdate/swupdate.mk b/package/swupdate/swupdate.mk index f49cbaaff5..688f4eef86 100644 --- a/package/swupdate/swupdate.mk +++ b/package/swupdate/swupdate.mk @@ -4,14 +4,11 @@ # ################################################################################ -SWUPDATE_VERSION = 2016.04 +SWUPDATE_VERSION = 2016.10 SWUPDATE_SITE = $(call github,sbabic,swupdate,$(SWUPDATE_VERSION)) SWUPDATE_LICENSE = GPLv2+, MIT, Public Domain SWUPDATE_LICENSE_FILES = COPYING -# Upstream patch to fix build without MTD support -SWUPDATE_PATCH = https://github.com/sbabic/swupdate/commit/69c0e66994f01ce1bf2299fbce86aee7a1baa37b.patch - # swupdate bundles its own version of mongoose (version 3.8) ifeq ($(BR2_PACKAGE_JSON_C),y) @@ -42,8 +39,8 @@ else SWUPDATE_MAKE_ENV += HAVE_LIBCURL=n endif -ifeq ($(BR2_PACKAGE_LUA),y) -SWUPDATE_DEPENDENCIES += lua host-pkgconf +ifeq ($(BR2_PACKAGE_HAS_LUAINTERPRETER),y) +SWUPDATE_DEPENDENCIES += luainterpreter host-pkgconf SWUPDATE_MAKE_ENV += HAVE_LUA=y else SWUPDATE_MAKE_ENV += HAVE_LUA=n @@ -86,7 +83,7 @@ SWUPDATE_BUILD_CONFIG = $(@D)/.config SWUPDATE_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)) SWUPDATE_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig -ifeq ($(BR2_PREFER_STATIC_LIB),y) +ifeq ($(BR2_STATIC_LIBS),y) define SWUPDATE_PREFER_STATIC $(call KCONFIG_ENABLE_OPT,CONFIG_STATIC,$(SWUPDATE_BUILD_CONFIG)) endef diff --git a/package/sysdig/sysdig.hash b/package/sysdig/sysdig.hash new file mode 100644 index 0000000000..f64ef9e749 --- /dev/null +++ b/package/sysdig/sysdig.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e72490eaf413745aef87965a5abb1024908053064f86593b257f12bf5b0d6b97 sysdig-0.1.100.tar.gz diff --git a/package/sysklogd/0001-Replace-deprecated-union-wait-with-int.patch b/package/sysklogd/0001-Replace-deprecated-union-wait-with-int.patch new file mode 100644 index 0000000000..d3fc0dc188 --- /dev/null +++ b/package/sysklogd/0001-Replace-deprecated-union-wait-with-int.patch @@ -0,0 +1,28 @@ +From 76685540a7882926c54bc0d1a8945b7a6abffe40 Mon Sep 17 00:00:00 2001 +From: Ryan Coe +Date: Fri, 7 Oct 2016 19:42:40 -0700 +Subject: [PATCH] Replace deprecated union wait with int + +This is needed for compatibility with glibc >= 2.24. + +Signed-off-by: Ryan Coe +--- + syslogd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/syslogd.c b/syslogd.c +index ea73ea5..ace96c8 100644 +--- a/syslogd.c ++++ b/syslogd.c +@@ -2094,7 +2094,7 @@ void reapchild() + (void) signal(SIGCHLD, reapchild); /* reset signal handler -ASP */ + wait ((int *)0); + #else +- union wait status; ++ int status; + + while (wait3(&status, WNOHANG, (struct rusage *) NULL) > 0) + ; +-- +2.7.4 + diff --git a/package/sysklogd/0002-Fix-improper-header-includes.patch b/package/sysklogd/0002-Fix-improper-header-includes.patch new file mode 100644 index 0000000000..3518ef0270 --- /dev/null +++ b/package/sysklogd/0002-Fix-improper-header-includes.patch @@ -0,0 +1,78 @@ +From 7a043f619a91fbb998863c08e3e5e94a4747b11d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Nov 2016 23:07:36 +0100 +Subject: [PATCH] Fix improper header includes + +When building with the musl C library, a number of warnings indicate +that sysklogd is directly including headers that are considered internal +to the C library: + + - Instead of including , should be included. + + - Instead of including , should be included. + + - Instead of includeing , should be included. + +Signed-off-by: Thomas Petazzoni +--- + klogd.c | 2 +- + ksym_mod.c | 2 +- + syslog.c | 2 +- + syslogd.c | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/klogd.c b/klogd.c +index 6cc80ed..a173353 100644 +--- a/klogd.c ++++ b/klogd.c +@@ -260,7 +260,7 @@ + #include + #include + #include +-#include ++#include + #include + #if !defined(__GLIBC__) + #include +diff --git a/ksym_mod.c b/ksym_mod.c +index 68cd6b6..2e69d65 100644 +--- a/ksym_mod.c ++++ b/ksym_mod.c +@@ -113,7 +113,7 @@ + #include + #include + #include +-#include ++#include + #include + #include "module.h" + #if !defined(__GLIBC__) +diff --git a/syslog.c b/syslog.c +index bdb3ff2..f96b43c 100644 +--- a/syslog.c ++++ b/syslog.c +@@ -55,7 +55,7 @@ static char sccsid[] = "@(#)syslog.c 5.28 (Berkeley) 6/27/90"; + #include + #include + #include +-#include ++#include + #include + #if 0 + #include "syslog.h" +diff --git a/syslogd.c b/syslogd.c +index ace96c8..b5e8054 100644 +--- a/syslogd.c ++++ b/syslogd.c +@@ -521,7 +521,7 @@ static char sccsid[] = "@(#)syslogd.c 5.27 (Berkeley) 10/10/88"; + #define SYSLOG_NAMES + #include + #include +-#include ++#include + #include + #include + #include +-- +2.7.4 + diff --git a/package/sysklogd/0003-Remove-include-of-linux-time.h.patch b/package/sysklogd/0003-Remove-include-of-linux-time.h.patch new file mode 100644 index 0000000000..374d89bd05 --- /dev/null +++ b/package/sysklogd/0003-Remove-include-of-linux-time.h.patch @@ -0,0 +1,50 @@ +From f4926a61ba2d3766255dd996bf0315bc8fa0c528 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Nov 2016 23:09:03 +0100 +Subject: [PATCH] Remove include of + +klogd.c and ksym_mod.c currently include if GLIBC is not +defined. Unfortunately, this breaks badly with the musl C library: this +C library is not glibc so it doesn't define GLIBC, but it does have a +definition of "struct timespec" in its header file, which conflict with +the one provided by the Linux kernel headers. + +So, this commit simply gets rid of this header inclusion. + +Signed-off-by: Thomas Petazzoni +--- + klogd.c | 3 --- + ksym_mod.c | 3 --- + 2 files changed, 6 deletions(-) + +diff --git a/klogd.c b/klogd.c +index a173353..6505d96 100644 +--- a/klogd.c ++++ b/klogd.c +@@ -262,9 +262,6 @@ + #include + #include + #include +-#if !defined(__GLIBC__) +-#include +-#endif /* __GLIBC__ */ + #include + #include + #include +diff --git a/ksym_mod.c b/ksym_mod.c +index 2e69d65..6e26da1 100644 +--- a/ksym_mod.c ++++ b/ksym_mod.c +@@ -116,9 +116,6 @@ + #include + #include + #include "module.h" +-#if !defined(__GLIBC__) +-#include +-#endif /* __GLIBC__ */ + #include + #include + #include +-- +2.7.4 + diff --git a/package/sysklogd/0004-Remove-bogus-hand-written-klogctl-syscall-implementa.patch b/package/sysklogd/0004-Remove-bogus-hand-written-klogctl-syscall-implementa.patch new file mode 100644 index 0000000000..548f160718 --- /dev/null +++ b/package/sysklogd/0004-Remove-bogus-hand-written-klogctl-syscall-implementa.patch @@ -0,0 +1,38 @@ +From fe92a7a8197241f7d6b28ea3c8214bb6d2c7fda4 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Nov 2016 23:10:55 +0100 +Subject: [PATCH] Remove bogus hand-written klogctl() syscall implementation + +The way the hand-written klogctl() syscall is written cannot compile, as +_syscall3() is just a function provided by the C library, so calling it +outside of a function doesn't build. + +Since the musl C library provides a klogctl() function, we don't need +this hand-written system call anyway. + +Signed-off-by: Thomas Petazzoni +--- + klogd.c | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/klogd.c b/klogd.c +index 6505d96..9219671 100644 +--- a/klogd.c ++++ b/klogd.c +@@ -274,13 +274,8 @@ + + #define __LIBRARY__ + #include +-#if !defined(__GLIBC__) +-# define __NR_ksyslog __NR_syslog +-_syscall3(int,ksyslog,int, type, char *, buf, int, len); +-#else + #include + #define ksyslog klogctl +-#endif + + #define LOG_BUFFER_SIZE 4096 + #define LOG_LINE_LENGTH 1000 +-- +2.7.4 + diff --git a/package/sysklogd/0005-Add-missing-headers-for-open-flags.patch b/package/sysklogd/0005-Add-missing-headers-for-open-flags.patch new file mode 100644 index 0000000000..1a7ad84868 --- /dev/null +++ b/package/sysklogd/0005-Add-missing-headers-for-open-flags.patch @@ -0,0 +1,46 @@ +From 0dff338a704f4ad11a2b78871e1f2a0b8030b4d2 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Nov 2016 23:12:37 +0100 +Subject: [PATCH] Add missing headers for open() flags + +Both pidfile.c and syslog.c use open() and its flags, but forgets to +include all relevant headers, causing build failures with the musl C +library. + +Signed-off-by: Thomas Petazzoni +--- + pidfile.c | 2 ++ + syslog.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/pidfile.c b/pidfile.c +index e0959a0..14de56f 100644 +--- a/pidfile.c ++++ b/pidfile.c +@@ -26,8 +26,10 @@ + + #include + #include ++#include + #include + #include ++#include + #include + #include + #include +diff --git a/syslog.c b/syslog.c +index f96b43c..d09e7aa 100644 +--- a/syslog.c ++++ b/syslog.c +@@ -57,6 +57,8 @@ static char sccsid[] = "@(#)syslog.c 5.28 (Berkeley) 6/27/90"; + #include + #include + #include ++#include ++#include + #if 0 + #include "syslog.h" + #include "pathnames.h" +-- +2.7.4 + diff --git a/package/sysklogd/0006-syslogd.c-rename-dprintf-to-mydprintf.patch b/package/sysklogd/0006-syslogd.c-rename-dprintf-to-mydprintf.patch new file mode 100644 index 0000000000..a1fb5331e4 --- /dev/null +++ b/package/sysklogd/0006-syslogd.c-rename-dprintf-to-mydprintf.patch @@ -0,0 +1,39 @@ +From 68213f6902d291d2ba1626fd950fd7d4a1329d33 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Nov 2016 23:13:08 +0100 +Subject: [PATCH] syslogd.c: rename dprintf() to mydprintf() + +There is an existing kludge in syslogd.c to rename all dprintf() +function calls and its definition to mydprintf(). This kludge is only +applied when the glibc C library is used (i.e when GLIBC is defined), +because glibc also provides a dprintf() function, with a different +signature and behavior. + +However, the musl C library also provides the dprintf() function (with +the same signature as the one in glibc, obviously), but does not define +the GLIBC macro, causing a conflicting definition of dprintf. + +This commit fixes that by having the rename kludge used unconditionally. + +Signed-off-by: Thomas Petazzoni +--- + syslogd.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/syslogd.c b/syslogd.c +index b5e8054..22a9ed5 100644 +--- a/syslogd.c ++++ b/syslogd.c +@@ -818,9 +818,7 @@ void doexit(int sig); + void init(); + void cfline(char *line, register struct filed *f); + int decode(char *name, struct code *codetab); +-#if defined(__GLIBC__) + #define dprintf mydprintf +-#endif /* __GLIBC__ */ + static void dprintf(char *, ...); + static void allocate_log(void); + void sighup_handler(); +-- +2.7.4 + diff --git a/package/sysklogd/Config.in b/package/sysklogd/Config.in index 64464c432c..4188fb8274 100644 --- a/package/sysklogd/Config.in +++ b/package/sysklogd/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_SYSKLOGD bool "syslogd & klogd" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help System log daemons syslogd and klogd. diff --git a/package/syslog-ng/Config.in b/package/syslog-ng/Config.in index fdc8d9f220..7f47d86bcf 100644 --- a/package/syslog-ng/Config.in +++ b/package/syslog-ng/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_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 help syslog-ng is an enhanced log daemon, supporting a wide range of input and output methods: syslog, unstructured text, @@ -17,3 +18,4 @@ config BR2_PACKAGE_SYSLOG_NG 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/syslog-ng.hash b/package/syslog-ng/syslog-ng.hash index 0213d2dadc..ba066d1388 100644 --- a/package/syslog-ng/syslog-ng.hash +++ b/package/syslog-ng/syslog-ng.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 b1b3ccc0ce7f0d8bf15b23e59f2f4f5ded70eed410dfd27105219bc8856388a5 syslog-ng-3.7.2.tar.gz +sha256 5678856a550ae790618fabde9d1447f932ce7a9080d55dca8fc5df1202c70a17 syslog-ng-3.9.1.tar.gz diff --git a/package/syslog-ng/syslog-ng.mk b/package/syslog-ng/syslog-ng.mk index 1acaad8dea..61fc48fd4a 100644 --- a/package/syslog-ng/syslog-ng.mk +++ b/package/syslog-ng/syslog-ng.mk @@ -4,8 +4,7 @@ # ################################################################################ -SYSLOG_NG_VERSION = 3.7.2 -SYSLOG_NG_SOURCE = syslog-ng-$(SYSLOG_NG_VERSION).tar.gz +SYSLOG_NG_VERSION = 3.9.1 SYSLOG_NG_SITE = https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOG_NG_VERSION) SYSLOG_NG_LICENSE = LGPLv2.1+ (syslog-ng core), GPLv2+ (modules) SYSLOG_NG_LICENSE_FILES = COPYING @@ -13,7 +12,8 @@ SYSLOG_NG_DEPENDENCIES = host-bison host-flex host-pkgconf \ eventlog libglib2 openssl pcre # rabbit-mq needs -lrt SYSLOG_NG_CONF_ENV = LIBS=-lrt -SYSLOG_NG_CONF_OPTS = --disable-manpages +SYSLOG_NG_CONF_OPTS = --disable-manpages --localstatedir=/var/run \ + --disable-java --disable-java-modules # We override busybox's S01logging init script ifeq ($(BR2_PACKAGE_BUSYBOX),y) @@ -69,6 +69,21 @@ 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 += --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_INIT_SYSTEMD),y) SYSLOG_NG_DEPENDENCIES += systemd SYSLOG_NG_CONF_OPTS += \ diff --git a/package/sysstat/sysstat.hash b/package/sysstat/sysstat.hash index 655cafe2b8..3b4dda8f15 100644 --- a/package/sysstat/sysstat.hash +++ b/package/sysstat/sysstat.hash @@ -1,2 +1,4 @@ # From: http://sebastien.godard.pagesperso-orange.fr/download.html -sha1 7e9422e985b65728d007bd38d4a8d090aa795826 sysstat-11.2.3.tar.xz +sha1 805002b2bef00cd9ab44c5037d09b29cb71a17f8 sysstat-11.4.3.tar.xz +# Locally calculated +sha256 02e9cafa5557fbae435d33e592373655df929d817ae711d31142dd2f7d4dcee7 sysstat-11.4.3.tar.xz diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk index a16054f3dd..c2853422a9 100644 --- a/package/sysstat/sysstat.mk +++ b/package/sysstat/sysstat.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSSTAT_VERSION = 11.2.3 +SYSSTAT_VERSION = 11.4.3 SYSSTAT_SOURCE = sysstat-$(SYSSTAT_VERSION).tar.xz SYSSTAT_SITE = http://pagesperso-orange.fr/sebastien.godard SYSSTAT_CONF_OPTS = --disable-man-group --disable-sensors diff --git a/package/systemd-bootchart/Config.in b/package/systemd-bootchart/Config.in new file mode 100644 index 0000000000..8deb6b9b7b --- /dev/null +++ b/package/systemd-bootchart/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_SYSTEMD_BOOTCHART + bool "systemd-bootchart" + 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_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 0000000000..2d2175a0b4 --- /dev/null +++ b/package/systemd-bootchart/systemd-bootchart.hash @@ -0,0 +1,2 @@ +# sha256 locally computed +sha256 1ef7b4f440bf53aced26979cf8153482840699c556700671eb5dadb4222c70bd systemd-bootchart-231.tar.xz diff --git a/package/systemd-bootchart/systemd-bootchart.mk b/package/systemd-bootchart/systemd-bootchart.mk new file mode 100644 index 0000000000..31b9413bc5 --- /dev/null +++ b/package/systemd-bootchart/systemd-bootchart.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# systemd-bootchart +# +################################################################################ + +SYSTEMD_BOOTCHART_VERSION = 231 +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 = LGPLv2.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/0002-build-sys-revert-use-of-ln-relative-option.patch b/package/systemd/0002-build-sys-revert-use-of-ln-relative-option.patch index 2d9b34708d..2c1d929ebc 100644 --- a/package/systemd/0002-build-sys-revert-use-of-ln-relative-option.patch +++ b/package/systemd/0002-build-sys-revert-use-of-ln-relative-option.patch @@ -1,35 +1,32 @@ -From 582c9a734a0e976592946ff5b577f98551170a38 Mon Sep 17 00:00:00 2001 +From 32b6c22006767f0762edfa116b8b0f7be0c5c121 Mon Sep 17 00:00:00 2001 From: Eric Le Bihan -Date: Mon, 21 Jul 2014 11:34:38 +0200 -Subject: [PATCH 1/1] build-sys: revert use of ln relative option. +Date: Wed, 27 Jul 2016 15:43:16 +0200 +Subject: [PATCH] build-sys: revert use of ln relative option. Systemd build system now uses the `--relative` option from `ln(1)`. + This option was added to GNU coreutils 8.16, which is not widely deployed yet by GNU/Linux distributions (not available in Debian Wheezy for example). Signed-off-by: Eric Le Bihan +[Maxime: refresh the patch] +[Vincent: + refresh the patch, move-to-rootlibdir removed by: + https://github.com/systemd/systemd/commit/082210c7a837063fd8b520b18c221b42059d7eff +] +Signed-off-by: Maxime Hadjinlian +Signed-off-by: Vicente Olivert Riera --- - Makefile.am | 19 +++++-------------- - configure.ac | 2 -- - 2 files changed, 5 insertions(+), 16 deletions(-) + Makefile.am | 11 ++--------- + configure.ac | 2 -- + 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/Makefile.am b/Makefile.am -index e238cde..02b39ea 100644 +index 0c27f81..4de1595 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -219,8 +219,8 @@ define move-to-rootlibdir - if test "$(libdir)" != "$(rootlibdir)"; then \ - $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \ - so_img_name=$$(readlink $(DESTDIR)$(libdir)/$$libname) && \ -- rm -f $(DESTDIR)$(libdir)/$$libname && \ -- $(LN_S) --relative -f $(DESTDIR)$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/$$libname && \ -+ so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \ -+ $(LN_S) -f $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/$$libname && \ - mv $(DESTDIR)$(libdir)/$$libname.* $(DESTDIR)$(rootlibdir); \ - fi - endef -@@ -279,9 +279,9 @@ install-aliases-hook: +@@ -312,9 +312,9 @@ install-aliases-hook: set -- $(SYSTEM_UNIT_ALIASES) && \ dir=$(systemunitdir) && $(install-aliases) set -- $(USER_UNIT_ALIASES) && \ @@ -38,13 +35,13 @@ index e238cde..02b39ea 100644 set -- $(GENERAL_ALIASES) && \ - dir= && $(install-relative-aliases) + dir= && $(install-aliases) - + define install-aliases while [ -n "$$1" ]; do \ -@@ -292,15 +292,6 @@ define install-aliases +@@ -325,15 +325,6 @@ define install-aliases done endef - + -define install-relative-aliases - while [ -n "$$1" ]; do \ - $(MKDIR_P) `dirname $(DESTDIR)$$dir/$$2` && \ @@ -56,29 +53,20 @@ index e238cde..02b39ea 100644 - install-touch-usr-hook: touch -c $(DESTDIR)/$(prefix) - -@@ -2034,7 +2025,7 @@ systemd_dbus1_generator_LDADD = \ - dbus1-generator-install-hook: - $(AM_V_at)$(MKDIR_P) $(DESTDIR)$(usergeneratordir) - $(AM_V_RM)rm -f $(DESTDIR)$(usergeneratordir)/systemd-dbus1-generator -- $(AM_V_LN)$(LN_S) --relative -f $(DESTDIR)$(systemgeneratordir)/systemd-dbus1-generator $(DESTDIR)$(usergeneratordir)/systemd-dbus1-generator -+ $(AM_V_LN)$(LN_S) -f $(systemgeneratordir)/systemd-dbus1-generator $(DESTDIR)$(usergeneratordir)/systemd-dbus1-generator - - dbus1-generator-uninstall-hook: - rm -f $(DESTDIR)$(usergeneratordir)/systemd-dbus1-generator + diff --git a/configure.ac b/configure.ac -index ae88382..ec220af 100644 +index cf595e6..d58f303 100644 --- a/configure.ac +++ b/configure.ac -@@ -96,8 +96,6 @@ AC_PATH_PROG([KMOD], [kmod], [/usr/bin/kmod], [$PATH:/usr/sbin:/sbin]) - - AC_PATH_PROG([KEXEC], [kexec], [/usr/sbin/kexec], [$PATH:/usr/sbin:/sbin]) - +@@ -110,8 +110,6 @@ AC_PATH_PROG([SULOGIN], [sulogin], [/usr/sbin/sulogin], [$PATH:/usr/sbin:/sbin]) + AC_PATH_PROG([MOUNT_PATH], [mount], [/usr/bin/mount], [$PATH:/usr/sbin:/sbin]) + AC_PATH_PROG([UMOUNT_PATH], [umount], [/usr/bin/umount], [$PATH:/usr/sbin:/sbin]) + -AS_IF([! ln --relative --help > /dev/null 2>&1], [AC_MSG_ERROR([*** ln doesn't support --relative ***])]) - M4_DEFINES= - - # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line --- -1.7.10.4 + + AC_CHECK_TOOL(OBJCOPY, objcopy) +-- +2.8.1 diff --git a/package/systemd/Config.in b/package/systemd/Config.in index 97d48c4124..aaed7dc020 100644 --- a/package/systemd/Config.in +++ b/package/systemd/Config.in @@ -7,10 +7,9 @@ config BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS BR2_sh4a || BR2_sh4aeb || BR2_sparc || BR2_x86_64 || \ BR2_aarch64 || BR2_m68k -config BR2_PACKAGE_SYSTEMD +menuconfig BR2_PACKAGE_SYSTEMD bool "systemd" depends on BR2_INIT_SYSTEMD - depends on BR2_USE_WCHAR # util-linux depends on !BR2_STATIC_LIBS # kmod depends on BR2_TOOLCHAIN_HAS_THREADS # dbus depends on BR2_USE_MMU # dbus @@ -69,11 +68,6 @@ if BR2_PACKAGE_SYSTEMD config BR2_PACKAGE_PROVIDES_UDEV default "systemd" -config BR2_PACKAGE_SYSTEMD_KDBUS - bool "enable kdbus support" - help - Enable kdbus support for Systemd. - config BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY bool "HTTP server for journal events" select BR2_PACKAGE_LIBMICROHTTPD @@ -84,6 +78,14 @@ config BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY http://www.freedesktop.org/software/systemd/man/systemd-journal-gatewayd.service.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 @@ -92,23 +94,131 @@ config BR2_PACKAGE_SYSTEMD_BINFMT http://www.freedesktop.org/software/systemd/man/systemd-binfmt.service.html -config BR2_PACKAGE_SYSTEMD_VCONSOLE - bool "enable vconsole tool" +config BR2_PACKAGE_SYSTEMD_COREDUMP + bool "enable coredump hook" help - systemd-vconsole-setup is an early boot service that - configures the virtual console font and console keymap. + 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-vconsole-setup.service.html + http://www.freedesktop.org/software/systemd/man/systemd-coredump.html -config BR2_PACKAGE_SYSTEMD_BOOTCHART - bool "enable bootchart tool" +config BR2_PACKAGE_SYSTEMD_FIRSTBOOT + bool "enable firstboot support" 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-firstboot initializes the most basic system settings + interactively on the first boot. - http://www.freedesktop.org/software/systemd/man/systemd-bootchart.html + http://www.freedesktop.org/software/systemd/man/systemd-firstboot.html + +config BR2_PACKAGE_SYSTEMD_HIBERNATE + bool "enable hibernation support" + 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_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_BZIP2 + select BR2_PACKAGE_LZ4 + 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_KDBUS + bool "enable kdbus support" + help + Enable kdbus support for Systemd. + +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" + 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/ config BR2_PACKAGE_SYSTEMD_QUOTACHECK bool "enable quotacheck tools" @@ -120,41 +230,34 @@ config BR2_PACKAGE_SYSTEMD_QUOTACHECK http://www.freedesktop.org/software/systemd/man/systemd-quotacheck.service.html -config BR2_PACKAGE_SYSTEMD_NETWORKD - bool "enable network manager" +config BR2_PACKAGE_SYSTEMD_RANDOMSEED + bool "enable random-seed support" 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. + 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. - This simple network configuration solution is an alternative to - dhcpcd or ISC dhcp. + http://www.freedesktop.org/software/systemd/man/systemd-random-seed.service.html - http://www.freedesktop.org/software/systemd/man/systemd-networkd.html - -config BR2_PACKAGE_SYSTEMD_TIMESYNCD - bool "enable SNTP client" +config BR2_PACKAGE_SYSTEMD_RESOLVED + bool "enable resolve 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. + 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. - This simple NTP solution is an alternative to sntp/ntpd from the ntp - package. + http://www.freedesktop.org/software/systemd/man/systemd-resolved.html - http://www.freedesktop.org/software/systemd/man/systemd-timesyncd.html - -config BR2_PACKAGE_SYSTEMD_COMPAT - bool "enable compatibility libraries" +config BR2_PACKAGE_SYSTEMD_RFKILL + bool "enable rfkill tools" help - Since systemd 209, the following libraries have been merged into - libsystemd.so: + systemd-rfkill is a service that restores the RF kill switch + state at early boot and saves it at shutdown. - - libsystemd-daemon - - libsystemd-id128 - - libsystemd-journal - - libsystemd-login - - This option enables the installation of compatibility *.pc files. + http://www.freedesktop.org/software/systemd/man/systemd-rfkill@.service.html config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT bool "enable SMACK support" @@ -170,4 +273,53 @@ config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT 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_VCONSOLE + bool "enable vconsole tool" + 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/dhcp.network b/package/systemd/dhcp.network new file mode 100644 index 0000000000..9b636fa989 --- /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 index 729598608d..0acaa3cdcd 100644 --- a/package/systemd/systemd.hash +++ b/package/systemd/systemd.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 b51b0a48d1beb388d95bd6a98d62be05490335d4bb388aefecdcb576e91e0741 systemd-229.tar.gz +sha256 1172c7c7d5d72fbded53186e7599d5272231f04cc8b72f9a0fb2c5c20dfc4880 systemd-232.tar.gz diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index 8a6aa44315..fce5d8411c 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSTEMD_VERSION = 229 +SYSTEMD_VERSION = 232 SYSTEMD_SITE = $(call github,systemd,systemd,v$(SYSTEMD_VERSION)) SYSTEMD_LICENSE = LGPLv2.1+, GPLv2+ (udev), Public Domain (few source files, see README) SYSTEMD_LICENSE_FILES = LICENSE.GPL2 LICENSE.LGPL2.1 README @@ -27,15 +27,18 @@ endif SYSTEMD_CONF_OPTS += \ --with-rootprefix= \ + --enable-blkid \ --enable-static=no \ --disable-manpages \ - --disable-selinux \ --disable-pam \ + --disable-ima \ --disable-libcryptsetup \ --disable-efi \ --disable-gnuefi \ --disable-ldconfig \ --disable-tests \ + --disable-coverage \ + --with-default-dnssec=no \ --without-python SYSTEMD_CFLAGS = $(TARGET_CFLAGS) -fno-lto @@ -50,12 +53,6 @@ define SYSTEMD_RUN_INTLTOOLIZE endef SYSTEMD_PRE_CONFIGURE_HOOKS += SYSTEMD_RUN_INTLTOOLIZE -ifeq ($(BR2_PACKAGE_SYSTEMD_COMPAT),y) -SYSTEMD_CONF_OPTS += --enable-compat-libs -else -SYSTEMD_CONF_OPTS += --disable-compat-libs -endif - ifeq ($(BR2_PACKAGE_ACL),y) SYSTEMD_CONF_OPTS += --enable-acl SYSTEMD_DEPENDENCIES += acl @@ -63,6 +60,20 @@ else SYSTEMD_CONF_OPTS += --disable-acl endif +ifeq ($(BR2_PACKAGE_AUDIT),y) +SYSTEMD_CONF_OPTS += --enable-audit +SYSTEMD_DEPENDENCIES += audit +else +SYSTEMD_CONF_OPTS += --disable-audit +endif + +ifeq ($(BR2_PACKAGE_LIBIDN),y) +SYSTEMD_CONF_OPTS += --enable-libidn +SYSTEMD_DEPENDENCIES += libidn +else +SYSTEMD_CONF_OPTS += --disable-libidn +endif + ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) SYSTEMD_CONF_OPTS += --enable-seccomp SYSTEMD_DEPENDENCIES += libseccomp @@ -70,6 +81,13 @@ else SYSTEMD_CONF_OPTS += --disable-seccomp endif +ifeq ($(BR2_PACKAGE_LIBXKBCOMMON),y) +SYSTEMD_CONF_OPTS += --enable-xkbcommon +SYSTEMD_DEPENDENCIES += libxkbcommon +else +SYSTEMD_CONF_OPTS += --disable-xkbcommon +endif + ifeq ($(BR2_PACKAGE_SYSTEMD_KDBUS),y) SYSTEMD_CONF_OPTS += --enable-kdbus else @@ -124,8 +142,27 @@ endif ifeq ($(BR2_PACKAGE_SYSTEMD_JOURNAL_GATEWAY),y) SYSTEMD_DEPENDENCIES += libmicrohttpd SYSTEMD_CONF_OPTS += --enable-microhttpd +ifeq ($(BR2_PACKAGE_LIBQRENCODE),y) +SYSTEMD_CONF_OPTS += --enable-qrencode +SYSTEMD_DEPENDENCIES += libqrencode else -SYSTEMD_CONF_OPTS += --disable-microhttpd +SYSTEMD_CONF_OPTS += --disable-qrencode +endif +else +SYSTEMD_CONF_OPTS += --disable-microhttpd --disable-qrencode +endif + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +SYSTEMD_DEPENDENCIES += libselinux +SYSTEMD_CONF_OPTS += --enable-selinux +else +SYSTEMD_CONF_OPTS += --disable-selinux +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HWDB),y) +SYSTEMD_CONF_OPTS += --enable-hwdb +else +SYSTEMD_CONF_OPTS += --disable-hwdb endif ifeq ($(BR2_PACKAGE_SYSTEMD_BINFMT),y) @@ -140,24 +177,118 @@ else SYSTEMD_CONF_OPTS += --disable-vconsole endif -ifeq ($(BR2_PACKAGE_SYSTEMD_BOOTCHART),y) -SYSTEMD_CONF_OPTS += --enable-bootchart -else -SYSTEMD_CONF_OPTS += --disable-bootchart -endif - ifeq ($(BR2_PACKAGE_SYSTEMD_QUOTACHECK),y) SYSTEMD_CONF_OPTS += --enable-quotacheck else SYSTEMD_CONF_OPTS += --disable-quotacheck endif +ifeq ($(BR2_PACKAGE_SYSTEMD_TMPFILES),y) +SYSTEMD_CONF_OPTS += --enable-tmpfiles +else +SYSTEMD_CONF_OPTS += --disable-tmpfiles +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_SYSUSERS),y) +SYSTEMD_CONF_OPTS += --enable-sysusers +else +SYSTEMD_CONF_OPTS += --disable-sysusers +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_FIRSTBOOT),y) +SYSTEMD_CONF_OPTS += --enable-firstboot +else +SYSTEMD_CONF_OPTS += --disable-firstboot +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_RANDOMSEED),y) +SYSTEMD_CONF_OPTS += --enable-randomseed +else +SYSTEMD_CONF_OPTS += --disable-randomseed +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_BACKLIGHT),y) +SYSTEMD_CONF_OPTS += --enable-backlight +else +SYSTEMD_CONF_OPTS += --disable-backlight +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_RFKILL),y) +SYSTEMD_CONF_OPTS += --enable-rfkill +else +SYSTEMD_CONF_OPTS += --disable-rfkill +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_LOGIND),y) +SYSTEMD_CONF_OPTS += --enable-logind +else +SYSTEMD_CONF_OPTS += --disable-logind +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_MACHINED),y) +SYSTEMD_CONF_OPTS += --enable-machined +else +SYSTEMD_CONF_OPTS += --disable-machined +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_IMPORTD),y) +SYSTEMD_CONF_OPTS += --enable-importd +else +SYSTEMD_CONF_OPTS += --disable-importd +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_HOSTNAMED),y) +SYSTEMD_CONF_OPTS += --enable-hostnamed +else +SYSTEMD_CONF_OPTS += --disable-hostnamed +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_MYHOSTNAME),y) +SYSTEMD_CONF_OPTS += --enable-myhostname +else +SYSTEMD_CONF_OPTS += --disable-myhostname +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_TIMEDATED),y) +SYSTEMD_CONF_OPTS += --enable-timedated +else +SYSTEMD_CONF_OPTS += --disable-timedated +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_LOCALED),y) +SYSTEMD_CONF_OPTS += --enable-localed +else +SYSTEMD_CONF_OPTS += --disable-localed +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_COREDUMP),y) +SYSTEMD_CONF_OPTS += --enable-coredump +SYSTEMD_COREDUMP_USER = systemd-coredump -1 systemd-coredump -1 * /var/lib/systemd/coredump - - Core Dumper +else +SYSTEMD_CONF_OPTS += --disable-coredump +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD_POLKIT),y) +SYSTEMD_CONF_OPTS += --enable-polkit +else +SYSTEMD_CONF_OPTS += --disable-polkit +endif + ifeq ($(BR2_PACKAGE_SYSTEMD_NETWORKD),y) SYSTEMD_CONF_OPTS += --enable-networkd +SYSTEMD_NETWORKD_USER = systemd-network -1 systemd-network -1 * - - - Network Manager define SYSTEMD_INSTALL_RESOLVCONF_HOOK ln -sf ../run/systemd/resolve/resolv.conf \ $(TARGET_DIR)/etc/resolv.conf endef +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)/ \ + package/systemd/dhcp.network > \ + $(TARGET_DIR)/etc/systemd/network/dhcp.network +endef +endif else SYSTEMD_CONF_OPTS += --disable-networkd define SYSTEMD_INSTALL_SERVICE_NETWORK @@ -169,8 +300,16 @@ define SYSTEMD_INSTALL_SERVICE_NETWORK endef endif +ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y) +SYSTEMD_CONF_OPTS += --enable-resolved +SYSTEMD_RESOLVED_USER = systemd-resolve -1 systemd-resolve -1 * - - - Network Name Resolution Manager +else +SYSTEMD_CONF_OPTS += --disable-resolved +endif + ifeq ($(BR2_PACKAGE_SYSTEMD_TIMESYNCD),y) SYSTEMD_CONF_OPTS += --enable-timesyncd +SYSTEMD_TIMESYNCD_USER = systemd-timesync -1 systemd-timesync -1 * - - - Network Time Synchronization define SYSTEMD_INSTALL_SERVICE_TIMESYNC mkdir -p $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants ln -sf ../../../../lib/systemd/system/systemd-timesyncd.service \ @@ -186,9 +325,11 @@ else SYSTEMD_CONF_OPTS += --disable-smack endif -# mq_getattr needs -lrt -SYSTEMD_MAKE_OPTS += LIBS=-lrt -SYSTEMD_MAKE_OPTS += LDFLAGS+=-ldl +ifeq ($(BR2_PACKAGE_SYSTEMD_HIBERNATE),y) +SYSTEMD_CONF_OPTS += --enable-hibernate +else +SYSTEMD_CONF_OPTS += --disable-hibernate +endif define SYSTEMD_INSTALL_INIT_HOOK ln -fs ../lib/systemd/systemd $(TARGET_DIR)/sbin/init @@ -210,15 +351,16 @@ SYSTEMD_POST_INSTALL_TARGET_HOOKS += \ SYSTEMD_INSTALL_RESOLVCONF_HOOK define SYSTEMD_USERS - systemd-journal -1 systemd-journal -1 * /var/log/journal - - Journal + - - input -1 * - - - Input device group + - - systemd-journal -1 * - - - Journal + systemd-bus-proxy -1 systemd-bus-proxy -1 * - - - Proxy D-Bus messages to/from a bus systemd-journal-gateway -1 systemd-journal-gateway -1 * /var/log/journal - - Journal Gateway systemd-journal-remote -1 systemd-journal-remote -1 * /var/log/journal/remote - - Journal Remote systemd-journal-upload -1 systemd-journal-upload -1 * - - - Journal Upload - systemd-resolve -1 systemd-resolve -1 * - - - Network Name Resolution Manager - systemd-bus-proxy -1 systemd-bus-proxy -1 * - - - Proxy D-Bus messages to/from a bus - systemd-timesync -1 systemd-timesync -1 * - - - Network Time Synchronization - systemd-network -1 systemd-network -1 * - - - Network Manager - - - input -1 * - - - Input device group + $(SYSTEMD_COREDUMP_USER) + $(SYSTEMD_NETWORKD_USER) + $(SYSTEMD_RESOLVED_USER) + $(SYSTEMD_TIMESYNCD_USER) endef define SYSTEMD_DISABLE_SERVICE_TTY1 @@ -249,6 +391,7 @@ define SYSTEMD_INSTALL_INIT_SYSTEMD $(SYSTEMD_INSTALL_SERVICE_TTY) $(SYSTEMD_INSTALL_SERVICE_NETWORK) $(SYSTEMD_INSTALL_SERVICE_TIMESYNC) + $(SYSTEMD_INSTALL_NETWORK_CONFS) endef $(eval $(autotools-package)) diff --git a/package/sysvinit/Config.in b/package/sysvinit/Config.in index 2dc3bb07bb..94f1612375 100644 --- a/package/sysvinit/Config.in +++ b/package/sysvinit/Config.in @@ -1,6 +1,8 @@ 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 /sbin/init - parent of all processes diff --git a/package/sysvinit/inittab b/package/sysvinit/inittab index 27eb4a6931..fad91eae8b 100644 --- a/package/sysvinit/inittab +++ b/package/sysvinit/inittab @@ -10,7 +10,7 @@ si2::sysinit:/bin/mkdir -p /dev/pts si3::sysinit:/bin/mkdir -p /dev/shm si4::sysinit:/bin/mount -a si5::sysinit:/bin/hostname -F /etc/hostname -si6::sysinit:/etc/init.d/rcS +rcS:12345:wait:/etc/init.d/rcS # S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL diff --git a/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch deleted file mode 100644 index 535ccb4d38..0000000000 --- a/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 4e6a75eed3602f10aff516f49c8088c6da8db9df Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Sun, 31 Aug 2014 12:11:57 +0200 -Subject: [PATCH 1/1] cmake: use the standard CMake flag to drive the shared - object build - -If BUILD_SHARED_LIBS is set and ENABLE_STATIC undefined, then drive -ENABLE_STATIC with the BUILD_SHARED_LIBS value. - -Signed-off-by: Samuel Martin ---- - CMakeLists.txt | 12 +++++++++++- - 1 file changed, 11 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 317ffa1..9931957 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -2,7 +2,17 @@ project(taglib) - - cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) - --option(ENABLE_STATIC "Make static version of libtag" OFF) -+# Use the standard CMake flag to drive the shared object build. -+if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED ENABLE_STATIC) -+ if(BUILD_SHARED_LIBS) -+ set(ENABLE_STATIC OFF) -+ else() -+ set(ENABLE_STATIC ON) -+ endif() -+else() -+ option(ENABLE_STATIC "Make static version of libtag" OFF) -+endif() -+ - if(ENABLE_STATIC) - add_definitions(-DTAGLIB_STATIC) - set(BUILD_SHARED_LIBS OFF) --- -2.1.0 - diff --git a/package/taglib/Config.in b/package/taglib/Config.in index 209837f46b..6521d48c60 100644 --- a/package/taglib/Config.in +++ b/package/taglib/Config.in @@ -1,4 +1,3 @@ - config BR2_PACKAGE_TAGLIB bool "taglib" depends on BR2_INSTALL_LIBSTDCPP diff --git a/package/taglib/taglib.hash b/package/taglib/taglib.hash index 86ac6a4f58..7a5c5cf98c 100644 --- a/package/taglib/taglib.hash +++ b/package/taglib/taglib.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 72d371cd1419a87ae200447a53bff2be219283071e80fd12337928cc967dc71a taglib-1.9.1.tar.gz +sha256 b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b taglib-1.11.1.tar.gz diff --git a/package/taglib/taglib.mk b/package/taglib/taglib.mk index 2410650025..f47c4ba43f 100644 --- a/package/taglib/taglib.mk +++ b/package/taglib/taglib.mk @@ -4,7 +4,7 @@ # ################################################################################ -TAGLIB_VERSION = 1.9.1 +TAGLIB_VERSION = 1.11.1 TAGLIB_SITE = http://taglib.github.io/releases TAGLIB_INSTALL_STAGING = YES TAGLIB_LICENSE = LGPLv2.1, MPL diff --git a/package/tar/0001-fix-build-failure.patch b/package/tar/0001-fix-build-failure.patch deleted file mode 100644 index 8550a3ef5a..0000000000 --- a/package/tar/0001-fix-build-failure.patch +++ /dev/null @@ -1,52 +0,0 @@ -Status: upstream -http://git.savannah.gnu.org/cgit/tar.git/commit/?id=e9ddc08da0982f36581ae5a8c7763453ff41cfe8 - -Signed-off-by: Gustavo Zacarias - -From e9ddc08da0982f36581ae5a8c7763453ff41cfe8 Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Wed, 24 Sep 2014 21:22:16 +0000 -Subject: Bugfixes. - -* doc/tar.1: Fix typo in font spec. -* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode" -(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT ---- -diff --git a/doc/tar.1 b/doc/tar.1 -index 9000627..b91de63 100644 ---- a/doc/tar.1 -+++ b/doc/tar.1 -@@ -879,7 +879,7 @@ Exclude files matching patterns listed in FILE. - \fB\-\-strip\-components\fR=\fINUMBER\fR - Strip \fINUMBER\fR leading components from file names on extraction. - .TP --\fB\-\-transform\fR=\fIEXPRESSION\dR, \fB\-\-xform\fR=\fIEXPRESSION\fR -+\fB\-\-transform\fR=\fIEXPRESSION\fR, \fB\-\-xform\fR=\fIEXPRESSION\fR - Use sed replace \fIEXPRESSION\fR to transform file names. - .SS File name matching options - These options affect both exclude and include patterns. -diff --git a/src/tar.c b/src/tar.c -index 225c624..f8102e0 100644 ---- a/src/tar.c -+++ b/src/tar.c -@@ -1341,14 +1341,18 @@ static char filename_terminator; - static char const *const sort_mode_arg[] = { - "none", - "name", -+#if D_INO_IN_DIRENT - "inode", -+#endif - NULL - }; - - static int sort_mode_flag[] = { - SAVEDIR_SORT_NONE, - SAVEDIR_SORT_NAME, -+#if D_INO_IN_DIRENT - SAVEDIR_SORT_INODE -+#endif - }; - - ARGMATCH_VERIFY (sort_mode_arg, sort_mode_flag); --- -cgit v0.9.0.2 diff --git a/package/tar/Config.in b/package/tar/Config.in index 74b0219919..0eea1b8456 100644 --- a/package/tar/Config.in +++ b/package/tar/Config.in @@ -2,6 +2,7 @@ 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. @@ -10,3 +11,4 @@ config BR2_PACKAGE_TAR comment "tar needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/tar/tar.hash b/package/tar/tar.hash index 5d2f1db0d3..e5634566e0 100644 --- a/package/tar/tar.hash +++ b/package/tar/tar.hash @@ -1,3 +1,3 @@ # Locally calculated after checking signature -sha256 64ee8d88ec1b47a0961033493f919d27218c41b580138fd6802327462aff22f2 tar-1.28.tar.xz -sha256 a3906a862f83dac1dfaf0ed200c62bd21f6d00f184a7f42b91978593a8553104 tar-1.28.cpio.gz +sha256 402dcfd0022fd7a1f2c5611f5c61af1cd84910a760a44a688e18ddbff4e9f024 tar-1.29.tar.xz +sha256 9173f222464dd3676118408840da5990527062b5c7daf6487bed7c396c45bfb1 tar-1.29.cpio.gz diff --git a/package/tar/tar.mk b/package/tar/tar.mk index 2b47e334d5..26f113a4d2 100644 --- a/package/tar/tar.mk +++ b/package/tar/tar.mk @@ -4,7 +4,7 @@ # ################################################################################ -TAR_VERSION = 1.28 +TAR_VERSION = 1.29 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 @@ -16,7 +16,6 @@ TAR_LICENSE_FILES = COPYING # Prefer full-blown tar over buybox's version ifeq ($(BR2_PACKAGE_BUSYBOX),y) TAR_DEPENDENCIES += busybox -HOST_TAR_DEPENDENCIES = endif ifeq ($(BR2_PACKAGE_ACL),y) diff --git a/package/targetcli-fb/Config.in b/package/targetcli-fb/Config.in index b655938700..24ff3145f6 100644 --- a/package/targetcli-fb/Config.in +++ b/package/targetcli-fb/Config.in @@ -12,4 +12,4 @@ config BR2_PACKAGE_TARGETCLI_FB LIO generic SCSI target, present in 3.x Linux kernel versions. - https://github.com/agrover/targetcli-fb + https://github.com/open-iscsi/targetcli-fb diff --git a/package/targetcli-fb/targetcli-fb.hash b/package/targetcli-fb/targetcli-fb.hash new file mode 100644 index 0000000000..50cb3e3f62 --- /dev/null +++ b/package/targetcli-fb/targetcli-fb.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 0f32ab6f3ecd234280d55be5e89ce2b3a02f9c82c8dccaae66e26464cff8901a targetcli-fb-v2.1.fb41.tar.gz diff --git a/package/targetcli-fb/targetcli-fb.mk b/package/targetcli-fb/targetcli-fb.mk index cf7f29ff4e..4057592564 100644 --- a/package/targetcli-fb/targetcli-fb.mk +++ b/package/targetcli-fb/targetcli-fb.mk @@ -4,8 +4,10 @@ # ################################################################################ +# When upgrading the version, be sure to also upgrade python-rtslib-fb +# and python-configshell-fb at the same time. TARGETCLI_FB_VERSION = v2.1.fb41 -TARGETCLI_FB_SITE = $(call github,agrover,targetcli-fb,$(TARGETCLI_FB_VERSION)) +TARGETCLI_FB_SITE = $(call github,open-iscsi,targetcli-fb,$(TARGETCLI_FB_VERSION)) TARGETCLI_FB_LICENSE = Apache-2.0 TARGETCLI_FB_LICENSE_FILES = COPYING TARGETCLI_FB_SETUP_TYPE = setuptools 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 0000000000..f2365ea298 --- /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 0000000000..34139fef74 --- /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 index 7a9a136034..7d26abaae3 100644 --- a/package/taskd/Config.in +++ b/package/taskd/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_TASKD bool "taskd" - depends on BR2_USE_WCHAR # gnutls, util-linux + depends on BR2_USE_WCHAR # gnutls depends on BR2_USE_MMU # fork() depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_GNUTLS diff --git a/package/taskd/taskd.mk b/package/taskd/taskd.mk index 34a260ea0e..b19be68912 100644 --- a/package/taskd/taskd.mk +++ b/package/taskd/taskd.mk @@ -8,6 +8,6 @@ TASKD_VERSION = 1.1.0 TASKD_SITE = http://taskwarrior.org/download TASKD_LICENSE = MIT TASKD_LICENSE_FILES = COPYING -TASKD_DEPENDENCIES = gnutls util-linux +TASKD_DEPENDENCIES = gnutls util-linux host-pkgconf $(eval $(cmake-package)) diff --git a/package/tcl/tcl.hash b/package/tcl/tcl.hash index dd6463781c..b344d26589 100644 --- a/package/tcl/tcl.hash +++ b/package/tcl/tcl.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 ce26d5b9c7504fc25d2f10ef0b82b14cf117315445b5afa9e673ed331830fb53 tcl8.6.5-src.tar.gz +sha256 a265409781e4b3edcc4ef822533071b34c3dc6790b893963809b9fe221befe07 tcl8.6.6-src.tar.gz diff --git a/package/tcl/tcl.mk b/package/tcl/tcl.mk index a1153c7231..ffef9cf8bd 100644 --- a/package/tcl/tcl.mk +++ b/package/tcl/tcl.mk @@ -5,7 +5,7 @@ ################################################################################ TCL_VERSION_MAJOR = 8.6 -TCL_VERSION = $(TCL_VERSION_MAJOR).5 +TCL_VERSION = $(TCL_VERSION_MAJOR).6 TCL_SOURCE = tcl$(TCL_VERSION)-src.tar.gz TCL_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TCL_VERSION) TCL_LICENSE = tcl license @@ -75,7 +75,6 @@ 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) -HOST_TCL_DEPENDENCIES = $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/tcpdump/tcpdump.hash b/package/tcpdump/tcpdump.hash index 5943347b42..966db1f3aa 100644 --- a/package/tcpdump/tcpdump.hash +++ b/package/tcpdump/tcpdump.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 6be520269a89036f99c0b2126713a60965953eab921002b07608ccfc0c47d9af tcpdump-4.7.4.tar.gz +sha256 eae98121cbb1c9adbedd9a777bf2eae9fa1c1c676424a54740311c8abcee5a5e tcpdump-4.9.0.tar.gz diff --git a/package/tcpdump/tcpdump.mk b/package/tcpdump/tcpdump.mk index 14b3503937..e71f9c113f 100644 --- a/package/tcpdump/tcpdump.mk +++ b/package/tcpdump/tcpdump.mk @@ -4,7 +4,7 @@ # ################################################################################ -TCPDUMP_VERSION = 4.7.4 +TCPDUMP_VERSION = 4.9.0 TCPDUMP_SITE = http://www.tcpdump.org/release TCPDUMP_LICENSE = BSD-3c TCPDUMP_LICENSE_FILES = LICENSE diff --git a/package/tcping/tcping.mk b/package/tcping/tcping.mk index ff43490c81..4633b98265 100644 --- a/package/tcping/tcping.mk +++ b/package/tcping/tcping.mk @@ -10,7 +10,7 @@ TCPING_LICENSE = GPLv3+ TCPING_LICENSE_FILES = LICENSE define TCPING_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CCFLAGS="$(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CCFLAGS="$(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ -C $(@D) tcping.linux endef diff --git a/package/tcpreplay/tcpreplay.hash b/package/tcpreplay/tcpreplay.hash index 95d6d5d818..e7ba4400ec 100644 --- a/package/tcpreplay/tcpreplay.hash +++ b/package/tcpreplay/tcpreplay.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 61b916ef91049cad2a9ddc8de6f5e3e3cc5d9998dbb644dc91cf3a798497ffe4 tcpreplay-4.1.1.tar.gz +sha256 da483347e83a9b5df0e0dbb0f822a2d37236e79dda35f4bc4e6684fa827f25ea tcpreplay-4.1.2.tar.gz diff --git a/package/tcpreplay/tcpreplay.mk b/package/tcpreplay/tcpreplay.mk index 0723c02d28..a8bcf1c5dd 100644 --- a/package/tcpreplay/tcpreplay.mk +++ b/package/tcpreplay/tcpreplay.mk @@ -4,7 +4,7 @@ # ################################################################################ -TCPREPLAY_VERSION = 4.1.1 +TCPREPLAY_VERSION = 4.1.2 TCPREPLAY_SITE = https://github.com/appneta/tcpreplay/releases/download/v$(TCPREPLAY_VERSION) TCPREPLAY_LICENSE = GPLv3 TCPREPLAY_LICENSE_FILES = docs/LICENSE diff --git a/package/tegrarcm/tegrarcm.mk b/package/tegrarcm/tegrarcm.mk index 6f03b570d8..06fd039651 100644 --- a/package/tegrarcm/tegrarcm.mk +++ b/package/tegrarcm/tegrarcm.mk @@ -7,7 +7,7 @@ TEGRARCM_VERSION = v1.7 TEGRARCM_SITE = $(call github,NVIDIA,tegrarcm,$(TEGRARCM_VERSION)) TEGRARCM_LICENSE = BSD-3c / NVIDIA Software License (src/miniloader) -TEGRARCM_LICENSE_FILE = LICENSE +TEGRARCM_LICENSE_FILES = LICENSE TEGRARCM_AUTORECONF = YES HOST_TEGRARCM_DEPENDENCIES = host-libusb host-pkgconf host-cryptopp diff --git a/package/tekui/Config.in b/package/tekui/Config.in new file mode 100644 index 0000000000..1203667b68 --- /dev/null +++ b/package/tekui/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_TEKUI + bool "tekui" + 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 + depends on !BR2_STATIC_LIBS + depends on BR2_PACKAGE_HAS_LUAINTERPRETER + depends on BR2_TOOLCHAIN_HAS_THREADS + 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 0000000000..07de2ed6d2 --- /dev/null +++ b/package/tekui/tekui.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 28abfaacc0f2ddae962afbbca862a7fb619c33a99a497be9edd746091013dd7f tekui-1.12.tgz diff --git a/package/tekui/tekui.mk b/package/tekui/tekui.mk new file mode 100644 index 0000000000..f9ae849033 --- /dev/null +++ b/package/tekui/tekui.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# 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 + +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 0000000000..f367ce51e9 --- /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 0000000000..86f6606ae2 --- /dev/null +++ b/package/terminology/terminology.hash @@ -0,0 +1,2 @@ +# From https://sourceforge.net/p/enlightenment/mailman/message/35600707/ +sha256 bfed42b83bce854d35ba33a4d38373c6d42fb2c0ea0335d76420488c091692f4 terminology-1.0.0.tar.xz diff --git a/package/terminology/terminology.mk b/package/terminology/terminology.mk new file mode 100644 index 0000000000..d7e98270e6 --- /dev/null +++ b/package/terminology/terminology.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# terminology +# +################################################################################ + +TERMINOLOGY_VERSION = 1.0.0 +TERMINOLOGY_SOURCE = terminology-$(TERMINOLOGY_VERSION).tar.xz +TERMINOLOGY_SITE = https://download.enlightenment.org/rel/apps/terminology +TERMINOLOGY_LICENSE = BSD-2c +TERMINOLOGY_LICENSE_FILES = COPYING + +TERMINOLOGY_DEPENDENCIES = efl host-pkgconf +TERMINOLOGY_CONF_OPTS = --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc + +$(eval $(autotools-package)) diff --git a/package/tftpd/Config.in b/package/tftpd/Config.in index 609b5d129d..ea5cb303f9 100644 --- a/package/tftpd/Config.in +++ b/package/tftpd/Config.in @@ -1,5 +1,8 @@ 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. diff --git a/package/thrift/Config.in b/package/thrift/Config.in index 54ca9b8538..0ee3f000d7 100644 --- a/package/thrift/Config.in +++ b/package/thrift/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_THRIFT depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBEVENT select BR2_PACKAGE_OPENSSL @@ -19,6 +18,5 @@ config BR2_PACKAGE_THRIFT http://thrift.apache.org/ comment "thrift needs a toolchain w/ C++, wchar, threads" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/thrift/thrift.mk b/package/thrift/thrift.mk index a40ddadb15..185e1ec1c3 100644 --- a/package/thrift/thrift.mk +++ b/package/thrift/thrift.mk @@ -25,6 +25,11 @@ THRIFT_AUTORECONF_OPTS = -I $(HOST_DIR)/usr/share/autoconf-archive THRIFT_LICENSE = Apache-2.0 THRIFT_LICENSE_FILES = LICENSE +# relocation truncated to fit: R_68K_GOT16O +ifeq ($(BR2_m68k_cf),y) +THRIFT_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -mxgot" +endif + ifeq ($(BR2_STATIC_LIBS),y) # openssl uses zlib, so we need to explicitly link with it when static THRIFT_CONF_ENV += LIBS=-lz diff --git a/package/ti-cgt-pru/Config.in.host b/package/ti-cgt-pru/Config.in.host new file mode 100644 index 0000000000..a36633705d --- /dev/null +++ b/package/ti-cgt-pru/Config.in.host @@ -0,0 +1,17 @@ +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 + 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 0000000000..1c19b33fd6 --- /dev/null +++ b/package/ti-cgt-pru/ti-cgt-pru.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 df85cd1ed3aea12d577854ece11bf5f2af6ace8c39959eea4cf2fa5973924e0e ti_cgt_pru_2.1.3_linux_installer_x86.bin 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 0000000000..d94f09197f --- /dev/null +++ b/package/ti-cgt-pru/ti-cgt-pru.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# ti-cgt-pru +# +################################################################################ + +TI_CGT_PRU_VERSION = 2.1.3 +TI_CGT_PRU_SOURCE = ti_cgt_pru_$(TI_CGT_PRU_VERSION)_linux_installer_x86.bin +TI_CGT_PRU_SITE = http://software-dl.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), \ + Boost Software License 1.0 (compiler), \ + BSD-2c, BSD-3c, MIT, Academic Free License 3.0, Hewlett-Packard (PRU library) +TI_CGT_PRU_LICENSE_FILES = PRU_Code_Generation_Tools_2.1.x_manifest.html \ + PRU_CodeGen_Library_2.1_0222433C-30C1-442d-B5C6-2073BD97F80F.spdx.tag + +define HOST_TI_CGT_PRU_EXTRACT_CMDS + chmod +x $(DL_DIR)/$(TI_CGT_PRU_SOURCE) + $(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)/usr/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)/usr/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/Config.in b/package/ti-gfx/Config.in index 1481534d83..6ec2f23117 100644 --- a/package/ti-gfx/Config.in +++ b/package/ti-gfx/Config.in @@ -8,7 +8,12 @@ config BR2_PACKAGE_TI_GFX 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. + 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/ @@ -72,6 +77,6 @@ endchoice endif -comment "ti-gfx needs an (e)glibc toolchain and a Linux kernel to be built" +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/ti-gfx.mk b/package/ti-gfx/ti-gfx.mk index 47eb474c00..428878a08b 100644 --- a/package/ti-gfx/ti-gfx.mk +++ b/package/ti-gfx/ti-gfx.mk @@ -101,7 +101,7 @@ define TI_GFX_EXTRACT_CMDS endef define TI_GFX_BUILD_KM_CMDS - $(MAKE) $(TI_GFX_KM_MAKE_OPTS) -C $(@D)/GFX_Linux_KM all + $(TARGET_MAKE_ENV) $(MAKE) $(TI_GFX_KM_MAKE_OPTS) -C $(@D)/GFX_Linux_KM all endef ifeq ($(BR2_PACKAGE_TI_GFX_DEMOS),y) @@ -156,7 +156,7 @@ define TI_GFX_INSTALL_STAGING_CMDS endef define TI_GFX_INSTALL_KM_CMDS - $(MAKE) $(TI_GFX_KM_MAKE_OPTS) -C $(@D)/GFX_Linux_KM install + $(TARGET_MAKE_ENV) $(MAKE) $(TI_GFX_KM_MAKE_OPTS) -C $(@D)/GFX_Linux_KM install endef define TI_GFX_INSTALL_BINS_CMDS diff --git a/package/ti-sgx-demos/Config.in b/package/ti-sgx-demos/Config.in new file mode 100644 index 0000000000..ea06fdb3ad --- /dev/null +++ b/package/ti-sgx-demos/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_TI_SGX_DEMOS + bool "ti-sgx-demos" + depends on BR2_PACKAGE_TI_SGX_UM + help + These SGX powervr demo applications from Imagination + Technologies are availabe as binaries only. The binaries + are compiled for the TI SGX implementation. + + http://git.ti.com/graphics/img-pvr-sdk diff --git a/package/ti-sgx-demos/ti-sgx-demos.hash b/package/ti-sgx-demos/ti-sgx-demos.hash new file mode 100644 index 0000000000..43acf9102a --- /dev/null +++ b/package/ti-sgx-demos/ti-sgx-demos.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 9d1d4da2c2b35303e239f99eb4003b8b206078a682aa083d5fb831ee4197f3bf ti-sgx-demos-f24650bc8243b25c23d6a0a502ed79fc472ac424.tar.gz diff --git a/package/ti-sgx-demos/ti-sgx-demos.mk b/package/ti-sgx-demos/ti-sgx-demos.mk new file mode 100644 index 0000000000..80af79b983 --- /dev/null +++ b/package/ti-sgx-demos/ti-sgx-demos.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# ti-sgx-demos +# +################################################################################ + +# This correpsonds to SDK 02.00.00.00 +TI_SGX_DEMOS_VERSION = f24650bc8243b25c23d6a0a502ed79fc472ac424 +TI_SGX_DEMOS_SITE = git://git.ti.com/graphics/img-pvr-sdk.git +TI_SGX_DEMOS_LICENSE = Imagination Technologies License Agreement +TI_SGX_DEMOS_LICENSE_FILES = LegalNotice.txt + +define TI_SGX_DEMOS_INSTALL_TARGET_CMDS + cp -dpfr $(@D)/targetfs/Examples/Advanced/OGLES* \ + $(TARGET_DIR)/usr/bin/ +endef + +$(eval $(generic-package)) diff --git a/package/ti-sgx-km/Config.in b/package/ti-sgx-km/Config.in new file mode 100644 index 0000000000..a4c9bb8ca2 --- /dev/null +++ b/package/ti-sgx-km/Config.in @@ -0,0 +1,49 @@ +comment "ti-sgx-km needs a Linux kernel to be built" + depends on BR2_arm + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_TI_SGX_KM + bool "ti-sgx-km" + depends on BR2_LINUX_KERNEL && BR2_arm + select BR2_LINUX_NEEDS_MODULES + help + Kernel modules for TI CPUs with SGX GPU. + This package supports AM335x, AM437x, AM4430 and AM5430. + It builds the kernel module and the user space binaries. + For older CPUs or kernels use the ti-gfx package. + + Note: it needs a TI specific kernel to build properly. + + http://git.ti.com/graphics/omap5-sgx-ddk-linux + +if BR2_PACKAGE_TI_SGX_KM + +choice + prompt "Target" + default BR2_PACKAGE_TI_SGX_AM335X + help + Select the SOC for which you would like to install drivers. + +config BR2_PACKAGE_TI_SGX_AM335X + bool "AM335x" + help + AM335x CPU + +config BR2_PACKAGE_TI_SGX_AM437X + bool "AM437x" + help + AM437x CPU + +config BR2_PACKAGE_TI_SGX_AM4430 + bool "AM4430" + help + AM4430 CPU + +config BR2_PACKAGE_TI_SGX_AM5430 + bool "AM5430" + help + AM5430 CPU + +endchoice + +endif diff --git a/package/ti-sgx-km/ti-sgx-km.hash b/package/ti-sgx-km/ti-sgx-km.hash new file mode 100644 index 0000000000..7f7e0acd4d --- /dev/null +++ b/package/ti-sgx-km/ti-sgx-km.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 47728ff8fc48827116cc042efa777a22a83dd4bd17c494e2a53b8c204ca59624 ti-sgx-km-2b7523d07a13ab704a24a7664749551f4a13ed32.tar.gz diff --git a/package/ti-sgx-km/ti-sgx-km.mk b/package/ti-sgx-km/ti-sgx-km.mk new file mode 100644 index 0000000000..48c8a6d1fa --- /dev/null +++ b/package/ti-sgx-km/ti-sgx-km.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# ti-sgx-km +# +################################################################################ + +# This correpsonds to SDK 02.00.00.00 +TI_SGX_KM_VERSION = 2b7523d07a13ab704a24a7664749551f4a13ed32 +TI_SGX_KM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-linux.git +TI_SGX_KM_LICENSE = GPLv2 +TI_SGX_KM_LICENSE_FILES = GPL-COPYING + +TI_SGX_KM_DEPENDENCIES = linux + +TI_SGX_KM_MAKE_OPTS = \ + $(LINUX_MAKE_FLAGS) \ + KERNELDIR=$(LINUX_DIR) \ + PVR_NULLDRM=1 + +ifeq ($(BR2_PACKAGE_TI_SGX_AM335X),y) +TI_SGX_KM_PLATFORM_NAME = omap335x +else ifeq ($(BR2_PACKAGE_TI_SGX_AM437X),y) +TI_SGX_KM_PLATFORM_NAME = omap437x +else ifeq ($(BR2_PACKAGE_TI_SGX_AM4430),y) +TI_SGX_KM_PLATFORM_NAME = omap4430 +else ifeq ($(BR2_PACKAGE_TI_SGX_5430),y) +TI_SGX_KM_PLATFORM_NAME = omap5430 +endif + +TI_SGX_KM_SUBDIR = eurasia_km/eurasiacon/build/linux2/$(TI_SGX_KM_PLATFORM_NAME)_linux + +define TI_SGX_KM_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ + -C $(@D)/$(TI_SGX_KM_SUBDIR) +endef + +define TI_SGX_KM_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TI_SGX_KM_MAKE_OPTS) \ + DISCIMAGE=$(TARGET_DIR) \ + kbuild_install -C $(@D)/$(TI_SGX_KM_SUBDIR) +endef + +$(eval $(generic-package)) diff --git a/package/ti-sgx-um/Config.in b/package/ti-sgx-um/Config.in new file mode 100644 index 0000000000..8e1e4fb270 --- /dev/null +++ b/package/ti-sgx-um/Config.in @@ -0,0 +1,36 @@ +comment "ti-sgx-um needs the ti-sgx-km driver" + depends on !BR2_PACKAGE_TI_SGX_KM + +comment "ti-sgx-um needs a glibc toolchain w/ threads" + depends on !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 + # 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 + 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. + + http://git.ti.com/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 0000000000..8cae52fd6e --- /dev/null +++ b/package/ti-sgx-um/S80ti-sgx @@ -0,0 +1,14 @@ +#!/bin/sh +case "$1" in + start) + printf "Initializing SGX graphics driver " + /usr/bin/pvrsrvinit + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + stop) + ;; + *) + echo "Usage: $0 {start|stop}" + exit 1 + ;; +esac diff --git a/package/ti-sgx-um/powervr.ini b/package/ti-sgx-um/powervr.ini new file mode 100644 index 0000000000..fc92d45d50 --- /dev/null +++ b/package/ti-sgx-um/powervr.ini @@ -0,0 +1,6 @@ +[default] +#defaul library without double buffering: +WindowSystem=libpvrDRMWSEGL_FRONT.so +#alternative library, slower but with double buffering +#WindowSystem=libpvrDRMWSEGL.so +DisableHWTQTextureUpload=1 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 0000000000..a6a0566469 --- /dev/null +++ b/package/ti-sgx-um/ti-sgx-um.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 c17f23d255cff8fe72fc3f5cae3d7550e387af07d036954b4f08e573379406d0 ti-sgx-um-e15f1543bab4de9e8927a2c4934addf3fd16ffcb.tar.gz 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 0000000000..d5c50a0166 --- /dev/null +++ b/package/ti-sgx-um/ti-sgx-um.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# ti-sgx-um +# +################################################################################ + +# This correpsonds to SDK 02.00.00.00 +TI_SGX_UM_VERSION = e15f1543bab4de9e8927a2c4934addf3fd16ffcb +TI_SGX_UM_SITE = git://git.ti.com/graphics/omap5-sgx-ddk-um-linux.git +TI_SGX_UM_LICENSE = TI TSPA License +TI_SGX_UM_LICENSE_FILES = OMAP5-Linux-Graphics-DDK-UM-Manifest.doc +TI_SGX_UM_INSTALL_STAGING = YES + +# ti-sgx-um is a egl/gles provider only if libdrm is installed +TI_SGX_UM_DEPENDENCIES = libdrm + +define TI_SGX_UM_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(STAGING_DIR) install +endef + +define TI_SGX_UM_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DISCIMAGE=$(TARGET_DIR) install +endef + +# libs use the following file for configuration +define TI_SGX_UM_INSTALL_CONF + $(INSTALL) -D -m 0644 package/ti-sgx-um/powervr.ini \ + $(TARGET_DIR)/etc/powervr.ini +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-utils/ti-utils.hash b/package/ti-utils/ti-utils.hash new file mode 100644 index 0000000000..899172e952 --- /dev/null +++ b/package/ti-utils/ti-utils.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d05d4e3ad3599fca7854109938aebd24bbab72ac7d69dd053260f735a36613f9 ti-utils-06dbdb2727354b5f3ad7c723897f40051fddee49.tar.gz diff --git a/package/ti-utils/ti-utils.mk b/package/ti-utils/ti-utils.mk index 06aca6d409..cfb0cb8769 100644 --- a/package/ti-utils/ti-utils.mk +++ b/package/ti-utils/ti-utils.mk @@ -14,7 +14,7 @@ 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 - $(MAKE1) NFSROOT="$(STAGING_DIR)" \ + $(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 diff --git a/package/tidsp-binaries/tidsp-binaries.hash b/package/tidsp-binaries/tidsp-binaries.hash new file mode 100644 index 0000000000..6649c76ce4 --- /dev/null +++ b/package/tidsp-binaries/tidsp-binaries.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c56e5edd53c921768a033906426329279ca8ae6537c5d735c42b948e9778b05c tidsp-binaries-23.i3.8.tar.gz diff --git a/package/tidsp-binaries/tidsp-binaries.mk b/package/tidsp-binaries/tidsp-binaries.mk index bc542cdf11..9736bc7231 100644 --- a/package/tidsp-binaries/tidsp-binaries.mk +++ b/package/tidsp-binaries/tidsp-binaries.mk @@ -10,7 +10,7 @@ TIDSP_BINARIES_LICENSE = TI Proprietary License TIDSP_BINARIES_LICENSE_FILES = LICENSE define TIDSP_BINARIES_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) -e DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -e DESTDIR=$(TARGET_DIR) install endef $(eval $(generic-package)) diff --git a/package/tiff/Config.in b/package/tiff/Config.in index 7d66dd26c1..092a7f3fca 100644 --- a/package/tiff/Config.in +++ b/package/tiff/Config.in @@ -1,12 +1,11 @@ -config BR2_PACKAGE_TIFF +menuconfig BR2_PACKAGE_TIFF bool "tiff" help Library for handling TIFF (Tag Image File Format) images. - http://www.remotesensing.org/libtiff/ + http://simplesystems.org/libtiff/ if BR2_PACKAGE_TIFF -menu "tiff Options" config BR2_PACKAGE_TIFF_CCITT bool "CCITT Group 3 & 4 support" @@ -62,7 +61,6 @@ config BR2_PACKAGE_TIFF_OLD_JPEG config BR2_PACKAGE_TIFF_JBIG bool "JBIG compression" default y -endmenu config BR2_PACKAGE_TIFF_UTILITIES bool "tiff utilities" diff --git a/package/tiff/tiff.hash b/package/tiff/tiff.hash index 7ff746f6c9..4439a35f39 100644 --- a/package/tiff/tiff.hash +++ b/package/tiff/tiff.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 4d57a50907b510e3049a4bba0d7888930fdfc16ce49f1bf693e5b6247370d68c tiff-4.0.6.tar.gz +sha256 9f43a2cfb9589e5cecaa66e16bf87f814c945f22df7ba600d63aac4632c4f019 tiff-4.0.7.tar.gz diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk index a53d7bb3b8..ffb1a425cb 100644 --- a/package/tiff/tiff.mk +++ b/package/tiff/tiff.mk @@ -4,7 +4,7 @@ # ################################################################################ -TIFF_VERSION = 4.0.6 +TIFF_VERSION = 4.0.7 TIFF_SITE = http://download.osgeo.org/libtiff TIFF_LICENSE = tiff license TIFF_LICENSE_FILES = COPYRIGHT diff --git a/package/time/Config.in b/package/time/Config.in index f4694a2b7c..40275cf0e5 100644 --- a/package/time/Config.in +++ b/package/time/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_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. diff --git a/package/tinc/0001-musl.patch b/package/tinc/0001-musl.patch deleted file mode 100644 index 654c7058d7..0000000000 --- a/package/tinc/0001-musl.patch +++ /dev/null @@ -1,32 +0,0 @@ -From: Jo-Philipp Wich -Date: Thu, 18 Jun 2015 21:58:31 +0000 (+0200) -Subject: fix musl compatibility -X-Git-Tag: release-1.0.26~9 -X-Git-Url: http://www.tinc-vpn.org/git/browse?p=tinc;a=commitdiff_plain;h=a04fd9d0c9babca461cee186677db8f607677c6a;hp=bb616245b7883ab30291cd8d46672ed2ae733166 - -fix musl compatibility - -Let configure include sys/if_tun.h when testing for netinet/if_ether.h -to detect the Kernel/libc header conflict on musl. - -After this patch, configure will correctly detect netinet/if_ether.h as -unusable and the subsequent compilation will not attempt to use it. - -Signed-off-by: Bernd Kuhls -(downloaded upstream commit included in tinc 1.0.25: - http://www.tinc-vpn.org/git/browse?p=tinc;a=commitdiff;h=a04fd9d0c9babca461cee186677db8f607677c6a) ---- - -diff --git a/src/have.h b/src/have.h -index e83f98f..69d5100 100644 ---- a/src/have.h -+++ b/src/have.h -@@ -207,4 +207,8 @@ - #include - #endif - -+#ifdef HAVE_LINUX_IF_TUN_H -+#include -+#endif -+ - #endif /* __TINC_SYSTEM_H__ */ diff --git a/package/tinc/tinc.hash b/package/tinc/tinc.hash index 721b6bd443..135a4f3904 100644 --- a/package/tinc/tinc.hash +++ b/package/tinc/tinc.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 498e58f9f39e3922030a63cf62baf4b46a40fbda8d90b23ec0f084f4a9f9b687 tinc-1.0.24.tar.gz +sha256 abc17e25afc1b9e74423c78fef586b11d503cbbbe5e4a2ed323870f4a82faa73 tinc-1.0.30.tar.gz diff --git a/package/tinc/tinc.mk b/package/tinc/tinc.mk index f7edd79acd..6d87cbf102 100644 --- a/package/tinc/tinc.mk +++ b/package/tinc/tinc.mk @@ -4,14 +4,14 @@ # ################################################################################ -TINC_VERSION = 1.0.24 +TINC_VERSION = 1.0.30 TINC_SITE = http://www.tinc-vpn.org/packages TINC_DEPENDENCIES = lzo openssl zlib TINC_LICENSE = GPLv2+ with OpenSSL exception TINC_LICENSE_FILES = COPYING COPYING.README TINC_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=c99" -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) TINC_CONF_ENV += \ ax_cv_check_cflags___fPIE=no \ ax_cv_check_ldflags___pie=no diff --git a/package/tinyalsa/0001-disable-doxygen-usage.patch b/package/tinyalsa/0001-disable-doxygen-usage.patch new file mode 100644 index 0000000000..9c867a8fec --- /dev/null +++ b/package/tinyalsa/0001-disable-doxygen-usage.patch @@ -0,0 +1,32 @@ +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. + +Signed-off-by: Thomas Petazzoni + +Index: b/Makefile +=================================================================== +--- a/Makefile ++++ b/Makefile +@@ -13,13 +13,11 @@ + all: + $(MAKE) -C src + $(MAKE) -C utils +- $(MAKE) -C doxygen + + .PHONY: clean + clean: + $(MAKE) -C src clean + $(MAKE) -C utils clean +- $(MAKE) -C doxygen clean + + .PHONY: install + install: +@@ -27,5 +25,3 @@ + cp -Ru include/tinyalsa $(DESTDIR)$(INCDIR)/ + $(MAKE) -C src install + $(MAKE) -C utils install +- $(MAKE) -C doxygen install +- diff --git a/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch b/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch deleted file mode 100644 index 4c8d48fd9e..0000000000 --- a/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 10d82df8d920ceec4be9028a4939f96d6f407e81 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Wed, 26 Aug 2015 09:20:13 +0200 -Subject: [PATCH] tinypcminfo: make function pcm_get_format_name() static - -When building tinyalsa with gcc 5.x, the following warnings appear: - -tinypcminfo.c:97:52: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static - return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; - ^ -tinypcminfo.c:97:35: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static - return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; - -And the build fails with: - -tinypcminfo.o: In function `main': -tinypcminfo.c:(.text+0x2f0): undefined reference to `pcm_get_format_name' -collect2: error: ld returned 1 exit status - -To fix this, this patch marks the pcm_get_format_name() as static, -since it's anyway only used in tinypcminfo.c. - -Submitted upstream: https://github.com/tinyalsa/tinyalsa/pull/61 - -Signed-off-by: Thomas Petazzoni ---- - tinypcminfo.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tinypcminfo.c b/tinypcminfo.c -index b2d11bc..99eec34 100644 ---- a/tinypcminfo.c -+++ b/tinypcminfo.c -@@ -92,7 +92,7 @@ static const char *format_lookup[] = { - /* Returns a human readable name for the format associated with bit_index, - * NULL if bit_index is not known. - */ --inline const char *pcm_get_format_name(unsigned bit_index) -+static inline const char *pcm_get_format_name(unsigned bit_index) - { - return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; - } --- -2.5.0 - diff --git a/package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch b/package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch deleted file mode 100644 index 1b5d43cec5..0000000000 --- a/package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch +++ /dev/null @@ -1,33 +0,0 @@ -From c8333f8c7a4e4b9549abeef7530b2cd20a18e537 Mon Sep 17 00:00:00 2001 -From: rofl0r -Date: Mon, 12 Oct 2015 12:57:09 +0100 -Subject: [PATCH] asound.h: include to get struct timespec prototype - -without including it, we get -In file included from mixer.c:44:0: -include/sound/asound.h:337:18: error: field 'trigger_tstamp' has incomplete type -include/sound/asound.h:338:18: error: field 'tstamp' has incomplete type -etc. - -Signed-off-by: Baruch Siach ---- -Patch status: upstream commit c8333f8c7a4e - - include/sound/asound.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/sound/asound.h b/include/sound/asound.h -index a041628ec28e..7c6de81673f5 100644 ---- a/include/sound/asound.h -+++ b/include/sound/asound.h -@@ -12,6 +12,7 @@ - #ifndef __SOUND_ASOUND_H - #define __SOUND_ASOUND_H - -+#include - #include - - #define SNDRV_PROTOCOL_VERSION(major, minor, subminor) (((major)<<16)|((minor)<<8)|(subminor)) --- -2.8.1 - diff --git a/package/tinyalsa/tinyalsa.hash b/package/tinyalsa/tinyalsa.hash new file mode 100644 index 0000000000..b6bea47eba --- /dev/null +++ b/package/tinyalsa/tinyalsa.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 93f4ca1e6345974167dc5577e8151a31fa2e6a628727a72d59e18db2289e7a1c tinyalsa-1.1.0.tar.gz diff --git a/package/tinyalsa/tinyalsa.mk b/package/tinyalsa/tinyalsa.mk index e470b47f63..d44155f94d 100644 --- a/package/tinyalsa/tinyalsa.mk +++ b/package/tinyalsa/tinyalsa.mk @@ -4,29 +4,30 @@ # ################################################################################ -TINYALSA_VERSION = f2a7b6d3d81bd337a540d56704b4aaa7bdb046fe +TINYALSA_VERSION = 1.1.0 TINYALSA_SITE = $(call github,tinyalsa,tinyalsa,$(TINYALSA_VERSION)) TINYALSA_LICENSE = BSD-3c +TINYALSA_LICENSE_FILES = NOTICE TINYALSA_INSTALL_STAGING = YES define TINYALSA_BUILD_CMDS - $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) endef define TINYALSA_INSTALL_STAGING_CMDS - $(INSTALL) -D -m 0755 $(@D)/libtinyalsa.so \ - $(STAGING_DIR)/usr/lib/libtinyalsa.so - $(INSTALL) -D -m 0644 $(@D)/include/tinyalsa/asoundlib.h \ - $(STAGING_DIR)/usr/include/tinyalsa/asoundlib.h + $(TARGET_MAKE_ENV) $(MAKE) \ + -C $(@D) \ + PREFIX="/usr" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + DESTDIR="$(STAGING_DIR)" install endef define TINYALSA_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/libtinyalsa.so \ - $(TARGET_DIR)/usr/lib/libtinyalsa.so - $(INSTALL) -D -m 0755 $(@D)/tinyplay $(TARGET_DIR)/usr/bin/tinyplay - $(INSTALL) -D -m 0755 $(@D)/tinycap $(TARGET_DIR)/usr/bin/tinycap - $(INSTALL) -D -m 0755 $(@D)/tinymix $(TARGET_DIR)/usr/bin/tinymix - $(INSTALL) -D -m 0755 $(@D)/tinypcminfo $(TARGET_DIR)/usr/bin/tinypcminfo + $(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-Update-cjson-include-path.patch b/package/tinycbor/0001-Update-cjson-include-path.patch new file mode 100644 index 0000000000..5eea937d91 --- /dev/null +++ b/package/tinycbor/0001-Update-cjson-include-path.patch @@ -0,0 +1,69 @@ +From 9aa79d8e9e38b31b34d9933a266c698e79808a79 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 13 Nov 2016 15:43:40 +0100 +Subject: [PATCH] Update cjson include path + +Since cjson-v1.0.0 (https://github.com/DaveGamble/cJSON/releases), +cJSON.h is installed into cjson/cJSON.h and library has been renamed +from cJSON to cjson + +Signed-off-by: Fabrice Fontaine +--- + Makefile | 4 ++-- + Makefile.configure | 4 ++-- + tools/json2cbor/json2cbor.c | 2 +- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/Makefile b/Makefile +index acd52eb..905fbdf 100644 +--- a/Makefile ++++ b/Makefile +@@ -82,12 +82,12 @@ ifeq ($(open_memstream-pass),) + endif + endif + +-# json2cbor depends on an external library (cJSON) ++# json2cbor depends on an external library (cjson) + ifneq ($(cjson-pass)$(system-cjson-pass),) + JSON2CBOR_SOURCES = tools/json2cbor/json2cbor.c + INSTALL_TARGETS += $(bindir)/json2cbor + ifeq ($(system-cjson-pass),1) +- LDFLAGS_CJSON = -lcJSON ++ LDFLAGS_CJSON = -lcjson + else + JSON2CBOR_SOURCES += src/cjson/cJSON.c + json2cbor_CCFLAGS = -I$(SRCDIR)src/cjson +diff --git a/Makefile.configure b/Makefile.configure +index 28f4c92..424efb3 100644 +--- a/Makefile.configure ++++ b/Makefile.configure +@@ -10,11 +10,11 @@ PROGRAM-gc_sections = int main() {} + CCFLAGS-gc_sections = -Wl,--gc-sections + + PROGRAM-cjson = \#include \n +-PROGRAM-cjson += \#include \n ++PROGRAM-cjson += \#include \n + PROGRAM-cjson += int main() { return cJSON_False; } + CCFLAGS-cjson = -I$(dir $(MAKEFILE))src/cjson + PROGRAM-system-cjson = $(PROGRAM-cjson) +-CCFLAGS-system-cjson = -lcJSON ++CCFLAGS-system-cjson = -lcjson + + sink: + @echo >&2 Please run from the top-level Makefile. +diff --git a/tools/json2cbor/json2cbor.c b/tools/json2cbor/json2cbor.c +index 96d3ed1..e194299 100644 +--- a/tools/json2cbor/json2cbor.c ++++ b/tools/json2cbor/json2cbor.c +@@ -27,7 +27,7 @@ + #include "cbor.h" + #include "compilersupport_p.h" + +-#include ++#include + + #include + #include +-- +2.5.0 + diff --git a/package/tinycbor/0002-Fix-static-compilation-of-json2cbor.patch b/package/tinycbor/0002-Fix-static-compilation-of-json2cbor.patch new file mode 100644 index 0000000000..dfea4ca68f --- /dev/null +++ b/package/tinycbor/0002-Fix-static-compilation-of-json2cbor.patch @@ -0,0 +1,29 @@ +From 1be7da8d81bbd52d722ec60250567ea876f6f4b5 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 3 Dec 2016 20:15:41 +0100 +Subject: [PATCH] Fix static compilation of json2cbor + +json2cbor depends on cjson so tools/json2cbor/json2cbor.o must before +-lcjson + +Signed-off-by: Fabrice Fontaine +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 905fbdf..7b5fefc 100644 +--- a/Makefile ++++ b/Makefile +@@ -115,7 +115,7 @@ bin/cbordump: $(CBORDUMP_SOURCES:.c=.o) lib/libtinycbor.a | bin + $(CC) -o $@ $(LDFLAGS) $^ $(LDLIBS) -lm + + bin/json2cbor: $(JSON2CBOR_SOURCES:.c=.o) lib/libtinycbor.a | bin +- $(CC) -o $@ $(LDFLAGS) $(LDFLAGS_CJSON) $^ $(LDLIBS) -lm ++ $(CC) -o $@ $(LDFLAGS) $^ $(LDFLAGS_CJSON) $(LDLIBS) -lm + + tinycbor.pc: tinycbor.pc.in + $(SED) > $@ < $< \ +-- +2.5.0 + diff --git a/package/tinycbor/Config.in b/package/tinycbor/Config.in new file mode 100644 index 0000000000..41f0b5fac3 --- /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 0000000000..88300e8e34 --- /dev/null +++ b/package/tinycbor/tinycbor.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 302ac9de66f1048725040ccc9a99e03c20529ac2b150ccf35cfd1e2dafa81c4b tinycbor-v0.4.tar.gz diff --git a/package/tinycbor/tinycbor.mk b/package/tinycbor/tinycbor.mk new file mode 100644 index 0000000000..65deacd22b --- /dev/null +++ b/package/tinycbor/tinycbor.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# tinycbor +# +################################################################################ + +TINYCBOR_VERSION = v0.4 +TINYCBOR_SITE = $(call github,01org,tinycbor,$(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 + +# 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-Update-Makefile.in-to-allow-cross-compilation.patch b/package/tinydtls/0001-Update-Makefile.in-to-allow-cross-compilation.patch new file mode 100644 index 0000000000..5e91f2ee5d --- /dev/null +++ b/package/tinydtls/0001-Update-Makefile.in-to-allow-cross-compilation.patch @@ -0,0 +1,170 @@ +From a6f312dfb4497d5e72664c4772a8b122e25b81d8 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 26 Jul 2016 09:09:53 +0200 +Subject: [PATCH] Update Makefile.in to allow cross-compilation + +Use CC, CPP and DESTDIR environment variables passed to configure in Makefile.in files +Fix definition of LIBS and LDFLAGS (LDFLAGS was set to @LIBS@) + +Signed-off-by: Fabrice Fontaine +--- + Makefile.in | 13 ++++++++----- + aes/Makefile.in | 7 +++++-- + doc/Makefile.in | 4 ++-- + ecc/Makefile.in | 7 +++++-- + sha2/Makefile.in | 7 +++++-- + tests/Makefile.in | 4 +++- + 6 files changed, 28 insertions(+), 14 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index 38cc665..7dcd424 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -40,7 +40,9 @@ OBJECTS:= $(patsubst %.c, %.o, $(SOURCES)) $(SUB_OBJECTS) + HEADERS:=dtls.h hmac.h dtls_debug.h dtls_config.h uthash.h numeric.h crypto.h global.h ccm.h \ + netq.h alert.h utlist.h prng.h peer.h state.h dtls_time.h session.h \ + tinydtls.h ++CC:=@CC@ + CFLAGS:=-Wall -pedantic -std=c99 @CFLAGS@ ++CPP:=@CPP@ + CPPFLAGS:=@CPPFLAGS@ -DDTLS_CHECK_CONTENTTYPE + SUBDIRS:=tests doc platform-specific sha2 aes ecc + DISTSUBDIRS:=$(SUBDIRS) +@@ -48,7 +50,8 @@ DISTDIR=$(top_builddir)/$(package) + FILES:=Makefile.in configure configure.in dtls_config.h.in tinydtls.h.in \ + Makefile.tinydtls $(SOURCES) $(HEADERS) + LIB:=libtinydtls.a +-LDFLAGS:=@LIBS@ ++LDFLAGS:=@LDFLAGS@ ++LIBS:=@LIBS@ + ARFLAGS:=cru + doc:=doc + +@@ -100,10 +103,10 @@ dist: $(FILES) $(DISTSUBDIRS) + tar czf $(package).tar.gz $(DISTDIR) + + install: $(LIB) $(HEADERS) $(SUBDIRS) +- test -d $(libdir) || mkdir -p $(libdir) +- test -d $(includedir) || mkdir -p $(includedir) +- $(install) $(LIB) $(libdir)/ +- $(install) $(HEADERS) $(includedir)/ ++ test -d $(DESTDIR)$(libdir) || mkdir -p $(DESTDIR)$(libdir) ++ test -d $(DESTDIR)$(includedir) || mkdir -p $(DESTDIR)$(includedir) ++ $(install) $(LIB) $(DESTDIR)$(libdir)/ ++ $(install) $(HEADERS) $(DESTDIR)$(includedir)/ + for dir in $(SUBDIRS); do \ + $(MAKE) -C $$dir install="$(install)" includedir=$(includedir) install; \ + done +diff --git a/aes/Makefile.in b/aes/Makefile.in +index 7c9f6ef..9ff7799 100644 +--- a/aes/Makefile.in ++++ b/aes/Makefile.in +@@ -28,8 +28,11 @@ top_srcdir:= @top_srcdir@ + SOURCES:= rijndael.c + HEADERS:= rijndael.h + OBJECTS:= $(patsubst %.c, %.o, $(SOURCES)) ++CPP=@CPP@ + CPPFLAGS=@CPPFLAGS@ ++CC=@CC@ + CFLAGS=-Wall -std=c99 -pedantic @CFLAGS@ ++LDFLAGS=@LDFLAGS@ + LDLIBS=@LIBS@ + FILES:=Makefile.in $(SOURCES) $(HEADERS) + DISTDIR=$(top_builddir)/@PACKAGE_TARNAME@-@PACKAGE_VERSION@ +@@ -60,8 +63,8 @@ dist: $(FILES) + cp -p $(FILES) $(DISTDIR)/aes + + install: $(HEADERS) +- test -d $(includedir)/aes || mkdir -p $(includedir)/aes +- $(install) $(HEADERS) $(includedir)/aes ++ test -d $(DESTDIR)$(includedir)/aes || mkdir -p $(DESTDIR)$(includedir)/aes ++ $(install) $(HEADERS) $(DESTDIR)$(includedir)/aes + + .gitignore: + echo "core\n*~\n*.[oa]\n*.gz\n*.cap\n$(PROGRAM)\n$(DISTDIR)\n.gitignore" >$@ +diff --git a/doc/Makefile.in b/doc/Makefile.in +index a07101e..5ab0a35 100644 +--- a/doc/Makefile.in ++++ b/doc/Makefile.in +@@ -32,5 +32,5 @@ dist: doc + cp -r $(FILES) $(DISTDIR)/doc + + install: $(doc) html +- test -d $(htmldir) || mkdir -p $(htmldir) +- cp -r html/* $(htmldir) ++ test -d $(DESTDIR)$(htmldir) || mkdir -p $(DESTDIR)$(htmldir) ++ cp -r html/* $(DESTDIR)$(htmldir) +diff --git a/ecc/Makefile.in b/ecc/Makefile.in +index 2ba17a1..2086d4f 100644 +--- a/ecc/Makefile.in ++++ b/ecc/Makefile.in +@@ -36,8 +36,11 @@ include Makefile.contiki + else + ECC_OBJECTS:= $(patsubst %.c, %.o, $(ECC_SOURCES)) ecc_test.o + PROGRAMS:= testecc testfield ++CPP=@CPP@ + CPPFLAGS=@CPPFLAGS@ ++CC=@CC@ + CFLAGS=-Wall -std=c99 -pedantic @CFLAGS@ -DTEST_INCLUDE ++LDFLAGS=@LDFLAGS@ + LDLIBS=@LIBS@ + + .PHONY: all dirs clean install distclean .gitignore doc +@@ -74,8 +77,8 @@ dist: $(FILES) + cp -p $(FILES) $(DISTDIR)/ecc + + install: $(HEADERS) +- test -d $(includedir)/ecc || mkdir -p $(includedir)/ecc +- $(install) $(HEADERS) $(includedir)/ecc ++ test -d $(DESTDIR)$(includedir)/ecc || mkdir -p $(DESTDIR)$(includedir)/ecc ++ $(install) $(ECC_HEADERS) $(DESTDIR)$(includedir)/ecc + + .gitignore: + echo "core\n*~\n*.[oa]\n*.gz\n*.cap\n$(PROGRAM)\n$(DISTDIR)\n.gitignore" >$@ +diff --git a/sha2/Makefile.in b/sha2/Makefile.in +index 9f19314..69f8793 100644 +--- a/sha2/Makefile.in ++++ b/sha2/Makefile.in +@@ -28,8 +28,11 @@ top_srcdir:= @top_srcdir@ + SOURCES:= sha2.c + HEADERS:=sha2.h + OBJECTS:= $(patsubst %.c, %.o, $(SOURCES)) ++CPP=@CPP@ + CPPFLAGS=@CPPFLAGS@ -I$(top_srcdir) ++CC=@CC@ + CFLAGS=-Wall -std=c99 -pedantic @CFLAGS@ ++LDFLAGS=@LDFLAGS@ + LDLIBS=@LIBS@ + FILES:=Makefile.in $(SOURCES) $(HEADERS) README sha2prog.c sha2speed.c sha2test.pl + DISTDIR=$(top_builddir)/@PACKAGE_TARNAME@-@PACKAGE_VERSION@ +@@ -62,8 +65,8 @@ dist: $(FILES) + cp -pr testvectors $(DISTDIR)/sha2/testvectors + + install: $(HEADERS) +- test -d $(includedir)/sha2 || mkdir -p $(includedir)/sha2 +- $(install) $(HEADERS) $(includedir)/sha2 ++ test -d $(DESTDIR)$(includedir)/sha2 || mkdir -p $(DESTDIR)$(includedir)/sha2 ++ $(install) $(HEADERS) $(DESTDIR)$(includedir)/sha2 + + .gitignore: + echo "core\n*~\n*.[oa]\n*.gz\n*.cap\n$(PROGRAM)\n$(DISTDIR)\n.gitignore" >$@ +diff --git a/tests/Makefile.in b/tests/Makefile.in +index a8a2ed0..b45f440 100644 +--- a/tests/Makefile.in ++++ b/tests/Makefile.in +@@ -32,9 +32,11 @@ SOURCES:= dtls-server.c ccm-test.c prf-test.c \ + OBJECTS:= $(patsubst %.c, %.o, $(SOURCES)) + PROGRAMS:= $(patsubst %.c, %, $(SOURCES)) + HEADERS:= ++CC:=@CC@ + CFLAGS:=-Wall @CFLAGS@ ++CPP:=@CPP@ + CPPFLAGS:=-I$(top_srcdir) @CPPFLAGS@ +-LDFLAGS:=-L$(top_builddir) ++LDFLAGS:=-L$(top_builddir) @LDFLAGS@ + LDLIBS:=-ltinydtls @LIBS@ + DISTDIR=$(top_builddir)/@PACKAGE_TARNAME@-@PACKAGE_VERSION@ + FILES:=Makefile.in $(SOURCES) ccm-testdata.c #cbc_aes128-testdata.c +-- +2.7.4 + diff --git a/package/tinydtls/0002-Fix-compilation-of-tests-directory.patch b/package/tinydtls/0002-Fix-compilation-of-tests-directory.patch new file mode 100644 index 0000000000..0ab579c45e --- /dev/null +++ b/package/tinydtls/0002-Fix-compilation-of-tests-directory.patch @@ -0,0 +1,31 @@ +From c629a108f5d03cd365c0ba71143ad507f6cd97f0 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 28 Jul 2016 08:36:06 +0200 +Subject: [PATCH] Fix compilation of tests directory + +binaries in tests subdirectory depends on libtinydtls so add $(LIB) dependency +for dirs target in Makefile.in + +Signed-off-by: Fabrice Fontaine +--- + Makefile.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index 7dcd424..c493705 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -68,8 +68,8 @@ check: + echo top_builddir: $(top_builddir) + $(MAKE) -C tests check + +-dirs: $(SUBDIRS) +- for dir in $^; do \ ++dirs: $(LIB) $(SUBDIRS) ++ for dir in $(SUBDIRS); do \ + $(MAKE) -C $$dir ; \ + done + +-- +2.7.4 + diff --git a/package/tinydtls/Config.in b/package/tinydtls/Config.in new file mode 100644 index 0000000000..2f90eb2436 --- /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://sourceforge.net/projects/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 0000000000..909c8d16f5 --- /dev/null +++ b/package/tinydtls/tinydtls.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 ccf6d8fbae03fb2e0ba32878ed8e57d8b4f73538b1064df90a3e764da5fac010 tinydtls-0.8.2.tar.gz diff --git a/package/tinydtls/tinydtls.mk b/package/tinydtls/tinydtls.mk new file mode 100644 index 0000000000..fe250014ca --- /dev/null +++ b/package/tinydtls/tinydtls.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# tinydtls +# +################################################################################ + +TINYDTLS_REL = r5 +TINYDTLS_VERSION = 0.8.2 +TINYDTLS_SITE = http://downloads.sourceforge.net/project/tinydtls/$(TINYDTLS_REL) +TINYDTLS_LICENSE = MIT +TINYDTLS_LICENSE_FILES = tinydtls.h +TINYDTLS_INSTALL_STAGING = YES +TINYDTLS_STRIP_COMPONENTS = 2 +# 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/tinyhttpd/tinyhttpd.mk b/package/tinyhttpd/tinyhttpd.mk index 194249bd1f..058f6bd186 100644 --- a/package/tinyhttpd/tinyhttpd.mk +++ b/package/tinyhttpd/tinyhttpd.mk @@ -10,7 +10,7 @@ TINYHTTPD_LICENSE = GPL TINYHTTPD_LICENSE_FILES = README define TINYHTTPD_BUILD_CMDS - $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" endef 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 0000000000..88559ec012 --- /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/tinymembench.hash b/package/tinymembench/tinymembench.hash new file mode 100644 index 0000000000..813a1df429 --- /dev/null +++ b/package/tinymembench/tinymembench.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e8cfcf0817eb8430f736426bc7557273765cef0e8002a17cca51645114e723b7 tinymembench-v0.3.tar.gz diff --git a/package/tinyxml2/0001-Use-BUILD_SHARED_LIBS-cmake-standard.patch b/package/tinyxml2/0001-Use-BUILD_SHARED_LIBS-cmake-standard.patch deleted file mode 100644 index 52288c509f..0000000000 --- a/package/tinyxml2/0001-Use-BUILD_SHARED_LIBS-cmake-standard.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 69acf13fa679628259063c4d0cd17e59b8bb0b75 Mon Sep 17 00:00:00 2001 -From: xantares -Date: Fri, 14 Nov 2014 19:40:58 +0100 -Subject: [PATCH] Use BUILD_SHARED_LIBS cmake standard. - -Signed-off-by: Romain Naour ---- - CMakeLists.txt | 27 +++++++++------------------ - 1 file changed, 9 insertions(+), 18 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 91c61a4..4375bb9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -10,8 +10,8 @@ include(GNUInstallDirs) - ################################ - # set lib version here - --set(GENERIC_LIB_VERSION "2.2.0") --set(GENERIC_LIB_SOVERSION "2") -+set(GENERIC_LIB_VERSION "2.2.0") -+set(GENERIC_LIB_SOVERSION "2") - - - ################################ -@@ -46,12 +46,8 @@ endif(MSVC) - - ################################ - # Add targets --set(BUILD_STATIC_LIBS ON CACHE BOOL "Set to ON to build static libraries") --if(BUILD_STATIC_LIBS) -- add_library(tinyxml2static STATIC tinyxml2.cpp tinyxml2.h) -- set_target_properties(tinyxml2static PROPERTIES OUTPUT_NAME tinyxml2) --endif(BUILD_STATIC_LIBS) --add_library(tinyxml2 SHARED tinyxml2.cpp tinyxml2.h) -+option(BUILD_SHARED_LIBS "build shared or static libraries" ON) -+add_library(tinyxml2 tinyxml2.cpp tinyxml2.h) - set_target_properties(tinyxml2 PROPERTIES - COMPILE_DEFINITIONS "TINYXML2_EXPORT" - VERSION "${GENERIC_LIB_VERSION}" -@@ -63,16 +59,11 @@ add_dependencies(test ${TARGET_DATA_COPY}) - target_link_libraries(test tinyxml2) - - --if(BUILD_STATIC_LIBS) -- install(TARGETS tinyxml2 tinyxml2static -- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) --else(BUILD_STATIC_LIBS) -- install(TARGETS tinyxml2 -- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) --endif(BUILD_STATIC_LIBS) -+install(TARGETS tinyxml2 -+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ - install(FILES tinyxml2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) - - foreach(p LIB INCLUDE) --- -1.9.3 - diff --git a/package/tinyxml2/0002-Rename-test-fixed-cmake-warning.patch b/package/tinyxml2/0002-Rename-test-fixed-cmake-warning.patch deleted file mode 100644 index 409269ac4b..0000000000 --- a/package/tinyxml2/0002-Rename-test-fixed-cmake-warning.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 77631a9cf500a578338a83bc230c419bf2a05b50 Mon Sep 17 00:00:00 2001 -From: xantares -Date: Fri, 14 Nov 2014 19:46:18 +0100 -Subject: [PATCH] Rename test, fixed cmake warning. - -Signed-off-by: Romain Naour ---- - CMakeLists.txt | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4375bb9..4a8f91d 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -53,10 +53,10 @@ set_target_properties(tinyxml2 PROPERTIES - VERSION "${GENERIC_LIB_VERSION}" - SOVERSION "${GENERIC_LIB_SOVERSION}") - --add_executable(test xmltest.cpp) --add_dependencies(test tinyxml2) --add_dependencies(test ${TARGET_DATA_COPY}) --target_link_libraries(test tinyxml2) -+add_executable(xmltest xmltest.cpp) -+add_dependencies(xmltest tinyxml2) -+add_dependencies(xmltest ${TARGET_DATA_COPY}) -+target_link_libraries(xmltest tinyxml2) - - - install(TARGETS tinyxml2 -@@ -76,4 +76,4 @@ endforeach() - configure_file(tinyxml2.pc.in tinyxml2.pc @ONLY) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/tinyxml2.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) - --#add_test(test ${SAMPLE_NAME} COMMAND $) -+#add_test(xmltest ${SAMPLE_NAME} COMMAND $) --- -1.9.3 - diff --git a/package/tinyxml2/tinyxml2.hash b/package/tinyxml2/tinyxml2.hash new file mode 100644 index 0000000000..acbee0931a --- /dev/null +++ b/package/tinyxml2/tinyxml2.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 128aa1553e88403833e0cccf1b651f45ce87bc207871f53fdcc8e7f9ec795747 tinyxml2-3.0.0.tar.gz diff --git a/package/tinyxml2/tinyxml2.mk b/package/tinyxml2/tinyxml2.mk index 370049b916..053e46eaf8 100644 --- a/package/tinyxml2/tinyxml2.mk +++ b/package/tinyxml2/tinyxml2.mk @@ -4,7 +4,7 @@ # ################################################################################ -TINYXML2_VERSION = 2.2.0 +TINYXML2_VERSION = 3.0.0 TINYXML2_SITE = $(call github,leethomason,tinyxml2,$(TINYXML2_VERSION)) TINYXML2_LICENSE = zlib TINYXML2_LICENSE_FILES = readme.md diff --git a/package/tmux/0001-compat-don-t-re-define-program_invocation_short_name.patch b/package/tmux/0001-compat-don-t-re-define-program_invocation_short_name.patch new file mode 100644 index 0000000000..bddc2c720d --- /dev/null +++ b/package/tmux/0001-compat-don-t-re-define-program_invocation_short_name.patch @@ -0,0 +1,42 @@ +From 9b18a98614a9f201b0883c2b15e7c7bde0aa0ff2 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 5 Feb 2017 17:12:00 +0100 +Subject: [PATCH] compat: don't re-define program_invocation_short_name + +program_invocation_short_name is defined in errno.h, and its definition +can differ between the various C libraries: glibc defines it as: + extern char *program_invocation_short_name; + +while uClibc defines it as: + extern const char *program_invocation_short_name; + +So there is not simple solution to know the prototype. + +But since it is defined in errno.h, there is no reason to try and define +it ourselves; let's just trust what the header provides. + +Signed-off-by: "Yann E. MORIN" +--- + compat/getprogname.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/compat/getprogname.c b/compat/getprogname.c +index 80a496d..ad619fc 100644 +--- a/compat/getprogname.c ++++ b/compat/getprogname.c +@@ -19,11 +19,10 @@ + #include "compat.h" + + #if defined(HAVE_PROGRAM_INVOCATION_SHORT_NAME) ++#include + const char * + getprogname(void) + { +- extern char *program_invocation_short_name; +- + return (program_invocation_short_name); + } + #elif defined(HAVE___PROGNAME) +-- +2.7.4 + diff --git a/package/tmux/0001-remove-use-of-sys-cdefs.h.patch b/package/tmux/0001-remove-use-of-sys-cdefs.h.patch deleted file mode 100644 index 929953fa9d..0000000000 --- a/package/tmux/0001-remove-use-of-sys-cdefs.h.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 29e4794ca396a8db8a468ec74559922d2af5a987 Mon Sep 17 00:00:00 2001 -From: Nicholas Marriott -Date: Tue, 24 Nov 2015 18:46:50 +0000 -Subject: [PATCH] -sys/queue.h in proc.c, and nuke the unnecessary C++ header - guards stuff and sys/cdefs.h in vis.h (it causes problems on some platforms). - Reported by someone on GitHub, issue 212. - ---- -Backported from master upstream to fix musl build -https://github.com/tmux/tmux/commit/7b085136a7291cbcdfcc53182fbd13aaca70306e - -proc.c does not exist on version 2.1 - -Signed-off-by: Ricardo Martincoski ---- - compat/vis.h | 5 ----- - 1 file changed, 5 deletions(-) - -diff --git a/compat/vis.h b/compat/vis.h -index 6795139..9f12d23 100644 ---- a/compat/vis.h -+++ b/compat/vis.h -@@ -73,9 +73,6 @@ - */ - #define UNVIS_END 1 /* no more characters */ - --#include -- --__BEGIN_DECLS - char *vis(char *, int, int, int); - int strvis(char *, const char *, int); - int stravis(char **, const char *, int); -@@ -85,6 +82,4 @@ int strunvis(char *, const char *); - int unvis(char *, char, int *, int); - ssize_t strnunvis(char *, const char *, size_t); - --__END_DECLS -- - #endif /* !_VIS_H_ */ --- -1.9.1 - diff --git a/package/tmux/Config.in b/package/tmux/Config.in index 61719e4866..756f38a088 100644 --- a/package/tmux/Config.in +++ b/package/tmux/Config.in @@ -1,10 +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. + 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 index e732aa24bb..9195a1689c 100644 --- a/package/tmux/tmux.hash +++ b/package/tmux/tmux.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 31564e7bf4bcef2defb3cb34b9e596bd43a3937cad9e5438701a81a5a9af6176 tmux-2.1.tar.gz +sha256 55313e132f0f42de7e020bf6323a1939ee02ab79c48634aa07475db41573852b tmux-2.3.tar.gz diff --git a/package/tmux/tmux.mk b/package/tmux/tmux.mk index 40f1a13898..f6dd1a9cc6 100644 --- a/package/tmux/tmux.mk +++ b/package/tmux/tmux.mk @@ -4,7 +4,7 @@ # ################################################################################ -TMUX_VERSION = 2.1 +TMUX_VERSION = 2.3 TMUX_SITE = https://github.com/tmux/tmux/releases/download/$(TMUX_VERSION) TMUX_LICENSE = ISC TMUX_LICENSE_FILES = README diff --git a/package/tor/0001-openssl-libz.patch b/package/tor/0001-openssl-libz.patch index 855b1c5dbf..93fb942a40 100644 --- a/package/tor/0001-openssl-libz.patch +++ b/package/tor/0001-openssl-libz.patch @@ -3,7 +3,7 @@ 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] +[Bernd: rebased for tor-0.2.7.6, 0.2.8.10 & 0.2.9.9] Signed-off-by: Bernd Kuhls Signed-off-by: Vicente Olivert Riera @@ -11,7 +11,7 @@ Signed-off-by: Vicente Olivert Riera diff -uNr tor-0.2.7.6.org/configure.ac tor-0.2.7.6/configure.ac --- tor-0.2.7.6.org/configure.ac 2015-12-10 16:15:25.000000000 +0100 +++ tor-0.2.7.6/configure.ac 2016-01-31 20:21:34.850408145 +0100 -@@ -607,11 +607,11 @@ +@@ -612,11 +612,11 @@ fi ]) @@ -19,7 +19,7 @@ diff -uNr tor-0.2.7.6.org/configure.ac tor-0.2.7.6/configure.ac +TOR_SEARCH_LIBRARY(openssl, $tryssldir, [-lssl -lcrypto -lz $TOR_LIB_GDI], [#include ], [void RAND_add(const void *buf, int num, double entropy);], - [RAND_add((void*)0,0,0); exit(0);], [], + [RAND_add((void*)0,0,0);], [], - [/usr/local/openssl /usr/lib/openssl /usr/local/ssl /usr/lib/ssl /usr/local /usr/athena /opt/openssl]) + []) @@ -28,9 +28,9 @@ diff -uNr tor-0.2.7.6.org/configure.ac tor-0.2.7.6/configure.ac diff -uNr tor-0.2.7.6.org/src/or/include.am tor-0.2.7.6/src/or/include.am --- tor-0.2.7.6.org/src/or/include.am 2015-12-08 18:35:17.000000000 +0100 +++ tor-0.2.7.6/src/or/include.am 2016-01-31 20:22:09.322777527 +0100 -@@ -110,7 +110,7 @@ - src_or_tor_LDADD = src/or/libtor.a src/common/libor.a \ - src/common/libor-crypto.a $(LIBDONNA) \ +@@ -108,7 +108,7 @@ + src_or_tor_LDADD = src/or/libtor.a src/common/libor.a src/common/libor-ctime.a \ + src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \ src/common/libor-event.a src/trunnel/libor-trunnel.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ \ + @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ @@ -40,10 +40,10 @@ diff -uNr tor-0.2.7.6.org/src/or/include.am tor-0.2.7.6/src/or/include.am diff -uNr tor-0.2.7.6.org/src/test/include.am tor-0.2.7.6/src/test/include.am --- tor-0.2.7.6.org/src/test/include.am 2015-12-08 18:35:17.000000000 +0100 +++ tor-0.2.7.6/src/test/include.am 2016-01-31 20:25:59.673127854 +0100 -@@ -127,8 +127,8 @@ - src_test_test_LDADD = src/or/libtor-testing.a src/common/libor-testing.a \ - src/common/libor-crypto-testing.a $(LIBDONNA) src/common/libor.a \ - src/common/libor-event-testing.a src/trunnel/libor-trunnel-testing.a \ +@@ -177,8 +177,8 @@ + src/common/libor-ctime-testing.a \ + src/common/libor-event-testing.a \ + src/trunnel/libor-trunnel-testing.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \ + @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ @@ -51,9 +51,9 @@ diff -uNr tor-0.2.7.6.org/src/test/include.am tor-0.2.7.6/src/test/include.am @TOR_SYSTEMD_LIBS@ src_test_test_slow_CPPFLAGS = $(src_test_test_CPPFLAGS) -@@ -146,8 +146,8 @@ - src_test_bench_LDADD = src/or/libtor.a src/common/libor.a \ - src/common/libor-crypto.a $(LIBDONNA) \ +@@ -200,8 +200,8 @@ + src/common/libor-ctime.a \ + src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \ src/common/libor-event.a src/trunnel/libor-trunnel.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \ @@ -62,21 +62,21 @@ diff -uNr tor-0.2.7.6.org/src/test/include.am tor-0.2.7.6/src/test/include.am @TOR_SYSTEMD_LIBS@ src_test_test_workqueue_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \ -@@ -156,8 +156,8 @@ - src/common/libor-testing.a \ - src/common/libor-crypto-testing.a $(LIBDONNA) \ +@@ -211,8 +211,8 @@ + src/common/libor-ctime-testing.a \ + src/common/libor-crypto-testing.a $(LIBKECCAK_TINY) $(LIBDONNA) \ src/common/libor-event-testing.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ + @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ + @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ - noinst_HEADERS+= \ - src/test/fakechans.h \ -@@ -174,8 +174,8 @@ - src_test_test_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ + src_test_test_timers_CPPFLAGS = $(src_test_test_CPPFLAGS) + src_test_test_timers_CFLAGS = $(src_test_test_CFLAGS) +@@ -245,8 +245,8 @@ src_test_test_ntor_cl_LDADD = src/or/libtor.a src/common/libor.a \ - src/common/libor-crypto.a $(LIBDONNA) \ + src/common/libor-ctime.a \ + src/common/libor-crypto.a $(LIBKECCAK_TINY) $(LIBDONNA) \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ + @TOR_LIB_MATH@ \ @@ -87,30 +87,30 @@ diff -uNr tor-0.2.7.6.org/src/test/include.am tor-0.2.7.6/src/test/include.am diff -uNr tor-0.2.7.6.org/src/tools/include.am tor-0.2.7.6/src/tools/include.am --- tor-0.2.7.6.org/src/tools/include.am 2015-11-13 14:33:26.000000000 +0100 +++ tor-0.2.7.6/src/tools/include.am 2016-01-31 20:27:29.954004495 +0100 -@@ -21,7 +21,7 @@ - src_tools_tor_gencert_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ - src_tools_tor_gencert_LDADD = src/common/libor.a src/common/libor-crypto.a \ +@@ -26,7 +26,7 @@ + src/common/libor-ctime.a \ + $(LIBKECCAK_TINY) \ $(LIBDONNA) \ -- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ -+ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ - @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ +- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ ++ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ if COVERAGE_ENABLED -@@ -32,7 +32,7 @@ - src_tools_tor_cov_gencert_LDADD = src/common/libor-testing.a \ - src/common/libor-crypto-testing.a \ +@@ -39,7 +39,7 @@ + src/common/libor-ctime-testing.a \ + $(LIBKECCAK_TINY) \ $(LIBDONNA) \ -- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ -+ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ - @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ +- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ ++ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ endif -@@ -40,7 +40,7 @@ - src_tools_tor_checkkey_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ - src_tools_tor_checkkey_LDADD = src/common/libor.a src/common/libor-crypto.a \ +@@ -50,7 +50,7 @@ + src/common/libor-crypto.a \ + $(LIBKECCAK_TINY) \ $(LIBDONNA) \ -- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ -+ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ - @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ +- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ ++ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ EXTRA_DIST += src/tools/tor-fw-helper/README diff --git a/package/tor/tor.hash b/package/tor/tor.hash index a836476f46..470fc4829b 100644 --- a/package/tor/tor.hash +++ b/package/tor/tor.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 493a8679f904503048114aca6467faef56861206bab8283d858f37141d95105d tor-0.2.7.6.tar.gz +sha256 33325d2b250fd047ba2ddc5d11c2190c4e2951f4b03ec48ebd8bf0666e990d43 tor-0.2.9.9.tar.gz diff --git a/package/tor/tor.mk b/package/tor/tor.mk index 6a622cf0ef..bb0fbb16b5 100644 --- a/package/tor/tor.mk +++ b/package/tor/tor.mk @@ -4,7 +4,7 @@ # ################################################################################ -TOR_VERSION = 0.2.7.6 +TOR_VERSION = 0.2.9.9 TOR_SITE = https://dist.torproject.org TOR_LICENSE = BSD-3c TOR_LICENSE_FILES = LICENSE @@ -26,6 +26,10 @@ TOR_CONF_OPTS += \ --enable-static-zlib endif +ifeq ($(BR2_PACKAGE_LIBCAP),y) +TOR_DEPENDENCIES += libcap +endif + ifeq ($(BR2_arm)$(BR2_armeb)$(BR2_i386)$(BR2_x86_64)$(BR2_PACKAGE_LIBSECCOMP),yy) TOR_CONF_OPTS += --enable-seccomp TOR_DEPENDENCIES += libseccomp diff --git a/package/torsmo/Config.in b/package/torsmo/Config.in deleted file mode 100644 index 5c18ac6f48..0000000000 --- a/package/torsmo/Config.in +++ /dev/null @@ -1,11 +0,0 @@ -config BR2_PACKAGE_TORSMO - bool "torsmo" - depends on BR2_DEPRECATED_SINCE_2015_11 - depends on BR2_PACKAGE_XORG7 - depends on BR2_USE_MMU # fork() - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XLIB_LIBXEXT - help - Torsmo is a system monitor that sits in the corner of your desktop. - - http://mirror.egtvedt.no/avr32linux.org/twiki/pub/Main/Torsmo diff --git a/package/torsmo/torsmo.hash b/package/torsmo/torsmo.hash deleted file mode 100644 index 8bbf9dc87a..0000000000 --- a/package/torsmo/torsmo.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally calculated -sha256 6a6bc82e71c841ba9359f0ffe370e57ef7b04b49a448252bb0c1c28fc10e964c torsmo-0.18.tar.gz diff --git a/package/torsmo/torsmo.mk b/package/torsmo/torsmo.mk deleted file mode 100644 index 96a797603f..0000000000 --- a/package/torsmo/torsmo.mk +++ /dev/null @@ -1,18 +0,0 @@ -################################################################################ -# -# torsmo -# -################################################################################ - -TORSMO_VERSION = 0.18 -TORSMO_SITE = http://mirror.egtvedt.no/avr32linux.org/twiki/pub/Main/Torsmo -TORSMO_LICENSE = BSD-3c -TORSMO_LICENSE_FILES = COPYING - -# help2man doesn't work when cross compiling -TORSMO_CONF_ENV = ac_cv_path_HELP2MAN='' -TORSMO_CONF_OPTS = --x-includes="-I$(STAGING_DIR)/usr/include/X11" --x-libraries="-I$(STAGING_DIR)/usr/lib" --with-x - -TORSMO_DEPENDENCIES = xlib_libX11 xlib_libXext - -$(eval $(autotools-package)) diff --git a/package/tovid/Config.in b/package/tovid/Config.in index 1288f849e2..d8052ea334 100644 --- a/package/tovid/Config.in +++ b/package/tovid/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_TOVID depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mplayer # The below dependencies are runtime dependencies only select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps_ng select BR2_PACKAGE_DVDAUTHOR @@ -30,6 +31,7 @@ comment "tovid needs a toolchain w/ threads, C++, wchar" depends on BR2_USE_MMU depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS \ || !BR2_INSTALL_LIBSTDCPP \ || !BR2_USE_WCHAR diff --git a/package/tpm-tools/tpm-tools.mk b/package/tpm-tools/tpm-tools.mk index 72afc443d8..c90edbb88c 100644 --- a/package/tpm-tools/tpm-tools.mk +++ b/package/tpm-tools/tpm-tools.mk @@ -5,7 +5,6 @@ ################################################################################ TPM_TOOLS_VERSION = 1.3.8 -TPM_TOOLS_SOURCE = tpm-tools-$(TPM_TOOLS_VERSION).tar.gz TPM_TOOLS_SITE = http://downloads.sourceforge.net/project/trousers/tpm-tools/$(TPM_TOOLS_VERSION) TPM_TOOLS_STRIP_COMPONENTS = 2 TPM_TOOLS_LICENSE = Common Public License Version 1.0 diff --git a/package/trace-cmd/0001-trace-cmd-Fix-trace-record.c-with-non-ptrace-compile.patch b/package/trace-cmd/0001-trace-cmd-Fix-trace-record.c-with-non-ptrace-compile.patch new file mode 100644 index 0000000000..5f7d2bab71 --- /dev/null +++ b/package/trace-cmd/0001-trace-cmd-Fix-trace-record.c-with-non-ptrace-compile.patch @@ -0,0 +1,32 @@ +From bdfcddd4f135dc1d4fefb0373d9ebb93ef5110cb Mon Sep 17 00:00:00 2001 +From: "Steven Rostedt (Red Hat)" +Date: Mon, 7 Dec 2015 16:41:19 -0500 +Subject: [PATCH] trace-cmd: Fix trace-record.c with non ptrace compile + +Fix ptrace_wait() when NO_PTRACE=1 is defined. + +Status: upstream + +Signed-off-by: Steven Rostedt +[Romain backport to 2.6] +Signed-off-by: Romain Naour +--- + trace-record.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/trace-record.c b/trace-record.c +index df82883..f83ec4b 100644 +--- a/trace-record.c ++++ b/trace-record.c +@@ -1099,7 +1099,7 @@ static void ptrace_wait(enum trace_type type, int main_pid) + (!WIFEXITED(status) || pid != main_pid)); + } + #else +-static inline void ptrace_wait(int main_pid) { } ++static inline void ptrace_wait(enum trace_type type, int main_pid) { } + static inline void enable_ptrace(void) { } + static inline void ptrace_attach(int pid) { } + +-- +2.5.5 + diff --git a/package/transmission/0003-miniupnpc-cross.patch b/package/transmission/0003-miniupnpc-cross.patch new file mode 100644 index 0000000000..5037c2e67a --- /dev/null +++ b/package/transmission/0003-miniupnpc-cross.patch @@ -0,0 +1,31 @@ +Fix libminiupnpc version detection + +Problem is known upstream: https://trac.transmissionbt.com/ticket/6140 + +For buildroot we know the libminiupnpc version so we hard-code 2.0. + +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-02 21:48:13.452385686 +0200 +@@ -386,18 +386,7 @@ + dnl MINIUPNPC_API_VERSION and we won't have to figure + dnl it out on our own + if test "x$upnp_version" = "xunknown" ; then +- AC_RUN_IFELSE( +- [AC_LANG_PROGRAM( +- [#include +- #include ], +- [#ifdef MINIUPNPC_API_VERSION +- return EXIT_SUCCESS; +- #else +- return EXIT_FAILURE; +- #endif] +- )], +- [upnp_version=">= 1.7"] +- ) ++ upnp_version="2.0" + fi + + dnl Or maybe it's miniupnp 1.6 diff --git a/package/transmission/0004-fix-utp-include.patch b/package/transmission/0004-fix-utp-include.patch new file mode 100644 index 0000000000..db8b5ab39b --- /dev/null +++ b/package/transmission/0004-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/0005-uClibc-ng-since-1.0.18-has-sys-quota.h-synced-with-G.patch b/package/transmission/0005-uClibc-ng-since-1.0.18-has-sys-quota.h-synced-with-G.patch new file mode 100644 index 0000000000..91a962a6d8 --- /dev/null +++ b/package/transmission/0005-uClibc-ng-since-1.0.18-has-sys-quota.h-synced-with-G.patch @@ -0,0 +1,29 @@ +From 8682fe1bad44acc06154003ca9c9163b917bf4e3 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Thu, 29 Sep 2016 19:52:49 +0200 +Subject: [PATCH] uClibc-ng since 1.0.18 has sys/quota.h synced with GNU libc + +Signed-off-by: Waldemar Brodkorb + +Pull Request: +https://github.com/transmission/transmission/pull/42 +--- + libtransmission/platform-quota.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libtransmission/platform-quota.c b/libtransmission/platform-quota.c +index 58c518a..57377ef 100644 +--- a/libtransmission/platform-quota.c ++++ b/libtransmission/platform-quota.c +@@ -284,7 +284,7 @@ getquota (const char * device) + spaceused = (int64_t) dq.dqb_curblocks >> 1; + #elif defined(__APPLE__) + spaceused = (int64_t) dq.dqb_curbytes; +-#elif defined(__UCLIBC__) ++#elif defined(__UCLIBC__) && (__UCLIBC_MAJOR__ == 0 || (__UCLIBC_MAJOR__ == 1 && __UCLIBC_SUBLEVEL__ <= 17)) + spaceused = (int64_t) btodb(dq.dqb_curblocks); + #elif defined(__sun) || (defined(_LINUX_QUOTA_VERSION) && _LINUX_QUOTA_VERSION < 2) + spaceused = (int64_t) dq.dqb_curblocks >> 1; +-- +2.1.4 + diff --git a/package/transmission/0006-libsystemd.patch b/package/transmission/0006-libsystemd.patch new file mode 100644 index 0000000000..b32aff211d --- /dev/null +++ b/package/transmission/0006-libsystemd.patch @@ -0,0 +1,133 @@ +From 0862099d0bf5a3ec8b2e9d538458d612897741a2 Mon Sep 17 00:00:00 2001 +From: Mike Gelfand +Date: Sat, 23 Apr 2016 16:13:25 +0000 +Subject: [PATCH] #5921: Use libsystemd instead of libsystemd-daemon (original + patches by Sandro Tosi and Mike Gilbert) + +In systemd v209, released over two years ago, the various libsystemd-* +libraries (libsystemd-journal.so, libsystemd-login.so, libsystem-daemon.so, +libsystemd-id128.so) were merged into a single libsystemd.so library to +reduce code duplication and avoid cyclic dependencies. + +Downloaded from upstream commit: +https://github.com/transmission/transmission/commit/0862099d0bf5a3ec8b2e9d538458d612897741a2 + +Signed-off-by: Bernd Kuhls +--- + CMakeLists.txt | 4 ++-- + configure.ac | 16 ++++++++-------- + daemon/CMakeLists.txt | 8 ++++---- + daemon/Makefile.am | 4 ++-- + daemon/daemon.c | 2 +- + 5 files changed, 17 insertions(+), 17 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8b324dc..356fc2f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -398,9 +398,9 @@ endif() + if(WITH_SYSTEMD) + tr_get_required_flag(WITH_SYSTEMD SYSTEMD_IS_REQUIRED) + +- pkg_check_modules(SYSTEMD_DAEMON ${SYSTEMD_IS_REQUIRED} libsystemd-daemon) ++ pkg_check_modules(SYSTEMD ${SYSTEMD_IS_REQUIRED} libsystemd) + +- tr_fixup_auto_option(WITH_SYSTEMD SYSTEMD_DAEMON_FOUND SYSTEMD_IS_REQUIRED) ++ tr_fixup_auto_option(WITH_SYSTEMD SYSTEMD_FOUND SYSTEMD_IS_REQUIRED) + endif() + + include_directories(${CMAKE_BINARY_DIR}) +diff --git a/configure.ac b/configure.ac +index 92e4372..b64f2a3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -240,15 +240,15 @@ dnl + dnl file monitoring for the daemon + + # Check whether to enable systemd startup notification. +-# This requires libsystemd-daemon. +-AC_ARG_WITH([systemd-daemon], AS_HELP_STRING([--with-systemd-daemon], ++# This requires libsystemd. ++AC_ARG_WITH([systemd], AS_HELP_STRING([--with-systemd], + [Add support for systemd startup notification (default is autodetected)]), +- [USE_SYSTEMD_DAEMON=$withval], [USE_SYSTEMD_DAEMON=auto]) +-AS_IF([test "x$USE_SYSTEMD_DAEMON" != "xno"], [ +- PKG_CHECK_MODULES([SYSTEMD_DAEMON], [libsystemd-daemon], +- [AC_DEFINE(USE_SYSTEMD_DAEMON,1,[Use systemd startup notification])], +- [AS_IF([test "x$USE_SYSTEMD_DAEMON" = "xyes"], +- [AC_MSG_ERROR([systemd startup notification support requested, but libsystemd-daemon not found.])] ++ [USE_SYSTEMD=$withval], [USE_SYSTEMD=auto]) ++AS_IF([test "x$USE_SYSTEMD" != "xno"], [ ++ PKG_CHECK_MODULES([SYSTEMD], [libsystemd], ++ [AC_DEFINE(USE_SYSTEMD,1,[Use systemd startup notification])], ++ [AS_IF([test "x$USE_SYSTEMD" = "xyes"], ++ [AC_MSG_ERROR([systemd startup notification support requested, but libsystemd not found.])] + )] + ) + ]) +diff --git a/daemon/CMakeLists.txt b/daemon/CMakeLists.txt +index e8f8b34..8ec3b95 100644 +--- a/daemon/CMakeLists.txt ++++ b/daemon/CMakeLists.txt +@@ -1,7 +1,7 @@ + project(trdaemon) + + if(WITH_SYSTEMD) +- add_definitions(-DUSE_SYSTEMD_DAEMON) ++ add_definitions(-DUSE_SYSTEMD) + endif() + + include_directories( +@@ -37,14 +37,14 @@ add_executable(${TR_NAME}-daemon + ${${PROJECT_NAME}_WIN32_RC_FILE}) + + set_target_properties(${TR_NAME}-daemon PROPERTIES +- COMPILE_FLAGS "${SYSTEMD_DAEMON_CFLAGS}" +- LINK_FLAGS "${SYSTEMD_DAEMON_LDFLAGS}" ++ COMPILE_FLAGS "${SYSTEMD_CFLAGS}" ++ LINK_FLAGS "${SYSTEMD_LDFLAGS}" + ) + + target_link_libraries(${TR_NAME}-daemon + ${TR_NAME} + ${EVENT2_LIBRARIES} +- ${SYSTEMD_DAEMON_LIBRARIES} ++ ${SYSTEMD_LIBRARIES} + ) + + tr_win32_app_info(${PROJECT_NAME}_remote_WIN32_RC_FILE +diff --git a/daemon/Makefile.am b/daemon/Makefile.am +index 677f765..34d7076 100644 +--- a/daemon/Makefile.am ++++ b/daemon/Makefile.am +@@ -3,7 +3,7 @@ AM_CPPFLAGS = -I@top_srcdir@ -DEMBEDDED + AM_CFLAGS = \ + @LIBEVENT_CFLAGS@ \ + @LIBCURL_CFLAGS@ \ +- @SYSTEMD_DAEMON_CFLAGS@ \ ++ @SYSTEMD_CFLAGS@ \ + @ZLIB_CFLAGS@ \ + @PTHREAD_CFLAGS@ + +@@ -29,7 +29,7 @@ LDADD = \ + @LIBCURL_LIBS@ \ + @CRYPTO_LIBS@ \ + @INTLLIBS@ \ +- @SYSTEMD_DAEMON_LIBS@ \ ++ @SYSTEMD_LIBS@ \ + @ZLIB_LIBS@ \ + @PTHREAD_LIBS@ \ + ${LIBM} +diff --git a/daemon/daemon.c b/daemon/daemon.c +index 40ac5a6..62ac715 100644 +--- a/daemon/daemon.c ++++ b/daemon/daemon.c +@@ -33,7 +33,7 @@ + #include + #include + +-#ifdef USE_SYSTEMD_DAEMON ++#ifdef USE_SYSTEMD + #include + #else + static void sd_notify (int status UNUSED, const char * str UNUSED) { } diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk index c8d377327d..923ba409d3 100644 --- a/package/transmission/transmission.mk +++ b/package/transmission/transmission.mk @@ -5,7 +5,7 @@ ################################################################################ TRANSMISSION_VERSION = 2.92 -TRANSMISSION_SITE = http://download.transmissionbt.com/files +TRANSMISSION_SITE = https://github.com/transmission/transmission-releases/raw/master TRANSMISSION_SOURCE = transmission-$(TRANSMISSION_VERSION).tar.xz TRANSMISSION_DEPENDENCIES = \ host-pkgconf \ @@ -21,6 +21,17 @@ TRANSMISSION_CONF_OPTS = \ TRANSMISSION_LICENSE = GPLv2 or GPLv3 with OpenSSL exception TRANSMISSION_LICENSE_FILES = COPYING +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 diff --git a/package/tremor/tremor.mk b/package/tremor/tremor.mk index 97b0ce36e4..2a791b6729 100644 --- a/package/tremor/tremor.mk +++ b/package/tremor/tremor.mk @@ -16,9 +16,17 @@ 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) -TREMOR_CONF_ENV = \ - CFLAGS="$(TARGET_CFLAGS) -marm" +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/0001-eventtable.h-use-correct-array-sizes-to-fix-building.patch b/package/triggerhappy/0001-eventtable.h-use-correct-array-sizes-to-fix-building.patch new file mode 100644 index 0000000000..80f264037f --- /dev/null +++ b/package/triggerhappy/0001-eventtable.h-use-correct-array-sizes-to-fix-building.patch @@ -0,0 +1,66 @@ +From d3cfa80631a7e314fee9b2e0822e403fcf2a5c5c Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sun, 31 Jul 2016 10:28:43 +0200 +Subject: [PATCH] eventtable.h: use correct array sizes to fix building against + 4.7+ headers +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +During the 4.7 development cycle, commit 9a9b6aa6a8 (Input: add +SW_PEN_INSERTED define) got added, which has the same numerical value as +SW_MAX: + ++#define SW_PEN_INSERTED 0x0f /* set = pen inserted */ ++#define SW_MAX 0x0f + +This breaks the build as the SW_NAME array is sized using the SW_MAX macro: + +In file included from eventtable.h:21:0, + from eventnames.c:11: +evtable_SW.inc:17:1: error: array index in initializer exceeds array bounds + EV_MAP(SW_PEN_INSERTED), + ^ +evtable_SW.inc:17:1: error: (near initialization for ‘SW_NAME’) + +The arrays should be sized using the _CNT (which is MAX+1) macros +instead of _MAX. These got added during the 2.6.24 development cycle, +so it should be safe to do so unconditially: + +commit 7b19ada2ed3c1eccb9fe94d74b05e1428224663d +Author: Jiri Slaby +Date: Thu Oct 18 23:40:32 2007 -0700 + + get rid of input BIT* duplicate defines + +Signed-off-by: Peter Korsgaard +--- + eventtable.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/eventtable.h b/eventtable.h +index 349d9d7..7cd99aa 100644 +--- a/eventtable.h ++++ b/eventtable.h +@@ -8,15 +8,15 @@ + + #define EV_MAP( N ) [ N ] = #N + +-static const char *EV_NAME[EV_MAX] = { ++static const char *EV_NAME[EV_CNT] = { + #include "evtable_EV.inc" + }; + +-static const char *KEY_NAME[KEY_MAX] = { ++static const char *KEY_NAME[KEY_CNT] = { + #include "evtable_KEY.inc" + #include "evtable_BTN.inc" + }; + +-static const char *SW_NAME[SW_MAX] = { ++static const char *SW_NAME[SW_CNT] = { + #include "evtable_SW.inc" + }; +-- +2.8.1 + diff --git a/package/trinity/Config.in b/package/trinity/Config.in index 5c4c7c801d..0ce1f9aa27 100644 --- a/package/trinity/Config.in +++ b/package/trinity/Config.in @@ -1,9 +1,22 @@ -config BR2_PACKAGE_TRINITY - bool "trinity" +config BR2_PACKAGE_TRINITY_ARCH_SUPPORTS + bool + default y + depends on BR2_USE_MMU # fork() 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_USES_MUSL # FTW_ACTIONRETVAL + 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 uClibc or glibc toolchain w/ headers >= 3.4" + depends on BR2_PACKAGE_TRINITY_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_MUSL || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 diff --git a/package/trousers/0003-tsp_tcsi_param-include-limits.h-to-fix-musl-build.patch b/package/trousers/0003-tsp_tcsi_param-include-limits.h-to-fix-musl-build.patch new file mode 100644 index 0000000000..f88e47ac27 --- /dev/null +++ b/package/trousers/0003-tsp_tcsi_param-include-limits.h-to-fix-musl-build.patch @@ -0,0 +1,29 @@ +From 66bbe0a87818a1e3c721780dc33b2d81fdf4a774 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 21 Aug 2016 23:32:10 +0200 +Subject: [PATCH] tsp_tcsi_param: include limits.h to fix musl build + +The musl libc doesn't provide , use +instead. + +Signed-off-by: Romain Naour +--- + src/tspi/tsp_tcsi_param.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tspi/tsp_tcsi_param.c b/src/tspi/tsp_tcsi_param.c +index 670f86f..8f2b4e4 100644 +--- a/src/tspi/tsp_tcsi_param.c ++++ b/src/tspi/tsp_tcsi_param.c +@@ -11,7 +11,7 @@ + #include + #include + #include +-#include ++#include + #include "trousers/tss.h" + #include "trousers/trousers.h" + #include "trousers_types.h" +-- +2.5.5 + diff --git a/package/trousers/0004-Check-that-getpwent_r-is-available-before-using-it.patch b/package/trousers/0004-Check-that-getpwent_r-is-available-before-using-it.patch new file mode 100644 index 0000000000..7014ad7afb --- /dev/null +++ b/package/trousers/0004-Check-that-getpwent_r-is-available-before-using-it.patch @@ -0,0 +1,80 @@ +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 +--- + configure.in | 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.in ++++ b/configure.in +@@ -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/trousers.mk b/package/trousers/trousers.mk index 70daa88172..41129eb053 100644 --- a/package/trousers/trousers.mk +++ b/package/trousers/trousers.mk @@ -5,26 +5,28 @@ ############################################################## TROUSERS_VERSION = 0.3.13 -TROUSERS_SOURCE = trousers-$(TROUSERS_VERSION).tar.gz TROUSERS_SITE = http://downloads.sourceforge.net/project/trousers/trousers/$(TROUSERS_VERSION) TROUSERS_LICENSE = BSD-3c TROUSERS_LICENSE_FILES = LICENSE TROUSERS_INSTALL_STAGING = YES # Need autoreconf because of a patch touching configure.in and Makefile.am TROUSERS_AUTORECONF = YES -TROUSERS_DEPENDENCIES = openssl +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 -# uClibc toolchain for ARC doesn't support PIE at the moment -ifeq ($(BR2_arc),y) +ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) TROUSERS_CONF_ENV += \ ax_cv_check_cflags___fPIE__DPIE=no \ ax_cv_check_ldflags___pie=no diff --git a/package/ts4900-fpga/Config.in b/package/ts4900-fpga/Config.in new file mode 100644 index 0000000000..7910631bc0 --- /dev/null +++ b/package/ts4900-fpga/Config.in @@ -0,0 +1,12 @@ +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 0000000000..2147aeb3c2 --- /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 0000000000..ed951b8c8f --- /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 $(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/0001-enable_raw_module.patch b/package/tslib/0001-enable_raw_module.patch deleted file mode 100644 index cb89338cf7..0000000000 --- a/package/tslib/0001-enable_raw_module.patch +++ /dev/null @@ -1,14 +0,0 @@ -Enable raw module by default - -Signed-off-by: Daniel Nyström - -diff -Naur tslib-e000d35a.orig/etc/ts.conf tslib-e000d35a/etc/ts.conf ---- tslib-e000d35a.orig/etc/ts.conf 2010-12-21 18:54:45.000000000 +0100 -+++ tslib-e000d35a/etc/ts.conf 2010-12-21 18:55:03.000000000 +0100 -@@ -1,5 +1,5 @@ - # Uncomment if you wish to use the linux input layer event interface --# module_raw input -+module_raw input - - # Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d - # module_raw collie diff --git a/package/tslib/0002-add_finddef_and_inputattach_utils.patch b/package/tslib/0002-add_finddef_and_inputattach_utils.patch deleted file mode 100644 index dcc6ec75ae..0000000000 --- a/package/tslib/0002-add_finddef_and_inputattach_utils.patch +++ /dev/null @@ -1,718 +0,0 @@ -diff -Naur tslib-org/tests/Makefile.am tslib-1.0/tests/Makefile.am ---- tslib-org/tests/Makefile.am 2006-08-25 00:02:55.000000000 +0300 -+++ tslib-1.0/tests/Makefile.am 2007-05-07 17:39:54.000000000 +0300 -@@ -12,7 +12,7 @@ - AM_CFLAGS = $(DEBUGFLAGS) - INCLUDES = -I$(top_srcdir)/src - --bin_PROGRAMS = ts_test ts_calibrate ts_print ts_print_raw ts_harvest -+bin_PROGRAMS = ts_test ts_calibrate ts_print ts_print_raw ts_harvest ts_finddev inputattach - - ts_test_SOURCES = ts_test.c fbutils.c fbutils.h font_8x8.c font_8x16.c font.h - ts_test_LDADD = $(top_builddir)/src/libts.la -@@ -27,4 +27,10 @@ - ts_calibrate_LDADD = $(top_builddir)/src/libts.la - - ts_harvest_SOURCES = ts_harvest.c fbutils.c fbutils.h testutils.c testutils.h font_8x8.c font_8x16.c font.h --ts_harvest_LDADD = $(top_builddir)/src/libts.la -+ts_harvest_LDADD = $(top_builddir)/src/libts.la -+ -+ts_finddev_SOURCES = ts_finddev.c -+ts_finddev_LDADD = $(top_builddir)/src/libts.la -+ -+inputattach_SOURCES = inputattach.c -+inputattach_LDADD = -diff -Naur tslib-org/tests/inputattach.c tslib-1.0/tests/inputattach.c ---- tslib-org/tests/inputattach.c 1970-01-01 02:00:00.000000000 +0200 -+++ tslib-1.0/tests/inputattach.c 2007-05-07 17:36:37.000000000 +0300 -@@ -0,0 +1,611 @@ -+/* -+ * $Id: inputattach.c,v 1.24 2006/02/08 12:19:31 vojtech Exp $ -+ * -+ * Copyright (c) 1999-2000 Vojtech Pavlik -+ * -+ * Sponsored by SuSE -+ * -+ * Twiddler support Copyright (c) 2001 Arndt Schoenewald -+ * Sponsored by Quelltext AG (http://www.quelltext-ag.de), Dortmund, Germany -+ */ -+ -+/* -+ * Input line discipline attach program -+ */ -+ -+/* -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ * -+ * Should you need to contact me, the author, you can do so either by -+ * e-mail - mail your message to , or by paper mail: -+ * Vojtech Pavlik, Simunkova 1594, Prague 8, 182 00 Czech Republic -+ */ -+ -+/* softa note: -+cvs version is here: -+http://cvs.sourceforge.net/viewcvs.py/ *checkout* /linuxconsole/ruby/utils/inputattach.c -+*/ -+ -+#include -+ -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+// softa patch! -+/* -+ * Serio types -+ */ -+#ifndef SERIO_UNKNOWN -+ #define SERIO_UNKNOWN 0x00 -+#endif -+#ifndef SERIO_MSC -+ #define SERIO_MSC 0x01 -+#endif -+#ifndef SERIO_SUN -+ #define SERIO_SUN 0x02 -+#endif -+#ifndef SERIO_MS -+ #define SERIO_MS 0x03 -+#endif -+#ifndef SERIO_MP -+ #define SERIO_MP 0x04 -+#endif -+#ifndef SERIO_MZ -+ #define SERIO_MZ 0x05 -+#endif -+#ifndef SERIO_MZP -+ #define SERIO_MZP 0x06 -+#endif -+#ifndef SERIO_MZPP -+ #define SERIO_MZPP 0x07 -+#endif -+#ifndef SERIO_VSXXXAA -+ #define SERIO_VSXXXAA 0x08 -+#endif -+#ifndef SERIO_SUNKBD -+ #define SERIO_SUNKBD 0x10 -+#endif -+#ifndef SERIO_WARRIOR -+ #define SERIO_WARRIOR 0x18 -+#endif -+#ifndef SERIO_SPACEORB -+ #define SERIO_SPACEORB 0x19 -+#endif -+#ifndef SERIO_MAGELLAN -+ #define SERIO_MAGELLAN 0x1a -+#endif -+#ifndef SERIO_SPACEBALL -+ #define SERIO_SPACEBALL 0x1b -+#endif -+#ifndef SERIO_GUNZE -+ #define SERIO_GUNZE 0x1c -+#endif -+#ifndef SERIO_IFORCE -+ #define SERIO_IFORCE 0x1d -+#endif -+#ifndef SERIO_STINGER -+ #define SERIO_STINGER 0x1e -+#endif -+#ifndef SERIO_NEWTON -+ #define SERIO_NEWTON 0x1f -+#endif -+#ifndef SERIO_STOWAWAY -+ #define SERIO_STOWAWAY 0x20 -+#endif -+#ifndef SERIO_H3600 -+ #define SERIO_H3600 0x21 -+#endif -+#ifndef SERIO_PS2SER -+ #define SERIO_PS2SER 0x22 -+#endif -+#ifndef SERIO_TWIDKBD -+ #define SERIO_TWIDKBD 0x23 -+#endif -+#ifndef SERIO_TWIDJOY -+ #define SERIO_TWIDJOY 0x24 -+#endif -+#ifndef SERIO_HIL -+ #define SERIO_HIL 0x25 -+#endif -+#ifndef SERIO_SNES232 -+ #define SERIO_SNES232 0x26 -+#endif -+#ifndef SERIO_SEMTECH -+ #define SERIO_SEMTECH 0x27 -+#endif -+#ifndef SERIO_LKKBD -+ #define SERIO_LKKBD 0x28 -+#endif -+#ifndef SERIO_ELO -+ #define SERIO_ELO 0x29 -+#endif -+#ifndef SERIO_MICROTOUCH -+ #define SERIO_MICROTOUCH 0x30 -+#endif -+#ifndef SERIO_PENMOUNT -+ #define SERIO_PENMOUNT 0x31 -+#endif -+#ifndef SERIO_TOUCHRIGHT -+ #define SERIO_TOUCHRIGHT 0x32 -+#endif -+#ifndef SERIO_TOUCHWIN -+ #define SERIO_TOUCHWIN 0x33 -+#endif -+// end softa patch! -+ -+int readchar(int fd, unsigned char *c, int timeout) -+{ -+ struct timeval tv; -+ fd_set set; -+ -+ tv.tv_sec = 0; -+ tv.tv_usec = timeout * 1000; -+ -+ FD_ZERO(&set); -+ FD_SET(fd, &set); -+ -+ if (!select(fd+1, &set, NULL, NULL, &tv)) return -1; -+ if (read(fd, c, 1) != 1) return -1; -+ -+ return 0; -+} -+ -+ -+ -+void setline(int fd, int flags, int speed) -+{ -+ struct termios t; -+ -+ tcgetattr(fd, &t); -+ -+ t.c_cflag = flags | CREAD | HUPCL | CLOCAL; -+ t.c_iflag = IGNBRK | IGNPAR; -+ t.c_oflag = 0; -+ t.c_lflag = 0; -+ t.c_cc[VMIN ] = 1; -+ t.c_cc[VTIME] = 0; -+ -+ cfsetispeed(&t, speed); -+ cfsetospeed(&t, speed); -+ -+ tcsetattr(fd, TCSANOW, &t); -+} -+ -+int logitech_command(int fd, char *c) -+{ -+ int i; -+ unsigned char d; -+ for (i = 0; c[i]; i++) { -+ write(fd, c + i, 1); -+ if (readchar(fd, &d, 1000)) -+ return -1; -+ if (c[i] != d) -+ return -1; -+ } -+ return 0; -+} -+ -+int magellan_init(int fd, long *id, long *extra) -+{ -+ write(fd, "m3\rpBB\rz\r", 9); -+ return 0; -+} -+ -+int warrior_init(int fd, long *id, long *extra) -+{ -+ if (logitech_command(fd, "*S")) return -1; -+ setline(fd, CS8, B4800); -+ return 0; -+} -+ -+int spaceball_waitchar(int fd, unsigned char c, unsigned char *d, int timeout) -+{ -+ unsigned char b = 0; -+ -+ while (!readchar(fd, &b, timeout)) { -+ if (b == 0x0a) continue; -+ *d++ = b; -+ if (b == c) break; -+ } -+ -+ *d = 0; -+ -+ return -(b != c); -+} -+ -+int spaceball_waitcmd(int fd, char c, char *d) -+{ -+ int i; -+ -+ for (i = 0; i < 8; i++) { -+ if (spaceball_waitchar(fd, 0x0d, d, 1000)) -+ return -1; -+ if (d[0] == c) -+ return 0; -+ } -+ -+ return -1; -+} -+ -+int spaceball_cmd(int fd, char *c, char *d) -+{ -+ int i; -+ -+ for (i = 0; c[i]; i++) -+ write(fd, c + i, 1); -+ write(fd, "\r", 1); -+ -+ i = spaceball_waitcmd(fd, toupper(c[0]), d); -+ -+ return i; -+} -+ -+#define SPACEBALL_1003 1 -+#define SPACEBALL_2003B 3 -+#define SPACEBALL_2003C 4 -+#define SPACEBALL_3003C 7 -+#define SPACEBALL_4000FLX 8 -+#define SPACEBALL_4000FLX_L 9 -+ -+int spaceball_init(int fd, long *id, long *extra) -+{ -+ char r[64]; -+ -+ if (spaceball_waitchar(fd, 0x11, r, 4000) || -+ spaceball_waitchar(fd, 0x0d, r, 1000)) -+ return -1; -+ -+ if (spaceball_waitcmd(fd, '@', r)) -+ return -1; -+ -+ if (strncmp("@1 Spaceball alive", r, 18)) -+ return -1; -+ -+ if (spaceball_waitcmd(fd, '@', r)) -+ return -1; -+ -+ if (spaceball_cmd(fd, "hm", r)) -+ return -1; -+ -+ if (!strncmp("Hm2003B", r, 7)) -+ *id = SPACEBALL_2003B; -+ if (!strncmp("Hm2003C", r, 7)) -+ *id = SPACEBALL_2003C; -+ if (!strncmp("Hm3003C", r, 7)) -+ *id = SPACEBALL_3003C; -+ -+ if (!strncmp("HvFirmware", r, 10)) { -+ -+ if (spaceball_cmd(fd, "\"", r)) -+ return -1; -+ -+ if (strncmp("\"1 Spaceball 4000 FLX", r, 21)) -+ return -1; -+ -+ if (spaceball_waitcmd(fd, '"', r)) -+ return -1; -+ -+ if (strstr(r, " L ")) -+ *id = SPACEBALL_4000FLX_L; -+ else -+ *id = SPACEBALL_4000FLX; -+ -+ if (spaceball_waitcmd(fd, '"', r)) -+ return -1; -+ -+ if (spaceball_cmd(fd, "YS", r)) -+ return -1; -+ -+ if (spaceball_cmd(fd, "M", r)) -+ return -1; -+ -+ return 0; -+ } -+ -+ if (spaceball_cmd(fd, "P@A@A", r) || -+ spaceball_cmd(fd, "FT@", r) || -+ spaceball_cmd(fd, "MSS", r)) -+ return -1; -+ -+ return 0; -+} -+ -+int stinger_init(int fd, long *id, long *extra) -+{ -+ int i; -+ unsigned char c; -+ unsigned char *response = "\r\n0600520058C272"; -+ -+ if (write(fd, " E5E5", 5) != 5) /* Enable command */ -+ return -1; -+ -+ for (i = 0; i < 16; i++) /* Check for Stinger */ -+ if (readchar(fd, &c, 200) || (c != response[i])) -+ return -1; -+ -+ return 0; -+} -+ -+int mzp_init(int fd, long *id, long *extra) -+{ -+ if (logitech_command(fd, "*X*q")) return -1; -+ setline(fd, CS8, B9600); -+ return 0; -+} -+ -+int newton_init(int fd, long *id, long *extra) -+{ -+ int i; -+ unsigned char c; -+ unsigned char response[35] = -+ { 0x16, 0x10, 0x02, 0x64, 0x5f, 0x69, 0x64, 0x00, -+ 0x00, 0x00, 0x0c, 0x6b, 0x79, 0x62, 0x64, 0x61, -+ 0x70, 0x70, 0x6c, 0x00, 0x00, 0x00, 0x01, 0x6e, -+ 0x6f, 0x66, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x10, -+ 0x03, 0xdd, 0xe7 }; -+ -+ for (i = 0; i < 35; i++) -+ if (readchar(fd, &c, 400) || (c != response[i])) -+ return -1; -+ -+ return 0; -+} -+ -+int twiddler_init(int fd, long *id, long *extra) -+{ -+ unsigned char c[10]; -+ int count, line; -+ -+ /* Turn DTR off, otherwise the Twiddler won't send any data. */ -+ if (ioctl(fd, TIOCMGET, &line)) return -1; -+ line &= ~TIOCM_DTR; -+ if (ioctl(fd, TIOCMSET, &line)) return -1; -+ -+ /* Check whether the device on the serial line is the Twiddler. -+ * -+ * The Twiddler sends data packets of 5 bytes which have the following -+ * properties: the MSB is 0 on the first and 1 on all other bytes, and -+ * the high order nibble of the last byte is always 0x8. -+ * -+ * We read and check two of those 5 byte packets to be sure that we -+ * are indeed talking to a Twiddler. */ -+ -+ /* Read at most 5 bytes until we find one with the MSB set to 0 */ -+ for (count = 0; count < 5; count++) { -+ if (readchar(fd, c+0, 500)) return -1; -+ if ((c[0] & 0x80) == 0) break; -+ } -+ -+ if (count == 5) { -+ /* Could not find header byte in data stream */ -+ return -1; -+ } -+ -+ /* Read remaining 4 bytes plus the full next data packet */ -+ for (count = 1; count < 10; count++) { -+ if (readchar(fd, c+count, 500)) return -1; -+ } -+ -+ /* Check whether the bytes of both data packets obey the rules */ -+ for (count = 1; count < 10; count++) { -+ if ((count % 5 == 0 && (c[count] & 0x80) != 0) -+ || (count % 5 == 4 && (c[count] & 0xF0) != 0x80) -+ || (count % 5 != 0 && (c[count] & 0x80) != 0x80)) { -+ /* Invalid byte in data packet */ -+ return -1; -+ } -+ } -+ -+ return 0; -+} -+ -+int penmount_init(int fd, long *id, long *extra) -+{ -+ unsigned char init_cmd[5] = { 0xF2, 0x00, 0x00, 0x00, 0x00 }; -+ unsigned char start_cmd[5] = { 0xF1, 0x00, 0x00, 0x00, 0x00 }; -+ unsigned char c[10]; -+ int count; -+ -+ /* try to initialize device */ -+ if (write( fd, init_cmd, 5 ) != 5) -+ return -1; -+ -+ /* read the responce */ -+ for (count = 0; count < 5; count ++) { -+ if (readchar(fd, c+0, 500)) return -1; -+ if (c[0] == 0xf2) break; -+ } -+ -+ if (readchar(fd, c+1, 500)) return -1; -+ if (c[1] != 0xd9) return -1; -+ -+ if (readchar(fd, c+2, 500)) return -1; -+ if (c[2] != 0x0a) return -1; -+ -+ /* the device is present! start it! */ -+ if (write( fd, start_cmd, 5 ) != 5) -+ return -1; -+ -+ return 0; -+} -+ -+int dump_init(int fd, long *id, long *extra) -+{ -+ unsigned char c, o = 0; -+ -+ c = 0x80; -+ -+ if (write(fd, &c, 1) != 1) /* Enable command */ -+ return -1; -+ -+ while (1) -+ if (!readchar(fd, &c, 1)) { -+ printf("%02x (%c) ", c, ((c > 32) && (c < 127)) ? c : 'x'); -+ o = 1; -+ } else { -+ if (o) { -+ printf("\n"); -+ o = 0; -+ } -+ } -+} -+ -+struct input_types { -+ char name[16]; -+ char name2[16]; -+ int speed; -+ int flags; -+ unsigned long type; -+ unsigned long id; -+ unsigned long extra; -+ int flush; -+ int (*init)(int fd, long *id, long *extra); -+}; -+ -+struct input_types input_types[] = { -+ -+{ "--sunkbd", "-skb", B1200, CS8, SERIO_SUNKBD, 0, 0, 1, NULL }, -+{ "--lkkbd", "-lk", B4800, CS8|CSTOPB, SERIO_LKKBD, 0, 0, 1, NULL }, -+{ "--vsxxx-aa", "-vs", B4800, CS8|CSTOPB|PARENB|PARODD,SERIO_VSXXXAA, 0, 0, 1, NULL }, -+{ "--spaceorb", "-orb", B9600, CS8, SERIO_SPACEORB, 0, 0, 1, NULL }, -+{ "--spaceball", "-sbl", B9600, CS8, SERIO_SPACEBALL,0, 0, 0, spaceball_init }, -+{ "--magellan", "-mag", B9600, CS8 | CSTOPB | CRTSCTS, SERIO_MAGELLAN, 0, 0, 1, magellan_init }, -+{ "--warrior", "-war", B1200, CS7 | CSTOPB, SERIO_WARRIOR, 0, 0, 1, warrior_init }, -+{ "--stinger", "-sting", B1200, CS8, SERIO_STINGER, 0, 0, 1, stinger_init }, -+{ "--mousesystems", "-msc", B1200, CS8, SERIO_MSC, 0, 0x01, 1, NULL }, -+{ "--sunmouse", "-sun", B1200, CS8, SERIO_SUN, 0, 0x01, 1, NULL }, -+{ "--microsoft", "-bare", B1200, CS7, SERIO_MS, 0, 0, 1, NULL }, -+{ "--mshack", "-ms", B1200, CS7, SERIO_MS, 0, 0x01, 1, NULL }, -+{ "--mouseman", "-mman", B1200, CS7, SERIO_MP, 0, 0x01, 1, NULL }, -+{ "--intellimouse", "-ms3", B1200, CS7, SERIO_MZ, 0, 0x11, 1, NULL }, -+{ "--mmwheel", "-mmw", B1200, CS7 | CSTOPB, SERIO_MZP, 0, 0x13, 1, mzp_init }, -+{ "--iforce", "-ifor", B38400, CS8, SERIO_IFORCE, 0, 0, 0, NULL }, -+{ "--newtonkbd", "-newt", B9600, CS8, SERIO_NEWTON, 0, 0, 0, newton_init }, -+{ "--h3600ts", "-ipaq", B115200, CS8, SERIO_H3600, 0, 0, 0, NULL }, -+{ "--stowawaykbd", "-ipaqkbd", B115200, CS8, SERIO_STOWAWAY, 0, 0, 0, NULL }, -+{ "--ps2serkbd", "-ps2ser", B1200, CS8, SERIO_PS2SER, 0, 0, 1, NULL }, -+{ "--twiddler", "-twid", B2400, CS8, SERIO_TWIDKBD, 0, 0, 0, twiddler_init }, -+{ "--twiddler-joy", "-twidjoy", B2400, CS8, SERIO_TWIDJOY, 0, 0, 0, twiddler_init }, -+{ "--elotouch", "-elo", B9600, CS8 | CRTSCTS, SERIO_ELO, 0, 0, 0, NULL }, -+{ "--elo4002", "-elo6b", B9600, CS8 | CRTSCTS, SERIO_ELO, 1, 0, 0, NULL }, -+{ "--elo271-140", "-elo4b", B9600, CS8 | CRTSCTS, SERIO_ELO, 2, 0, 0, NULL }, -+{ "--elo261-280", "-elo3b", B9600, CS8 | CRTSCTS, SERIO_ELO, 3, 0, 0, NULL }, -+{ "--dump", "-dump", B2400, CS8, 0, 0, 0, 0, dump_init }, -+{ "--dmc9000", "-dmc", B19200, CS8, SERIO_PENMOUNT, 0, 0, 0, penmount_init }, -+{ "", "", 0, 0 } -+ -+}; -+ -+int main(int argc, char **argv) -+{ -+ unsigned long devt; -+ int ldisc; -+ int type; -+ long id, extra; -+ int fd; -+ char c; -+ -+ if (argc < 2 || argc > 3 || !strcmp("--help", argv[1])) { -+ puts(""); -+ puts("Usage: inputttach "); -+ puts(""); -+ puts("Modes:"); -+ puts(" --sunkbd -skb Sun Type 4 and Type 5 keyboards"); -+ puts(" --lkkbd -lk DEC LK201 / LK401 keyboards"); -+ puts(" --vsxxx-aa -vs DEC VSXXX-AA / VSXXX-GA mouse and VSXXX-AB tablet"); -+ puts(" --spaceorb -orb SpaceOrb 360 / SpaceBall Avenger"); -+ puts(" --spaceball -sbl SpaceBall 2003 / 3003 / 4000 FLX"); -+ puts(" --magellan -mag Magellan / SpaceMouse"); -+ puts(" --warrior -war WingMan Warrior"); -+ puts(" --stinger -stng Gravis Stinger"); -+ puts(" --mousesystems -msc 3-button Mouse Systems mice"); -+ puts(" --sunmouse -sun 3-button Sun mice"); -+ puts(" --microsoft -bare 2-button Microsoft mice"); -+ puts(" --mshack -ms 3-button mice in Microsoft mode"); -+ puts(" --mouseman -mman 3-button Logitech and Genius mice"); -+ puts(" --intellimouse -ms3 Microsoft IntelliMouse"); -+ puts(" --mmwheel -mmw Logitech mice with 4-5 buttons or wheel"); -+ puts(" --iforce -ifor I-Force joysticks and wheels"); -+ puts(" --h3600ts -ipaq Ipaq h3600 touchscreen"); -+ puts(" --stowawaykbd -ipaqkbd Stowaway keyboard"); -+ puts(" --ps2serkbd -ps2ser PS/2 via serial keyboard"); -+ puts(" --twiddler -twid Handykey Twiddler chording keyboard"); -+ puts(" --twiddler-joy -twidjoy Handykey Twiddler used as a joystick"); -+ puts(" --dmc9000 -dmc DMC9000/Penpount touchscreen"); -+ puts(""); -+ return 1; -+ } -+ -+ for (type = 0; input_types[type].speed; type++) { -+ if (!strncasecmp(argv[1], input_types[type].name, 16) || -+ !strncasecmp(argv[1], input_types[type].name2, 16)) -+ break; -+ } -+ -+ if (!input_types[type].speed) { -+ fprintf(stderr, "inputattach: invalid mode\n"); -+ return 1; -+ } -+ -+ if ((fd = open(argv[2], O_RDWR | O_NOCTTY | O_NONBLOCK)) < 0) { -+ perror("inputattach"); -+ return 1; -+ } -+ -+ setline(fd, input_types[type].flags, input_types[type].speed); -+ -+ if (input_types[type].flush) -+ while (!readchar(fd, &c, 100)); -+ -+ id = input_types[type].id; -+ extra = input_types[type].extra; -+ -+ if (input_types[type].init && input_types[type].init(fd, &id, &extra)) { -+ fprintf(stderr, "inputattach: device initialization failed\n"); -+ return 1; -+ } -+ -+ ldisc = N_MOUSE; -+ if(ioctl(fd, TIOCSETD, &ldisc)) { -+ fprintf(stderr, "inputattach: can't set line discipline\n"); -+ return 1; -+ } -+ -+ devt = input_types[type].type | (id << 8) | (extra << 16); -+ -+ if(ioctl(fd, SPIOCSTYPE, &devt)) { -+ fprintf(stderr, "inputattach: can't set device type\n"); -+ return 1; -+ } -+ -+ read(fd, NULL, 0); -+ -+ ldisc = 0; -+ ioctl(fd, TIOCSETD, &ldisc); -+ close(fd); -+ -+ return 0; -+} -diff -Naur tslib-org/tests/ts_finddev.c tslib-1.0/tests/ts_finddev.c ---- tslib-org/tests/ts_finddev.c 1970-01-01 02:00:00.000000000 +0200 -+++ tslib-1.0/tests/ts_finddev.c 2007-05-07 17:36:37.000000000 +0300 -@@ -0,0 +1,75 @@ -+/* -+ * tslib/src/ts_print.c -+ * -+ * Derived from tslib/src/ts_test.c by Douglas Lowder -+ * Just prints touchscreen events -- does not paint them on framebuffer -+ * -+ * This file is placed under the GPL. Please see the file -+ * COPYING for more details. -+ * -+ * Basic test program for touchscreen library. -+ */ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "tslib.h" -+ -+void usage( int argc, char** argv ) { -+ printf( "Usage: %s device_name wait_for_sec\n", argv[0] ); -+ printf( "\tdevice_name - tdevice to probe, example /dev/input/event0\n" ); -+ printf( "\twait_for_sec - wait seconds for touch event, if 0 - dont wait!\n" ); -+ printf( "\tReturn codes:\n" ); -+ printf( "\t 0 - timeout expired without receiving event.\n" ); -+ printf( "\t But this maybe is TouchScreen.\n" ); -+ printf( "\t -1 - this is NOT TouchScreen device!\n" ); -+ printf( "\t 1 - this is TouchScreen for shure!\n" ); -+ exit(-1); -+} -+ -+void alarm_handler( int sig ) { -+ // time is expired! -+ exit(0); -+} -+ -+int main( int argc, char** argv ) -+{ -+ struct tsdev *ts; -+ struct ts_sample samp; -+ char *tsdevice=NULL; -+ int waitsec; -+ int ret; -+ -+ if (argc != 3) -+ usage( argc, argv ); -+ -+ tsdevice = argv[1]; -+ waitsec = atoi( argv[2] ); -+ if (waitsec < 0) -+ usage( argc, argv ); -+ -+ ts = ts_open( tsdevice, 0 ); -+ if (!ts) -+ return -1; -+ if (ts_config(ts)) -+ return -1; -+ -+ if (!waitsec) { -+ return 0; -+ } -+ -+ printf( "Probe device %s, Please Touch Screen Anywhere in %i seconds! ... \n", tsdevice, waitsec ); -+ signal( SIGALRM, alarm_handler ); -+ alarm( waitsec ); -+ ret = ts_read_raw(ts, &samp, 1 ); -+ if (ret) -+ return 1; -+ -+ return -1; -+} diff --git a/package/tslib/Config.in b/package/tslib/Config.in index 050588e834..bc5d790188 100644 --- a/package/tslib/Config.in +++ b/package/tslib/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_TSLIB bool "tslib" depends on !BR2_STATIC_LIBS # dlopen help - Tslib is an abstraction layer for touchscreen panel events. + Tslib is a filtering layer for touchscreen panel events. https://github.com/kergoth/tslib diff --git a/package/tslib/tslib.hash b/package/tslib/tslib.hash index e3ddce54fe..d7ae4dce55 100644 --- a/package/tslib/tslib.hash +++ b/package/tslib/tslib.hash @@ -1,2 +1,2 @@ -# Locally generated -sha256 121750e9ae0f05ce840ab8dbefdae1297258f0a69dd1967f55c40ac6e87d5ee9 tslib-1.1.tar.gz +# https://github.com/kergoth/tslib/releases/download/1.5/tslib-1.5.tar.xz.sha256 +sha256 94874fe72c5af5c9be642a2ce524f014eb1d59d15cf852f2d3b2cf380f04252d tslib-1.5.tar.xz diff --git a/package/tslib/tslib.mk b/package/tslib/tslib.mk index 1100247905..08b1d26ac2 100644 --- a/package/tslib/tslib.mk +++ b/package/tslib/tslib.mk @@ -4,8 +4,9 @@ # ################################################################################ -TSLIB_VERSION = 1.1 +TSLIB_VERSION = 1.5 TSLIB_SITE = https://github.com/kergoth/tslib/releases/download/$(TSLIB_VERSION) +TSLIB_SOURCE = tslib-$(TSLIB_VERSION).tar.xz TSLIB_LICENSE = GPL, LGPL TSLIB_LICENSE_FILES = COPYING @@ -13,4 +14,8 @@ TSLIB_AUTORECONF = YES 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 + $(eval $(autotools-package)) diff --git a/package/tstools/Config.in b/package/tstools/Config.in index f5dd138c4d..ca5f8fc2ca 100644 --- a/package/tstools/Config.in +++ b/package/tstools/Config.in @@ -1,6 +1,7 @@ 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. @@ -14,3 +15,7 @@ config BR2_PACKAGE_TSTOOLS 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/tunctl/Config.in b/package/tunctl/Config.in new file mode 100644 index 0000000000..26eed4c31e --- /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 0000000000..d3aaeecef8 --- /dev/null +++ b/package/tunctl/tunctl.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 aa2a6c4cc6bfacb11e0d9f62334a6638a0d435475c61230116f00b6af8b14fff tunctl-1.5.tar.gz diff --git a/package/tunctl/tunctl.mk b/package/tunctl/tunctl.mk new file mode 100644 index 0000000000..30dbbd1340 --- /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 = GPLv2 +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/turbolua.hash b/package/turbolua/turbolua.hash index ea7898c427..d460b4f667 100644 --- a/package/turbolua/turbolua.hash +++ b/package/turbolua/turbolua.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 4f7e3121fcc25a5867a264a6f09acf641c904668f5822b1533881f40a3b863ea turbolua-91db237a6690f4a659cbdee2ebbbbc9741d8ea4c.tar.gz +sha256 bff771b6a670f764366eff50e1644f1c5d8d526324e0b6adfda42d9f69791833 turbolua-6fbc5cbfed1cc8c3820d4c1bfb55258c764040f0.tar.gz diff --git a/package/turbolua/turbolua.mk b/package/turbolua/turbolua.mk index fe6db3184c..bf9e27f16c 100644 --- a/package/turbolua/turbolua.mk +++ b/package/turbolua/turbolua.mk @@ -4,7 +4,7 @@ # ################################################################################ -TURBOLUA_VERSION = 91db237a6690f4a659cbdee2ebbbbc9741d8ea4c +TURBOLUA_VERSION = 6fbc5cbfed1cc8c3820d4c1bfb55258c764040f0 TURBOLUA_SITE = $(call github,kernelsauce,turbo,$(TURBOLUA_VERSION)) TURBOLUA_DEPENDENCIES = luajit TURBOLUA_LICENSE = Apache-2.0 @@ -22,11 +22,11 @@ TURBOLUA_MAKE_OPTS += SSL=none endif define TURBOLUA_BUILD_CMDS - $(MAKE) $(TURBOLUA_MAKE_OPTS) -C $(@D) all + $(TARGET_MAKE_ENV) $(MAKE) $(TURBOLUA_MAKE_OPTS) -C $(@D) all endef define TURBOLUA_INSTALL_TARGET_CMDS - $(MAKE) $(TURBOLUA_MAKE_OPTS) LDCONFIG=true \ + $(TARGET_MAKE_ENV) $(MAKE) $(TURBOLUA_MAKE_OPTS) LDCONFIG=true \ PREFIX="$(TARGET_DIR)/usr" -C $(@D) install endef diff --git a/package/tvheadend/0002-ffmpeg-revert-minimum-required-version-numbers.patch b/package/tvheadend/0002-ffmpeg-revert-minimum-required-version-numbers.patch deleted file mode 100644 index 74136fe451..0000000000 --- a/package/tvheadend/0002-ffmpeg-revert-minimum-required-version-numbers.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 78a7b7365a67fa2f5394c6b4ca39de01b00416dc Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sat, 2 Apr 2016 19:05:52 +0200 -Subject: [PATCH 1/1] ffmpeg: revert minimum required version numbers - -This commit reverts the minimum version numbers required by configure to -the values before -https://github.com/tvheadend/tvheadend/commit/1359effe28a0381b8c9cbd362d6e144fb87b00fc#diff-e2d5a00791bce9a01f99bc6fd613a39dL486 -in order to allow compilation with older versions of ffmpeg again. - -Please note that the previous version numbers of all ffmpeg libs, with -the exception of libavfilter, are those of ffmpeg 2.0.7: -https://ffmpeg.org/olddownload.html - -Therefore I synced the minimum version number required for libavfilter to -3.79.101 and not to 4.0.0 as previous in tvheadend's configure script. - -Signed-off-by: Bernd Kuhls -[Patch sent upstream: https://github.com/tvheadend/tvheadend/pull/838] ---- - configure | 14 +++++++------- - 1 file changed, 7 insertions(+), 7 deletions(-) - -diff --git a/configure b/configure -index be3d2e2..2ffd280 100755 ---- a/configure -+++ b/configure -@@ -512,13 +512,13 @@ else - if enabled_or_auto libav; then - has_libav=true - -- check_pkg libavfilter ">=6.31.100" || has_libav=false -- check_pkg libswresample ">=2.0.101" || has_libav=false -- check_pkg libavresample ">=3.0.0" || has_libav=false -- check_pkg libswscale ">=4.0.100" || has_libav=false -- check_pkg libavformat ">=57.25.100" || has_libav=false -- check_pkg libavcodec ">=57.24.102" || has_libav=false -- check_pkg libavutil ">=55.17.103" || has_libav=false -+ check_pkg libavfilter ">=3.79.101" || has_libav=false -+ check_pkg libswresample ">=0.17.102" || has_libav=false -+ check_pkg libavresample ">=1.1.0" || has_libav=false -+ check_pkg libswscale ">=2.3.100" || has_libav=false -+ check_pkg libavformat ">=55.12.100" || has_libav=false -+ check_pkg libavcodec ">=55.18.102" || has_libav=false -+ check_pkg libavutil ">=52.38.100" || has_libav=false - - if $has_libav; then - enable libav --- -2.8.0.rc3 - diff --git a/package/tvheadend/Config.in b/package/tvheadend/Config.in index 67a4b1419f..fc39d6f486 100644 --- a/package/tvheadend/Config.in +++ b/package/tvheadend/Config.in @@ -12,6 +12,8 @@ config BR2_PACKAGE_TVHEADEND select BR2_PACKAGE_DTV_SCAN_TABLES select BR2_PACKAGE_FFMPEG_AVRESAMPLE if BR2_PACKAGE_FFMPEG select BR2_PACKAGE_FFMPEG_SWSCALE if BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_LIBVPX if BR2_PACKAGE_FFMPEG && !BR2_bfin # libvpx + select BR2_PACKAGE_X264 if BR2_PACKAGE_FFMPEG select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_OPENSSL help diff --git a/package/tvheadend/tvheadend.hash b/package/tvheadend/tvheadend.hash index 9406d08f63..d34dbf1f4e 100644 --- a/package/tvheadend/tvheadend.hash +++ b/package/tvheadend/tvheadend.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 50ada2f30387f9526e1ed453f778686b443e599841a73a031cdd543b65e7a502 tvheadend-cd9f07fb865e5700156546ee326fbaf42ee99cf8.tar.gz +sha256 ac3c088654864781f2b2a2797e3a8b03a1b2e86db731c08cb5f296a04069560d tvheadend-e5f5a4278949afc96e26d6cd50cf968e0e92d7b6.tar.gz diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk index 07577d0d05..42c6767f60 100644 --- a/package/tvheadend/tvheadend.mk +++ b/package/tvheadend/tvheadend.mk @@ -4,7 +4,7 @@ # ################################################################################ -TVHEADEND_VERSION = cd9f07fb865e5700156546ee326fbaf42ee99cf8 +TVHEADEND_VERSION = e5f5a4278949afc96e26d6cd50cf968e0e92d7b6 TVHEADEND_SITE = $(call github,tvheadend,tvheadend,$(TVHEADEND_VERSION)) TVHEADEND_LICENSE = GPLv3+ TVHEADEND_LICENSE_FILES = LICENSE.md @@ -88,11 +88,11 @@ define TVHEADEND_CONFIGURE_CMDS endef define TVHEADEND_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define TVHEADEND_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install endef # Remove documentation and source files that are not needed because we diff --git a/package/tz/tz.mk b/package/tz/tz.mk index 7a756eb5d8..f0daf4658f 100644 --- a/package/tz/tz.mk +++ b/package/tz/tz.mk @@ -4,7 +4,6 @@ # ################################################################################ -TZ_SOURCE = TZ_DEPENDENCIES = host-tzdata host-tzdump TZ_LICENSE = Public domain diff --git a/package/tzdata/tzdata.hash b/package/tzdata/tzdata.hash index 1529fd4afa..b98e579e3c 100644 --- a/package/tzdata/tzdata.hash +++ b/package/tzdata/tzdata.hash @@ -1,2 +1,2 @@ -# From: http://mm.icann.org/pipermail/tz-announce/2016-April/000038.html -sha512 f1beb1793c4c7d18f2dadaf4a928b1476f66b400bda0c87b06155c0dd1c4b4a26bb2f37dc17a3676a2bbe9c1e71a5d8b27a171c797a86464b0bc0d13abfb2f99 tzdata2016d.tar.gz +# From http://mm.icann.org/pipermail/tz-announce/2016-November/000044.html +sha512 ce0b9958b764479fac7df6b5ba0933fc4c6d815ebccc2537c75c4be105691cd58054704eebfb50ca755d7d48504480d4925ce8836eb499ae4798e3d5503d7e0e tzdata2016j.tar.gz diff --git a/package/tzdata/tzdata.mk b/package/tzdata/tzdata.mk index f50a83c411..d6285145e8 100644 --- a/package/tzdata/tzdata.mk +++ b/package/tzdata/tzdata.mk @@ -4,7 +4,7 @@ # ################################################################################ -TZDATA_VERSION = 2016d +TZDATA_VERSION = 2016j TZDATA_SOURCE = tzdata$(TZDATA_VERSION).tar.gz TZDATA_SITE = http://www.iana.org/time-zones/repository/releases TZDATA_STRIP_COMPONENTS = 0 diff --git a/package/tzdump/tzdump.hash b/package/tzdump/tzdump.hash new file mode 100644 index 0000000000..71114e0bed --- /dev/null +++ b/package/tzdump/tzdump.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 403f22f9c3007a051f9dbccff48b396b8e04eb1afcc8d779e6b3d9b6d971e1fe tzdump-65a10105564801094b18c3fcacf4dde4c44e4ab8.tar.gz diff --git a/package/uboot-tools/0001-drop-configh-from-tools.patch b/package/uboot-tools/0001-drop-configh-from-tools.patch index e77a301760..fbc96084db 100644 --- a/package/uboot-tools/0001-drop-configh-from-tools.patch +++ b/package/uboot-tools/0001-drop-configh-from-tools.patch @@ -1,7 +1,7 @@ -From 2e54434e4dd178773e8e11e48afc81299771f3e7 Mon Sep 17 00:00:00 2001 +From b742c7590ac6d9ac72dd227679ccff79433b3512 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 1/1] drop configh from tools +Subject: [PATCH] drop configh from tools MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -18,12 +18,12 @@ Signed-off-by: Jörg Krause 1 file changed, 11 deletions(-) diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h -index 60c0517..1c5daaa 100644 +index 57149e7..50049fe 100644 --- a/tools/env/fw_env.h +++ b/tools/env/fw_env.h -@@ -5,17 +5,6 @@ - * SPDX-License-Identifier: GPL-2.0+ - */ +@@ -8,17 +8,6 @@ + #include + #include -/* Pull in the current config to define the default environment */ -#include @@ -40,5 +40,5 @@ index 60c0517..1c5daaa 100644 * To build the utility with the static configuration * comment out the next line. -- -2.5.0 +2.7.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 index fedf9beeb6..c201bf749d 100644 --- 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 @@ -1,7 +1,7 @@ -From 7d9bac7bf8d9ef39ab6b6e8d436e3dbdee5cd120 Mon Sep 17 00:00:00 2001 +From b8110293d70c4f43035dfd6a0904d342be6a08e0 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 1/1] tools only in no dot config targets +Subject: [PATCH] tools only in no dot config targets MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -18,22 +18,25 @@ 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 36a9a28..f85c194 100644 +index 1cf15ce..75e85eb 100644 --- a/Makefile +++ b/Makefile -@@ -417,7 +417,7 @@ timestamp_h := include/generated/timestamp_autogenerated.h - +@@ -425,7 +425,7 @@ timestamp_h := include/generated/timestamp_autogenerated.h + no-dot-config-targets := clean clobber mrproper distclean \ - help %docs check% coccicheck \ -- ubootversion backup -+ ubootversion backup tools-only - + help %docs check% coccicheck \ +- ubootversion backup tests ++ ubootversion backup tests tools-only + config-targets := 0 mixed-targets := 0 --- -2.3.0 +-- +2.7.4 + diff --git a/package/uboot-tools/0003-Make-FIT-support-really-optional.patch b/package/uboot-tools/0003-Make-FIT-support-really-optional.patch new file mode 100644 index 0000000000..8853198b43 --- /dev/null +++ b/package/uboot-tools/0003-Make-FIT-support-really-optional.patch @@ -0,0 +1,96 @@ +From d9d7d7cf8b27516d45c66daa1bf0a18c878c4e33 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Sun, 8 May 2016 11:11:39 -0300 +Subject: [PATCH] Make FIT support really optional + +Due to some mistakes in the source code, it was not possible to really +turn FIT support off. This commit fixes the problem by means of the +following changes: + +- Enclose "bootm_host_load_image" and "bootm_host_load_images" between + checks for CONFIG_FIT_SIGNATURE, in common/bootm.c. + +- Enclose the declaration of "bootm_host_load_images" between checks for + CONFIG_FIT_SIGNATURE, in common/bootm.h. + +- Condition the compilation and linking of fit_common.o fit_image.o + image-host.o common/image-fit.o to CONFIG_FIT=y, in tools/Makefile. + +Signed-off-by: Carlos Santos +[fabio: adapt for 2016.07] +Signed-off-by: Fabio Estevam +[Ricardo: fix conditional compilation and linking of the files mentioned above +for 2016.07] +Signed-off-by: Ricardo Martincoski +--- + common/bootm.c | 2 ++ + include/bootm.h | 2 ++ + tools/Makefile | 6 ++---- + 3 files changed, 6 insertions(+), 4 deletions(-) + +diff --git a/common/bootm.c b/common/bootm.c +index 2431019..7e1adc8 100644 +--- a/common/bootm.c ++++ b/common/bootm.c +@@ -901,6 +901,7 @@ void memmove_wd(void *to, void *from, size_t len, ulong chunksz) + memmove(to, from, len); + } + ++#if defined(CONFIG_FIT_SIGNATURE) + static int bootm_host_load_image(const void *fit, int req_image_type) + { + const char *fit_uname_config = NULL; +@@ -965,5 +966,6 @@ int bootm_host_load_images(const void *fit, int cfg_noffset) + /* Return the first error we found */ + return err; + } ++#endif + + #endif /* ndef USE_HOSTCC */ +diff --git a/include/bootm.h b/include/bootm.h +index 4981377..94d62a1 100644 +--- a/include/bootm.h ++++ b/include/bootm.h +@@ -41,7 +41,9 @@ void lynxkdi_boot(image_header_t *hdr); + + boot_os_fn *bootm_os_get_boot_func(int os); + ++#if defined(CONFIG_FIT_SIGNATURE) + int bootm_host_load_images(const void *fit, int cfg_noffset); ++#endif + + int boot_selected_os(int argc, char * const argv[], int state, + bootm_headers_t *images, boot_os_fn *boot_fn); +diff --git a/tools/Makefile b/tools/Makefile +index f72294a..ccf5120 100644 +--- a/tools/Makefile ++++ b/tools/Makefile +@@ -54,6 +54,7 @@ mkenvimage-objs := mkenvimage.o os_support.o lib/crc32.o + hostprogs-y += dumpimage mkimage + hostprogs-$(CONFIG_FIT_SIGNATURE) += fit_info fit_check_sign + ++FIT_OBJS-$(CONFIG_FIT) := fit_common.o fit_image.o image-host.o common/image-fit.o + FIT_SIG_OBJS-$(CONFIG_FIT_SIGNATURE) := common/image-sig.o + # Flattened device tree objects + LIBFDT_OBJS := $(addprefix lib/libfdt/, \ +@@ -68,16 +69,13 @@ ROCKCHIP_OBS = lib/rc4.o rkcommon.o rkimage.o rksd.o rkspi.o + # common objs for dumpimage and mkimage + dumpimage-mkimage-objs := aisimage.o \ + atmelimage.o \ ++ $(FIT_OBJS-y) \ + $(FIT_SIG_OBJS-y) \ + common/bootm.o \ + lib/crc32.o \ + default_image.o \ + lib/fdtdec_common.o \ + lib/fdtdec.o \ +- fit_common.o \ +- fit_image.o \ +- common/image-fit.o \ +- image-host.o \ + common/image.o \ + imagetool.o \ + imximage.o \ +-- +2.9.1 + diff --git a/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch b/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch deleted file mode 100644 index 380e8cce3f..0000000000 --- a/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 43cb65b7a00e4759427a6e4b8a02039e43dab5a5 Mon Sep 17 00:00:00 2001 -From: Andreas Fenkart -Date: Fri, 25 Mar 2016 14:52:19 +0100 -Subject: [PATCH] tools: env: bug: config structs must be defined in tools - library -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -fw_senten/fw_printenv can be compiled as a tools library, excluding the -fw_env_main object. - -Fixes build error when linking with libubootenv: - fw_env.c:(.text+0x94): undefined reference to `common_args' - -Backported from: 43cb65b7a00e4759427a6e4b8a02039e43dab5a5 - -Reported-by: Stefano Babic -Signed-off-by: Andreas Fenkart -Signed-off-by: Jörg Krause ---- - tools/env/fw_env.c | 4 ++++ - tools/env/fw_env_main.c | 4 ---- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c -index 5c7505c..1420ac5 100644 ---- a/tools/env/fw_env.c -+++ b/tools/env/fw_env.c -@@ -35,6 +35,10 @@ - - #include "fw_env.h" - -+struct common_args common_args; -+struct printenv_args printenv_args; -+struct setenv_args setenv_args; -+ - #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d)) - - #define min(x, y) ({ \ -diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c -index 3bec5b9..3706d8f 100644 ---- a/tools/env/fw_env_main.c -+++ b/tools/env/fw_env_main.c -@@ -49,10 +49,6 @@ static struct option long_options[] = { - {NULL, 0, NULL, 0} - }; - --struct common_args common_args; --struct printenv_args printenv_args; --struct setenv_args setenv_args; -- - void usage_printenv(void) - { - --- -2.8.2 - diff --git a/package/uboot-tools/Config.in b/package/uboot-tools/Config.in index aca310bfe3..f55614bac5 100644 --- a/package/uboot-tools/Config.in +++ b/package/uboot-tools/Config.in @@ -7,15 +7,26 @@ config BR2_PACKAGE_UBOOT_TOOLS if BR2_PACKAGE_UBOOT_TOOLS -config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE - bool "mkimage" +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 - The mkimage tool from Das U-Boot bootloader, which allows - generation of U-Boot images in various formats. + Enables support for Flattened Image Tree (FIT). -if BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE + 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. -config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT +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 @@ -38,9 +49,19 @@ config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT 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. @@ -49,13 +70,17 @@ config BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV bool "fw_printenv" default y help - The fw_printenv / fw_setenv tools from Das U-Boot + 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. diff --git a/package/uboot-tools/Config.in.host b/package/uboot-tools/Config.in.host index b5a42d9e67..52a4c2ec30 100644 --- a/package/uboot-tools/Config.in.host +++ b/package/uboot-tools/Config.in.host @@ -7,6 +7,20 @@ config BR2_PACKAGE_HOST_UBOOT_TOOLS 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 @@ -24,3 +38,5 @@ config BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT be verified in this way. endif + +endif diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash index 747d133dfc..5473cfeab6 100644 --- a/package/uboot-tools/uboot-tools.hash +++ b/package/uboot-tools/uboot-tools.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 e49337262ecac44dbdeac140f2c6ebd1eba345e0162b0464172e7f05583ed7bb u-boot-2016.03.tar.bz2 +sha256 6c425175f93a4bcf2ec9faf5658ef279633dbd7856a293d95bd1ff516528ecf2 u-boot-2017.01.tar.bz2 diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk index d1ebd6feee..fe363e7e78 100644 --- a/package/uboot-tools/uboot-tools.mk +++ b/package/uboot-tools/uboot-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -UBOOT_TOOLS_VERSION = 2016.03 +UBOOT_TOOLS_VERSION = 2017.01 UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2 UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot UBOOT_TOOLS_LICENSE = GPLv2+ @@ -16,18 +16,25 @@ define UBOOT_TOOLS_CONFIGURE_CMDS touch $(@D)/include/config/auto.conf endef +UBOOT_TOOLS_MAKE_OPTS = CROSS_COMPILE="$(TARGET_CROSS)" \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + STRIP=$(TARGET_STRIP) + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT),y) +UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT=y +UBOOT_TOOLS_DEPENDENCIES += dtc +endif + +ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y) +UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y +UBOOT_TOOLS_DEPENDENCIES += openssl host-pkgconf +endif + define UBOOT_TOOLS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ - CROSS_COMPILE="$(TARGET_CROSS)" \ - CFLAGS="$(TARGET_CFLAGS)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ - CROSS_BUILD_TOOLS=y \ - CONFIG_FIT_SIGNATURE=$(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT) \ - tools-only - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ - CROSS_COMPILE="$(TARGET_CROSS)" \ - CFLAGS="$(TARGET_CFLAGS)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \ + CROSS_BUILD_TOOLS=y tools-only + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \ env no-dot-config-targets=env endef @@ -35,10 +42,7 @@ 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 -ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT),y) -UBOOT_TOOLS_DEPENDENCIES += openssl host-pkgconf -endif # BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT -endif # BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE +endif ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKENVIMAGE),y) define UBOOT_TOOLS_INSTALL_MKENVIMAGE @@ -74,22 +78,27 @@ define UBOOT_TOOLS_INSTALL_TARGET_CMDS $(UBOOT_TOOLS_INSTALL_DUMPIMAGE) endef -ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y) -HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl -endif - 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 +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 +HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl +endif + define HOST_UBOOT_TOOLS_BUILD_CMDS - $(MAKE1) -C $(@D) \ - CONFIG_FIT_SIGNATURE=$(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT) \ - HOSTCC="$(HOSTCC)" \ - HOSTCFLAGS="$(HOST_CFLAGS)" \ - HOSTLDFLAGS="$(HOST_LDFLAGS)" \ - tools-only + $(MAKE1) -C $(@D) $(HOST_UBOOT_TOOLS_MAKE_OPTS) tools-only endef define HOST_UBOOT_TOOLS_INSTALL_CMDS diff --git a/package/ucl/ucl.mk b/package/ucl/ucl.mk index 2654a5a7ca..b183a13b26 100644 --- a/package/ucl/ucl.mk +++ b/package/ucl/ucl.mk @@ -9,4 +9,7 @@ UCL_SITE = http://www.oberhumer.com/opensource/ucl/download UCL_LICENSE = GPLv2+ 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 0000000000..0f093d1d50 --- /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.mk b/package/uclibc-ng-test/uclibc-ng-test.mk new file mode 100644 index 0000000000..9a0240c431 --- /dev/null +++ b/package/uclibc-ng-test/uclibc-ng-test.mk @@ -0,0 +1,53 @@ +################################################################################ +# +# uclibc-ng-test +# +################################################################################ + +UCLIBC_NG_TEST_VERSION = c9b9876cefc142a23aa622b821290ed16af80058 +UCLIBC_NG_TEST_SITE = git://uclibc-ng.org/git/uclibc-ng-test +UCLIBC_NG_TEST_LICENSE = LGPLv2.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 + +# 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 + +# 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)" \ + 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-fstat-make-new-code-aarch64-specific.patch b/package/uclibc/0001-fstat-make-new-code-aarch64-specific.patch new file mode 100644 index 0000000000..eb0198d44d --- /dev/null +++ b/package/uclibc/0001-fstat-make-new-code-aarch64-specific.patch @@ -0,0 +1,29 @@ +From 71127e5cc937878883e6021da3da337a7aa9c099 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Fri, 3 Feb 2017 06:04:16 +0100 +Subject: [PATCH 10229/10229] fstat: make new code aarch64 specific + +The new code get's used by MIPS64 N64 and fails. +Make the new code aarch64 specific. + +Signed-off-by: Waldemar Brodkorb +--- + libc/sysdeps/linux/common/fstat.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libc/sysdeps/linux/common/fstat.c b/libc/sysdeps/linux/common/fstat.c +index ac77eb2..c27f926 100644 +--- a/libc/sysdeps/linux/common/fstat.c ++++ b/libc/sysdeps/linux/common/fstat.c +@@ -21,7 +21,7 @@ int fstat(int fd, struct stat *buf) + } + libc_hidden_def(fstat) + +-#elif __WORDSIZE == 64 && defined __NR_newfstatat ++#elif __WORDSIZE == 64 && defined __NR_newfstatat && __aarch64__ + #include + + int fstat(int fd, struct stat *buf) +-- +2.1.4 + diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in index efa84e9e85..0628af309b 100644 --- a/package/uclibc/Config.in +++ b/package/uclibc/Config.in @@ -1,12 +1,12 @@ if BR2_TOOLCHAIN_BUILDROOT_UCLIBC +comment "uClibc Options" + config BR2_PACKAGE_UCLIBC bool default y select BR2_PACKAGE_LINUX_HEADERS -comment "uClibc Options" - config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" default "package/uclibc/uClibc-ng.config" @@ -41,42 +41,37 @@ 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" - default BR2_PTHREADS_NATIVE - default BR2_PTHREADS_OLD if !BR2_USE_MMU help Use this option to select the thread library implementation that should be used in your toolchain. - config BR2_PTHREADS_NONE - bool "none" - - config BR2_PTHREADS - bool "linuxthreads" - select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_m68k - - config BR2_PTHREADS_OLD - bool "linuxthreads (stable/old)" - select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_m68k || BR2_arm || BR2_armeb || BR2_xtensa - config BR2_PTHREADS_NATIVE bool "Native POSIX Threading (NPTL)" select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU - depends on !BR2_m68k + depends on !BR2_m68k && !BR2_microblaze && !BR2_or1k + + config BR2_PTHREADS + bool "linuxthreads" + select BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_bfin || BR2_m68k || BR2_microblaze || BR2_or1k || BR2_arm || BR2_armeb || BR2_xtensa + + config BR2_PTHREADS_NONE + bool "none" + endchoice config BR2_PTHREAD_DEBUG bool "Thread library debugging" - depends on BR2_PTHREADS || BR2_PTHREADS_OLD || BR2_PTHREADS_NATIVE + depends on BR2_PTHREADS || BR2_PTHREADS_NATIVE select BR2_TOOLCHAIN_HAS_THREADS_DEBUG help Build the thread library with debugging enabled. @@ -101,32 +96,17 @@ config BR2_UCLIBC_INSTALL_UTILS You can save ~32 KiB in target space by disabling them since they're normally not needed. -config BR2_UCLIBC_INSTALL_TEST_SUITE - bool "Compile and install uClibc tests" - select BR2_PACKAGE_MAKE - depends on BR2_USE_MMU # make - help - Enabling this option will compile and install the uClibc test suite. - This is useful if you want to check if the uClibc library is working - for your architecture and/or help developing uClibc. - - The test suite will be installed into /root/uClibc directory. To run - the test suite enter the /root/uClibc/test directory and type - "make UCLIBC_ONLY=1 CC=/bin/true check". - - See the /root/uClibc/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. - # 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 "bfin" if BR2_bfin 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 @@ -148,12 +128,11 @@ config BR2_UCLIBC_MIPS_ABI default "N32" if BR2_MIPS_NABI32 default "N64" if BR2_MIPS_NABI64 -config BR2_UCLIBC_MIPS_ISA +config BR2_UCLIBC_MIPS_NAN string depends on BR2_UCLIBC_TARGET_ARCH = "mips" - default "MIPS32" if BR2_mips_32 - default "MIPS32R2" if BR2_mips_32r2 - default "MIPS64" if BR2_mips_64 + default "LEGACY" if BR2_MIPS_CPU_MIPS32 || BR2_MIPS_CPU_MIPS64 + default "2008" if BR2_MIPS_CPU_MIPS32R6 || BR2_MIPS_CPU_MIPS64R6 config BR2_UCLIBC_SH_TYPE string diff --git a/package/uclibc/uClibc-ng.config b/package/uclibc/uClibc-ng.config index 2671e06777..528bce9657 100644 --- a/package/uclibc/uClibc-ng.config +++ b/package/uclibc/uClibc-ng.config @@ -5,8 +5,6 @@ KERNEL_HEADERS="/usr/src/linux/include" # UCLIBC_STATIC_LDCONFIG is not set LDSO_RUNPATH=y LDSO_RUNPATH_OF_EXECUTABLE=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_HAS_OBSTACK=y UCLIBC_HAS_UTMPX=y UCLIBC_HAS_UTMP=y UCLIBC_SUSV2_LEGACY=y diff --git a/package/uclibc/uclibc.hash b/package/uclibc/uclibc.hash index eccce34951..d2fbd0aef4 100644 --- a/package/uclibc/uclibc.hash +++ b/package/uclibc/uclibc.hash @@ -1,2 +1,2 @@ # From http://www.uclibc-ng.org/ -sha256 3c63d9f8c8b98b65fa5c4040d1c8ab1b36e99a16e1093810cedad51ac15c9a9e uClibc-ng-1.0.14.tar.xz +sha256 f2004c85db8e07e9f1c2e8b7c513fa7c237bc9f9685d8e1bfc89535b8a85449b uClibc-ng-1.0.22.tar.xz diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk index b8ccee2cc8..8f6035ec2f 100644 --- a/package/uclibc/uclibc.mk +++ b/package/uclibc/uclibc.mk @@ -4,13 +4,17 @@ # ################################################################################ -UCLIBC_VERSION = 1.0.14 +UCLIBC_VERSION = 1.0.22 UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB UCLIBC_INSTALL_STAGING = YES +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 @@ -47,6 +51,40 @@ UCLIBC_LOCALES = \ $(firstword $(subst .,$(space),$(locale)))) endif +# noMMU binary formats +ifeq ($(BR2_BINFMT_FDPIC),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config) + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config) +endef +endif +ifeq ($(BR2_BINFMT_FLAT_ONE),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config) +endef +endif +ifeq ($(BR2_BINFMT_FLAT_SEP_DATA),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config) + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config) +endef +endif +ifeq ($(BR2_BINFMT_FLAT_SHARED),y) +define UCLIBC_BINFMT_CONFIG + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config) + $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config) +endef +endif + # # ARC definitions # @@ -75,10 +113,9 @@ define UCLIBC_ARM_ABI_CONFIG $(call KCONFIG_ENABLE_OPT,CONFIG_ARM_EABI,$(@D)/.config) endef -# Thumb1 build is broken with threads with old gcc versions (4.7 and -# 4.8). Since all cores supporting Thumb1 also support ARM, we use ARM -# code in this case. -ifeq ($(BR2_GCC_VERSION_4_7_X)$(BR2_GCC_VERSION_4_8_X):$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),y:yy) +# Thumb1 build is broken with threads with old gcc versions (< 4.8). Since +# all cores supporting Thumb1 also support ARM, we use ARM code in this case. +ifeq ($(BR2_GCC_VERSION_4_8_X)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_TOOLCHAIN_HAS_THREADS),yyy) UCLIBC_EXTRA_CFLAGS += -marm endif @@ -126,10 +163,10 @@ define UCLIBC_MIPS_ABI_CONFIG $(call KCONFIG_ENABLE_OPT,$(UCLIBC_MIPS_ABI),$(@D)/.config) endef -UCLIBC_MIPS_ISA = CONFIG_MIPS_ISA_$(call qstrip,$(BR2_UCLIBC_MIPS_ISA)) -define UCLIBC_MIPS_ISA_CONFIG - $(SED) '/CONFIG_MIPS_ISA_.*/d' $(@D)/.config - $(call KCONFIG_ENABLE_OPT,$(UCLIBC_MIPS_ISA),$(@D)/.config) +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),$(@D)/.config) endef endif # mips @@ -181,6 +218,15 @@ define UCLIBC_X86_TYPE_CONFIG endef endif +# +# Debug +# +ifeq ($(BR2_ENABLE_DEBUG),y) +define UCLIBC_DEBUG_CONFIG + $(call KCONFIG_ENABLE_OPT,DODEBUG,$(@D)/.config) +endef +endif + # # Endianness # @@ -201,14 +247,6 @@ define UCLIBC_ENDIAN_CONFIG endef endif -# -# Largefile -# - -define UCLIBC_LARGEFILE_CONFIG - $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_LFS,$(@D)/.config) -endef - # # MMU # @@ -285,29 +323,19 @@ endif ifeq ($(BR2_PTHREADS_NONE),y) define UCLIBC_THREAD_CONFIG $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS_OLD,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_LINUXTHREADS,$(@D)/.config) $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS_NATIVE,$(@D)/.config) endef else ifeq ($(BR2_PTHREADS),y) define UCLIBC_THREAD_CONFIG $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS,$(@D)/.config) - $(call KCONFIG_ENABLE_OPT,LINUXTHREADS_NEW,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS_OLD,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS_NATIVE,$(@D)/.config) -endef -else ifeq ($(BR2_PTHREADS_OLD),y) -define UCLIBC_THREAD_CONFIG - $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS_NEW,$(@D)/.config) - $(call KCONFIG_ENABLE_OPT,LINUXTHREADS_OLD,$(@D)/.config) + $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_LINUXTHREADS,$(@D)/.config) $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_THREADS_NATIVE,$(@D)/.config) endef else ifeq ($(BR2_PTHREADS_NATIVE),y) define UCLIBC_THREAD_CONFIG $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS_NEW,$(@D)/.config) - $(call KCONFIG_DISABLE_OPT,LINUXTHREADS_OLD,$(@D)/.config) + $(call KCONFIG_DISABLE_OPT,UCLIBC_HAS_LINUXTHREADS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,UCLIBC_HAS_THREADS_NATIVE,$(@D)/.config) endef endif @@ -382,6 +410,7 @@ define UCLIBC_KCONFIG_FIXUP_CMDS $(call KCONFIG_SET_OPT,DEVEL_PREFIX,"/usr",$(@D)/.config) $(call KCONFIG_SET_OPT,SHARED_LIB_LOADER_PREFIX,"/lib",$(@D)/.config) $(UCLIBC_MMU_CONFIG) + $(UCLIBC_BINFMT_CONFIG) $(UCLIBC_ARC_TYPE_CONFIG) $(UCLIBC_ARC_PAGE_SIZE_CONFIG) $(UCLIBC_ARM_ABI_CONFIG) @@ -389,11 +418,12 @@ define UCLIBC_KCONFIG_FIXUP_CMDS $(UCLIBC_ARM_NO_CONTEXT_FUNCS) $(UCLIBC_M68K_BINFMT_FLAT) $(UCLIBC_MIPS_ABI_CONFIG) - $(UCLIBC_MIPS_ISA_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_LARGEFILE_CONFIG) $(UCLIBC_IPV6_CONFIG) @@ -407,16 +437,6 @@ define UCLIBC_KCONFIG_FIXUP_CMDS $(UCLIBC_SHARED_LIBS_CONFIG) endef -ifeq ($(BR2_UCLIBC_INSTALL_TEST_SUITE),y) -define UCLIBC_BUILD_TEST_SUITE - $(MAKE1) -C $(@D) \ - $(UCLIBC_MAKE_FLAGS) \ - TEST_INSTALLED_UCLIBC=1 \ - UCLIBC_ONLY=1 \ - test_compile -endef -endif - define UCLIBC_BUILD_CMDS $(MAKE) -C $(@D) $(UCLIBC_MAKE_FLAGS) headers $(MAKE) -C $(@D) $(UCLIBC_MAKE_FLAGS) @@ -425,15 +445,6 @@ define UCLIBC_BUILD_CMDS HOSTCC="$(HOSTCC)" hostutils endef -ifeq ($(BR2_UCLIBC_INSTALL_TEST_SUITE),y) -define UCLIBC_INSTALL_TEST_SUITE - mkdir -p $(TARGET_DIR)/root/uClibc - cp -rdpf $(@D)/test $(TARGET_DIR)/root/uClibc - $(INSTALL) -D -m 0644 $(@D)/Rules.mak $(TARGET_DIR)/root/uClibc/Rules.mak - $(INSTALL) -D -m 0644 $(@D)/.config $(TARGET_DIR)/root/uClibc/.config -endef -endif - ifeq ($(BR2_UCLIBC_INSTALL_UTILS),y) define UCLIBC_INSTALL_UTILS_TARGET $(MAKE1) -C $(@D) \ @@ -452,8 +463,6 @@ define UCLIBC_INSTALL_TARGET_CMDS RUNTIME_PREFIX=/ \ install_runtime $(UCLIBC_INSTALL_UTILS_TARGET) - $(UCLIBC_BUILD_TEST_SUITE) - $(UCLIBC_INSTALL_TEST_SUITE) $(UCLIBC_INSTALL_LDSO_SYMLINKS) endef 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 0000000000..ea347aef73 --- /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/Config.in b/package/udisks/Config.in index 8b8fd2880e..029860fc5c 100644 --- a/package/udisks/Config.in +++ b/package/udisks/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_UDISKS depends on BR2_TOOLCHAIN_HAS_THREADS # dbus-glib -> glib2 depends on BR2_USE_MMU # lvm2 depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 select BR2_PACKAGE_DBUS select BR2_PACKAGE_DBUS_GLIB depends on BR2_USE_WCHAR # dbus-glib -> glib2 @@ -39,7 +40,7 @@ comment "udisks needs udev /dev management" depends on BR2_USE_MMU depends on !BR2_PACKAGE_HAS_UDEV -comment "udisks needs a toolchain w/ wchar, threads, dynamic library" +comment "udisks needs a glibc or uClibc toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ - BR2_STATIC_LIBS + BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk index eea79e5659..4d3ede71b1 100644 --- a/package/udisks/udisks.mk +++ b/package/udisks/udisks.mk @@ -8,6 +8,8 @@ UDISKS_VERSION = 1.0.5 UDISKS_SITE = http://hal.freedesktop.org/releases UDISKS_LICENSE = GPLv2+ UDISKS_LICENSE_FILES = COPYING +# For 0002-Fix-systemd-service-file.patch +UDISKS_AUTORECONF = YES UDISKS_DEPENDENCIES = \ sg3_utils \ diff --git a/package/udpcast/Config.in b/package/udpcast/Config.in index 0424db797e..ef94b30a99 100644 --- a/package/udpcast/Config.in +++ b/package/udpcast/Config.in @@ -14,8 +14,6 @@ config BR2_PACKAGE_UDPCAST if BR2_PACKAGE_UDPCAST -menu "udpcast tools selection" - config BR2_PACKAGE_UDPCAST_SENDER bool "sender" help @@ -26,6 +24,4 @@ config BR2_PACKAGE_UDPCAST_RECEIVER help The udpcast receiver. -endmenu - endif diff --git a/package/udpxy/Config.in b/package/udpxy/Config.in new file mode 100644 index 0000000000..f442a2f2fe --- /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 0000000000..4042a41dd6 --- /dev/null +++ b/package/udpxy/udpxy.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 6ce33b1d14a1aeab4bd2566aca112e41943df4d002a7678d9a715108e6b714bd udpxy.1.0.23-9-prod.tar.gz diff --git a/package/udpxy/udpxy.mk b/package/udpxy/udpxy.mk new file mode 100644 index 0000000000..dd8c91fcbc --- /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 = GPLv3+ +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/uhttpd/0001-Remove-Werror.patch b/package/uhttpd/0001-Remove-Werror.patch new file mode 100644 index 0000000000..67028cfa2c --- /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/Config.in b/package/uhttpd/Config.in new file mode 100644 index 0000000000..e463b9305c --- /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 0000000000..59e54ad49a --- /dev/null +++ b/package/uhttpd/uhttpd.hash @@ -0,0 +1,2 @@ +# No hash for this git snapshot +none xxx uhttpd-59e0c739634f46a164d939e54416287b91ff8a9b.tar.gz diff --git a/package/uhttpd/uhttpd.mk b/package/uhttpd/uhttpd.mk new file mode 100644 index 0000000000..be0d7d63c6 --- /dev/null +++ b/package/uhttpd/uhttpd.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# uhttpd +# +################################################################################ + +UHTTPD_VERSION = 59e0c739634f46a164d939e54416287b91ff8a9b +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/ulogd/0001-ulogd-Use-dev-null-as-dummy-logfile-when-logging-to-.patch b/package/ulogd/0001-ulogd-Use-dev-null-as-dummy-logfile-when-logging-to-.patch new file mode 100644 index 0000000000..c7b284a0af --- /dev/null +++ b/package/ulogd/0001-ulogd-Use-dev-null-as-dummy-logfile-when-logging-to-.patch @@ -0,0 +1,70 @@ +From 8a6ddd1cb2b55c234f1a97f7e5d996f24f46b6f8 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Sat, 16 May 2015 17:43:23 +0200 +Subject: [PATCH] ulogd: Use /dev/null as dummy logfile when logging to + syslog + +Fixes compilation error with musl libc: + +ulogd.c:86:13: error: storage size of 'syslog_dummy' isn't known + static FILE syslog_dummy; + +Signed-off-by: Felix Janda +[Rahul Bedarkar: Backported from https://git.netfilter.org/ulogd2/commit/?id=8a6ddd1cb2b55c234f1a97f7e5d996f24f46b6f8] +Signed-off-by: Rahul Bedarkar +--- + src/ulogd.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/ulogd.c b/src/ulogd.c +index e7cde39..958c30a 100644 +--- a/src/ulogd.c ++++ b/src/ulogd.c +@@ -83,7 +83,7 @@ static char *ulogd_logfile = NULL; + static const char *ulogd_configfile = ULOGD_CONFIGFILE; + static const char *ulogd_pidfile = NULL; + static int ulogd_pidfile_fd = -1; +-static FILE syslog_dummy; ++static FILE *syslog_dummy; + + static int info_mode = 0; + +@@ -427,7 +427,7 @@ void __ulogd_log(int level, char *file, int line, const char *format, ...) + if (level < loglevel_ce.u.value) + return; + +- if (logfile == &syslog_dummy) { ++ if (logfile == syslog_dummy) { + /* FIXME: this omits the 'file' string */ + va_start(ap, format); + vsyslog(ulogd2syslog_level(level), format, ap); +@@ -950,7 +950,7 @@ static int logfile_open(const char *name) + logfile = stdout; + } else if (!strcmp(name, "syslog")) { + openlog("ulogd", LOG_PID, LOG_DAEMON); +- logfile = &syslog_dummy; ++ logfile = syslog_dummy = fopen("/dev/null", "w"); + } else { + logfile = fopen(ulogd_logfile, "a"); + if (!logfile) { +@@ -1240,7 +1240,7 @@ static void sigterm_handler(int signal) + unload_plugins(); + #endif + +- if (logfile != NULL && logfile != stdout && logfile != &syslog_dummy) { ++ if (logfile != NULL && logfile != stdout) { + fclose(logfile); + logfile = NULL; + } +@@ -1262,7 +1262,7 @@ static void signal_handler(int signal) + switch (signal) { + case SIGHUP: + /* reopen logfile */ +- if (logfile != stdout && logfile != &syslog_dummy) { ++ if (logfile != stdout && logfile != syslog_dummy) { + fclose(logfile); + logfile = fopen(ulogd_logfile, "a"); + if (!logfile) { +-- +2.6.2 + diff --git a/package/ulogd/0002-Define-_GNU_SOURCE-to-get-members-of-tcphdr.patch b/package/ulogd/0002-Define-_GNU_SOURCE-to-get-members-of-tcphdr.patch new file mode 100644 index 0000000000..0fbef834e4 --- /dev/null +++ b/package/ulogd/0002-Define-_GNU_SOURCE-to-get-members-of-tcphdr.patch @@ -0,0 +1,44 @@ +From 89263555143e3c0125320ca565b41805f27460c9 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Sat, 16 May 2015 15:44:32 +0200 +Subject: [PATCH] Define _GNU_SOURCE to get members of tcphdr + +The source uses linux names for members of tcphdr. For example +"source" instead of "th_sport", ... musl libc's headers need +_GNU_SOURCE defined in order to expose these. + +Signed-off-by: Felix Janda +[Rahul Bedarkar: Backported from https://git.netfilter.org/ulogd2/commit/?id=89263555143e3c0125320ca565b41805f27460c9] +Signed-off-by: Rahul Bedarkar +--- + filter/raw2packet/ulogd_raw2packet_BASE.c | 1 + + filter/ulogd_filter_PWSNIFF.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/filter/raw2packet/ulogd_raw2packet_BASE.c b/filter/raw2packet/ulogd_raw2packet_BASE.c +index c9d5227..ad894fc 100644 +--- a/filter/raw2packet/ulogd_raw2packet_BASE.c ++++ b/filter/raw2packet/ulogd_raw2packet_BASE.c +@@ -35,6 +35,7 @@ + #include + #include + #include ++#define _GNU_SOURCE + #include + #include + #include +diff --git a/filter/ulogd_filter_PWSNIFF.c b/filter/ulogd_filter_PWSNIFF.c +index 5169eee..a3e2b42 100644 +--- a/filter/ulogd_filter_PWSNIFF.c ++++ b/filter/ulogd_filter_PWSNIFF.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#define _GNU_SOURCE + #include + #include + +-- +2.6.2 + diff --git a/package/ulogd/0003-Use-stdint-types-everywhere.patch b/package/ulogd/0003-Use-stdint-types-everywhere.patch new file mode 100644 index 0000000000..66408d6d0f --- /dev/null +++ b/package/ulogd/0003-Use-stdint-types-everywhere.patch @@ -0,0 +1,792 @@ +From c9337b31f756cae85299c8275b21088ce02885e2 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Wed, 24 Jun 2015 19:53:34 +0200 +Subject: [PATCH] Use stdint types everywhere + +Signed-off-by: Felix Janda +[Rahul Bedarkar: + - backported from https://git.netfilter.org/ulogd2/commit/?id=c9337b31f756cae85299c8275b21088ce02885e2 + - remove hunk for output/ulogd_output_IPFIX.c as file doesn't exist in version we use] +Signed-off-by: Rahul Bedarkar +--- + filter/raw2packet/ulogd_raw2packet_BASE.c | 35 +++++++++++++------------- + filter/ulogd_filter_HWHDR.c | 6 ++--- + filter/ulogd_filter_IP2HBIN.c | 4 +-- + filter/ulogd_filter_IP2STR.c | 2 +- + filter/ulogd_filter_MARK.c | 4 +-- + filter/ulogd_filter_PWSNIFF.c | 4 +-- + include/libipulog/libipulog.h | 7 +++--- + include/ulogd/addr.h | 4 ++- + include/ulogd/conffile.h | 10 ++++---- + include/ulogd/ipfix_protocol.h | 38 +++++++++++++++------------- + include/ulogd/ulogd.h | 42 +++++++++++++++---------------- + input/packet/ulogd_inppkt_NFLOG.c | 16 ++++++------ + input/packet/ulogd_inppkt_UNIXSOCK.c | 34 ++++++++++++------------- + libipulog/libipulog.c | 8 +++--- + output/mysql/ulogd_output_MYSQL.c | 2 +- + output/ulogd_output_IPFIX.c | 20 +++++++-------- + src/addr.c | 4 +-- + util/db.c | 2 +- + util/printpkt.c | 6 ++--- + 19 files changed, 126 insertions(+), 122 deletions(-) + +diff --git a/filter/raw2packet/ulogd_raw2packet_BASE.c b/filter/raw2packet/ulogd_raw2packet_BASE.c +index ad894fc..8a6180c 100644 +--- a/filter/raw2packet/ulogd_raw2packet_BASE.c ++++ b/filter/raw2packet/ulogd_raw2packet_BASE.c +@@ -44,6 +44,7 @@ + #include + #include + #include ++#include + + enum input_keys { + INKEY_RAW_PCKT, +@@ -538,7 +539,7 @@ static struct ulogd_key iphdr_rets[] = { + ***********************************************************************/ + + static int _interp_tcp(struct ulogd_pluginstance *pi, struct tcphdr *tcph, +- u_int32_t len) ++ uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + +@@ -573,7 +574,7 @@ static int _interp_tcp(struct ulogd_pluginstance *pi, struct tcphdr *tcph, + ***********************************************************************/ + + static int _interp_udp(struct ulogd_pluginstance *pi, struct udphdr *udph, +- u_int32_t len) ++ uint32_t len) + + { + struct ulogd_key *ret = pi->output.keys; +@@ -602,7 +603,7 @@ typedef struct sctphdr { + } __attribute__((packed)) sctp_sctphdr_t; + + static int _interp_sctp(struct ulogd_pluginstance *pi, struct sctphdr *sctph, +- u_int32_t len) ++ uint32_t len) + + { + struct ulogd_key *ret = pi->output.keys; +@@ -625,7 +626,7 @@ static int _interp_sctp(struct ulogd_pluginstance *pi, struct sctphdr *sctph, + ***********************************************************************/ + + static int _interp_icmp(struct ulogd_pluginstance *pi, struct icmphdr *icmph, +- u_int32_t len) ++ uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + +@@ -663,7 +664,7 @@ static int _interp_icmp(struct ulogd_pluginstance *pi, struct icmphdr *icmph, + ***********************************************************************/ + + static int _interp_icmpv6(struct ulogd_pluginstance *pi, struct icmp6_hdr *icmph, +- u_int32_t len) ++ uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + +@@ -691,7 +692,7 @@ static int _interp_icmpv6(struct ulogd_pluginstance *pi, struct icmp6_hdr *icmph + * IPSEC HEADER + ***********************************************************************/ + static int _interp_ahesp(struct ulogd_pluginstance *pi, void *protoh, +- u_int32_t len) ++ uint32_t len) + { + #if 0 + struct ulogd_key *ret = pi->output.keys; +@@ -711,14 +712,14 @@ static int _interp_ahesp(struct ulogd_pluginstance *pi, void *protoh, + * IP HEADER + ***********************************************************************/ + +-static int _interp_iphdr(struct ulogd_pluginstance *pi, u_int32_t len) ++static int _interp_iphdr(struct ulogd_pluginstance *pi, uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + struct iphdr *iph = + ikey_get_ptr(&pi->input.keys[INKEY_RAW_PCKT]); +- void *nexthdr = (u_int32_t *)iph + iph->ihl; ++ void *nexthdr = (uint32_t *)iph + iph->ihl; + +- if (len < sizeof(struct iphdr) || len <= (u_int32_t)(iph->ihl * 4)) ++ if (len < sizeof(struct iphdr) || len <= (uint32_t)(iph->ihl * 4)) + return ULOGD_IRET_OK; + len -= iph->ihl * 4; + +@@ -759,7 +760,7 @@ static int _interp_iphdr(struct ulogd_pluginstance *pi, u_int32_t len) + * IPv6 HEADER + ***********************************************************************/ + +-static int ip6_ext_hdr(u_int8_t nexthdr) ++static int ip6_ext_hdr(uint8_t nexthdr) + { + switch (nexthdr) { + case IPPROTO_HOPOPTS: +@@ -774,12 +775,12 @@ static int ip6_ext_hdr(u_int8_t nexthdr) + } + } + +-static int _interp_ipv6hdr(struct ulogd_pluginstance *pi, u_int32_t len) ++static int _interp_ipv6hdr(struct ulogd_pluginstance *pi, uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + struct ip6_hdr *ipv6h = ikey_get_ptr(&pi->input.keys[INKEY_RAW_PCKT]); + unsigned int ptr, hdrlen = 0; +- u_int8_t curhdr; ++ uint8_t curhdr; + int fragment = 0; + + if (len < sizeof(struct ip6_hdr)) +@@ -889,7 +890,7 @@ out: + /*********************************************************************** + * ARP HEADER + ***********************************************************************/ +-static int _interp_arp(struct ulogd_pluginstance *pi, u_int32_t len) ++static int _interp_arp(struct ulogd_pluginstance *pi, uint32_t len) + { + struct ulogd_key *ret = pi->output.keys; + const struct ether_arp *arph = +@@ -914,9 +915,9 @@ static int _interp_arp(struct ulogd_pluginstance *pi, u_int32_t len) + * ETHER HEADER + ***********************************************************************/ + +-static int _interp_bridge(struct ulogd_pluginstance *pi, u_int32_t len) ++static int _interp_bridge(struct ulogd_pluginstance *pi, uint32_t len) + { +- const u_int16_t proto = ++ const uint16_t proto = + ikey_get_u16(&pi->input.keys[INKEY_OOB_PROTOCOL]); + + switch (proto) { +@@ -938,8 +939,8 @@ static int _interp_bridge(struct ulogd_pluginstance *pi, u_int32_t len) + + static int _interp_pkt(struct ulogd_pluginstance *pi) + { +- u_int32_t len = ikey_get_u32(&pi->input.keys[INKEY_RAW_PCKTLEN]); +- u_int8_t family = ikey_get_u8(&pi->input.keys[INKEY_OOB_FAMILY]); ++ uint32_t len = ikey_get_u32(&pi->input.keys[INKEY_RAW_PCKTLEN]); ++ uint8_t family = ikey_get_u8(&pi->input.keys[INKEY_OOB_FAMILY]); + struct ulogd_key *ret = pi->output.keys; + + okey_set_u16(&ret[KEY_OOB_PROTOCOL], +diff --git a/filter/ulogd_filter_HWHDR.c b/filter/ulogd_filter_HWHDR.c +index 3b095c9..10c95c4 100644 +--- a/filter/ulogd_filter_HWHDR.c ++++ b/filter/ulogd_filter_HWHDR.c +@@ -143,10 +143,10 @@ static void *hwhdr_get_daddr(struct ulogd_key *inp) + return ikey_get_ptr(&inp[KEY_RAW_MAC]); + } + +-static u_int16_t hwhdr_get_len(struct ulogd_key *inp) ++static uint16_t hwhdr_get_len(struct ulogd_key *inp) + { + void *len = ikey_get_ptr(&inp[KEY_RAW_MAC]) + 2 * ETH_ALEN; +- return ntohs(*(u_int16_t *) len); ++ return ntohs(*(uint16_t *) len); + } + static int parse_ethernet(struct ulogd_key *ret, struct ulogd_key *inp) + { +@@ -171,7 +171,7 @@ static int interp_mac2str(struct ulogd_pluginstance *pi) + { + struct ulogd_key *ret = pi->output.keys; + struct ulogd_key *inp = pi->input.keys; +- u_int16_t type = 0; ++ uint16_t type = 0; + + if (pp_is_valid(inp, KEY_OOB_PROTOCOL)) + okey_set_u16(&ret[KEY_MAC_PROTOCOL], +diff --git a/filter/ulogd_filter_IP2HBIN.c b/filter/ulogd_filter_IP2HBIN.c +index 4fd3ff1..087e824 100644 +--- a/filter/ulogd_filter_IP2HBIN.c ++++ b/filter/ulogd_filter_IP2HBIN.c +@@ -116,8 +116,8 @@ static int interp_ip2hbin(struct ulogd_pluginstance *pi) + { + struct ulogd_key *ret = pi->output.keys; + struct ulogd_key *inp = pi->input.keys; +- u_int8_t family = ikey_get_u8(&inp[KEY_OOB_FAMILY]); +- u_int8_t convfamily = family; ++ uint8_t family = ikey_get_u8(&inp[KEY_OOB_FAMILY]); ++ uint8_t convfamily = family; + int i; + + switch (family) { +diff --git a/filter/ulogd_filter_IP2STR.c b/filter/ulogd_filter_IP2STR.c +index 732e1ef..66324b0 100644 +--- a/filter/ulogd_filter_IP2STR.c ++++ b/filter/ulogd_filter_IP2STR.c +@@ -168,7 +168,7 @@ static int ip2str(struct ulogd_key *inp, int index, int oindex) + } + + switch (convfamily) { +- u_int32_t ip; ++ uint32_t ip; + case AF_INET6: + inet_ntop(AF_INET6, + ikey_get_u128(&inp[index]), +diff --git a/filter/ulogd_filter_MARK.c b/filter/ulogd_filter_MARK.c +index 7807f63..149725d 100644 +--- a/filter/ulogd_filter_MARK.c ++++ b/filter/ulogd_filter_MARK.c +@@ -73,14 +73,14 @@ static int interp_mark(struct ulogd_pluginstance *pi) + if (pp_is_valid(inp, KEY_CT_MARK)) { + if ((ikey_get_u32(&inp[KEY_CT_MARK]) & + pi->config_kset->ces[MARK_MASK].u.value) != +- (u_int32_t) pi->config_kset->ces[MARK_MARK].u.value ++ (uint32_t) pi->config_kset->ces[MARK_MARK].u.value + ) { + return ULOGD_IRET_STOP; + } + } else if (pp_is_valid(inp, KEY_OOB_MARK)) { + if ((ikey_get_u32(&inp[KEY_OOB_MARK]) & + pi->config_kset->ces[MARK_MASK].u.value) != +- (u_int32_t) pi->config_kset->ces[MARK_MARK].u.value ++ (uint32_t) pi->config_kset->ces[MARK_MARK].u.value + ) { + return ULOGD_IRET_STOP; + } +diff --git a/filter/ulogd_filter_PWSNIFF.c b/filter/ulogd_filter_PWSNIFF.c +index a3e2b42..934ff0e 100644 +--- a/filter/ulogd_filter_PWSNIFF.c ++++ b/filter/ulogd_filter_PWSNIFF.c +@@ -39,7 +39,7 @@ + #define PORT_POP3 110 + #define PORT_FTP 21 + +-static u_int16_t pwsniff_ports[] = { ++static uint16_t pwsniff_ports[] = { + PORT_POP3, + PORT_FTP, + /* feel free to include any other ports here, provided that their +@@ -72,7 +72,7 @@ static int interp_pwsniff(struct ulogd_pluginstance *pi) + return ULOGD_IRET_STOP; + + iph = (struct iphdr *) pi->input.keys[0].u.value.ptr; +- protoh = (u_int32_t *)iph + iph->ihl; ++ protoh = (uint32_t *)iph + iph->ihl; + tcph = protoh; + tcplen = ntohs(iph->tot_len) - iph->ihl * 4; + +diff --git a/include/libipulog/libipulog.h b/include/libipulog/libipulog.h +index b3c9616..21b4315 100644 +--- a/include/libipulog/libipulog.h ++++ b/include/libipulog/libipulog.h +@@ -4,10 +4,9 @@ + #include + #include + #include +-#include + #include + #include +-#include ++#include + #include + #include + #include +@@ -20,9 +19,9 @@ + struct ipulog_handle; + extern int ipulog_errno; + +-u_int32_t ipulog_group2gmask(u_int32_t group); ++uint32_t ipulog_group2gmask(uint32_t group); + +-struct ipulog_handle *ipulog_create_handle(u_int32_t gmask, u_int32_t rmem); ++struct ipulog_handle *ipulog_create_handle(uint32_t gmask, uint32_t rmem); + + void ipulog_destroy_handle(struct ipulog_handle *h); + +diff --git a/include/ulogd/addr.h b/include/ulogd/addr.h +index b4432e3..2259b6c 100644 +--- a/include/ulogd/addr.h ++++ b/include/ulogd/addr.h +@@ -8,7 +8,9 @@ + #ifndef _ADDR_H + #define _ADDR_H + +-u_int32_t ulogd_bits2netmask(int bits); ++#include ++ ++uint32_t ulogd_bits2netmask(int bits); + void ulogd_ipv6_cidr2mask_host(uint8_t cidr, uint32_t *res); + void ulogd_ipv6_addr2addr_host(uint32_t *addr, uint32_t *res); + +diff --git a/include/ulogd/conffile.h b/include/ulogd/conffile.h +index 69a6f70..1f3d563 100644 +--- a/include/ulogd/conffile.h ++++ b/include/ulogd/conffile.h +@@ -7,7 +7,7 @@ + #ifndef _CONFFILE_H + #define _CONFFILE_H + +-#include ++#include + + /* errors returned by config functions */ + enum { +@@ -45,10 +45,10 @@ enum { + + struct config_entry { + char key[CONFIG_KEY_LEN]; /* name of config directive */ +- u_int8_t type; /* type; see above */ +- u_int8_t options; /* options; see above */ +- u_int8_t hit; /* found? */ +- u_int8_t flag; /* tune setup of option */ ++ uint8_t type; /* type; see above */ ++ uint8_t options; /* options; see above */ ++ uint8_t hit; /* found? */ ++ uint8_t flag; /* tune setup of option */ + union { + char string[CONFIG_VAL_STRING_LEN]; + int value; +diff --git a/include/ulogd/ipfix_protocol.h b/include/ulogd/ipfix_protocol.h +index 5d7e46a..aef47f0 100644 +--- a/include/ulogd/ipfix_protocol.h ++++ b/include/ulogd/ipfix_protocol.h +@@ -1,6 +1,8 @@ + #ifndef _IPFIX_PROTOCOL_H + #define _IPFIX_PROTOCOL_H + ++#include ++ + /* This header file defines structures for the IPFIX protocol in accordance with + * draft-ietf-ipfix-protocol-19.txt */ + +@@ -11,29 +13,29 @@ + + /* Section 3.1 */ + struct ipfix_msg_hdr { +- u_int16_t version; +- u_int16_t length; +- u_int32_t export_time; +- u_int32_t seq; +- u_int32_t source_id; ++ uint16_t version; ++ uint16_t length; ++ uint32_t export_time; ++ uint32_t seq; ++ uint32_t source_id; + }; + + /* Section 3.4.1 */ + struct ipfix_templ_rec_hdr { +- u_int16_t templ_id; +- u_int16_t field_count; ++ uint16_t templ_id; ++ uint16_t field_count; + }; + + /* Section 3.2 */ + struct ipfix_ietf_field { +- u_int16_t type; +- u_int16_t length; ++ uint16_t type; ++ uint16_t length; + }; + + struct ipfix_vendor_field { +- u_int16_t type; +- u_int16_t length; +- u_int32_t enterprise_num; ++ uint16_t type; ++ uint16_t length; ++ uint32_t enterprise_num; + }; + + /* Information Element Identifiers as of draft-ietf-ipfix-info-11.txt */ +@@ -219,13 +221,13 @@ enum { + /* Information elements of the netfilter vendor id */ + enum { + IPFIX_NF_rawpacket = 1, /* pointer */ +- IPFIX_NF_rawpacket_length = 2, /* u_int32_t */ ++ IPFIX_NF_rawpacket_length = 2, /* uint32_t */ + IPFIX_NF_prefix = 3, /* string */ +- IPFIX_NF_mark = 4, /* u_int32_t */ +- IPFIX_NF_hook = 5, /* u_int8_t */ +- IPFIX_NF_conntrack_id = 6, /* u_int32_t */ +- IPFIX_NF_seq_local = 7, /* u_int32_t */ +- IPFIX_NF_seq_global = 8, /* u_int32_t */ ++ IPFIX_NF_mark = 4, /* uint32_t */ ++ IPFIX_NF_hook = 5, /* uint8_t */ ++ IPFIX_NF_conntrack_id = 6, /* uint32_t */ ++ IPFIX_NF_seq_local = 7, /* uint32_t */ ++ IPFIX_NF_seq_global = 8, /* uint32_t */ + }; + + #endif +diff --git a/include/ulogd/ulogd.h b/include/ulogd/ulogd.h +index cf26a15..2e38195 100644 +--- a/include/ulogd/ulogd.h ++++ b/include/ulogd/ulogd.h +@@ -85,17 +85,17 @@ enum ulogd_dtype { + /* structure describing an input / output parameter of a plugin */ + struct ulogd_key { + /* length of the returned value (only for lengthed types */ +- u_int32_t len; ++ uint32_t len; + /* type of the returned value (ULOGD_DTYPE_...) */ +- u_int16_t type; ++ uint16_t type; + /* flags (i.e. free, ...) */ +- u_int16_t flags; ++ uint16_t flags; + /* name of this key */ + char name[ULOGD_MAX_KEYLEN+1]; + /* IETF IPFIX attribute ID */ + struct { +- u_int32_t vendor; +- u_int16_t field_id; ++ uint32_t vendor; ++ uint16_t field_id; + } ipfix; + + /* Store field name for Common Information Model */ +@@ -104,12 +104,12 @@ struct ulogd_key { + union { + /* and finally the returned value */ + union { +- u_int8_t b; +- u_int8_t ui8; +- u_int16_t ui16; +- u_int32_t ui32; +- u_int64_t ui64; +- u_int32_t ui128[4]; ++ uint8_t b; ++ uint8_t ui8; ++ uint16_t ui16; ++ uint32_t ui32; ++ uint64_t ui64; ++ uint32_t ui128[4]; + int8_t i8; + int16_t i16; + int32_t i32; +@@ -130,31 +130,31 @@ struct ulogd_keyset { + unsigned int type; + }; + +-static inline void okey_set_b(struct ulogd_key *key, u_int8_t value) ++static inline void okey_set_b(struct ulogd_key *key, uint8_t value) + { + key->u.value.b = value; + key->flags |= ULOGD_RETF_VALID; + } + +-static inline void okey_set_u8(struct ulogd_key *key, u_int8_t value) ++static inline void okey_set_u8(struct ulogd_key *key, uint8_t value) + { + key->u.value.ui8 = value; + key->flags |= ULOGD_RETF_VALID; + } + +-static inline void okey_set_u16(struct ulogd_key *key, u_int16_t value) ++static inline void okey_set_u16(struct ulogd_key *key, uint16_t value) + { + key->u.value.ui16 = value; + key->flags |= ULOGD_RETF_VALID; + } + +-static inline void okey_set_u32(struct ulogd_key *key, u_int32_t value) ++static inline void okey_set_u32(struct ulogd_key *key, uint32_t value) + { + key->u.value.ui32 = value; + key->flags |= ULOGD_RETF_VALID; + } + +-static inline void okey_set_u64(struct ulogd_key *key, u_int64_t value) ++static inline void okey_set_u64(struct ulogd_key *key, uint64_t value) + { + key->u.value.ui64 = value; + key->flags |= ULOGD_RETF_VALID; +@@ -172,22 +172,22 @@ static inline void okey_set_ptr(struct ulogd_key *key, void *value) + key->flags |= ULOGD_RETF_VALID; + } + +-static inline u_int8_t ikey_get_u8(struct ulogd_key *key) ++static inline uint8_t ikey_get_u8(struct ulogd_key *key) + { + return key->u.source->u.value.ui8; + } + +-static inline u_int16_t ikey_get_u16(struct ulogd_key *key) ++static inline uint16_t ikey_get_u16(struct ulogd_key *key) + { + return key->u.source->u.value.ui16; + } + +-static inline u_int32_t ikey_get_u32(struct ulogd_key *key) ++static inline uint32_t ikey_get_u32(struct ulogd_key *key) + { + return key->u.source->u.value.ui32; + } + +-static inline u_int64_t ikey_get_u64(struct ulogd_key *key) ++static inline uint64_t ikey_get_u64(struct ulogd_key *key) + { + return key->u.source->u.value.ui64; + } +@@ -292,7 +292,7 @@ void ulogd_propagate_results(struct ulogd_pluginstance *pi); + void ulogd_register_plugin(struct ulogd_plugin *me); + + /* allocate a new ulogd_key */ +-struct ulogd_key *alloc_ret(const u_int16_t type, const char*); ++struct ulogd_key *alloc_ret(const uint16_t type, const char*); + + /* write a message to the daemons' logfile */ + void __ulogd_log(int level, char *file, int line, const char *message, ...); +diff --git a/input/packet/ulogd_inppkt_NFLOG.c b/input/packet/ulogd_inppkt_NFLOG.c +index 6196626..a367959 100644 +--- a/input/packet/ulogd_inppkt_NFLOG.c ++++ b/input/packet/ulogd_inppkt_NFLOG.c +@@ -315,7 +315,7 @@ static struct ulogd_key output_keys[] = { + }; + + static inline int +-interp_packet(struct ulogd_pluginstance *upi, u_int8_t pf_family, ++interp_packet(struct ulogd_pluginstance *upi, uint8_t pf_family, + struct nflog_data *ldata) + { + struct ulogd_key *ret = upi->output.keys; +@@ -326,12 +326,12 @@ interp_packet(struct ulogd_pluginstance *upi, u_int8_t pf_family, + int payload_len = nflog_get_payload(ldata, &payload); + char *prefix = nflog_get_prefix(ldata); + struct timeval ts; +- u_int32_t mark = nflog_get_nfmark(ldata); +- u_int32_t indev = nflog_get_indev(ldata); +- u_int32_t outdev = nflog_get_outdev(ldata); +- u_int32_t seq; +- u_int32_t uid; +- u_int32_t gid; ++ uint32_t mark = nflog_get_nfmark(ldata); ++ uint32_t indev = nflog_get_indev(ldata); ++ uint32_t outdev = nflog_get_outdev(ldata); ++ uint32_t seq; ++ uint32_t uid; ++ uint32_t gid; + + okey_set_u8(&ret[NFLOG_KEY_OOB_FAMILY], + pf_family); +@@ -493,7 +493,7 @@ static int configure(struct ulogd_pluginstance *upi, + return 0; + } + +-static int become_system_logging(struct ulogd_pluginstance *upi, u_int8_t pf) ++static int become_system_logging(struct ulogd_pluginstance *upi, uint8_t pf) + { + struct nflog_input *ui = (struct nflog_input *) upi->private; + +diff --git a/input/packet/ulogd_inppkt_UNIXSOCK.c b/input/packet/ulogd_inppkt_UNIXSOCK.c +index e4009f3..39944bf 100644 +--- a/input/packet/ulogd_inppkt_UNIXSOCK.c ++++ b/input/packet/ulogd_inppkt_UNIXSOCK.c +@@ -336,10 +336,10 @@ enum ulogd2_option_type { + ULOGD2_OPT_PREFIX, /* log prefix (string) */ + ULOGD2_OPT_OOB_IN, /* input device (string) */ + ULOGD2_OPT_OOB_OUT, /* output device (string) */ +- ULOGD2_OPT_OOB_TIME_SEC, /* packet arrival time (u_int32_t) */ ++ ULOGD2_OPT_OOB_TIME_SEC, /* packet arrival time (uint32_t) */ + + ULOGD2_OPT_USER=200, /* user name (string) */ +- ULOGD2_OPT_USERID, /* user id (u_int32_t) */ ++ ULOGD2_OPT_USERID, /* user id (uint32_t) */ + ULOGD2_OPT_OSNAME, /* OS name (string) */ + ULOGD2_OPT_OSREL, /* OS release (string) */ + ULOGD2_OPT_OSVERS, /* OS version (string) */ +@@ -367,15 +367,15 @@ struct ulogd_unixsock_option_t { + #define USOCK_ALIGNTO 8 + #define USOCK_ALIGN(len) ( ((len)+USOCK_ALIGNTO-1) & ~(USOCK_ALIGNTO-1) ) + +-static int handle_packet(struct ulogd_pluginstance *upi, struct ulogd_unixsock_packet_t *pkt, u_int16_t total_len) ++static int handle_packet(struct ulogd_pluginstance *upi, struct ulogd_unixsock_packet_t *pkt, uint16_t total_len) + { + char *data = NULL; + struct iphdr *ip; + struct ulogd_key *ret = upi->output.keys; +- u_int8_t oob_family; +- u_int16_t payload_len; +- u_int32_t option_number; +- u_int32_t option_length; ++ uint8_t oob_family; ++ uint16_t payload_len; ++ uint32_t option_number; ++ uint32_t option_length; + char *buf; + struct ulogd_unixsock_option_t *option; + int new_offset; +@@ -398,7 +398,7 @@ static int handle_packet(struct ulogd_pluginstance *upi, struct ulogd_unixsock_p + okey_set_u32(&ret[UNIXSOCK_KEY_RAW_PCKTLEN], payload_len); + + /* options */ +- if (total_len > payload_len + sizeof(u_int16_t)) { ++ if (total_len > payload_len + sizeof(uint16_t)) { + /* option starts at the next aligned address after the payload */ + new_offset = USOCK_ALIGN(payload_len); + options_start = (void*)ip + new_offset; +@@ -431,13 +431,13 @@ static int handle_packet(struct ulogd_pluginstance *upi, struct ulogd_unixsock_p + okey_set_ptr(&ret[UNIXSOCK_KEY_OOB_OUT], buf); + break; + case ULOGD2_OPT_OOB_TIME_SEC: +- okey_set_u32(&ret[UNIXSOCK_KEY_OOB_TIME_SEC], *(u_int32_t*)buf); ++ okey_set_u32(&ret[UNIXSOCK_KEY_OOB_TIME_SEC], *(uint32_t*)buf); + break; + case ULOGD2_OPT_USER: + okey_set_ptr(&ret[UNIXSOCK_KEY_NUFW_USER_NAME], buf); + break; + case ULOGD2_OPT_USERID: +- okey_set_u32(&ret[UNIXSOCK_KEY_NUFW_USER_ID], *(u_int32_t*)buf); ++ okey_set_u32(&ret[UNIXSOCK_KEY_NUFW_USER_ID], *(uint32_t*)buf); + break; + case ULOGD2_OPT_OSNAME: + okey_set_ptr(&ret[UNIXSOCK_KEY_NUFW_OS_NAME], buf); +@@ -452,7 +452,7 @@ static int handle_packet(struct ulogd_pluginstance *upi, struct ulogd_unixsock_p + okey_set_ptr(&ret[UNIXSOCK_KEY_NUFW_APP_NAME], buf); + break; + case ULOGD2_OPT_STATE: +- okey_set_u8(&ret[UNIXSOCK_KEY_RAW_LABEL], *(u_int8_t*)buf); ++ okey_set_u8(&ret[UNIXSOCK_KEY_RAW_LABEL], *(uint8_t*)buf); + break; + default: + ulogd_log(ULOGD_NOTICE, +@@ -595,8 +595,8 @@ static int unixsock_instance_read_cb(int fd, unsigned int what, void *param) + struct ulogd_pluginstance *upi = param; + struct unixsock_input *ui = (struct unixsock_input*)upi->private; + int len; +- u_int16_t needed_len; +- u_int32_t packet_sig; ++ uint16_t needed_len; ++ uint32_t packet_sig; + struct ulogd_unixsock_packet_t *unixsock_packet; + + char buf[4096]; +@@ -642,7 +642,7 @@ static int unixsock_instance_read_cb(int fd, unsigned int what, void *param) + + needed_len = ntohs(unixsock_packet->total_size); + +- if (ui->unixsock_buf_avail >= needed_len + sizeof(u_int32_t)) { ++ if (ui->unixsock_buf_avail >= needed_len + sizeof(uint32_t)) { + ulogd_log(ULOGD_DEBUG, + " We have enough data (%d bytes required), handling packet\n", + needed_len); +@@ -651,11 +651,11 @@ static int unixsock_instance_read_cb(int fd, unsigned int what, void *param) + return -1; + } + /* consume data */ +- ui->unixsock_buf_avail -= (sizeof(u_int32_t) + needed_len); ++ ui->unixsock_buf_avail -= (sizeof(uint32_t) + needed_len); + if (ui->unixsock_buf_avail > 0) { + /* we need to shift data .. */ + memmove(ui->unixsock_buf, +- ui->unixsock_buf + (sizeof(u_int32_t) + needed_len) , ++ ui->unixsock_buf + (sizeof(uint32_t) + needed_len) , + ui->unixsock_buf_avail); + } else { + /* input buffer is empty, do not loop */ +@@ -664,7 +664,7 @@ static int unixsock_instance_read_cb(int fd, unsigned int what, void *param) + + } else { + ulogd_log(ULOGD_DEBUG, " We have %d bytes, but need %d. Requesting more\n", +- ui->unixsock_buf_avail, needed_len + sizeof(u_int32_t)); ++ ui->unixsock_buf_avail, needed_len + sizeof(uint32_t)); + return 0; + } + +diff --git a/libipulog/libipulog.c b/libipulog/libipulog.c +index ab28bb4..b49f7f2 100644 +--- a/libipulog/libipulog.c ++++ b/libipulog/libipulog.c +@@ -33,7 +33,7 @@ + struct ipulog_handle + { + int fd; +- u_int8_t blocking; ++ uint8_t blocking; + struct sockaddr_nl local; + struct sockaddr_nl peer; + struct nlmsghdr* last_nlhdr; +@@ -112,7 +112,7 @@ char *ipulog_strerror(int errcode) + } + + /* convert a netlink group (1-32) to a group_mask suitable for create_handle */ +-u_int32_t ipulog_group2gmask(u_int32_t group) ++uint32_t ipulog_group2gmask(uint32_t group) + { + if (group < 1 || group > 32) + { +@@ -123,8 +123,8 @@ u_int32_t ipulog_group2gmask(u_int32_t group) + } + + /* create a ipulog handle for the reception of packets sent to gmask */ +-struct ipulog_handle *ipulog_create_handle(u_int32_t gmask, +- u_int32_t rcvbufsize) ++struct ipulog_handle *ipulog_create_handle(uint32_t gmask, ++ uint32_t rcvbufsize) + { + struct ipulog_handle *h; + int status; +diff --git a/output/mysql/ulogd_output_MYSQL.c b/output/mysql/ulogd_output_MYSQL.c +index 0a1ebfc..643320c 100644 +--- a/output/mysql/ulogd_output_MYSQL.c ++++ b/output/mysql/ulogd_output_MYSQL.c +@@ -174,7 +174,7 @@ static int open_db_mysql(struct ulogd_pluginstance *upi) + struct mysql_instance *mi = (struct mysql_instance *) upi->private; + unsigned int connect_timeout = timeout_ce(upi->config_kset).u.value; + char *server = host_ce(upi->config_kset).u.string; +- u_int16_t port = port_ce(upi->config_kset).u.value; ++ uint16_t port = port_ce(upi->config_kset).u.value; + char *user = user_ce(upi->config_kset).u.string; + char *pass = pass_ce(upi->config_kset).u.string; + char *db = db_ce(upi->config_kset).u.string; +diff --git a/src/addr.c b/src/addr.c +index 2672fab..41435dc 100644 +--- a/src/addr.c ++++ b/src/addr.c +@@ -22,9 +22,9 @@ + #include + #include + +-u_int32_t ulogd_bits2netmask(int bits) ++uint32_t ulogd_bits2netmask(int bits) + { +- u_int32_t netmask, bm; ++ uint32_t netmask, bm; + + if (bits >= 32 || bits < 0) + return(~0); +diff --git a/util/db.c b/util/db.c +index 24966a5..c9aec41 100644 +--- a/util/db.c ++++ b/util/db.c +@@ -362,7 +362,7 @@ static void __format_query_db(struct ulogd_pluginstance *upi, char *start) + sprintf(stmt_ins, "%u,", res->u.value.ui16); + break; + case ULOGD_RET_IPADDR: +- /* fallthrough when logging IP as u_int32_t */ ++ /* fallthrough when logging IP as uint32_t */ + case ULOGD_RET_UINT32: + sprintf(stmt_ins, "%u,", res->u.value.ui32); + break; +diff --git a/util/printpkt.c b/util/printpkt.c +index eb6cfbf..69a47ca 100644 +--- a/util/printpkt.c ++++ b/util/printpkt.c +@@ -199,7 +199,7 @@ static int printpkt_ipv4(struct ulogd_key *res, char *buf) + { + char *buf_cur = buf; + char tmp[INET_ADDRSTRLEN]; +- u_int32_t paddr; ++ uint32_t paddr; + + if (pp_is_valid(res, KEY_IP_SADDR)) + buf_cur += sprintf(buf_cur, "SRC=%s ", +@@ -363,8 +363,8 @@ static int printpkt_ipv6(struct ulogd_key *res, char *buf) + int printpkt_arp(struct ulogd_key *res, char *buf) + { + char *buf_cur = buf; +- u_int16_t code = 0; +- u_int8_t *mac; ++ uint16_t code = 0; ++ uint8_t *mac; + + if (pp_is_valid(res, KEY_ARP_SPA)) + buf_cur += sprintf(buf_cur, "SRC=%s ", +-- +2.6.2 + diff --git a/package/unixodbc/unixodbc.hash b/package/unixodbc/unixodbc.hash index a5c2d115ef..e99169c15d 100644 --- a/package/unixodbc/unixodbc.hash +++ b/package/unixodbc/unixodbc.hash @@ -1,2 +1,4 @@ -# From ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.2.tar.gz.md5 -md5 5e4528851eda5d3d4aed249b669bd05b unixODBC-2.3.2.tar.gz +# From ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz.md5 +md5 bd25d261ca1808c947cb687e2034be81 unixODBC-2.3.4.tar.gz +# Locally computed +sha256 2e1509a96bb18d248bf08ead0d74804957304ff7c6f8b2e5965309c632421e39 unixODBC-2.3.4.tar.gz diff --git a/package/unixodbc/unixodbc.mk b/package/unixodbc/unixodbc.mk index 067c1ca663..280fe57913 100644 --- a/package/unixodbc/unixodbc.mk +++ b/package/unixodbc/unixodbc.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNIXODBC_VERSION = 2.3.2 +UNIXODBC_VERSION = 2.3.4 UNIXODBC_SOURCE = unixODBC-$(UNIXODBC_VERSION).tar.gz UNIXODBC_SITE = ftp://ftp.unixodbc.org/pub/unixODBC UNIXODBC_INSTALL_STAGING = YES @@ -20,6 +20,13 @@ 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 diff --git a/package/unrar/unrar.hash b/package/unrar/unrar.hash index 4490d70f38..36450e05e3 100644 --- a/package/unrar/unrar.hash +++ b/package/unrar/unrar.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 ff593728aed0ac865908b8ea52cff449a4c298f095db2f3d27438ffbc3e35d5b unrarsrc-5.3.9.tar.gz +sha256 e470c584332422893fb52e049f2cbd99e24dc6c6da971008b4e2ae4284f8796c unrarsrc-5.4.5.tar.gz diff --git a/package/unrar/unrar.mk b/package/unrar/unrar.mk index 89dff9bbaf..f5a95eacc5 100644 --- a/package/unrar/unrar.mk +++ b/package/unrar/unrar.mk @@ -4,20 +4,20 @@ # ################################################################################ -UNRAR_VERSION = 5.3.9 +UNRAR_VERSION = 5.4.5 UNRAR_SOURCE = unrarsrc-$(UNRAR_VERSION).tar.gz UNRAR_SITE = http://www.rarlab.com/rar UNRAR_LICENSE = unrar UNRAR_LICENSE_FILES = license.txt define UNRAR_BUILD_CMDS - $(MAKE) CXX="$(TARGET_CXX)" STRIP="/bin/true" \ + $(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 - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR)/usr install + $(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 index e979c30135..23cc5a4fcb 100644 --- a/package/unscd/Config.in +++ b/package/unscd/Config.in @@ -21,5 +21,5 @@ config BR2_PACKAGE_UNSCD http://busybox.net/~vda/unscd -comment "unscd needs an (e)glibc toolchain" +comment "unscd needs a glibc toolchain" depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/unzip/Config.in b/package/unzip/Config.in index 0d98d28776..da6902e4d7 100644 --- a/package/unzip/Config.in +++ b/package/unzip/Config.in @@ -1,5 +1,6 @@ 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 diff --git a/package/upmpdcli/Config.in b/package/upmpdcli/Config.in index 32182050dc..48720347fd 100644 --- a/package/upmpdcli/Config.in +++ b/package/upmpdcli/Config.in @@ -1,10 +1,13 @@ config BR2_PACKAGE_UPMPDCLI bool "upmpdcli" + depends on BR2_USE_MMU # fork() + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # libupnpp, libmicrohttpd + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 + select BR2_PACKAGE_JSONCPP + select BR2_PACKAGE_LIBMICROHTTPD select BR2_PACKAGE_LIBMPDCLIENT select BR2_PACKAGE_LIBUPNPP - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS # libupnpp -> libupnp - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 help upmpdcli is a UPnP Media Renderer front-end for MPD, the Music Player Daemon. It supports UPnP gapless track transitions and @@ -12,5 +15,6 @@ config BR2_PACKAGE_UPMPDCLI http://www.lesbonscomptes.com/upmpdcli/ -comment "upmpdcli needs a toolchain w/ C++, threads, gcc >= 4.6" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 +comment "upmpdcli needs a toolchain w/ C++, threads, gcc >= 4.7" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/upmpdcli/upmpdcli.hash b/package/upmpdcli/upmpdcli.hash index 27a75cc08c..bcd78318cf 100644 --- a/package/upmpdcli/upmpdcli.hash +++ b/package/upmpdcli/upmpdcli.hash @@ -1,2 +1,2 @@ -# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-1.1.3.tar.gz.sha256 -sha256 2df3e6593f18c097b6247fb8da919b94701bf083b219056b006d68e6dcef75b5 upmpdcli-1.1.3.tar.gz +# From http://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-1.2.12.tar.gz.sha256: +sha256 20d97c2e5ff6911e1e1538edb1487823479802cba6bd4f4c4a74035edf61cb26 upmpdcli-1.2.12.tar.gz diff --git a/package/upmpdcli/upmpdcli.mk b/package/upmpdcli/upmpdcli.mk index 1a7c790c5c..83efa0530b 100644 --- a/package/upmpdcli/upmpdcli.mk +++ b/package/upmpdcli/upmpdcli.mk @@ -4,23 +4,11 @@ # ################################################################################ -UPMPDCLI_VERSION = 1.1.3 +UPMPDCLI_VERSION = 1.2.12 UPMPDCLI_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads UPMPDCLI_LICENSE = GPLv2+ UPMPDCLI_LICENSE_FILES = COPYING -UPMPDCLI_DEPENDENCIES = libmpdclient libupnpp - -ifeq ($(BR2_STATIC_LIBS),y) -# Upmpdcli forgets to take the dependencies of libupnpp into -# consideration, breaking static linking, so help it. -# Libupnpp unfortunately doesn't provide a .pc file, so manually -# handle the dependencies here. -# The build system doesn't expand LIBS from the configure step, so -# manually pass it to make. -UPMPDCLI_DEPENDENCIES += host-pkgconf -UPMPDCLI_MAKE_OPTS = \ - LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs expat libcurl libupnp`" -endif +UPMPDCLI_DEPENDENCIES = host-pkgconf libmpdclient libupnpp libmicrohttpd jsoncpp # Upmpdcli only runs if user upmpdcli exists define UPMPDCLI_USERS diff --git a/package/upower/0001-daemon-fix-get_critical_action.patch b/package/upower/0001-daemon-fix-get_critical_action.patch new file mode 100644 index 0000000000..02fc55c484 --- /dev/null +++ b/package/upower/0001-daemon-fix-get_critical_action.patch @@ -0,0 +1,34 @@ +From 28cee8e2845b094488c337c4ecfa84ada0b6be60 Mon Sep 17 00:00:00 2001 +From: Martin Pitt +Date: Tue, 23 Feb 2016 09:51:07 +0100 +Subject: [PATCH] daemon: fix get_critical_action() + +Fix copy&paste error from e7e9156f that called the wrong _complete_ function +for up_daemon_get_critical_action(). + +https://bugs.freedesktop.org/show_bug.cgi?id=94262 + +[rebase on 0.99.4] +Signed-off-by: Romain Naour +--- + src/up-daemon.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/up-daemon.c b/src/up-daemon.c +index be14cbe..e95f904 100644 +--- a/src/up-daemon.c ++++ b/src/up-daemon.c +@@ -435,8 +435,8 @@ up_daemon_get_critical_action (UpExportedDaemon *skeleton, + GDBusMethodInvocation *invocation, + UpDaemon *daemon) + { +- up_exported_daemon_complete_get_display_device (skeleton, invocation, +- up_backend_get_critical_action (daemon->priv->backend)); ++ up_exported_daemon_complete_get_critical_action (skeleton, invocation, ++ up_backend_get_critical_action (daemon->priv->backend)); + return TRUE; + } + +-- +2.9.3 + diff --git a/package/upower/Config.in b/package/upower/Config.in new file mode 100644 index 0000000000..8d9e84e694 --- /dev/null +++ b/package/upower/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_UPOWER + bool "upower" + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_TOOLCHAIN_HAS_THREADS # libgudev, 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" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/upower/upower.hash b/package/upower/upower.hash new file mode 100644 index 0000000000..0df67b449d --- /dev/null +++ b/package/upower/upower.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9ca325a6ccef505529b268ebbbd9becd0ce65a65f6ac7ee31e2e5b17648037b0 upower-0.99.4.tar.xz diff --git a/package/upower/upower.mk b/package/upower/upower.mk new file mode 100644 index 0000000000..471eb419cc --- /dev/null +++ b/package/upower/upower.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# upower +# +################################################################################ + +UPOWER_VERSION = 0.99.4 +UPOWER_SOURCE = upower-$(UPOWER_VERSION).tar.xz +UPOWER_SITE = https://upower.freedesktop.org/releases +UPOWER_LICENSE = GPLv2+ +UPOWER_LICENSE_FILES = COPYING + +# libupower-glib.so +UPOWER_INSTALL_STAGING = YES + +UPOWER_DEPENDENCIES = \ + host-intltool \ + host-pkgconf \ + libgudev \ + libusb \ + udev + +UPOWER_CONF_OPTS = --disable-man-pages --disable-tests + +$(eval $(autotools-package)) diff --git a/package/upx/upx.mk b/package/upx/upx.mk index 400d28328d..eaef27590a 100644 --- a/package/upx/upx.mk +++ b/package/upx/upx.mk @@ -17,6 +17,7 @@ HOST_UPX_DEPENDENCIES = host-ucl host-zlib define HOST_UPX_BUILD_CMDS $(HOST_MAKE_ENV) $(MAKE) CPPFLAGS="$(HOST_CPPFLAGS)" \ LDFLAGS="$(HOST_LDFLAGS)" UPX_UCLDIR=$(HOST_DIR)/usr \ + CXXFLAGS_WERROR= \ -C $(@D) all endef diff --git a/package/urg/0001-select-h.patch b/package/urg/0001-select-h.patch index 09d1530443..1d09bb57b2 100644 --- a/package/urg/0001-select-h.patch +++ b/package/urg/0001-select-h.patch @@ -1,11 +1,39 @@ ---- urg-0.8.18/src/c/connection/serial_ctrl_lin.c 2010-11-22 01:48:01.000000000 +0000 -+++ urg-0.8.18.mod/src/c/connection/serial_ctrl_lin.c 2013-05-21 20:56:35.822025969 +0100 -@@ -17,7 +17,7 @@ - #include +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 0000000000..e3db898049 --- /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; + // !!! Šù‚ÉÝ’è‘Îۂ̃{[ƒŒ[ƒgA‚Ìꇂ̖߂è’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 index 9d57645d62..c602624257 100644 --- a/package/urg/Config.in +++ b/package/urg/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_URG help Library to control Hokuyo's URG series sensors. - http://www.hokuyo-aut.jp/02sensor/07scanner/download/urg_programs_en/ + 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 index 5764a14095..41749d7245 100644 --- a/package/urg/urg.hash +++ b/package/urg/urg.hash @@ -1,2 +1,4 @@ +# 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 diff --git a/package/urg/urg.mk b/package/urg/urg.mk index 41ac4f41b1..5d49aeb41d 100644 --- a/package/urg/urg.mk +++ b/package/urg/urg.mk @@ -5,7 +5,7 @@ ################################################################################ URG_VERSION = 0.8.18 -URG_SITE = http://www.hokuyo-aut.jp/02sensor/07scanner/download/urg_programs_en +URG_SITE = http://pkgs.fedoraproject.org/repo/pkgs/urg/urg-0.8.18.zip/md5/93f90d2ccc36e784407c5282ef6bd2cb URG_SOURCE = urg-$(URG_VERSION).zip URG_LICENSE = LGPLv3 URG_LICENSE_FILES = COPYING diff --git a/package/usb_modeswitch/usb_modeswitch.hash b/package/usb_modeswitch/usb_modeswitch.hash index 075ef63bab..807b63f023 100644 --- a/package/usb_modeswitch/usb_modeswitch.hash +++ b/package/usb_modeswitch/usb_modeswitch.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 f93e940c2eb0c585a5d2210177338e68a9b24f409e351e4a854132453246b894 usb-modeswitch-2.3.0.tar.bz2 +sha256 17dc32bf10df8e370f2369b5137d34dfd8f2347faaa51524c5f21c922f42e212 usb-modeswitch-2.4.0.tar.bz2 diff --git a/package/usb_modeswitch/usb_modeswitch.mk b/package/usb_modeswitch/usb_modeswitch.mk index ac41a80c70..e196db582d 100644 --- a/package/usb_modeswitch/usb_modeswitch.mk +++ b/package/usb_modeswitch/usb_modeswitch.mk @@ -4,7 +4,7 @@ # ################################################################################ -USB_MODESWITCH_VERSION = 2.3.0 +USB_MODESWITCH_VERSION = 2.4.0 USB_MODESWITCH_SOURCE = usb-modeswitch-$(USB_MODESWITCH_VERSION).tar.bz2 USB_MODESWITCH_SITE = http://www.draisberghof.de/usb_modeswitch USB_MODESWITCH_DEPENDENCIES = libusb diff --git a/package/usbredir/usbredir.mk b/package/usbredir/usbredir.mk index 926a1fffd5..6765a9baac 100644 --- a/package/usbredir/usbredir.mk +++ b/package/usbredir/usbredir.mk @@ -7,14 +7,14 @@ USBREDIR_VERSION = 0.7.1 USBREDIR_SOURCE = usbredir-$(USBREDIR_VERSION).tar.bz2 USBREDIR_SITE = http://spice-space.org/download/usbredir -USBREDIR_LICENSE = LGPLv2.1+ +USBREDIR_LICENSE = LGPLv2.1+ (libraries) USBREDIR_LICENSE_FILES = COPYING.LIB USBREDIR_INSTALL_STAGING = YES USBREDIR_DEPENDENCIES = host-pkgconf libusb ifeq ($(BR2_PACKAGE_USBREDIR_SERVER),y) -USBREDIR_LICENSE += (for the library), GPLv2+ (for the server) +USBREDIR_LICENSE := $(USBREDIR_LICENSE), GPLv2+ (program) USBREDIR_LICENSE_FILES += COPYING else # BR2_PACKAGE_USBREDIR_SERVER != y diff --git a/package/ushare/0003-ushare-c-include-config-h-before-checking-for-CONFIG-NLS.patch b/package/ushare/0003-ushare-c-include-config-h-before-checking-for-CONFIG-NLS.patch new file mode 100644 index 0000000000..e97c3deabc --- /dev/null +++ b/package/ushare/0003-ushare-c-include-config-h-before-checking-for-CONFIG-NLS.patch @@ -0,0 +1,42 @@ +ushare.c: include config.h before checking for CONFIG_NLS + +When NLS support is enabled, we get following build errors: + + ushare.c: In function 'setup_i18n': + ushare.c:745:3: warning: implicit declaration of function 'setlocale' [-Wimplicit-function-declaration] + setlocale (LC_ALL, ""); + ^ + ushare.c:745:14: error: 'LC_ALL' undeclared (first use in this function) + setlocale (LC_ALL, ""); + ^ + ushare.c:745:14: note: each undeclared identifier is reported only once for each function it appears in + make[2]: *** [ushare.o] Error 1 + +When NLS support is enabled, configure script creates macro in config.h. +We check for CONFIG_NLS before including config.h which results in above +build errors as locale.h doesn't get included. + +This patch fixes above build error by including config.h before we check for +CONFIG_NLS. + +This build error is detected by Buildroot autobuilder +http://autobuild.buildroot.net/results/19d/19d67dd43e5a313c77e4be97ecb9811ffa52f797/ + +Signed-off-by: Rahul Bedarkar + +--- ushare-1.1a/src/ushare.c.old 2016-09-20 19:04:00.915239326 +0530 ++++ ushare-1.1a/src/ushare.c 2016-09-20 19:04:24.707239276 +0530 +@@ -56,11 +56,12 @@ + #include + #include + ++#include "config.h" ++ + #if (defined(HAVE_SETLOCALE) && defined(CONFIG_NLS)) + # include + #endif + +-#include "config.h" + #include "ushare.h" + #include "services.h" + #include "http.h" diff --git a/package/ushare/ushare.mk b/package/ushare/ushare.mk index 25f880c35f..62d269c476 100644 --- a/package/ushare/ushare.mk +++ b/package/ushare/ushare.mk @@ -26,11 +26,11 @@ define USHARE_CONFIGURE_CMDS endef define USHARE_BUILD_CMDS - $(MAKE) LDFLAGS="$(TARGET_LDFLAGS) $(USHARE_LDFLAGS)" -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) LDFLAGS="$(TARGET_LDFLAGS) $(USHARE_LDFLAGS)" -C $(@D) endef define USHARE_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install rm -f $(TARGET_DIR)/etc/init.d/ushare endef diff --git a/package/ustr/ustr.mk b/package/ustr/ustr.mk index 174f05565a..715914cab6 100644 --- a/package/ustr/ustr.mk +++ b/package/ustr/ustr.mk @@ -4,6 +4,8 @@ # ################################################################################ +# When bumping the version to a new upstream release, be sure to remove +# the ldconfig hack, below. USTR_VERSION = 1.0.4 USTR_SOURCE = ustr-$(USTR_VERSION).tar.bz2 USTR_SITE = http://www.and.org/ustr/$(USTR_VERSION) @@ -23,5 +25,8 @@ USTR_INSTALL_STAGING = YES # 'all-shared' to the default 'all' rule. USTR_MAKE_OPTS = all all-shared +USTR_CONF_OPTS += LDCONFIG=/bin/true +HOST_USTR_CONF_OPTS += LDCONFIG=/bin/true + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/ustream-ssl/Config.in b/package/ustream-ssl/Config.in new file mode 100644 index 0000000000..540e43689f --- /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.mk b/package/ustream-ssl/ustream-ssl.mk new file mode 100644 index 0000000000..b83d129a23 --- /dev/null +++ b/package/ustream-ssl/ustream-ssl.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# ustream-ssl +# +################################################################################ + +USTREAM_SSL_VERSION = ec80adaa1b47f28d426fa19c692011ce60b992d6 +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/util-linux/0001-Fix-libmount-build-under-uClibc.patch b/package/util-linux/0001-Fix-libmount-build-under-uClibc.patch deleted file mode 100644 index 10cc3a506e..0000000000 --- a/package/util-linux/0001-Fix-libmount-build-under-uClibc.patch +++ /dev/null @@ -1,153 +0,0 @@ -From 44d733203637666926964957af7af23429ddcecf Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Mon, 18 Apr 2016 09:58:56 -0300 -Subject: [PATCH] Fix libmount build under uClibc - -See https://bugs.gentoo.org/show_bug.cgi?id=406303 -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/util-linux/files/util-linux-2.21.1-no-printf-alloc.patch?revision=1.2 - -[Gustavo: converted to git format for 2.28] - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 1 - - libmount/src/tab_parse.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 52 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 5a00403..3422f11 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -948,7 +948,6 @@ AC_ARG_ENABLE([libmount], - ) - UL_BUILD_INIT([libmount]) - UL_REQUIRES_BUILD([libmount], [libblkid]) --UL_REQUIRES_HAVE([libmount], [scanf_alloc_modifier], [scanf string alloc modifier]) - AM_CONDITIONAL([BUILD_LIBMOUNT], [test "x$build_libmount" = xyes]) - AM_CONDITIONAL([BUILD_LIBMOUNT_TESTS], [test "x$build_libmount" = xyes -a "x$enable_static" = xyes]) - AS_IF([test "x$build_libmount" = xyes], [ -diff --git a/libmount/src/tab_parse.c b/libmount/src/tab_parse.c -index 3f5e14a..2ff1795 100644 ---- a/libmount/src/tab_parse.c -+++ b/libmount/src/tab_parse.c -@@ -39,6 +39,10 @@ static void parser_cleanup(struct libmnt_parser *pa) - memset(pa, 0, sizeof(*pa)); - } - -+#ifndef HAVE_SCANF_MS_MODIFIER -+# define UL_SCNsA "%s" -+#endif -+ - static int next_number(char **s, int *num) - { - char *end = NULL; -@@ -69,16 +73,31 @@ static int mnt_parse_table_line(struct libmnt_fs *fs, char *s) - int rc, n = 0, xrc; - char *src = NULL, *fstype = NULL, *optstr = NULL; - -+#ifndef HAVE_SCANF_MS_MODIFIER -+ size_t len = strlen(s) + 1; -+ src = malloc(len); -+ fstype = malloc(len); -+ fs->target = malloc(len); -+ optstr = malloc(len); -+#endif -+ - rc = sscanf(s, UL_SCNsA" " /* (1) source */ - UL_SCNsA" " /* (2) target */ - UL_SCNsA" " /* (3) FS type */ - UL_SCNsA" " /* (4) options */ - "%n", /* byte count */ - -+#ifdef HAVE_SCANF_MS_MODIFIER - &src, - &fs->target, - &fstype, - &optstr, -+#else -+ src, -+ fs->target, -+ fstype, -+ optstr, -+#endif - &n); - xrc = rc; - -@@ -144,6 +163,16 @@ static int mnt_parse_mountinfo_line(struct libmnt_fs *fs, char *s) - unsigned int maj, min; - char *fstype = NULL, *src = NULL, *p; - -+#ifndef HAVE_SCANF_MS_MODIFIER -+ size_t len = strlen(s) + 1; -+ fs->root = malloc(len); -+ fs->target = malloc(len); -+ fs->vfs_optstr = malloc(len); -+ fs->fs_optstr = malloc(len); -+ fstype = malloc(len); -+ src = malloc(len); -+#endif -+ - rc = sscanf(s, "%d " /* (1) id */ - "%d " /* (2) parent */ - "%u:%u " /* (3) maj:min */ -@@ -155,9 +184,15 @@ static int mnt_parse_mountinfo_line(struct libmnt_fs *fs, char *s) - &fs->id, - &fs->parent, - &maj, &min, -+#ifdef HAVE_SCANF_MS_MODIFIER - &fs->root, - &fs->target, - &fs->vfs_optstr, -+#else -+ fs->root, -+ fs->target, -+ fs->vfs_optstr, -+#endif - &end); - - if (rc >= 7 && end > 0) -@@ -177,9 +212,15 @@ static int mnt_parse_mountinfo_line(struct libmnt_fs *fs, char *s) - UL_SCNsA" " /* (9) source */ - UL_SCNsA, /* (10) fs options (fs specific) */ - -+#ifdef HAVE_SCANF_MS_MODIFIER - &fstype, - &src, - &fs->fs_optstr); -+#else -+ fstype, -+ src, -+ fs->fs_optstr); -+#endif - - if (rc >= 10) { - size_t sz; -@@ -298,14 +339,25 @@ static int mnt_parse_swaps_line(struct libmnt_fs *fs, char *s) - int rc; - char *src = NULL; - -+#ifndef HAVE_SCANF_MS_MODIFIER -+ size_t len = strlen(s) + 1; -+ src = malloc(len); -+ fs->swaptype = malloc(len); -+#endif -+ - rc = sscanf(s, UL_SCNsA" " /* (1) source */ - UL_SCNsA" " /* (2) type */ - "%ju" /* (3) size */ - "%ju" /* (4) used */ - "%d", /* priority */ - -+#ifdef HAVE_SCANF_MS_MODIFIER - &src, - &fs->swaptype, -+#else -+ src, -+ fs->swaptype, -+#endif - &fsz, - &usz, - &fs->priority); --- -2.7.3 - diff --git a/package/util-linux/0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch b/package/util-linux/0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch new file mode 100644 index 0000000000..cbf1a81913 --- /dev/null +++ b/package/util-linux/0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch @@ -0,0 +1,30 @@ +From 02283be90292b2f57183aa930c4d69375f1d905d Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Wed, 18 Jan 2017 13:17:21 +0100 +Subject: [PATCH] build-sys: use -lm for scriptreplay if necessary + +Reported-by: Bert van Hall +Addresses: https://github.com/karelzak/util-linux/pull/397 +Signed-off-by: Karel Zak +(cherry picked from commit feda4342df1ced25df3d200ed23469e740196c86) +Signed-off-by: Carlos Santos +--- + term-utils/Makemodule.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/term-utils/Makemodule.am b/term-utils/Makemodule.am +index 1b7c5fc..ad1bb1f 100644 +--- a/term-utils/Makemodule.am ++++ b/term-utils/Makemodule.am +@@ -21,7 +21,7 @@ if BUILD_SCRIPTREPLAY + usrbin_exec_PROGRAMS += scriptreplay + dist_man_MANS += term-utils/scriptreplay.1 + scriptreplay_SOURCES = term-utils/scriptreplay.c +-scriptreplay_LDADD = $(LDADD) libcommon.la ++scriptreplay_LDADD = $(LDADD) libcommon.la $(MATH_LIBS) + endif # BUILD_SCRIPTREPLAY + + +-- +2.7.4 + diff --git a/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch b/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch new file mode 100644 index 0000000000..5395104df7 --- /dev/null +++ b/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch @@ -0,0 +1,37 @@ +From 064a0445f33a67e5498d492dabe0dfc687859756 Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Wed, 8 Feb 2017 09:29:30 -0200 +Subject: [PATCH] build-sys: improve detection of the "isnan" function in + uClibc + +Since commit beceb14b450ded6560ed743634a5e80604a8edf3, MATH_LIBS is set +to "-lm" when the isnan function is detected. In uClibc, however, isnan +is a macro that calls __isnan, __isnanf, or __isnanl, depending on the +size of the argument (double, float or long double). + +Fixes: + http://autobuild.buildroot.net/results/2c2/2c29a78ed81ca844a87dcd076ab3e14ea080296d/ + http://autobuild.buildroot.net/results/404/404b10f359b2ae8a7216729fa1bab37fed2d3d4c/ + +Signed-off-by: Carlos Santos +--- + configure.ac | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index cc0563b..d03469c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -428,7 +428,8 @@ AC_CHECK_FUNCS([reboot], [have_reboot=yes],[have_reboot=no]) + AM_CONDITIONAL([HAVE_OPENAT], [test "x$have_openat" = xyes]) + + AC_CHECK_FUNCS([isnan], [], +- [AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])] ++ [AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])] ++ [AC_CHECK_LIB([m], [__isnan], [MATH_LIBS="-lm"])] + ) + AC_SUBST([MATH_LIBS]) + +-- +2.7.4 + diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in index 8a36c0ab48..e957f848bb 100644 --- a/package/util-linux/Config.in +++ b/package/util-linux/Config.in @@ -1,6 +1,5 @@ menuconfig BR2_PACKAGE_UTIL_LINUX bool "util-linux" - depends on BR2_USE_WCHAR select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help Various useful/essential linux libraries and utilities. @@ -12,22 +11,30 @@ menuconfig BR2_PACKAGE_UTIL_LINUX if BR2_PACKAGE_UTIL_LINUX config BR2_PACKAGE_UTIL_LINUX_LIBBLKID - select BR2_PACKAGE_UTIL_LINUX_LIBUUID - depends on BR2_USE_MMU # fork bool "libblkid" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_UTIL_LINUX_LIBUUID help Install libblkid. -config BR2_PACKAGE_UTIL_LINUX_LIBMOUNT +config BR2_PACKAGE_UTIL_LINUX_LIBFDISK + bool "libfdisk" + depends on BR2_USE_MMU # fork() select BR2_PACKAGE_UTIL_LINUX_LIBBLKID - depends on BR2_USE_MMU # 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 + depends on BR2_USE_MMU # fork() help Install libsmartcols. @@ -37,19 +44,30 @@ config BR2_PACKAGE_UTIL_LINUX_LIBUUID Install libuuid. config BR2_PACKAGE_UTIL_LINUX_BINARIES - bool "install utilities" + 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. -if BR2_PACKAGE_UTIL_LINUX_BINARIES + blkdiscard, blkid, blockdev, chcpu, col, colcrt, colrm, + column, ctrlaltdel, dmesg, fdisk, 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, scriptreplay, setarch, setsid, sfdisk, swaplabel, + swapoff, swapon, tailf, uuidgen, 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 @@ -58,16 +76,22 @@ config BR2_PACKAGE_UTIL_LINUX_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_TOOLCHAIN_USES_MUSL # linux-pam + 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 uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "chfn/chsh 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 @@ -75,10 +99,14 @@ config BR2_PACKAGE_UTIL_LINUX_CRAMFS bool "cramfs utilities" select BR2_PACKAGE_ZLIB help - Build fsck.cramfs and mkfs.cramfs + 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 @@ -92,13 +120,12 @@ config BR2_PACKAGE_UTIL_LINUX_FDFORMAT help Low-level format a floppy disk -config BR2_PACKAGE_UTIL_LINUX_FINDFS - bool "findfs" - help - Find a filesystem by label or UUID - 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 @@ -107,6 +134,16 @@ config BR2_PACKAGE_UTIL_LINUX_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 @@ -124,26 +161,37 @@ config BR2_PACKAGE_UTIL_LINUX_LINE config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS bool "login utilities" + depends on BR2_USE_MMU # fork() (login, runuser, su, sulogin) 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 # linux-pam select BR2_PACKAGE_LINUX_PAM help - Build login utilities (last, login, su, sulogin) + Login utilities (last, login, runuser, su, sulogin) -comment "login utilities needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" +comment "login utilities 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_LOGGER + bool "logger" + help + Enter messages into the system log + 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_LSBLK - bool "lsblk" +config BR2_PACKAGE_UTIL_LINUX_LSLOGINS + bool "lslogins" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS help - List block devices. + Display information about known users in the system config BR2_PACKAGE_UTIL_LINUX_MESG bool "mesg" @@ -157,17 +205,26 @@ config BR2_PACKAGE_UTIL_LINUX_MINIX 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 @@ -183,17 +240,29 @@ config BR2_PACKAGE_UTIL_LINUX_NOLOGIN 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. + 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 tools (addpart, delpart, partx) + Partition utilities (addpart, delpart, partx) config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT bool "pivot_root" @@ -216,7 +285,7 @@ config BR2_PACKAGE_UTIL_LINUX_RESET Reset the terminal config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS - bool "schedutils" + bool "scheduling utilities" help Scheduling utilities (chrt, ionice, taskset) @@ -234,6 +303,7 @@ config BR2_PACKAGE_UTIL_LINUX_SETTERM 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 @@ -251,6 +321,7 @@ config BR2_PACKAGE_UTIL_LINUX_UL config BR2_PACKAGE_UTIL_LINUX_UNSHARE bool "unshare" + depends on BR2_USE_MMU # fork() help Run program with some namespaces unshared from parent @@ -261,21 +332,27 @@ config BR2_PACKAGE_UTIL_LINUX_UTMPDUMP 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_WDCTL bool "wdctl" + depends on BR2_USE_MMU # libsmartcols + select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS help Shows hardware watchdog status @@ -286,12 +363,9 @@ config BR2_PACKAGE_UTIL_LINUX_WRITE 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 - -endif - -comment "util-linux needs a toolchain w/ wchar" - depends on !BR2_USE_WCHAR diff --git a/package/util-linux/su.pam b/package/util-linux/su.pam index f000c39dbd..84b18605ce 100644 --- a/package/util-linux/su.pam +++ b/package/util-linux/su.pam @@ -7,7 +7,9 @@ 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.hash b/package/util-linux/util-linux.hash index ca581025c8..ec6cc8eadd 100644 --- a/package/util-linux/util-linux.hash +++ b/package/util-linux/util-linux.hash @@ -1,2 +1,2 @@ -# From https://www.kernel.org/pub/linux/utils/util-linux/v2.28/sha256sums.asc -sha256 395847e2a18a2c317170f238892751e73a57104565344f8644090c8b091014bb util-linux-2.28.tar.xz +# From https://www.kernel.org/pub/linux/utils/util-linux/v2.29/sha256sums.asc +sha256 0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f util-linux-2.29.1.tar.xz diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk index 93f45c20d8..441c2527b9 100644 --- a/package/util-linux/util-linux.mk +++ b/package/util-linux/util-linux.mk @@ -4,16 +4,18 @@ # ################################################################################ -UTIL_LINUX_VERSION = 2.28 +UTIL_LINUX_VERSION_MAJOR = 2.29 +UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).1 UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz -UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION) +UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR) +# For 0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch and +# 0002-build-sys-improve-detection-of-the-isnan-function-in.patch +UTIL_LINUX_AUTORECONF = YES # README.licensing claims that some files are GPLv2-only, but this is not true. # Some files are GPLv3+ but only in tests. -UTIL_LINUX_LICENSE = GPLv2+, BSD-4c, libblkid and libmount LGPLv2.1+, libuuid BSD-3c +UTIL_LINUX_LICENSE = GPLv2+, BSD-4c, LGPLv2.1+ (libblkid, libfdisk, libmount), BSD-3c (libuuid) UTIL_LINUX_LICENSE_FILES = README.licensing Documentation/licenses/COPYING.GPLv2 Documentation/licenses/COPYING.UCB Documentation/licenses/COPYING.LGPLv2.1 Documentation/licenses/COPYING.BSD-3 -# For 0001-Fix-libmount-build-under-uClibc.patch -UTIL_LINUX_AUTORECONF = YES UTIL_LINUX_INSTALL_STAGING = YES UTIL_LINUX_DEPENDENCIES = host-pkgconf # uClibc needs NTP_LEGACY for sys/timex.h -> ntp_gettime() support @@ -44,19 +46,51 @@ 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 += NCURSESW5_CONFIG=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS) else -UTIL_LINUX_CONF_OPTS += --without-ncurses +UTIL_LINUX_CONF_OPTS += --without-ncursesw --with-ncurses --disable-widechar +UTIL_LINUX_CONF_ENV += NCURSES5_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 ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) UTIL_LINUX_DEPENDENCIES += gettext -UTIL_LINUX_MAKE_OPTS += LIBS=-lintl +UTIL_LINUX_LIBS += -lintl endif ifeq ($(BR2_PACKAGE_LIBCAP_NG),y) UTIL_LINUX_DEPENDENCIES += libcap-ng 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_LIBS)" +UTIL_LINUX_MAKE_OPTS += LIBS="$(UTIL_LINUX_LIBS)" + +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +UTIL_LINUX_DEPENDENCIES += libselinux +UTIL_LINUX_CONF_OPTS += --with-selinux +define UTIL_LINUX_SELINUX_PAMFILES_TWEAK + $(foreach f,su su-l, + $(SED) 's/^# \(.*pam_selinux.so.*\)$$/\1/' \ + $(TARGET_DIR)/etc/pam.d/$(f) + ) +endef +else +UTIL_LINUX_CONF_OPTS += --without-selinux +endif + # Used by cramfs utils UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_ZLIB),zlib) @@ -65,26 +99,31 @@ UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_LINUX_PAM),linux-pam) # 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_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_FINDFS),--enable-findfs,--disable-findfs) \ $(if $(BR2_PACKAGE_UTIL_LINUX_FSCK),--enable-fsck,--disable-fsck) \ $(if $(BR2_PACKAGE_UTIL_LINUX_HWCLOCK),--enable-hwclock,--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_UTILS),--enable-last --enable-login --enable-runuser --enable-su --enable-sulogin,--disable-last --disable-login --disable-runuser --disable-su --disable-sulogin) \ $(if $(BR2_PACKAGE_UTIL_LINUX_LOSETUP),--enable-losetup,--disable-losetup) \ - $(if $(BR2_PACKAGE_UTIL_LINUX_LSBLK),--enable-lsblk,--disable-lsblk) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LSLOGINS),--enable-lslogins,--disable-lslogins) \ $(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) \ @@ -94,6 +133,7 @@ UTIL_LINUX_CONF_OPTS += \ $(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) \ @@ -113,14 +153,17 @@ UTIL_LINUX_CONF_OPTS += \ $(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 so far only require libuuid, -# and none of the util-linux utilities, so we disable all of them, unless -# BR2_PACKAGE_HOST_UTIL_LINUX is set +# 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 \ - --disable-libblkid --disable-libmount \ - --without-ncurses + --without-ncurses \ + --without-ncursesw \ + --without-tinfo ifeq ($(BR2_PACKAGE_HOST_UTIL_LINUX),y) HOST_UTIL_LINUX_CONF_OPTS += --disable-makeinstall-chown @@ -130,12 +173,6 @@ else HOST_UTIL_LINUX_CONF_OPTS += --disable-all-programs endif -# Avoid building the tools if they are disabled since we can't install on -# a per-directory basis. -ifeq ($(BR2_PACKAGE_UTIL_LINUX_BINARIES),) -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 @@ -149,6 +186,21 @@ else UTIL_LINUX_CONF_OPTS += --without-python endif +ifeq ($(BR2_PACKAGE_READLINE),y) +UTIL_LINUX_CONF_OPTS += --with-readline +UTIL_LINUX_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 + # Install PAM configuration files ifeq ($(BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS),y) define UTIL_LINUX_INSTALL_PAMFILES @@ -156,6 +208,7 @@ define UTIL_LINUX_INSTALL_PAMFILES $(TARGET_DIR)/etc/pam.d/su $(INSTALL) -m 0644 package/util-linux/su.pam \ $(TARGET_DIR)/etc/pam.d/su-l + $(UTIL_LINUX_SELINUX_PAMFILES_TWEAK) endef endif @@ -182,9 +235,3 @@ endif $(eval $(autotools-package)) $(eval $(host-autotools-package)) - -# MKINSTALLDIRS comes from tweaked m4/nls.m4, but autoreconf uses staging -# one, so it disappears -UTIL_LINUX_INSTALL_STAGING_OPTS += MKINSTALLDIRS=$(@D)/config/mkinstalldirs -UTIL_LINUX_INSTALL_TARGET_OPTS += MKINSTALLDIRS=$(@D)/config/mkinstalldirs -HOST_UTIL_LINUX_INSTALL_OPTS += MKINSTALLDIRS=$(@D)/config/mkinstalldirs diff --git a/package/ux500-firmware/ux500-firmware.mk b/package/ux500-firmware/ux500-firmware.mk index 7e947f35af..428ed34277 100644 --- a/package/ux500-firmware/ux500-firmware.mk +++ b/package/ux500-firmware/ux500-firmware.mk @@ -8,13 +8,13 @@ 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_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 - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(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 diff --git a/package/v4l2grab/v4l2grab.hash b/package/v4l2grab/v4l2grab.hash index 17beeec636..a59c8af320 100644 --- a/package/v4l2grab/v4l2grab.hash +++ b/package/v4l2grab/v4l2grab.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 ed5b9ca16c3b82d283df69c46aabd6c976b166b4e77b660288d86a147b68caf9 v4l2grab-6a52a234e227a30e16591d1a0e7afc52a2c5d964.tar.gz +sha256 9a8d0d1ca5ac9fb9f66e00300bb3265d156cf1cb67eb30f6e6637c83b0b507a1 v4l2grab-f8d8844d52387b3db7b8736f5e86156d9374f781.tar.gz diff --git a/package/v4l2grab/v4l2grab.mk b/package/v4l2grab/v4l2grab.mk index b6f26c6c6a..f3a8967dc4 100644 --- a/package/v4l2grab/v4l2grab.mk +++ b/package/v4l2grab/v4l2grab.mk @@ -4,7 +4,7 @@ # ################################################################################ -V4L2GRAB_VERSION = 6a52a234e227a30e16591d1a0e7afc52a2c5d964 +V4L2GRAB_VERSION = f8d8844d52387b3db7b8736f5e86156d9374f781 V4L2GRAB_SITE = $(call github,twam,v4l2grab,$(V4L2GRAB_VERSION)) V4L2GRAB_LICENSE = GPLv2+ V4L2GRAB_LICENSE_FILES = LICENSE.md diff --git a/package/vala/vala.hash b/package/vala/vala.hash index 930196430a..ca5873c5d3 100644 --- a/package/vala/vala.hash +++ b/package/vala/vala.hash @@ -1,2 +1,2 @@ -# From https://download.gnome.org/sources/vala/0.32/vala-0.32.0.sha256sum -sha256 07a2aa4ede040789b4b5af817a42249d703bfe8affccb7732ca2b53d00c1fb6e vala-0.32.0.tar.xz +# From https://download.gnome.org/sources/vala/0.34/vala-0.34.4.sha256sum +sha256 6b17bd339414563ebc51f64b0b837919ea7552d8a8ffa71cdc837d25c9696b83 vala-0.34.4.tar.xz diff --git a/package/vala/vala.mk b/package/vala/vala.mk index b236c54f9c..dadfdfc1a9 100644 --- a/package/vala/vala.mk +++ b/package/vala/vala.mk @@ -4,8 +4,8 @@ # ################################################################################ -VALA_VERSION_MAJOR = 0.32 -VALA_VERSION = $(VALA_VERSION_MAJOR).0 +VALA_VERSION_MAJOR = 0.34 +VALA_VERSION = $(VALA_VERSION_MAJOR).4 VALA_SITE = http://download.gnome.org/sources/vala/$(VALA_VERSION_MAJOR) VALA_SOURCE = vala-$(VALA_VERSION).tar.xz VALA_LICENSE = LGPLv2.1+ diff --git a/package/valgrind/0003-mips-replace-addi-with-addiu.patch b/package/valgrind/0003-mips-replace-addi-with-addiu.patch deleted file mode 100644 index 624f6fa39b..0000000000 --- a/package/valgrind/0003-mips-replace-addi-with-addiu.patch +++ /dev/null @@ -1,137 +0,0 @@ -mips: replace addi with addiu - -ADDI instruction has been removed in R6 so let's use ADDIU instead. - -This patch has been sent upstream: - - https://bugs.kde.org/show_bug.cgi?id=356112 - -Signed-off-by: Vicente Olivert Riera - -Index: valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S -=================================================================== ---- valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (revision 15740) -+++ valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (working copy) -@@ -196,7 +196,7 @@ - addu $13, $13, $14 - - lw $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */ -- addi $13, $13, 4 -+ addiu $13, $13, 4 - lw $25, 0($13) /* little-endian, so comparing 1st 32bit word */ - nop - -Index: valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S -=================================================================== ---- valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (revision 15740) -+++ valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (working copy) -@@ -196,7 +196,7 @@ - daddu $13, $13, $14 - - ld $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */ -- daddi $13, $13, 8 -+ daddiu $13, $13, 8 - ld $25, 0($13) /* little-endian, so comparing 1st 32bit word */ - nop - -Index: valgrind/coregrind/m_libcsetjmp.c -=================================================================== ---- valgrind/coregrind/m_libcsetjmp.c (revision 15740) -+++ valgrind/coregrind/m_libcsetjmp.c (working copy) -@@ -594,7 +594,7 @@ - /* Checking whether second argument is zero. */ - " bnez $a1, 1f \n\t" - " nop \n\t" --" addi $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */ -+" addiu $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */ - "1: \n\t" - " move $v0, $a1 \n\t" /* Return value of second argument. */ - " j $ra \n\t" -Index: valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c -=================================================================== ---- valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (revision 15740) -+++ valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (working copy) -@@ -173,7 +173,7 @@ - " ld $30, 8($29)\n" - " ld $28, 16($29)\n" - " jr $31\n" --" daddi $29,$29, 32\n" -+" daddiu $29,$29, 32\n" - ".previous\n" - ); - -Index: valgrind/coregrind/m_trampoline.S -=================================================================== ---- valgrind/coregrind/m_trampoline.S (revision 15740) -+++ valgrind/coregrind/m_trampoline.S (working copy) -@@ -1254,8 +1254,8 @@ - //la $a0, string - j strlen_cond - strlen_loop: -- addi $v0, $v0, 1 -- addi $a0, $a0, 1 -+ addiu $v0, $v0, 1 -+ addiu $a0, $a0, 1 - strlen_cond: - lbu $t0, ($a0) - bne $t0, $zero, strlen_loop -Index: valgrind/helgrind/tests/tc08_hbl2.c -=================================================================== ---- valgrind/helgrind/tests/tc08_hbl2.c (revision 15740) -+++ valgrind/helgrind/tests/tc08_hbl2.c (working copy) -@@ -125,11 +125,11 @@ - # define INC(_lval,_lqual) \ - __asm__ __volatile__ ( \ - "L1xyzzy1" _lqual":\n" \ -- " move $t0, %0\n" \ -- " ll $t1, 0($t0)\n" \ -- " addi $t1, $t1, 1\n" \ -- " sc $t1, 0($t0)\n" \ -- " beqz $t1, L1xyzzy1" _lqual \ -+ " move $t0, %0\n" \ -+ " ll $t1, 0($t0)\n" \ -+ " addiu $t1, $t1, 1\n" \ -+ " sc $t1, 0($t0)\n" \ -+ " beqz $t1, L1xyzzy1" _lqual \ - : /*out*/ : /*in*/ "r"(&(_lval)) \ - : /*trash*/ "t0", "t1", "memory" \ - ) -Index: valgrind/VEX/priv/guest_mips_toIR.c -=================================================================== ---- valgrind/VEX/priv/guest_mips_toIR.c (revision 3206) -+++ valgrind/VEX/priv/guest_mips_toIR.c (working copy) -@@ -16794,6 +16794,7 @@ - mkU64(0x0) : mkU32(0x0)))), imm); - break; - -+#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6)) - case 0x08: { /* ADDI */ - DIP("addi r%u, r%u, %u", rt, rs, imm); - IRTemp tmpRs32 = newTemp(Ity_I32); -@@ -16831,6 +16832,8 @@ - putIReg(rt, mkWidenFrom32(ty, mkexpr(t0), True)); - break; - } -+#endif -+ - case 0x09: /* ADDIU */ - DIP("addiu r%u, r%u, %u", rt, rs, imm); - if (mode64) { -@@ -16888,7 +16891,8 @@ - mkU32(extend_s_16to32(imm))))); - break; - -- case 0x18: { /* Doubleword Add Immidiate - DADD; MIPS64 */ -+#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6)) -+ case 0x18: { /* Doubleword Add Immidiate - DADDI; MIPS64 */ - DIP("daddi r%u, r%u, %u", rt, rs, imm); - IRTemp tmpRs64 = newTemp(Ity_I64); - assign(tmpRs64, getIReg(rs)); -@@ -16926,6 +16930,7 @@ - putIReg(rt, mkexpr(t0)); - break; - } -+#endif - - case 0x19: /* Doubleword Add Immidiate Unsigned - DADDIU; MIPS64 */ - DIP("daddiu r%u, r%u, %u", rt, rs, imm); diff --git a/package/valgrind/valgrind.hash b/package/valgrind/valgrind.hash index f2cd6e84bc..5d7da19a86 100644 --- a/package/valgrind/valgrind.hash +++ b/package/valgrind/valgrind.hash @@ -1,2 +1,2 @@ # From http://valgrind.org/downloads/current.html -md5 4ea62074da73ae82e0162d6550d3f129 valgrind-3.11.0.tar.bz2 +md5 6eb03c0c10ea917013a7622e483d61bb valgrind-3.12.0.tar.bz2 diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk index 46ba13eb12..652432ff37 100644 --- a/package/valgrind/valgrind.mk +++ b/package/valgrind/valgrind.mk @@ -4,22 +4,25 @@ # ################################################################################ -VALGRIND_VERSION = 3.11.0 +VALGRIND_VERSION = 3.12.0 VALGRIND_SITE = http://valgrind.org/downloads VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2 VALGRIND_LICENSE = GPLv2 GFDLv1.2 VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS -VALGRIND_CONF_OPTS = --disable-ubsan +VALGRIND_CONF_OPTS = \ + --disable-ubsan \ + --without-mpicc VALGRIND_INSTALL_STAGING = YES # patch 0004-Fixes-for-musl-libc.patch touching configure.ac VALGRIND_AUTORECONF = YES -ifeq ($(BR2_GCC_ENABLE_TLS),y) -VALGRIND_CONF_OPTS += --enable-tls -else -VALGRIND_CONF_OPTS += --disable-tls -endif +# 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, @@ -31,9 +34,11 @@ endif # 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_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -march=$(BR2_GCC_TARGET_ARCH)" +VALGRIND_CFLAGS += -march=$(BR2_GCC_TARGET_ARCH) endif +VALGRIND_CONF_ENV = CFLAGS="$(VALGRIND_CFLAGS)" + # 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 diff --git a/package/valijson/Config.in b/package/valijson/Config.in index 57dad66187..10721b3703 100644 --- a/package/valijson/Config.in +++ b/package/valijson/Config.in @@ -3,18 +3,16 @@ config BR2_PACKAGE_VALIJSON depends on BR2_USE_WCHAR depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS 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. + 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 + https://github.com/tristanpenman/valijson comment "valijson needs a toolchain w/ C++, threads, wchar support" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/vde2/vde2.mk b/package/vde2/vde2.mk index bad758d5ae..3bbfd5f5ca 100644 --- a/package/vde2/vde2.mk +++ b/package/vde2/vde2.mk @@ -26,15 +26,27 @@ VDE2_AUTORECONF = YES # Note: disabled features can be added with corresponding dependencies # in future commits. VDE2_CONF_OPTS = \ - --disable-experimental \ - --disable-cryptcab \ - --disable-pcap \ - --disable-python \ - --disable-profile \ + --disable-cryptcab \ + --disable-experimental \ --disable-kernel-switch \ - --enable-tuntap \ + --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 0000000000..0a0ab8d376 --- /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 0000000000..cf403f50c8 --- /dev/null +++ b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 fd00fb6d833cad6a32a0d8259bb125abdf1716680650ba24b34bca2201745877 vdr-plugin-vnsiserver-v1.5.0.tar.gz 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 0000000000..aaa0859e58 --- /dev/null +++ b/package/vdr-plugin-vnsiserver/vdr-plugin-vnsiserver.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# vdr-plugin-vnsiserver +# +################################################################################ + +VDR_PLUGIN_VNSISERVER_VERSION = v1.5.0 +VDR_PLUGIN_VNSISERVER_SITE = $(call github,FernetMenta,vdr-plugin-vnsiserver,$(VDR_PLUGIN_VNSISERVER_VERSION)) +VDR_PLUGIN_VNSISERVER_LICENSE = GPLv2+ +VDR_PLUGIN_VNSISERVER_LICENSE_FILES = COPYING +VDR_PLUGIN_VNSISERVER_DEPENDENCIES = vdr + +VDR_PLUGIN_VNSISERVER_CXXFLAGS = CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11 -fPIC" + +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) \ + install DESTDIR=$(TARGET_DIR) LIBDIR=/usr/lib/vdr +endef + +$(eval $(generic-package)) diff --git a/package/vdr/0001-getloadavg.patch b/package/vdr/0001-getloadavg.patch new file mode 100644 index 0000000000..3937c83dd8 --- /dev/null +++ b/package/vdr/0001-getloadavg.patch @@ -0,0 +1,55 @@ +Fix compilation with uClibc + +Ported from +https://github.com/stschake/buildroot-grasshopper/blob/master/package/torsmo/torsmo-0.18-uclibc-getloadavg.patch + +Signed-off-by: Bernd Kuhls + +diff -uwNr vdr-2.3.1.org/skinlcars.c vdr-2.3.1/skinlcars.c +--- vdr-2.3.1.org/skinlcars.c 2015-09-01 12:07:07.000000000 +0200 ++++ vdr-2.3.1/skinlcars.c 2016-07-31 21:00:11.000000000 +0200 +@@ -1099,6 +1099,44 @@ + } + } + ++/* uclibc and dietlibc do not have this junk -ReneR */ ++#if defined (__UCLIBC__) || defined (__dietlibc__) ++static int getloadavg (double loadavg[], int nelem) ++{ ++ int fd; ++ ++ fd = open ("/proc/loadavg", O_RDONLY); ++ if (fd < 0) ++ return -1; ++ else ++ { ++ char buf[65], *p; ++ ssize_t nread; ++ int i; ++ ++ nread = read (fd, buf, sizeof buf - 1); ++ close (fd); ++ if (nread <= 0) ++ return -1; ++ buf[nread - 1] = '\0'; ++ ++ if (nelem > 3) ++ nelem = 3; ++ p = buf; ++ for (i = 0; i < nelem; ++i) ++ { ++ char *endp; ++ loadavg[i] = strtod (p, &endp); ++ if (endp == p) ++ return -1; ++ p = endp; ++ } ++ ++ return i; ++ } ++} ++#endif ++ + void cSkinLCARSDisplayMenu::DrawLoad(void) + { + if (yb04) { diff --git a/package/vdr/0002-libjpeg.patch b/package/vdr/0002-libjpeg.patch new file mode 100644 index 0000000000..dbd1f12838 --- /dev/null +++ b/package/vdr/0002-libjpeg.patch @@ -0,0 +1,40 @@ +Fix compilation with libjpeg + +Patch inspired by upstream board: +http://www.vdr-portal.de/board16-video-disk-recorder/board4-vdr-installation/p1189959-vdr-2-05-mit-libjpeg-9a-kommt-nicht-aus/#post1189959 + +Signed-off-by: Bernd Kuhls + +diff -uNr vdr-2.3.1.org/tools.c vdr-2.3.1/tools.c +--- vdr-2.3.1.org/tools.c 2015-09-10 15:17:55.000000000 +0200 ++++ vdr-2.3.1/tools.c 2016-08-01 06:37:44.000000000 +0200 +@@ -1254,15 +1254,15 @@ + } + else { + esyslog("ERROR: out of memory"); +- return false; ++ return FALSE; + } + if (jcd->mem) { + cinfo->dest->next_output_byte = jcd->mem + Used; + cinfo->dest->free_in_buffer = jcd->size - Used; +- return true; ++ return TRUE; + } + } +- return false; ++ return FALSE; + } + + static void JpegCompressTermDestination(j_compress_ptr cinfo) +@@ -1307,8 +1307,8 @@ + cinfo.in_color_space = JCS_RGB; + + jpeg_set_defaults(&cinfo); +- jpeg_set_quality(&cinfo, Quality, true); +- jpeg_start_compress(&cinfo, true); ++ jpeg_set_quality(&cinfo, Quality, TRUE); ++ jpeg_start_compress(&cinfo, TRUE); + + int rs = Width * 3; + JSAMPROW rp[Height]; diff --git a/package/vdr/Config.in b/package/vdr/Config.in new file mode 100644 index 0000000000..d283b462b1 --- /dev/null +++ b/package/vdr/Config.in @@ -0,0 +1,25 @@ +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_USES_MUSL # _nl_msg_cat_cntr + depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT + 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 or uClibc toolchain w/ C++, dynamic library, NPTL, wchar" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + BR2_TOOLCHAIN_USES_MUSL || !BR2_USE_WCHAR diff --git a/package/vdr/vdr.hash b/package/vdr/vdr.hash new file mode 100644 index 0000000000..edbcd3fccd --- /dev/null +++ b/package/vdr/vdr.hash @@ -0,0 +1,4 @@ +# From https://www.linuxtv.org/pipermail/vdr/2016-December/029178.html +md5 6dbb208ea3d59658a18912b49af175b3 vdr-2.3.2.tar.bz2 +# Locally computed +sha256 6c6ab08cf4dadd296e5e4a1c13f793c2e9222ec23103ae7aa9d616619f1496c0 vdr-2.3.2.tar.bz2 diff --git a/package/vdr/vdr.mk b/package/vdr/vdr.mk new file mode 100644 index 0000000000..cdfa7e3af8 --- /dev/null +++ b/package/vdr/vdr.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# vdr +# +################################################################################ + +VDR_VERSION = 2.3.2 +VDR_SOURCE = vdr-$(VDR_VERSION).tar.bz2 +VDR_SITE = ftp://ftp.tvdr.de/vdr/Developer +VDR_LICENSE = GPLv2+ +VDR_LICENSE_FILES = COPYING +VDR_INSTALL_STAGING = YES +VDR_DEPENDENCIES = \ + freetype \ + fontconfig \ + jpeg \ + libcap + +VDR_INCLUDE_DIRS = -I$(STAGING_DIR)/usr/include/freetype2 +VDR_MAKE_FLAGS = \ + NO_KBD=yes \ + PLUGINLIBDIR=/usr/lib/vdr \ + PREFIX=/usr \ + VIDEODIR=/var/lib/vdr + +ifeq ($(BR2_NEEDS_GETTEXT),y) +VDR_DEPENDENCIES += gettext +VDR_LDFLAGS += -lintl +endif + +ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) +VDR_DEPENDENCIES += libfribidi +VDR_INCLUDE_DIRS += -I$(STAGING_DIR)/usr/include/fribidi +VDR_LDFLAGS += -lfribidi +VDR_MAKE_FLAGS += BIDI=1 +endif + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +VDR_DEPENDENCIES += libiconv +VDR_LDFLAGS += -liconv +endif + +VDR_MAKE_ENV = \ + INCLUDES="$(VDR_INCLUDE_DIRS)" \ + 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 index 8a5c214975..b851627ca0 100644 --- a/package/vim/Config.in +++ b/package/vim/Config.in @@ -2,6 +2,7 @@ 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 select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help @@ -23,3 +24,4 @@ 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 0000000000..bc4a08e9cf --- /dev/null +++ b/package/vim/vim.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 9b4790dafc886537096a6e1953ee0424b8c308881b97151a7bfba1f9fd14e3f9 vim-v8.0.0001.tar.gz diff --git a/package/vim/vim.mk b/package/vim/vim.mk index 6e05050f1e..308855eaee 100644 --- a/package/vim/vim.mk +++ b/package/vim/vim.mk @@ -4,8 +4,7 @@ # ################################################################################ -# 7.4 release patchlevel 889 -VIM_VERSION = 74b738d414b2895b3365e26ae3b7792eb82ccf47 +VIM_VERSION = v8.0.0001 VIM_SITE = $(call github,vim,vim,$(VIM_VERSION)) # Win over busybox vi since vim is more feature-rich VIM_DEPENDENCIES = \ @@ -50,19 +49,19 @@ endif define VIM_INSTALL_TARGET_CMDS cd $(@D)/src; \ - $(MAKE) DESTDIR=$(TARGET_DIR) installvimbin; \ - $(MAKE) DESTDIR=$(TARGET_DIR) installtools; \ - $(MAKE) DESTDIR=$(TARGET_DIR) installlinks + $(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; \ - $(MAKE) DESTDIR=$(TARGET_DIR) installrtbase; \ - $(MAKE) DESTDIR=$(TARGET_DIR) installmacros + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installrtbase; \ + $(TARGET_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) installmacros endef define VIM_REMOVE_DOCS - find $(TARGET_DIR)/usr/share/vim -type f -name "*.txt" -delete + $(RM) -rf $(TARGET_DIR)/usr/share/vim/vim*/doc/ endef # Avoid oopses with vipw/vigr, lack of $EDITOR and 'vi' command expectation diff --git a/package/vlc/0008-fix-fallback-code-and-add-required-realtime-library.patch b/package/vlc/0008-fix-fallback-code-and-add-required-realtime-library.patch new file mode 100644 index 0000000000..43f197acfc --- /dev/null +++ b/package/vlc/0008-fix-fallback-code-and-add-required-realtime-library.patch @@ -0,0 +1,40 @@ +From 381bcb7cb03bb602351a323daf3b69b2d4f45e77 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Fri, 26 Aug 2016 15:11:25 +0200 +Subject: [PATCH] fix fallback code and add required realtime library to link + command + +Signed-off-by: Waldemar Brodkorb +--- + configure.ac | 1 + + src/posix/thread.c | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index cb1de25..018c11c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -121,6 +121,7 @@ case "${host_os}" in + ;; + linux*) + SYS=linux ++ AC_CHECK_LIB([rt], [posix_spawnp], [VLC_ADD_LIBS([libvlccore],[-lrt])], [], []) + ;; + bsdi*) + SYS=bsdi +diff --git a/src/posix/thread.c b/src/posix/thread.c +index 07fa71e..8b8595f 100644 +--- a/src/posix/thread.c ++++ b/src/posix/thread.c +@@ -85,7 +85,7 @@ static clockid_t vlc_clock_id; + + static void vlc_clock_setup_once (void) + { +-# if (_POSIX_MONOTONIC_CLOCK == 0) ++# if (_POSIX_MONOTONIC_CLOCK == 0) && (_POSIX_CLOCK_SELECTION > 0) + long val = sysconf (_SC_MONOTONIC_CLOCK); + assert (val != 0); + vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC; +-- +2.1.4 + diff --git a/package/vlc/0009-ffmpeg-3.0.patch b/package/vlc/0009-ffmpeg-3.0.patch new file mode 100644 index 0000000000..892c625c94 --- /dev/null +++ b/package/vlc/0009-ffmpeg-3.0.patch @@ -0,0 +1,283 @@ +Changes for ffmpeg 3.0 + +This file is a copy of debian/patches/04_ffmpeg-3.0.diff, to be found in +http://www.deb-multimedia.org/pool/main/v/vlc-dmo/vlc-dmo_2.2.4.orig.tar.gz + +Signed-off-by: Bernd Kuhls + +--- a/configure.ac ++++ b/configure.ac +@@ -2324,7 +2324,7 @@ AC_ARG_ENABLE(avcodec, + AS_IF([test "${enable_avcodec}" != "no"], [ + PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [ + PKG_CHECK_EXISTS([libavutil < 55],, [ +- AC_MSG_ERROR([libavutil versions 55 and later are not supported.]) ++ AC_MSG_WARN([libavutil versions 55 and later are not supported.]) + ]) + VLC_SAVE_FLAGS + CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" +@@ -2334,7 +2334,7 @@ AS_IF([test "${enable_avcodec}" != "no"] + VLC_RESTORE_FLAGS + have_avcodec="yes" + ],[ +- AC_MSG_ERROR([${AVCODEC_PKG_ERRORS}. Pass --disable-avcodec to ignore this error.]) ++ AC_MSG_WARN([${AVCODEC_PKG_ERRORS}. Pass --disable-avcodec to ignore this error.]) + ]) + ], [ + have_avcodec="no" +@@ -2383,7 +2383,7 @@ AS_IF([test "${have_vaapi}" = "yes" -a " + case "${avfork}" in + ffmpeg) + PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [ +- AC_MSG_ERROR([VA API requires FFmpeg libavcodec < 57.10 or libav.]) ++ AC_MSG_WARN([VA API requires FFmpeg libavcodec < 57.10 or libav.]) + ]) + ;; + esac +@@ -2417,7 +2417,7 @@ AS_IF([test "${enable_dxva2}" != "no"], + case "${avfork}" in + ffmpeg) + PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [ +- AC_MSG_ERROR([DXVA2 requires FFmpeg libavcodec < 57.10 or libav.]) ++ AC_MSG_WARN([DXVA2 requires FFmpeg libavcodec < 57.10 or libav.]) + ]) + ;; + esac +@@ -2509,7 +2509,7 @@ AS_IF([test "${enable_avformat}" != "no" + ]) + VLC_RESTORE_FLAGS + ],[ +- AC_MSG_ERROR([${AVFORMAT_PKG_ERRORS}. Pass --disable-avformat to ignore this error.]) ++ AC_MSG_WARN([${AVFORMAT_PKG_ERRORS}. Pass --disable-avformat to ignore this error.]) + ]) + ]) + AM_CONDITIONAL([HAVE_AVFORMAT], [test "${enable_avformat}" != "no"]) +@@ -2538,7 +2538,7 @@ then + ]) + VLC_RESTORE_FLAGS + ],[ +- AC_MSG_ERROR([${SWSCALE_PKG_ERRORS}. Pass --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.]) ++ AC_MSG_WARN([${SWSCALE_PKG_ERRORS}. Pass --disable-swscale to ignore this error. Proper software scaling and some video chroma conversion will be missing.]) + ]) + fi + +@@ -3181,7 +3181,7 @@ AS_IF([test "${have_vdpau}" = "yes" -a " + libav) av_vdpau_ver="55.26.0" ;; + ffmpeg) av_vdpau_ver="55.42.100" + PKG_CHECK_EXISTS([libavcodec >= 57.10.100], [ +- AC_MSG_ERROR([VDPAU requires FFmpeg libavcodec < 57.10 or libav.]) ++ AC_MSG_WARN([VDPAU requires FFmpeg libavcodec < 57.10 or libav.]) + ]) + ;; + esac +--- a/modules/codec/avcodec/audio.c ++++ b/modules/codec/avcodec/audio.c +@@ -39,7 +39,7 @@ + #include + #include + +-#include ++#include + + #include "avcodec.h" + +--- a/modules/codec/avcodec/video.c ++++ b/modules/codec/avcodec/video.c +@@ -108,8 +108,8 @@ static int lavc_GetFrame(struct AVCodecC + static int ffmpeg_GetFrameBuf ( struct AVCodecContext *, AVFrame * ); + static void ffmpeg_ReleaseFrameBuf( struct AVCodecContext *, AVFrame * ); + #endif +-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *, +- const enum PixelFormat * ); ++static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *, ++ const enum AVPixelFormat * ); + + static uint32_t ffmpeg_CodecTag( vlc_fourcc_t fcc ) + { +@@ -234,7 +234,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo + p_sys->p_codec = p_codec; + p_sys->i_codec_id = i_codec_id; + p_sys->psz_namecodec = psz_namecodec; +- p_sys->p_ff_pic = avcodec_alloc_frame(); ++ p_sys->p_ff_pic = av_frame_alloc(); + p_sys->b_delayed_open = true; + p_sys->p_va = NULL; + vlc_sem_init( &p_sys->sem_mt, 0 ); +@@ -446,7 +446,7 @@ int InitVideoDec( decoder_t *p_dec, AVCo + if( ffmpeg_OpenCodec( p_dec ) < 0 ) + { + msg_Err( p_dec, "cannot open codec (%s)", p_sys->psz_namecodec ); +- avcodec_free_frame( &p_sys->p_ff_pic ); ++ av_frame_free( &p_sys->p_ff_pic ); + vlc_sem_destroy( &p_sys->sem_mt ); + free( p_sys ); + return VLC_EGENERIC; +@@ -826,7 +826,7 @@ void EndVideoDec( decoder_t *p_dec ) + wait_mt( p_sys ); + + if( p_sys->p_ff_pic ) +- avcodec_free_frame( &p_sys->p_ff_pic ); ++ av_frame_free( &p_sys->p_ff_pic ); + + if( p_sys->p_va ) + vlc_va_Delete( p_sys->p_va ); +@@ -1313,8 +1313,8 @@ static void ffmpeg_ReleaseFrameBuf( stru + } + #endif + +-static enum PixelFormat ffmpeg_GetFormat( AVCodecContext *p_context, +- const enum PixelFormat *pi_fmt ) ++static enum AVPixelFormat ffmpeg_GetFormat( AVCodecContext *p_context, ++ const enum AVPixelFormat *pi_fmt ) + { + decoder_t *p_dec = p_context->opaque; + decoder_sys_t *p_sys = p_dec->p_sys; +--- a/modules/codec/avcodec/encoder.c ++++ b/modules/codec/avcodec/encoder.c +@@ -41,7 +41,7 @@ + #include + + #include +-#include ++#include + + #include "avcodec.h" + #include "avcommon.h" +@@ -311,7 +311,7 @@ int OpenEncoder( vlc_object_t *p_this ) + else if( !GetFfmpegCodec( p_enc->fmt_out.i_codec, &i_cat, &i_codec_id, + &psz_namecodec ) ) + { +- if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == PIX_FMT_NONE ) ++ if( FindFfmpegChroma( p_enc->fmt_out.i_codec ) == AV_PIX_FMT_NONE ) + return VLC_EGENERIC; /* handed chroma output */ + + i_cat = VIDEO_ES; +@@ -555,7 +555,7 @@ int OpenEncoder( vlc_object_t *p_this ) + + if( p_codec->pix_fmts ) + { +- const enum PixelFormat *p = p_codec->pix_fmts; ++ const enum AVPixelFormat *p = p_codec->pix_fmts; + for( ; *p != -1; p++ ) + { + if( *p == p_context->pix_fmt ) break; +@@ -1017,7 +1017,7 @@ errmsg: + } + } + +- p_sys->frame = avcodec_alloc_frame(); ++ p_sys->frame = av_frame_alloc(); + if( !p_sys->frame ) + { + goto error; +@@ -1048,7 +1048,7 @@ static void vlc_av_packet_Release(block_ + { + vlc_av_packet_t *b = (void *) block; + +- av_free_packet(&b->packet); ++ av_packet_unref(&b->packet); + free(b); + } + +@@ -1088,7 +1088,7 @@ static block_t *EncodeVideo( encoder_t * + AVFrame *frame = NULL; + if( likely(p_pict) ) { + frame = p_sys->frame; +- avcodec_get_frame_defaults( frame ); ++ av_frame_unref( frame ); + for( i_plane = 0; i_plane < p_pict->i_planes; i_plane++ ) + { + p_sys->frame->data[i_plane] = p_pict->p[i_plane].p_pixels; +@@ -1188,7 +1188,7 @@ static block_t *EncodeVideo( encoder_t * + av_pkt.duration / p_sys->p_context->time_base.den, p_sys->p_context ); + if( unlikely(p_block == NULL) ) + { +- av_free_packet( &av_pkt ); ++ av_packet_unref( &av_pkt ); + return NULL; + } + +@@ -1329,7 +1329,7 @@ static block_t *handle_delay_buffer( enc + //How much we need to copy from new packet + const int leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes; + +- avcodec_get_frame_defaults( p_sys->frame ); ++ av_frame_unref( p_sys->frame ); + p_sys->frame->format = p_sys->p_context->sample_fmt; + p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay; + +@@ -1451,7 +1451,7 @@ static block_t *EncodeAudio( encoder_t * + while( ( p_aout_buf->i_nb_samples >= p_sys->i_frame_size ) || + ( p_sys->b_variable && p_aout_buf->i_nb_samples ) ) + { +- avcodec_get_frame_defaults( p_sys->frame ); ++ av_frame_unref( p_sys->frame ); + if( p_sys->b_variable ) + p_sys->frame->nb_samples = p_aout_buf->i_nb_samples; + else +@@ -1514,7 +1514,7 @@ void CloseEncoder( vlc_object_t *p_this + encoder_t *p_enc = (encoder_t *)p_this; + encoder_sys_t *p_sys = p_enc->p_sys; + +- /*FIXME: we should use avcodec_free_frame, but we don't require so new avcodec that has it*/ ++ /*FIXME: we should use av_frame_free, but we don't require so new avcodec that has it*/ + av_freep( &p_sys->frame ); + + vlc_avcodec_lock(); +--- a/modules/demux/avformat/demux.c ++++ b/modules/demux/avformat/demux.c +@@ -734,14 +734,14 @@ static int Demux( demux_t *p_demux ) + } + if( pkt.stream_index < 0 || pkt.stream_index >= p_sys->i_tk ) + { +- av_free_packet( &pkt ); ++ av_packet_unref( &pkt ); + return 1; + } + const AVStream *p_stream = p_sys->ic->streams[pkt.stream_index]; + if( p_stream->time_base.den <= 0 ) + { + msg_Warn( p_demux, "Invalid time base for the stream %d", pkt.stream_index ); +- av_free_packet( &pkt ); ++ av_packet_unref( &pkt ); + return 1; + } + if( p_stream->codec->codec_id == AV_CODEC_ID_SSA ) +@@ -749,7 +749,7 @@ static int Demux( demux_t *p_demux ) + p_frame = BuildSsaFrame( &pkt, p_sys->i_ssa_order++ ); + if( !p_frame ) + { +- av_free_packet( &pkt ); ++ av_packet_unref( &pkt ); + return 1; + } + } +@@ -757,7 +757,7 @@ static int Demux( demux_t *p_demux ) + { + if( ( p_frame = block_Alloc( pkt.size ) ) == NULL ) + { +- av_free_packet( &pkt ); ++ av_packet_unref( &pkt ); + return 0; + } + memcpy( p_frame->p_buffer, pkt.data, pkt.size ); +@@ -838,7 +838,7 @@ static int Demux( demux_t *p_demux ) + else + block_Release( p_frame ); + +- av_free_packet( &pkt ); ++ av_packet_unref( &pkt ); + return 1; + } + +--- a/modules/codec/avcodec/vaapi.c ++++ b/modules/codec/avcodec/vaapi.c +@@ -595,7 +595,7 @@ static int Create( vlc_va_t *p_va, AVCod + return err; + + /* Only VLD supported */ +- p_va->pix_fmt = PIX_FMT_VAAPI_VLD; ++ p_va->pix_fmt = AV_PIX_FMT_VAAPI_VLD; + p_va->setup = Setup; + p_va->get = Get; + p_va->release = Release; diff --git a/package/vlc/0010-static-assert.patch b/package/vlc/0010-static-assert.patch new file mode 100644 index 0000000000..87fd56bda2 --- /dev/null +++ b/package/vlc/0010-static-assert.patch @@ -0,0 +1,25 @@ +From: Thomas Guillem +Date: Thu, 30 Apr 2015 13:29:50 +0000 (+0200) +Subject: Fix build when using C99 and C++11 +X-Git-Url: http://git.videolan.org/?p=vlc.git;a=commitdiff_plain;h=51ce6cdaf598754e617900994c1943c6cba6d604 + +Fix build when using C99 and C++11 + +Indeed, C99 doesn't have static_assert and C++11 has it. + +Signed-off-by: Bernd Kuhls +--- + +diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h +index b949d24..ee168d7 100644 +--- a/include/vlc_fixups.h ++++ b/include/vlc_fixups.h +@@ -239,7 +239,7 @@ static inline locale_t newlocale(int mask, const char * locale, locale_t base) + } + #endif + +-#if !defined (HAVE_STATIC_ASSERT) ++#if !defined (HAVE_STATIC_ASSERT) && !defined(__cpp_static_assert) + # define _Static_assert(x, s) ((void) sizeof (struct { unsigned:-!(x); })) + # define static_assert _Static_assert + #endif diff --git a/package/vlc/0011-static-assert.patch b/package/vlc/0011-static-assert.patch new file mode 100644 index 0000000000..3ce23e1384 --- /dev/null +++ b/package/vlc/0011-static-assert.patch @@ -0,0 +1,28 @@ +From: Thomas Guillem +Date: Mon, 14 Dec 2015 09:08:25 +0000 (+0100) +Subject: compat: fix static_assert +X-Git-Url: http://git.videolan.org/?p=vlc.git;a=commitdiff_plain;h=6faf9066670db6e0d241ead6a3926b2d9cc6a041 + +compat: fix static_assert + +It was not possible to use it outside of functions. + +Signed-off-by: Rémi Denis-Courmont +Signed-off-by: Bernd Kuhls +--- + +diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h +index 213d3f3..bd798d0 100644 +--- a/include/vlc_fixups.h ++++ b/include/vlc_fixups.h +@@ -273,7 +273,9 @@ static inline locale_t newlocale(int mask, const char * locale, locale_t base) + #endif + + #if !defined (HAVE_STATIC_ASSERT) && !defined(__cpp_static_assert) +-# define _Static_assert(x, s) ((void) sizeof (struct { unsigned:-!(x); })) ++# define STATIC_ASSERT_CONCAT_(a, b) a##b ++# define STATIC_ASSERT_CONCAT(a, b) STATIC_ASSERT_CONCAT_(a, b) ++# define _Static_assert(x, s) extern char STATIC_ASSERT_CONCAT(static_assert_, __LINE__)[sizeof(struct { unsigned:-!(x); })] + # define static_assert _Static_assert + #endif + diff --git a/package/vlc/vlc.hash b/package/vlc/vlc.hash index 04632e07ce..efd4e27e74 100644 --- a/package/vlc/vlc.hash +++ b/package/vlc/vlc.hash @@ -1,2 +1,2 @@ # From http://download.videolan.org/pub/videolan/vlc/2.2.3/vlc-2.2.3.tar.xz.sha256 -sha256 b9d7587d35f13c3c981964c8cc8b03f1c7c8edf528be476b3ca1d2efedd5bf5b vlc-2.2.3.tar.xz +sha256 1632e91d2a0087e0ef4c3fb4c95c3c2890f7715a9d1d43ffd46329f428cf53be vlc-2.2.4.tar.xz diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index 30887bd272..cf0b557bb1 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -4,7 +4,7 @@ # ################################################################################ -VLC_VERSION = 2.2.3 +VLC_VERSION = 2.2.4 VLC_SITE = http://get.videolan.org/vlc/$(VLC_VERSION) VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz VLC_LICENSE = GPLv2+ LGPLv2.1+ @@ -56,6 +56,11 @@ VLC_CONF_OPTS += \ --disable-addonmanagermodules \ --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 @@ -137,10 +142,7 @@ VLC_CONF_OPTS += --disable-flac endif ifeq ($(BR2_PACKAGE_FREERDP),y) -VLC_CONF_OPTS += --enable-freerdp VLC_DEPENDENCIES += freerdp -else -VLC_CONF_OPTS += --disable-libfreerdp endif ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) diff --git a/package/vo-aacenc/vo-aacenc.mk b/package/vo-aacenc/vo-aacenc.mk index 23d7e62d49..ecdd58492f 100644 --- a/package/vo-aacenc/vo-aacenc.mk +++ b/package/vo-aacenc/vo-aacenc.mk @@ -15,6 +15,7 @@ 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 @@ -33,6 +34,10 @@ 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 = \ 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 0000000000..49909ada5e --- /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/0001-Misc.-Makefile-cleanup-and-fix-the-VERSION-definitio.patch b/package/vpnc/0001-Misc.-Makefile-cleanup-and-fix-the-VERSION-definitio.patch deleted file mode 100644 index cad3e1ad08..0000000000 --- a/package/vpnc/0001-Misc.-Makefile-cleanup-and-fix-the-VERSION-definitio.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 40b35a82ea581f5dfb1b0b20c4ba3e9f01f35107 Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Mon, 8 Feb 2016 23:02:45 +0100 -Subject: [PATCH] Misc. Makefile cleanup and fix the VERSION definition. - -Signed-off-by: Samuel Martin -Signed-off-by: Thomas Petazzoni ---- - Makefile | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - -diff --git a/Makefile b/Makefile -index 9b96d83..62742d0 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 -@@ -32,8 +32,6 @@ BINS = vpnc cisco-decrypt - OBJS = $(addsuffix .o,$(basename $(SRCS))) - BINOBJS = $(addsuffix .o,$(BINS)) - BINSRCS = $(addsuffix .c,$(BINS)) --VERSION := $(shell sh mk-version) --RELEASE_VERSION := $(shell cat VERSION) - - # The license of vpnc (Gpl >= 2) is quite likely incompatible with the - # openssl license. Openssl is currently used to provide certificate -@@ -50,11 +48,11 @@ RELEASE_VERSION := $(shell cat VERSION) - #OPENSSL_GPL_VIOLATION = -DOPENSSL_GPL_VIOLATION - #OPENSSLLIBS = -lcrypto - --CC=gcc -+CC ?= gcc - CFLAGS ?= -O3 -g - CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings - CFLAGS += $(shell libgcrypt-config --cflags) --CPPFLAGS += -DVERSION=\"$(VERSION)\" $(OPENSSL_GPL_VIOLATION) -+CPPFLAGS += $(OPENSSL_GPL_VIOLATION) - LDFLAGS ?= -g - LDFLAGS += $(shell libgcrypt-config --libs) $(OPENSSLLIBS) - -@@ -81,7 +79,7 @@ cisco-decrypt : cisco-decrypt.o decrypt-utils.o - $(CC) -o $@ $^ $(LDFLAGS) - - .depend: $(SRCS) $(BINSRCS) -- $(CC) -MM $(SRCS) $(BINSRCS) $(CFLAGS) $(CPPFLAGS) > $@ -+ $(CC) -MM $(SRCS) $(BINSRCS) $(CPPFLAGS) $(CFLAGS) > $@ - - vpnc-debug.c vpnc-debug.h : isakmp.h enum2debug.pl - LC_ALL=C perl -w ./enum2debug.pl isakmp.h >vpnc-debug.c 2>vpnc-debug.h --- -2.6.4 - diff --git a/package/vpnc/0002-Don-t-build-manpages.patch b/package/vpnc/0002-Don-t-build-manpages.patch deleted file mode 100644 index be4414e3fb..0000000000 --- a/package/vpnc/0002-Don-t-build-manpages.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 6bbd03ec8928fd2a3056fc55ee48900fc88d3061 Mon Sep 17 00:00:00 2001 -From: Ulf Samuelsson -Date: Mon, 8 Feb 2016 23:03:48 +0100 -Subject: [PATCH] Don't build manpages - -Patch originally from Ulf Samuelsson . - -Signed-off-by: Thomas Petazzoni ---- - Makefile | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 1ca6459..857bf8d 100644 ---- a/Makefile -+++ b/Makefile -@@ -70,7 +70,10 @@ vpnc : $(OBJS) vpnc.o - $(CC) -o $@ $^ $(LDFLAGS) - - vpnc.8 : vpnc.8.template makeman.pl vpnc -- ./makeman.pl -+ @echo "Cannot make manual when cross compiling" -+ touch $@ -+ -+# ./makeman.pl - - vpnc-script : vpnc-script.in - sed -e 's,@''PREFIX''@,$(PREFIX),g' $< > $@ && chmod 755 $@ --- -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 0000000000..9d0bae3d33 --- /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 0000000000..c232206ab4 --- /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 0000000000..f767a59b78 --- /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 0000000000..86239079a5 --- /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/0003-Replace-deprecated-SUSv3-functions-with-POSIX-equiva.patch b/package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch similarity index 56% rename from package/vpnc/0003-Replace-deprecated-SUSv3-functions-with-POSIX-equiva.patch rename to package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch index 4b8446ff34..5efe303b7a 100644 --- a/package/vpnc/0003-Replace-deprecated-SUSv3-functions-with-POSIX-equiva.patch +++ b/package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch @@ -1,27 +1,31 @@ -From ca1a9ad59ae07345720e315b928bb014a8aeea4c Mon Sep 17 00:00:00 2001 +From 627a45d88acf236cb36326919e4a2fa975c688bd Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Mon, 8 Feb 2016 23:05:23 +0100 -Subject: [PATCH] Replace deprecated SUSv3 functions with POSIX equivalents +Subject: [PATCH] config.c: Replace deprecated SUSv3 functions with POSIX + equivalents Replace the deprecated SUSv3 function index() by its POSIX equivalent -strchr(). +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 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + + config.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/config.c b/config.c -index bdd0833..d1750ca 100644 +index 57778e3..11b363b 100644 --- a/config.c +++ b/config.c -@@ -456,7 +456,7 @@ static char *get_config_filename(const char *name, int add_dot_conf) +@@ -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; 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 0000000000..41c6191ea3 --- /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 0000000000..a4cfe11b35 --- /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 0000000000..bce552e55e --- /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 index bc27331c6f..2049c45731 100644 --- a/package/vpnc/Config.in +++ b/package/vpnc/Config.in @@ -1,8 +1,11 @@ config BR2_PACKAGE_VPNC bool "vpnc" + depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt 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 @@ -11,3 +14,7 @@ config BR2_PACKAGE_VPNC Juniper/Netscreen http://www.unix-ag.uni-kl.de/~massar/vpnc + +comment "vpnc needs a toolchain w/ wchar" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR diff --git a/package/vpnc/vpnc.hash b/package/vpnc/vpnc.hash index 3474057b77..98a98472e3 100644 --- a/package/vpnc/vpnc.hash +++ b/package/vpnc/vpnc.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 925c8e879f78f1d575b69ee3868b886a0139926ea84c2138a89b9b7d8696f50a vpnc-70f1211f6f26e87e374d66f9a986e855215b8e3e.tar.gz +sha256 c10a5c2c0813198ca2404dd36db380cdb6395b46338123b341775095cf61521d vpnc-b1243d29e0c00312ead038b04a2cf5e2fa31d740.tar.gz diff --git a/package/vpnc/vpnc.mk b/package/vpnc/vpnc.mk index 5dfc2ba655..282a422508 100644 --- a/package/vpnc/vpnc.mk +++ b/package/vpnc/vpnc.mk @@ -4,24 +4,23 @@ # ################################################################################ -VPNC_VERSION = 70f1211f6f26e87e374d66f9a986e855215b8e3e +VPNC_VERSION = b1243d29e0c00312ead038b04a2cf5e2fa31d740 VPNC_SITE = $(call github,ndpgroup,vpnc,$(VPNC_VERSION)) VPNC_LICENSE = GPLv2+ VPNC_LICENSE_FILES = COPYING -VPNC_DEPENDENCIES = libgcrypt libgpg-error - -VPNC_LDFLAGS = $(TARGET_LDFLAGS) -lgcrypt -lgpg-error -VPNC_CPPFLAGS = -DVERSION=\\\"$(VPNC_VERSION)\\\" +VPNC_DEPENDENCIES = libgcrypt libgpg-error gnutls host-pkgconf define VPNC_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ - CPPFLAGS="$(VPNC_CPPFLAGS)" LDFLAGS="$(VPNC_LDFLAGS)" + $(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 - $(MAKE) -C $(@D) install $(TARGET_CONFIGURE_OPTS) \ - CPPFLAGS="$(VPNC_CPPFLAGS)" LDFLAGS="$(VPNC_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install $(TARGET_CONFIGURE_OPTS) \ + VERSION=$(VPNC_VERSION) MANS= \ DESTDIR="$(TARGET_DIR)" PREFIX=/usr endef diff --git a/package/vsftpd/vsftpd.mk b/package/vsftpd/vsftpd.mk index db969f4352..fd92346064 100644 --- a/package/vsftpd/vsftpd.mk +++ b/package/vsftpd/vsftpd.mk @@ -39,7 +39,7 @@ VSFTPD_LIBS += -lpam endif define VSFTPD_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" LIBS="$(VSFTPD_LIBS)" -C $(@D) endef diff --git a/package/waf/waf.hash b/package/waf/waf.hash new file mode 100644 index 0000000000..9d610b2c1e --- /dev/null +++ b/package/waf/waf.hash @@ -0,0 +1,3 @@ +# Locally computed +sha1 33d170c738ed8c92dda2945b445272972f558244 waf-1.9.5 +sha256 101f14e0f47a6410c00b8feda094948516cd3989491c56eb8268907fcd164909 waf-1.9.5 diff --git a/package/waf/waf.mk b/package/waf/waf.mk new file mode 100644 index 0000000000..3d61f267e6 --- /dev/null +++ b/package/waf/waf.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# waf +# +################################################################################ + +WAF_VERSION = 1.9.5 +WAF_SOURCE = waf-$(WAF_VERSION) +WAF_SITE = https://waf.io/ + +define HOST_WAF_EXTRACT_CMDS + $(INSTALL) -D -m 0755 $(DL_DIR)/waf-$(WAF_VERSION) $(@D)/waf +endef + +define HOST_WAF_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/waf $(HOST_DIR)/usr/bin/waf +endef + +$(eval $(host-generic-package)) diff --git a/package/wavemon/Config.in b/package/wavemon/Config.in new file mode 100644 index 0000000000..e073dee96f --- /dev/null +++ b/package/wavemon/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_WAVEMON + bool "wavemon" + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + 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/ NPTL" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/wavemon/wavemon.hash b/package/wavemon/wavemon.hash new file mode 100644 index 0000000000..69bd2b4bf1 --- /dev/null +++ b/package/wavemon/wavemon.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c9ea57da4f8161401bcaaca17b37bcdf16ffb88baad2370afed2e15a7f71af73 wavemon-v0.8.1.tar.gz diff --git a/package/wavemon/wavemon.mk b/package/wavemon/wavemon.mk new file mode 100644 index 0000000000..5a1b7ee0d5 --- /dev/null +++ b/package/wavemon/wavemon.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# wavemon +# +################################################################################ + +WAVEMON_VERSION = v0.8.1 +WAVEMON_SITE = $(call github,uoaerg,wavemon,$(WAVEMON_VERSION)) +WAVEMON_LICENSE = GPLv3+ +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/wavpack.hash b/package/wavpack/wavpack.hash index f15afc2524..56ba7d839c 100644 --- a/package/wavpack/wavpack.hash +++ b/package/wavpack/wavpack.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 7d31b34166c33c3109b45c6e4579b472fd05e3ee8ec6d728352961c5cdd1d6b0 wavpack-4.75.2.tar.bz2 +sha256 1939627d5358d1da62bc6158d63f7ed12905552f3a799c799ee90296a7612944 wavpack-5.1.0.tar.bz2 diff --git a/package/wavpack/wavpack.mk b/package/wavpack/wavpack.mk index ae16454806..daa0888dfb 100644 --- a/package/wavpack/wavpack.mk +++ b/package/wavpack/wavpack.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAVPACK_VERSION = 4.75.2 +WAVPACK_VERSION = 5.1.0 WAVPACK_SITE = http://www.wavpack.com WAVPACK_SOURCE = wavpack-$(WAVPACK_VERSION).tar.bz2 WAVPACK_INSTALL_STAGING = YES diff --git a/package/wayland-protocols/wayland-protocols.hash b/package/wayland-protocols/wayland-protocols.hash index f2d5b7fe94..a316698010 100644 --- a/package/wayland-protocols/wayland-protocols.hash +++ b/package/wayland-protocols/wayland-protocols.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2015-November/025759.html -sha256 a538a8e3f999f2722897eb60aa2e2b53d879381b413b630957d58a9acd226def wayland-protocols-1.0.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2016-August/030606.html +sha256 635f2a937d318f1fecb97b54074ca211486e38af943868dd0fa82ea38d091c1f wayland-protocols-1.7.tar.xz diff --git a/package/wayland-protocols/wayland-protocols.mk b/package/wayland-protocols/wayland-protocols.mk index bb6d52f895..54c2ec1386 100644 --- a/package/wayland-protocols/wayland-protocols.mk +++ b/package/wayland-protocols/wayland-protocols.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAYLAND_PROTOCOLS_VERSION = 1.0 +WAYLAND_PROTOCOLS_VERSION = 1.7 WAYLAND_PROTOCOLS_SITE = http://wayland.freedesktop.org/releases WAYLAND_PROTOCOLS_SOURCE = wayland-protocols-$(WAYLAND_PROTOCOLS_VERSION).tar.xz WAYLAND_PROTOCOLS_LICENSE = MIT diff --git a/package/wayland/0001-Support-architectures-with-non-empty-__USER_LABEL_PR.patch b/package/wayland/0001-Support-architectures-with-non-empty-__USER_LABEL_PR.patch new file mode 100644 index 0000000000..abefcff274 --- /dev/null +++ b/package/wayland/0001-Support-architectures-with-non-empty-__USER_LABEL_PR.patch @@ -0,0 +1,57 @@ +From 0a337328411d5b3f37b169a83b6fee3f1726130f Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 26 May 2016 15:57:33 +0200 +Subject: [PATCH] Support architectures with non-empty __USER_LABEL_PREFIX__ + +On some architectures (like Blackfin), a C symbol does not directly +match with assembly symbols. The C symbol references are in fact all +prefixed by a so-called "user label prefix". So when a symbol defined +in an assembly file needs to be referenced from C, this symbol should +be prefixed by the "user label prefix". + +This commit updates dtddata.S to take into account +__USER_LABEL_PREFIX__ when it exists. + +Signed-off-by: Thomas Petazzoni +--- + src/dtddata.S | 19 +++++++++++++------ + 1 file changed, 13 insertions(+), 6 deletions(-) + +diff --git a/src/dtddata.S b/src/dtddata.S +index ce51133..ad2a4db 100644 +--- a/src/dtddata.S ++++ b/src/dtddata.S +@@ -30,17 +30,24 @@ + + /* from: http://www.linuxjournal.com/content/embedding-file-executable-aka-hello-world-version-5967#comment-348129 */ + ++#ifdef __USER_LABEL_PREFIX__ ++#define CONCAT1(a, b) CONCAT2(a, b) ++#define CONCAT2(a, b) a ## b ++#define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x) ++#else ++#endif ++ + .macro binfile name file + .p2align 2 +- .globl \name\()_begin +-\name\()_begin: ++ .globl SYM(\name\()_begin) ++SYM(\name\()_begin): + .incbin "\file" +-\name\()_end: ++SYM(\name\()_end): + .byte 0 + .p2align 2 +- .globl \name\()_len +-\name\()_len: +- .int (\name\()_end - \name\()_begin) ++ .globl SYM(\name\()_len) ++SYM(\name\()_len): ++ .int (SYM(\name\()_end) - SYM(\name\()_begin)) + .endm + + .section .rodata +-- +2.7.4 + diff --git a/package/wayland/wayland.hash b/package/wayland/wayland.hash index c9d0721cb6..9a58c56b48 100644 --- a/package/wayland/wayland.hash +++ b/package/wayland/wayland.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2016-February/027038.html -sha256 4bf6e790aa6f50ab3825676282ecd75850ec9c4767af96ecb7127b1f3c3d60dc wayland-1.10.0.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2016-September/031121.html +sha256 d6b4135cba0188abcb7275513c72dede751d6194f6edc5b82183a3ba8b821ab1 wayland-1.12.0.tar.xz diff --git a/package/wayland/wayland.mk b/package/wayland/wayland.mk index 215e70ac78..a86239437c 100644 --- a/package/wayland/wayland.mk +++ b/package/wayland/wayland.mk @@ -4,13 +4,14 @@ # ################################################################################ -WAYLAND_VERSION = 1.10.0 +WAYLAND_VERSION = 1.12.0 WAYLAND_SITE = http://wayland.freedesktop.org/releases WAYLAND_SOURCE = wayland-$(WAYLAND_VERSION).tar.xz WAYLAND_LICENSE = MIT WAYLAND_LICENSE_FILES = COPYING 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-scanner is only needed for building, not on the target WAYLAND_CONF_OPTS = --disable-scanner --with-host-scanner diff --git a/package/webkit/0001-build-fix-for-32-bit-autotools.patch b/package/webkit/0001-build-fix-for-32-bit-autotools.patch deleted file mode 100644 index d7765ead0e..0000000000 --- a/package/webkit/0001-build-fix-for-32-bit-autotools.patch +++ /dev/null @@ -1,34 +0,0 @@ -Add missing symbol for WebCore::TextIterator::getLocationAndLengthFromRange - -Signed-off-by: Markos Chandras - -From f5bb58f9096061f00c948e668335811d364ba360 Mon Sep 17 00:00:00 2001 -From: "kov@webkit.org" -Date: Thu, 7 Feb 2013 13:48:46 +0000 -Subject: [PATCH] Unreviewed build fix after r141196 for 32 bits autotools. - -* Source/autotools/symbols.filter: restore 32 bits version of the -WebCore::TextIterator::getLocationAndLengthFromRange(WebCore::Node*, -WebCore::Range const*, unsigned int&, unsigned int&) symbol. - -git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142105 268f45cc-cd09-0410-ab3c-d52691b4dbfc ---- - ChangeLog | 8 ++++++++ - Source/autotools/symbols.filter | 1 + - 2 files changed, 9 insertions(+) - -diff --git a/Source/autotools/symbols.filter b/Source/autotools/symbols.filter -index 9d730b3..2edefaf 100644 ---- a/Source/autotools/symbols.filter -+++ b/Source/autotools/symbols.filter -@@ -57,6 +57,7 @@ _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELj0EEE; - _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELm0EEE; - _ZN7WebCore11MemoryCache14resourceForURLERKNS_4KURLE; - _ZN7WebCore12TextIterator26rangeFromLocationAndLengthEPNS_13ContainerNodeEiib; -+_ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERjS6_; - _ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERmS6_; - _ZN7WebCore12PrintContext20pageNumberForElementEPNS_7ElementERKNS_9FloatSizeE; - _ZN7WebCore13createWrapperEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_4NodeE; --- -1.8.3.2 - diff --git a/package/webkit/0002-build-fix-for-gtklauncher.patch b/package/webkit/0002-build-fix-for-gtklauncher.patch deleted file mode 100644 index 9a840b62fe..0000000000 --- a/package/webkit/0002-build-fix-for-gtklauncher.patch +++ /dev/null @@ -1,51 +0,0 @@ -Make gstreamer support conditional - -Signed-off-by: Markos Chandras - -From f1055f61bce46eccf8dc0aa017113a08d3d71944 Mon Sep 17 00:00:00 2001 -From: "commit-queue@webkit.org" - -Date: Fri, 15 Mar 2013 07:13:51 +0000 -Subject: [PATCH] Build fix for Tools/GtkLauncher/Programs_GtkLauncher-main.o - if gstreamer is not installed https://bugs.webkit.org/show_bug.cgi?id=112394 - -Patch by Tobias Mueller on 2013-03-15 -Reviewed by Philippe Normand. - -* GtkLauncher/main.c: -(main): Guard using the gstreamer function with #ifdef WTF_USE_GSTREAMER - -git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145881 268f45cc-cd09-0410-ab3c-d52691b4dbfc ---- - Tools/ChangeLog | 10 ++++++++++ - Tools/GtkLauncher/main.c | 5 ++++- - 2 files changed, 14 insertions(+), 1 deletion(-) - -diff --git a/Tools/GtkLauncher/main.c b/Tools/GtkLauncher/main.c -index 32baf4a..84c8833 100644 ---- a/Tools/GtkLauncher/main.c -+++ b/Tools/GtkLauncher/main.c -@@ -28,7 +28,9 @@ - #include "autotoolsconfig.h" - #include "LauncherInspectorWindow.h" - #include -+#ifdef WTF_USE_GSTREAMER - #include -+#endif - #include - #include - #include -@@ -489,8 +491,9 @@ int main(int argc, char* argv[]) - GOptionContext *context = g_option_context_new(0); - g_option_context_add_main_entries(context, commandLineOptions, 0); - g_option_context_add_group(context, gtk_get_option_group(TRUE)); -+#ifdef WTF_USE_GSTREAMER - g_option_context_add_group(context, gst_init_get_option_group()); -- -+#endif - webkitSettings = webkit_web_settings_new(); - g_object_set(webkitSettings, "enable-developer-extras", TRUE, NULL); - if (!addWebSettingsGroupToContext(context, webkitSettings)) { --- -1.8.3.2 - diff --git a/package/webkit/0003-detect-harfbuzz-icu.patch b/package/webkit/0003-detect-harfbuzz-icu.patch deleted file mode 100644 index dc93c67e33..0000000000 --- a/package/webkit/0003-detect-harfbuzz-icu.patch +++ /dev/null @@ -1,28 +0,0 @@ -harfbuzz-icu detections based on the following upstream commits - -- 5f3ae29ffb29c499c1825578ba7f3ffcbf1aa8b9 -- ad2a23ec44b692bde43a13b658990770caa8dfc5 -- 22b4786377142424bfb6562ff029997acd0846d1 - -Signed-off-by: Markos Chandras - -Index: webkit-1.11.5/configure.ac -=================================================================== ---- webkit-1.11.5.orig/configure.ac -+++ webkit-1.11.5/configure.ac -@@ -938,6 +938,15 @@ PKG_CHECK_MODULES([FREETYPE], - freetype2 >= $FREETYPE2_REQUIRED_VERSION - harfbuzz]) - fi -+# HarfBuzz 0.9.18 splits harbuzz-icu into a separate library. -+# Since we support earlier HarfBuzz versions we keep this conditional for now. -+m4_define([harfbuzz_required_version], [0.9.7]) -+if $PKG_CONFIG --atleast-version 0.9.18 harfbuzz; then -+ PKG_CHECK_MODULES([HARFBUZZ_ICU], [harfbuzz-icu >= $harfbuzz_required_version]) -+ FREETYPE_CFLAGS+=" $HARFBUZZ_ICU_CFLAGS" -+ FREETYPE_LIBS+=" $HARFBUZZ_ICU_LIBS" -+fi -+ - AC_SUBST([FREETYPE_CFLAGS]) - AC_SUBST([FREETYPE_LIBS]) - diff --git a/package/webkit/0004-disable-docrebase.patch b/package/webkit/0004-disable-docrebase.patch deleted file mode 100644 index 2692d617a4..0000000000 --- a/package/webkit/0004-disable-docrebase.patch +++ /dev/null @@ -1,27 +0,0 @@ -This patch prevents documentation from being rebased or installed. This -prevents an error when gtk-doc --rebase is called. - -Signed-off-by: Spenser Gilliland -Signed-off-by: Markos Chandras - -Index: webkit-1.11.5/Tools/GNUmakefile.am -=================================================================== ---- webkit-1.11.5.orig/Tools/GNUmakefile.am -+++ webkit-1.11.5/Tools/GNUmakefile.am -@@ -308,6 +308,8 @@ EXTRA_DIST += \ - Tools/Scripts/webkit-build-directory \ - Tools/Scripts/webkitdirs.pm - -+if ENABLE_GTK_DOC -+ - docs: docs-build.stamp - .PHONY : docs - DISTCLEANFILES += docs-build.stamp -@@ -412,7 +414,6 @@ if ENABLE_WEBKIT2 - rm -rf $${installdir} - endif - --if ENABLE_GTK_DOC - all: docs-build.stamp - endif - diff --git a/package/webkit/0005-disable-tests.patch b/package/webkit/0005-disable-tests.patch deleted file mode 100644 index 6fa6daae6b..0000000000 --- a/package/webkit/0005-disable-tests.patch +++ /dev/null @@ -1,80 +0,0 @@ -This prevents the Webkit test suites from being built. - -Signed-off-by: Spenser Gilliland ----- -Index: webkit-1.9.6/GNUmakefile.am -=================================================================== ---- webkit-1.9.6.orig/GNUmakefile.am 2012-08-06 03:17:24.000000000 -0500 -+++ webkit-1.9.6/GNUmakefile.am 2013-05-28 10:08:53.645129501 -0500 -@@ -282,11 +282,14 @@ - include Tools/DumpRenderTree/gtk/GNUmakefile.ImageDiff.am - - include Source/WebKit2/GNUmakefile.am --include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am - include Tools/MiniBrowser/gtk/GNUmakefile.am -+ -+if ENABLE_TESTS -+include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am - include Tools/WebKitTestRunner/GNUmakefile.am - include Source/ThirdParty/gtest/GNUmakefile.am - include Tools/TestWebKitAPI/GNUmakefile.am -+endif # ENABLE_TESTS - # [GTK] Refactor the translations now that we have webkit2 - # https://bugs.webkit.org/show_bug.cgi?id=55153 - -Index: webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am -=================================================================== ---- webkit-1.9.6.orig/Source/WebKit/gtk/GNUmakefile.am 2012-07-19 05:02:29.000000000 -0500 -+++ webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am 2013-05-28 10:09:49.277130516 -0500 -@@ -413,6 +413,7 @@ - dist_resources_DATA = \ - $(shell ls $(srcdir)/Source/WebKit/gtk/resources/*.html) - -+if ENABLE_TESTS - # Build unit tests - webkit_tests_cflags = \ - -fno-strict-aliasing \ -@@ -613,6 +614,8 @@ - Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd) - Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags) - -+endif # ENABLE_TESTS -+ - # Project-wide clean rules - # Files that will be cleaned - CLEANFILES += \ -Index: webkit-1.9.6/configure.ac -=================================================================== ---- webkit-1.9.6.orig/configure.ac 2012-08-06 08:45:10.000000000 -0500 -+++ webkit-1.9.6/configure.ac 2013-05-28 10:07:55.817128445 -0500 -@@ -516,6 +516,14 @@ - AC_SUBST(CAIRO_CFLAGS) - AC_SUBST(CAIRO_LIBS) - -+# check wheter to build tests -+AC_MSG_CHECKING([wheter to build tests]) -+AC_ARG_ENABLE(tests, -+ AC_HELP_STRING([--enable-tests], -+ [turn on tests [default=no]]), -+ [],[enable_debug="no"]) -+AC_MSG_RESULT([$enable_tests]) -+ - # check whether to build with debugging enabled - AC_MSG_CHECKING([whether to do a debug build]) - AC_ARG_ENABLE(debug, -@@ -1423,6 +1431,7 @@ - AM_CONDITIONAL([USE_FARSTREAM], [test "$have_farstream" = "yes"]) - - # WebKit feature conditionals -+AM_CONDITIONAL([ENABLE_TESTS],[test "$enable_tests" = "yes"]) - AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug_features" = "yes"]) - AM_CONDITIONAL([ENABLE_UNSTABLE_FEATURES],[test "$enable_unstable_features" = "yes"]) - AM_CONDITIONAL([ENABLE_WEBGL],[test "$enable_webgl" = "yes"]) -@@ -1534,6 +1543,7 @@ - WebKit was configured with the following options: - - Build configuration: -+ Enable tests (slow) : $enable_tests - Enable debugging (slow) : $enable_debug - Compile with debug symbols (slow) : $enable_debug_symbols - Enable debug features (slow) : $enable_debug_features diff --git a/package/webkit/0006-execinfo_h.patch b/package/webkit/0006-execinfo_h.patch deleted file mode 100644 index f5508a1cb1..0000000000 --- a/package/webkit/0006-execinfo_h.patch +++ /dev/null @@ -1,20 +0,0 @@ -Fixes uclibc build as uclibc does not include backtrace functionality - -Signed-of-by: Spenser Gilliland -Signed-of-by: Markos Chandras - -Index: webkit-1.11.5/Source/WTF/wtf/Assertions.cpp -=================================================================== ---- webkit-1.11.5.orig/Source/WTF/wtf/Assertions.cpp -+++ webkit-1.11.5/Source/WTF/wtf/Assertions.cpp -@@ -61,8 +61,10 @@ - #if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID) - #include - #include -+#if !defined(__UCLIBC__) - #include - #endif -+#endif - - #if OS(ANDROID) - #include "android/log.h" diff --git a/package/webkit/0007-mips-dfg.patch b/package/webkit/0007-mips-dfg.patch deleted file mode 100644 index 39259514b9..0000000000 --- a/package/webkit/0007-mips-dfg.patch +++ /dev/null @@ -1,1490 +0,0 @@ -Upstream patch for DFG implementation for MIPS - -Signed-off-by: Markos Chandras - -From c921d19863ccf66bdd0ffa5d38eaf05efab6b136 Mon Sep 17 00:00:00 2001 -From: "commit-queue@webkit.org" - -Date: Mon, 18 Feb 2013 19:25:23 +0000 -Subject: [PATCH] MIPS DFG implementation. - https://bugs.webkit.org/show_bug.cgi?id=101328 - -Patch by Balazs Kilvady on 2013-02-18 -Reviewed by Oliver Hunt. - -DFG implementation for MIPS. - -Source/JavaScriptCore: - -* assembler/MIPSAssembler.h: -(JSC::MIPSAssembler::MIPSAssembler): -(JSC::MIPSAssembler::sllv): -(JSC::MIPSAssembler::movd): -(MIPSAssembler): -(JSC::MIPSAssembler::negd): -(JSC::MIPSAssembler::labelForWatchpoint): -(JSC::MIPSAssembler::label): -(JSC::MIPSAssembler::vmov): -(JSC::MIPSAssembler::linkDirectJump): -(JSC::MIPSAssembler::maxJumpReplacementSize): -(JSC::MIPSAssembler::revertJumpToMove): -(JSC::MIPSAssembler::replaceWithJump): -* assembler/MacroAssembler.h: -(MacroAssembler): -(JSC::MacroAssembler::poke): -* assembler/MacroAssemblerMIPS.h: -(JSC::MacroAssemblerMIPS::add32): -(MacroAssemblerMIPS): -(JSC::MacroAssemblerMIPS::and32): -(JSC::MacroAssemblerMIPS::lshift32): -(JSC::MacroAssemblerMIPS::mul32): -(JSC::MacroAssemblerMIPS::or32): -(JSC::MacroAssemblerMIPS::rshift32): -(JSC::MacroAssemblerMIPS::urshift32): -(JSC::MacroAssemblerMIPS::sub32): -(JSC::MacroAssemblerMIPS::xor32): -(JSC::MacroAssemblerMIPS::store32): -(JSC::MacroAssemblerMIPS::jump): -(JSC::MacroAssemblerMIPS::branchAdd32): -(JSC::MacroAssemblerMIPS::branchMul32): -(JSC::MacroAssemblerMIPS::branchSub32): -(JSC::MacroAssemblerMIPS::branchNeg32): -(JSC::MacroAssemblerMIPS::call): -(JSC::MacroAssemblerMIPS::loadDouble): -(JSC::MacroAssemblerMIPS::moveDouble): -(JSC::MacroAssemblerMIPS::swapDouble): -(JSC::MacroAssemblerMIPS::subDouble): -(JSC::MacroAssemblerMIPS::mulDouble): -(JSC::MacroAssemblerMIPS::divDouble): -(JSC::MacroAssemblerMIPS::negateDouble): -(JSC::MacroAssemblerMIPS::branchEqual): -(JSC::MacroAssemblerMIPS::branchNotEqual): -(JSC::MacroAssemblerMIPS::branchTruncateDoubleToInt32): -(JSC::MacroAssemblerMIPS::branchTruncateDoubleToUint32): -(JSC::MacroAssemblerMIPS::truncateDoubleToInt32): -(JSC::MacroAssemblerMIPS::truncateDoubleToUint32): -(JSC::MacroAssemblerMIPS::branchDoubleNonZero): -(JSC::MacroAssemblerMIPS::branchDoubleZeroOrNaN): -(JSC::MacroAssemblerMIPS::invert): -(JSC::MacroAssemblerMIPS::replaceWithJump): -(JSC::MacroAssemblerMIPS::maxJumpReplacementSize): -* dfg/DFGAssemblyHelpers.h: -(AssemblyHelpers): -(JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall): -(JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn): -(JSC::DFG::AssemblyHelpers::debugCall): -* dfg/DFGCCallHelpers.h: -(CCallHelpers): -(JSC::DFG::CCallHelpers::setupArguments): -(JSC::DFG::CCallHelpers::setupArgumentsWithExecState): -* dfg/DFGFPRInfo.h: -(DFG): -(FPRInfo): -(JSC::DFG::FPRInfo::toRegister): -(JSC::DFG::FPRInfo::toIndex): -(JSC::DFG::FPRInfo::debugName): -* dfg/DFGGPRInfo.h: -(DFG): -(GPRInfo): -(JSC::DFG::GPRInfo::toRegister): -(JSC::DFG::GPRInfo::toIndex): -(JSC::DFG::GPRInfo::debugName): -* dfg/DFGSpeculativeJIT.h: -(SpeculativeJIT): -* jit/JSInterfaceJIT.h: -(JSInterfaceJIT): -* runtime/JSGlobalData.h: -(JSC::ScratchBuffer::allocationSize): -(ScratchBuffer): - -Source/WTF: - -* wtf/Platform.h: - -git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143247 268f45cc-cd09-0410-ab3c-d52691b4dbfc ---- - Source/JavaScriptCore/ChangeLog | 90 ++++ - Source/JavaScriptCore/assembler/MIPSAssembler.h | 109 ++++- - Source/JavaScriptCore/assembler/MacroAssembler.h | 7 + - .../JavaScriptCore/assembler/MacroAssemblerMIPS.h | 480 +++++++++++++++++++-- - Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h | 19 +- - Source/JavaScriptCore/dfg/DFGCCallHelpers.h | 92 ++-- - Source/JavaScriptCore/dfg/DFGFPRInfo.h | 68 +++ - Source/JavaScriptCore/dfg/DFGGPRInfo.h | 67 +++ - Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h | 4 +- - Source/JavaScriptCore/jit/JSInterfaceJIT.h | 4 + - Source/JavaScriptCore/runtime/JSGlobalData.h | 6 +- - Source/WTF/ChangeLog | 11 + - Source/WTF/wtf/Platform.h | 4 + - 13 files changed, 888 insertions(+), 73 deletions(-) - -diff --git a/Source/JavaScriptCore/assembler/MIPSAssembler.h b/Source/JavaScriptCore/assembler/MIPSAssembler.h -index 026f87e..7f553bb 100644 ---- a/Source/JavaScriptCore/assembler/MIPSAssembler.h -+++ b/Source/JavaScriptCore/assembler/MIPSAssembler.h -@@ -152,6 +152,8 @@ public: - typedef SegmentedVector Jumps; - - MIPSAssembler() -+ : m_indexOfLastWatchpoint(INT_MIN) -+ , m_indexOfTailOfLastWatchpoint(INT_MIN) - { - } - -@@ -325,7 +327,7 @@ public: - emitInst(0x00000000 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | ((shamt & 0x1f) << OP_SH_SHAMT)); - } - -- void sllv(RegisterID rd, RegisterID rt, int rs) -+ void sllv(RegisterID rd, RegisterID rt, RegisterID rs) - { - emitInst(0x00000004 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | (rs << OP_SH_RS)); - } -@@ -527,6 +529,16 @@ public: - emitInst(0x46200004 | (fd << OP_SH_FD) | (fs << OP_SH_FS)); - } - -+ void movd(FPRegisterID fd, FPRegisterID fs) -+ { -+ emitInst(0x46200006 | (fd << OP_SH_FD) | (fs << OP_SH_FS)); -+ } -+ -+ void negd(FPRegisterID fd, FPRegisterID fs) -+ { -+ emitInst(0x46200007 | (fd << OP_SH_FD) | (fs << OP_SH_FS)); -+ } -+ - void truncwd(FPRegisterID fd, FPRegisterID fs) - { - emitInst(0x4620000d | (fd << OP_SH_FD) | (fs << OP_SH_FS)); -@@ -619,9 +631,24 @@ public: - return m_buffer.label(); - } - -+ AssemblerLabel labelForWatchpoint() -+ { -+ AssemblerLabel result = m_buffer.label(); -+ if (static_cast(result.m_offset) != m_indexOfLastWatchpoint) -+ result = label(); -+ m_indexOfLastWatchpoint = result.m_offset; -+ m_indexOfTailOfLastWatchpoint = result.m_offset + maxJumpReplacementSize(); -+ return result; -+ } -+ - AssemblerLabel label() - { -- return m_buffer.label(); -+ AssemblerLabel result = m_buffer.label(); -+ while (UNLIKELY(static_cast(result.m_offset) < m_indexOfTailOfLastWatchpoint)) { -+ nop(); -+ result = m_buffer.label(); -+ } -+ return result; - } - - AssemblerLabel align(int alignment) -@@ -664,14 +691,24 @@ public: - // Assembly helpers for moving data between fp and registers. - void vmov(RegisterID rd1, RegisterID rd2, FPRegisterID rn) - { -+#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64 -+ mfc1(rd1, rn); -+ mfhc1(rd2, rn); -+#else - mfc1(rd1, rn); - mfc1(rd2, FPRegisterID(rn + 1)); -+#endif - } - - void vmov(FPRegisterID rd, RegisterID rn1, RegisterID rn2) - { -+#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64 -+ mtc1(rn1, rd); -+ mthc1(rn2, rd); -+#else - mtc1(rn1, rd); - mtc1(rn2, FPRegisterID(rd + 1)); -+#endif - } - - static unsigned getCallReturnOffset(AssemblerLabel call) -@@ -688,6 +725,35 @@ public: - // writable region of memory; to modify the code in an execute-only execuable - // pool the 'repatch' and 'relink' methods should be used. - -+ static size_t linkDirectJump(void* code, void* to) -+ { -+ MIPSWord* insn = reinterpret_cast(reinterpret_cast(code)); -+ size_t ops = 0; -+ int32_t slotAddr = reinterpret_cast(insn) + 4; -+ int32_t toAddr = reinterpret_cast(to); -+ -+ if ((slotAddr & 0xf0000000) != (toAddr & 0xf0000000)) { -+ // lui -+ *insn = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((toAddr >> 16) & 0xffff); -+ ++insn; -+ // ori -+ *insn = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (toAddr & 0xffff); -+ ++insn; -+ // jr -+ *insn = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS); -+ ++insn; -+ ops = 4 * sizeof(MIPSWord); -+ } else { -+ // j -+ *insn = 0x08000000 | ((toAddr & 0x0fffffff) >> 2); -+ ++insn; -+ ops = 2 * sizeof(MIPSWord); -+ } -+ // nop -+ *insn = 0x00000000; -+ return ops; -+ } -+ - void linkJump(AssemblerLabel from, AssemblerLabel to) - { - ASSERT(to.isSet()); -@@ -825,29 +891,36 @@ public: - #endif - } - -- static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm) -+ static ptrdiff_t maxJumpReplacementSize() - { -- MIPSWord* insn = static_cast(instructionStart) + 1; -- ASSERT((*insn & 0xfc000000) == 0x34000000); -- *insn = (*insn & 0xfc1f0000) | (imm & 0xffff); -- cacheFlush(insn, sizeof(MIPSWord)); -+ return sizeof(MIPSWord) * 4; - } - -- static void replaceWithJump(void* instructionStart, void* to) -+ static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm) - { -- MIPSWord* instruction = reinterpret_cast(instructionStart); -- intptr_t jumpTo = reinterpret_cast(to); -+ MIPSWord* insn = static_cast(instructionStart); -+ size_t codeSize = 2 * sizeof(MIPSWord); - - // lui -- instruction[0] = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((jumpTo >> 16) & 0xffff); -+ *insn = 0x3c000000 | (rt << OP_SH_RT) | ((imm >> 16) & 0xffff); -+ ++insn; - // ori -- instruction[1] = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (jumpTo & 0xffff); -- // jr -- instruction[2] = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS); -- // nop -- instruction[3] = 0x0; -+ *insn = 0x34000000 | (rt << OP_SH_RS) | (rt << OP_SH_RT) | (imm & 0xffff); -+ ++insn; -+ // if jr $t9 -+ if (*insn == 0x03200008) { -+ *insn = 0x00000000; -+ codeSize += sizeof(MIPSWord); -+ } -+ cacheFlush(insn, codeSize); -+ } - -- cacheFlush(instruction, sizeof(MIPSWord) * 4); -+ static void replaceWithJump(void* instructionStart, void* to) -+ { -+ ASSERT(!(bitwise_cast(instructionStart) & 3)); -+ ASSERT(!(bitwise_cast(to) & 3)); -+ size_t ops = linkDirectJump(instructionStart, to); -+ cacheFlush(instructionStart, ops); - } - - static void replaceWithLoad(void* instructionStart) -@@ -1023,6 +1096,8 @@ private: - - AssemblerBuffer m_buffer; - Jumps m_jumps; -+ int m_indexOfLastWatchpoint; -+ int m_indexOfTailOfLastWatchpoint; - }; - - } // namespace JSC -diff --git a/Source/JavaScriptCore/assembler/MacroAssembler.h b/Source/JavaScriptCore/assembler/MacroAssembler.h -index 60a93db..1f0c3de 100644 ---- a/Source/JavaScriptCore/assembler/MacroAssembler.h -+++ b/Source/JavaScriptCore/assembler/MacroAssembler.h -@@ -200,6 +200,13 @@ public: - } - #endif - -+#if CPU(MIPS) -+ void poke(FPRegisterID src, int index = 0) -+ { -+ ASSERT(!(index & 1)); -+ storeDouble(src, addressForPoke(index)); -+ } -+#endif - - // Backwards banches, these are currently all implemented using existing forwards branch mechanisms. - void branchPtr(RelationalCondition cond, RegisterID op1, TrustedImmPtr imm, Label target) -diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h -index 43ad434..4f14960 100644 ---- a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h -+++ b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h -@@ -114,6 +114,11 @@ public: - m_assembler.addu(dest, dest, src); - } - -+ void add32(RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ m_assembler.addu(dest, op1, op2); -+ } -+ - void add32(TrustedImm32 imm, RegisterID dest) - { - add32(imm, dest, dest); -@@ -267,6 +272,11 @@ public: - m_assembler.andInsn(dest, dest, src); - } - -+ void and32(RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ m_assembler.andInsn(dest, op1, op2); -+ } -+ - void and32(TrustedImm32 imm, RegisterID dest) - { - if (!imm.m_value && !m_fixedWidth) -@@ -283,9 +293,16 @@ public: - } - } - -- void lshift32(TrustedImm32 imm, RegisterID dest) -+ void and32(TrustedImm32 imm, RegisterID src, RegisterID dest) - { -- m_assembler.sll(dest, dest, imm.m_value); -+ if (!imm.m_value && !m_fixedWidth) -+ move(MIPSRegisters::zero, dest); -+ else if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth) -+ m_assembler.andi(dest, src, imm.m_value); -+ else { -+ move(imm, immTempRegister); -+ m_assembler.andInsn(dest, src, immTempRegister); -+ } - } - - void lshift32(RegisterID shiftAmount, RegisterID dest) -@@ -293,11 +310,33 @@ public: - m_assembler.sllv(dest, dest, shiftAmount); - } - -+ void lshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest) -+ { -+ m_assembler.sllv(dest, src, shiftAmount); -+ } -+ -+ void lshift32(TrustedImm32 imm, RegisterID dest) -+ { -+ move(imm, immTempRegister); -+ m_assembler.sllv(dest, dest, immTempRegister); -+ } -+ -+ void lshift32(RegisterID src, TrustedImm32 imm, RegisterID dest) -+ { -+ move(imm, immTempRegister); -+ m_assembler.sllv(dest, src, immTempRegister); -+ } -+ - void mul32(RegisterID src, RegisterID dest) - { - m_assembler.mul(dest, dest, src); - } - -+ void mul32(RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ m_assembler.mul(dest, op1, op2); -+ } -+ - void mul32(TrustedImm32 imm, RegisterID src, RegisterID dest) - { - if (!imm.m_value && !m_fixedWidth) -@@ -348,6 +387,24 @@ public: - m_assembler.orInsn(dest, dest, dataTempRegister); - } - -+ void or32(TrustedImm32 imm, RegisterID src, RegisterID dest) -+ { -+ if (!imm.m_value && !m_fixedWidth) -+ return; -+ -+ if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth) { -+ m_assembler.ori(dest, src, imm.m_value); -+ return; -+ } -+ -+ /* -+ li dataTemp, imm -+ or dest, src, dataTemp -+ */ -+ move(imm, dataTempRegister); -+ m_assembler.orInsn(dest, src, dataTempRegister); -+ } -+ - void or32(RegisterID src, AbsoluteAddress dest) - { - load32(dest.m_ptr, dataTempRegister); -@@ -360,6 +417,11 @@ public: - m_assembler.srav(dest, dest, shiftAmount); - } - -+ void rshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest) -+ { -+ m_assembler.srav(dest, src, shiftAmount); -+ } -+ - void rshift32(TrustedImm32 imm, RegisterID dest) - { - m_assembler.sra(dest, dest, imm.m_value); -@@ -375,16 +437,31 @@ public: - m_assembler.srlv(dest, dest, shiftAmount); - } - -+ void urshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest) -+ { -+ m_assembler.srlv(dest, src, shiftAmount); -+ } -+ - void urshift32(TrustedImm32 imm, RegisterID dest) - { - m_assembler.srl(dest, dest, imm.m_value); - } - -+ void urshift32(RegisterID src, TrustedImm32 imm, RegisterID dest) -+ { -+ m_assembler.srl(dest, src, imm.m_value); -+ } -+ - void sub32(RegisterID src, RegisterID dest) - { - m_assembler.subu(dest, dest, src); - } - -+ void sub32(RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ m_assembler.subu(dest, op1, op2); -+ } -+ - void sub32(TrustedImm32 imm, RegisterID dest) - { - if (imm.m_value >= -32767 && imm.m_value <= 32768 -@@ -495,6 +572,11 @@ public: - m_assembler.xorInsn(dest, dest, src); - } - -+ void xor32(RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ m_assembler.xorInsn(dest, op1, op2); -+ } -+ - void xor32(TrustedImm32 imm, RegisterID dest) - { - if (imm.m_value == -1) { -@@ -510,6 +592,21 @@ public: - m_assembler.xorInsn(dest, dest, immTempRegister); - } - -+ void xor32(TrustedImm32 imm, RegisterID src, RegisterID dest) -+ { -+ if (imm.m_value == -1) { -+ m_assembler.nor(dest, src, MIPSRegisters::zero); -+ return; -+ } -+ -+ /* -+ li immTemp, imm -+ xor dest, dest, immTemp -+ */ -+ move(imm, immTempRegister); -+ m_assembler.xorInsn(dest, src, immTempRegister); -+ } -+ - void sqrtDouble(FPRegisterID src, FPRegisterID dst) - { - m_assembler.sqrtd(dst, src); -@@ -989,6 +1086,44 @@ public: - } - } - -+ void store32(TrustedImm32 imm, BaseIndex address) -+ { -+ if (address.offset >= -32768 && address.offset <= 32767 && !m_fixedWidth) { -+ /* -+ sll addrTemp, address.index, address.scale -+ addu addrTemp, addrTemp, address.base -+ sw src, address.offset(addrTemp) -+ */ -+ m_assembler.sll(addrTempRegister, address.index, address.scale); -+ m_assembler.addu(addrTempRegister, addrTempRegister, address.base); -+ if (!imm.m_value) -+ m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset); -+ else { -+ move(imm, immTempRegister); -+ m_assembler.sw(immTempRegister, addrTempRegister, address.offset); -+ } -+ } else { -+ /* -+ sll addrTemp, address.index, address.scale -+ addu addrTemp, addrTemp, address.base -+ lui immTemp, (address.offset + 0x8000) >> 16 -+ addu addrTemp, addrTemp, immTemp -+ sw src, (address.offset & 0xffff)(at) -+ */ -+ m_assembler.sll(addrTempRegister, address.index, address.scale); -+ m_assembler.addu(addrTempRegister, addrTempRegister, address.base); -+ m_assembler.lui(immTempRegister, (address.offset + 0x8000) >> 16); -+ m_assembler.addu(addrTempRegister, addrTempRegister, immTempRegister); -+ if (!imm.m_value && !m_fixedWidth) -+ m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset); -+ else { -+ move(imm, immTempRegister); -+ m_assembler.sw(immTempRegister, addrTempRegister, address.offset); -+ } -+ } -+ } -+ -+ - void store32(RegisterID src, const void* address) - { - /* -@@ -1336,6 +1471,15 @@ public: - m_fixedWidth = false; - } - -+ void jump(AbsoluteAddress address) -+ { -+ m_fixedWidth = true; -+ load32(address.m_ptr, MIPSRegisters::t9); -+ m_assembler.jr(MIPSRegisters::t9); -+ m_assembler.nop(); -+ m_fixedWidth = false; -+ } -+ - void moveDoubleToInts(FPRegisterID src, RegisterID dest1, RegisterID dest2) - { - m_assembler.vmov(dest1, dest2, src); -@@ -1404,6 +1548,53 @@ public: - return Jump(); - } - -+ Jump branchAdd32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero)); -+ if (cond == Overflow) { -+ /* -+ move dataTemp, op1 -+ xor cmpTemp, dataTemp, op2 -+ bltz cmpTemp, No_overflow # diff sign bit -> no overflow -+ addu dest, dataTemp, op2 -+ xor cmpTemp, dest, dataTemp -+ bgez cmpTemp, No_overflow # same sign big -> no overflow -+ nop -+ b Overflow -+ nop -+ nop -+ nop -+ nop -+ nop -+ No_overflow: -+ */ -+ move(op1, dataTempRegister); -+ m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2); -+ m_assembler.bltz(cmpTempRegister, 10); -+ m_assembler.addu(dest, dataTempRegister, op2); -+ m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister); -+ m_assembler.bgez(cmpTempRegister, 7); -+ m_assembler.nop(); -+ return jump(); -+ } -+ if (cond == Signed) { -+ add32(op1, op2, dest); -+ // Check if dest is negative. -+ m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero); -+ return branchNotEqual(cmpTempRegister, MIPSRegisters::zero); -+ } -+ if (cond == Zero) { -+ add32(op1, op2, dest); -+ return branchEqual(dest, MIPSRegisters::zero); -+ } -+ if (cond == NonZero) { -+ add32(op1, op2, dest); -+ return branchNotEqual(dest, MIPSRegisters::zero); -+ } -+ ASSERT(0); -+ return Jump(); -+ } -+ - Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, RegisterID dest) - { - move(imm, immTempRegister); -@@ -1417,6 +1608,111 @@ public: - return branchAdd32(cond, immTempRegister, dest); - } - -+ Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, AbsoluteAddress dest) -+ { -+ ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero)); -+ if (cond == Overflow) { -+ /* -+ move dataTemp, dest -+ xori cmpTemp, dataTemp, imm -+ bltz cmpTemp, No_overflow # diff sign bit -> no overflow -+ addiu dataTemp, dataTemp, imm -+ move dest, dataTemp -+ xori cmpTemp, dataTemp, imm -+ bgez cmpTemp, No_overflow # same sign big -> no overflow -+ nop -+ b Overflow -+ nop -+ nop -+ nop -+ nop -+ nop -+ No_overflow: -+ */ -+ if (imm.m_value >= -32768 && imm.m_value <= 32767 && !m_fixedWidth) { -+ load32(dest.m_ptr, dataTempRegister); -+ m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value); -+ m_assembler.bltz(cmpTempRegister, 10); -+ m_assembler.addiu(dataTempRegister, dataTempRegister, imm.m_value); -+ store32(dataTempRegister, dest.m_ptr); -+ m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value); -+ m_assembler.bgez(cmpTempRegister, 7); -+ m_assembler.nop(); -+ } else { -+ load32(dest.m_ptr, dataTempRegister); -+ move(imm, immTempRegister); -+ m_assembler.xorInsn(cmpTempRegister, dataTempRegister, immTempRegister); -+ m_assembler.bltz(cmpTempRegister, 10); -+ m_assembler.addiu(dataTempRegister, dataTempRegister, immTempRegister); -+ store32(dataTempRegister, dest.m_ptr); -+ m_assembler.xori(cmpTempRegister, dataTempRegister, immTempRegister); -+ m_assembler.bgez(cmpTempRegister, 7); -+ m_assembler.nop(); -+ } -+ return jump(); -+ } -+ move(imm, immTempRegister); -+ load32(dest.m_ptr, dataTempRegister); -+ add32(immTempRegister, dataTempRegister); -+ store32(dataTempRegister, dest.m_ptr); -+ if (cond == Signed) { -+ // Check if dest is negative. -+ m_assembler.slt(cmpTempRegister, dataTempRegister, MIPSRegisters::zero); -+ return branchNotEqual(cmpTempRegister, MIPSRegisters::zero); -+ } -+ if (cond == Zero) -+ return branchEqual(dataTempRegister, MIPSRegisters::zero); -+ if (cond == NonZero) -+ return branchNotEqual(dataTempRegister, MIPSRegisters::zero); -+ ASSERT(0); -+ return Jump(); -+ } -+ -+ Jump branchMul32(ResultCondition cond, RegisterID src1, RegisterID src2, RegisterID dest) -+ { -+ ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero)); -+ if (cond == Overflow) { -+ /* -+ mult src, dest -+ mfhi dataTemp -+ mflo dest -+ sra addrTemp, dest, 31 -+ beq dataTemp, addrTemp, No_overflow # all sign bits (bit 63 to bit 31) are the same -> no overflow -+ nop -+ b Overflow -+ nop -+ nop -+ nop -+ nop -+ nop -+ No_overflow: -+ */ -+ m_assembler.mult(src1, src2); -+ m_assembler.mfhi(dataTempRegister); -+ m_assembler.mflo(dest); -+ m_assembler.sra(addrTempRegister, dest, 31); -+ m_assembler.beq(dataTempRegister, addrTempRegister, 7); -+ m_assembler.nop(); -+ return jump(); -+ } -+ if (cond == Signed) { -+ mul32(src1, src2, dest); -+ // Check if dest is negative. -+ m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero); -+ return branchNotEqual(cmpTempRegister, MIPSRegisters::zero); -+ } -+ if (cond == Zero) { -+ mul32(src1, src2, dest); -+ return branchEqual(dest, MIPSRegisters::zero); -+ } -+ if (cond == NonZero) { -+ mul32(src1, src2, dest); -+ return branchNotEqual(dest, MIPSRegisters::zero); -+ } -+ ASSERT(0); -+ return Jump(); -+ } -+ - Jump branchMul32(ResultCondition cond, RegisterID src, RegisterID dest) - { - ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero)); -@@ -1465,8 +1761,7 @@ public: - Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest) - { - move(imm, immTempRegister); -- move(src, dest); -- return branchMul32(cond, immTempRegister, dest); -+ return branchMul32(cond, immTempRegister, src, dest); - } - - Jump branchSub32(ResultCondition cond, RegisterID src, RegisterID dest) -@@ -1525,8 +1820,60 @@ public: - Jump branchSub32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest) - { - move(imm, immTempRegister); -- move(src, dest); -- return branchSub32(cond, immTempRegister, dest); -+ return branchSub32(cond, src, immTempRegister, dest); -+ } -+ -+ Jump branchSub32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest) -+ { -+ ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero)); -+ if (cond == Overflow) { -+ /* -+ move dataTemp, op1 -+ xor cmpTemp, dataTemp, op2 -+ bgez cmpTemp, No_overflow # same sign bit -> no overflow -+ subu dest, dataTemp, op2 -+ xor cmpTemp, dest, dataTemp -+ bgez cmpTemp, No_overflow # same sign bit -> no overflow -+ nop -+ b Overflow -+ nop -+ nop -+ nop -+ nop -+ nop -+ No_overflow: -+ */ -+ move(op1, dataTempRegister); -+ m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2); -+ m_assembler.bgez(cmpTempRegister, 10); -+ m_assembler.subu(dest, dataTempRegister, op2); -+ m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister); -+ m_assembler.bgez(cmpTempRegister, 7); -+ m_assembler.nop(); -+ return jump(); -+ } -+ if (cond == Signed) { -+ sub32(op1, op2, dest); -+ // Check if dest is negative. -+ m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero); -+ return branchNotEqual(cmpTempRegister, MIPSRegisters::zero); -+ } -+ if (cond == Zero) { -+ sub32(op1, op2, dest); -+ return branchEqual(dest, MIPSRegisters::zero); -+ } -+ if (cond == NonZero) { -+ sub32(op1, op2, dest); -+ return branchNotEqual(dest, MIPSRegisters::zero); -+ } -+ ASSERT(0); -+ return Jump(); -+ } -+ -+ Jump branchNeg32(ResultCondition cond, RegisterID srcDest) -+ { -+ m_assembler.li(dataTempRegister, -1); -+ return branchMul32(cond, dataTempRegister, srcDest); - } - - Jump branchOr32(ResultCondition cond, RegisterID src, RegisterID dest) -@@ -1578,7 +1925,8 @@ public: - - Call call(RegisterID target) - { -- m_assembler.jalr(target); -+ move(target, MIPSRegisters::t9); -+ m_assembler.jalr(MIPSRegisters::t9); - m_assembler.nop(); - return Call(m_assembler.label(), Call::None); - } -@@ -1822,7 +2170,7 @@ public: - lui immTemp, (address.offset + 0x8000) >> 16 - addu addrTemp, addrTemp, immTemp - lwc1 dest, (address.offset & 0xffff)(at) -- lwc1 dest+4, (address.offset & 0xffff + 4)(at) -+ lwc1 dest+1, (address.offset & 0xffff + 4)(at) - */ - m_assembler.sll(addrTempRegister, address.index, address.scale); - m_assembler.addu(addrTempRegister, addrTempRegister, address.base); -@@ -2009,6 +2357,19 @@ public: - #endif - } - -+ void moveDouble(FPRegisterID src, FPRegisterID dest) -+ { -+ if (src != dest || m_fixedWidth) -+ m_assembler.movd(dest, src); -+ } -+ -+ void swapDouble(FPRegisterID fr1, FPRegisterID fr2) -+ { -+ moveDouble(fr1, fpTempRegister); -+ moveDouble(fr2, fr1); -+ moveDouble(fpTempRegister, fr2); -+ } -+ - void addDouble(FPRegisterID src, FPRegisterID dest) - { - m_assembler.addd(dest, dest, src); -@@ -2036,6 +2397,11 @@ public: - m_assembler.subd(dest, dest, src); - } - -+ void subDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest) -+ { -+ m_assembler.subd(dest, op1, op2); -+ } -+ - void subDouble(Address src, FPRegisterID dest) - { - loadDouble(src, fpTempRegister); -@@ -2053,11 +2419,32 @@ public: - m_assembler.muld(dest, dest, fpTempRegister); - } - -+ void mulDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest) -+ { -+ m_assembler.muld(dest, op1, op2); -+ } -+ - void divDouble(FPRegisterID src, FPRegisterID dest) - { - m_assembler.divd(dest, dest, src); - } - -+ void divDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest) -+ { -+ m_assembler.divd(dest, op1, op2); -+ } -+ -+ void divDouble(Address src, FPRegisterID dest) -+ { -+ loadDouble(src, fpTempRegister); -+ m_assembler.divd(dest, dest, fpTempRegister); -+ } -+ -+ void negateDouble(FPRegisterID src, FPRegisterID dest) -+ { -+ m_assembler.negd(dest, src); -+ } -+ - void convertInt32ToDouble(RegisterID src, FPRegisterID dest) - { - m_assembler.mtc1(src, fpTempRegister); -@@ -2117,6 +2504,8 @@ public: - - Jump branchEqual(RegisterID rs, RegisterID rt) - { -+ m_assembler.nop(); -+ m_assembler.nop(); - m_assembler.appendJump(); - m_assembler.beq(rs, rt, 0); - m_assembler.nop(); -@@ -2126,6 +2515,8 @@ public: - - Jump branchNotEqual(RegisterID rs, RegisterID rt) - { -+ m_assembler.nop(); -+ m_assembler.nop(); - m_assembler.appendJump(); - m_assembler.bne(rs, rt, 0); - m_assembler.nop(); -@@ -2192,11 +2583,33 @@ public: - // If the result is not representable as a 32 bit value, branch. - // May also branch for some values that are representable in 32 bits - // (specifically, in this case, INT_MAX 0x7fffffff). -- Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest) -+ enum BranchTruncateType { BranchIfTruncateFailed, BranchIfTruncateSuccessful }; -+ Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed) -+ { -+ m_assembler.truncwd(fpTempRegister, src); -+ m_assembler.mfc1(dest, fpTempRegister); -+ return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0x7fffffff)); -+ } -+ -+ Jump branchTruncateDoubleToUint32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed) -+ { -+ m_assembler.truncwd(fpTempRegister, src); -+ m_assembler.mfc1(dest, fpTempRegister); -+ return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0)); -+ } -+ -+ // Result is undefined if the value is outside of the integer range. -+ void truncateDoubleToInt32(FPRegisterID src, RegisterID dest) -+ { -+ m_assembler.truncwd(fpTempRegister, src); -+ m_assembler.mfc1(dest, fpTempRegister); -+ } -+ -+ // Result is undefined if src > 2^31 -+ void truncateDoubleToUint32(FPRegisterID src, RegisterID dest) - { - m_assembler.truncwd(fpTempRegister, src); - m_assembler.mfc1(dest, fpTempRegister); -- return branch32(Equal, dest, TrustedImm32(0x7fffffff)); - } - - // Convert 'src' to an integer, and places the resulting 'dest'. -@@ -2218,28 +2631,43 @@ public: - - Jump branchDoubleNonZero(FPRegisterID reg, FPRegisterID scratch) - { --#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64 -- m_assembler.mtc1(MIPSRegisters::zero, scratch); -- m_assembler.mthc1(MIPSRegisters::zero, scratch); --#else -- m_assembler.mtc1(MIPSRegisters::zero, scratch); -- m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1)); --#endif -+ m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero); - return branchDouble(DoubleNotEqual, reg, scratch); - } - - Jump branchDoubleZeroOrNaN(FPRegisterID reg, FPRegisterID scratch) - { --#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64 -- m_assembler.mtc1(MIPSRegisters::zero, scratch); -- m_assembler.mthc1(MIPSRegisters::zero, scratch); --#else -- m_assembler.mtc1(MIPSRegisters::zero, scratch); -- m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1)); --#endif -+ m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero); - return branchDouble(DoubleEqualOrUnordered, reg, scratch); - } - -+ // Invert a relational condition, e.g. == becomes !=, < becomes >=, etc. -+ static RelationalCondition invert(RelationalCondition cond) -+ { -+ RelationalCondition r; -+ if (cond == Equal) -+ r = NotEqual; -+ else if (cond == NotEqual) -+ r = Equal; -+ else if (cond == Above) -+ r = BelowOrEqual; -+ else if (cond == AboveOrEqual) -+ r = Below; -+ else if (cond == Below) -+ r = AboveOrEqual; -+ else if (cond == BelowOrEqual) -+ r = Above; -+ else if (cond == GreaterThan) -+ r = LessThanOrEqual; -+ else if (cond == GreaterThanOrEqual) -+ r = LessThan; -+ else if (cond == LessThan) -+ r = GreaterThanOrEqual; -+ else if (cond == LessThanOrEqual) -+ r = GreaterThan; -+ return r; -+ } -+ - void nop() - { - m_assembler.nop(); -@@ -2252,12 +2680,12 @@ public: - - static void replaceWithJump(CodeLocationLabel instructionStart, CodeLocationLabel destination) - { -- RELEASE_ASSERT_NOT_REACHED(); -+ MIPSAssembler::replaceWithJump(instructionStart.dataLocation(), destination.dataLocation()); - } - - static ptrdiff_t maxJumpReplacementSize() - { -- RELEASE_ASSERT_NOT_REACHED(); -+ MIPSAssembler::maxJumpReplacementSize(); - return 0; - } - -diff --git a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h -index fa0f5e0..573d8dc 100644 ---- a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h -+++ b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h -@@ -93,6 +93,23 @@ public: - } - #endif - -+#if CPU(MIPS) -+ ALWAYS_INLINE void preserveReturnAddressAfterCall(RegisterID reg) -+ { -+ move(returnAddressRegister, reg); -+ } -+ -+ ALWAYS_INLINE void restoreReturnAddressBeforeReturn(RegisterID reg) -+ { -+ move(reg, returnAddressRegister); -+ } -+ -+ ALWAYS_INLINE void restoreReturnAddressBeforeReturn(Address address) -+ { -+ loadPtr(address, returnAddressRegister); -+ } -+#endif -+ - void emitGetFromCallFrameHeaderPtr(JSStack::CallFrameHeaderEntry entry, GPRReg to) - { - loadPtr(Address(GPRInfo::callFrameRegister, entry * sizeof(Register)), to); -@@ -193,7 +210,7 @@ public: - move(TrustedImmPtr(scratchBuffer->activeLengthPtr()), GPRInfo::regT0); - storePtr(TrustedImmPtr(scratchSize), GPRInfo::regT0); - --#if CPU(X86_64) || CPU(ARM) -+#if CPU(X86_64) || CPU(ARM) || CPU(MIPS) - move(TrustedImmPtr(buffer), GPRInfo::argumentGPR2); - move(TrustedImmPtr(argument), GPRInfo::argumentGPR1); - move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0); -diff --git a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h -index 8adde05..3d99f6f 100644 ---- a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h -+++ b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h -@@ -576,6 +576,39 @@ public: - poke(GPRInfo::nonArgGPR0); - } - #endif // CPU(ARM_HARDFP) -+#elif CPU(MIPS) -+ ALWAYS_INLINE void setupArguments(FPRReg arg1) -+ { -+ moveDouble(arg1, FPRInfo::argumentFPR0); -+ } -+ -+ ALWAYS_INLINE void setupArguments(FPRReg arg1, FPRReg arg2) -+ { -+ if (arg2 != FPRInfo::argumentFPR0) { -+ moveDouble(arg1, FPRInfo::argumentFPR0); -+ moveDouble(arg2, FPRInfo::argumentFPR1); -+ } else if (arg1 != FPRInfo::argumentFPR1) { -+ moveDouble(arg2, FPRInfo::argumentFPR1); -+ moveDouble(arg1, FPRInfo::argumentFPR0); -+ } else { -+ // Swap arg1, arg2. -+ swapDouble(FPRInfo::argumentFPR0, FPRInfo::argumentFPR1); -+ } -+ } -+ -+ ALWAYS_INLINE void setupArgumentsWithExecState(FPRReg arg1, GPRReg arg2) -+ { -+ assembler().vmov(GPRInfo::argumentGPR2, GPRInfo::argumentGPR3, arg1); -+ move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0); -+ poke(arg2, 4); -+ } -+ -+ ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, FPRReg arg3) -+ { -+ setupStubArguments(arg1, arg2); -+ move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0); -+ poke(arg3, 4); -+ } - #else - #error "DFG JIT not supported on this platform." - #endif -@@ -803,119 +836,126 @@ public: - // These methods are suitable for any calling convention that provides for - // exactly 4 argument registers, e.g. ARMv7. - #if NUMBER_OF_ARGUMENT_REGISTERS == 4 -+ -+#if CPU(MIPS) -+#define POKE_ARGUMENT_OFFSET 4 -+#else -+#define POKE_ARGUMENT_OFFSET 0 -+#endif -+ - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImm32 arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, GPRReg arg3, GPRReg arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImmPtr arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4) - { -- poke(arg4); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, TrustedImm32 arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, TrustedImmPtr arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4, TrustedImm32 arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - - ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5) - { -- poke(arg5, 1); -- poke(arg4); -+ poke(arg5, POKE_ARGUMENT_OFFSET + 1); -+ poke(arg4, POKE_ARGUMENT_OFFSET); - setupArgumentsWithExecState(arg1, arg2, arg3); - } - -diff --git a/Source/JavaScriptCore/dfg/DFGFPRInfo.h b/Source/JavaScriptCore/dfg/DFGFPRInfo.h -index 17aaa7d..e18ec06 100644 ---- a/Source/JavaScriptCore/dfg/DFGFPRInfo.h -+++ b/Source/JavaScriptCore/dfg/DFGFPRInfo.h -@@ -164,6 +164,74 @@ public: - - #endif - -+#if CPU(MIPS) -+ -+class FPRInfo { -+public: -+ typedef FPRReg RegisterType; -+ static const unsigned numberOfRegisters = 6; -+ -+ // Temporary registers. -+ static const FPRReg fpRegT0 = MIPSRegisters::f0; -+ static const FPRReg fpRegT1 = MIPSRegisters::f4; -+ static const FPRReg fpRegT2 = MIPSRegisters::f6; -+ static const FPRReg fpRegT3 = MIPSRegisters::f8; -+ static const FPRReg fpRegT4 = MIPSRegisters::f10; -+ static const FPRReg fpRegT5 = MIPSRegisters::f18; -+ -+ static const FPRReg returnValueFPR = MIPSRegisters::f0; -+ -+ static const FPRReg argumentFPR0 = MIPSRegisters::f12; -+ static const FPRReg argumentFPR1 = MIPSRegisters::f14; -+ -+ static FPRReg toRegister(unsigned index) -+ { -+ static const FPRReg registerForIndex[numberOfRegisters] = { -+ fpRegT0, fpRegT1, fpRegT2, fpRegT3, fpRegT4, fpRegT5 }; -+ -+ ASSERT(index < numberOfRegisters); -+ return registerForIndex[index]; -+ } -+ -+ static unsigned toIndex(FPRReg reg) -+ { -+ ASSERT(reg != InvalidFPRReg); -+ ASSERT(reg < 20); -+ static const unsigned indexForRegister[20] = { -+ 0, InvalidIndex, InvalidIndex, InvalidIndex, -+ 1, InvalidIndex, 2, InvalidIndex, -+ 3, InvalidIndex, 4, InvalidIndex, -+ InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, -+ InvalidIndex, InvalidIndex, 5, InvalidIndex, -+ }; -+ unsigned result = indexForRegister[reg]; -+ ASSERT(result != InvalidIndex); -+ return result; -+ } -+ -+ static const char* debugName(FPRReg reg) -+ { -+ ASSERT(reg != InvalidFPRReg); -+ ASSERT(reg < 32); -+ static const char* nameForRegister[32] = { -+ "f0", "f1", "f2", "f3", -+ "f4", "f5", "f6", "f7", -+ "f8", "f9", "f10", "f11", -+ "f12", "f13", "f14", "f15" -+ "f16", "f17", "f18", "f19" -+ "f20", "f21", "f22", "f23" -+ "f24", "f25", "f26", "f27" -+ "f28", "f29", "f30", "f31" -+ }; -+ return nameForRegister[reg]; -+ } -+private: -+ -+ static const unsigned InvalidIndex = 0xffffffff; -+}; -+ -+#endif -+ - typedef RegisterBank::iterator fpr_iterator; - - } } // namespace JSC::DFG -diff --git a/Source/JavaScriptCore/dfg/DFGGPRInfo.h b/Source/JavaScriptCore/dfg/DFGGPRInfo.h -index 3d07556..aa634cd 100644 ---- a/Source/JavaScriptCore/dfg/DFGGPRInfo.h -+++ b/Source/JavaScriptCore/dfg/DFGGPRInfo.h -@@ -461,6 +461,73 @@ private: - - #endif - -+#if CPU(MIPS) -+#define NUMBER_OF_ARGUMENT_REGISTERS 4 -+ -+class GPRInfo { -+public: -+ typedef GPRReg RegisterType; -+ static const unsigned numberOfRegisters = 6; -+ -+ // Temporary registers. -+ static const GPRReg regT0 = MIPSRegisters::v0; -+ static const GPRReg regT1 = MIPSRegisters::v1; -+ static const GPRReg regT2 = MIPSRegisters::t4; -+ static const GPRReg regT3 = MIPSRegisters::t5; -+ static const GPRReg regT4 = MIPSRegisters::t6; -+ static const GPRReg regT5 = MIPSRegisters::t7; -+ // These registers match the baseline JIT. -+ static const GPRReg cachedResultRegister = regT0; -+ static const GPRReg cachedResultRegister2 = regT1; -+ static const GPRReg callFrameRegister = MIPSRegisters::s0; -+ // These constants provide the names for the general purpose argument & return value registers. -+ static const GPRReg argumentGPR0 = MIPSRegisters::a0; -+ static const GPRReg argumentGPR1 = MIPSRegisters::a1; -+ static const GPRReg argumentGPR2 = MIPSRegisters::a2; -+ static const GPRReg argumentGPR3 = MIPSRegisters::a3; -+ static const GPRReg nonArgGPR0 = regT2; -+ static const GPRReg nonArgGPR1 = regT3; -+ static const GPRReg nonArgGPR2 = regT4; -+ static const GPRReg returnValueGPR = regT0; -+ static const GPRReg returnValueGPR2 = regT1; -+ static const GPRReg nonPreservedNonReturnGPR = regT5; -+ -+ static GPRReg toRegister(unsigned index) -+ { -+ ASSERT(index < numberOfRegisters); -+ static const GPRReg registerForIndex[numberOfRegisters] = { regT0, regT1, regT2, regT3, regT4, regT5 }; -+ return registerForIndex[index]; -+ } -+ -+ static unsigned toIndex(GPRReg reg) -+ { -+ ASSERT(reg != InvalidGPRReg); -+ ASSERT(reg < 16); -+ static const unsigned indexForRegister[16] = { InvalidIndex, InvalidIndex, 0, 1, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, 2, 3, 4, 5 }; -+ unsigned result = indexForRegister[reg]; -+ ASSERT(result != InvalidIndex); -+ return result; -+ } -+ -+ static const char* debugName(GPRReg reg) -+ { -+ ASSERT(reg != InvalidGPRReg); -+ ASSERT(reg < 16); -+ static const char* nameForRegister[16] = { -+ "zero", "at", "v0", "v1", -+ "a0", "a1", "a2", "a3", -+ "t0", "t1", "t2", "t3", -+ "t4", "t5", "t6", "t7" -+ }; -+ return nameForRegister[reg]; -+ } -+private: -+ -+ static const unsigned InvalidIndex = 0xffffffff; -+}; -+ -+#endif -+ - typedef RegisterBank::iterator gpr_iterator; - - } } // namespace JSC::DFG -diff --git a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h -index ea33f38..247274b 100644 ---- a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h -+++ b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h -@@ -1241,7 +1241,7 @@ public: - - // EncodedJSValue in JSVALUE32_64 is a 64-bit integer. When being compiled in ARM EABI, it must be aligned even-numbered register (r0, r2 or [sp]). - // To avoid assemblies from using wrong registers, let's occupy r1 or r3 with a dummy argument when necessary. --#if COMPILER_SUPPORTS(EABI) && CPU(ARM) -+#if (COMPILER_SUPPORTS(EABI) && CPU(ARM)) || CPU(MIPS) - #define EABI_32BIT_DUMMY_ARG TrustedImm32(0), - #else - #define EABI_32BIT_DUMMY_ARG -@@ -1691,7 +1691,7 @@ public: - } - #endif - --#if !defined(NDEBUG) && !CPU(ARM) -+#if !defined(NDEBUG) && !CPU(ARM) && !CPU(MIPS) - void prepareForExternalCall() - { - // We're about to call out to a "native" helper function. The helper -diff --git a/Source/JavaScriptCore/jit/JSInterfaceJIT.h b/Source/JavaScriptCore/jit/JSInterfaceJIT.h -index 7fdeaf0..48ad6b2 100644 ---- a/Source/JavaScriptCore/jit/JSInterfaceJIT.h -+++ b/Source/JavaScriptCore/jit/JSInterfaceJIT.h -@@ -125,6 +125,10 @@ namespace JSC { - static const RegisterID cachedResultRegister = MIPSRegisters::v0; - static const RegisterID firstArgumentRegister = MIPSRegisters::a0; - -+#if ENABLE(VALUE_PROFILER) -+ static const RegisterID bucketCounterRegister = MIPSRegisters::s3; -+#endif -+ - // regT0 must be v0 for returning a 32-bit value. - static const RegisterID regT0 = MIPSRegisters::v0; - -diff --git a/Source/JavaScriptCore/runtime/JSGlobalData.h b/Source/JavaScriptCore/runtime/JSGlobalData.h -index 5d47ab9..c02f336 100644 ---- a/Source/JavaScriptCore/runtime/JSGlobalData.h -+++ b/Source/JavaScriptCore/runtime/JSGlobalData.h -@@ -141,14 +141,18 @@ namespace JSC { - return result; - } - -- static size_t allocationSize(size_t bufferSize) { return sizeof(size_t) + bufferSize; } -+ static size_t allocationSize(size_t bufferSize) { return sizeof(ScratchBuffer) + bufferSize; } - void setActiveLength(size_t activeLength) { m_activeLength = activeLength; } - size_t activeLength() const { return m_activeLength; }; - size_t* activeLengthPtr() { return &m_activeLength; }; - void* dataBuffer() { return m_buffer; } - - size_t m_activeLength; -+#if CPU(MIPS) && (defined WTF_MIPS_ARCH_REV && WTF_MIPS_ARCH_REV == 2) -+ void* m_buffer[0] __attribute__((aligned(8))); -+#else - void* m_buffer[0]; -+#endif - }; - #if COMPILER(MSVC) - #pragma warning(pop) -diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h -index 1698247..2d90359 100644 ---- a/Source/WTF/wtf/Platform.h -+++ b/Source/WTF/wtf/Platform.h -@@ -818,6 +818,10 @@ - #if CPU(ARM_TRADITIONAL) - #define ENABLE_DFG_JIT 1 - #endif -+/* Enable the DFG JIT on MIPS. */ -+#if CPU(MIPS) -+#define ENABLE_DFG_JIT 1 -+#endif - #endif - - /* If the jit is not available, enable the LLInt C Loop: */ --- -1.8.3.2 - diff --git a/package/webkit/0008-support-bison-3.0.patch b/package/webkit/0008-support-bison-3.0.patch deleted file mode 100644 index c081b207ee..0000000000 --- a/package/webkit/0008-support-bison-3.0.patch +++ /dev/null @@ -1,22 +0,0 @@ -ANGLE doesn't build with bison 3.0 - -Author: allan.jensen@digia.com -​https://bugs.webkit.org/show_bug.cgi?id=119798 -Reviewed by Antti Koivisto. -Make glslang.y compatible with bison 3.0, by using %lex-param -to set YYLEX_PARAM and getting rid of useless YYID macro. - -From upstream: http://trac.webkit.org/changeset/154109 -[Arnout: adapted to our older webkit version] -Signed-off-by: Arnout Vandecaeppelle (Essensium/Mind) ---- -Index: trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y -=================================================================== ---- trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y (revision 154108) -+++ trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y (revision 154109) -@@ -48,4 +48,5 @@ - %pure-parser - %parse-param {TParseContext* context} -+%lex-param {YYLEX_PARAM} - - %union { diff --git a/package/webkit/Config.in b/package/webkit/Config.in deleted file mode 100644 index c139f5212c..0000000000 --- a/package/webkit/Config.in +++ /dev/null @@ -1,53 +0,0 @@ -config BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS - bool - # ARM needs BLX, so v5t+ - default y if (BR2_arm || BR2_armeb) && !BR2_ARM_CPU_ARMV4 - default y if BR2_i386 || BR2_mips || BR2_mipsel || \ - BR2_sparc || BR2_x86_64 - depends on BR2_USE_MMU # libgail -> pango -> libglib2 - depends on BR2_DEPRECATED_SINCE_2015_08 - -# disabled on powerpc due to bug https://bugs.webkit.org/show_bug.cgi?id=113638 - -config BR2_PACKAGE_WEBKIT - bool "webkit" - depends on BR2_DEPRECATED_SINCE_2015_08 - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # enchant -> libglib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # enchant -> libglib2; icu - depends on BR2_PACKAGE_LIBGTK2 - depends on BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS - depends on !BR2_BINFMT_FLAT # icu - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz - 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_LIBCURL - select BR2_PACKAGE_LIBGAIL - select BR2_PACKAGE_LIBSECRET - select BR2_PACKAGE_LIBSOUP - select BR2_PACKAGE_LIBXML2 - select BR2_PACKAGE_LIBXSLT - select BR2_PACKAGE_SQLITE - select BR2_PACKAGE_WEBP - select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_HAS_LIBGL - select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_HAS_LIBGL - help - WebKit is an open source, standards compliant web browser engine. - - Note that WebKit does not build with a toolchain using the - old linuxthreads library. - - http://webkit.org/ - -comment "webkit needs libgtk2 and a toolchain w/ C++, wchar, threads" - depends on BR2_DEPRECATED_SINCE_2015_08 - depends on BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_PACKAGE_LIBGTK2 || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_USE_MMU diff --git a/package/webkit/webkit.mk b/package/webkit/webkit.mk deleted file mode 100644 index bbde7f4a26..0000000000 --- a/package/webkit/webkit.mk +++ /dev/null @@ -1,72 +0,0 @@ -################################################################################ -# -# webkit -# -################################################################################ - -WEBKIT_VERSION = 1.11.5 -WEBKIT_SITE = http://www.webkitgtk.org/releases -WEBKIT_SOURCE = webkitgtk-$(WEBKIT_VERSION).tar.xz -WEBKIT_INSTALL_STAGING = YES -WEBKIT_DEPENDENCIES = host-ruby host-flex host-bison host-gperf enchant harfbuzz \ - icu jpeg libcurl libgail libsecret libsoup libxml2 libxslt libgtk2 sqlite webp - -WEBKIT_DEPENDENCIES += \ - $(if $(BR_PACKAGE_XLIB_LIBXCOMPOSITE),xlib_libXcomposite) \ - $(if $(BR_PACKAGE_XLIB_LIBXDAMAGE),xlib_libXdamage) - -# webkit-disable-tests.patch changes configure.ac therefore autoreconf required -WEBKIT_AUTORECONF = YES -WEBKIT_AUTORECONF_OPTS = -I $(@D)/Source/autotools - -# parallel make install deadlocks with make 3.81 -WEBKIT_INSTALL_STAGING_OPTS = -j1 DESTDIR=$(STAGING_DIR) install -WEBKIT_INSTALL_TARGET_OPTS = -j1 DESTDIR=$(TARGET_DIR) install - -# Does not build and it's disabled by default -# in newer releases -define DISABLE_INDEXED_DATABASE - $(SED) '/ENABLE_INDEXED_DATABASE/s:1:0:' \ - $(@D)/Source/WebCore/GNUmakefile.features.am -endef - -WEBKIT_PRE_CONFIGURE_HOOKS += DISABLE_INDEXED_DATABASE - -# Give explicit path to icu-config, and silence gazillions of warnings -# with recent gcc versions. -WEBKIT_CONF_ENV = ac_cv_path_icu_config=$(STAGING_DIR)/usr/bin/icu-config \ - CFLAGS="$(TARGET_CFLAGS) -Wno-cast-align -Wno-sign-compare" \ - CXXFLAGS="$(TARGET_CXXFLAGS) -Wno-cast-align -Wno-sign-compare" \ - AR_FLAGS="cru" - -WEBKIT_CONF_OPTS += \ - --enable-dependency-tracking \ - --with-gtk=2.0 \ - --disable-geolocation \ - --disable-webkit2 \ - --disable-glibtest \ - --disable-video \ - --disable-tests - -# Xorg Dependencies -WEBKIT_CONF_OPTS += --with-target=x11 -WEBKIT_DEPENDENCIES += xlib_libXt - -ifeq ($(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGLES),yy) -WEBKIT_CONF_OPTS += --enable-gles2 -WEBKIT_DEPENDENCIES += libegl libgles -else -WEBKIT_CONF_OPTS += --disable-gles2 -endif - -# gles/egl support is prefered over opengl by webkit configure -ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) -WEBKIT_CONF_OPTS += --with-acceleration-backend=opengl -WEBKIT_DEPENDENCIES += libgl -else -# OpenGL/glx is auto-detected due to the presence of gl.h/glx.h, which is not -# enough, so disable glx and the use of the OpenGL acceleration backend here -WEBKIT_CONF_OPTS += --disable-glx --with-acceleration-backend=none -endif - -$(eval $(autotools-package)) diff --git a/package/webkitgtk/0001-fix-gcc6-builds.patch b/package/webkitgtk/0001-fix-gcc6-builds.patch new file mode 100644 index 0000000000..35487ad55a --- /dev/null +++ b/package/webkitgtk/0001-fix-gcc6-builds.patch @@ -0,0 +1,53 @@ +[CMake] Build failure with GCC 6 (fatal error: stdlib.h: No such file or directory) + +https://bugs.webkit.org/show_bug.cgi?id=161697 + +Reviewed by Michael Catanzaro. + +Get the list of system includes from GCC and add it to the CMake +list of implicit includes. This way, CMake will filter any of this +directories from the list of includes when calling the compiler. + +This avoids an issue with GCC 6 that causes build failures when +including the default include path as a system include (-isystem). + +Upstream, from: https://trac.webkit.org/changeset/205672 + +Signed-off-by: Gustavo Zacarias + +Index: trunk/Source/cmake/OptionsCommon.cmake +=================================================================== +--- trunk/Source/cmake/OptionsCommon.cmake (revision 204084) ++++ trunk/Source/cmake/OptionsCommon.cmake (revision 205672) +@@ -36,4 +36,31 @@ + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fcolor-diagnostics") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fcolor-diagnostics") ++endif () ++ ++# Ensure that the default include system directories are added to the list of CMake implicit includes. ++# This workarounds an issue that happens when using GCC 6 and using system includes (-isystem). ++# For more details check: https://bugs.webkit.org/show_bug.cgi?id=161697 ++macro(DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang _compiler _flags _result) ++ file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy" "\n") ++ separate_arguments(_buildFlags UNIX_COMMAND "${_flags}") ++ execute_process(COMMAND ${_compiler} ${_buildFlags} -v -E -x ${_lang} -dD dummy ++ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles OUTPUT_QUIET ++ ERROR_VARIABLE _gccOutput) ++ file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy") ++ if ("${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list") ++ set(${_result} ${CMAKE_MATCH_1}) ++ string(REPLACE "\n" " " ${_result} "${${_result}}") ++ separate_arguments(${_result}) ++ endif () ++endmacro() ++ ++if (CMAKE_COMPILER_IS_GNUCC) ++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c" "${CMAKE_C_COMPILER}" "${CMAKE_C_FLAGS}" SYSTEM_INCLUDE_DIRS) ++ set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS}) ++endif () ++ ++if (CMAKE_COMPILER_IS_GNUCXX) ++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c++" "${CMAKE_CXX_COMPILER}" "${CMAKE_CXX_FLAGS}" SYSTEM_INCLUDE_DIRS) ++ set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS}) + endif () + diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in index e662fed129..25f6fad49c 100644 --- a/package/webkitgtk/Config.in +++ b/package/webkitgtk/Config.in @@ -10,7 +10,7 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS depends on BR2_USE_MMU # libglib2 depends on BR2_TOOLCHAIN_HAS_SYNC_4 -comment "webkitgtk needs libgtk3 and an (e)glibc toolchain w/ C++, gcc >= 4.9" +comment "webkitgtk needs libgtk3 and a glibc toolchain w/ C++, gcc >= 4.9" depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_USES_GLIBC || \ diff --git a/package/webkitgtk/webkitgtk.hash b/package/webkitgtk/webkitgtk.hash index faccb3f945..f01c7f0c07 100644 --- a/package/webkitgtk/webkitgtk.hash +++ b/package/webkitgtk/webkitgtk.hash @@ -1,4 +1,4 @@ -# From http://www.webkitgtk.org/releases/webkitgtk-2.12.3.tar.xz.sha1 -sha1 d6a0d598c09d2d56ba0862f8d9206e89d75317cb webkitgtk-2.12.3.tar.xz +# From http://www.webkitgtk.org/releases/webkitgtk-2.12.5.tar.xz.sha1 +sha1 2d73fd5b47c68c73aea8b3d7b88acc8e62bdb99c webkitgtk-2.12.5.tar.xz # Calculated based on the hash above -sha256 173cbb9a2eca23eee52e99965483ab25aa9c0569ef5b57041fc0c129cc26c307 webkitgtk-2.12.3.tar.xz +sha256 6b147854b864a5f115fadb97b2b6200b2f696db015216a34e7298d11c88b1c40 webkitgtk-2.12.5.tar.xz diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk index 2479872c47..7843373995 100644 --- a/package/webkitgtk/webkitgtk.mk +++ b/package/webkitgtk/webkitgtk.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBKITGTK_VERSION = 2.12.3 +WEBKITGTK_VERSION = 2.12.5 WEBKITGTK_SITE = http://www.webkitgtk.org/releases WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz WEBKITGTK_INSTALL_STAGING = YES diff --git a/package/webkitgtk24/0001-fix-ppc32.patch b/package/webkitgtk24/0001-fix-ppc32.patch deleted file mode 100644 index c655a0ecf4..0000000000 --- a/package/webkitgtk24/0001-fix-ppc32.patch +++ /dev/null @@ -1,34 +0,0 @@ -From https://bugs.webkit.org/show_bug.cgi?id=130837 - -Signed-off-by: Gustavo Zacarias - -diff -Nura webkitgtk-2.4.8/Source/WebKit2/Platform/IPC/Connection.h webkitgtk-2.4.8-ppc/Source/WebKit2/Platform/IPC/Connection.h ---- webkitgtk-2.4.8/Source/WebKit2/Platform/IPC/Connection.h 2015-01-07 06:45:43.000000000 -0300 -+++ webkitgtk-2.4.8-ppc/Source/WebKit2/Platform/IPC/Connection.h 2015-04-20 01:55:41.554547510 -0300 -@@ -216,7 +216,11 @@ - - Client* m_client; - bool m_isServer; -+#if CPU(PPC) -+ uint64_t m_syncRequestID; -+#else - std::atomic m_syncRequestID; -+#endif - - bool m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage; - bool m_shouldExitOnSyncMessageSendFailure; -diff -Nura webkitgtk-2.4.8/Source/WebKit2/UIProcess/StatisticsRequest.cpp webkitgtk-2.4.8-ppc/Source/WebKit2/UIProcess/StatisticsRequest.cpp ---- webkitgtk-2.4.8/Source/WebKit2/UIProcess/StatisticsRequest.cpp 2015-01-07 06:45:43.000000000 -0300 -+++ webkitgtk-2.4.8-ppc/Source/WebKit2/UIProcess/StatisticsRequest.cpp 2015-04-20 01:55:41.555547544 -0300 -@@ -44,7 +44,11 @@ - - uint64_t StatisticsRequest::addOutstandingRequest() - { -+#if CPU(PPC) -+ static int64_t uniqueRequestID; -+#else - static std::atomic uniqueRequestID; -+#endif - - uint64_t requestID = ++uniqueRequestID; - m_outstandingRequests.add(requestID); diff --git a/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch b/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch deleted file mode 100644 index df51078b06..0000000000 --- a/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch +++ /dev/null @@ -1,36 +0,0 @@ -Pretty quotes in licence break Python stdin. - -This patch was submitted upstream in this bug report: - -https://bugs.webkit.org/show_bug.cgi?id=128971 - -[Vincent: tweak the patch to make it apply on Buildroot] - -Signed-off-by: Vicente Olivert Riera - -Pretty quotes in licence break Python stdin. - -https://bugs.webkit.org/show_bug.cgi?id=128971 - ---- a/Source/WebCore/xml/XMLViewer.css 2014-01-23 16:49:58.000000000 +0000 -+++ b/Source/WebCore/xml/XMLViewer.css -@@ -14,7 +14,7 @@ - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. AND ITS CONTRIBUTORS -- * “AS IS†AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE INC. - * OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ---- a/Source/WebCore/xml/XMLViewer.js 2014-01-23 16:49:58.000000000 +0000 -+++ b/Source/WebCore/xml/XMLViewer.js -@@ -15,7 +15,7 @@ - * distribution. - * - * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. AND ITS CONTRIBUTORS -- * “AS IS†AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE INC. - * OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, diff --git a/package/webkitgtk24/Config.in b/package/webkitgtk24/Config.in deleted file mode 100644 index bba3a2b9cc..0000000000 --- a/package/webkitgtk24/Config.in +++ /dev/null @@ -1,83 +0,0 @@ -config BR2_PACKAGE_WEBKITGTK24_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_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 - -comment "webkitgtk24 needs libgtk2 and a toolchain w/ C++, wchar, NPTL, gcc >=4.8" - depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_PACKAGE_LIBGTK2 || !BR2_PACKAGE_XORG7 || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP \ - || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 - depends on BR2_USE_MMU - depends on BR2_DEPRECATED_SINCE_2016_05 - -config BR2_PACKAGE_WEBKITGTK24 - bool "webkitgtk 2.4.x" - depends on BR2_DEPRECATED_SINCE_2016_05 - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 - depends on (BR2_PACKAGE_LIBGTK2 && BR2_PACKAGE_XORG7) - depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz - 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_LIBCURL - select BR2_PACKAGE_LIBSECRET - select BR2_PACKAGE_LIBSOUP - select BR2_PACKAGE_LIBXML2 - select BR2_PACKAGE_LIBXSLT - select BR2_PACKAGE_SQLITE - select BR2_PACKAGE_WEBP - select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_HAS_LIBGL || \ - (BR2_PACKAGE_HAS_LIBGLES && BR2_PACKAGE_HAS_LIBEGL) - select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_HAS_LIBGL || \ - (BR2_PACKAGE_HAS_LIBGLES && BR2_PACKAGE_HAS_LIBEGL) - help - WebKit is an open source, standards compliant web browser engine. - - http://www.webkitgtk.org/ - -if BR2_PACKAGE_WEBKITGTK24 - -config BR2_PACKAGE_WEBKITGTK24_HTTPS - bool "HTTPS support" - select BR2_PACKAGE_CA_CERTIFICATES # runtime - select BR2_PACKAGE_LIBSOUP_SSL - help - Enable HTTPS protocol support. - -config BR2_PACKAGE_WEBKITGTK24_MULTIMEDIA - bool "multimedia support" - select BR2_PACKAGE_GSTREAMER1 - 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_ISOMP4 - select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP - select BR2_PACKAGE_GST1_LIBAV - help - This option pulls in all of the required dependencies - to enable basic multimedia (video/audio) support. - -endif diff --git a/package/webkitgtk24/webkitgtk24.hash b/package/webkitgtk24/webkitgtk24.hash deleted file mode 100644 index d3a9cca0f4..0000000000 --- a/package/webkitgtk24/webkitgtk24.hash +++ /dev/null @@ -1,4 +0,0 @@ -# From http://www.webkitgtk.org/releases/webkitgtk-2.4.10.tar.xz.sha1 -sha1 7fe2fe07ed21d00d8a8483d68c13a8c7ff0ff320 webkitgtk-2.4.10.tar.xz -# Calculated based on the hash above -sha256 33fda4b20d7fec2d6e9399ba03ef3f6d2a733c628bd77d397880c44e4bf7c614 webkitgtk-2.4.10.tar.xz diff --git a/package/webkitgtk24/webkitgtk24.mk b/package/webkitgtk24/webkitgtk24.mk deleted file mode 100644 index 4b7d6949d4..0000000000 --- a/package/webkitgtk24/webkitgtk24.mk +++ /dev/null @@ -1,124 +0,0 @@ -################################################################################ -# -# webkitgtk 2.4.x -# -################################################################################ - -WEBKITGTK24_VERSION = 2.4.10 -WEBKITGTK24_SITE = http://www.webkitgtk.org/releases -WEBKITGTK24_SOURCE = webkitgtk-$(WEBKITGTK24_VERSION).tar.xz -WEBKITGTK24_INSTALL_STAGING = YES -WEBKITGTK24_LICENSE = LGPLv2+, BSD-2c -WEBKITGTK24_LICENSE_FILES = \ - Source/WebCore/LICENSE-APPLE \ - Source/WebCore/LICENSE-LGPL-2 -WEBKITGTK24_DEPENDENCIES = host-ruby host-flex host-bison host-gperf \ - host-pkgconf enchant harfbuzz icu jpeg libcurl libgtk2 \ - libsecret libsoup libxml2 libxslt sqlite webp - -WEBKITGTK24_DEPENDENCIES += \ - $(if $(BR_PACKAGE_XLIB_LIBXCOMPOSITE),xlib_libXcomposite) \ - $(if $(BR_PACKAGE_XLIB_LIBXDAMAGE),xlib_libXdamage) - -# make 3.81 loops into oblivion with numjobs > 1 -ifneq ($(findstring x3.81,x$(RUNNING_MAKE_VERSION)),) -WEBKITGTK24_MAKE = $(MAKE1) -endif - -# Give explicit path to icu-config to avoid host leakage -WEBKITGTK24_CONF_ENV = ac_cv_path_icu_config=$(STAGING_DIR)/usr/bin/icu-config - -# Some 32-bit architectures need libatomic support for 64-bit ops -ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) -WEBKITGTK24_CONF_ENV += LIBS="-latomic" -endif - -# dependency tracking is to avoid build issues in the GEN/WTF phase -WEBKITGTK24_CONF_OPTS = \ - --enable-dependency-tracking \ - --enable-spellcheck \ - --disable-geolocation \ - --disable-glibtest \ - --disable-gtk-doc-html \ - --disable-wayland-target - -ifeq ($(BR2_PACKAGE_WEBKITGTK24_MULTIMEDIA),y) -WEBKITGTK24_CONF_OPTS += \ - --enable-video \ - --enable-web-audio -WEBKITGTK24_DEPENDENCIES += gstreamer1 gst1-libav gst1-plugins-base gst1-plugins-good -else -WEBKITGTK24_CONF_OPTS += \ - --disable-video \ - --disable-web-audio -endif - -# OpenGL -ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) -WEBKITGTK24_CONF_OPTS += \ - --enable-accelerated-compositing \ - --enable-glx \ - --enable-webgl \ - --disable-gles2 -WEBKITGTK24_DEPENDENCIES += libgl -# EGL + GLES -else ifeq ($(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGLES),yy) -WEBKITGTK24_CONF_OPTS += \ - --enable-accelerated-compositing \ - --enable-gles2 \ - --enable-webgl \ - --disable-glx -WEBKITGTK24_DEPENDENCIES += libegl libgles -# Some EGL/GLES implementations needs extra help (eg. rpi-userland) -WEBKITGTK24_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) \ - `$(PKG_CONFIG_HOST_BINARY) --cflags egl` \ - `$(PKG_CONFIG_HOST_BINARY) --clfags glesv2`" -# No GL -else -WEBKITGTK24_CONF_OPTS += \ - --disable-accelerated-compositing \ - --disable-gles2 \ - --disable-glx \ - --disable-webgl -endif - -# X11 target with GTK2 (optionally GTK3) -ifeq ($(BR2_PACKAGE_XLIB_LIBXT),y) -WEBKITGTK24_CONF_OPTS += --enable-x11-target -WEBKITGTK24_DEPENDENCIES += xlib_libXt -else -WEBKITGTK24_CONF_OPTS += --disable-x11-target -endif - -# ARM needs NEON for JIT -# i386 & x86_64 don't seem to have any special requirements -ifeq ($(BR2_ARM_CPU_HAS_NEON)$(BR2_i386)$(BR2_x86_64),y) -WEBKITGTK24_CONF_OPTS += --enable-jit -else -WEBKITGTK24_CONF_OPTS += --disable-jit -# Disabling assembly and JIT needs an extra push sometimes (ppc) -# See https://bugs.webkit.org/show_bug.cgi?format=multiple&id=113638 -WEBKITGTK24_CONF_ENV += \ - CPPFLAGS="$(TARGET_CPPFLAGS) -DENABLE_JIT=0 -DENABLE_YARR_JIT=0 -DENABLE_ASSEMBLER=0" -endif - -# webkit1 (old API) uses gtk2, webkit2 (new API) uses gtk3 -# Both can be built simultaneously, prefer "newer" for size/time savings -# gtk2 is mandatory for plugin support -ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) -WEBKITGTK24_CONF_OPTS += \ - --with-gtk=3.0 \ - --disable-webkit1 -WEBKITGTK24_DEPENDENCIES += libgtk3 -define WEBKITGTK24_INSTALL_BROWSER - $(INSTALL) -D -m 0755 $(@D)/Programs/MiniBrowser \ - $(TARGET_DIR)/usr/bin/MiniBrowser -endef -WEBKITGTK24_POST_INSTALL_TARGET_HOOKS += WEBKITGTK24_INSTALL_BROWSER -else -WEBKITGTK24_CONF_OPTS += \ - --with-gtk=2.0 \ - --disable-webkit2 -endif - -$(eval $(autotools-package)) diff --git a/package/webp/Config.in b/package/webp/Config.in index e385b5ee4f..646eb9ef5a 100644 --- a/package/webp/Config.in +++ b/package/webp/Config.in @@ -5,3 +5,14 @@ config BR2_PACKAGE_WEBP 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. + +endif diff --git a/package/webp/webp.hash b/package/webp/webp.hash index 328f263e9c..bf4ee8fbf9 100644 --- a/package/webp/webp.hash +++ b/package/webp/webp.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 efbe0d58fda936f2ed99d0b837ed7087d064d6838931f282c4618d2a3f7390c4 libwebp-0.4.3.tar.gz +sha256 b75310c810b3eda222c77f6d6c26b061240e3d9060095de44b2c1bae291ecdef libwebp-0.5.2.tar.gz diff --git a/package/webp/webp.mk b/package/webp/webp.mk index 5f2cab7641..d579d56c5e 100644 --- a/package/webp/webp.mk +++ b/package/webp/webp.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBP_VERSION = 0.4.3 +WEBP_VERSION = 0.5.2 WEBP_SOURCE = libwebp-$(WEBP_VERSION).tar.gz WEBP_SITE = http://downloads.webmproject.org/releases/webp WEBP_LICENSE = BSD-3c @@ -17,6 +17,12 @@ WEBP_CONF_OPTS += \ --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_LIBPNG),y) WEBP_DEPENDENCIES += libpng WEBP_CONF_ENV += ac_cv_path_LIBPNG_CONFIG=$(STAGING_DIR)/usr/bin/libpng-config diff --git a/package/webrtc-audio-processing/0001-configure.ac-fix-architecture-detection.patch b/package/webrtc-audio-processing/0001-configure.ac-fix-architecture-detection.patch new file mode 100644 index 0000000000..d0ea4bd6bd --- /dev/null +++ b/package/webrtc-audio-processing/0001-configure.ac-fix-architecture-detection.patch @@ -0,0 +1,84 @@ +From 233413841882608c6d5b98b6ce89fcb8a292db82 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 6 Aug 2016 10:22:34 +0200 +Subject: [PATCH] configure.ac: fix architecture detection + +The current architecture detection, based on the "host_cpu" part of the +tuple does not work properly for a number of reason: + + - The code assumes that if host_cpu starts with "arm" then ARM + instructions are available, which is incorrect. Indeed, Cortex-M + platforms can run Linux, they are ARM platforms (so host_cpu = arm), + but they don't support ARM instructions: they support only the + Thumb-2 instruction set. + + - The armv7 case is also not very useful, as it is not standard at all + to pass armv7 as host_cpu even if the host system is actually ARMv7 + based. + + - For the same reason, the armv8 case is not very useful: armv8 is + never used as the host_cpu part of a tuple. + +So, this commit moves away from a host_cpu based logic, and instead +tests using AC_CHECK_DECLS() the built-in definitions of the compiler: + + - If we have __ARM_ARCH_ISA_ARM defined, then it's an ARM processor + that supports the ARM instruction set (this allows to exclude Thumb-2 + only processors). + + - If we have __ARM_ARCH_7A__, then we have an ARMv7-A processor, and + we can enable the corresponding optimizations + + - Same for __i386__ and __x86_64__. + +Signed-off-by: Thomas Petazzoni +--- +Submitted upstream, under a slightly different form so that it applies +on master: + + https://lists.freedesktop.org/archives/pulseaudio-discuss/2016-August/026600.html +--- + configure.ac | 27 +++++++++------------------ + 1 file changed, 9 insertions(+), 18 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 6f9553b..836c6ad 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -55,24 +55,15 @@ AS_CASE(["${host}"], + ) + AC_SUBST(PLATFORM_CFLAGS) + +-AS_CASE(["${host_cpu}"], +- [i?86|x86_64], +- [ +- HAVE_X86=1 +- ], +- [armv7*|armv8*], +- [ +- HAVE_ARM=1 +- HAVE_ARMV7=1 +- ARCH_CFLAGS="-DWEBRTC_ARCH_ARM -DWEBRTC_ARCH_ARM_V7" +- ], +- [arm*], +- [ +- HAVE_ARM=1 +- ARCH_CFLAGS="-DWEBRTC_ARCH_ARM" +- ] +- # FIXME: Add MIPS support, see webrtc/BUILD.gn for defines +-) ++# Testing __ARM_ARCH_ISA_ARM since the code contains ARM instructions, ++# which don't work on Thumb-2 only platforms (ARMv7-M). ++AC_CHECK_DECLS([__ARM_ARCH_ISA_ARM], ++ [HAVE_ARM=1; ARCH_CFLAGS="${ARCH_CFLAGS} -DWEBRTC_ARCH_ARM"]) ++AC_CHECK_DECLS([__ARM_ARCH_7A__], ++ [HAVE_ARMV7=1; ARCH_CFLAGS="${ARCH_CFLAGS} -DWEBRTC_ARCH_ARM_V7"]) ++AC_CHECK_DECLS([__i386__], [HAVE_X86=1]) ++AC_CHECK_DECLS([__x86_64__], [HAVE_X86=1]) ++ + AM_CONDITIONAL(HAVE_X86, [test "x${HAVE_X86}" = "x1"]) + AM_CONDITIONAL(HAVE_ARM, [test "x${HAVE_ARM}" = "x1"]) + AM_CONDITIONAL(HAVE_ARMV7, [test "x${HAVE_ARMV7}" = "x1"]) +-- +2.7.4 + diff --git a/package/webrtc-audio-processing/0002-Proper-detection-of-cxxabi.h-and-execinfo.h.patch b/package/webrtc-audio-processing/0002-Proper-detection-of-cxxabi.h-and-execinfo.h.patch new file mode 100644 index 0000000000..a0332db8e7 --- /dev/null +++ b/package/webrtc-audio-processing/0002-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 index f228bc7c18..02715b080a 100644 --- a/package/webrtc-audio-processing/Config.in +++ b/package/webrtc-audio-processing/Config.in @@ -1,14 +1,21 @@ +config BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING_ARCH_SUPPORTS + bool + default y if BR2_arm || BR2_i386 || BR2_x86_64 + config BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING bool "webrtc-audio-processing" - depends on BR2_arm || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING_ARCH_SUPPORTS depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS + 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++, threads" - depends on BR2_arm || BR2_i386 || BR2_x86_64 - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) +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 index afba5a9670..fe07119160 100644 --- a/package/webrtc-audio-processing/webrtc-audio-processing.hash +++ b/package/webrtc-audio-processing/webrtc-audio-processing.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 ed4b52f9c2688b97628035a5565377d74704d7c04de4254a768df3342c7afedc webrtc-audio-processing-0.1.tar.xz +sha256 756e291d4f557d88cd50c4fe3b8454ec238362d22cedb3e6173240d90f0a80fa webrtc-audio-processing-0.3.tar.xz diff --git a/package/webrtc-audio-processing/webrtc-audio-processing.mk b/package/webrtc-audio-processing/webrtc-audio-processing.mk index 92fcba9f6e..75e3c88374 100644 --- a/package/webrtc-audio-processing/webrtc-audio-processing.mk +++ b/package/webrtc-audio-processing/webrtc-audio-processing.mk @@ -4,12 +4,15 @@ # ################################################################################ -WEBRTC_AUDIO_PROCESSING_VERSION = 0.1 +WEBRTC_AUDIO_PROCESSING_VERSION = 0.3 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-3c WEBRTC_AUDIO_PROCESSING_LICENSE_FILES = COPYING +# 0001-configure.ac-fix-architecture-detection.patch +# 0002-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 diff --git a/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch b/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch deleted file mode 100644 index 2c8f54e505..0000000000 --- a/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 4c0a6ed01fb1aab578dc6ac29f11524a3883e14f Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 20 Apr 2016 13:16:58 -0300 -Subject: [PATCH] build: add check for clock_gettime() in librt - -In older versions of glibc (< 2.17) clock_gettime() is in librt, hence -linking against librt is required when using it. -Add a configure check for this and replace all instances of -lrt in -Makefile.am with $(CLOCK_GETTIME_LIBS). - -Signed-off-by: Gustavo Zacarias ---- -Status: submitted upstream - - Makefile.am | 15 ++++++++------- - configure.ac | 5 +++++ - 2 files changed, 13 insertions(+), 7 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index d3c3f71..c042c68 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -65,7 +65,7 @@ weston_LDFLAGS = -export-dynamic - weston_CPPFLAGS = $(AM_CPPFLAGS) -DIN_WESTON - weston_CFLAGS = $(AM_CFLAGS) $(COMPOSITOR_CFLAGS) $(LIBUNWIND_CFLAGS) - weston_LDADD = $(COMPOSITOR_LIBS) $(LIBUNWIND_LIBS) \ -- $(DLOPEN_LIBS) -lm -lrt libshared.la -+ $(DLOPEN_LIBS) -lm $(CLOCK_GETTIME_LIBS) libshared.la - - weston_SOURCES = \ - src/git-version.h \ -@@ -270,7 +270,8 @@ drm_backend_la_LIBADD = \ - $(COMPOSITOR_LIBS) \ - $(DRM_COMPOSITOR_LIBS) \ - $(INPUT_BACKEND_LIBS) \ -- libshared.la -lrt \ -+ libshared.la \ -+ $(CLOCK_GETTIME_LIBS) \ - libsession-helper.la - drm_backend_la_CFLAGS = \ - $(COMPOSITOR_CFLAGS) \ -@@ -508,11 +509,11 @@ nodist_weston_presentation_shm_SOURCES = \ - protocol/presentation-time-protocol.c \ - protocol/presentation-time-client-protocol.h - weston_presentation_shm_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS) --weston_presentation_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm -lrt -+weston_presentation_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm $(CLOCK_GETTIME_LIBS) - - weston_multi_resource_SOURCES = clients/multi-resource.c - weston_multi_resource_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS) --weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lrt -lm -+weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la $(CLOCK_GETTIME_LIBS) -lm - endif - - if BUILD_SIMPLE_EGL_CLIENTS -@@ -580,7 +581,7 @@ BUILT_SOURCES += $(nodist_libtoytoolkit_la_SOURCES) - libtoytoolkit_la_LIBADD = \ - $(CLIENT_LIBS) \ - $(CAIRO_EGL_LIBS) \ -- libshared-cairo.la -lrt -lm -+ libshared-cairo.la $(CLOCK_GETTIME_LIBS) -lm - libtoytoolkit_la_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS) $(CAIRO_EGL_CFLAGS) - - weston_flower_SOURCES = clients/flower.c -@@ -1181,7 +1182,7 @@ vertex_clip_test_SOURCES = \ - shared/helpers.h \ - src/vertex-clipping.c \ - src/vertex-clipping.h --vertex_clip_test_LDADD = libtest-runner.la -lm -lrt -+vertex_clip_test_LDADD = libtest-runner.la -lm $(CLOCK_GETTIME_LIBS) - - libtest_client_la_SOURCES = \ - tests/weston-test-client-helper.c \ -@@ -1269,7 +1270,7 @@ matrix_test_SOURCES = \ - shared/matrix.c \ - shared/matrix.h - matrix_test_CPPFLAGS = -DUNIT_TEST --matrix_test_LDADD = -lm -lrt -+matrix_test_LDADD = -lm $(CLOCK_GETTIME_LIBS) - - if ENABLE_IVI_SHELL - module_tests += \ -diff --git a/configure.ac b/configure.ac -index 447cf6b..670200c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -46,6 +46,11 @@ AC_CHECK_FUNC([dlopen], [], - AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl")) - AC_SUBST(DLOPEN_LIBS) - -+# In old glibc versions (< 2.17) clock_gettime() is in librt -+AC_SEARCH_LIBS([clock_gettime], [rt], -+ [CLOCK_GETTIME_LIBS="-lrt"]) -+AC_SUBST([CLOCK_GETTIME_LIBS]) -+ - AC_CHECK_DECL(SFD_CLOEXEC,[], - [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile weston")], - [[#include ]]) --- -2.7.3 - diff --git a/package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch b/package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch new file mode 100644 index 0000000000..baa3a4fc84 --- /dev/null +++ b/package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch @@ -0,0 +1,38 @@ +From e338ced1e04bf4b97322d5eed2b5bdf5b052095a Mon Sep 17 00:00:00 2001 +From: Krzysztof Konopko +Date: Thu, 15 Sep 2016 13:01:49 +0200 +Subject: [PATCH] shared/platform: include weston-egl-ext.h only if ENABLE_EGL + is defined + +Including `weston-egl-ext.h` causes compilation failure for configurations +with EGL disabled. + +Verified with `--disable-egl`, `--disable-x11-compositor` +and `--disable-drm-compositor`. + +Signed-off-by: Krzysztof Konopko +Reviewed-by: Pekka Paalanen +[yann.morin.1998@free.fr: backported from upstream] +Signed-off-by: "Yann E. MORIN" +--- + shared/platform.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/shared/platform.h b/shared/platform.h +index 1eb96fd..30db1a6 100644 +--- a/shared/platform.h ++++ b/shared/platform.h +@@ -33,9 +33,9 @@ + #include + #include + #include +-#endif + + #include "weston-egl-ext.h" ++#endif + + #ifdef __cplusplus + extern "C" { +-- +2.7.4 + diff --git a/package/weston/0003-configure-search-for-lib-with-clock_getres.patch b/package/weston/0003-configure-search-for-lib-with-clock_getres.patch new file mode 100644 index 0000000000..a8ad9eaa0b --- /dev/null +++ b/package/weston/0003-configure-search-for-lib-with-clock_getres.patch @@ -0,0 +1,47 @@ +From e269012c4b919624ca92d80afd1d6a6f5399e041 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Mon, 19 Dec 2016 18:07:07 +0100 +Subject: [PATCH] configure: search for lib with clock_getres() + +Like clock_gettime(), clock_getres() is in -lrt for glibc < 2.17. +Add a check for it, like is done for clock_gettime(). + +Signed-off-by: "Yann E. MORIN" +--- +Upstream status: submitted +https://lists.freedesktop.org/archives/wayland-devel/2016-December/032354.html +--- + Makefile.am | 1 + + configure.ac | 3 ++- + 2 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 2219e3d..53f8f51 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -190,6 +190,7 @@ weston_CFLAGS = $(AM_CFLAGS) $(COMPOSITOR_CFLAGS) $(LIBUNWIND_CFLAGS) + weston_LDADD = libshared.la libweston-@LIBWESTON_MAJOR@.la \ + $(COMPOSITOR_LIBS) $(LIBUNWIND_LIBS) \ + $(DLOPEN_LIBS) $(LIBINPUT_BACKEND_LIBS) \ ++ $(CLOCK_GETRES_LIBS) \ + -lm + + weston_SOURCES = \ +diff --git a/configure.ac b/configure.ac +index 1e251bf..604f51b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -88,8 +88,9 @@ PKG_PROG_PKG_CONFIG() + + WESTON_SEARCH_LIBS([DLOPEN], [dl], [dlopen]) + +-# In old glibc versions (< 2.17) clock_gettime() is in librt ++# In old glibc versions (< 2.17) clock_gettime() and clock_getres() are in librt + WESTON_SEARCH_LIBS([CLOCK_GETTIME], [rt], [clock_gettime]) ++WESTON_SEARCH_LIBS([CLOCK_GETRES], [rt], [clock_getres]) + + AC_CHECK_DECL(SFD_CLOEXEC,[], + [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile weston")], +-- +2.7.4 + diff --git a/package/weston/0004-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch b/package/weston/0004-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch new file mode 100644 index 0000000000..9012f5f31f --- /dev/null +++ b/package/weston/0004-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch @@ -0,0 +1,58 @@ +From c950667e87dc175bd2741a51460ebd3e29a57c92 Mon Sep 17 00:00:00 2001 +From: Vincent Abriou +Date: Wed, 5 Oct 2016 16:14:07 +0200 +Subject: [PATCH] libweston: include weston-egl-ext.h in drm, x11 and wayland + compositor + +As to what is done for gl-renderer.c, weston-egl-ext.h should be +include in compositor-drm.c, compositor-x11.c and compositor-wayland.c. +This fix building issue with GPU that does not have EGL_PLATFORM_xxx_KHR +in their extension header file eglext.h. + +Signed-off-by: Vincent Abriou +Reviewed-by: Daniel Stone +--- + libweston/compositor-drm.c | 1 + + libweston/compositor-wayland.c | 1 + + libweston/compositor-x11.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c +index 567240f..f61e3d9 100644 +--- a/libweston/compositor-drm.c ++++ b/libweston/compositor-drm.c +@@ -52,6 +52,7 @@ + #include "shared/helpers.h" + #include "shared/timespec-util.h" + #include "gl-renderer.h" ++#include "weston-egl-ext.h" + #include "pixman-renderer.h" + #include "libbacklight.h" + #include "libinput-seat.h" +diff --git a/libweston/compositor-wayland.c b/libweston/compositor-wayland.c +index 580c7b5..46fdde1 100644 +--- a/libweston/compositor-wayland.c ++++ b/libweston/compositor-wayland.c +@@ -44,6 +44,7 @@ + #include "compositor.h" + #include "compositor-wayland.h" + #include "gl-renderer.h" ++#include "weston-egl-ext.h" + #include "pixman-renderer.h" + #include "shared/helpers.h" + #include "shared/image-loader.h" +diff --git a/libweston/compositor-x11.c b/libweston/compositor-x11.c +index dadcd10..1c6de08 100644 +--- a/libweston/compositor-x11.c ++++ b/libweston/compositor-x11.c +@@ -56,6 +56,7 @@ + #include "shared/helpers.h" + #include "shared/image-loader.h" + #include "gl-renderer.h" ++#include "weston-egl-ext.h" + #include "pixman-renderer.h" + #include "presentation-time-server-protocol.h" + #include "linux-dmabuf.h" +-- +2.7.4 + diff --git a/package/weston/0005-libweston-fix-building-issue-when-EGL-support-is-not.patch b/package/weston/0005-libweston-fix-building-issue-when-EGL-support-is-not.patch new file mode 100644 index 0000000000..6a5b19263a --- /dev/null +++ b/package/weston/0005-libweston-fix-building-issue-when-EGL-support-is-not.patch @@ -0,0 +1,47 @@ +From 7327d5a7a29ad31af871e144ebe053cb1ab478f7 Mon Sep 17 00:00:00 2001 +From: Vincent Abriou +Date: Tue, 11 Oct 2016 13:47:03 +0200 +Subject: [PATCH] libweston: fix building issue when EGL support is not enabled + +weston-egl-ext.h has been include in compositor-xx.c file in order to +define EGL_PLATFORM_xxx_KHR extensions used by the compositors. +But in case EGL support is not enabled, all EGL related definition must +be skipped except EGL_PLATFORM_xxx_KHR that must be still defined to +allow compositor-xx.c to build. + +Signed-off-by: Vincent Abriou +Reviewed-by: Giulio Camuffo +--- + libweston/weston-egl-ext.h | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/libweston/weston-egl-ext.h b/libweston/weston-egl-ext.h +index 6e36996..70556fd 100644 +--- a/libweston/weston-egl-ext.h ++++ b/libweston/weston-egl-ext.h +@@ -28,6 +28,8 @@ + #ifndef WESTON_EGL_EXT_H + #define WESTON_EGL_EXT_H + ++#ifdef ENABLE_EGL ++ + #ifndef EGL_WL_bind_wayland_display + #define EGL_WL_bind_wayland_display 1 + +@@ -152,5 +154,13 @@ typedef EGLSurface (EGLAPIENTRYP PFNEGLCREATEPLATFORMPIXMAPSURFACEEXTPROC) (EGLD + #define EGL_PLATFORM_X11_KHR 0x31D5 + #endif + ++#else /* ENABLE_EGL */ ++ ++/* EGL platform definition are keept to allow compositor-xx.c to build */ ++#define EGL_PLATFORM_GBM_KHR 0x31D7 ++#define EGL_PLATFORM_WAYLAND_KHR 0x31D8 ++#define EGL_PLATFORM_X11_KHR 0x31D5 ++ ++#endif /* ENABLE_EGL */ + + #endif +-- +2.7.4 + diff --git a/package/weston/0006-tests-add-missing-include.patch b/package/weston/0006-tests-add-missing-include.patch new file mode 100644 index 0000000000..67dc3df258 --- /dev/null +++ b/package/weston/0006-tests-add-missing-include.patch @@ -0,0 +1,36 @@ +From 4c9e149d641a9945c3a8e15707b8712834f08c4f Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 22 Jan 2017 14:46:28 +0100 +Subject: [PATCH] tests: add missing include + +The int32_t type is defined in stdint.h. + +The musl C library is very conservative in the headers that it +internally includes, and stdint.h is not included by any other header, +unlike with glibc or uClibc, which breaks the build. + +Add the missing header. + +Signed-off-by: "Yann E. MORIN" +--- +Status: sent upstream + https://lists.freedesktop.org/archives/wayland-devel/2017-January/032771.html +--- + tests/string-test.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/string-test.c b/tests/string-test.c +index a72ec30..5571b52 100644 +--- a/tests/string-test.c ++++ b/tests/string-test.c +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + + #include "shared/string-helpers.h" +-- +2.7.4 + diff --git a/package/weston/Config.in b/package/weston/Config.in index 8cefa411b4..b4e198d8f0 100644 --- a/package/weston/Config.in +++ b/package/weston/Config.in @@ -53,9 +53,10 @@ config BR2_PACKAGE_WESTON_FBDEV # FreeRDP needs threads and !static, already the case for weston config BR2_PACKAGE_WESTON_RDP bool "RDP compositor" - depends on BR2_USE_WCHAR # freerdp 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 select BR2_PACKAGE_WESTON_HAS_COMPOSITOR help @@ -71,15 +72,36 @@ config BR2_PACKAGE_WESTON_RDP so you may want to change them in a post-build script or a rootfs overlay. -comment "RDP compositor needs a toolchain w/ wchar" - depends on BROKEN # needs FreeRDP master +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 + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP -# rpi-userland is an EGL/GLES provider, so we can't select it -config BR2_PACKAGE_WESTON_RPI - bool "RPi compositor" - depends on BR2_PACKAGE_RPI_USERLAND +config BR2_PACKAGE_WESTON_X11 + bool "X11 compositor" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_WESTON_HAS_COMPOSITOR +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" + help + This enables the installation of Weston's demo clients. + endif diff --git a/package/weston/weston.hash b/package/weston/weston.hash index ed174e6d56..c966864036 100644 --- a/package/weston/weston.hash +++ b/package/weston/weston.hash @@ -1,2 +1,2 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2016-February/027039.html -sha256 e0b2004d00d8293ddf7903ca283c1746afa9ccb5919ab50fd04397ff472aa5c1 weston-1.10.0.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2016-September/031123.html +sha256 ac7ac2a32e3b9f50131fccded5d2326bd36b2226712d90b61999118a09af5033 weston-1.12.0.tar.xz diff --git a/package/weston/weston.mk b/package/weston/weston.mk index 63c43a3231..9bd127c6d0 100644 --- a/package/weston/weston.mk +++ b/package/weston/weston.mk @@ -4,12 +4,12 @@ # ################################################################################ -WESTON_VERSION = 1.10.0 +WESTON_VERSION = 1.12.0 WESTON_SITE = http://wayland.freedesktop.org/releases WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz WESTON_LICENSE = MIT WESTON_LICENSE_FILES = COPYING -# For 0002-build-add-check-for-clock_gettime-in-librt.patch +# configure.ac patched by 0003-configure-search-for-lib-with-clock_getres.patch WESTON_AUTORECONF = YES WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ @@ -18,11 +18,9 @@ WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ WESTON_CONF_OPTS = \ --with-dtddir=$(STAGING_DIR)/usr/share/wayland \ - --disable-xwayland \ - --disable-x11-compositor \ - --disable-wayland-compositor \ --disable-headless-compositor \ --disable-colord \ + --disable-devdocs \ --disable-setuid-install WESTON_MAKE_OPTS = \ @@ -94,18 +92,25 @@ else WESTON_CONF_OPTS += --disable-drm-compositor endif -ifeq ($(BR2_PACKAGE_WESTON_RPI),y) -WESTON_DEPENDENCIES += rpi-userland -WESTON_CONF_OPTS += --enable-rpi-compositor \ - --disable-resize-optimization \ - WESTON_NATIVE_BACKEND=rpi-backend.so +ifeq ($(BR2_PACKAGE_WESTON_X11),y) +WESTON_CONF_OPTS += \ + --enable-x11-compositor \ + WESTON_NATIVE_BACKEND=x11-backend.so +WESTON_DEPENDENCIES += libxcb xlib_libX11 else -WESTON_CONF_OPTS += --disable-rpi-compositor -endif # BR2_PACKAGE_WESTON_RPI +WESTON_CONF_OPTS += --disable-x11-compositor +endif + +ifeq ($(BR2_PACKAGE_WESTON_XWAYLAND),y) +WESTON_CONF_OPTS += --enable-xwayland +WESTON_DEPENDENCIES += cairo libepoxy libxcb xlib_libX11 xlib_libXcursor +else +WESTON_CONF_OPTS += --disable-xwayland +endif ifeq ($(BR2_PACKAGE_LIBVA),y) WESTON_CONF_OPTS += --enable-vaapi-recorder -WESTON_DEPENDENIES += libva +WESTON_DEPENDENCIES += libva else WESTON_CONF_OPTS += --disable-vaapi-recorder endif @@ -131,4 +136,10 @@ else WESTON_CONF_OPTS += --disable-junit-xml endif +ifeq ($(BR2_PACKAGE_WESTON_DEMO_CLIENTS),y) +WESTON_CONF_OPTS += --enable-demo-clients-install +else +WESTON_CONF_OPTS += --disable-demo-clients-install +endif + $(eval $(autotools-package)) diff --git a/package/wf111/Config.in b/package/wf111/Config.in index d2ba440a90..cfce8b4c86 100644 --- a/package/wf111/Config.in +++ b/package/wf111/Config.in @@ -30,7 +30,7 @@ config BR2_PACKAGE_WF111_TARBALL_PATH endif -comment "wf111 needs an (e)glibc toolchain" +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.mk b/package/wf111/wf111.mk index e17e846fd8..ad9d89149d 100644 --- a/package/wf111/wf111.mk +++ b/package/wf111/wf111.mk @@ -25,7 +25,7 @@ endif # 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 - $(MAKE) -C $(@D) PWD=$(@D) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PWD=$(@D) \ $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \ OUTPUT=$(TARGET_DIR) install_static endef diff --git a/package/wget/0001-Fix-include-define-clash-with-gnulib-s-unlink-module.patch b/package/wget/0001-Fix-include-define-clash-with-gnulib-s-unlink-module.patch new file mode 100644 index 0000000000..03c0a619d9 --- /dev/null +++ b/package/wget/0001-Fix-include-define-clash-with-gnulib-s-unlink-module.patch @@ -0,0 +1,71 @@ +From 31ac36e170f4777655451fce10a2fa5b2b27ecd7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tim=20R=C3=BChsen?= +Date: Sat, 4 Feb 2017 18:02:54 +0100 +Subject: [PATCH] Fix include/define clash with gnulib's unlink module + +* src/options.h: Rename options.unlink to options.unlink_requested +* src/init.c: Replace options unlink member by unlink_requested +* src/http.c: Likewise +* src/ftp.c: Likewise +--- + src/ftp.c | 2 +- + src/http.c | 2 +- + src/init.c | 2 +- + src/options.h | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/ftp.c b/src/ftp.c +index fe09817..2f2866c 100644 +--- a/src/ftp.c ++++ b/src/ftp.c +@@ -1463,7 +1463,7 @@ Error in server response, closing control connection.\n")); + else if (opt.noclobber || opt.always_rest || opt.timestamping || opt.dirstruct + || opt.output_document || count > 0) + { +- if (opt.unlink && file_exists_p (con->target)) ++ if (opt.unlink_requested && file_exists_p (con->target)) + { + if (unlink (con->target) < 0) + { +diff --git a/src/http.c b/src/http.c +index bd1f115..3c3c8b2 100644 +--- a/src/http.c ++++ b/src/http.c +@@ -2486,7 +2486,7 @@ open_output_stream (struct http_stat *hs, int count, FILE **fp) + } + else if (ALLOW_CLOBBER || count > 0) + { +- if (opt.unlink && file_exists_p (hs->local_file)) ++ if (opt.unlink_requested && file_exists_p (hs->local_file)) + { + if (unlink (hs->local_file) < 0) + { +diff --git a/src/init.c b/src/init.c +index 271bc77..623ef9d 100644 +--- a/src/init.c ++++ b/src/init.c +@@ -321,7 +321,7 @@ static const struct { + { "timestamping", &opt.timestamping, cmd_boolean }, + { "tries", &opt.ntry, cmd_number_inf }, + { "trustservernames", &opt.trustservernames, cmd_boolean }, +- { "unlink", &opt.unlink, cmd_boolean }, ++ { "unlink", &opt.unlink_requested, cmd_boolean }, + { "useaskpass" , &opt.use_askpass, cmd_use_askpass }, + { "useproxy", &opt.use_proxy, cmd_boolean }, + { "user", &opt.user, cmd_string }, +diff --git a/src/options.h b/src/options.h +index d713acc..8a818ca 100644 +--- a/src/options.h ++++ b/src/options.h +@@ -61,7 +61,7 @@ struct options + bool add_hostdir; /* Do we add hostname directory? */ + bool protocol_directories; /* Whether to prepend "http"/"ftp" to dirs. */ + bool noclobber; /* Disables clobbering of existing data. */ +- bool unlink; /* remove file before clobbering */ ++ bool unlink_requested; /* remove file before clobbering */ + char *dir_prefix; /* The top of directory tree */ + char *lfilename; /* Log filename */ + char *input_filename; /* Input filename */ +-- +2.6.2 + diff --git a/package/wget/0002-Remove-skipping-libunistring-with-disable-iri.patch b/package/wget/0002-Remove-skipping-libunistring-with-disable-iri.patch new file mode 100644 index 0000000000..a1461df930 --- /dev/null +++ b/package/wget/0002-Remove-skipping-libunistring-with-disable-iri.patch @@ -0,0 +1,35 @@ +From 990f3d67d340d226bbd4187f5d310a4d2bf2bfe4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tim=20R=C3=BChsen?= +Date: Mon, 6 Feb 2017 11:25:48 +0100 +Subject: [PATCH] Remove skipping libunistring with --disable-iri + +* configure.ac: Remove checking for IRI=no + +On certain systems, gnulib falls back to libunistring +for mbtowc() and wcwidth() (used in src/progress.c). + +Reported-by: Zhiming Wang +Signed-off-by: Rahul Bedarkar +--- + configure.ac | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 8786e00..686f040 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -663,11 +663,6 @@ if test "X$iri" != "Xno"; then + # ]) + ]) + fi +-if test "X$iri" = "Xno"; then +- # we don't need libunistring - clear settings from gnulib module +- LIBUNISTRING="" +- LTLIBUNISTRING="" +-fi + + dnl + dnl Check for UUID +-- +2.6.2 + diff --git a/package/wget/Config.in b/package/wget/Config.in index 26a2019d47..acb20f8f09 100644 --- a/package/wget/Config.in +++ b/package/wget/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_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. @@ -11,3 +12,4 @@ config BR2_PACKAGE_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 index 159cd510f3..8611cfbfa8 100644 --- a/package/wget/wget.hash +++ b/package/wget/wget.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 fe559b61eb9cc01635ac6206a14e02cb51591838c35fa83c7a4aacae0bdd97c9 wget-1.17.1.tar.xz +sha256 0f1157bbf4daae19f3e1ddb70c6ccb2067feb834a6aa23c9d9daa7f048606384 wget-1.19.tar.xz diff --git a/package/wget/wget.mk b/package/wget/wget.mk index 2c6ccf2645..8698cdf3a7 100644 --- a/package/wget/wget.mk +++ b/package/wget/wget.mk @@ -4,39 +4,33 @@ # ################################################################################ -WGET_VERSION = 1.17.1 +WGET_VERSION = 1.19 WGET_SOURCE = wget-$(WGET_VERSION).tar.xz WGET_SITE = $(BR2_GNU_MIRROR)/wget WGET_DEPENDENCIES = host-pkgconf WGET_LICENSE = GPLv3+ WGET_LICENSE_FILES = COPYING +# For 0002-Remove-skipping-libunistring-with-disable-iri.patch +WGET_AUTORECONF = YES + # Prefer full-blown wget over busybox ifeq ($(BR2_PACKAGE_BUSYBOX),y) WGET_DEPENDENCIES += busybox endif ifeq ($(BR2_PACKAGE_GNUTLS),y) -WGET_CONF_OPTS += \ - --with-ssl=gnutls \ - --with-libgnutls-prefix=$(STAGING_DIR) +WGET_CONF_OPTS += --with-ssl=gnutls WGET_DEPENDENCIES += gnutls -endif - -ifeq ($(BR2_PACKAGE_OPENSSL),y) -WGET_CONF_OPTS += --with-ssl=openssl --with-libssl-prefix=$(STAGING_DIR) +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_UTIL_LINUX_LIBUUID),y) WGET_DEPENDENCIES += util-linux endif -# --with-ssl is default -ifneq ($(BR2_PACKAGE_GNUTLS),y) -ifneq ($(BR2_PACKAGE_OPENSSL),y) -WGET_CONF_OPTS += --without-ssl -endif -endif - $(eval $(autotools-package)) diff --git a/package/which/Config.in b/package/which/Config.in index 5811083fa5..db090ea87a 100644 --- a/package/which/Config.in +++ b/package/which/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_WHICH bool "which" + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS help The standard 'which' utility. diff --git a/package/whois/Config.in b/package/whois/Config.in index 95e3dc6101..0fbaf904d2 100644 --- a/package/whois/Config.in +++ b/package/whois/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_WHOIS bool "whois" depends on BR2_USE_WCHAR # gettext + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT help Improved whois client. @@ -9,3 +10,4 @@ config BR2_PACKAGE_WHOIS comment "whois needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS diff --git a/package/whois/whois.hash b/package/whois/whois.hash index 15a12f7817..6f65074c2c 100644 --- a/package/whois/whois.hash +++ b/package/whois/whois.hash @@ -1,2 +1,2 @@ -# From http://ftp.debian.org/debian/pool/main/w/whois/whois_5.2.12.dsc -sha256 b26d4027b8987d9911466aa06ce2c167a50017cd59a622a429bd506222f6cdf1 whois_5.2.12.tar.xz +# From http://ftp.debian.org/debian/pool/main/w/whois/whois_5.2.14.dsc +sha256 a41daf41abed0fbfa8c9c4b0e4a3f5f22d9876dd6feb9091aac12f8f4c38b0d2 whois_5.2.14.tar.xz diff --git a/package/whois/whois.mk b/package/whois/whois.mk index 423b214f47..29a18e3e1c 100644 --- a/package/whois/whois.mk +++ b/package/whois/whois.mk @@ -4,8 +4,8 @@ # ################################################################################ -WHOIS_VERSION = 5.2.12 -WHOIS_SITE = http://snapshot.debian.org/archive/debian/20160329T095754Z/pool/main/w/whois +WHOIS_VERSION = 5.2.14 +WHOIS_SITE = http://snapshot.debian.org/archive/debian/20161230T032015Z/pool/main/w/whois WHOIS_SOURCE = whois_$(WHOIS_VERSION).tar.xz # take precedence over busybox implementation WHOIS_DEPENDENCIES = host-gettext $(if $(BR2_PACKAGE_BUSYBOX),busybox) diff --git a/package/wine/Config.in b/package/wine/Config.in index d1510e11a1..c674288446 100644 --- a/package/wine/Config.in +++ b/package/wine/Config.in @@ -17,7 +17,7 @@ config BR2_PACKAGE_WINE http://www.winehq.org -comment "wine needs a (e)glibc toolchain" +comment "wine needs a glibc toolchain" depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_i386 depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/wine/wine.hash b/package/wine/wine.hash index b4eec49aa7..b4b67cd907 100644 --- a/package/wine/wine.hash +++ b/package/wine/wine.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 51624fadf0145e87f0c01e7ce8524ea1e8d9d360c3e8a86e78cd26a52ce55a6f wine-1.8.2.tar.bz2 +sha256 9756f5a2129b6a83ba701e546173cbff86caa671b0af73eb8f72c03b20c066c6 wine-2.0.tar.bz2 diff --git a/package/wine/wine.mk b/package/wine/wine.mk index 7587cb05a0..f9b2e1a3ff 100644 --- a/package/wine/wine.mk +++ b/package/wine/wine.mk @@ -4,9 +4,9 @@ # ################################################################################ -WINE_VERSION = 1.8.2 +WINE_VERSION = 2.0 WINE_SOURCE = wine-$(WINE_VERSION).tar.bz2 -WINE_SITE = https://dl.winehq.org/wine/source/1.8 +WINE_SITE = https://dl.winehq.org/wine/source/2.0 WINE_LICENSE = LGPLv2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_DEPENDENCIES = host-bison host-flex host-wine @@ -34,7 +34,7 @@ WINE_CONF_OPTS = \ # 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 $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))" +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) @@ -85,9 +85,9 @@ else WINE_CONF_OPTS += --without-gnutls endif -ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y) +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) WINE_CONF_OPTS += --with-gstreamer -WINE_DEPENDENCIES += gst-plugins-base +WINE_DEPENDENCIES += gst1-plugins-base else WINE_CONF_OPTS += --without-gstreamer endif @@ -221,6 +221,13 @@ 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 diff --git a/package/wireless-regdb/wireless-regdb.hash b/package/wireless-regdb/wireless-regdb.hash index 44b2e41393..b8ca2e75a3 100644 --- a/package/wireless-regdb/wireless-regdb.hash +++ b/package/wireless-regdb/wireless-regdb.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/wireless-regdb/sha256sums.asc -sha256 c9674c988a944105148091b74c05c6fa6bd9611b9bbab6b81abfb5e5387bc61e wireless-regdb-2016.05.02.tar.xz +sha256 cfedf1c3521b3c8f32602f25ed796e96e687c3441a00e7c050fedf7fd4f1b8b7 wireless-regdb-2016.06.10.tar.xz diff --git a/package/wireless-regdb/wireless-regdb.mk b/package/wireless-regdb/wireless-regdb.mk index 49bcb3250f..6ad42589e3 100644 --- a/package/wireless-regdb/wireless-regdb.mk +++ b/package/wireless-regdb/wireless-regdb.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRELESS_REGDB_VERSION = 2016.05.02 +WIRELESS_REGDB_VERSION = 2016.06.10 WIRELESS_REGDB_SOURCE = wireless-regdb-$(WIRELESS_REGDB_VERSION).tar.xz WIRELESS_REGDB_SITE = http://kernel.org/pub/software/network/wireless-regdb WIRELESS_REGDB_LICENSE = ISC diff --git a/package/wireless_tools/wireless_tools.mk b/package/wireless_tools/wireless_tools.mk index 5fb8f12e97..f4e0ffb440 100644 --- a/package/wireless_tools/wireless_tools.mk +++ b/package/wireless_tools/wireless_tools.mk @@ -15,26 +15,26 @@ 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 - $(MAKE) -C $(@D) PREFIX="$(STAGING_DIR)" LDCONFIG=/bin/true install-dynamic - $(MAKE) -C $(@D) PREFIX="$(STAGING_DIR)/usr" install-hdr + $(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 - $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ $(WIRELESS_TOOLS_BUILD_TARGETS) endef define WIRELESS_TOOLS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)" LDCONFIG=/bin/true $(WIRELESS_TOOLS_INSTALL_TARGETS) - $(MAKE) -C $(@D) INSTALL_MAN="$(TARGET_DIR)/usr/share/man" install-man + $(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/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch b/package/wireshark/0001-configure.ac-do-not-assume-broken-inet_pton-in-case-.patch similarity index 53% rename from package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch rename to package/wireshark/0001-configure.ac-do-not-assume-broken-inet_pton-in-case-.patch index 4d1f680a51..1e44ad0942 100644 --- a/package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch +++ b/package/wireshark/0001-configure.ac-do-not-assume-broken-inet_pton-in-case-.patch @@ -1,32 +1,35 @@ -From a0657feeb2b349ffda895a53e36ea5c992d871cf Mon Sep 17 00:00:00 2001 -From: Peter Seiderer -Date: Sat, 31 Oct 2015 22:38:48 +0100 -Subject: [PATCH] configure: do not assume broken inet_pton in case of cross +From 25d313275e87dc236e86c0e713cad08ea64253f8 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Thu, 8 Sep 2016 10:58:34 +0100 +Subject: [PATCH] configure.ac: do not assume broken inet_pton in case of cross compiling Patch configure.ac to not assume broken inet_pton in case of cross compiling. +[Vincent: adapt the patch for 2.2.0] + Signed-off-by: Peter Seiderer +Signed-off-by: Vicente Olivert Riera --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac -index aec0548..d640e0c 100644 +index c43e366..9672831 100644 --- a/configure.ac +++ b/configure.ac -@@ -2646,8 +2646,8 @@ int main() +@@ -2373,8 +2373,8 @@ int main() #endif }], [AC_MSG_RESULT(ok); have_inet_pton=yes], [AC_MSG_RESULT(broken); --have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken); +-have_inet_pton=no], [AC_MSG_RESULT([cross compiling, assume it is broken]); -have_inet_pton=no])], +have_inet_pton=no], [AC_MSG_RESULT([cross compiling, assume it is broken... not here]); +have_inet_pton=yes])], have_inet_pton=no) if test "$have_inet_pton" = no; then - INET_PTON_LO="inet_pton.lo" + AC_LIBOBJ(inet_pton) -- -2.1.4 +2.7.3 diff --git a/package/wireshark/0002-androiddump-add-missing-sys-time.h-header.patch b/package/wireshark/0002-androiddump-add-missing-sys-time.h-header.patch new file mode 100644 index 0000000000..ae1198018a --- /dev/null +++ b/package/wireshark/0002-androiddump-add-missing-sys-time.h-header.patch @@ -0,0 +1,35 @@ +From 1ab938e762ee6ebd3211c22ef25a7575e37791c4 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Thu, 29 Dec 2016 20:16:53 +0200 +Subject: [PATCH] androiddump: add missing sys/time.h header + +struct timeval requires sys/time.h. Fixes the following musl libc build error: + +androiddump.c: In function 'useSndTimeout': +androiddump.c:262:18: error: variable 'socket_timeout' has initializer but incomplete type + const struct timeval socket_timeout = { + ^ + +Change-Id: I52e204f32a012aabea2e54877e564576c072fe08 +Signed-off-by: Baruch Siach +--- +Upstream status: https://code.wireshark.org/review/19460 +--- + extcap/androiddump.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/extcap/androiddump.c b/extcap/androiddump.c +index 8287c4bb1a76..fab7c10e05cc 100644 +--- a/extcap/androiddump.c ++++ b/extcap/androiddump.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_NETINET_IN_H + # include +-- +2.11.0 + diff --git a/package/wireshark/Config.in b/package/wireshark/Config.in index defeb4b3e4..c5b5c3e3ae 100644 --- a/package/wireshark/Config.in +++ b/package/wireshark/Config.in @@ -8,7 +8,24 @@ config BR2_PACKAGE_WIRESHARK help Network traffic sniffer and protocol decoder. - http://www.wireshark.org + https://www.wireshark.org + +if BR2_PACKAGE_WIRESHARK + +config BR2_PACKAGE_WIRESHARK_QT + bool + default y + depends on BR2_PACKAGE_QT5BASE_WIDGETS + depends on BR2_PACKAGE_QT5TOOLS + select BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS + +config BR2_PACKAGE_WIRESHARK_GUI + bool + default y if BR2_PACKAGE_LIBGTK2 + default y if BR2_PACKAGE_LIBGTK3 + default y if BR2_PACKAGE_WIRESHARK_QT + +endif # BR2_PACKAGE_WIRESHARK comment "wireshark needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash index a9d4a29b9d..e3eeef334e 100644 --- a/package/wireshark/wireshark.hash +++ b/package/wireshark/wireshark.hash @@ -1,2 +1,2 @@ -# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.0.3.txt -sha256 e196376e75fe21fdef41b4eaa27ce2e1b2b561e7f7b20328a8e96657cc4465fc wireshark-2.0.3.tar.bz2 +# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.2.4.txt +sha256 42a7fb35eed5a32478153e24601a284bb50148b7ba919c3e8452652f4c2a3911 wireshark-2.2.4.tar.bz2 diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk index c7bf6c2939..edd830d80b 100644 --- a/package/wireshark/wireshark.mk +++ b/package/wireshark/wireshark.mk @@ -4,14 +4,14 @@ # ################################################################################ -WIRESHARK_VERSION = 2.0.3 +WIRESHARK_VERSION = 2.2.4 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.bz2 -WIRESHARK_SITE = http://www.wireshark.org/download/src/all-versions +WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions WIRESHARK_LICENSE = wireshark license WIRESHARK_LICENSE_FILES = COPYING WIRESHARK_DEPENDENCIES = host-pkgconf libpcap libglib2 WIRESHARK_CONF_ENV = \ - ac_cv_path_PCAP_CONFIG=$(STAGING_DIR)/usr/bin/pcap-config + PCAP_CONFIG=$(STAGING_DIR)/usr/bin/pcap-config # patch touching configure.ac WIRESHARK_AUTORECONF = YES @@ -20,7 +20,6 @@ WIRESHARK_AUTORECONF = YES # Work around it by pointing includedir at staging WIRESHARK_CONF_OPTS = \ --without-krb5 \ - --disable-usr-local \ --enable-static=no \ --with-libsmi=no \ --with-lua=no \ @@ -29,19 +28,20 @@ WIRESHARK_CONF_OPTS = \ # wireshark GUI options ifeq ($(BR2_PACKAGE_LIBGTK3),y) -WIRESHARK_CONF_OPTS += --with-gtk3=yes +WIRESHARK_CONF_OPTS += --with-gtk=3 WIRESHARK_DEPENDENCIES += libgtk3 else ifeq ($(BR2_PACKAGE_LIBGTK2),y) -WIRESHARK_CONF_OPTS += --with-gtk2=yes -WIRESHARK_DEPENDECIES += libgtk2 +WIRESHARK_CONF_OPTS += --with-gtk=2 +WIRESHARK_DEPENDENCIES += libgtk2 else -WIRESHARK_CONF_OPTS += --with-gtk3=no --with-gtk2=no +WIRESHARK_CONF_OPTS += --with-gtk=no endif # Qt4 needs accessibility, we don't support it -ifeq ($(BR2_PACKAGE_QT5BASE_WIDGETS),y) +ifeq ($(BR2_PACKAGE_WIRESHARK_QT),y) WIRESHARK_CONF_OPTS += --with-qt=5 -WIRESHARK_DEPENDENCIES += qt5base +WIRESHARK_DEPENDENCIES += qt5base qt5tools +WIRESHARK_CONF_ENV += ac_cv_path_QTCHOOSER="" # Seems it expects wrappers and passes a -qt=X parameter for version WIRESHARK_MAKE_OPTS += \ MOC="$(HOST_DIR)/usr/bin/moc" \ @@ -52,7 +52,7 @@ WIRESHARK_CONF_OPTS += --with-qt=no endif # No GUI at all -ifeq ($(BR2_PACKAGE_LIBGTK2)$(BR2_PACKAGE_LIBGTK3)$(BR2_PACKAGE_QT5BASE_WIDGETS),) +ifeq ($(BR2_PACKAGE_WIRESHARK_GUI),) WIRESHARK_CONF_OPTS += --disable-wireshark endif @@ -60,7 +60,7 @@ ifeq ($(BR2_PACKAGE_C_ARES),y) WIRESHARK_CONF_OPTS += --with-c-ares=$(STAGING_DIR)/usr WIRESHARK_DEPENDENCIES += c-ares else -WIREHARK_CONF_OPTS += --without-c-ares +WIRESHARK_CONF_OPTS += --without-c-ares endif ifeq ($(BR2_PACKAGE_GEOIP),y) @@ -78,7 +78,7 @@ WIRESHARK_CONF_OPTS += --with-gnutls=no endif ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) -WIRESHARK_CONF_ENV = LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +WIRESHARK_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config WIRESHARK_CONF_OPTS += --with-gcrypt=yes WIRESHARK_DEPENDENCIES += libgcrypt else @@ -99,4 +99,11 @@ else WIRESHARK_CONF_OPTS += --with-sbc=no 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 $(autotools-package)) diff --git a/package/wiringpi/0001-Adjust-for-buildroot-build.patch b/package/wiringpi/0001-Adjust-for-buildroot-build.patch new file mode 100644 index 0000000000..4add46e216 --- /dev/null +++ b/package/wiringpi/0001-Adjust-for-buildroot-build.patch @@ -0,0 +1,123 @@ +From a16012bf4ea63f714468d80ebe101481c917e4b8 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Wed, 2 Dec 2015 00:22:26 +0100 +Subject: [PATCH] Adjust for buildroot build. + + - enable CC override + - fix devLib/gpio include path for local build (without installing first) + - change CFLAGS from '=' to '+=' to honour buildroot given flags + - add linker name link for libwiringPiDev and libwiringPi for local linking + (without installing first) + - fix install linker name link (do not link with absolute path) + - add gpio-static linking target + +Signed-off-by: Peter Seiderer +--- + devLib/Makefile | 9 +++++---- + gpio/Makefile | 12 ++++++++---- + wiringPi/Makefile | 7 ++++--- + 3 files changed, 17 insertions(+), 11 deletions(-) + +diff --git a/devLib/Makefile b/devLib/Makefile +index 0fb0033..3117479 100644 +--- a/devLib/Makefile ++++ b/devLib/Makefile +@@ -36,10 +36,10 @@ DYNAMIC=libwiringPiDev.so.$(VERSION) + + #DEBUG = -g -O0 + DEBUG = -O2 +-CC = gcc +-INCLUDE = -I. ++CC ?= gcc ++INCLUDE = -I../wiringPi + DEFS = -D_GNU_SOURCE +-CFLAGS = $(DEBUG) $(DEFS) -Wformat=2 -Wall -Winline $(INCLUDE) -pipe -fPIC ++CFLAGS += $(DEBUG) $(DEFS) -Wformat=2 -Wall -Winline $(INCLUDE) -pipe -fPIC + + LIBS = + +@@ -67,6 +67,7 @@ $(STATIC): $(OBJ) + $(DYNAMIC): $(OBJ) + $Q echo "[Link (Dynamic)]" + $Q $(CC) -shared -Wl,-soname,libwiringPiDev.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPiDev.so.$(VERSION) -lpthread $(OBJ) ++ $Q ln -sf libwiringPiDev.so.$(VERSION) libwiringPiDev.so + + .c.o: + $Q echo [Compile] $< +@@ -91,7 +92,7 @@ install: $(DYNAMIC) + $Q echo "[Install Dynamic Lib]" + $Q install -m 0755 -d $(DESTDIR)$(PREFIX)/lib + $Q install -m 0755 libwiringPiDev.so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/libwiringPiDev.so.$(VERSION) +- $Q ln -sf $(DESTDIR)$(PREFIX)/lib/libwiringPiDev.so.$(VERSION) $(DESTDIR)/lib/libwiringPiDev.so ++ $Q ln -sf libwiringPiDev.so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/libwiringPiDev.so + $Q $(LDCONFIG) + + .PHONY: install-static +diff --git a/gpio/Makefile b/gpio/Makefile +index 7dcd090..e8e43f9 100644 +--- a/gpio/Makefile ++++ b/gpio/Makefile +@@ -32,11 +32,11 @@ endif + + #DEBUG = -g -O0 + DEBUG = -O2 +-CC = gcc +-INCLUDE = -I$(DESTDIR)$(PREFIX)/include +-CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe ++CC ?= gcc ++INCLUDE = -I../wiringPi -I../devLib ++CFLAGS += $(DEBUG) -Wall $(INCLUDE) -Winline -pipe + +-LDFLAGS = -L$(DESTDIR)$(PREFIX)/lib ++LDFLAGS = -L../wiringPi -L../devLib + LIBS = -lwiringPi -lwiringPiDev -lpthread + + # May not need to alter anything below this line +@@ -55,6 +55,10 @@ gpio: $(OBJ) + $Q echo [Link] + $Q $(CC) -o $@ $(OBJ) $(LDFLAGS) $(LIBS) + ++gpio-static: $(OBJ) ++ $Q echo [Link] ++ $Q $(CC) -o gpio $(OBJ) ../wiringPi/libwiringPi.a ../devLib/libwiringPiDev.a -lpthread ++ + .c.o: + $Q echo [Compile] $< + $Q $(CC) -c $(CFLAGS) $< -o $@ +diff --git a/wiringPi/Makefile b/wiringPi/Makefile +index 6bbcc5d..e0ccc52 100644 +--- a/wiringPi/Makefile ++++ b/wiringPi/Makefile +@@ -36,10 +36,10 @@ DYNAMIC=libwiringPi.so.$(VERSION) + + #DEBUG = -g -O0 + DEBUG = -O2 +-CC = gcc ++CC ?= gcc + INCLUDE = -I. + DEFS = -D_GNU_SOURCE +-CFLAGS = $(DEBUG) $(DEFS) -Wformat=2 -Wall -Winline $(INCLUDE) -pipe -fPIC ++CFLAGS += $(DEBUG) $(DEFS) -Wformat=2 -Wall -Winline $(INCLUDE) -pipe -fPIC + + LIBS = + +@@ -90,6 +90,7 @@ $(STATIC): $(OBJ) + $(DYNAMIC): $(OBJ) + $Q echo "[Link (Dynamic)]" + $Q $(CC) -shared -Wl,-soname,libwiringPi.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPi.so.$(VERSION) -lpthread $(OBJ) ++ $Q ln -sf libwiringPi.so.$(VERSION) libwiringPi.so + + .c.o: + $Q echo [Compile] $< +@@ -115,7 +116,7 @@ install: $(DYNAMIC) + $Q echo "[Install Dynamic Lib]" + $Q install -m 0755 -d $(DESTDIR)$(PREFIX)/lib + $Q install -m 0755 libwiringPi.so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/libwiringPi.so.$(VERSION) +- $Q ln -sf $(DESTDIR)$(PREFIX)/lib/libwiringPi.so.$(VERSION) $(DESTDIR)/lib/libwiringPi.so ++ $Q ln -sf libwiringPi.so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/libwiringPi.so + $Q $(LDCONFIG) + + .PHONY: install-static +-- +2.1.4 + diff --git a/package/wiringpi/0002-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch b/package/wiringpi/0002-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch new file mode 100644 index 0000000000..6480e3c444 --- /dev/null +++ b/package/wiringpi/0002-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch @@ -0,0 +1,60 @@ +From 7f65eb37a82a6d9b095d9c8f262ad9dd205acd03 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 30 Jan 2016 16:57:38 -0800 +Subject: [PATCH] include directly for _IOC_SIZEBITS + +Fixes errors like +| wiringPiSPI.c: In function 'wiringPiSPIDataRW': +| wiringPiSPI.c:89:35: error: '_IOC_SIZEBITS' undeclared (first use in +this function) + +Signed-off-by: Khem Raj +[Patch from https://raw.githubusercontent.com/agherzan/meta-raspberrypi/master/recipes-devtools/wiringPi/wiringpi/0001-include-asm-ioctl.h-directly-for-_IOC_SIZEBITS.patch] +Signed-off-by: Peter Seiderere +--- +Upstream-Status: Submitted + + wiringPi/wiringPi.c | 1 + + wiringPi/wiringPiI2C.c | 1 + + wiringPi/wiringPiSPI.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/wiringPi/wiringPi.c b/wiringPi/wiringPi.c +index 32e5100..cb5db9d 100644 +--- a/wiringPi/wiringPi.c ++++ b/wiringPi/wiringPi.c +@@ -64,6 +64,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/wiringPi/wiringPiI2C.c b/wiringPi/wiringPiI2C.c +index c787bce..efdf53c 100644 +--- a/wiringPi/wiringPiI2C.c ++++ b/wiringPi/wiringPiI2C.c +@@ -52,6 +52,7 @@ + #include + #include + #include ++#include + + #include "wiringPi.h" + #include "wiringPiI2C.h" +diff --git a/wiringPi/wiringPiSPI.c b/wiringPi/wiringPiSPI.c +index 453df31..ae3c7d9 100644 +--- a/wiringPi/wiringPiSPI.c ++++ b/wiringPi/wiringPiSPI.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include + +-- +2.7.0 + diff --git a/package/wiringpi/Config.in b/package/wiringpi/Config.in new file mode 100644 index 0000000000..2062a6208e --- /dev/null +++ b/package/wiringpi/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_WIRINGPI + bool "wiringpi" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + help + wiringPi libraries (and gpio command) + + http://wiringpi.com/ + +comment "wiringpi needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wiringpi/wiringpi.hash b/package/wiringpi/wiringpi.hash new file mode 100644 index 0000000000..abddaf9b27 --- /dev/null +++ b/package/wiringpi/wiringpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 0775e3bfa2df2131746c75d611ad354e5c884661be0d9de9fd786fc96f6ad918 wiringPi-2.32.tar.gz diff --git a/package/wiringpi/wiringpi.mk b/package/wiringpi/wiringpi.mk new file mode 100644 index 0000000000..ce0819dace --- /dev/null +++ b/package/wiringpi/wiringpi.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# wiringpi +# +################################################################################ + +WIRINGPI_VERSION = 2.32 +WIRINGPI_SITE = git://git.drogon.net/wiringPi + +WIRINGPI_LICENSE = LGPLv3+ +WIRINGPI_LICENSE_FILES = COPYING.LESSER +WIRINGPI_INSTALL_STAGING = YES + +ifeq ($(BR2_STATIC_LIBS),y) +WIRINGPI_LIB_BUILD_TARGETS = static +WIRINGPI_LIB_INSTALL_TARGETS = install-static +WIRINGPI_BIN_BUILD_TARGETS = gpio-static +else ifeq ($(BR2_SHARED_LIBS),y) +WIRINGPI_LIB_BUILD_TARGETS = all +WIRINGPI_LIB_INSTALL_TARGETS = install +WIRINGPI_BIN_BUILD_TARGETS = all +else +WIRINGPI_LIB_BUILD_TARGETS = all static +WIRINGPI_LIB_INSTALL_TARGETS = install install-static +WIRINGPI_BIN_BUILD_TARGETS = all +endif + +define WIRINGPI_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/wiringPi $(WIRINGPI_LIB_BUILD_TARGETS) + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/devLib $(WIRINGPI_LIB_BUILD_TARGETS) + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/gpio $(WIRINGPI_BIN_BUILD_TARGETS) +endef + +define WIRINGPI_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/wiringPi $(WIRINGPI_LIB_INSTALL_TARGETS) DESTDIR=$(STAGING_DIR) PREFIX=/usr LDCONFIG=true + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/devLib $(WIRINGPI_LIB_INSTALL_TARGETS) DESTDIR=$(STAGING_DIR) PREFIX=/usr LDCONFIG=true +endef + +define WIRINGPI_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/wiringPi $(WIRINGPI_LIB_INSTALL_TARGETS) DESTDIR=$(TARGET_DIR) PREFIX=/usr LDCONFIG=true + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/devLib $(WIRINGPI_LIB_INSTALL_TARGETS) DESTDIR=$(TARGET_DIR) PREFIX=/usr LDCONFIG=true + $(INSTALL) -D -m 0755 $(@D)/gpio/gpio $(TARGET_DIR)/usr/bin/gpio + $(INSTALL) -D -m 0755 $(@D)/gpio/pintest $(TARGET_DIR)/usr/bin/pintest +endef + +$(eval $(generic-package)) diff --git a/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch b/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch deleted file mode 100644 index 2a9b832797..0000000000 --- a/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 631f0893038743cebd2def39df61aceb48bd43a9 -Author: David du Colombier <0intro@gmail.com> -Date: Sun Sep 13 23:40:43 2015 +0200 - - wpa_supplicant: fix static link with readline - - The readline library depends on ncurses, so - it should be set before ncurses on the linker - command line to be able to be statically linked - successfully. - - Signed-off-by: David du Colombier <0intro@gmail.com> - -diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile -index 1597412..581db02 100644 ---- a/wpa_supplicant/Makefile -+++ b/wpa_supplicant/Makefile -@@ -1408,7 +1408,7 @@ LIBS += $(DBUS_LIBS) - - ifdef CONFIG_READLINE - OBJS_c += ../src/utils/edit_readline.o --LIBS_c += -lncurses -lreadline -+LIBS_c += -lreadline -lncurses - else - ifdef CONFIG_WPA_CLI_EDIT - OBJS_c += ../src/utils/edit.o diff --git a/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch b/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch deleted file mode 100644 index 00e5b7c771..0000000000 --- a/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 6b12d93d2c7428a34bfd4b3813ba339ed57b698a Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 25 Oct 2015 15:45:50 +0200 -Subject: [PATCH] WNM: Ignore Key Data in WNM Sleep Mode Response frame if no - PMF in use - -WNM Sleep Mode Response frame is used to update GTK/IGTK only if PMF is -enabled. Verify that PMF is in use before using this field on station -side to avoid accepting unauthenticated key updates. (CVE-2015-5310) - -Signed-off-by: Jouni Malinen ---- - wpa_supplicant/wnm_sta.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c -index 954de67..7d79499 100644 ---- a/wpa_supplicant/wnm_sta.c -+++ b/wpa_supplicant/wnm_sta.c -@@ -187,6 +187,12 @@ static void wnm_sleep_mode_exit_success(struct wpa_supplicant *wpa_s, - end = ptr + key_len_total; - wpa_hexdump_key(MSG_DEBUG, "WNM: Key Data", ptr, key_len_total); - -+ if (key_len_total && !wpa_sm_pmf_enabled(wpa_s->wpa)) { -+ wpa_msg(wpa_s, MSG_INFO, -+ "WNM: Ignore Key Data in WNM-Sleep Mode Response - PMF not enabled"); -+ return; -+ } -+ - while (ptr + 1 < end) { - if (ptr + 2 + ptr[1] > end) { - wpa_printf(MSG_DEBUG, "WNM: Invalid Key Data element " diff --git a/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch b/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch deleted file mode 100644 index 82c26398b6..0000000000 --- a/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 8057821706784608b828e769ccefbced95591e50 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 1 Nov 2015 18:18:17 +0200 -Subject: [PATCH] EAP-pwd peer: Fix last fragment length validation - -All but the last fragment had their length checked against the remaining -room in the reassembly buffer. This allowed a suitably constructed last -fragment frame to try to add extra data that would go beyond the buffer. -The length validation code in wpabuf_put_data() prevents an actual -buffer write overflow from occurring, but this results in process -termination. (CVE-2015-5315) - -Signed-off-by: Jouni Malinen ---- - src/eap_peer/eap_pwd.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c -index 1f78544..75ceef1 100644 ---- a/src/eap_peer/eap_pwd.c -+++ b/src/eap_peer/eap_pwd.c -@@ -903,7 +903,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - /* - * buffer and ACK the fragment - */ -- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { -+ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { - data->in_frag_pos += len; - if (data->in_frag_pos > wpabuf_size(data->inbuf)) { - wpa_printf(MSG_INFO, "EAP-pwd: Buffer overflow attack " -@@ -916,7 +916,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - return NULL; - } - wpabuf_put_data(data->inbuf, pos, len); -- -+ } -+ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { - resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, - EAP_PWD_HDR_SIZE, - EAP_CODE_RESPONSE, eap_get_id(reqData)); -@@ -930,10 +931,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - * we're buffering and this is the last fragment - */ - if (data->in_frag_pos) { -- wpabuf_put_data(data->inbuf, pos, len); - wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", - (int) len); -- data->in_frag_pos += len; - pos = wpabuf_head_u8(data->inbuf); - len = data->in_frag_pos; - } --- -1.9.1 - diff --git a/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch b/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch deleted file mode 100644 index bfc4c74e95..0000000000 --- a/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch +++ /dev/null @@ -1,51 +0,0 @@ -From bef802ece03f9ae9d52a21f0cf4f1bc2c5a1f8aa Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 1 Nov 2015 18:24:16 +0200 -Subject: [PATCH] EAP-pwd server: Fix last fragment length validation - -All but the last fragment had their length checked against the remaining -room in the reassembly buffer. This allowed a suitably constructed last -fragment frame to try to add extra data that would go beyond the buffer. -The length validation code in wpabuf_put_data() prevents an actual -buffer write overflow from occurring, but this results in process -termination. (CVE-2015-5314) - -Signed-off-by: Jouni Malinen ---- - src/eap_server/eap_server_pwd.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c -index cb83ff7..9f787ab 100644 ---- a/src/eap_server/eap_server_pwd.c -+++ b/src/eap_server/eap_server_pwd.c -@@ -970,7 +970,7 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - /* - * the first and all intermediate fragments have the M bit set - */ -- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { -+ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { - if ((data->in_frag_pos + len) > wpabuf_size(data->inbuf)) { - wpa_printf(MSG_DEBUG, "EAP-pwd: Buffer overflow " - "attack detected! (%d+%d > %d)", -@@ -981,6 +981,8 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - } - wpabuf_put_data(data->inbuf, pos, len); - data->in_frag_pos += len; -+ } -+ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { - wpa_printf(MSG_DEBUG, "EAP-pwd: Got a %d byte fragment", - (int) len); - return; -@@ -990,8 +992,6 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - * buffering fragments so that's how we know it's the last) - */ - if (data->in_frag_pos) { -- wpabuf_put_data(data->inbuf, pos, len); -- data->in_frag_pos += len; - pos = wpabuf_head_u8(data->inbuf); - len = data->in_frag_pos; - wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", --- -1.9.1 - diff --git a/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch b/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch deleted file mode 100644 index 3088f6a6dc..0000000000 --- a/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 95577884ca4fa76be91344ff7a8d5d1e6dc3da61 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Sun, 1 Nov 2015 19:35:44 +0200 -Subject: [PATCH] EAP-pwd peer: Fix error path for unexpected Confirm message - -If the Confirm message is received from the server before the Identity -exchange has been completed, the group has not yet been determined and -data->grp is NULL. The error path in eap_pwd_perform_confirm_exchange() -did not take this corner case into account and could end up -dereferencing a NULL pointer and terminating the process if invalid -message sequence is received. (CVE-2015-5316) - -Signed-off-by: Jouni Malinen ---- - src/eap_peer/eap_pwd.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c -index 75ceef1..892b590 100644 ---- a/src/eap_peer/eap_pwd.c -+++ b/src/eap_peer/eap_pwd.c -@@ -774,7 +774,8 @@ eap_pwd_perform_confirm_exchange(struct eap_sm *sm, struct eap_pwd_data *data, - wpabuf_put_data(data->outbuf, conf, SHA256_MAC_LEN); - - fin: -- bin_clear_free(cruft, BN_num_bytes(data->grp->prime)); -+ if (data->grp) -+ bin_clear_free(cruft, BN_num_bytes(data->grp->prime)); - BN_clear_free(x); - BN_clear_free(y); - if (data->outbuf == NULL) { --- -1.9.1 - diff --git a/package/wpa_supplicant/0006-fix-libwpa_client.patch b/package/wpa_supplicant/0006-fix-libwpa_client.patch deleted file mode 100644 index 11c5402374..0000000000 --- a/package/wpa_supplicant/0006-fix-libwpa_client.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 6f7e0354a9035ce33742a5f869f817a6b39b2f31 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Thu, 29 Oct 2015 11:39:03 +0100 -Subject: [PATCH 1/1] wpa_supplicant/Makefile: fix libwpa_client -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Building libwpa_client requires src/utils/common.c for bin_clear_free() else -loading the library fails with: - - Error relocating /usr/lib/libwpa_client.so: bin_clear_free: symbol not found - -Backported from: 736b7cb2daf877a0cb9ad42ff15a2efbbd65fa42 - -Signed-off-by: Jörg Krause ---- - wpa_supplicant/Makefile | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile -index 61f8f18..0c444b0 100644 ---- a/wpa_supplicant/Makefile -+++ b/wpa_supplicant/Makefile -@@ -1706,9 +1706,11 @@ wpa_cli: $(OBJS_c) - - LIBCTRL += ../src/common/wpa_ctrl.o - LIBCTRL += ../src/utils/os_$(CONFIG_OS).o -+LIBCTRL += ../src/utils/common.c - LIBCTRL += ../src/utils/wpa_debug.o - LIBCTRLSO += ../src/common/wpa_ctrl.c - LIBCTRLSO += ../src/utils/os_$(CONFIG_OS).c -+LIBCTRLSO += ../src/utils/common.c - LIBCTRLSO += ../src/utils/wpa_debug.c - - libwpa_client.a: $(LIBCTRL) --- -2.6.2 - diff --git a/package/wpa_supplicant/0007-systemd-Update-service-files-according-to-dbus-inter.patch b/package/wpa_supplicant/0007-systemd-Update-service-files-according-to-dbus-inter.patch deleted file mode 100644 index 59c54506eb..0000000000 --- a/package/wpa_supplicant/0007-systemd-Update-service-files-according-to-dbus-inter.patch +++ /dev/null @@ -1,77 +0,0 @@ -From b6cea24d6191d9ccdcd1ac38a5322e3da73218db Mon Sep 17 00:00:00 2001 -From: Marcin Niestroj -Date: Mon, 11 Apr 2016 13:23:54 +0200 -Subject: [PATCH] systemd: Update service files according to dbus interface - version used - -systemd service files were supplied with old DBus bus name. After -service activation systemd was waiting for appearance of specified bus -name to consider it started successfully. However, if wpa_supplicant was -compiled only with new dbus interface name, then systemd didn't notice -configured (old) DBus bus name appearance. In the end service was -considered malfunctioning and it was deactivated. - -Update systemd service BusName property according to supported DBus -interface version. - -Signed-off-by: Marcin Niestroj ---- - wpa_supplicant/Makefile | 8 ++++++-- - wpa_supplicant/systemd/wpa_supplicant.service.in | 4 ++-- - 2 files changed, 8 insertions(+), 4 deletions(-) - -diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile -index ad9ead9..fbd1b25 100644 ---- a/wpa_supplicant/Makefile -+++ b/wpa_supplicant/Makefile -@@ -1374,6 +1374,7 @@ ifndef DBUS_INCLUDE - DBUS_INCLUDE := $(shell $(PKG_CONFIG) --cflags dbus-1) - endif - DBUS_CFLAGS += $(DBUS_INCLUDE) -+DBUS_INTERFACE=fi.epitest.hostap.WPASupplicant - endif - - ifdef CONFIG_CTRL_IFACE_DBUS_NEW -@@ -1399,6 +1400,7 @@ DBUS_OBJS += dbus/dbus_new_introspect.o - DBUS_CFLAGS += -DCONFIG_CTRL_IFACE_DBUS_INTRO - endif - DBUS_CFLAGS += $(DBUS_INCLUDE) -+DBUS_INTERFACE=fi.w1.wpa_supplicant1 - endif - - ifdef DBUS -@@ -1760,11 +1762,13 @@ else - endif - - %.service: %.service.in -- $(Q)sed -e 's|\@BINDIR\@|$(BINDIR)|g' $< >$@ -+ $(Q)sed -e 's|\@BINDIR\@|$(BINDIR)|g' \ -+ -e 's|\@DBUS_INTERFACE\@|$(DBUS_INTERFACE)|g' $< >$@ - @$(E) " sed" $< - - %@.service: %.service.arg.in -- $(Q)sed -e 's|\@BINDIR\@|$(BINDIR)|g' $< >$@ -+ $(Q)sed -e 's|\@BINDIR\@|$(BINDIR)|g' \ -+ -e 's|\@DBUS_INTERFACE\@|$(DBUS_INTERFACE)|g' $< >$@ - @$(E) " sed" $< - - wpa_supplicant.exe: wpa_supplicant -diff --git a/wpa_supplicant/systemd/wpa_supplicant.service.in b/wpa_supplicant/systemd/wpa_supplicant.service.in -index ea964ce..bc5d49a 100644 ---- a/wpa_supplicant/systemd/wpa_supplicant.service.in -+++ b/wpa_supplicant/systemd/wpa_supplicant.service.in -@@ -5,9 +5,9 @@ Wants=network.target - - [Service] - Type=dbus --BusName=fi.epitest.hostap.WPASupplicant -+BusName=@DBUS_INTERFACE@ - ExecStart=@BINDIR@/wpa_supplicant -u - - [Install] - WantedBy=multi-user.target --Alias=dbus-fi.epitest.hostap.WPASupplicant.service -+Alias=dbus-@DBUS_INTERFACE@.service --- -2.8.0 - diff --git a/package/wpa_supplicant/0008-WPS-Reject-a-Credential-with-invalid-passphrase.patch b/package/wpa_supplicant/0008-WPS-Reject-a-Credential-with-invalid-passphrase.patch deleted file mode 100644 index 282aa952b5..0000000000 --- a/package/wpa_supplicant/0008-WPS-Reject-a-Credential-with-invalid-passphrase.patch +++ /dev/null @@ -1,85 +0,0 @@ -From ecbb0b3dc122b0d290987cf9c84010bbe53e1022 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Fri, 4 Mar 2016 17:20:18 +0200 -Subject: [PATCH] WPS: Reject a Credential with invalid passphrase - -WPA/WPA2-Personal passphrase is not allowed to include control -characters. Reject a Credential received from a WPS Registrar both as -STA (Credential) and AP (AP Settings) if the credential is for WPAPSK or -WPA2PSK authentication type and includes an invalid passphrase. - -This fixes an issue where hostapd or wpa_supplicant could have updated -the configuration file PSK/passphrase parameter with arbitrary data from -an external device (Registrar) that may not be fully trusted. Should -such data include a newline character, the resulting configuration file -could become invalid and fail to be parsed. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- -Patch status: upstream (ecbb0b3dc122b0d290987cf9c84010bbe53e1022) - - src/utils/common.c | 12 ++++++++++++ - src/utils/common.h | 1 + - src/wps/wps_attr_process.c | 10 ++++++++++ - 3 files changed, 23 insertions(+) - -diff --git a/src/utils/common.c b/src/utils/common.c -index 450e2c6519ba..27b7c02de10b 100644 ---- a/src/utils/common.c -+++ b/src/utils/common.c -@@ -697,6 +697,18 @@ int is_hex(const u8 *data, size_t len) - } - - -+int has_ctrl_char(const u8 *data, size_t len) -+{ -+ size_t i; -+ -+ for (i = 0; i < len; i++) { -+ if (data[i] < 32 || data[i] == 127) -+ return 1; -+ } -+ return 0; -+} -+ -+ - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len) -diff --git a/src/utils/common.h b/src/utils/common.h -index 701dbb236ed5..a97224070385 100644 ---- a/src/utils/common.h -+++ b/src/utils/common.h -@@ -488,6 +488,7 @@ const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len); - - char * wpa_config_parse_string(const char *value, size_t *len); - int is_hex(const u8 *data, size_t len); -+int has_ctrl_char(const u8 *data, size_t len); - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len); -diff --git a/src/wps/wps_attr_process.c b/src/wps/wps_attr_process.c -index eadb22fe2e78..e8c4579309ab 100644 ---- a/src/wps/wps_attr_process.c -+++ b/src/wps/wps_attr_process.c -@@ -229,6 +229,16 @@ static int wps_workaround_cred_key(struct wps_credential *cred) - cred->key_len--; - #endif /* CONFIG_WPS_STRICT */ - } -+ -+ -+ if (cred->auth_type & (WPS_AUTH_WPAPSK | WPS_AUTH_WPA2PSK) && -+ (cred->key_len < 8 || has_ctrl_char(cred->key, cred->key_len))) { -+ wpa_printf(MSG_INFO, "WPS: Reject credential with invalid WPA/WPA2-Personal passphrase"); -+ wpa_hexdump_ascii_key(MSG_INFO, "WPS: Network Key", -+ cred->key, cred->key_len); -+ return -1; -+ } -+ - return 0; - } - --- -2.8.1 - diff --git a/package/wpa_supplicant/0009-Reject-psk-parameter-set-with-invalid-passphrase-cha.patch b/package/wpa_supplicant/0009-Reject-psk-parameter-set-with-invalid-passphrase-cha.patch deleted file mode 100644 index 316c0700ce..0000000000 --- a/package/wpa_supplicant/0009-Reject-psk-parameter-set-with-invalid-passphrase-cha.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 73e4abb24a936014727924d8b0b2965edfc117dd Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Fri, 4 Mar 2016 18:46:41 +0200 -Subject: [PATCH] Reject psk parameter set with invalid passphrase character - -WPA/WPA2-Personal passphrase is not allowed to include control -characters. Reject a passphrase configuration attempt if that passphrase -includes an invalid passphrase. - -This fixes an issue where wpa_supplicant could have updated the -configuration file psk parameter with arbitrary data from the control -interface or D-Bus interface. While those interfaces are supposed to be -accessible only for trusted users/applications, it may be possible that -an untrusted user has access to a management software component that -does not validate the passphrase value before passing it to -wpa_supplicant. - -This could allow such an untrusted user to inject up to 63 characters of -almost arbitrary data into the configuration file. Such configuration -file could result in wpa_supplicant trying to load a library (e.g., -opensc_engine_path, pkcs11_engine_path, pkcs11_module_path, -load_dynamic_eap) from user controlled location when starting again. -This would allow code from that library to be executed under the -wpa_supplicant process privileges. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- -Patch status: upstream (73e4abb24a936014727924d8b0b2965edfc117dd) - - wpa_supplicant/config.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c -index b1c7870dafe0..fdd964356afa 100644 ---- a/wpa_supplicant/config.c -+++ b/wpa_supplicant/config.c -@@ -478,6 +478,12 @@ static int wpa_config_parse_psk(const struct parse_data *data, - } - wpa_hexdump_ascii_key(MSG_MSGDUMP, "PSK (ASCII passphrase)", - (u8 *) value, len); -+ if (has_ctrl_char((u8 *) value, len)) { -+ wpa_printf(MSG_ERROR, -+ "Line %d: Invalid passphrase character", -+ line); -+ return -1; -+ } - if (ssid->passphrase && os_strlen(ssid->passphrase) == len && - os_memcmp(ssid->passphrase, value, len) == 0) { - /* No change to the previously configured value */ --- -2.8.1 - diff --git a/package/wpa_supplicant/0010-Remove-newlines-from-wpa_supplicant-config-network-o.patch b/package/wpa_supplicant/0010-Remove-newlines-from-wpa_supplicant-config-network-o.patch deleted file mode 100644 index 8a40dcecfe..0000000000 --- a/package/wpa_supplicant/0010-Remove-newlines-from-wpa_supplicant-config-network-o.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 0fe5a234240a108b294a87174ad197f6b5cb38e9 Mon Sep 17 00:00:00 2001 -From: Paul Stewart -Date: Thu, 3 Mar 2016 15:40:19 -0800 -Subject: [PATCH] Remove newlines from wpa_supplicant config network output - -Spurious newlines output while writing the config file can corrupt the -wpa_supplicant configuration. Avoid writing these for the network block -parameters. This is a generic filter that cover cases that may not have -been explicitly addressed with a more specific commit to avoid control -characters in the psk parameter. - -Signed-off-by: Paul Stewart -Signed-off-by: Baruch Siach ---- -Patch status: upstream (0fe5a234240a108b294a87174ad197f6b5cb38e9) - - src/utils/common.c | 11 +++++++++++ - src/utils/common.h | 1 + - wpa_supplicant/config.c | 15 +++++++++++++-- - 3 files changed, 25 insertions(+), 2 deletions(-) - -diff --git a/src/utils/common.c b/src/utils/common.c -index 27b7c02de10b..9856463242c7 100644 ---- a/src/utils/common.c -+++ b/src/utils/common.c -@@ -709,6 +709,17 @@ int has_ctrl_char(const u8 *data, size_t len) - } - - -+int has_newline(const char *str) -+{ -+ while (*str) { -+ if (*str == '\n' || *str == '\r') -+ return 1; -+ str++; -+ } -+ return 0; -+} -+ -+ - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len) -diff --git a/src/utils/common.h b/src/utils/common.h -index a97224070385..d19927b375bf 100644 ---- a/src/utils/common.h -+++ b/src/utils/common.h -@@ -489,6 +489,7 @@ const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len); - char * wpa_config_parse_string(const char *value, size_t *len); - int is_hex(const u8 *data, size_t len); - int has_ctrl_char(const u8 *data, size_t len); -+int has_newline(const char *str); - size_t merge_byte_arrays(u8 *res, size_t res_len, - const u8 *src1, size_t src1_len, - const u8 *src2, size_t src2_len); -diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c -index fdd964356afa..eb97cd5e4e6e 100644 ---- a/wpa_supplicant/config.c -+++ b/wpa_supplicant/config.c -@@ -2699,8 +2699,19 @@ char * wpa_config_get(struct wpa_ssid *ssid, const char *var) - - for (i = 0; i < NUM_SSID_FIELDS; i++) { - const struct parse_data *field = &ssid_fields[i]; -- if (os_strcmp(var, field->name) == 0) -- return field->writer(field, ssid); -+ if (os_strcmp(var, field->name) == 0) { -+ char *ret = field->writer(field, ssid); -+ -+ if (ret && has_newline(ret)) { -+ wpa_printf(MSG_ERROR, -+ "Found newline in value for %s; not returning it", -+ var); -+ os_free(ret); -+ ret = NULL; -+ } -+ -+ return ret; -+ } - } - - return NULL; --- -2.8.1 - diff --git a/package/wpa_supplicant/0011-Reject-SET_CRED-commands-with-newline-characters-in-.patch b/package/wpa_supplicant/0011-Reject-SET_CRED-commands-with-newline-characters-in-.patch deleted file mode 100644 index 530681faa4..0000000000 --- a/package/wpa_supplicant/0011-Reject-SET_CRED-commands-with-newline-characters-in-.patch +++ /dev/null @@ -1,65 +0,0 @@ -From b166cd84a77a6717be9600bf95378a0055d6f5a5 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Tue, 5 Apr 2016 23:33:10 +0300 -Subject: [PATCH] Reject SET_CRED commands with newline characters in the - string values - -Most of the cred block parameters are written as strings without -filtering and if there is an embedded newline character in the value, -unexpected configuration file data might be written. - -This fixes an issue where wpa_supplicant could have updated the -configuration file cred parameter with arbitrary data from the control -interface or D-Bus interface. While those interfaces are supposed to be -accessible only for trusted users/applications, it may be possible that -an untrusted user has access to a management software component that -does not validate the credential value before passing it to -wpa_supplicant. - -This could allow such an untrusted user to inject almost arbitrary data -into the configuration file. Such configuration file could result in -wpa_supplicant trying to load a library (e.g., opensc_engine_path, -pkcs11_engine_path, pkcs11_module_path, load_dynamic_eap) from user -controlled location when starting again. This would allow code from that -library to be executed under the wpa_supplicant process privileges. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- -Patch status: upstream (b166cd84a77a6717be9600bf95378a0055d6f5a5) - - wpa_supplicant/config.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c -index eb97cd5e4e6e..69152efdea1a 100644 ---- a/wpa_supplicant/config.c -+++ b/wpa_supplicant/config.c -@@ -2896,6 +2896,8 @@ int wpa_config_set_cred(struct wpa_cred *cred, const char *var, - - if (os_strcmp(var, "password") == 0 && - os_strncmp(value, "ext:", 4) == 0) { -+ if (has_newline(value)) -+ return -1; - str_clear_free(cred->password); - cred->password = os_strdup(value); - cred->ext_password = 1; -@@ -2946,9 +2948,14 @@ int wpa_config_set_cred(struct wpa_cred *cred, const char *var, - } - - val = wpa_config_parse_string(value, &len); -- if (val == NULL) { -+ if (val == NULL || -+ (os_strcmp(var, "excluded_ssid") != 0 && -+ os_strcmp(var, "roaming_consortium") != 0 && -+ os_strcmp(var, "required_roaming_consortium") != 0 && -+ has_newline(val))) { - wpa_printf(MSG_ERROR, "Line %d: invalid field '%s' string " - "value '%s'.", line, var, value); -+ os_free(val); - return -1; - } - --- -2.8.1 - diff --git a/package/wpa_supplicant/0012-Reject-SET-commands-with-newline-characters-in-the-s.patch b/package/wpa_supplicant/0012-Reject-SET-commands-with-newline-characters-in-the-s.patch deleted file mode 100644 index a29df07912..0000000000 --- a/package/wpa_supplicant/0012-Reject-SET-commands-with-newline-characters-in-the-s.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 2a3f56502b52375c3bf113cf92adfa99bad6b488 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Tue, 5 Apr 2016 23:55:48 +0300 -Subject: [PATCH] Reject SET commands with newline characters in the string - values - -Many of the global configuration parameters are written as strings -without filtering and if there is an embedded newline character in the -value, unexpected configuration file data might be written. - -This fixes an issue where wpa_supplicant could have updated the -configuration file global parameter with arbitrary data from the control -interface or D-Bus interface. While those interfaces are supposed to be -accessible only for trusted users/applications, it may be possible that -an untrusted user has access to a management software component that -does not validate the value of a parameter before passing it to -wpa_supplicant. - -This could allow such an untrusted user to inject almost arbitrary data -into the configuration file. Such configuration file could result in -wpa_supplicant trying to load a library (e.g., opensc_engine_path, -pkcs11_engine_path, pkcs11_module_path, load_dynamic_eap) from user -controlled location when starting again. This would allow code from that -library to be executed under the wpa_supplicant process privileges. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- -Patch status: upstream (2a3f56502b52375c3bf113cf92adfa99bad6b488) - - wpa_supplicant/config.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/wpa_supplicant/config.c b/wpa_supplicant/config.c -index 69152efdea1a..d9a1603f6d7e 100644 ---- a/wpa_supplicant/config.c -+++ b/wpa_supplicant/config.c -@@ -3764,6 +3764,12 @@ static int wpa_global_config_parse_str(const struct global_parse_data *data, - return -1; - } - -+ if (has_newline(pos)) { -+ wpa_printf(MSG_ERROR, "Line %d: invalid %s value with newline", -+ line, data->name); -+ return -1; -+ } -+ - tmp = os_strdup(pos); - if (tmp == NULL) - return -1; --- -2.8.1 - diff --git a/package/wpa_supplicant/Config.in b/package/wpa_supplicant/Config.in index f4c4167be5..9250a3b200 100644 --- a/package/wpa_supplicant/Config.in +++ b/package/wpa_supplicant/Config.in @@ -31,6 +31,7 @@ comment "nl80211 support needs a toolchain w/ 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. @@ -38,6 +39,24 @@ config BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT 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 + 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 diff --git a/package/wpa_supplicant/wpa_supplicant.hash b/package/wpa_supplicant/wpa_supplicant.hash index 19e43598f2..22b2e8ddd8 100644 --- a/package/wpa_supplicant/wpa_supplicant.hash +++ b/package/wpa_supplicant/wpa_supplicant.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 cce55bae483b364eae55c35ba567c279be442ed8bab5b80a3c7fb0d057b9b316 wpa_supplicant-2.5.tar.gz +sha256 b4936d34c4e6cdd44954beba74296d964bc2c9668ecaa5255e499636fe2b1450 wpa_supplicant-2.6.tar.gz diff --git a/package/wpa_supplicant/wpa_supplicant.mk b/package/wpa_supplicant/wpa_supplicant.mk index ba1180d4b6..9c8414b568 100644 --- a/package/wpa_supplicant/wpa_supplicant.mk +++ b/package/wpa_supplicant/wpa_supplicant.mk @@ -4,7 +4,7 @@ # ################################################################################ -WPA_SUPPLICANT_VERSION = 2.5 +WPA_SUPPLICANT_VERSION = 2.6 WPA_SUPPLICANT_SITE = http://hostap.epitest.fi/releases WPA_SUPPLICANT_LICENSE = BSD-3c WPA_SUPPLICANT_LICENSE_FILES = README @@ -20,14 +20,16 @@ WPA_SUPPLICANT_INSTALL_STAGING = YES WPA_SUPPLICANT_CONFIG_EDITS = -WPA_SUPPLICANT_CONFIG_SET = +# 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_DEBUG_FILE \ + CONFIG_MATCH_IFACE WPA_SUPPLICANT_CONFIG_DISABLE = \ CONFIG_SMARTCARD @@ -67,6 +69,21 @@ WPA_SUPPLICANT_CONFIG_ENABLE += \ CONFIG_P2P endif +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WIFI_DISPLAY),y) +WPA_SUPPLICANT_CONFIG_ENABLE += 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 diff --git a/package/wvdial/0001-uClibc-scandir.patch b/package/wvdial/0001-uClibc-scandir.patch deleted file mode 100644 index b611e94a0b..0000000000 --- a/package/wvdial/0001-uClibc-scandir.patch +++ /dev/null @@ -1,23 +0,0 @@ -Fix wvdial so that it works with scandir as defined in uClibc. - -Signed-off-by: Simon Dawson - -diff -Nurp a/wvmodemscan.cc b/wvmodemscan.cc ---- a/wvmodemscan.cc 2009-09-29 18:27:28.000000000 +0100 -+++ b/wvmodemscan.cc 2012-07-28 14:03:56.359729660 +0100 -@@ -495,13 +495,13 @@ static int fileselect(const struct diren - // (no internal ISDN support) || !strncmp(e->d_name, "ttyI", 4); - } - --#if defined(__GLIBC__) && __GLIBC_PREREQ(2, 10) -+#if defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)) - static int filesort(const dirent **e1, const dirent **e2) - #else - static int filesort(const void *_e1, const void *_e2) - #endif - { --#if !(defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)) -+#if !(defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))) - dirent const * const *e1 = (dirent const * const *)_e1; - dirent const * const *e2 = (dirent const * const *)_e2; - #endif diff --git a/package/wvdial/Config.in b/package/wvdial/Config.in deleted file mode 100644 index d5458700f2..0000000000 --- a/package/wvdial/Config.in +++ /dev/null @@ -1,15 +0,0 @@ -config BR2_PACKAGE_WVDIAL - bool "wvdial" - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_MMU # wvstreams - depends on !BR2_STATIC_LIBS # wvstreams - depends on !BR2_TOOLCHAIN_USES_MUSL # wvstreams - select BR2_PACKAGE_WVSTREAMS - help - wvdial is an intelligent Point-to-Point Protocol dialer - - http://wvdial.googlecode.com/ - -comment "wvdial needs a (e)glibc or uClibc toolchain w/ C++, dynamic library" - depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/wvdial/wvdial.mk b/package/wvdial/wvdial.mk deleted file mode 100644 index e89dfc5887..0000000000 --- a/package/wvdial/wvdial.mk +++ /dev/null @@ -1,32 +0,0 @@ -################################################################################ -# -# wvdial -# -################################################################################ - -WVDIAL_VERSION = 1.61 -WVDIAL_SITE = http://wvdial.googlecode.com/files -WVDIAL_SOURCE = wvdial-$(WVDIAL_VERSION).tar.bz2 -WVDIAL_DEPENDENCIES = wvstreams - -WVDIAL_LICENSE = LGPLv2 -WVDIAL_LICENSE_FILES = COPYING.LIB - -# N.B. parallel make fails -WVDIAL_MAKE = $(MAKE1) - -WVDIAL_MAKE_ENV += $(TARGET_CONFIGURE_OPTS) \ - WVSTREAMS_INC="$(STAGING_DIR)/usr/include" \ - WVSTREAMS_LIB="$(STAGING_DIR)/usr/lib" - -define WVDIAL_BUILD_CMDS - $(TARGET_MAKE_ENV) $(WVDIAL_MAKE_ENV) $(WVDIAL_MAKE) -C $(@D) -endef - -define WVDIAL_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(WVDIAL_MAKE_ENV) $(WVDIAL_MAKE) \ - prefix="$(TARGET_DIR)/usr" PPPDIR="$(TARGET_DIR)/etc/ppp/peers" \ - install -C $(@D) -endef - -$(eval $(generic-package)) diff --git a/package/wvstreams/0001-fix-uClibc-compile-getcontext.patch b/package/wvstreams/0001-fix-uClibc-compile-getcontext.patch deleted file mode 100644 index c78cc1893c..0000000000 --- a/package/wvstreams/0001-fix-uClibc-compile-getcontext.patch +++ /dev/null @@ -1,273 +0,0 @@ -Fix wvstreams so that it builds with uClibc, which does not have the -getcontext() and setcontext() functions. - -Signed-off-by: Simon Dawson - -diff -Nurp a/include/wvtask.h b/include/wvtask.h ---- a/include/wvtask.h 2008-07-14 20:11:35.000000000 +0100 -+++ b/include/wvtask.h 2012-07-28 12:29:53.559981240 +0100 -@@ -28,6 +28,13 @@ - - #define WVTASK_MAGIC 0x123678 - -+#undef HAVE_GETCONTEXT -+#ifdef HAVE_GETCONTEXT -+typedef ucontext_t TaskContext; -+#else -+typedef jmp_buf TaskContext; -+#endif -+ - class WvTaskMan; - - /** Represents a single thread of control. */ -@@ -54,8 +61,8 @@ class WvTask - bool running, recycled; - - WvTaskMan &man; -- ucontext_t mystate; // used for resuming the task -- ucontext_t func_call, func_return; -+ TaskContext mystate; // used for resuming the task -+ TaskContext func_call, func_return; - - TaskFunc *func; - void *userdata; -@@ -94,13 +101,13 @@ class WvTaskMan - static void call_func(WvTask *task); - - static char *stacktop; -- static ucontext_t stackmaster_task; -+ static TaskContext stackmaster_task; - - static WvTask *stack_target; -- static ucontext_t get_stack_return; -+ static TaskContext get_stack_return; - - static WvTask *current_task; -- static ucontext_t toplevel; -+ static TaskContext toplevel; - - WvTaskMan(); - virtual ~WvTaskMan(); -diff -Nurp a/utils/wvtask.cc b/utils/wvtask.cc ---- a/utils/wvtask.cc 2009-05-13 22:42:52.000000000 +0100 -+++ b/utils/wvtask.cc 2012-07-28 12:32:23.855974538 +0100 -@@ -60,12 +60,14 @@ int WvTask::taskcount, WvTask::numtasks, - WvTaskMan *WvTaskMan::singleton; - int WvTaskMan::links, WvTaskMan::magic_number; - WvTaskList WvTaskMan::all_tasks, WvTaskMan::free_tasks; --ucontext_t WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return, -+TaskContext WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return, - WvTaskMan::toplevel; - WvTask *WvTaskMan::current_task, *WvTaskMan::stack_target; - char *WvTaskMan::stacktop; - -+#ifdef HAVE_GETCONTEXT - static int context_return; -+#endif - - - static bool use_shared_stack() -@@ -198,9 +200,13 @@ WvTaskMan::WvTaskMan() - - stacktop = (char *)alloca(0); - -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(&get_stack_return) == 0); - if (context_return == 0) -+#else -+ if (setjmp(get_stack_return) == 0) -+#endif - { - // initial setup - start the stackmaster() task (never returns!) - stackmaster(); -@@ -257,22 +263,30 @@ int WvTaskMan::run(WvTask &task, int val - - WvTask *old_task = current_task; - current_task = &task; -- ucontext_t *state; -+ TaskContext *state; - - if (!old_task) - state = &toplevel; // top-level call (not in an actual task yet) - else - state = &old_task->mystate; - -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(state) == 0); - int newval = context_return; -+#else -+ int newval = setjmp(*state); -+#endif - if (newval == 0) - { - // saved the state, now run the task. -+#ifdef HAVE_GETCONTEXT - context_return = val; - setcontext(&task.mystate); - return -1; -+#else -+ longjmp(task.mystate, val); -+#endif - } - else - { -@@ -317,16 +331,24 @@ int WvTaskMan::yield(int val) - (long)current_task->stacksize); - } - #endif -- -+ -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(¤t_task->mystate) == 0); - int newval = context_return; -+#else -+ int newval = setjmp(current_task->mystate); -+#endif - if (newval == 0) - { - // saved the task state; now yield to the toplevel. -+#ifdef HAVE_GETCONTEXT - context_return = val; - setcontext(&toplevel); - return -1; -+#else -+ longjmp(toplevel, val); -+#endif - } - else - { -@@ -340,9 +362,13 @@ int WvTaskMan::yield(int val) - - void WvTaskMan::get_stack(WvTask &task, size_t size) - { -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(&get_stack_return) == 0); - if (context_return == 0) -+#else -+ if (setjmp(get_stack_return) == 0) -+#endif - { - assert(magic_number == -WVTASK_MAGIC); - assert(task.magic_number == WVTASK_MAGIC); -@@ -358,6 +384,7 @@ void WvTaskMan::get_stack(WvTask &task, - static char *next_stack_addr = NULL; - #endif - -+#ifndef HAVE_GETCONTEXT - task.stack = mmap(next_stack_addr, task.stacksize, - PROT_READ | PROT_WRITE, - #ifndef MACOS -@@ -366,12 +393,17 @@ void WvTaskMan::get_stack(WvTask &task, - MAP_PRIVATE, - #endif - -1, 0); -+#endif // !HAVE_GETCONTEXT - } - - // initial setup - stack_target = &task; -+#ifdef HAVE_GETCONTEXT - context_return = size/1024 + (size%1024 > 0); - setcontext(&stackmaster_task); -+#else -+ longjmp(stackmaster_task, size/1024 + (size%1024 > 0)); -+#endif - } - else - { -@@ -408,9 +440,13 @@ void WvTaskMan::_stackmaster() - { - assert(magic_number == -WVTASK_MAGIC); - -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(&stackmaster_task) == 0); - val = context_return; -+#else -+ val = setjmp(stackmaster_task); -+#endif - if (val == 0) - { - assert(magic_number == -WVTASK_MAGIC); -@@ -418,8 +454,12 @@ void WvTaskMan::_stackmaster() - // just did setjmp; save stackmaster's current state (with - // all current stack allocations) and go back to get_stack - // (or the constructor, if that's what called us) -+#ifdef HAVE_GETCONTEXT - context_return = 1; - setcontext(&get_stack_return); -+#else -+ longjmp(get_stack_return, 1); -+#endif - } - else - { -@@ -462,7 +502,9 @@ void WvTaskMan::call_func(WvTask *task) - task->func(task->userdata); - Dprintf("WvTaskMan: returning from task #%d (%s)\n", - task->tid, (const char *)task->name); -+#ifdef HAVE_GETCONTEXT - context_return = 1; -+#endif - } - - -@@ -473,9 +515,13 @@ void WvTaskMan::do_task() - assert(task->magic_number == WVTASK_MAGIC); - - // back here from longjmp; someone wants stack space. -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(&task->mystate) == 0); - if (context_return == 0) -+#else -+ if (setjmp(task->mystate) == 0) -+#endif - { - // done the setjmp; that means the target task now has - // a working jmp_buf all set up. Leave space on the stack -@@ -510,6 +556,7 @@ void WvTaskMan::do_task() - } - else - { -+#ifdef HAVE_GETCONTEXT - assert(getcontext(&task->func_call) == 0); - task->func_call.uc_stack.ss_size = task->stacksize; - task->func_call.uc_stack.ss_sp = task->stack; -@@ -519,11 +566,19 @@ void WvTaskMan::do_task() - task->tid, (const char *)task->name); - makecontext(&task->func_call, - (void (*)(void))call_func, 1, task); -+#else -+ assert(setjmp(task->func_call) == 0); -+#endif - -+#ifdef HAVE_GETCONTEXT - context_return = 0; - assert(getcontext(&task->func_return) == 0); - if (context_return == 0) - setcontext(&task->func_call); -+#else -+ if (setjmp(task->func_return) == 0) -+ longjmp(task->func_call, 0); -+#endif - } - - // the task's function terminated. -@@ -544,8 +599,12 @@ const void *WvTaskMan::current_top_of_st - if (use_shared_stack() || current_task == NULL) - return __libc_stack_end; - else -+#ifdef HAVE_GETCONTEXT - return (const char *)current_task->stack + current_task->stacksize; - #else -+ return 0; -+#endif -+#else - return 0; - #endif - } diff --git a/package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch b/package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch deleted file mode 100644 index c6317da4dc..0000000000 --- a/package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch +++ /dev/null @@ -1,31 +0,0 @@ -Fix wvstreams so that it builds with uClibc: we don't have execinfo.h, -so we can't do backtrace() stuff. - -Signed-off-by: Simon Dawson - -diff -Nurp a/utils/wvcrash.cc b/utils/wvcrash.cc ---- a/utils/wvcrash.cc 2008-12-17 12:24:20.000000000 +0000 -+++ b/utils/wvcrash.cc 2012-07-27 22:00:15.456502262 +0100 -@@ -28,7 +28,9 @@ - // FIXME: this file mostly only works in Linux - #ifdef __linux - --# include -+#ifdef HAVE_EXECINFO_H -+#include -+#endif - #include - - #ifdef __USE_GNU -@@ -267,9 +269,11 @@ static void wvcrash_real(int sig, int fd - } - } - -+#ifdef HAVE_EXECINFO_H - wr(fd, "\nBacktrace:\n"); - backtrace_symbols_fd(trace, - backtrace(trace, sizeof(trace)/sizeof(trace[0])), fd); -+#endif - - if (pid > 0) - { diff --git a/package/wvstreams/0003-fix-uClibc-compile-misc.patch b/package/wvstreams/0003-fix-uClibc-compile-misc.patch deleted file mode 100644 index 690a961c12..0000000000 --- a/package/wvstreams/0003-fix-uClibc-compile-misc.patch +++ /dev/null @@ -1,16 +0,0 @@ -Fix wvstreams so that it builds with uClibc: const cast problem. - -Signed-off-by: Simon Dawson - -diff -Nurp a/crypto/wvx509.cc b/crypto/wvx509.cc ---- a/crypto/wvx509.cc 2008-10-23 21:23:49.000000000 +0100 -+++ b/crypto/wvx509.cc 2012-06-15 18:45:06.605899292 +0100 -@@ -1157,7 +1157,7 @@ WvString WvX509::get_extension(int nid) - - if (ext) - { -- X509V3_EXT_METHOD *method = X509V3_EXT_get(ext); -+ X509V3_EXT_METHOD *method = const_cast(X509V3_EXT_get(ext)); - if (!method) - { - WvDynBuf buf; diff --git a/package/wvstreams/0004-build-fixes.patch b/package/wvstreams/0004-build-fixes.patch deleted file mode 100644 index 21792d7422..0000000000 --- a/package/wvstreams/0004-build-fixes.patch +++ /dev/null @@ -1,40 +0,0 @@ -Add missing includes for proper build on Linux/glibc - -The current wvstreams code doesn't build on Linux/glibc, with error -about chmod() not being available (for wvunixdgsocket.cc) or umask() -not being available (for wvatomicfile.cc). Those errors turn out to be -missing includes. Those includes were in fact already done, but -conditionally for MacOS. We make them unconditional (it probably -breaks other platforms, but since Buildroot is Linux only, we don't -care). - -Signed-off-by: Thomas Petazzoni - -Index: b/ipstreams/wvunixdgsocket.cc -=================================================================== ---- a/ipstreams/wvunixdgsocket.cc -+++ b/ipstreams/wvunixdgsocket.cc -@@ -1,8 +1,6 @@ - #include "wvunixdgsocket.h" --#ifdef MACOS - #include - #include --#endif - - WvUnixDGSocket::WvUnixDGSocket(WvStringParm filename, bool _server, int perms) - : socketfile(filename) -Index: b/streams/wvatomicfile.cc -=================================================================== ---- a/streams/wvatomicfile.cc -+++ b/streams/wvatomicfile.cc -@@ -10,10 +10,7 @@ - #include "wvatomicfile.h" - #include "wvfileutils.h" - #include "wvstrutils.h" -- --#ifdef MACOS - #include --#endif - - WvAtomicFile::WvAtomicFile(WvStringParm filename, int flags, mode_t create_mode) - : tmp_file(WvString::null) diff --git a/package/wvstreams/0005-getuid.patch b/package/wvstreams/0005-getuid.patch deleted file mode 100644 index 60150665ce..0000000000 --- a/package/wvstreams/0005-getuid.patch +++ /dev/null @@ -1,25 +0,0 @@ -[PATCH] wvuid.cc: getuid needs sys/types.h + unistd.h - -Otherwise the build fails with: - -utils/wvuid.cc: In function 'wvuid_t wvgetuid()': -utils/wvuid.cc:63:19: error: 'getuid' was not declared in this scope - -Signed-off-by: Peter Korsgaard ---- - utils/wvuid.cc | 2 ++ - 1 file changed, 2 insertions(+) - -Index: wvstreams-4.6.1/utils/wvuid.cc -=================================================================== ---- wvstreams-4.6.1.orig/utils/wvuid.cc -+++ wvstreams-4.6.1/utils/wvuid.cc -@@ -33,6 +33,8 @@ - - #else // not WIN32 - -+#include -+#include - - WvString wv_username_from_uid(wvuid_t uid) - { diff --git a/package/wvstreams/Config.in b/package/wvstreams/Config.in deleted file mode 100644 index e2edd6d257..0000000000 --- a/package/wvstreams/Config.in +++ /dev/null @@ -1,17 +0,0 @@ -config BR2_PACKAGE_WVSTREAMS - bool "wvstreams" - depends on BR2_INSTALL_LIBSTDCPP - depends on !BR2_STATIC_LIBS - depends on BR2_USE_MMU # fork() - # musl not supported and no upstream activity since 2011. - depends on !BR2_TOOLCHAIN_USES_MUSL - select BR2_PACKAGE_OPENSSL - select BR2_PACKAGE_ZLIB - help - C++ Network Programming Library. - - http://wvstreams.googlecode.com/ - -comment "wvstreams needs a (e)glibc or uClibc toolchain w/ C++, dynamic library" - depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/wvstreams/wvstreams.mk b/package/wvstreams/wvstreams.mk deleted file mode 100644 index 4d344e2834..0000000000 --- a/package/wvstreams/wvstreams.mk +++ /dev/null @@ -1,62 +0,0 @@ -################################################################################ -# -# wvstreams -# -################################################################################ - -WVSTREAMS_VERSION = 4.6.1 -WVSTREAMS_SITE = http://wvstreams.googlecode.com/files -WVSTREAMS_DEPENDENCIES = openssl zlib host-pkgconf -WVSTREAMS_INSTALL_STAGING = YES - -WVSTREAMS_LICENSE = LGPLv2+ -WVSTREAMS_LICENSE_FILES = LICENSE - -# N.B. parallel make fails -WVSTREAMS_MAKE = $(MAKE1) - -# Needed to work around problem with wvassert.h -WVSTREAMS_CONF_OPTS += CPPFLAGS=-DNDEBUG - -WVSTREAMS_CONF_OPTS += \ - --with-openssl \ - --with-zlib \ - --without-pam \ - --disable-warnings \ - --without-tcl - -# needed for openssl detection when statically linking (as ssl needs lz) -WVSTREAMS_CONF_ENV += LIBS=-lz - -ifneq ($(BR2_STATIC_LIBS),y) -WVSTREAMS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -fPIC" -endif - -# wvstreams uses argp.h which can be provided by the argp-standalone -# package -ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) -WVSTREAMS_DEPENDENCIES += argp-standalone -endif - -ifeq ($(BR2_PACKAGE_DBUS),y) -WVSTREAMS_DEPENDENCIES += dbus -WVSTREAMS_CONF_OPTS += --with-dbus -else -WVSTREAMS_CONF_OPTS += --without-dbus -endif - -ifeq ($(BR2_PACKAGE_QT),y) -WVSTREAMS_DEPENDENCIES += qt -WVSTREAMS_CONF_OPTS += --with-qt -else -WVSTREAMS_CONF_OPTS += --without-qt -endif - -ifeq ($(BR2_PACKAGE_VALGRIND),y) -WVSTREAMS_DEPENDENCIES += valgrind -WVSTREAMS_CONF_OPTS += --with-valgrind -else -WVSTREAMS_CONF_OPTS += --without-valgrind -endif - -$(eval $(autotools-package)) diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in index 40aa80c934..c40a6438c5 100644 --- a/package/x11r7/Config.in +++ b/package/x11r7/Config.in @@ -35,6 +35,7 @@ if BR2_PACKAGE_XORG7 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 diff --git a/package/x11r7/libxcb/libxcb.hash b/package/x11r7/libxcb/libxcb.hash index 62060ee0dc..6df7d01792 100644 --- a/package/x11r7/libxcb/libxcb.hash +++ b/package/x11r7/libxcb/libxcb.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-September/002633.html -sha256 b720fd6c7d200e5371affdb3f049cc8f88cff9aed942ff1b824d95eedbf69d30 libxcb-1.11.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-May/002694.html +sha256 4adfb1b7c67e99bc9c2ccb110b2f175686576d2f792c8a71b9c8b19014057b5b libxcb-1.12.tar.bz2 diff --git a/package/x11r7/libxcb/libxcb.mk b/package/x11r7/libxcb/libxcb.mk index c46ee26498..ba42418633 100644 --- a/package/x11r7/libxcb/libxcb.mk +++ b/package/x11r7/libxcb/libxcb.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXCB_VERSION = 1.11.1 +LIBXCB_VERSION = 1.12 LIBXCB_SOURCE = libxcb-$(LIBXCB_VERSION).tar.bz2 LIBXCB_SITE = http://xcb.freedesktop.org/dist LIBXCB_LICENSE = MIT @@ -15,9 +15,16 @@ LIBXCB_INSTALL_STAGING = YES LIBXCB_DEPENDENCIES = \ host-libxslt libpthread-stubs xcb-proto xlib_libXdmcp xlib_libXau \ host-xcb-proto host-python host-pkgconf +HOST_LIBXCB_DEPENDENCIES = \ + host-libxslt host-libpthread-stubs host-xcb-proto host-xlib_libXdmcp \ + host-xlib_libXau host-python host-pkgconf LIBXCB_CONF_OPTS = --with-doxygen=no HOST_LIBXCB_CONF_OPTS = --with-doxygen=no +# libxcb is not python3 friendly, so force the python interpreter +HOST_LIBXCB_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python2 +LIBXCB_CONF_OPTS += ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python2 + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/mcookie/mcookie.mk b/package/x11r7/mcookie/mcookie.mk index 87a236fb18..b14599d596 100644 --- a/package/x11r7/mcookie/mcookie.mk +++ b/package/x11r7/mcookie/mcookie.mk @@ -4,8 +4,6 @@ # ################################################################################ -# Source included in Buildroot -MCOOKIE_SOURCE = MCOOKIE_LICENSE = Public Domain define MCOOKIE_EXTRACT_CMDS diff --git a/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk index ebdcda5756..489bbba4be 100644 --- a/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk +++ b/package/x11r7/xapp_bdftopcf/xapp_bdftopcf.mk @@ -10,6 +10,7 @@ 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 diff --git a/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk b/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk index b74f9939ce..f2227bdfdd 100644 --- a/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk +++ b/package/x11r7/xapp_mkfontdir/xapp_mkfontdir.mk @@ -10,6 +10,7 @@ XAPP_MKFONTDIR_SITE = http://xorg.freedesktop.org/releases/individual/app XAPP_MKFONTDIR_LICENSE = MIT XAPP_MKFONTDIR_LICENSE_FILES = COPYING XAPP_MKFONTDIR_DEPENDENCIES = xapp_mkfontscale +HOST_XAPP_MKFONTDIR_DEPENDENCIES = host-xapp_mkfontscale $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk index b99a646044..d7abf6c5bb 100644 --- a/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk +++ b/package/x11r7/xapp_mkfontscale/xapp_mkfontscale.mk @@ -10,6 +10,8 @@ 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 xproto_xproto +HOST_XAPP_MKFONTSCALE_DEPENDENCIES = \ + host-zlib host-freetype host-xlib_libfontenc host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xapp_scripts/xapp_scripts.hash b/package/x11r7/xapp_scripts/xapp_scripts.hash new file mode 100644 index 0000000000..79a43180c5 --- /dev/null +++ b/package/x11r7/xapp_scripts/xapp_scripts.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 1b154b4359302ca499818c45396325aef9ff364d6ff4ce5c3769e4803994a136 scripts-1.0.1.tar.bz2 diff --git a/package/x11r7/xapp_sessreg/0002-missing_path_wtmpx.patch b/package/x11r7/xapp_sessreg/0002-missing_path_wtmpx.patch new file mode 100644 index 0000000000..0be242c0b2 --- /dev/null +++ b/package/x11r7/xapp_sessreg/0002-missing_path_wtmpx.patch @@ -0,0 +1,24 @@ +Fix missing defines _PATH_WTMPX/_PATH_UTMPX in musl + +Downloaded from +https://cgit.gentoo.org/proj/musl.git/tree/x11-apps/sessreg/files/sessreg-1.1.0-missing_path_wtmpx.patch + +Signed-off-by: Bernd Kuhls + +diff -Naur sessreg-1.1.0.orig/sessreg.h sessreg-1.1.0/sessreg.h +--- sessreg-1.1.0.orig/sessreg.h 2015-01-20 05:00:27.000000000 +0000 ++++ sessreg-1.1.0/sessreg.h 2016-02-23 11:54:42.057000000 +0000 +@@ -103,6 +103,13 @@ + # define TTYS_FILE "/etc/ttys" + #endif + ++#ifndef _PATH_WTMPX ++# define _PATH_WTMPX "/var/log/wtmp" ++#endif ++#ifndef _PATH_UTMPX ++# define _PATH_UTMPX "/var/log/utmp" ++#endif ++ + #ifndef WTMPX_FILE + # define WTMPX_FILE _PATH_WTMPX + #endif diff --git a/package/x11r7/xapp_xauth/xapp_xauth.hash b/package/x11r7/xapp_xauth/xapp_xauth.hash index 922cecf602..f6987c1c0c 100644 --- a/package/x11r7/xapp_xauth/xapp_xauth.hash +++ b/package/x11r7/xapp_xauth/xapp_xauth.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2014-April/002414.html -sha256 56ce1523eb48b1f8a4f4244fe1c3d8e6af1a3b7d4b0e6063582421b0b68dc28f xauth-1.0.9.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002772.html +sha256 5afe42ce3cdf4f60520d1658d2b17face45c74050f39af45dccdc95e73fafc4d xauth-1.0.10.tar.bz2 diff --git a/package/x11r7/xapp_xauth/xapp_xauth.mk b/package/x11r7/xapp_xauth/xapp_xauth.mk index a2307f2817..80ac6a42d5 100644 --- a/package/x11r7/xapp_xauth/xapp_xauth.mk +++ b/package/x11r7/xapp_xauth/xapp_xauth.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XAUTH_VERSION = 1.0.9 +XAPP_XAUTH_VERSION = 1.0.10 XAPP_XAUTH_SOURCE = xauth-$(XAPP_XAUTH_VERSION).tar.bz2 XAPP_XAUTH_SITE = http://xorg.freedesktop.org/releases/individual/app XAPP_XAUTH_LICENSE = MIT diff --git a/package/x11r7/xapp_xconsole/xapp_xconsole.hash b/package/x11r7/xapp_xconsole/xapp_xconsole.hash index a62d8cbb22..364cdbe405 100644 --- a/package/x11r7/xapp_xconsole/xapp_xconsole.hash +++ b/package/x11r7/xapp_xconsole/xapp_xconsole.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-July/002272.html -sha256 e561959b6ee8b735a32c1050015cfd8c551ed162cabb6cb72e36ce72966855d1 xconsole-1.0.6.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002774.html +sha256 d1144882df207378381bc83927906559defbf7b83a01d52c50ad44234c5851e0 xconsole-1.0.7.tar.bz2 diff --git a/package/x11r7/xapp_xconsole/xapp_xconsole.mk b/package/x11r7/xapp_xconsole/xapp_xconsole.mk index 971b1b32ea..52656de83c 100644 --- a/package/x11r7/xapp_xconsole/xapp_xconsole.mk +++ b/package/x11r7/xapp_xconsole/xapp_xconsole.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XCONSOLE_VERSION = 1.0.6 +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 diff --git a/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk index f9ca39d2e7..4bee26b5dc 100644 --- a/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk +++ b/package/x11r7/xapp_xcursorgen/xapp_xcursorgen.mk @@ -10,6 +10,8 @@ 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_xinit/xapp_xinit.mk b/package/x11r7/xapp_xinit/xapp_xinit.mk index a67ba146f2..a796884f6b 100644 --- a/package/x11r7/xapp_xinit/xapp_xinit.mk +++ b/package/x11r7/xapp_xinit/xapp_xinit.mk @@ -10,5 +10,6 @@ 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/xapp_xinput-calibrator.hash b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash new file mode 100644 index 0000000000..c2d439fed6 --- /dev/null +++ b/package/x11r7/xapp_xinput-calibrator/xapp_xinput-calibrator.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 baa4ddca49ec94c27ba4c715bfa26692fec1132103e927213c3169e475d3d971 xinput_calibrator-0.7.5.tar.gz diff --git a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk index fea7fa8e8c..4fc4372fef 100644 --- a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk +++ b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk @@ -10,6 +10,7 @@ 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)) diff --git a/package/x11r7/xapp_xload/xapp_xload.mk b/package/x11r7/xapp_xload/xapp_xload.mk index 1db0db5717..364d247a95 100644 --- a/package/x11r7/xapp_xload/xapp_xload.mk +++ b/package/x11r7/xapp_xload/xapp_xload.mk @@ -11,4 +11,9 @@ XAPP_XLOAD_LICENSE = MIT XAPP_XLOAD_LICENSE_FILES = COPYING XAPP_XLOAD_DEPENDENCIES = xlib_libXaw +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 + $(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash b/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash new file mode 100644 index 0000000000..c393ad4dfc --- /dev/null +++ b/package/x11r7/xapp_xsetmode/xapp_xsetmode.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 988b47cd922991c6e6adbce15dc386ac75690b61744b526c3af5a4eaa9afa0aa xsetmode-1.0.0.tar.bz2 diff --git a/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash new file mode 100644 index 0000000000..6e6a37e90d --- /dev/null +++ b/package/x11r7/xapp_xsetpointer/xapp_xsetpointer.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 7d65f450420b4f764dcf38e4ccee9d608b5a5874706e716cb861bfe2586b7d4a xsetpointer-1.0.0.tar.bz2 diff --git a/package/x11r7/xcb-proto/0001-Make-whitespace-use-consistent.patch b/package/x11r7/xcb-proto/0001-Make-whitespace-use-consistent.patch new file mode 100644 index 0000000000..67adada505 --- /dev/null +++ b/package/x11r7/xcb-proto/0001-Make-whitespace-use-consistent.patch @@ -0,0 +1,212 @@ +From ea7a3ac6c658164690e0febb55f4467cb9e0bcac Mon Sep 17 00:00:00 2001 +From: Thomas Klausner +Date: Thu, 19 May 2016 17:30:04 +0200 +Subject: [PATCH] Make whitespace use consistent. + +At least python-3.5.x complains about this forcefully. + +Signed-off-by: Thomas Klausner +Signed-off-by: Uli Schlachter +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + xcbgen/align.py | 96 ++++++++++++++++++++++++++++----------------------------- + 1 file changed, 48 insertions(+), 48 deletions(-) + +diff --git a/xcbgen/align.py b/xcbgen/align.py +index 5e31838..d4c12ee 100644 +--- a/xcbgen/align.py ++++ b/xcbgen/align.py +@@ -16,12 +16,12 @@ class Alignment(object): + return self.align == other.align and self.offset == other.offset + + def __str__(self): +- return "(align=%d, offset=%d)" % (self.align, self.offset) ++ return "(align=%d, offset=%d)" % (self.align, self.offset) + + @staticmethod + def for_primitive_type(size): +- # compute the required start_alignment based on the size of the type +- if size % 8 == 0: ++ # compute the required start_alignment based on the size of the type ++ if size % 8 == 0: + # do 8-byte primitives require 8-byte alignment in X11? + return Alignment(8,0) + elif size % 4 == 0: +@@ -33,7 +33,7 @@ class Alignment(object): + + + def align_after_fixed_size(self, size): +- new_offset = (self.offset + size) % self.align ++ new_offset = (self.offset + size) % self.align + return Alignment(self.align, new_offset) + + +@@ -41,7 +41,7 @@ class Alignment(object): + ''' + Assuming the given external_align, checks whether + self is fulfilled for all cases. +- Returns True if yes, False otherwise. ++ Returns True if yes, False otherwise. + ''' + if self.align == 1 and self.offset == 0: + # alignment 1 with offset 0 is always fulfilled +@@ -55,9 +55,9 @@ class Alignment(object): + # the external align guarantees less alignment -> not guaranteed + return False + +- if external_align.align % self.align != 0: ++ if external_align.align % self.align != 0: + # the external align cannot be divided by our align +- # -> not guaranteed ++ # -> not guaranteed + # (this can only happen if there are alignments that are not + # a power of 2, which is highly discouraged. But better be + # safe and check for it) +@@ -72,7 +72,7 @@ class Alignment(object): + + def combine_with(self, other): + # returns the alignment that is guaranteed when +- # both, self or other, can happen ++ # both, self or other, can happen + new_align = gcd(self.align, other.align) + new_offset_candidate1 = self.offset % new_align + new_offset_candidate2 = other.offset % new_align +@@ -83,8 +83,8 @@ class Alignment(object): + new_align = gcd(new_align, offset_diff) + new_offset_candidate1 = self.offset % new_align + new_offset_candidate2 = other.offset % new_align +- assert new_offset_candidate1 == new_offset_candidate2 +- new_offset = new_offset_candidate1 ++ assert new_offset_candidate1 == new_offset_candidate2 ++ new_offset = new_offset_candidate1 + # return the result + return Alignment(new_align, new_offset) + +@@ -92,44 +92,44 @@ class Alignment(object): + class AlignmentLog(object): + + def __init__(self): +- self.ok_list = [] +- self.fail_list = [] +- self.verbosity = 1 ++ self.ok_list = [] ++ self.fail_list = [] ++ self.verbosity = 1 + + def __str__(self): +- result = "" ++ result = "" + +- # output the OK-list +- for (align_before, field_name, type_obj, callstack, align_after) in self.ok_list: +- stacksize = len(callstack) ++ # output the OK-list ++ for (align_before, field_name, type_obj, callstack, align_after) in self.ok_list: ++ stacksize = len(callstack) + indent = ' ' * stacksize +- if self.ok_callstack_is_relevant(callstack): ++ if self.ok_callstack_is_relevant(callstack): + if field_name is None or field_name == "": +- result += (" %sok: %s:\n\t%sbefore: %s, after: %s\n" +- % (indent, str(type_obj), indent, str(align_before), str(align_after))) +- else: +- result += (" %sok: field \"%s\" in %s:\n\t%sbefore: %s, after: %s\n" +- % (indent, str(field_name), str(type_obj), +- indent, str(align_before), str(align_after))) ++ result += (" %sok: %s:\n\t%sbefore: %s, after: %s\n" ++ % (indent, str(type_obj), indent, str(align_before), str(align_after))) ++ else: ++ result += (" %sok: field \"%s\" in %s:\n\t%sbefore: %s, after: %s\n" ++ % (indent, str(field_name), str(type_obj), ++ indent, str(align_before), str(align_after))) + if self.verbosity >= 1: +- result += self.callstack_to_str(indent, callstack) ++ result += self.callstack_to_str(indent, callstack) + +- # output the fail-list +- for (align_before, field_name, type_obj, callstack, reason) in self.fail_list: +- stacksize = len(callstack) ++ # output the fail-list ++ for (align_before, field_name, type_obj, callstack, reason) in self.fail_list: ++ stacksize = len(callstack) + indent = ' ' * stacksize +- if field_name is None or field_name == "": +- result += (" %sfail: align %s is incompatible with\n\t%s%s\n\t%sReason: %s\n" +- % (indent, str(align_before), indent, str(type_obj), indent, reason)) +- else: +- result += (" %sfail: align %s is incompatible with\n\t%sfield \"%s\" in %s\n\t%sReason: %s\n" +- % (indent, str(align_before), indent, str(field_name), str(type_obj), indent, reason)) ++ if field_name is None or field_name == "": ++ result += (" %sfail: align %s is incompatible with\n\t%s%s\n\t%sReason: %s\n" ++ % (indent, str(align_before), indent, str(type_obj), indent, reason)) ++ else: ++ result += (" %sfail: align %s is incompatible with\n\t%sfield \"%s\" in %s\n\t%sReason: %s\n" ++ % (indent, str(align_before), indent, str(field_name), str(type_obj), indent, reason)) + + if self.verbosity >= 1: +- result += self.callstack_to_str(indent, callstack) ++ result += self.callstack_to_str(indent, callstack) + + +- return result ++ return result + + + def callstack_to_str(self, indent, callstack): +@@ -137,41 +137,41 @@ class AlignmentLog(object): + for stack_elem in callstack: + result += "\t %s%s\n" % (indent, str(stack_elem)) + result += "\t%s]\n" % indent +- return result ++ return result + + + def ok_callstack_is_relevant(self, ok_callstack): + # determine whether an ok callstack is relevant for logging +- if self.verbosity >= 2: +- return True ++ if self.verbosity >= 2: ++ return True + + # empty callstacks are always relevant +- if len(ok_callstack) == 0: ++ if len(ok_callstack) == 0: + return True + +- # check whether the ok_callstack is a subset or equal to a fail_callstack ++ # check whether the ok_callstack is a subset or equal to a fail_callstack + for (align_before, field_name, type_obj, fail_callstack, reason) in self.fail_list: + if len(ok_callstack) <= len(fail_callstack): + zipped = zip(ok_callstack, fail_callstack[:len(ok_callstack)]) +- is_subset = all([i == j for i, j in zipped]) +- if is_subset: ++ is_subset = all([i == j for i, j in zipped]) ++ if is_subset: + return True + + return False + + + def ok(self, align_before, field_name, type_obj, callstack, align_after): +- self.ok_list.append((align_before, field_name, type_obj, callstack, align_after)) ++ self.ok_list.append((align_before, field_name, type_obj, callstack, align_after)) + + def fail(self, align_before, field_name, type_obj, callstack, reason): +- self.fail_list.append((align_before, field_name, type_obj, callstack, reason)) ++ self.fail_list.append((align_before, field_name, type_obj, callstack, reason)) + + def append(self, other): +- self.ok_list.extend(other.ok_list) +- self.fail_list.extend(other.fail_list) ++ self.ok_list.extend(other.ok_list) ++ self.fail_list.extend(other.fail_list) + + def ok_count(self): +- return len(self.ok_list) ++ return len(self.ok_list) + + + +-- +2.8.1 + diff --git a/package/x11r7/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch b/package/x11r7/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch new file mode 100644 index 0000000000..6fa5d48de2 --- /dev/null +++ b/package/x11r7/xcb-proto/0002-print-is-a-function-and-needs-parentheses.patch @@ -0,0 +1,70 @@ +From bea5e1c85bdc0950913790364e18228f20395a3d Mon Sep 17 00:00:00 2001 +From: Thomas Klausner +Date: Thu, 19 May 2016 17:30:05 +0200 +Subject: print() is a function and needs parentheses. + +Fixes build with python-3.x. + +Signed-off-by: Thomas Klausner +Signed-off-by: Uli Schlachter +[yann.morin.1998@free.fr: backport from upstream] +Signed-off-by: "Yann E. MORIN" + +diff --git a/xcbgen/xtypes.py b/xcbgen/xtypes.py +index c3b5758..b83b119 100644 +--- a/xcbgen/xtypes.py ++++ b/xcbgen/xtypes.py +@@ -501,7 +501,7 @@ class ComplexType(Type): + int(required_start_align_element.get('align', "4"), 0), + int(required_start_align_element.get('offset', "0"), 0)) + if verbose_align_log: +- print "Explicit start-align for %s: %s\n" % (self, self.required_start_align) ++ print ("Explicit start-align for %s: %s\n" % (self, self.required_start_align)) + + def resolve(self, module): + if self.resolved: +@@ -592,7 +592,7 @@ class ComplexType(Type): + if verbose_align_log: + print ("calc_required_start_align: %s has start-align %s" + % (str(self), str(self.required_start_align))) +- print "Details:\n" + str(log) ++ print ("Details:\n" + str(log)) + if self.required_start_align.offset != 0: + print (("WARNING: %s\n\thas start-align with non-zero offset: %s" + + "\n\tsuggest to add explicit definition with:" +@@ -619,12 +619,12 @@ class ComplexType(Type): + for offset in range(0,align): + align_candidate = Alignment(align, offset) + if verbose_align_log: +- print "trying %s for %s" % (str(align_candidate), str(self)) ++ print ("trying %s for %s" % (str(align_candidate), str(self))) + my_log = AlignmentLog() + if self.is_possible_start_align(align_candidate, callstack, my_log): + log.append(my_log) + if verbose_align_log: +- print "found start-align %s for %s" % (str(align_candidate), str(self)) ++ print ("found start-align %s for %s" % (str(align_candidate), str(self))) + return align_candidate + else: + my_ok_count = my_log.ok_count() +@@ -641,7 +641,7 @@ class ComplexType(Type): + # none of the candidates applies + # this type has illegal internal aligns for all possible start_aligns + if verbose_align_log: +- print "didn't find start-align for %s" % str(self) ++ print ("didn't find start-align for %s" % str(self)) + log.append(best_log) + return None + +@@ -900,7 +900,7 @@ class SwitchType(ComplexType): + # aux function for unchecked_get_alignment_after + def get_align_for_selected_case_field(self, case_field, start_align, callstack, log): + if verbose_align_log: +- print "get_align_for_selected_case_field: %s, case_field = %s" % (str(self), str(case_field)) ++ print ("get_align_for_selected_case_field: %s, case_field = %s" % (str(self), str(case_field))) + total_align = start_align + for field in self.bitcases: + my_callstack = callstack[:] +-- +cgit v0.10.2 + diff --git a/package/x11r7/xcb-proto/xcb-proto.hash b/package/x11r7/xcb-proto/xcb-proto.hash index c9a91086bd..3f43485492 100644 --- a/package/x11r7/xcb-proto/xcb-proto.hash +++ b/package/x11r7/xcb-proto/xcb-proto.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/xcb/2014-August/009614.html -sha256 b4aceee6502a0ce45fc39b33c541a2df4715d00b72e660ebe8c5bb444771e32e xcb-proto-1.11.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-May/002693.html +sha256 5922aba4c664ab7899a29d92ea91a87aa4c1fc7eb5ee550325c3216c480a4906 xcb-proto-1.12.tar.bz2 diff --git a/package/x11r7/xcb-proto/xcb-proto.mk b/package/x11r7/xcb-proto/xcb-proto.mk index 931573acfa..84555d07f0 100644 --- a/package/x11r7/xcb-proto/xcb-proto.mk +++ b/package/x11r7/xcb-proto/xcb-proto.mk @@ -4,7 +4,7 @@ # ################################################################################ -XCB_PROTO_VERSION = 1.11 +XCB_PROTO_VERSION = 1.12 XCB_PROTO_SOURCE = xcb-proto-$(XCB_PROTO_VERSION).tar.bz2 XCB_PROTO_SITE = http://xcb.freedesktop.org/dist XCB_PROTO_LICENSE = MIT @@ -13,6 +13,7 @@ XCB_PROTO_LICENSE_FILES = COPYING XCB_PROTO_INSTALL_STAGING = YES XCB_PROTO_DEPENDENCIES = host-python +HOST_XCB_PROTO_DEPENDENCIES = host-python # xcbincludedir/pythondir is used by E.G. libxcb at build time to find the # xml / python files, so ensure these expand to their full (host) paths diff --git a/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash b/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash index e5c47ca876..36f2258dcb 100644 --- a/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash +++ b/package/x11r7/xcb-util-cursor/xcb-util-cursor.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002555.html -sha1 b55a92cd96c3ec1be9a26963df6d5f16e68fffea xcb-util-cursor-0.1.2.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-May/002691.html +sha1 26562eb6d4151307f7b6a53453d360ecfc0563ac xcb-util-cursor-0.1.3.tar.bz2 diff --git a/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk b/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk index 65704a1104..07b37c5e47 100644 --- a/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk +++ b/package/x11r7/xcb-util-cursor/xcb-util-cursor.mk @@ -4,7 +4,7 @@ # ################################################################################ -XCB_UTIL_CURSOR_VERSION = 0.1.2 +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 diff --git a/package/x11r7/xcb-util/xcb-util.hash b/package/x11r7/xcb-util/xcb-util.hash new file mode 100644 index 0000000000..a9b8be25ab --- /dev/null +++ b/package/x11r7/xcb-util/xcb-util.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c611259c0ab20fd76f79f48f4684843c18ea9c967eba78a45e8b3636315c18c4 xcb-util-0.3.9.tar.bz2 diff --git a/package/x11r7/xcb-util/xcb-util.mk b/package/x11r7/xcb-util/xcb-util.mk index 4416d8075c..7b913e2bb5 100644 --- a/package/x11r7/xcb-util/xcb-util.mk +++ b/package/x11r7/xcb-util/xcb-util.mk @@ -12,6 +12,6 @@ XCB_UTIL_SITE = http://xcb.freedesktop.org/dist XCB_UTIL_LICENSE = MIT XCB_UTIL_INSTALL_STAGING = YES -XCB_UTIL_DEPENDENCIES = host-gperf libxcb +XCB_UTIL_DEPENDENCIES = libxcb $(eval $(autotools-package)) 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 0000000000..19f0de2eaa --- /dev/null +++ b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 b26adf2d503d01299718390ae39dab4691a67220de09423be0364e9a060bf7e4 xcursor-transparent-theme-0.1.1.tar.gz 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 0000000000..b342295440 --- /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/xdriver_xf86-input-evdev.hash b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash index 33149348bf..bf9a2cd256 100644 --- a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2016-January/002669.html -sha256 af9c2b47f5b272ae56b45da6bd84610fc9a3d80a4b32c8215842a39d862de017 xf86-input-evdev-2.10.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002767.html +sha256 9edaa6205baf6d2922cc4db3d8e54a7e7773b5f733b0ae90f6be7725f983b70d xf86-input-evdev-2.10.5.tar.bz2 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 index 4a2ed368f2..4933c42fda 100644 --- a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk @@ -4,11 +4,13 @@ # ################################################################################ -XDRIVER_XF86_INPUT_EVDEV_VERSION = 2.10.1 +XDRIVER_XF86_INPUT_EVDEV_VERSION = 2.10.5 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 \ 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 0000000000..a611f1536d --- /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/xdriver_xf86-input-joystick.hash b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash index 5fac77e689..feec2d3777 100644 --- a/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash +++ b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-January/002136.html -sha1 61658b8d829fdaed6064c7c26232c3884d359187 xf86-input-joystick-1.6.2.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002742.html +sha256 9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab xf86-input-joystick-1.6.3.tar.bz2 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 index 2696e2b7d2..5bc2a5cafb 100644 --- a/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk +++ b/package/x11r7/xdriver_xf86-input-joystick/xdriver_xf86-input-joystick.mk @@ -4,12 +4,13 @@ # ################################################################################ -XDRIVER_XF86_INPUT_JOYSTICK_VERSION = 1.6.2 +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 xproto_inputproto xproto_randrproto xproto_xproto +XDRIVER_XF86_INPUT_JOYSTICK_AUTORECONF = YES define XDRIVER_XF86_INPUT_JOYSTICK_CONF $(INSTALL) -m 0644 -D \ 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 index 11fcc601d7..eccfa74dc8 100644 --- a/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash +++ b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-April/002559.html -sha256 1ac8ff39bf9da7d2fc7fd6c24515726e8138340c0518ab8c606e008cf93ca211 xf86-input-keyboard-1.8.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002739.html +sha256 f7c900f21752683402992b288d5a2826de7a6c0c0abac2aadd7e8a409e170388 xf86-input-keyboard-1.9.0.tar.bz2 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 index eb2d58287f..01a6859cd4 100644 --- a/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk +++ b/package/x11r7/xdriver_xf86-input-keyboard/xdriver_xf86-input-keyboard.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_INPUT_KEYBOARD_VERSION = 1.8.1 +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 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 0000000000..2f9784c283 --- /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/xdriver_xf86-input-libinput.hash b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash index 6473e4c823..0d35294937 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash @@ -1,2 +1,2 @@ -# From https://lists.x.org/archives/xorg/2016-April/057997.html -sha256 974cabbd6b658ce809b534f6410e2bbbc615f06210f9cc9e48e6d77149134a77 xf86-input-libinput-0.18.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-February/002776.html +sha256 ddcb07350aed59b2996a92a1b4ff64d1c0b0c86a3f0ddca15b2b1c8c8bb13628 xf86-input-libinput-0.24.0.tar.bz2 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 index 056bfb0555..e293b4e80b 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk @@ -4,11 +4,12 @@ # ################################################################################ -XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 0.18.0 +XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 0.24.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 xproto_inputproto xproto_xproto +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 0000000000..d5f97f98c1 --- /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/xdriver_xf86-input-mouse.hash b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash index 5a62d13178..caba427b22 100644 --- a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2014-August/002471.html -sha256 3485d375779c08406f0789feedde15933dc703158a086ddac638598f479fc5ce xf86-input-mouse-1.9.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002740.html +sha256 f425d5b05c6ab412a27e0a1106bb83f9e2662b307210abbe48270892387f4b2f xf86-input-mouse-1.9.2.tar.bz2 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 index 0e19467d5d..5bcbeb70fd 100644 --- a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk @@ -4,11 +4,12 @@ # ################################################################################ -XDRIVER_XF86_INPUT_MOUSE_VERSION = 1.9.1 +XDRIVER_XF86_INPUT_MOUSE_VERSION = 1.9.2 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 xproto_inputproto xproto_randrproto xproto_xproto +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 0000000000..62950b0667 --- /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/xdriver_xf86-input-synaptics.hash b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash index 3cb0758089..2c31600b0a 100644 --- a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-November/002652.html -sha256 d39f100c74f3673778b53f17bab7690161925e25dd998a15dd8cc69b52e83f01 xf86-input-synaptics-1.8.3.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002744.html +sha256 afba3289d7a40217a19d90db98ce181772f9ca6d77e1898727b0afcf02073b5a xf86-input-synaptics-1.9.0.tar.bz2 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 index b6ade4c86e..6bd9cc49c5 100644 --- a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk @@ -4,11 +4,12 @@ # ################################################################################ -XDRIVER_XF86_INPUT_SYNAPTICS_VERSION = 1.8.3 +XDRIVER_XF86_INPUT_SYNAPTICS_VERSION = 1.9.0 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 xproto_inputproto xproto_randrproto xproto_xproto mtdev +XDRIVER_XF86_INPUT_SYNAPTICS_AUTORECONF = YES $(eval $(autotools-package)) 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 index 6754fb5a99..32ff1646d1 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash @@ -1,2 +1,2 @@ -# From https://lists.x.org/archives/xorg-announce/2016-April/002686.html -sha256 69f5d0ded9f4d5ce529099b6b581268e8f4dcff5608f1441d4ebc110ebc57931 xf86-video-amdgpu-1.1.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002741.html +sha256 275b1aac5f127f55ba3d7480a1df89eace1d02650e24e46908067fc875e76c8f xf86-video-amdgpu-1.2.0.tar.bz2 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 index 45177b2998..d858e14096 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_AMDGPU_VERSION = 1.1.0 +XDRIVER_XF86_VIDEO_AMDGPU_VERSION = 1.2.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 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 index 6eb3508c54..fe5ae0ea70 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash @@ -1,2 +1,2 @@ -# From https://lists.x.org/archives/xorg-announce/2016-April/002684.html -sha256 844d1c577b145c90dc8ef027678f0c27f554363f782cd696a3aea26415b2c1c3 xf86-video-ati-7.7.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002738.html +sha256 401f5de772928f3dc4ce43a885adb0a47a2f61aa4a9e45d2ab3d184136a9d6fa xf86-video-ati-7.8.0.tar.bz2 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 index 29a0d2f59b..ea701672c2 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_ATI_VERSION = 7.7.0 +XDRIVER_XF86_VIDEO_ATI_VERSION = 7.8.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 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 index 31cba2cb45..f26ddd4b5f 100644 --- a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-September/002318.html -sha256 56f84fcbc515685529ad8e10bca1072731d9c096b97c5d35ddc95cd589b98680 xf86-video-dummy-0.3.7.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-December/002751.html +sha256 3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9 xf86-video-dummy-0.3.8.tar.bz2 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 index 58d9925f3e..fff1495ef5 100644 --- a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_DUMMY_VERSION = 0.3.7 +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 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 0000000000..0370216283 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f xdriver_xf86-video-fbturbo-0.4.0.tar.gz 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 index b05983fd0c..8c567cbb3d 100644 --- a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2016-February/002673.html -sha256 d6ece9a862a68be3cdf86a87e0e1ba5e199168b8d075129646638f53649ba9e8 xf86-video-geode-2.11.18.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-December/002750.html +sha256 c6694c21ee3d9560f6e925925ef1d3818b1988e899b6a0592dbae597c87ac97e xf86-video-geode-2.11.19.tar.bz2 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 index b882f1f857..9138abdbee 100644 --- a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_GEODE_VERSION = 2.11.18 +XDRIVER_XF86_VIDEO_GEODE_VERSION = 2.11.19 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 diff --git a/package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch b/package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch deleted file mode 100644 index 635600abbf..0000000000 --- a/package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Tue, 25 Sep 2012 12:54:38 +0000 -Subject: Remove mibstore.h - -Signed-off-by: Adam Jackson ---- -Fetch from: -http://cgit.freedesktop.org/xorg/driver/xf86-video-glint/commit/?id=073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c - -Signed-off-by: Bernd Kuhls - -diff --git a/src/glint_driver.c b/src/glint_driver.c -index b6d20a9..aa78516 100644 ---- a/src/glint_driver.c -+++ b/src/glint_driver.c -@@ -52,8 +52,6 @@ - #include "compiler.h" - #include "mipointer.h" - --#include "mibstore.h" -- - #include "pm3_regs.h" - #include "glint_regs.h" - #include "IBM.h" -@@ -2904,7 +2902,6 @@ GLINTScreenInit(SCREEN_INIT_ARGS_DECL) - } - } - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - xf86SetSilkenMouse(pScreen); - --- -cgit v0.9.0.2-2-gbebe diff --git a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash index ad3fbaa760..f4e42bf4c6 100644 --- a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash +++ b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2012-July/002011.html -sha256 657f883bb3a4e4278399eba73840862c3642706ae8b0a4798ec97a31b3524221 xf86-video-glint-1.2.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002759.html +sha256 852833ab2ea9ce519195dfd061a6c7aa5945a093cdc19546d1e9e69df7d577d2 xf86-video-glint-1.2.9.tar.bz2 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 index 76c3da1cab..52bc567e59 100644 --- a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk +++ b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint.mk @@ -4,12 +4,11 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_GLINT_VERSION = 1.2.8 +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_AUTORECONF = YES XDRIVER_XF86_VIDEO_GLINT_DEPENDENCIES = xserver_xorg-server libdrm xproto_fontsproto xproto_glproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86dgaproto xproto_xf86driproto xproto_xproto $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/0001-Remove-dix-internal-header-usage.patch b/package/x11r7/xdriver_xf86-video-imx-viv/0001-Remove-dix-internal-header-usage.patch deleted file mode 100644 index f146ba338c..0000000000 --- a/package/x11r7/xdriver_xf86-video-imx-viv/0001-Remove-dix-internal-header-usage.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 80c419dddf6483873503d90694c4b4ae34ffa5e4 Mon Sep 17 00:00:00 2001 -From: Otavio Salvador -Date: Wed, 2 Dec 2015 13:50:57 +0000 -Subject: [PATCH] Remove 'dix' internal header usage -Organization: O.S. Systems Software LTDA. - -The 'swaprep.h' is an internal Xorg header and is not being installed -anymore. The swap features are provided by the 'misc.h' header now. - -Upstream-Status: Pending - -Signed-off-by: Otavio Salvador ---- - EXA/src/vivante_extension/vivante_ext.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/EXA/src/vivante_extension/vivante_ext.c b/EXA/src/vivante_extension/vivante_ext.c -index 0d1085b..1ffbb1b 100644 ---- a/EXA/src/vivante_extension/vivante_ext.c -+++ b/EXA/src/vivante_extension/vivante_ext.c -@@ -40,7 +40,6 @@ - #include "cursorstr.h" - #include "scrnintstr.h" - #include "servermd.h" --#include "swaprep.h" - #include "drm.h" - #include "xf86Module.h" - #include "globals.h" --- -2.1.4 - diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/0001-Stop-using-Git-to-write-local-version.patch b/package/x11r7/xdriver_xf86-video-imx-viv/0001-Stop-using-Git-to-write-local-version.patch new file mode 100644 index 0000000000..2117e725cd --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx-viv/0001-Stop-using-Git-to-write-local-version.patch @@ -0,0 +1,90 @@ +From 69a92f4576a1e789ba2fcf957164d2c4013020c5 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Wed, 2 Dec 2015 13:36:25 +0000 +Subject: [PATCH] Stop using Git to write local version +Organization: O.S. Systems Software LTDA. + +The standard version does not use a Git repository so we should not +use Git to identify the commit of the build as it can end getting the +version from a wrong repository and can be misleading. + +Upstream-Status: Pending + +Signed-off-by: Otavio Salvador +[Downloaded from +https://github.com/Freescale/meta-fsl-arm/blob/master/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/Stop-using-Git-to-write-local-version.patch] +Signed-off-by: Andrew Webster +--- + EXA/src/makefile.tc | 6 +++--- + FslExt/src/makefile.tc | 6 +++--- + util/autohdmi/makefile.tc | 6 +++--- + util/pandisplay/makefile.tc | 6 +++--- + 4 files changed, 12 insertions(+), 12 deletions(-) + +diff --git a/EXA/src/makefile.tc b/EXA/src/makefile.tc +index 0b9a9e6..ec6e68d 100644 +--- a/EXA/src/makefile.tc ++++ b/EXA/src/makefile.tc +@@ -52,8 +52,8 @@ prefix ?= /usr + sysroot ?= / + + # get git commit number +-COMMITNR := `git log -n 1 --format=%H` +-DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` +-LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" ++#COMMITNR := `git log -n 1 --format=%H` ++#DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` ++#LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" + + +diff --git a/FslExt/src/makefile.tc b/FslExt/src/makefile.tc +index 0b9a9e6..ec6e68d 100644 +--- a/FslExt/src/makefile.tc ++++ b/FslExt/src/makefile.tc +@@ -52,8 +52,8 @@ prefix ?= /usr + sysroot ?= / + + # get git commit number +-COMMITNR := `git log -n 1 --format=%H` +-DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` +-LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" ++#COMMITNR := `git log -n 1 --format=%H` ++#DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` ++#LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" + + +diff --git a/util/autohdmi/makefile.tc b/util/autohdmi/makefile.tc +index c9de0a6..d0a468c 100644 +--- a/util/autohdmi/makefile.tc ++++ b/util/autohdmi/makefile.tc +@@ -64,8 +64,8 @@ prefix ?= /usr + sysroot ?= / + + # get git commit number +-COMMITNR := `git log -n 1 --format=%H` +-DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` +-LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" ++#COMMITNR := `git log -n 1 --format=%H` ++#DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` ++#LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" + + +diff --git a/util/pandisplay/makefile.tc b/util/pandisplay/makefile.tc +index 28732b9..bf54c20 100644 +--- a/util/pandisplay/makefile.tc ++++ b/util/pandisplay/makefile.tc +@@ -64,8 +64,8 @@ prefix ?= /usr + sysroot ?= / + + # get git commit number +-COMMITNR := `git log -n 1 --format=%H` +-DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` +-LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" ++#COMMITNR := `git log -n 1 --format=%H` ++#DIRTY := `git diff-index --quiet HEAD || echo '-dirty'` ++#LOCAL_CFLAGS += -DCOMMIT="${COMMITNR}${DIRTY}" + + +-- +2.1.4 + 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 index 9a165697bb..7d7da84e6b 100644 --- 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 @@ -1,2 +1 @@ -# locally computed -sha256 3effaf42bde64da8fad2dfe0dcef12d1cfbbbe189511dbd4612442129fd832cc xserver-xorg-video-imx-viv-5.0.11.p7.4.tar.gz +sha256 3eed38193e31bb5ba8d2c817bd9b4f6e2fe7540d2cab36de9098cb4f11946a9f xserver-xorg-video-imx-viv-5.0.11.p8.6.tar.gz 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 index a1b32b1c56..2a3e99745a 100644 --- 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 @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = 5.0.11.p7.4 +XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = 5.0.11.p8.6 XDRIVER_XF86_VIDEO_IMX_VIV_SITE = $(FREESCALE_IMX_SITE) XDRIVER_XF86_VIDEO_IMX_VIV_SOURCE = xserver-xorg-video-imx-viv-$(XDRIVER_XF86_VIDEO_IMX_VIV_VERSION).tar.gz XDRIVER_XF86_VIDEO_IMX_VIV_DEPENDENCIES = imx-gpu-viv xserver_xorg-server \ diff --git a/package/x11r7/xdriver_xf86-video-imx/Config.in b/package/x11r7/xdriver_xf86-video-imx/Config.in index bb98e5adcb..398d49e1f0 100644 --- a/package/x11r7/xdriver_xf86-video-imx/Config.in +++ b/package/x11r7/xdriver_xf86-video-imx/Config.in @@ -23,7 +23,7 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_IMX Option "fbdev" "/dev/fb0" EndSection -comment "xf86-video-imx needs an EABI toolchain w/ (e)glibc" +comment "xf86-video-imx needs an EABI toolchain w/ glibc" depends on BR2_arm depends on !BR2_ARM_EABI || !BR2_TOOLCHAIN_USES_GLIBC 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 0000000000..e2a36c5563 --- /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-intel/xdriver_xf86-video-intel.mk b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk index bf4f7a64ba..29228bbf77 100644 --- a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk +++ b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk @@ -4,15 +4,17 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_INTEL_VERSION = 82293901da23d79fd074e5255fda5c95405d52de +XDRIVER_XF86_VIDEO_INTEL_VERSION = 9ac7a3370ab265d4cbdbbf3dc588af88c37048e1 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 -# this fixes a getline-related compilation error in src/sna/kgem.c +# -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" + CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE -O2" XDRIVER_XF86_VIDEO_INTEL_CONF_OPTS = \ --disable-xvmc \ 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 index 081577d4ab..0187e6fbb5 100644 --- a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash +++ b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-February/002533.html -sha256 48c6690b6751c76f53de64f8dbeaa9d6c62dbcfe890c768fd87167951247d44f xf86-video-mga-1.6.4.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002765.html +sha256 b663cd8e6364f7c4e2637b9fcab9861d0e3971518c73b00d213f6545a1289422 xf86-video-mga-1.6.5.tar.bz2 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 index dcf751ccfd..065a68ea67 100644 --- a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk +++ b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_MGA_VERSION = 1.6.4 +XDRIVER_XF86_VIDEO_MGA_VERSION = 1.6.5 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 @@ -12,4 +12,8 @@ XDRIVER_XF86_VIDEO_MGA_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_MGA_AUTORECONF = YES XDRIVER_XF86_VIDEO_MGA_DEPENDENCIES = xserver_xorg-server libdrm xproto_fontsproto xproto_glproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86driproto xproto_xproto +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-nouveau/xdriver_xf86-video-nouveau.hash b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash index 9633641cd2..cfba3a00ba 100644 --- a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash @@ -1,2 +1,4 @@ -# From http://lists.x.org/archives/xorg-announce/2015-December/002662.html -sha256 0ea057ad7fc31caba2d4e46c7e418fe2b3c762b04fb8d382f53383397fd8391e xf86-video-nouveau-1.0.12.tar.bz2 +# Locally computed +sha256 6d9242ba139c3df7afefffb455573b52f4427920b978161c00483c64a6da47cb xf86-video-nouveau-1.0.13.tar.bz2 +# From http://www.linuxfromscratch.org/blfs/view/svn/x/x7driver.html#xorg-nouveau-driver +md5 2d7b2917ef18c6e97a6f3817c3e9387b xf86-video-nouveau-1.0.13.tar.bz2 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 index af84e79667..70a7d87991 100644 --- a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_NOUVEAU_VERSION = 1.0.12 +XDRIVER_XF86_VIDEO_NOUVEAU_VERSION = 1.0.13 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 diff --git a/package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch deleted file mode 100644 index e71418bc9e..0000000000 --- a/package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch +++ /dev/null @@ -1,86 +0,0 @@ -From fc78fe98222b0204b8a2872a529763d6fe5048da Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Tue, 25 Sep 2012 12:54:49 +0000 -Subject: Remove mibstore.h - -Signed-off-by: Adam Jackson ---- -Fetch from: -http://cgit.freedesktop.org/xorg/driver/xf86-video-nv/commit/?id=fc78fe98222b0204b8a2872a529763d6fe5048da - -Signed-off-by: Bernd Kuhls - -diff --git a/src/g80_driver.c b/src/g80_driver.c -index cc4e197..719b96c 100644 ---- a/src/g80_driver.c -+++ b/src/g80_driver.c -@@ -34,7 +34,6 @@ - #include - #endif - #include --#include - #include - #include - #include -@@ -833,7 +832,6 @@ G80ScreenInit(SCREEN_INIT_ARGS_DECL) - } - } - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - xf86SetSilkenMouse(pScreen); - -diff --git a/src/nv_driver.c b/src/nv_driver.c -index 6dad6e5..8f35334 100644 ---- a/src/nv_driver.c -+++ b/src/nv_driver.c -@@ -2550,7 +2550,6 @@ NVScreenInit(SCREEN_INIT_ARGS_DECL) - if (!pNv->NoAccel) - NVAccelInit(pScreen); - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - xf86SetSilkenMouse(pScreen); - -diff --git a/src/nv_include.h b/src/nv_include.h -index fb190bf..f174eef 100644 ---- a/src/nv_include.h -+++ b/src/nv_include.h -@@ -24,9 +24,6 @@ - /* All drivers initialising the SW cursor need this */ - #include "mipointer.h" - --/* All drivers implementing backing store need this */ --#include "mibstore.h" -- - #include "micmap.h" - - #include "xf86DDC.h" -diff --git a/src/riva_driver.c b/src/riva_driver.c -index e0667ef..759501e 100644 ---- a/src/riva_driver.c -+++ b/src/riva_driver.c -@@ -1168,7 +1168,6 @@ RivaScreenInit(SCREEN_INIT_ARGS_DECL) - if (!pRiva->NoAccel) - RivaAccelInit(pScreen); - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - xf86SetSilkenMouse(pScreen); - -diff --git a/src/riva_include.h b/src/riva_include.h -index f2c5302..c7aeef7 100644 ---- a/src/riva_include.h -+++ b/src/riva_include.h -@@ -22,9 +22,6 @@ - /* All drivers initialising the SW cursor need this */ - #include "mipointer.h" - --/* All drivers implementing backing store need this */ --#include "mibstore.h" -- - #include "micmap.h" - - #include "xf86DDC.h" --- -cgit v0.9.0.2-2-gbebe diff --git a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash index 8083ea29d1..fe91307a62 100644 --- a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash +++ b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2012-July/002030.html -sha256 8395f65501f16f9cbaae8f598b02c6f18e78f4d3d30a08cb8d547dc2e00c10bf xf86-video-nv-2.1.20.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002761.html +sha256 1f98649e6ff0e8214b9d5dcac661f1d004be8e73823d8247b9c7025fd81db32d xf86-video-nv-2.1.21.tar.bz2 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 index 655bee928e..430ce4a1d1 100644 --- a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk +++ b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_NV_VERSION = 2.1.20 +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 diff --git a/package/x11r7/xdriver_xf86-video-openchrome/Config.in b/package/x11r7/xdriver_xf86-video-openchrome/Config.in index e2bb6c4903..c970b9e252 100644 --- a/package/x11r7/xdriver_xf86-video-openchrome/Config.in +++ b/package/x11r7/xdriver_xf86-video-openchrome/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_OPENCHROME bool "xf86-video-openchrome" - depends on BR2_PACKAGE_MESA3D + depends on BR2_PACKAGE_MESA3D_DRI_DRIVER select BR2_PACKAGE_LIBDRM select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXCOMPOSITE @@ -17,5 +17,5 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_OPENCHROME https://www.freedesktop.org/wiki/Openchrome/ -comment "xf86-video-openchrome needs mesa3d" - depends on !BR2_PACKAGE_MESA3D +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 index b3aef580ba..2d29fae3a7 100644 --- a/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash +++ b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash @@ -1,2 +1,2 @@ -# Locally computed -sha256 73e7966d01d0d644d3b9204e8bfc106cb99069c58e981626e7352f2693e3e927 xf86-video-openchrome-0.4.0.tar.bz2 +# From https://lists.freedesktop.org/archives/openchrome-devel/2016-July/002890.html +sha1 9c7ad349de6dd350252ccda8da56fa1e2a6afa32 xf86-video-openchrome-0.5.0.tar.bz2 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 index 83c12b2055..9ab032b6bc 100644 --- a/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk +++ b/package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_OPENCHROME_VERSION = 0.4.0 +XDRIVER_XF86_VIDEO_OPENCHROME_VERSION = 0.5.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 diff --git a/package/x11r7/xdriver_xf86-video-qxl/Config.in b/package/x11r7/xdriver_xf86-video-qxl/Config.in index 5f05f6876b..967ecaf527 100644 --- a/package/x11r7/xdriver_xf86-video-qxl/Config.in +++ b/package/x11r7/xdriver_xf86-video-qxl/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_QXL 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_XPROTO_FONTSPROTO select BR2_PACKAGE_XPROTO_XPROTO help 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 index 1648c29c64..7a09821084 100644 --- a/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash +++ b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/spice-devel/2015-April/019356.html -sha256 e57ad22f0b1daf8979e722be0cc38d351bfcc2e41568edc566d2bade5a621105 xf86-video-qxl-0.1.4.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-December/002753.html +sha256 b18682e04503c6326f7bf7190f3ee50a3d4d69758a2a3cc9af102a6b3f114c92 xf86-video-qxl-0.1.5.tar.bz2 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 index ddc4191a47..f410f8e95f 100644 --- a/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk +++ b/package/x11r7/xdriver_xf86-video-qxl/xdriver_xf86-video-qxl.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_QXL_VERSION = 0.1.4 +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 @@ -29,4 +29,10 @@ 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/xdriver_xf86-video-r128.hash b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash index f5c92ab1c3..b6d8bd8197 100644 --- a/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash +++ b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2016-January/002670.html -sha256 5ebfef49831c9b12f7b7011c8314010596ac2ab0d5b9b7cfd17908e93d7de4ea xf86-video-r128-6.10.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002764.html +sha256 84da21517f3af7617fdf341e84ccb22444d6cdab1647e4808fa631528b9a77de xf86-video-r128-6.10.2.tar.bz2 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 index 5833efcfa7..344b48415c 100644 --- a/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk +++ b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_R128_VERSION = 6.10.1 +XDRIVER_XF86_VIDEO_R128_VERSION = 6.10.2 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 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 index 25afb13133..4f155359a1 100644 --- a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-May/002603.html -sha256 fdcea4a86532bceb50095eaf0fe2f38bbfa160e98463b815f4b549eb9985fa63 xf86-video-savage-2.3.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002760.html +sha256 2c93c4db1f71e725dda0caee5821253129d4b52d7aa0fd720593e7769bceec86 xf86-video-savage-2.3.9.tar.bz2 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 index dc5644a3c4..ae1dea34ae 100644 --- a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_SAVAGE_VERSION = 2.3.8 +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 @@ -12,4 +12,8 @@ XDRIVER_XF86_VIDEO_SAVAGE_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_SAVAGE_AUTORECONF = YES XDRIVER_XF86_VIDEO_SAVAGE_DEPENDENCIES = xserver_xorg-server libdrm xproto_fontsproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86driproto xproto_xproto +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/xdriver_xf86-video-siliconmotion.hash b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash index 42f39d244a..819698c611 100644 --- a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-May/002604.html -sha256 e9d449a9fd9e58b4e018447b6c64005f7874cffb1777e513ac9fc41a86071beb xf86-video-siliconmotion-1.7.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002763.html +sha256 d0f3c691e71108d27a061beb62bf78b36ec35bd755905692734dd68cfb3359bc xf86-video-siliconmotion-1.7.9.tar.bz2 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 index f8ea403c8c..53b19f9fea 100644 --- a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_SILICONMOTION_VERSION = 1.7.8 +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 diff --git a/package/x11r7/xdriver_xf86-video-sis/0007-xi.patch b/package/x11r7/xdriver_xf86-video-sis/0003-xi.patch similarity index 100% rename from package/x11r7/xdriver_xf86-video-sis/0007-xi.patch rename to package/x11r7/xdriver_xf86-video-sis/0003-xi.patch 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 index dfc78143ef..98ea8b1e4c 100644 --- a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-August/002628.html -sha256 c8f3f2577f69334dfcc4bf96477dce45161170555f3abdfa105599e61bc7d3fe xf86-video-sis-0.10.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002756.html +sha256 5226b7407c601afa32d6cbf155f9182da95d92cdc89c1f83471e1927e552c10d xf86-video-sis-0.10.9.tar.bz2 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 index b1fce837e8..833246e35e 100644 --- a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_SIS_VERSION = 0.10.8 +XDRIVER_XF86_VIDEO_SIS_VERSION = 0.10.9 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 @@ -12,4 +12,8 @@ XDRIVER_XF86_VIDEO_SIS_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_SIS_AUTORECONF = YES XDRIVER_XF86_VIDEO_SIS_DEPENDENCIES = xserver_xorg-server libdrm xproto_fontsproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86dgaproto xproto_xf86driproto xproto_xineramaproto xproto_xproto +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/xdriver_xf86-video-tdfx.hash b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash index 1cdef2ab81..84885596f6 100644 --- a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash +++ b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-February/002536.html -sha256 3a8a88867c40ad61f1c9a09ffd7ac64102fa821685855d50ce66c7603dcc6d37 xf86-video-tdfx-1.4.6.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002755.html +sha256 4cf48ee14ead52b23493c3dce5032496fd68bf1d000170bb138730497e212a42 xf86-video-tdfx-1.4.7.tar.bz2 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 index 4d0ba60b6f..471e6cf4d2 100644 --- a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk +++ b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx.mk @@ -4,12 +4,25 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_TDFX_VERSION = 1.4.6 +XDRIVER_XF86_VIDEO_TDFX_VERSION = 1.4.7 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 = xserver_xorg-server libdrm xproto_fontsproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86driproto xproto_xproto +XDRIVER_XF86_VIDEO_TDFX_DEPENDENCIES = \ + libdrm \ + xproto_fontsproto \ + xproto_randrproto \ + xproto_renderproto \ + xproto_videoproto \ + xproto_xextproto \ + xproto_xf86driproto \ + xproto_xproto \ + 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-trident/xdriver_xf86-video-trident.hash b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash index e92c948a8e..04a559ac5d 100644 --- a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash +++ b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002558.html -sha256 ecd518de627a0d49e17c158bfc72ab657386c6907c91ef89fa09332558e413ae xf86-video-trident-1.3.7.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002762.html +sha256 9e5119d974c3e2221994542d35e3a0b3426a441869ddd6dd08a84f324856ac3f xf86-video-trident-1.3.8.tar.bz2 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 index a136e8777d..727744c532 100644 --- a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk +++ b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_TRIDENT_VERSION = 1.3.7 +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 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 index 10d31d02fc..8d948a7d4c 100644 --- a/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash +++ b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-January/002521.html -sha256 3c1d244e4b1b77e92126957965cdc9fb82de4c215c0706a3a8aaff6939e4a0cc xf86-video-vmware-13.1.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-November/002743.html +sha256 e2f7f7101fba7f53b268e7a25908babbf155b3984fb5268b3d244eb6c11bf62b xf86-video-vmware-13.2.1.tar.bz2 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 index ea4dd48215..ef262f8942 100644 --- a/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk +++ b/package/x11r7/xdriver_xf86-video-vmware/xdriver_xf86-video-vmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_VMWARE_VERSION = 13.1.0 +XDRIVER_XF86_VIDEO_VMWARE_VERSION = 13.2.1 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 diff --git a/package/x11r7/xfont_encodings/xfont_encodings.mk b/package/x11r7/xfont_encodings/xfont_encodings.mk index 568dbcbde8..9c5c9f30bf 100644 --- a/package/x11r7/xfont_encodings/xfont_encodings.mk +++ b/package/x11r7/xfont_encodings/xfont_encodings.mk @@ -11,6 +11,8 @@ 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/xfont_font-adobe-100dpi.hash b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash new file mode 100644 index 0000000000..04809f5dda --- /dev/null +++ b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 b2c08433eab5cb202470aa9f779efefce8d9cab2534f34f3aa4a31d05671c054 font-adobe-100dpi-1.0.3.tar.bz2 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 0000000000..abd48d6bb6 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c6024a1e4a1e65f413f994dd08b734efd393ce0a502eb465deb77b9a36db4d09 font-adobe-75dpi-1.0.3.tar.bz2 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 0000000000..f20f4a7174 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 d16f5e3f227cc6dd07a160a71f443559682dbc35f1c056a5385085aaec4fada5 font-adobe-utopia-100dpi-1.0.4.tar.bz2 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 0000000000..1a60af6196 --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-75dpi/xfont_font-adobe-utopia-75dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 8732719c61f3661c8bad63804ebfd54fc7de21ab848e9a26a19b1778ef8b5c94 font-adobe-utopia-75dpi-1.0.4.tar.bz2 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 0000000000..4da2a4ff8c --- /dev/null +++ b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 979435105f897a70f8993fa02c8362160b0513366c2ab896965416f96dbb8077 font-adobe-utopia-type1-1.0.4.tar.bz2 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 0000000000..7f1efe8e0b --- /dev/null +++ b/package/x11r7/xfont_font-alias/xfont_font-alias.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 8b453b2aae1cfa8090009ca037037b8c5e333550651d5a158b7264ce1d472c9a font-alias-1.0.3.tar.bz2 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 0000000000..03950039d8 --- /dev/null +++ b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 505d9b12a7093389e67a925dfda6346bde26d114c67f0cdca7aeda6e5d3344f4 font-arabic-misc-1.0.3.tar.bz2 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 0000000000..3a9d4c78b1 --- /dev/null +++ b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 23c07162708e4b79eb33095c8bfa62c783717a9431254bbf44863734ea239481 font-bh-100dpi-1.0.3.tar.bz2 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 0000000000..ee24538e6e --- /dev/null +++ b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 3486aa51ac92c646a448fe899c5c3dae0024b1fef724d5100d52640d1cac721c font-bh-75dpi-1.0.3.tar.bz2 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 0000000000..6e9c7e3c78 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 62a83363c2536095fda49d260d21e0847675676e4e3415054064cbdffa641fbb font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2 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 0000000000..374b8f6f01 --- /dev/null +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 4ac16afbe205480cc5572e2977ea63488c543d05be0ea8e5a94c845a6eebcb31 font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2 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 0000000000..89303dbc91 --- /dev/null +++ b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 761455a297486f3927a85d919b5c948d1d324181d4bea6c95d542504b68a63c1 font-bh-type1-1.0.3.tar.bz2 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 0000000000..09186ae57a --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ebe0d7444e3d7c8da7642055ac2206f0190ee060700d99cd876f8fc9964cb6ce font-bitstream-100dpi-1.0.3.tar.bz2 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 0000000000..7ec889406b --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ba3f5e4610c07bd5859881660753ec6d75d179f26fc967aa776dbb3d5d5cf48e font-bitstream-75dpi-1.0.3.tar.bz2 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 0000000000..7e958b349e --- /dev/null +++ b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 c6ea0569adad2c577f140328dc3302e729cb1b1ea90cd0025caf380625f8a688 font-bitstream-type1-1.0.3.tar.bz2 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 0000000000..7fc295fdc2 --- /dev/null +++ b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 6e8631936157677c77ba032b5c7b1fb3cb2ee872dbcea0444f12cd602cd9212a font-cronyx-cyrillic-1.0.3.tar.bz2 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 0000000000..90a032b7c0 --- /dev/null +++ b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 17363eb35eece2e08144da5f060c70103b59d0972b4f4d77fd84c9a7a2dba635 font-cursor-misc-1.0.3.tar.bz2 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 0000000000..1b4ebe9d9f --- /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-dec-misc/xfont_font-dec-misc.hash b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash new file mode 100644 index 0000000000..50c6136bf5 --- /dev/null +++ b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e19ddf8b5f8de914d81675358fdfe37762e9ce524887cc983adef34f2850ff7b font-dec-misc-1.0.3.tar.bz2 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 0000000000..11aa890877 --- /dev/null +++ b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 fddb28d3db5a07f4b4ca15388488a9680a10e1367a18f358f903b2a608a5d2df font-ibm-type1-1.0.3.tar.bz2 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 0000000000..35324d4350 --- /dev/null +++ b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 5824ab4b485951107dd245b8f7717d2822f1a6dbf6cea98f1ac7f49905c0a867 font-isas-misc-1.0.3.tar.bz2 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 0000000000..c39db36061 --- /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-micro-misc/xfont_font-micro-misc.hash b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash new file mode 100644 index 0000000000..223ca0f86f --- /dev/null +++ b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9a3381c10f32d9511f0ad4179df395914c50779103c16cddf7017f5220ed8db6 font-micro-misc-1.0.3.tar.bz2 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 0000000000..1627112282 --- /dev/null +++ b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e40fe3e3323c62b738550795457ad555c70c008aa91b5912dfd46f8e745f5e60 font-misc-cyrillic-1.0.3.tar.bz2 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 0000000000..c75816a856 --- /dev/null +++ b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 53cb1fd83afdbe7939c0eac34003676ee0e6023216892d98054db90b703c98a5 font-misc-ethiopic-1.0.3.tar.bz2 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 0000000000..7a7ca92ea5 --- /dev/null +++ b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 3721323f13855cf7ca609115a1f7b182491e9b2b9c6e01eb1a2c7f8edd480791 font-misc-meltho-1.0.3.tar.bz2 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 0000000000..fc4ae58712 --- /dev/null +++ b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 b8e77940e4e1769dc47ef1805918d8c9be37c708735832a07204258bacc11794 font-misc-misc-1.1.2.tar.bz2 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 0000000000..45a6fc1be9 --- /dev/null +++ b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 bd5f7adb34367c197773a9801df5bce7b019664941900b2a31fbfe1ff2830f8f font-mutt-misc-1.0.3.tar.bz2 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 0000000000..6da0963d47 --- /dev/null +++ b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e444028656e0767e2eddc6d9aca462b16a2be75a47244dbc199b2c44eca87e5a font-schumacher-misc-1.1.2.tar.bz2 diff --git a/package/x11r7/xfont_font-util/xfont_font-util.mk b/package/x11r7/xfont_font-util/xfont_font-util.mk index 1c43d6a706..36853770ef 100644 --- a/package/x11r7/xfont_font-util/xfont_font-util.mk +++ b/package/x11r7/xfont_font-util/xfont_font-util.mk @@ -11,6 +11,7 @@ XFONT_FONT_UTIL_LICENSE = MIT/BSD-2c 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 diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.hash b/package/x11r7/xkeyboard-config/xkeyboard-config.hash index fad76ed52b..104a5aba1c 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.hash +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2016-January/002671.html -sha256 dec6be44bd31775cdc1ab95bfd75d5f2c0055613eeca8b4e9c6480b183430701 xkeyboard-config-2.17.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-February/002775.html +sha256 d1bfc72553c4e3ef1cd6f13eec0488cf940498b612ab8a0b362e7090c94bc134 xkeyboard-config-2.20.tar.bz2 diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.mk b/package/x11r7/xkeyboard-config/xkeyboard-config.mk index 352c55d974..bdaf0268db 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.mk +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.mk @@ -4,7 +4,7 @@ # ################################################################################ -XKEYBOARD_CONFIG_VERSION = 2.17 +XKEYBOARD_CONFIG_VERSION = 2.20 XKEYBOARD_CONFIG_SOURCE = xkeyboard-config-$(XKEYBOARD_CONFIG_VERSION).tar.bz2 XKEYBOARD_CONFIG_SITE = http://www.x.org/releases/individual/data/xkeyboard-config XKEYBOARD_CONFIG_LICENSE = MIT diff --git a/package/x11r7/xlib_libX11/xlib_libX11.hash b/package/x11r7/xlib_libX11/xlib_libX11.hash index acae656208..aeb0e9d74a 100644 --- a/package/x11r7/xlib_libX11/xlib_libX11.hash +++ b/package/x11r7/xlib_libX11/xlib_libX11.hash @@ -1,3 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002543.html -sha1 6f2aadf8346ee00b7419bd338461c6986e274733 libX11-1.6.3.tar.bz2 -sha256 cf31a7c39f2f52e8ebd0db95640384e63451f9b014eed2bb7f5de03e8adc8111 libX11-1.6.3.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002721.html +sha256 b7c748be3aa16ec2cbd81edc847e9b6ee03f88143ab270fb59f58a044d34e441 libX11-1.6.4.tar.bz2 diff --git a/package/x11r7/xlib_libX11/xlib_libX11.mk b/package/x11r7/xlib_libX11/xlib_libX11.mk index fc19aa1d28..80e89b4830 100644 --- a/package/x11r7/xlib_libX11/xlib_libX11.mk +++ b/package/x11r7/xlib_libX11/xlib_libX11.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBX11_VERSION = 1.6.3 +XLIB_LIBX11_VERSION = 1.6.4 XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.bz2 XLIB_LIBX11_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBX11_LICENSE = MIT @@ -23,6 +23,18 @@ XLIB_LIBX11_DEPENDENCIES = \ xproto_xf86bigfontproto \ host-xproto_xproto +HOST_XLIB_LIBX11_DEPENDENCIES = \ + host-libxcb \ + host-xutil_util-macros \ + host-xlib_xtrans \ + host-xlib_libXau \ + host-xlib_libXdmcp \ + host-xproto_kbproto \ + host-xproto_xproto \ + host-xproto_xextproto \ + host-xproto_inputproto \ + host-xproto_xf86bigfontproto + XLIB_LIBX11_CONF_OPTS = \ --disable-malloc0returnsnull \ --with-xcb \ diff --git a/package/x11r7/xlib_libXau/xlib_libXau.mk b/package/x11r7/xlib_libXau/xlib_libXau.mk index 8ef48e4a7b..1c50cb2e4e 100644 --- a/package/x11r7/xlib_libXau/xlib_libXau.mk +++ b/package/x11r7/xlib_libXau/xlib_libXau.mk @@ -11,6 +11,8 @@ XLIB_LIBXAU_LICENSE = MIT XLIB_LIBXAU_LICENSE_FILES = COPYING XLIB_LIBXAU_INSTALL_STAGING = YES XLIB_LIBXAU_DEPENDENCIES = host-pkgconf xutil_util-macros xproto_xproto +HOST_XLIB_LIBXAU_DEPENDENCIES = \ + host-pkgconf host-xutil_util-macros host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk b/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk index 508b5e21c5..c59c01a51f 100644 --- a/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk +++ b/package/x11r7/xlib_libXcursor/xlib_libXcursor.mk @@ -11,6 +11,9 @@ XLIB_LIBXCURSOR_LICENSE = MIT XLIB_LIBXCURSOR_LICENSE_FILES = COPYING XLIB_LIBXCURSOR_INSTALL_STAGING = YES XLIB_LIBXCURSOR_DEPENDENCIES = xlib_libX11 xlib_libXfixes xlib_libXrender xproto_xproto +HOST_XLIB_LIBXCURSOR_DEPENDENCIES = \ + host-xlib_libX11 host-xlib_libXfixes host-xlib_libXrender \ + host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk index 119c018137..ec1b861b92 100644 --- a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk +++ b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk @@ -11,6 +11,7 @@ XLIB_LIBXDMCP_LICENSE = MIT XLIB_LIBXDMCP_LICENSE_FILES = COPYING XLIB_LIBXDMCP_INSTALL_STAGING = YES XLIB_LIBXDMCP_DEPENDENCIES = xutil_util-macros xproto_xproto +HOST_XLIB_LIBXDMCP_DEPENDENCIES = host-xutil_util-macros host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXfixes/0001-remove-fallback-for-xeatdatawords.patch b/package/x11r7/xlib_libXfixes/0001-remove-fallback-for-xeatdatawords.patch deleted file mode 100644 index cb8c5780a2..0000000000 --- a/package/x11r7/xlib_libXfixes/0001-remove-fallback-for-xeatdatawords.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 1702cdfe45c9bdd7dacfc8f27a49f89fcd1d02c3 Mon Sep 17 00:00:00 2001 -From: Michael Joost -Date: Mon, 18 Nov 2013 16:11:26 +0100 -Subject: Remove fallback for _XEatDataWords, require libX11 1.6 for it - -_XEatDataWords was orignally introduced with the May 2013 security -patches, and in order to ease the process of delivering those, -fallback versions of _XEatDataWords were included in the X extension -library patches so they could be applied to older versions that didn't -have libX11 1.6 yet. Now that we're past that hurdle, we can drop -the fallbacks and just require libX11 1.6 for building new versions -of the extension libraries. - -Reviewed-by: Alan Coopersmith -Signed-off-by: Alan Coopersmith -Signed-off-by: Bernd Kuhls -(downloaded from upstream commit: - https://cgit.freedesktop.org/xorg/lib/libXfixes/commit/?id=1702cdfe45c9bdd7dacfc8f27a49f89fcd1d02c3) -diff --git a/configure.ac b/configure.ac -index f85bd72..2a59af8 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -55,13 +55,7 @@ FIXESEXT_VERSION=[`echo $VERSION | sed 's/^\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/'` - AC_SUBST(FIXESEXT_VERSION) - - # Obtain compiler/linker options for depedencies --PKG_CHECK_MODULES(FIXESEXT, xproto [fixesproto >= $FIXESEXT_VERSION] xextproto x11) -- --# Check for _XEatDataWords function that may be patched into older Xlib releases --SAVE_LIBS="$LIBS" --LIBS="$FIXESEXT_LIBS" --AC_CHECK_FUNCS([_XEatDataWords]) --LIBS="$SAVE_LIBS" -+PKG_CHECK_MODULES(FIXESEXT, xproto [fixesproto >= $FIXESEXT_VERSION] xextproto [x11 >= 1.6]) - - - AC_CONFIG_FILES([Makefile -diff --git a/src/Xfixesint.h b/src/Xfixesint.h -index 7bf5bfd..8a4d5fd 100644 ---- a/src/Xfixesint.h -+++ b/src/Xfixesint.h -@@ -60,18 +60,4 @@ XFixesFindDisplay (Display *dpy); - #define XFixesSimpleCheckExtension(dpy,i) \ - if (!XFixesHasExtension(i)) { return; } - --#ifndef HAVE__XEATDATAWORDS --#include /* for LONG64 on 64-bit platforms */ --#include -- --static inline void _XEatDataWords(Display *dpy, unsigned long n) --{ --# ifndef LONG64 -- if (n >= (ULONG_MAX >> 2)) -- _XIOError(dpy); --# endif -- _XEatData (dpy, n << 2); --} --#endif -- - #endif /* _XFIXESINT_H_ */ --- -cgit v0.10.2 - diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash index 291c4bdd8b..d96e5c6a70 100644 --- a/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-May/002227.html -sha256 63bec085084fa3caaee5180490dd871f1eb2020ba9e9b39a30f93693ffc34767 libXfixes-5.0.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002722.html +sha256 de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6 libXfixes-5.0.3.tar.bz2 diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk index aebc9c47f4..b7d835bb30 100644 --- a/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk @@ -4,15 +4,16 @@ # ################################################################################ -XLIB_LIBXFIXES_VERSION = 5.0.1 +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 -# 0001-remove-fallback-for-xeatdatawords.patch -XLIB_LIBXFIXES_AUTORECONF = YES XLIB_LIBXFIXES_INSTALL_STAGING = YES XLIB_LIBXFIXES_DEPENDENCIES = xproto_fixesproto xlib_libX11 xproto_xextproto xproto_xproto +HOST_XLIB_LIBXFIXES_DEPENDENCIES = \ + host-xproto_fixesproto host-xlib_libX11 host-xproto_xextproto \ + host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXfont/xlib_libXfont.hash b/package/x11r7/xlib_libXfont/xlib_libXfont.hash index 9543637b3e..6db8339ce4 100644 --- a/package/x11r7/xlib_libXfont/xlib_libXfont.hash +++ b/package/x11r7/xlib_libXfont/xlib_libXfont.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002551.html -sha256 b70898527c73f9758f551bbab612af611b8a0962202829568d94f3edf4d86098 libXfont-1.5.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-August/002702.html +sha256 02945ea68da447102f3e6c2b896c1d2061fd115de99404facc2aca3ad7010d71 libXfont-1.5.2.tar.bz2 diff --git a/package/x11r7/xlib_libXfont/xlib_libXfont.mk b/package/x11r7/xlib_libXfont/xlib_libXfont.mk index adc22b4df7..422c01d152 100644 --- a/package/x11r7/xlib_libXfont/xlib_libXfont.mk +++ b/package/x11r7/xlib_libXfont/xlib_libXfont.mk @@ -4,16 +4,21 @@ # ################################################################################ -XLIB_LIBXFONT_VERSION = 1.5.1 +XLIB_LIBXFONT_VERSION = 1.5.2 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_AUTORECONF = YES XLIB_LIBXFONT_INSTALL_STAGING = YES -XLIB_LIBXFONT_DEPENDENCIES = freetype xlib_libfontenc xlib_xtrans xproto_fontsproto xproto_xproto xfont_encodings -XLIB_LIBXFONT_CONF_OPTS = --disable-devel-docs +XLIB_LIBXFONT_DEPENDENCIES = freetype xlib_libfontenc xlib_xtrans xproto_fontsproto xproto_xproto xfont_encodings + +HOST_XLIB_LIBXFONT_DEPENDENCIES = \ + host-freetype host-xlib_libfontenc host-xlib_xtrans \ + host-xproto_fontsproto host-xproto_xproto host-xfont_encodings + +XLIB_LIBXFONT_CONF_OPTS = --disable-devel-docs HOST_XLIB_LIBXFONT_CONF_OPTS = --disable-devel-docs ifeq ($(BR2_microblaze),y) diff --git a/package/x11r7/xlib_libXfont2/Config.in b/package/x11r7/xlib_libXfont2/Config.in new file mode 100644 index 0000000000..6cba46586b --- /dev/null +++ b/package/x11r7/xlib_libXfont2/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_XLIB_LIBXFONT2 + bool "libXfont2" + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_XLIB_LIBFONTENC + select BR2_PACKAGE_XLIB_XTRANS + select BR2_PACKAGE_XPROTO_FONTSPROTO + select BR2_PACKAGE_XPROTO_XPROTO + select BR2_PACKAGE_XFONT_ENCODINGS + 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 0000000000..81a3c9f1ea --- /dev/null +++ b/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash @@ -0,0 +1,2 @@ +# From https://lists.x.org/archives/xorg-announce/2015-December/002663.html +sha256 e9fbbb475ddd171b3a6a54b989cbade1f6f874fc35d505ebc5be426bc6e4db7e libXfont2-2.0.1.tar.bz2 diff --git a/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk b/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk new file mode 100644 index 0000000000..fef1e68323 --- /dev/null +++ b/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# xlib_libXfont2 +# +################################################################################ + +XLIB_LIBXFONT2_VERSION = 2.0.1 +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_INSTALL_STAGING = YES +XLIB_LIBXFONT2_DEPENDENCIES = \ + freetype \ + xlib_libfontenc \ + xlib_xtrans \ + xproto_fontsproto \ + xproto_xproto \ + xfont_encodings + +HOST_XLIB_LIBXFONT2_DEPENDENCIES = \ + host-freetype \ + host-xlib_libfontenc \ + host-xlib_xtrans \ + host-xproto_fontsproto \ + host-xproto_xproto \ + host-xfont_encodings + +XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs +HOST_XLIB_LIBXFONT2_CONF_OPTS = --disable-devel-docs + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libXi/xlib_libXi.hash b/package/x11r7/xlib_libXi/xlib_libXi.hash index 28eb77e115..9f2c3e30b7 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.hash +++ b/package/x11r7/xlib_libXi/xlib_libXi.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-December/002664.html -sha256 1f32a552cec0f056c0260bdb32e853cec0673d2f40646ce932ad5a9f0205b7ac libXi-1.7.6.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002768.html +sha256 c2e6b8ff84f9448386c1b5510a5cf5a16d788f76db018194dacdc200180faf45 libXi-1.7.9.tar.bz2 diff --git a/package/x11r7/xlib_libXi/xlib_libXi.mk b/package/x11r7/xlib_libXi/xlib_libXi.mk index 54c9af4576..d593c1e95a 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.mk +++ b/package/x11r7/xlib_libXi/xlib_libXi.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXI_VERSION = 1.7.6 +XLIB_LIBXI_VERSION = 1.7.9 XLIB_LIBXI_SOURCE = libXi-$(XLIB_LIBXI_VERSION).tar.bz2 XLIB_LIBXI_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXI_LICENSE = MIT diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.hash b/package/x11r7/xlib_libXpm/xlib_libXpm.hash index 22c9fc62fa..d94a902682 100644 --- a/package/x11r7/xlib_libXpm/xlib_libXpm.hash +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/xorg/2013-September/056010.html -sha256 c5bdafa51d1ae30086fac01ab83be8d47fe117b238d3437f8e965434090e041c libXpm-3.5.11.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-December/002752.html +sha256 fd6a6de3da48de8d1bb738ab6be4ad67f7cb0986c39bd3f7d51dd24f7854bdec libXpm-3.5.12.tar.bz2 diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.mk b/package/x11r7/xlib_libXpm/xlib_libXpm.mk index 997ef958e9..c8c5496514 100644 --- a/package/x11r7/xlib_libXpm/xlib_libXpm.mk +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXPM_VERSION = 3.5.11 +XLIB_LIBXPM_VERSION = 3.5.12 XLIB_LIBXPM_SOURCE = libXpm-$(XLIB_LIBXPM_VERSION).tar.bz2 XLIB_LIBXPM_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXPM_LICENSE = MIT diff --git a/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash b/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash index e4b86a0120..84a50cb5de 100644 --- a/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash +++ b/package/x11r7/xlib_libXrandr/xlib_libXrandr.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-May/002606.html -sha256 6f864959b7fc35db11754b270d71106ef5b5cf363426aa58589cb8ac8266de58 libXrandr-1.5.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002724.html +sha256 1ff9e7fa0e4adea912b16a5f0cfa7c1d35b0dcda0e216831f7715c8a3abcf51a libXrandr-1.5.1.tar.bz2 diff --git a/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk b/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk index 5abd8b1d24..0fd298c50d 100644 --- a/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk +++ b/package/x11r7/xlib_libXrandr/xlib_libXrandr.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXRANDR_VERSION = 1.5.0 +XLIB_LIBXRANDR_VERSION = 1.5.1 XLIB_LIBXRANDR_SOURCE = libXrandr-$(XLIB_LIBXRANDR_VERSION).tar.bz2 XLIB_LIBXRANDR_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXRANDR_LICENSE = MIT diff --git a/package/x11r7/xlib_libXrender/xlib_libXrender.hash b/package/x11r7/xlib_libXrender/xlib_libXrender.hash index 2a9912af74..bbc5b898b3 100644 --- a/package/x11r7/xlib_libXrender/xlib_libXrender.hash +++ b/package/x11r7/xlib_libXrender/xlib_libXrender.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-April/002593.html -sha256 fc2fe57980a14092426dffcd1f2d9de0987b9d40adea663bd70d6342c0e9be1a libXrender-0.9.9.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002725.html +sha256 c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949 libXrender-0.9.10.tar.bz2 diff --git a/package/x11r7/xlib_libXrender/xlib_libXrender.mk b/package/x11r7/xlib_libXrender/xlib_libXrender.mk index 949dea3f14..6134c45386 100644 --- a/package/x11r7/xlib_libXrender/xlib_libXrender.mk +++ b/package/x11r7/xlib_libXrender/xlib_libXrender.mk @@ -4,13 +4,16 @@ # ################################################################################ -XLIB_LIBXRENDER_VERSION = 0.9.9 +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_INSTALL_STAGING = YES XLIB_LIBXRENDER_DEPENDENCIES = xlib_libX11 xproto_renderproto xproto_xproto +HOST_XLIB_LIBXRENDER_DEPENDENCIES = \ + host-xlib_libX11 host-xproto_renderproto host-xproto_xproto + XLIB_LIBXRENDER_CONF_OPTS = --disable-malloc0returnsnull $(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXtst/xlib_libXtst.hash b/package/x11r7/xlib_libXtst/xlib_libXtst.hash index 4224121380..7e55a75e27 100644 --- a/package/x11r7/xlib_libXtst/xlib_libXtst.hash +++ b/package/x11r7/xlib_libXtst/xlib_libXtst.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-May/002237.html -sha256 ef0a7ffd577e5f1a25b1663b375679529663a1880151beaa73e9186c8309f6d9 libXtst-1.2.2.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002726.html +sha256 4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204 libXtst-1.2.3.tar.bz2 diff --git a/package/x11r7/xlib_libXtst/xlib_libXtst.mk b/package/x11r7/xlib_libXtst/xlib_libXtst.mk index ad3caeafc5..d71290ae40 100644 --- a/package/x11r7/xlib_libXtst/xlib_libXtst.mk +++ b/package/x11r7/xlib_libXtst/xlib_libXtst.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXTST_VERSION = 1.2.2 +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 diff --git a/package/x11r7/xlib_libXv/xlib_libXv.hash b/package/x11r7/xlib_libXv/xlib_libXv.hash index 3a54cb3751..4cb26eac71 100644 --- a/package/x11r7/xlib_libXv/xlib_libXv.hash +++ b/package/x11r7/xlib_libXv/xlib_libXv.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/xorg/2013-September/056012.html -sha256 55fe92f8686ce8612e2c1bfaf58c057715534419da700bda8d517b1d97914525 libXv-1.0.10.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002727.html +sha256 d26c13eac99ac4504c532e8e76a1c8e4bd526471eb8a0a4ff2a88db60cb0b088 libXv-1.0.11.tar.bz2 diff --git a/package/x11r7/xlib_libXv/xlib_libXv.mk b/package/x11r7/xlib_libXv/xlib_libXv.mk index ef5c74696f..26f8badc5c 100644 --- a/package/x11r7/xlib_libXv/xlib_libXv.mk +++ b/package/x11r7/xlib_libXv/xlib_libXv.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXV_VERSION = 1.0.10 +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 = MIT diff --git a/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash b/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash index f0fcd2ddf8..380c811989 100644 --- a/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash +++ b/package/x11r7/xlib_libXvMC/xlib_libXvMC.hash @@ -1,3 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002548.html -sha1 6fc54831734e781b2848b6f7e3bcc4f752665f21 libXvMC-1.0.9.tar.bz2 -sha256 0703d7dff6ffc184f1735ca5d4eb9dbb402b522e08e008f2f96aee16c40a5756 libXvMC-1.0.9.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-October/002728.html +sha256 e501a079b5dfaef0897c56152770c77e05e362065cec58910289aa567277ee2e libXvMC-1.0.10.tar.bz2 diff --git a/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk b/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk index 101c15d2e9..cb39c29f21 100644 --- a/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk +++ b/package/x11r7/xlib_libXvMC/xlib_libXvMC.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXVMC_VERSION = 1.0.9 +XLIB_LIBXVMC_VERSION = 1.0.10 XLIB_LIBXVMC_SOURCE = libXvMC-$(XLIB_LIBXVMC_VERSION).tar.bz2 XLIB_LIBXVMC_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXVMC_LICENSE = MIT diff --git a/package/x11r7/xlib_libXxf86dga/Config.in b/package/x11r7/xlib_libXxf86dga/Config.in index 5e21502cda..8276b7178f 100644 --- a/package/x11r7/xlib_libXxf86dga/Config.in +++ b/package/x11r7/xlib_libXxf86dga/Config.in @@ -1,5 +1,6 @@ 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_XPROTO_XF86DGAPROTO diff --git a/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk b/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk index aff1f1a5d9..e2c4c6e8d9 100644 --- a/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk +++ b/package/x11r7/xlib_libfontenc/xlib_libfontenc.mk @@ -11,6 +11,7 @@ XLIB_LIBFONTENC_LICENSE = MIT XLIB_LIBFONTENC_LICENSE_FILES = COPYING XLIB_LIBFONTENC_INSTALL_STAGING = YES XLIB_LIBFONTENC_DEPENDENCIES = zlib xproto_xproto +HOST_XLIB_LIBFONTENC_DEPENDENCIES = host-zlib host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk index 51c58c04a0..c69d73118f 100644 --- a/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk +++ b/package/x11r7/xlib_libxkbfile/xlib_libxkbfile.mk @@ -11,6 +11,7 @@ XLIB_LIBXKBFILE_LICENSE = MIT XLIB_LIBXKBFILE_LICENSE_FILES = COPYING XLIB_LIBXKBFILE_INSTALL_STAGING = YES XLIB_LIBXKBFILE_DEPENDENCIES = xlib_libX11 xproto_kbproto +HOST_XLIB_LIBXKBFILE_DEPENDENCIES = host-xlib_libX11 host-xproto_kbproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xproto_presentproto/xproto_presentproto.hash b/package/x11r7/xproto_presentproto/xproto_presentproto.hash index f947d915a9..aa45d9167e 100644 --- a/package/x11r7/xproto_presentproto/xproto_presentproto.hash +++ b/package/x11r7/xproto_presentproto/xproto_presentproto.hash @@ -1,2 +1,2 @@ -# From http://article.gmane.org/gmane.comp.freedesktop.xorg.announce/2078 -sha256 812c7d48721f909a0f7a2cb1e91f6eead76159a36c4712f4579ca587552839ce presentproto-1.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002770.html +sha256 f69b23a8869f78a5898aaf53938b829c8165e597cda34f06024d43ee1e6d26b9 presentproto-1.1.tar.bz2 diff --git a/package/x11r7/xproto_presentproto/xproto_presentproto.mk b/package/x11r7/xproto_presentproto/xproto_presentproto.mk index 6fea0a2f85..0097b9cddb 100644 --- a/package/x11r7/xproto_presentproto/xproto_presentproto.mk +++ b/package/x11r7/xproto_presentproto/xproto_presentproto.mk @@ -4,7 +4,7 @@ # ################################################################################ -XPROTO_PRESENTPROTO_VERSION = 1.0 +XPROTO_PRESENTPROTO_VERSION = 1.1 XPROTO_PRESENTPROTO_SOURCE = presentproto-$(XPROTO_PRESENTPROTO_VERSION).tar.bz2 XPROTO_PRESENTPROTO_SITE = http://xorg.freedesktop.org/releases/individual/proto XPROTO_PRESENTPROTO_LICENSE = MIT diff --git a/package/x11r7/xproto_xproto/xproto_xproto.hash b/package/x11r7/xproto_xproto/xproto_xproto.hash index 333ac6d4ac..4b77d256af 100644 --- a/package/x11r7/xproto_xproto/xproto_xproto.hash +++ b/package/x11r7/xproto_xproto/xproto_xproto.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-July/002618.html -sha256 29e85568d1f68ceef8a2c081dad9bc0e5500a53cfffde24b564dc43d46ddf6ca xproto-7.0.28.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2016-September/002713.html +sha256 c6f9747da0bd3a95f86b17fb8dd5e717c8f3ab7f0ece3ba1b247899ec1ef7747 xproto-7.0.31.tar.bz2 diff --git a/package/x11r7/xproto_xproto/xproto_xproto.mk b/package/x11r7/xproto_xproto/xproto_xproto.mk index 7357b8c775..76f9d32b19 100644 --- a/package/x11r7/xproto_xproto/xproto_xproto.mk +++ b/package/x11r7/xproto_xproto/xproto_xproto.mk @@ -4,7 +4,7 @@ # ################################################################################ -XPROTO_XPROTO_VERSION = 7.0.28 +XPROTO_XPROTO_VERSION = 7.0.31 XPROTO_XPROTO_SOURCE = xproto-$(XPROTO_XPROTO_VERSION).tar.bz2 XPROTO_XPROTO_SITE = http://xorg.freedesktop.org/releases/individual/proto XPROTO_XPROTO_LICENSE = MIT diff --git a/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/1.17.4/0001-modesettings-needs-dri2.patch similarity index 100% rename from package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch rename to package/x11r7/xserver_xorg-server/1.17.4/0001-modesettings-needs-dri2.patch diff --git a/package/x11r7/xserver_xorg-server/1.19.1/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/1.19.1/0001-modesettings-needs-dri2.patch new file mode 100644 index 0000000000..4ef95efc3e --- /dev/null +++ b/package/x11r7/xserver_xorg-server/1.19.1/0001-modesettings-needs-dri2.patch @@ -0,0 +1,19 @@ +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://bugs.freedesktop.org/show_bug.cgi?id=91584 + +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 +@@ -2036,7 +2036,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 + dnl 2.4.46 is required for cursor hotspot support. + PKG_CHECK_EXISTS(libdrm >= 2.4.46) + XORG_DRIVER_MODESETTING=yes diff --git a/package/x11r7/xserver_xorg-server/1.19.1/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch b/package/x11r7/xserver_xorg-server/1.19.1/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch new file mode 100644 index 0000000000..c5f04bf251 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/1.19.1/0002-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch @@ -0,0 +1,66 @@ +Discover monotonic clock using compile-time check + +monotonic clock check does not work when cross-compiling. + +Upstream-Status: Denied [Does not work on OpenBSD] +Signed-off-by: Jussi Kukkonen + + + +Original patch follows: + +When xorg-xserver is being cross-compiled, there is currently no way +for us to detect whether the monotonic clock is available on the +target system, because we aren't able to run a test program on the host +system. Currently, in this situation, we default to not use the +monotonic clock. One problem with this situation is that the user will +be treated as idle when the date is updated. + +To fix this situation, we now use a compile-time check to detect whether the +monotonic clock is available. This check can run just fine when we are +cross-compiling. + +Signed-off-by: David James + +Downloaded from +https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 17 +++++++---------- + 1 file changed, 7 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f7ab48c..26e85cd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1048,19 +1048,16 @@ if ! test "x$have_clock_gettime" = xno; then + CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L" + fi + +- AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #include +- +-int main(int argc, char *argv[[]]) { +- struct timespec tp; +- +- if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0) ++#include ++int main() { ++#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC)) ++ #error No monotonic clock ++#endif + return 0; +- else +- return 1; + } +- ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no], +- [MONOTONIC_CLOCK="cross compiling"]) ++]])],[MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no]) + + LIBS="$LIBS_SAVE" + CPPFLAGS="$CPPFLAGS_SAVE" +-- +2.1.4 + diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in index 26b9c8e89b..1c8f8cfdbf 100644 --- a/package/x11r7/xserver_xorg-server/Config.in +++ b/package/x11r7/xserver_xorg-server/Config.in @@ -1,6 +1,11 @@ +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. @@ -17,7 +22,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER select BR2_PACKAGE_XLIB_LIBXDMCP select BR2_PACKAGE_XLIB_LIBXEXT select BR2_PACKAGE_XLIB_LIBXFIXES - select BR2_PACKAGE_XLIB_LIBXFONT select BR2_PACKAGE_XLIB_LIBXFT select BR2_PACKAGE_XLIB_LIBXI select BR2_PACKAGE_XLIB_LIBXINERAMA @@ -48,6 +52,7 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER select BR2_PACKAGE_XPROTO_XPROTO select BR2_PACKAGE_XUTIL_UTIL_MACROS select BR2_PACKAGE_XKEYBOARD_CONFIG + select BR2_PACKAGE_XPROTO_DRI2PROTO if BR2_PACKAGE_SYSTEMD help X.Org X server @@ -58,31 +63,44 @@ if BR2_PACKAGE_XSERVER_XORG_SERVER config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 bool -config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 +config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + bool + +config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_23 bool config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI int default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 - default 20 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 + default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + default 23 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_23 choice bool "X Window System server version" -config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_18 - bool "1.18.3" - select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 +config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_19 + bool "1.19.1" + select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_23 + select BR2_PACKAGE_XLIB_LIBXFONT2 + select BR2_PACKAGE_XPROTO_PRESENTPROTO + +config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 + bool "1.17.4" + select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + select BR2_PACKAGE_XLIB_LIBXFONT select BR2_PACKAGE_XPROTO_PRESENTPROTO config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 bool "1.14.7" select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 + select BR2_PACKAGE_XLIB_LIBXFONT endchoice config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION string - default "1.18.3" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_18 + default "1.19.1" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_19 + default "1.17.4" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 choice @@ -119,6 +137,8 @@ endchoice config BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX bool "Enable AIGLX Extension" + # AIGLX Extension removed in 1.19.0 + depends on BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 || BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 help Enable/Use AIGLX extension. diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash index 2172c898c4..2f13ca6419 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash @@ -1,5 +1,7 @@ # From http://lists.x.org/archives/xorg-announce/2014-June/002440.html sha1 7a95765e56b124758fcd7b609589e65b8870880b xorg-server-1.14.7.tar.bz2 sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f xorg-server-1.14.7.tar.bz2 -# From https://lists.freedesktop.org/archives/xorg-announce/2016-April/002683.html -sha256 ea739c22517cdbe2b5f7c0a5fd05fe8a10ac0629003e71c0c7862f4bb60142cd xorg-server-1.18.3.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2015-October/002650.html +sha256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457 xorg-server-1.17.4.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002754.html +sha256 79ae2cf39d3f6c4a91201d8dad549d1d774b3420073c5a70d390040aa965a7fb xorg-server-1.19.1.tar.bz2 diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk index 85d7e98e9f..7aebbc1d2d 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk @@ -15,7 +15,6 @@ XSERVER_XORG_SERVER_AUTORECONF = YES XSERVER_XORG_SERVER_DEPENDENCIES = \ xfont_font-util \ xutil_util-macros \ - xlib_libXfont \ xlib_libX11 \ xlib_libXau \ xlib_libXdmcp \ @@ -73,7 +72,9 @@ ifeq ($(BR2_PACKAGE_SYSTEMD),y) XSERVER_XORG_SERVER_CONF_OPTS += \ --with-systemd-daemon \ --enable-systemd-logind -XSERVER_XORG_SERVER_DEPENDENCIES += systemd +XSERVER_XORG_SERVER_DEPENDENCIES += \ + systemd \ + xproto_dri2proto else XSERVER_XORG_SERVER_CONF_OPTS += \ --without-systemd-daemon \ @@ -81,9 +82,9 @@ XSERVER_XORG_SERVER_CONF_OPTS += \ endif # Xwayland support needs libdrm, libepoxy, wayland and libxcomposite -ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_LIBEPOXY)$(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),yyyy) +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 xlib_libXcomposite +XSERVER_XORG_SERVER_DEPENDENCIES += libdrm libepoxy wayland wayland-protocols xlib_libXcomposite else XSERVER_XORG_SERVER_CONF_OPTS += --disable-xwayland endif @@ -169,12 +170,12 @@ XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms else XSERVER_XORG_SERVER_CONF_OPTS += --disable-config-udev-kms endif -else +endif + ifeq ($(BR2_PACKAGE_DBUS),y) XSERVER_XORG_SERVER_DEPENDENCIES += dbus XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-dbus endif -endif ifeq ($(BR2_PACKAGE_FREETYPE),y) XSERVER_XORG_SERVER_DEPENDENCIES += freetype @@ -194,6 +195,14 @@ else XSERVER_XORG_SERVER_CONF_OPTS += --disable-record endif +ifeq ($(BR2_PACKAGE_XLIB_LIBXFONT2),y) +XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libXfont2 +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXFONT),y) +XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libXfont +endif + ifneq ($(BR2_PACKAGE_XLIB_LIBXVMC),y) XSERVER_XORG_SERVER_CONF_OPTS += --disable-xvmc endif @@ -214,9 +223,11 @@ endif ifeq ($(BR2_PACKAGE_XPROTO_DRI3PROTO),y) XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libxshmfence xproto_dri3proto XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri3 -ifeq ($(BR2_PACKAGE_LIBEPOXY),y) +ifeq ($(BR2_PACKAGE_HAS_LIBGL)$(BR2_PACKAGE_LIBEPOXY),yy) 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 diff --git a/package/x11r7/xutil_makedepend/xutil_makedepend.mk b/package/x11r7/xutil_makedepend/xutil_makedepend.mk index 81e348ed96..6fd3c1ae36 100644 --- a/package/x11r7/xutil_makedepend/xutil_makedepend.mk +++ b/package/x11r7/xutil_makedepend/xutil_makedepend.mk @@ -11,6 +11,7 @@ XUTIL_MAKEDEPEND_LICENSE = MIT XUTIL_MAKEDEPEND_LICENSE_FILES = COPYING XUTIL_MAKEDEPEND_DEPENDENCIES = xproto_xproto +HOST_XUTIL_MAKEDEPEND_DEPENDENCIES = host-xproto_xproto $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x264/Config.in b/package/x264/Config.in index 7bf2319f26..be3ab3f3e2 100644 --- a/package/x264/Config.in +++ b/package/x264/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_X264 bool "x264" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX # madvise() help x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC diff --git a/package/x264/x264.hash b/package/x264/x264.hash new file mode 100644 index 0000000000..95510938e0 --- /dev/null +++ b/package/x264/x264.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 9fc4651981453d0428a2ad16889b6b63d1f2e7347ea321f20347fc3a021ee912 x264-97eaef2ab82a46d13ea5e00270712d6475fbe42b.tar.gz diff --git a/package/x264/x264.mk b/package/x264/x264.mk index 6055a8a6ec..80437c408c 100644 --- a/package/x264/x264.mk +++ b/package/x264/x264.mk @@ -4,7 +4,7 @@ # ################################################################################ -X264_VERSION = 3b70645597bea052d2398005bc723212aeea6875 +X264_VERSION = 97eaef2ab82a46d13ea5e00270712d6475fbe42b X264_SITE = git://git.videolan.org/x264.git X264_LICENSE = GPLv2+ X264_DEPENDENCIES = host-pkgconf diff --git a/package/x265/0001-fix-gcc-options.patch b/package/x265/0001-fix-gcc-options.patch new file mode 100644 index 0000000000..81518212b4 --- /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/x265.hash b/package/x265/x265.hash index 92b5beaa9d..5672d79e0c 100644 --- a/package/x265/x265.hash +++ b/package/x265/x265.hash @@ -1,2 +1,2 @@ # Locally generated -sha256 3e4654133ed957a98708fdb4cb9a154d9e80922b84e26e43fc462a101c5b15c8 x265_1.9.tar.gz +sha256 b872552535e41fbffa03ba7cbcd3479c42c4053868309292e78e147b7773ac4b x265_2.2.tar.gz diff --git a/package/x265/x265.mk b/package/x265/x265.mk index e737c31375..0fbdb01071 100644 --- a/package/x265/x265.mk +++ b/package/x265/x265.mk @@ -4,7 +4,7 @@ # ################################################################################ -X265_VERSION = 1.9 +X265_VERSION = 2.2 X265_SOURCE = x265_$(X265_VERSION).tar.gz X265_SITE = https://bitbucket.org/multicoreware/x265/downloads X265_LICENSE = GPLv2+ diff --git a/package/xen/0001-Remove-hardcoded-strict-Werror-checking.patch b/package/xen/0001-Remove-hardcoded-strict-Werror-checking.patch new file mode 100644 index 0000000000..ca772ddfb1 --- /dev/null +++ b/package/xen/0001-Remove-hardcoded-strict-Werror-checking.patch @@ -0,0 +1,26 @@ +From 234847440a5d3cf95540ea79f7a08d50cccfef73 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Tue, 13 Sep 2016 10:48:31 -0700 +Subject: [PATCH] Remove hardcoded strict -Werror checking + +Signed-off-by: Alistair Francis +--- + Config.mk | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Config.mk b/Config.mk +index bd991c6..e7ac662 100644 +--- a/Config.mk ++++ b/Config.mk +@@ -36,7 +36,7 @@ CONFIG_$(XEN_OS) := y + SHELL ?= /bin/sh + + # Tools to run on system hosting the build +-HOSTCFLAGS = -Wall -Werror -Wstrict-prototypes -O2 -fomit-frame-pointer ++HOSTCFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer + HOSTCFLAGS += -fno-strict-aliasing + + DISTDIR ?= $(XEN_ROOT)/dist +-- +2.7.4 + diff --git a/package/xen/0002-xen-Rules.mk-fix-build-with-CFLAGS-from-environment.patch b/package/xen/0002-xen-Rules.mk-fix-build-with-CFLAGS-from-environment.patch new file mode 100644 index 0000000000..0d4e581af6 --- /dev/null +++ b/package/xen/0002-xen-Rules.mk-fix-build-with-CFLAGS-from-environment.patch @@ -0,0 +1,36 @@ +From 2a310549aaeaba05f640ade43488bb893101ce4a Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sat, 29 Oct 2016 16:35:26 +0200 +Subject: [PATCH] xen/Rules.mk: fix build with CFLAGS from environment + +When CFLAGS are passed from the environment, the first-level make +invocation will append -D__OBJECT_FILE__ to it, then call a second +make invocation, that will have those new CFLAGS in its environment, +but will also append -D__OBJECT_FILE__ to those. + +Then, the compiler fails because __OBEJECT_FILE__ is defined twice. + +Just undefine it before defining it again, as a *workaround* to this +issue. + +Signed-off-by: "Yann E. MORIN" +--- + xen/Rules.mk | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/xen/Rules.mk b/xen/Rules.mk +index a9fda71..09ccbfa 100644 +--- a/xen/Rules.mk ++++ b/xen/Rules.mk +@@ -49,7 +49,7 @@ ALL_OBJS-$(CONFIG_CRYPTO) += $(BASEDIR)/crypto/built_in.o + CFLAGS += -nostdinc -fno-builtin -fno-common + CFLAGS += -Werror -Wredundant-decls -Wno-pointer-arith + CFLAGS += -pipe -g -D__XEN__ -include $(BASEDIR)/include/xen/config.h +-CFLAGS += '-D__OBJECT_FILE__="$@"' ++CFLAGS += -U__OBJECT_FILE__ '-D__OBJECT_FILE__="$@"' + + ifneq ($(clang),y) + # Clang doesn't understand this command line argument, and doesn't appear to +-- +2.7.4 + diff --git a/package/xen/0003-tools-libxl-Disable-strict-Werror-checking.patch b/package/xen/0003-tools-libxl-Disable-strict-Werror-checking.patch new file mode 100644 index 0000000000..80c0b3225e --- /dev/null +++ b/package/xen/0003-tools-libxl-Disable-strict-Werror-checking.patch @@ -0,0 +1,26 @@ +From 19f1e70041044fde1542109a0525424cc6d5d053 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Wed, 7 Dec 2016 11:35:10 -0800 +Subject: [PATCH] tools/libxl: Disable strict Werror checking + +Signed-off-by: Alistair Francis +--- + tools/libxl/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile +index defeb40..239faf3 100644 +--- a/tools/libxl/Makefile ++++ b/tools/libxl/Makefile +@@ -11,7 +11,7 @@ MINOR = 0 + XLUMAJOR = 4.7 + XLUMINOR = 0 + +-CFLAGS += -Werror -Wno-format-zero-length -Wmissing-declarations \ ++CFLAGS += -Wno-format-zero-length -Wmissing-declarations \ + -Wno-declaration-after-statement -Wformat-nonliteral + CFLAGS += -I. -fPIC + +-- +2.7.4 + diff --git a/package/xen/Config.in b/package/xen/Config.in new file mode 100644 index 0000000000..b5dcbf2592 --- /dev/null +++ b/package/xen/Config.in @@ -0,0 +1,44 @@ +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_PACKAGE_LIBAIO_ARCH_SUPPORTS + 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_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_PACKAGE_LIBAIO_ARCH_SUPPORTS + 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 0000000000..c3df2431e8 --- /dev/null +++ b/package/xen/xen.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 e87f4b0575e78657ee23d31470a15ecf1ce8c3a92a771cda46bbcd4d0d671ffe xen-4.7.1.tar.gz diff --git a/package/xen/xen.mk b/package/xen/xen.mk new file mode 100644 index 0000000000..7d32e52702 --- /dev/null +++ b/package/xen/xen.mk @@ -0,0 +1,56 @@ +################################################################################ +# +# Xen +# +################################################################################ + +XEN_VERSION = 4.7.1 +XEN_SITE = http://bits.xensource.com/oss-xen/release/$(XEN_VERSION) +XEN_LICENSE = GPLv2 +XEN_LICENSE_FILES = COPYING +XEN_DEPENDENCIES = host-python + +# Calculate XEN_ARCH +ifeq ($(ARCH),aarch64) +XEN_ARCH = arm64 +else ifeq ($(ARCH),arm) +XEN_ARCH = arm32 +endif + +XEN_CONF_OPTS = --disable-ocamltools + +XEN_CONF_ENV = PYTHON=$(HOST_DIR)/usr/bin/python2 +XEN_MAKE_ENV = \ + XEN_TARGET_ARCH=$(XEN_ARCH) \ + CROSS_COMPILE=$(TARGET_CROSS) \ + $(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 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 + +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/0001-bfin-remove-inline-keyword.patch b/package/xenomai/0001-bfin-remove-inline-keyword.patch new file mode 100644 index 0000000000..376bd21c37 --- /dev/null +++ b/package/xenomai/0001-bfin-remove-inline-keyword.patch @@ -0,0 +1,62 @@ +From 2a96c8bbe19a193d9ae6d0780fc274abc4df03e3 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 5 Nov 2016 19:09:00 +0100 +Subject: [PATCH] bfin: remove inline keyword + +Xenomai user space tools fail to build for bfin target since it's +provide it's own pthread_atfork(), shm_open() and shm_unlink() +definition using the inline keyword and weak attribute. + +With gcc 5+ the weak attribute is discarded by the inline keyword, +so each symbol are global and are redefined several time while +linking. + +Fixes: +http://autobuild.buildroot.net/results/0c2/0c2e5eb4edd4f9427f61d3c9b67a12a7a0e24140 + +Patch status: upstream, +https://git.xenomai.org/xenomai-2.6.git/commit/?id=917dcebb26ec492f276cdc3b55867aa90e01fa12 + +Signed-off-by: Romain Naour +--- + include/asm-blackfin/syscall.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/include/asm-blackfin/syscall.h b/include/asm-blackfin/syscall.h +index 9eda8b9..b5728b5 100644 +--- a/include/asm-blackfin/syscall.h ++++ b/include/asm-blackfin/syscall.h +@@ -132,9 +132,9 @@ static inline int __xn_interrupted_p(struct pt_regs *regs) + #define XENOMAI_SKINCALL5(id,op,a1,a2,a3,a4,a5) XENOMAI_DO_SYSCALL(5,id,op,a1,a2,a3,a4,a5) + + /* uClibc does not provide pthread_atfork() for this arch; provide it +- here. Note: let the compiler decides whether it wants to actually +- inline this routine, i.e. do not force always_inline. */ +-inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void), ++ here. ++*/ ++__attribute__((weak)) int pthread_atfork(void (*prepare)(void), + void (*parent)(void), + void (*child)(void)) + { +@@ -143,7 +143,7 @@ inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void), + + #include + +-inline __attribute__((weak)) int shm_open(const char *name, ++__attribute__((weak)) int shm_open(const char *name, + int oflag, + mode_t mode) + { +@@ -151,7 +151,7 @@ inline __attribute__((weak)) int shm_open(const char *name, + return -1; + } + +-inline __attribute__((weak)) int shm_unlink(const char *name) ++__attribute__((weak)) int shm_unlink(const char *name) + { + errno = ENOSYS; + return -1; +-- +2.5.5 + diff --git a/package/xenomai/Config.in b/package/xenomai/Config.in index d4c8a89d42..32c5124ef5 100644 --- a/package/xenomai/Config.in +++ b/package/xenomai/Config.in @@ -1,13 +1,19 @@ -comment "xenomai needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_i386 || BR2_x86_64 || BR2_arm || \ - BR2_bfin || BR2_powerpc || BR2_sh4 +config BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS + bool + default y + depends on BR2_i386 || BR2_x86_64 || (BR2_arm && !BR2_ARM_CPU_ARMV7M) || \ + BR2_bfin || BR2_powerpc || BR2_sh4 + +comment "xenomai needs an glibc or uClibc toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL + depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS config BR2_PACKAGE_XENOMAI bool "Xenomai Userspace" + depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_i386 || BR2_x86_64 || BR2_arm || \ - BR2_bfin || BR2_powerpc || BR2_sh4 + # uses , __WORDSIZE and bits/local_lim.h + depends on !BR2_TOOLCHAIN_USES_MUSL help Real-Time Framework for Linux http://www.xenomai.org diff --git a/package/xerces/xerces.hash b/package/xerces/xerces.hash index 639e668534..c621f5cd56 100644 --- a/package/xerces/xerces.hash +++ b/package/xerces/xerces.hash @@ -1,2 +1,2 @@ -# From http://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.3.tar.xz.sha256 -sha256 d35ae442db333f73c7ef41b2ce2e33bc8aba8dbacf582af765eda26415d25c94 xerces-c-3.1.3.tar.xz +# From http://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.4.tar.xz.sha256 +sha256 9973cc79481803f8b6652c52faf5195d963f50d209d4f681ec97e2aa014b6241 xerces-c-3.1.4.tar.xz diff --git a/package/xerces/xerces.mk b/package/xerces/xerces.mk index e7f57b3c8e..a25641fb45 100644 --- a/package/xerces/xerces.mk +++ b/package/xerces/xerces.mk @@ -4,7 +4,7 @@ # ################################################################################ -XERCES_VERSION = 3.1.3 +XERCES_VERSION = 3.1.4 XERCES_SOURCE = xerces-c-$(XERCES_VERSION).tar.xz XERCES_SITE = http://archive.apache.org/dist/xerces/c/3/sources XERCES_LICENSE = Apache-2.0 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 index 3f79dbbe99..4e4160fb40 100644 --- 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 @@ -1,12 +1,4 @@ -mdrestore: do not do dynamic linking of libtool libraries - -This patch has been sent upstream: - - http://oss.sgi.com/pipermail/xfs/2015-November/045136.html - -Signed-off-by: Vicente Olivert Riera - -From a406326f724006d62085a0aeae1072b4145caa9d Mon Sep 17 00:00:00 2001 +From 770902a0a29fb4ac62358f7eacb3a83d0d9af1c7 Mon Sep 17 00:00:00 2001 From: Vicente Olivert Riera Date: Wed, 25 Nov 2015 10:50:00 +0000 Subject: [PATCH] mdrestore: do not do dynamic linking of libtool libraries @@ -18,6 +10,7 @@ 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: http://oss.sgi.com/pipermail/xfs/2015-November/045136.html] --- mdrestore/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -36,5 +29,5 @@ index 5171306..1b34a0e 100644 default: depend $(LTCOMMAND) -- -2.4.10 +2.7.4 diff --git a/package/xfsprogs/0002-no-crc32-checks.patch b/package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch similarity index 66% rename from package/xfsprogs/0002-no-crc32-checks.patch rename to package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch index 6f97092475..372a5301bd 100644 --- a/package/xfsprogs/0002-no-crc32-checks.patch +++ b/package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch @@ -1,4 +1,7 @@ -libxfs: do not try to run the crc32selftest +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 @@ -14,11 +17,15 @@ 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" +--- + libxfs/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) -diff -durN xfsprogs-4.3.0.orig/libxfs/Makefile xfsprogs-4.3.0/libxfs/Makefile ---- xfsprogs-4.3.0.orig/libxfs/Makefile 2015-09-22 03:42:41.000000000 +0200 -+++ xfsprogs-4.3.0/libxfs/Makefile 2015-12-07 18:45:27.190082913 +0100 -@@ -105,9 +105,9 @@ +diff --git a/libxfs/Makefile b/libxfs/Makefile +index 62608bd..e021625 100644 +--- a/libxfs/Makefile ++++ b/libxfs/Makefile +@@ -112,9 +112,9 @@ LTLIBS = $(LIBPTHREAD) $(LIBRT) # don't try linking xfs_repair with a debug libxfs. DEBUG = -DNDEBUG @@ -30,3 +37,6 @@ diff -durN xfsprogs-4.3.0.orig/libxfs/Makefile xfsprogs-4.3.0/libxfs/Makefile crc32table.h: gen_crc32table.c @echo " [CC] gen_crc32table" +-- +2.7.4 + diff --git a/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch b/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch index 6617935bf7..36896b5b95 100644 --- a/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch +++ b/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch @@ -1,4 +1,4 @@ -From 5b3dd8eb1f7720c68dab032c3d89d4e3102d6347 Mon Sep 17 00:00:00 2001 +From b981adb6769f6b7d80f6c98627391398a007a25b Mon Sep 17 00:00:00 2001 From: Gustavo Zacarias Date: Tue, 15 Dec 2015 20:51:35 -0300 Subject: [PATCH] xfsprogs: don't use CFLAGS with BUILD_CC @@ -8,16 +8,14 @@ When cross-compiling CFLAGS might not be suitable for the host Signed-off-by: Gustavo Zacarias --- -Status: reported http://oss.sgi.com/bugzilla/show_bug.cgi?id=1132 - libxfs/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libxfs/Makefile b/libxfs/Makefile -index ecf1921..3979077 100644 +index e021625..ad76a04 100644 --- a/libxfs/Makefile +++ b/libxfs/Makefile -@@ -111,7 +111,7 @@ default: crc32selftest ltdepend $(LTLIBRARY) +@@ -118,7 +118,7 @@ default: ltdepend $(LTLIBRARY) crc32table.h: gen_crc32table.c @echo " [CC] gen_crc32table" @@ -26,7 +24,7 @@ index ecf1921..3979077 100644 @echo " [GENERATE] $@" $(Q) ./gen_crc32table > crc32table.h -@@ -122,7 +122,7 @@ crc32table.h: gen_crc32table.c +@@ -129,7 +129,7 @@ crc32table.h: gen_crc32table.c # disk. crc32selftest: gen_crc32table.c crc32table.h crc32.c @echo " [TEST] CRC32" @@ -36,5 +34,5 @@ index ecf1921..3979077 100644 # set up include/xfs header directory -- -2.4.10 +2.7.4 diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in index 2c24cbbc1c..ccb3214674 100644 --- a/package/xfsprogs/Config.in +++ b/package/xfsprogs/Config.in @@ -1,15 +1,11 @@ - -comment "Note that xfsprogs needs a toolchain with UCLIBC_SV4_DEPRECATED and UCLIBC_HAS_OBSOLETE_BSD_SIGNAL enabled" - depends on BR2_PACKAGE_XFSPROGS - -comment "xfsprogs needs a toolchain w/ wchar" +comment "xfsprogs needs a glibc or uClibc toolchain" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_XFSPROGS bool "xfsprogs" depends on BR2_USE_MMU # fork() - depends on BR2_USE_WCHAR # util-linux + depends on !BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_UTIL_LINUX_LIBBLKID diff --git a/package/xfsprogs/xfsprogs.hash b/package/xfsprogs/xfsprogs.hash index d2502839d0..e990b78d77 100644 --- a/package/xfsprogs/xfsprogs.hash +++ b/package/xfsprogs/xfsprogs.hash @@ -1,3 +1,3 @@ # Locally calculated after checking pgp signature: -# ftp://oss.sgi.com/projects/xfs/cmd_tars/xfsprogs-4.5.0.tar.gz.sig -sha256 e49beb314984efbd0d758abb5c6137db3bb60a88e59e1e94c00defb536cf89f8 xfsprogs-4.5.0.tar.gz +# https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-4.8.0.tar.sign +sha256 82ce9cb3a55f4e208e8fe3471ff0aff0602b8300f3e50bdf05cc7e11549686f9 xfsprogs-4.8.0.tar.xz diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk index fb72054ac1..e59f1f6905 100644 --- a/package/xfsprogs/xfsprogs.mk +++ b/package/xfsprogs/xfsprogs.mk @@ -4,8 +4,9 @@ # ################################################################################ -XFSPROGS_VERSION = 4.5.0 -XFSPROGS_SITE = ftp://oss.sgi.com/projects/xfs/cmd_tars +XFSPROGS_VERSION = 4.8.0 +XFSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/fs/xfs/xfsprogs +XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.xz XFSPROGS_DEPENDENCIES = util-linux diff --git a/package/xinetd/xinetd.hash b/package/xinetd/xinetd.hash new file mode 100644 index 0000000000..051436613c --- /dev/null +++ b/package/xinetd/xinetd.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 620b25f4ab4d72fdf32b13797156ea40df2049f1c07e640177e5fec544e9a94c xinetd-xinetd-2-3-15.tar.gz diff --git a/package/xl2tp/0002-musl.patch b/package/xl2tp/0002-musl.patch deleted file mode 100644 index 44238e87d0..0000000000 --- a/package/xl2tp/0002-musl.patch +++ /dev/null @@ -1,19 +0,0 @@ -Fix musl build - -Downloaded from -http://git.alpinelinux.org/cgit/aports/tree/main/xl2tpd/xl2tpd-compile.patch - -Signed-off-by: Bernd Kuhls - -diff -u --recursive src.orig/xl2tpd-1.3.6/xl2tpd.c src/xl2tpd-1.3.6/xl2tpd.c ---- xl2tpd-1.3.6.orig/xl2tpd.c 2014-01-15 21:58:37.000000000 -0100 -+++ xl2tpd-1.3.6/xl2tpd.c 2014-06-21 07:22:21.195278618 -0200 -@@ -33,8 +33,6 @@ - #if (__GLIBC__ < 2) - # if defined(FREEBSD) || defined(OPENBSD) - # include --# elif defined(LINUX) --# include - # elif defined(SOLARIS) - # include - # endif diff --git a/package/xl2tp/xl2tp.hash b/package/xl2tp/xl2tp.hash new file mode 100644 index 0000000000..152d615a2e --- /dev/null +++ b/package/xl2tp/xl2tp.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 1164b574e93a44c2a2e76c0c68d8d60437bd884a6c964d9c68be1556278e3d2d xl2tp-v1.3.8.tar.gz diff --git a/package/xl2tp/xl2tp.mk b/package/xl2tp/xl2tp.mk index a8237164a2..ff802a4e97 100644 --- a/package/xl2tp/xl2tp.mk +++ b/package/xl2tp/xl2tp.mk @@ -4,7 +4,7 @@ # ################################################################################ -XL2TP_VERSION = v1.3.6 +XL2TP_VERSION = v1.3.8 XL2TP_SITE = $(call github,xelerance,xl2tpd,$(XL2TP_VERSION)) XL2TP_DEPENDENCIES = libpcap openssl XL2TP_LICENSE = GPLv2 @@ -20,7 +20,7 @@ define XL2TP_BUILD_CMDS endef define XL2TP_INSTALL_TARGET_CMDS - $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install + $(TARGET_CONFIGURE_OPTS) $(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch b/package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch deleted file mode 100644 index ea54c983a2..0000000000 --- a/package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 8cee09b59a8c1ff2ebfc8c46097825d2eafdc4dd Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sat, 16 May 2015 17:32:13 +0200 -Subject: [PATCH] Fix static linking problem with libgcrypt - -When libgcrypt is used, it is linked with libgpg-error, so we should -also test that libgpg-error is available, and include -lgpg-error in -the LIBS variable. - -This fixes build issues like: - - CCLD xml -/home/thomas/projets/buildroot/output/host/usr/bfin-buildroot-uclinux-uclibc/sysroot/usr/lib/libexslt.a(crypto.o): In function `_exsltCryptoGcryptInit': -crypto.c:(.text+0x112): undefined reference to `_gcry_check_version' -/home/thomas/projets/buildroot/output/host/usr/bfin-buildroot-uclinux-uclibc/sysroot/usr/lib/libexslt.a(crypto.o): In function `_exsltCryptoRc4DecryptFunction': -crypto.c:(.text+0x316): undefined reference to `_gcry_cipher_open' -crypto.c:(.text+0x32a): undefined reference to `_gcry_strerror' -crypto.c:(.text+0x34c): undefined reference to `_gcry_cipher_setkey' - -Which are caused by the AC_SEARCH_LIBS() test for libgcrypt to fail -due to -lgpg-error not been present in the LIBS variable. - -Note that using PKG_CHECK_MODULES() would be a much much better -replacement than this complicated handling of static libraries, but -it's a much more significant effort. - -Signed-off-by: Thomas Petazzoni ---- - configure.ac | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/configure.ac b/configure.ac -index 4db0129..e378996 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -125,6 +125,7 @@ AS_IF([test "x$STATIC_LIBS" != xno], - [AC_SEARCH_LIBS([libiconv_open], [iconv], [], [], "$USER_LIBS")], "$USER_LIBS") - AC_SEARCH_LIBS([clock_gettime], [rt], [], [], "$USER_LIBS") - AC_SEARCH_LIBS([deflate], [z], [], [], "$USER_LIBS") -+ AC_SEARCH_LIBS([gpg_strerror], [gpg-error], [], [], "$USER_LIBS") - AC_SEARCH_LIBS([gcry_cipher_encrypt], [gcrypt], [], [], "$USER_LIBS") - - # Checks for inet libraries: --- -2.1.0 - diff --git a/package/xmlstarlet/xmlstarlet.hash b/package/xmlstarlet/xmlstarlet.hash index 2d6558f791..ca9aecfec8 100644 --- a/package/xmlstarlet/xmlstarlet.hash +++ b/package/xmlstarlet/xmlstarlet.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 47b4ed042ea2909257f2a386001af49fceb303f84da7214779ccf99fffc6bbba xmlstarlet-1.5.0.tar.gz +# 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 diff --git a/package/xmlstarlet/xmlstarlet.mk b/package/xmlstarlet/xmlstarlet.mk index e0abf04502..61d38f29ff 100644 --- a/package/xmlstarlet/xmlstarlet.mk +++ b/package/xmlstarlet/xmlstarlet.mk @@ -4,24 +4,22 @@ # ################################################################################ -XMLSTARLET_VERSION = 1.5.0 +XMLSTARLET_VERSION = 1.6.1 XMLSTARLET_SITE = http://downloads.sourceforge.net/project/xmlstar/xmlstarlet/$(XMLSTARLET_VERSION) XMLSTARLET_LICENSE = MIT XMLSTARLET_LICENSE_FILES = COPYING -# We're patching configure.ac -XMLSTARLET_AUTORECONF = YES 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 + --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`" +XMLSTARLET_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libxml-2.0 libexslt` $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)" else XMLSTARLET_CONF_OPTS += --disable-static-libs endif diff --git a/package/xorriso/xorriso.mk b/package/xorriso/xorriso.mk index 57537e897e..be193221ec 100644 --- a/package/xorriso/xorriso.mk +++ b/package/xorriso/xorriso.mk @@ -8,16 +8,15 @@ XORRISO_VERSION = 1.4.2 XORRISO_SITE = $(BR2_GNU_MIRROR)/xorriso XORRISO_LICENSE = GPLv3+ XORRISO_LICENSE_FILES = COPYING COPYRIGHT -HOST_XORRISO_DEPENDENCIES = -# Disable everything until we actually need those feature, and add the correct -# host-libraries +# Disable everything until we actually need those features, and add the correct +# host libraries HOST_XORRISO_CONF_OPTS = \ - --disable-zlib \ - --disable-bzip2 \ - --disable-libcdio \ - --disable-libreadline \ - --disable-libedit \ - --disable-libacl + --disable-zlib \ + --disable-bzip2 \ + --disable-libcdio \ + --disable-libreadline \ + --disable-libedit \ + --disable-libacl ifeq ($(BR2_PACKAGE_LIBICONV),y) XORRISO_DEPENDENCIES += libiconv diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash index be8cb6e4cf..9aa9c0e539 100644 --- a/package/xtables-addons/xtables-addons.hash +++ b/package/xtables-addons/xtables-addons.hash @@ -1,4 +1,4 @@ -# From http://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.10/ -sha1 bc6dcb1eb1328931189f6e73a1a02ef4cc51bc44 xtables-addons-2.10.tar.xz +# From https://sourceforge.net/projects/xtables-addons/files/Xtables-addons/ +sha1 70ace437ec84d9ec1970505cecf270ed0cbd273e xtables-addons-2.12.tar.xz # Calculated based on the hash above -sha256 2a2d92ae924437d757f55514502c6ef3aeccc6106f729c702efe703ad30f4007 xtables-addons-2.10.tar.xz +sha256 c4865aa1c64c5ff173ff7b5d69425466c71f0f9b5eb5299c52c68bdcd46fa63b xtables-addons-2.12.tar.xz diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk index b4e5992a7a..274e681818 100644 --- a/package/xtables-addons/xtables-addons.mk +++ b/package/xtables-addons/xtables-addons.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTABLES_ADDONS_VERSION = 2.10 +XTABLES_ADDONS_VERSION = 2.12 XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz XTABLES_ADDONS_SITE = http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf @@ -23,11 +23,11 @@ endef XTABLES_ADDONS_POST_PATCH_HOOKS += XTABLES_DISABLE_GEOIP_HELPERS define XTABLES_ADDONS_BUILD_CMDS - $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) endef define XTABLES_ADDONS_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) DESTDIR="$(TARGET_DIR)" install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) DESTDIR="$(TARGET_DIR)" install endef $(eval $(autotools-package)) diff --git a/package/xterm/xterm.hash b/package/xterm/xterm.hash index f68b29f1f9..bbd0e11002 100644 --- a/package/xterm/xterm.hash +++ b/package/xterm/xterm.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 70ecbec8d27789248e8ae2dc2cf159a2e189c152a6559a2b3df7f4838da36092 xterm-324.tgz +sha256 66fb2f6c35b342148f549c276b12a3aa3fb408e27ab6360ddec513e14376150b xterm-327.tgz diff --git a/package/xterm/xterm.mk b/package/xterm/xterm.mk index 38271bb955..645de92e22 100644 --- a/package/xterm/xterm.mk +++ b/package/xterm/xterm.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTERM_VERSION = 324 +XTERM_VERSION = 327 XTERM_SOURCE = xterm-$(XTERM_VERSION).tgz XTERM_SITE = http://invisible-mirror.net/archives/xterm XTERM_DEPENDENCIES = ncurses xlib_libXaw host-pkgconf @@ -22,4 +22,11 @@ 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/xutil_util-macros.hash b/package/xutil_util-macros/xutil_util-macros.hash index bcb6c585dd..0f0509a132 100644 --- a/package/xutil_util-macros/xutil_util-macros.hash +++ b/package/xutil_util-macros/xutil_util-macros.hash @@ -1,2 +1,2 @@ -# From http://article.gmane.org/gmane.comp.freedesktop.xorg.announce/2141 -sha256 2835b11829ee634e19fa56517b4cfc52ef39acea0cd82e15f68096e27cbed0ba util-macros-1.19.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2017-January/002773.html +sha256 18d459400558f4ea99527bc9786c033965a3db45bf4c6a32eefdc07aa9e306a6 util-macros-1.19.1.tar.bz2 diff --git a/package/xutil_util-macros/xutil_util-macros.mk b/package/xutil_util-macros/xutil_util-macros.mk index 1451a0698d..d01b3e0d24 100644 --- a/package/xutil_util-macros/xutil_util-macros.mk +++ b/package/xutil_util-macros/xutil_util-macros.mk @@ -4,7 +4,7 @@ # ################################################################################ -XUTIL_UTIL_MACROS_VERSION = 1.19.0 +XUTIL_UTIL_MACROS_VERSION = 1.19.1 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 diff --git a/package/xvisor/0001-Makefile-Fix-oldconfig-make-target.patch b/package/xvisor/0001-Makefile-Fix-oldconfig-make-target.patch new file mode 100644 index 0000000000..f056625470 --- /dev/null +++ b/package/xvisor/0001-Makefile-Fix-oldconfig-make-target.patch @@ -0,0 +1,30 @@ +From 99bbdc042ee4c92a13edcfeaf336aa755a199d0f Mon Sep 17 00:00:00 2001 +From: Anup Patel +Date: Sun, 11 Sep 2016 19:53:40 +0530 +Subject: [PATCH] Makefile: Fix oldconfig make target + +Use "-s" instead of "-o" option of "openconf/conf" tool because +the "-o" option does not generate all required openconf files. + +Signed-off-by: Anup Patel +Signed-off-by: Eric Le Bihan +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 149a682..e05e801 100644 +--- a/Makefile ++++ b/Makefile +@@ -434,7 +434,7 @@ menuconfig: + oldconfig: + $(V)mkdir -p $(OPENCONF_TMPDIR) + $(V)$(MAKE) -C tools/openconf oldconfig +- ./tools/openconf/conf -o $(OPENCONF_INPUT) ++ ./tools/openconf/conf -s $(OPENCONF_INPUT) + + # Rule for "make savedefconfig" + .PHONY: savedefconfig +-- +2.4.11 + diff --git a/package/xvisor/0002-openconf-do-not-check-stdin.patch b/package/xvisor/0002-openconf-do-not-check-stdin.patch new file mode 100644 index 0000000000..34b350de42 --- /dev/null +++ b/package/xvisor/0002-openconf-do-not-check-stdin.patch @@ -0,0 +1,58 @@ +From 6b49c1dbe0ac43e39eec97a7e79cf5fb995747dc Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan +Date: Mon, 12 Sep 2016 21:49:55 +0530 +Subject: [PATCH] openconf: do not check stdin + +Do not check if stdin is redirected when ask_silent is true, so the +`yes` program can be used to answer the questions about new values. + +Example: + + yes "" | make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- oldconfig + +Signed-off-by: Eric Le Bihan +Signed-off-by: Anup Patel +--- + tools/openconf/conf.c | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/tools/openconf/conf.c b/tools/openconf/conf.c +index a428058..711cf0b 100644 +--- a/tools/openconf/conf.c ++++ b/tools/openconf/conf.c +@@ -65,16 +65,6 @@ static void strip(char *str) + *p-- = 0; + } + +-static void check_stdin(void) +-{ +- if (!valid_stdin) { +- printf("aborted!\n\n"); +- printf("Console input/output is redirected. "); +- printf("Run 'make oldconfig' to update configuration.\n\n"); +- exit(1); +- } +-} +- + static int conf_askvalue(struct symbol *sym, const char *def) + { + char *ret; +@@ -100,7 +90,6 @@ static int conf_askvalue(struct symbol *sym, const char *def) + printf("%s\n", def); + return 0; + } +- check_stdin(); + case ask_all: + fflush(stdout); + ret = fgets(line, 128, stdin); +@@ -306,7 +295,6 @@ static int conf_choice(struct menu *menu) + printf("%d\n", cnt); + break; + } +- check_stdin(); + case ask_all: + fflush(stdout); + ret = fgets(line, 128, stdin); +-- +2.4.11 + diff --git a/package/xvisor/Config.in b/package/xvisor/Config.in new file mode 100644 index 0000000000..996d37afbe --- /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" + depends on BR2_PACKAGE_XVISOR_USE_DEFCONFIG + 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 + 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 0000000000..13335beb6d --- /dev/null +++ b/package/xvisor/xvisor.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 9347080c3481fb8586d196dd51a580a57084bfea1bc425e89f7fa0da7170708a xvisor-0.2.8.tar.gz diff --git a/package/xvisor/xvisor.mk b/package/xvisor/xvisor.mk new file mode 100644 index 0000000000..a9a5dbfaec --- /dev/null +++ b/package/xvisor/xvisor.mk @@ -0,0 +1,72 @@ +################################################################################ +# +# xvisor +# +################################################################################ + +XVISOR_VERSION = 0.2.8 +XVISOR_SITE = http://www.xhypervisor.org/tarball +XVISOR_LICENSE = GPLv2+ +XVISOR_LICENSE_FILES = COPYING +XVISOR_INSTALL_IMAGES = YES +XVISOR_INSTALL_TARGET = NO + +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 + +XVISOR_MAKE_ENV = \ + ARCH=$(if $(BR2_x86_64),x86,$(BR2_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/xvkbd.mk b/package/xvkbd/xvkbd.mk index e03f7233aa..14e3f42f67 100644 --- a/package/xvkbd/xvkbd.mk +++ b/package/xvkbd/xvkbd.mk @@ -12,12 +12,12 @@ XVKBD_LICENSE_FILES = README # Passing USRLIBDIR ensures that the stupid Makefile doesn't add # /usr/lib to the library search path. define XVKBD_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ USRLIBDIR="$(STAGING_DIR)/usr/lib" endef define XVKBD_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install endef XVKBD_DEPENDENCIES = \ diff --git a/package/xxhash/xxhash.hash b/package/xxhash/xxhash.hash new file mode 100644 index 0000000000..31081c01d8 --- /dev/null +++ b/package/xxhash/xxhash.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9743539ed787ea9bd5bb348265cebdd5adcbf820ad329bf44c28bc69ab4c7cd8 xxhash-r40.tar.gz diff --git a/package/xz/xz.hash b/package/xz/xz.hash index f723f7e305..20a4a47432 100644 --- a/package/xz/xz.hash +++ b/package/xz/xz.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 6ff5f57a4b9167155e35e6da8b529de69270efb2b4cf3fbabf41a4ee793840b5 xz-5.2.2.tar.bz2 +sha256 fd9ca16de1052aac899ad3495ad20dfa906c27b4a5070102a2ec35ca3a4740c1 xz-5.2.3.tar.bz2 diff --git a/package/xz/xz.mk b/package/xz/xz.mk index 5e1d7c6f15..40adb3d107 100644 --- a/package/xz/xz.mk +++ b/package/xz/xz.mk @@ -4,7 +4,7 @@ # ################################################################################ -XZ_VERSION = 5.2.2 +XZ_VERSION = 5.2.3 XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2 XZ_SITE = http://tukaani.org/xz XZ_INSTALL_STAGING = YES diff --git a/package/yaffs2utils/yaffs2utils.hash b/package/yaffs2utils/yaffs2utils.hash new file mode 100644 index 0000000000..4e5846e065 --- /dev/null +++ b/package/yaffs2utils/yaffs2utils.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 9b0912bf683eb839b6e57c9255c83894c3b700d16489a49d319c54c1abf8f6d7 0.2.9.tar.gz diff --git a/package/yaml-cpp/Config.in b/package/yaml-cpp/Config.in index 3cfb955a5f..c1ba410a6b 100644 --- a/package/yaml-cpp/Config.in +++ b/package/yaml-cpp/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_YAML_CPP bool "yaml-cpp" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS # boost - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on BR2_USE_WCHAR # boost select BR2_PACKAGE_BOOST help @@ -12,5 +11,4 @@ config BR2_PACKAGE_YAML_CPP https://code.google.com/p/yaml-cpp/ comment "yaml-cpp needs a toolchain w/ C++, threads, wchar" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/yaml-cpp/yaml-cpp.hash b/package/yaml-cpp/yaml-cpp.hash new file mode 100644 index 0000000000..7d6753732c --- /dev/null +++ b/package/yaml-cpp/yaml-cpp.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 6fb92f6f5925e0af918ffbb90acf19b7b88706ebcd40fc186b7caa76609b6350 yaml-cpp-0.5.2.tar.gz diff --git a/package/yasm/yasm.mk b/package/yasm/yasm.mk index 6729b6a74d..1980034429 100644 --- a/package/yasm/yasm.mk +++ b/package/yasm/yasm.mk @@ -6,6 +6,8 @@ YASM_VERSION = 1.3.0 YASM_SITE = http://www.tortall.net/projects/yasm/releases +YASM_LICENSE = BSD-2c, BSD-3c, Artistic, GPLv2, LGPLv2 +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. diff --git a/package/ympd/ympd.hash b/package/ympd/ympd.hash new file mode 100644 index 0000000000..7483083b4d --- /dev/null +++ b/package/ympd/ympd.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 092c26c51166d1d1f025cd06742981783dea7e42bfe4f73f10c4418fc003de94 ympd-v1.2.3.tar.gz diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk index 54e11e3eed..aba78d1be0 100644 --- a/package/zbar/zbar.mk +++ b/package/zbar/zbar.mk @@ -12,6 +12,8 @@ ZBAR_LICENSE_FILES = LICENSE ZBAR_INSTALL_STAGING = YES ZBAR_AUTORECONF = YES ZBAR_DEPENDENCIES = libv4l jpeg +# add host-gettext for AM_ICONV macro +ZBAR_DEPENDENCIES += host-gettext ZBAR_CONF_OPTS = \ --without-imagemagick \ --without-qt \ diff --git a/package/zeromq/Config.in b/package/zeromq/Config.in index d5c9deae37..53cbbb8fb2 100644 --- a/package/zeromq/Config.in +++ b/package/zeromq/Config.in @@ -1,11 +1,9 @@ -comment "zeromq needs a toolchain w/ C++, wchar, threads" - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) +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_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID @@ -38,10 +36,16 @@ config BR2_PACKAGE_ZEROMQ_NORM 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) diff --git a/package/zeromq/zeromq.hash b/package/zeromq/zeromq.hash index a3eeb451ca..76067d93f5 100644 --- a/package/zeromq/zeromq.hash +++ b/package/zeromq/zeromq.hash @@ -1,4 +1,4 @@ -# From http://download.zeromq.org/SHA1SUMS: -sha1 b632a4b6f8a14390dc17824e37ff7b10831ce2b4 zeromq-4.1.4.tar.gz +# From https://github.com/zeromq/zeromq4-1/releases +sha1 2b7490b77860be3060b1b1f92cd73184d309ca69 zeromq-4.1.5.tar.gz # Calculated based on the hash above -sha256 e99f44fde25c2e4cb84ce440f87ca7d3fe3271c2b8cfbc67d55e4de25e6fe378 zeromq-4.1.4.tar.gz +sha256 04aac57f081ffa3a2ee5ed04887be9e205df3a7ddade0027460b8042432bdbcf zeromq-4.1.5.tar.gz diff --git a/package/zeromq/zeromq.mk b/package/zeromq/zeromq.mk index 871f37ceab..5c99983b53 100644 --- a/package/zeromq/zeromq.mk +++ b/package/zeromq/zeromq.mk @@ -4,10 +4,11 @@ # ################################################################################ -ZEROMQ_VERSION = 4.1.4 -ZEROMQ_SITE = http://download.zeromq.org +ZEROMQ_VERSION = 4.1.5 +ZEROMQ_SITE = https://github.com/zeromq/zeromq4-1/releases/download/v$(ZEROMQ_VERSION) ZEROMQ_INSTALL_STAGING = YES ZEROMQ_DEPENDENCIES = util-linux +ZEROMQ_CONF_OPTS = --without-documentation ZEROMQ_LICENSE = LGPLv3+ with exceptions ZEROMQ_LICENSE_FILES = COPYING COPYING.LESSER # For 0001-acinclude.m4-make-kernel-specific-flags-cacheable.patch 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 0000000000..f4b2590525 --- /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 +@@ -437,7 +437,7 @@ INSTALL: ALL install date.1 + cp date $(DESTDIR)$(BINDIR)/. + cp -f date.1 $(DESTDIR)$(MANDIR)/man1/. + +-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 index be790d78e3..6fe27bd2fc 100644 --- a/package/zic/zic.hash +++ b/package/zic/zic.hash @@ -1,2 +1,2 @@ -# From: http://mm.icann.org/pipermail/tz-announce/2016-April/000038.html -sha512 c6f6259a78fadaab293be0a4123c226d1a327588639cfa8dadb5a74bd58552892a0c87cfd3a33888f886f51aff34465c89505f0892e6bcbe24247a9160e7328c tzcode2016d.tar.gz +# From http://mm.icann.org/pipermail/tz-announce/2016-November/000044.html +sha512 cac19dded22ff80cd784641ac239358c28cce535ac1eb60b52b7e51c6e9e5fe5f795ea0252daf32c949dddb9c5b24d7e4456d7869aa2725d49c5af58b564822a tzcode2016j.tar.gz diff --git a/package/zic/zic.mk b/package/zic/zic.mk index d9cdb4dcbb..ed7b04eb94 100644 --- a/package/zic/zic.mk +++ b/package/zic/zic.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZIC_VERSION = 2016d +ZIC_VERSION = 2016j ZIC_SOURCE = tzcode$(ZIC_VERSION).tar.gz ZIC_SITE = http://www.iana.org/time-zones/repository/releases ZIC_STRIP_COMPONENTS = 0 diff --git a/package/zip/zip.mk b/package/zip/zip.mk index 5338f88166..66d94b3c68 100644 --- a/package/zip/zip.mk +++ b/package/zip/zip.mk @@ -27,26 +27,26 @@ ZIP_TARGET_CFLAGS = \ $(filter-out -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE,$(TARGET_CFLAGS)) define ZIP_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ + $(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 - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ prefix=$(TARGET_DIR)/usr endef define HOST_ZIP_BUILD_CMDS - $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) \ + $(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 - $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ prefix=$(HOST_DIR)/usr endef diff --git a/package/zlib/Config.in b/package/zlib/Config.in index f62330486b..6201aba142 100644 --- a/package/zlib/Config.in +++ b/package/zlib/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_ZLIB Standard (de)compression library. Used by things like gzip and libpng. - http://www.gzip.org/zlib/ + http://www.zlib.net diff --git a/package/zlib/zlib.hash b/package/zlib/zlib.hash index d6382f8d3b..81cb64ef62 100644 --- a/package/zlib/zlib.hash +++ b/package/zlib/zlib.hash @@ -1,2 +1,2 @@ # From http://www.zlib.net/ -md5 28f1205d8dd2001f26fec1e8c2cebe37 zlib-1.2.8.tar.xz +sha256 4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066 zlib-1.2.11.tar.xz diff --git a/package/zlib/zlib.mk b/package/zlib/zlib.mk index aec9daf6fe..deea5a5ee7 100644 --- a/package/zlib/zlib.mk +++ b/package/zlib/zlib.mk @@ -4,9 +4,9 @@ # ################################################################################ -ZLIB_VERSION = 1.2.8 +ZLIB_VERSION = 1.2.11 ZLIB_SOURCE = zlib-$(ZLIB_VERSION).tar.xz -ZLIB_SITE = http://downloads.sourceforge.net/project/libpng/zlib/$(ZLIB_VERSION) +ZLIB_SITE = http://www.zlib.net ZLIB_LICENSE = zlib license ZLIB_LICENSE_FILES = README ZLIB_INSTALL_STAGING = YES @@ -44,19 +44,19 @@ define HOST_ZLIB_CONFIGURE_CMDS endef define ZLIB_BUILD_CMDS - $(MAKE1) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) endef define HOST_ZLIB_BUILD_CMDS - $(MAKE1) -C $(@D) + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) endef define ZLIB_INSTALL_STAGING_CMDS - $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) LDCONFIG=true install + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) LDCONFIG=true install endef define ZLIB_INSTALL_TARGET_CMDS - $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) LDCONFIG=true install + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) LDCONFIG=true install endef # We don't care removing the .a from target, since it not used at link @@ -70,7 +70,7 @@ ZLIB_POST_INSTALL_STAGING_HOOKS += ZLIB_RM_STATIC_STAGING endif define HOST_ZLIB_INSTALL_CMDS - $(MAKE1) -C $(@D) LDCONFIG=true install + $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) LDCONFIG=true install endef $(eval $(generic-package)) diff --git a/package/zlog/zlog.hash b/package/zlog/zlog.hash new file mode 100644 index 0000000000..1de23c9a71 --- /dev/null +++ b/package/zlog/zlog.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 d3afb1f0ce67df29f759da74235949370ac2818faf242f3f674cb48f9f4c57d3 zlog-6ddb9bbf3ff0123e701bf60996f351576ebe9c00.tar.gz diff --git a/package/zlog/zlog.mk b/package/zlog/zlog.mk index fb8762c671..4f7f46928d 100644 --- a/package/zlog/zlog.mk +++ b/package/zlog/zlog.mk @@ -4,23 +4,23 @@ # ################################################################################ -ZLOG_VERSION = ca6162be1608839e99c6388c28488c51ccf98e4a +ZLOG_VERSION = 6ddb9bbf3ff0123e701bf60996f351576ebe9c00 ZLOG_SITE = $(call github,HardySimpson,zlog,$(ZLOG_VERSION)) ZLOG_LICENSE = LGPLv2.1 ZLOG_LICENSE_FILES = COPYING ZLOG_INSTALL_STAGING = YES define ZLOG_BUILD_CMDS - $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + $(TARGET_MAKE_ENV) $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ -C $(@D) all endef define ZLOG_INSTALL_STAGING_CMDS - $(MAKE) PREFIX=$(STAGING_DIR)/usr -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=$(STAGING_DIR)/usr -C $(@D) install endef define ZLOG_INSTALL_TARGET_CMDS - $(MAKE) PREFIX=$(TARGET_DIR)/usr -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) PREFIX=$(TARGET_DIR)/usr -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/zmqpp/Config.in b/package/zmqpp/Config.in index 602425fc88..04a6d24100 100644 --- a/package/zmqpp/Config.in +++ b/package/zmqpp/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_ZMQPP # c++1x support depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq select BR2_PACKAGE_ZEROMQ help @@ -14,9 +13,9 @@ config BR2_PACKAGE_ZMQPP http://github.com/benjamg/zmqpp -comment "zmqpp needs a toolchain w/ C++, wchar, threads, gcc >= 4.7" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 +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 if BR2_PACKAGE_ZMQPP @@ -24,15 +23,15 @@ config BR2_PACKAGE_ZMQPP_CLIENT bool "zmqpp client" depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_THREADS # boost - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + 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" - depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS - depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS +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/znc/znc.hash b/package/znc/znc.hash index f243d4ab02..368235141b 100644 --- a/package/znc/znc.hash +++ b/package/znc/znc.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 631c46de76fe601a41ef7676bc974958e9a302b72b25fc92b4a603a25d89b827 znc-1.6.3.tar.gz +sha256 431097eb17860bfc980f3e68fdd75f98af4bdeecd793c84835c6cb11c3320d1c znc-1.6.4.tar.gz diff --git a/package/znc/znc.mk b/package/znc/znc.mk index 31e1bcf6c3..5b96ee529d 100644 --- a/package/znc/znc.mk +++ b/package/znc/znc.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZNC_VERSION = 1.6.3 +ZNC_VERSION = 1.6.4 ZNC_SITE = http://znc.in/releases ZNC_LICENSE = Apache-2.0 ZNC_LICENSE_FILES = LICENSE diff --git a/package/zsh/0001-configure-use-user-set-pcre-config.patch b/package/zsh/0001-configure-use-user-set-pcre-config.patch deleted file mode 100644 index d4cf59bddd..0000000000 --- a/package/zsh/0001-configure-use-user-set-pcre-config.patch +++ /dev/null @@ -1,33 +0,0 @@ -From: Baruch Siach -Date: Thu, 3 Mar 2016 23:14:39 +0200 -Subject: [PATCH] configure: use user set pcre-config - -Setting a non default configuration script location is common practice when -cross compiling, since the target library might need different flags. zsh -configure scripts allows the user to set pcre-config location but doesn't -actually use it. Fix this. - -Signed-off-by: Baruch Siach ---- -Patch status: sent upstream -(http://www.zsh.org/mla/workers/2016/msg00619.html) - - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index c3bd713c126a..9947b16066b6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -925,7 +925,7 @@ fi - if test x$enable_pcre = xyes; then - dnl pcre-config should probably be employed here - dnl AC_SEARCH_LIBS(pcre_compile, pcre) -- LIBS="`pcre-config --libs` $LIBS" -+ LIBS="`$ac_cv_prog_PCRECONF --libs` $LIBS" - fi - - dnl --------------------- --- -2.7.0 - diff --git a/package/zsh/Config.in b/package/zsh/Config.in index 261df42678..ed8cf678de 100644 --- a/package/zsh/Config.in +++ b/package/zsh/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_ZSH bool "zsh" depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS select BR2_PACKAGE_NCURSES help zsh is a shell designed for interactive use, although it is also diff --git a/package/zsh/zsh.hash b/package/zsh/zsh.hash index 6793162652..0eeebd43f4 100644 --- a/package/zsh/zsh.hash +++ b/package/zsh/zsh.hash @@ -1,4 +1,4 @@ # From http://www.zsh.org/pub/MD5SUM -md5 afe96fde08b70e23c1cab1ca7a68fb34 zsh-5.2.tar.xz +md5 c5ba34e68fcf62a2e78adc56bf3d328a zsh-5.3.tar.xz # Calculated based on the hash above -sha256 f17916320ffaa844bbd7ce48ceeb5945fc5f3eff64b149b4229bbfbdf3795a9d zsh-5.2.tar.xz +sha256 76f82cfd5ce373cf799a03b6f395283f128430db49202e3e3f512fb5a19d6f8a zsh-5.3.tar.xz diff --git a/package/zsh/zsh.mk b/package/zsh/zsh.mk index aa4029f1a2..9d11b9713d 100644 --- a/package/zsh/zsh.mk +++ b/package/zsh/zsh.mk @@ -4,13 +4,11 @@ # ################################################################################ -ZSH_VERSION = 5.2 +ZSH_VERSION = 5.3 ZSH_SITE = http://www.zsh.org/pub ZSH_SOURCE = zsh-$(ZSH_VERSION).tar.xz ZSH_DEPENDENCIES = ncurses ZSH_CONF_OPTS = --bindir=/bin -# Patching configure.ac -ZSH_AUTORECONF = YES ZSH_LICENSE = MIT-like ZSH_LICENSE_FILES = LICENCE diff --git a/package/zxing-cpp/zxing-cpp.hash b/package/zxing-cpp/zxing-cpp.hash index e38a61236a..4625fbf61c 100644 --- a/package/zxing-cpp/zxing-cpp.hash +++ b/package/zxing-cpp/zxing-cpp.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 164c0bc9f1ce2ff5659fddce6da71f8cdda091751f3b71140c090b58451a2b04 zxing-cpp-fa34227d26e0b388e65b81936a2681952928f5be.tar.gz +sha256 643c931a35c363109cd38c5a1526505b75f57c0634907cb7b6bc24f6f48eb32b zxing-cpp-0db7f855135222becff193671faae79c083424b6.tar.gz diff --git a/package/zxing-cpp/zxing-cpp.mk b/package/zxing-cpp/zxing-cpp.mk index 7344dc1c06..7113ae2b06 100644 --- a/package/zxing-cpp/zxing-cpp.mk +++ b/package/zxing-cpp/zxing-cpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZXING_CPP_VERSION = fa34227d26e0b388e65b81936a2681952928f5be +ZXING_CPP_VERSION = 0db7f855135222becff193671faae79c083424b6 ZXING_CPP_SITE = $(call github,glassechidna,zxing-cpp,$(ZXING_CPP_VERSION)) ZXING_CPP_LICENSE = Apache-2.0 ZXING_CPP_LICENSE_FILES = COPYING diff --git a/package/zyre/Config.in b/package/zyre/Config.in index a6aef60709..21a0884ec6 100644 --- a/package/zyre/Config.in +++ b/package/zyre/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_ZYRE bool "zyre" depends on BR2_INSTALL_LIBSTDCPP # zeromq - depends on BR2_USE_WCHAR # zeromq depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_MMU # czmq select BR2_PACKAGE_CZMQ @@ -12,7 +11,6 @@ config BR2_PACKAGE_ZYRE http://zyre.org -comment "zyre needs a toolchain w/ C++, wchar, threads" +comment "zyre needs a toolchain w/ C++, threads" depends on BR2_USE_MMU - depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ - BR2_TOOLCHAIN_HAS_THREADS) + 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 0000000000..5b38b8039d --- /dev/null +++ b/package/zyre/zyre.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 0ce8328a2b9fe46aafc4627fc4ebd4d815f4d9f7d9708088459306c87bf5fb4b zyre-1d949e4bf79b694ea883c325f5813e87ddc2a687.tar.gz diff --git a/package/zyre/zyre.mk b/package/zyre/zyre.mk index b17dfd022d..e47da975af 100644 --- a/package/zyre/zyre.mk +++ b/package/zyre/zyre.mk @@ -4,13 +4,14 @@ # ################################################################################ -ZYRE_VERSION = a351468b7d313fc90c446668122365851a9c60e4 +ZYRE_VERSION = 1d949e4bf79b694ea883c325f5813e87ddc2a687 ZYRE_SITE = $(call github,zeromq,zyre,$(ZYRE_VERSION)) -ZYRE_LICENSE = LGPLv3+ -ZYRE_LICENSE_FILES = COPYING COPYING.LESSER +ZYRE_LICENSE = MPLv2.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