Skip to contentSkip to conversation

misc cleanups

PATCH New Bernhard Reutner-Fischer 3 participants 61 messages Oct 7, 2009 – Oct 27, 2009

lore
Share & tools
lore
#0 lore raw

cover misc cleanups

Hi,

A bunch of individual (separate) touch-ups. They are only numbered so i can easily keep track.

I've split the arch selection improvements into 2 parts as requested by Peter and at the end of the series, the _nofpu/_nommu suffix is dropped.

Peter, please apply or pull from my config-cleanup branch TIA,
Bernhard

Bernhard Reutner-Fischer (14):
allow menuconfig without a LINUX26_KCONFIG file Allow for specifying kernel version manually handle MMU configuration
expand arch selection
remove superfluous OPTIMIZE and DEBUG config knobs allow for testing gcc-4.5
*-menuconfig needs dirs to exist
remove BR2_FPU_SUFFIX
tidy up ROOTFS_{PRE,SUF}FIX handling
honour DISABLE_IPV6
disable-locale implies turning off locale and iconv
rsync: bump version
enable config.cache per default
libpcap, tcpdump: bump version and autotoolify

 Config.in                                          |  109 +---
 package/Makefile.autotools.in                      |    1 +
 package/Makefile.in                                |   52 +--
 package/busybox/busybox.mk                         |    2 +-
 package/libpcap/libpcap.mk                         |   92 +---
 package/libpcap/libpcap.patch                      |   13 -
 package/rsync/rsync.mk                             |    8 +-
 .../tcpdump/tcpdump-4.0.0-100-disable-ipv6.patch   |   21 +
 package/tcpdump/tcpdump.mk                         |   77 +--
 target/Config.in.arch                              |  674 ++++++++++++++++++--
 target/linux/Makefile.in                           |   10 +-
 toolchain/Config.in.2                              |   12 +
 toolchain/gcc/Config.in                            |   12 +-
 toolchain/gcc/Makefile.in                          |    5 +
 toolchain/kernel-headers/Config.in                 |   13 +-
 toolchain/uClibc/uclibc.mk                         |    2 +-
 16 files changed, 719 insertions(+), 384 deletions(-)
 delete mode 100644 package/libpcap/libpcap.patch
 create mode 100644 package/tcpdump/tcpdump-4.0.0-100-disable-ipv6.patch
#1 lore raw

PATCH 1/14 allow menuconfig without a LINUX26_KCONFIG file

---
 target/linux/Makefile.in |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)
target/linux/Makefile.in +5 -1
index cf430d9..c4962bd 100644
@@ -202,7 +202,11 @@ $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep: $(LINUX26_DIR)/.config
 	touch -c $@
 
 linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
-	[ -f $(LINUX26_DIR)/.config ] || cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config
+	if [ ! -f $(LINUX26_DIR)/.config ]; then \
+		[ -n "$(LINUX26_KCONFIG)" ] && [ -f $(LINUX26_KCONFIG) ] && \
+			cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config || \
+			true; \
+	fi
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) menuconfig
 	-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
 
Signature · 1 line
1.6.3.3
#2 lore raw

PATCH 2/14 Allow for specifying kernel version manually

---
 toolchain/kernel-headers/Config.in |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)
toolchain/kernel-headers/Config.in +11 -2
index 1141d88..433c254 100644
@@ -39,9 +39,11 @@ choice
 	config BR2_KERNEL_HEADERS_2_6_31
 		bool "Linux 2.6.31.x kernel headers"
 
+	config BR2_KERNEL_HEADERS_VERSION
+		bool "Linux 2.6 (manually specified version)"
+
 	config BR2_KERNEL_HEADERS_SNAP
 		bool "Linux 2.6 snapshot"
-
 endchoice
 
 config BR2_KERNEL_HEADERS_RT
@@ -50,6 +52,13 @@ config BR2_KERNEL_HEADERS_RT
 	help
 	  Apply Ingo's realtime extensions to linux
 
+config BR2_DEFAULT_KERNEL_VERSION
+	string "linux version"
+	depends on BR2_KERNEL_HEADERS_VERSION
+	help
+	  Specify the version you want to use.
+	  E.g.: 2.6.31.2
+
 config BR2_DEFAULT_KERNEL_HEADERS
 	string
 	default "2.6.26.8"	if BR2_KERNEL_HEADERS_2_6_26
@@ -59,4 +68,4 @@ config BR2_DEFAULT_KERNEL_HEADERS
 	default "2.6.30.9"	if BR2_KERNEL_HEADERS_2_6_30
 	default "2.6.31.2"	if BR2_KERNEL_HEADERS_2_6_31
 	default "2.6"		if BR2_KERNEL_HEADERS_SNAP
-
+	default $BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
Signature · 1 line
1.6.3.3
#3 lore raw

PATCH 3/14 handle MMU configuration

some arches do not have an MMU at all, some do but it may be desirable not to use it.

---
 toolchain/Config.in.2     |   12 ++++++++++++
 toolchain/gcc/Makefile.in |    5 +++++
 2 files changed, 17 insertions(+), 0 deletions(-)
toolchain/Config.in.2 +12 -0
index 2a9ce24..d8f7ca0 100644
@@ -85,6 +85,18 @@ config BR2_SOFT_FLOAT
 
 	  Most people will answer N.
 
+config BR2_HAVE_NOMMU
+	def_bool n
+	# assume that we have an MMU per default.
+
+config BR2_USE_MMU
+	bool "Use MMU"
+	default y
+	depends on !BR2_HAVE_NOMMU
+	help
+	  If your target has an MMU and you want to use it
+	  then say Y here.
+
 config BR2_USE_SSP
 	bool "Enable stack protection support"
 	help
toolchain/gcc/Makefile.in +5 -0
index e052b83..3c6ddd1 100644
@@ -49,6 +49,11 @@ SOFT_FLOAT_CONFIG_OPTION:=
 TARGET_SOFT_FLOAT:=
 ARCH_FPU_SUFFIX:=
 endif
+ifeq ($(BR2_USE_MMU),y)
+ARCH_MMU_SUFFIX:=
+else
+ARCH_MMU_SUFFIX:=_nommu
+endif
 
 # some additional defaults
 ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),)
Signature · 1 line
1.6.3.3
#4 lore raw

PATCH 4/14 expand arch selection

---
 target/Config.in.arch |  674 ++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 613 insertions(+), 61 deletions(-)
target/Config.in.arch +613 -61
index e82c8f4..3b3a809 100644
@@ -14,6 +14,8 @@ config BR2_armeb
 config BR2_avr32
 	bool "avr32"
 	select BR2_SOFT_FLOAT
+config BR2_bfin
+	bool "bfin"
 config BR2_cris
 	bool "cris"
 config BR2_ia64
@@ -23,7 +25,6 @@ config BR2_i386
 	bool "i386"
 config BR2_m68k
 	bool "m68k"
-	depends on BROKEN # ice in uclibc / inet_ntoa_r
 config BR2_mips
 	bool "mips"
 config BR2_mipsel
@@ -33,6 +34,8 @@ config BR2_nios2
 	depends on BROKEN # no kernel headers
 config BR2_powerpc
 	bool "powerpc"
+config BR2_s390
+	bool "s390"
 config BR2_sh
 	bool "superh"
 config BR2_sh64
@@ -136,7 +139,7 @@ choice
 	default BR2_mips_1 if BR2_mipsel
 	help
 	  Specific CPU variant to use
-	
+
 	  64bit cabable: 3, 4, 64, 64r2
 	  non-64bit capable: 1, 2, 32, 32r2
 
@@ -232,49 +235,70 @@ config BR2_x86_i686
 	bool "i686"
 config BR2_x86_pentiumpro
 	bool "pentium pro"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_pentium_mmx
 	bool "pentium MMX"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_pentium_m
 	bool "pentium mobile"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_pentium2
 	bool "pentium2"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_pentium3
 	bool "pentium3"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_pentium4
 	bool "pentium4"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_prescott
 	bool "prescott"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_nocona
 	bool "nocona"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_core2
 	bool "core2"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_k6
 	bool "k6"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_k6_2
 	bool "k6-2"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_athlon
 	bool "athlon"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_athlon_4
 	bool "athlon-4"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_opteron
 	bool "opteron"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_opteron_sse3
 	bool "opteron w/ SSE3"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_barcelona
 	bool "barcelona"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_geode
 	bool "geode"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_c3
 	bool "cyrix 3 (MMX + 3dNOW!)"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_winchip_c6
 	bool "IDT winchip C6 (i486 + slow MMX)"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 config BR2_x86_winchip2
 	bool "IDT winchip2 (i486 +MMX +SSE)"
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 endchoice
 
 choice
 	prompt "Target Architecture Variant"
 	depends on BR2_x86_64
+	depends on BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 	default BR2_x86_64_generic
 	help
 	  Specific CPU variant to use
@@ -316,6 +340,25 @@ endchoice
 
 choice
 	prompt "Target Architecture Variant"
+	depends on BR2_s390
+	default BR2_s390_g5
+	help
+	  Specific CPU variant to use
+
+config BR2_s390_g5
+	bool "g5"
+config BR2_s390_g6
+	bool "g6"
+config BR2_s390_z900
+	bool "z900"
+config BR2_s390_z990
+	bool "z990"
+config BR2_s390_z9_109
+	bool "z9_109"
+endchoice
+
+choice
+	prompt "Target Architecture Variant"
 	depends on BR2_sparc
 	default BR2_sparc_v7
 	help
@@ -401,38 +444,6 @@ endchoice
 
 choice
 	prompt "Target Architecture Variant"
-	depends on BR2_xtensa
-	default BR2_xtensa_dc232b
-	help
-	  Specific CPU variant to use
-
-config BR2_xtensa_custom
-	bool "Custom Xtensa processor configuration"
-config BR2_xtensa_dc232a
-	bool "dc232a - Diamond 232L Standard Core Rev.A (LE)"
-config BR2_xtensa_dc232b
-	bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
-#config BR2_xtensa_s5000
-#	bool "s5000 - Stretch S5000"
-endchoice
-
-config BR2_xtensa_custom_name
-	string "Custom Xtensa processor configuration name"
-	depends on BR2_xtensa_custom
-	default ""
-	help
-	  Name given to a custom Xtensa processor configuration.
-	  This is used to select the correct overlay.
-
-config BR2_xtensa_core_name
-	string
-	default BR2_xtensa_custom_name	if BR2_xtensa_custom
-	default "dc232a"		if BR2_xtensa_dc232a
-	default "dc232b"		if BR2_xtensa_dc232b
-#	default "s5000"			if BR2_xtensa_s5000
-
-choice
-	prompt "Target Architecture Variant"
 	depends on BR2_powerpc
 	default BR2_generic_powerpc
 	help
@@ -441,16 +452,25 @@ config BR2_generic_powerpc
 	bool "generic"
 config BR2_powerpc_401
 	bool "401"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_403
 	bool "403"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_405
 	bool "405"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_405fp
 	bool "405 with FPU"
 config BR2_powerpc_440
 	bool "440"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_440fp
 	bool "440 with FPU"
+config BR2_powerpc_464
+	bool "464"
+	select BR2_SOFT_FLOAT_FORCE
+config BR2_powerpc_464fp
+	bool "464 with FPU"
 config BR2_powerpc_505
 	bool "505"
 config BR2_powerpc_601
@@ -479,17 +499,421 @@ config BR2_powerpc_750
 	bool "750"
 config BR2_powerpc_801
 	bool "801"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_821
 	bool "821"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_823
 	bool "823"
+	select BR2_SOFT_FLOAT_FORCE
+config BR2_powerpc_8540
+	bool "8540"
+config BR2_powerpc_e300c2
+	bool "e300c2"
+	select BR2_SOFT_FLOAT_FORCE
+config BR2_powerpc_e300c3
+	bool "e300c3"
+config BR2_powerpc_e500mc
+	bool "e500mc"
 config BR2_powerpc_860
 	bool "860"
+	select BR2_SOFT_FLOAT_FORCE
 config BR2_powerpc_970
 	bool "970"
-config BR2_powerpc_8540
-	bool "8540"
+config BR2_powerpc_cell
+	bool "cell"
+endchoice
+
+choice
+	prompt "Target Architecture Variant"
+	depends on BR2_bfin
+	default BR2_bf537
+	help
+	  Specific CPU variant to use
+config BR2_bf522
+	bool "bf522"
+config BR2_bf525
+	bool "bf525"
+config BR2_bf527
+	bool "bf527"
+config BR2_bf531
+	bool "bf531"
+config BR2_bf532
+	bool "bf532"
+config BR2_bf533
+	bool "bf533"
+config BR2_bf534
+	bool "bf534"
+config BR2_bf536
+	bool "bf536"
+config BR2_bf537
+	bool "bf537"
+config BR2_bf538
+	bool "bf538"
+config BR2_bf539
+	bool "bf539"
+config BR2_bf542
+	bool "bf542"
+config BR2_bf544
+	bool "bf544"
+config BR2_bf548
+	bool "bf548"
+config BR2_bf549
+	bool "bf549"
+config BR2_bf561
+	bool "bf561"
+endchoice
+
+config BR2_bfin_sirevision
+	string "sirevision"
+	depends on BR2_bfin
+	default any
+	help
+	  If sirevision is none, no workarounds are enabled.
+	  If sirevision is any, all workarounds for the targeted
+	  processor will be enabled.
+	  See man gcc for details.
+
+	  Default: any
+
+choice
+	prompt "Target Architecture Variant"
+	depends on BR2_cris
+	default BR2_cris_cris
+	help
+	  Architecture variant.
+config BR2_cris_cris
+	bool "cris"
+config BR2_cris_crisv32
+	bool "crisv32"
+endchoice
+choice
+	prompt "Target CPU Variant"
+	depends on BR2_cris
+	default BR2_cris_generic
+	help
+	  CPU variant.
+config BR2_cris_generic
+	bool "generic (v10)"
+config BR2_cris_unknown
+	bool "unknown (v0)"
+config BR2_cris_etrax_4
+	bool "etrax_4 (v3)"
+config BR2_cris_etrax_100
+	bool "etrax_100 (v8)"
+config BR2_cris_etrax_100lx
+	bool "etrax_100lx (v10)"
+endchoice
+
+choice
+	prompt "Target Type"
+	depends on BR2_m68k
+	default BR2_m68k_type_m68k
+	help
+	  Specific architecture type to use
+
+config BR2_m68k_type_m68k
+	bool "m68k / M680x0"
+	help
+	  Normal 680xx
+
+config BR2_m68k_type_coldfire
+	bool "coldfire / 520X"
+	help
+	  ColdFire
+
+	  Family | CPUs
+
+	  51qe		51qe
+	  5206		5202 5204 5206
+	  5206e		5206e
+	  5208		5207 5208
+	  5211a		5210a 5211a
+	  5213		5211 5212 5213
+	  5216		5214 5216
+	  52235		52230 52231 52232 52233 52234 52235
+	  5225		5224 5225
+	  5235		5232 5233 5234 5235 523x
+	  5249		5249
+	  5250		5250
+	  5271		5270 5271
+	  5272		5272
+	  5275		5274 5275
+	  5282		5280 5281 5282 528x
+	  5307		5307
+	  5329		5327 5328 5329 532x
+	  5373		5372 5373 537x
+	  5407		5407
+	  5475		5470 5471 5472 5473 5474 5475 547x 5480 5481 5482 5483 5484 5485
+endchoice
+
+if BR2_m68k_type_m68k
+choice
+	prompt "Target CPU Variant"
+	depends on BR2_m68k
+	default BR2_m68k_cpu_m68k_none
+	help
+	  Specific CPU variant to use
+
+config BR2_m68k_cpu_m68k_none
+	bool "none"
+	help
+	  Select this dummy if you do not want to use a specific CPU.
+
+config BR2_m68k_cpu_68000
+	bool "68000"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_68010
+	bool "68010"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_68020
+	bool "68020"
+config BR2_m68k_cpu_68030
+	bool "68030"
+config BR2_m68k_cpu_68040
+	bool "68040"
+config BR2_m68k_cpu_68060
+	bool "68060"
+config BR2_m68k_cpu_68302
+	bool "68302"
+config BR2_m68k_cpu_68332
+	bool "68332"
+config BR2_m68k_cpu_cpu32
+	bool "cpu32"
 endchoice
+endif
+
+if BR2_m68k_type_coldfire
+choice
+	prompt "Target CPU Variant"
+	depends on BR2_m68k
+	default BR2_m68k_cpu_coldfire_none
+	help
+	  Specific CPU variant to use
+
+config BR2_m68k_cpu_coldfire_none
+	bool "none"
+	help
+	  Select this dummy if you do not want to use a specific CPU.
+
+config BR2_m68k_cpu_coldfire_51qe
+	bool "51qe"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_coldfire_5202
+	bool "5202"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_coldfire_5204
+	bool "5204"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_coldfire_5206
+	bool "5206"
+	select BR2_HAVE_NOMMU
+config BR2_m68k_cpu_coldfire_5206e
+	bool "5206e"
+config BR2_m68k_cpu_coldfire_5207
+	bool "5207"
+config BR2_m68k_cpu_coldfire_5208
+	bool "5208"
+config BR2_m68k_cpu_coldfire_5210a
+	bool "5210a"
+config BR2_m68k_cpu_coldfire_5211a
+	bool "5211a"
+config BR2_m68k_cpu_coldfire_5211
+	bool "5211"
+config BR2_m68k_cpu_coldfire_5212
+	bool "5212"
+config BR2_m68k_cpu_coldfire_5213
+	bool "5213"
+config BR2_m68k_cpu_coldfire_5214
+	bool "5214"
+config BR2_m68k_cpu_coldfire_5216
+	bool "5216"
+config BR2_m68k_cpu_coldfire_52230
+	bool "52230"
+config BR2_m68k_cpu_coldfire_52231
+	bool "52231"
+config BR2_m68k_cpu_coldfire_52232
+	bool "52232"
+config BR2_m68k_cpu_coldfire_52233
+	bool "52233"
+config BR2_m68k_cpu_coldfire_52234
+	bool "52234"
+config BR2_m68k_cpu_coldfire_52235
+	bool "52235"
+config BR2_m68k_cpu_coldfire_5224
+	bool "5224"
+config BR2_m68k_cpu_coldfire_5225
+	bool "5225"
+config BR2_m68k_cpu_coldfire_5232
+	bool "5232"
+config BR2_m68k_cpu_coldfire_5233
+	bool "5233"
+config BR2_m68k_cpu_coldfire_5234
+	bool "5234"
+config BR2_m68k_cpu_coldfire_5235
+	bool "5235"
+config BR2_m68k_cpu_coldfire_523x
+	bool "523x"
+config BR2_m68k_cpu_coldfire_5249
+	bool "5249"
+config BR2_m68k_cpu_coldfire_5250
+	bool "5250"
+config BR2_m68k_cpu_coldfire_5270
+	bool "5270"
+config BR2_m68k_cpu_coldfire_5271
+	bool "5271"
+config BR2_m68k_cpu_coldfire_5272
+	bool "5272"
+config BR2_m68k_cpu_coldfire_5274
+	bool "5274"
+config BR2_m68k_cpu_coldfire_5275
+	bool "5275"
+config BR2_m68k_cpu_coldfire_5280
+	bool "5280"
+config BR2_m68k_cpu_coldfire_5281
+	bool "5281"
+config BR2_m68k_cpu_coldfire_5282
+	bool "5282"
+config BR2_m68k_cpu_coldfire_528x
+	bool "528x"
+config BR2_m68k_cpu_coldfire_5307
+	bool "5307"
+config BR2_m68k_cpu_coldfire_5327
+	bool "5327"
+config BR2_m68k_cpu_coldfire_5328
+	bool "5328"
+config BR2_m68k_cpu_coldfire_5329
+	bool "5329"
+config BR2_m68k_cpu_coldfire_532x
+	bool "532x"
+config BR2_m68k_cpu_coldfire_5372
+	bool "5372"
+config BR2_m68k_cpu_coldfire_5373
+	bool "5373"
+config BR2_m68k_cpu_coldfire_537x
+	bool "537x"
+config BR2_m68k_cpu_coldfire_5407
+	bool "5407"
+config BR2_m68k_cpu_coldfire_5470
+	bool "5470"
+config BR2_m68k_cpu_coldfire_5471
+	bool "5471"
+config BR2_m68k_cpu_coldfire_5472
+	bool "5472"
+config BR2_m68k_cpu_coldfire_5473
+	bool "5473"
+config BR2_m68k_cpu_coldfire_5474
+	bool "5474"
+config BR2_m68k_cpu_coldfire_5475
+	bool "5475"
+config BR2_m68k_cpu_coldfire_547x
+	bool "547x"
+config BR2_m68k_cpu_coldfire_5480
+	bool "5480"
+config BR2_m68k_cpu_coldfire_5481
+	bool "5481"
+config BR2_m68k_cpu_coldfire_5482
+	bool "5482"
+config BR2_m68k_cpu_coldfire_5483
+	bool "5483"
+config BR2_m68k_cpu_coldfire_5484
+	bool "5484"
+config BR2_m68k_cpu_coldfire_5485
+	bool "5485"
+endchoice
+endif
+
+if 0
+choice
+	prompt "Target tune"
+	depends on BR2_m68k
+	default BR2_m68k_tune_none
+	help
+	  Specific CPU variant to generate code for per default
+config BR2_m68k_68000
+	bool "68000"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_68010
+	bool "68010"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_68020
+	bool "68020"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_68030
+	bool "68030"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_68040
+	bool "68040"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_68060
+	bool "68060"
+	depends on BR2_m68k_type_m68k
+config BR2_m68k_cpu32
+	bool "cpu32"
+	depends on BR2_m68k_type_m68k
+
+config BR2_m68k_cfv1
+	bool "cfv1"
+	depends on BR2_m68k_type_coldfire
+config BR2_m68k_cfv2
+	bool "cfv2"
+	depends on BR2_m68k_type_coldfire
+config BR2_m68k_cfv3
+	bool "cfv3"
+	depends on BR2_m68k_type_coldfire
+config BR2_m68k_cfv4
+	bool "cfv4"
+	depends on BR2_m68k_type_coldfire
+config BR2_m68k_cfv4e
+	bool "cfv4e"
+	depends on BR2_m68k_type_coldfire
+config BR2_m68k_tune_none
+	bool "none"
+config BR2_m68k_tune_tune
+	bool "specify tune manually"
+endchoice
+
+config BR2_m68k_tune
+	string "Manual target tune string"
+	depends on BR2_m68k_tune_tune
+	help
+	  You can also use e.g. "68020-40" for code that needs to run
+	  relatively well on 68020, 68030 and 68040 targets.
+	  "68020-60" would do the same but additionally include 68060.
+endif
+
+choice
+	prompt "Target Architecture Variant"
+	depends on BR2_xtensa
+	default BR2_xtensa_dc232b
+	help
+	 Specific CPU variant to use
+
+config BR2_xtensa_custom
+	bool "Custom Xtensa processor configuration"
+config BR2_xtensa_dc232a
+	bool "dc232a - Diamond 232L Standard Core Rev.A (LE)"
+config BR2_xtensa_dc232b
+	bool "dc232b - Diamond 232L Standard Core Rev.B (LE)"
+#config BR2_xtensa_s5000
+#	bool "s5000 - Stretch S5000"
+endchoice
+
+config BR2_xtensa_custom_name
+	string "Custom Xtensa processor configuration name"
+	depends on BR2_xtensa_custom
+	default ""
+	help
+	 Name given to a custom Xtensa processor configuration.
+	 This is used to select the correct overlay.
+
+config BR2_xtensa_core_name
+	string
+	depends on BR2_xtensa_custom
+	default BR2_xtensa_custom_name  if BR2_xtensa_custom
+	default "dc232a"                if BR2_xtensa_dc232a
+	default "dc232b"                if BR2_xtensa_dc232b
+#	default "s5000"                 if BR2_xtensa_s5000
 
 config BR2_ARCH
 	string
@@ -497,18 +921,20 @@ config BR2_ARCH
 	default "arm"		if BR2_arm
 	default "armeb"		if BR2_armeb
 	default "avr32"		if BR2_avr32
-	default "cris"		if BR2_cris
+	default "bfin"		if BR2_bfin
+	default "cris"		if BR2_cris_cris
+	default "crisv32"	if BR2_cris_crisv32
 	default "i386"		if BR2_x86_i386
 	default "i486"		if BR2_x86_i486
 	default "i586"		if BR2_x86_i586
 	default "i586"		if BR2_x86_pentium_mmx
 	default "i586"		if BR2_x86_geode
 	default "i686"		if BR2_x86_i686
+	default "i686"		if BR2_x86_pentiumpro
 	default "i686"		if BR2_x86_pentium2
 	default "i686"		if BR2_x86_pentium3
-	default "i686"		if BR2_x86_pentium4
 	default "i686"		if BR2_x86_pentium_m
-	default "i686"		if BR2_x86_pentiumpro
+	default "i686"		if BR2_x86_pentium4
 	default "i686"		if BR2_x86_nocona
 	default "i686"		if BR2_x86_core2
 	default "ia64"		if BR2_ia64
@@ -517,6 +943,8 @@ config BR2_ARCH
 	default "mipsel"	if BR2_mipsel
 	default "nios2"		if BR2_nios2
 	default "powerpc"	if BR2_powerpc
+	default "s390"		if BR2_s390
+	default "s390"		if BR2_s390x
 	default "sh2a_nofpueb"	if BR2_sh2a_nofpueb
 	default "sh2eb"		if BR2_sh2eb
 	default "sh3"		if BR2_sh3
@@ -533,15 +961,15 @@ config BR2_ARCH
 	default "x86_64"	if BR2_x86_64_opteron
 	default "x86_64"	if BR2_x86_64_opteron_sse3
 	default "x86_64"	if BR2_x86_64_barcelona
-	default "xtensa"	if BR2_xtensa
 
 
 config BR2_ENDIAN
 	string
 	default "LITTLE" if BR2_arm || BR2_cris || BR2_i386 || BR2_mipsel || \
 			    BR2_sh3 || BR2_sh4 || BR2_x86_64 || BR2_nios2 || \
-			    BR2_sh64
-	default "BIG"    if BR2_alpha || BR2_armeb || BR2_avr32 || BR2_m68k || BR2_mips || \
+			    BR2_sh64 || BR2_bfin
+	default "BIG"    if BR2_alpha || BR2_armeb || BR2_avr32 || BR2_m68k || \
+			    BR2_mips || \
 			    BR2_powerpc || BR2_sh2a_nofpueb || BR2_sh2eb || \
 			    BR2_sh3eb || BR2_sh4eb || BR2_sparc || BR2_sparc64
 
@@ -595,11 +1023,6 @@ config BR2_GCC_TARGET_TUNE
 	default strongarm1100	if BR2_sa1100
 	default xscale		if BR2_xscale
 	default iwmmxt		if BR2_iwmmxt
-	default v0		if BR2_cris_unknown
-	default v10		if BR2_cris_generic
-	default v3		if BR2_cris_etrax_4
-	default v8		if BR2_cris_etrax_100
-	default v10		if BR2_cris_etrax_100lx
 	default ev4		if BR2_alpha_21064
 	default ev5		if BR2_alpha_21164
 	default ev56		if BR2_alpha_21164a
@@ -608,12 +1031,6 @@ config BR2_GCC_TARGET_TUNE
 	default ev67		if BR2_alpha_21264a
 #	default itanium		if BR2_ia64_itanium1
 #	default itanium2	if BR2_ia64_itanium2
-	default 68000		if BR2_m68k_68000
-	default 68010		if BR2_m68k_68010
-	default 68020		if BR2_m68k_68020
-	default 68030		if BR2_m68k_68030
-	default 68040		if BR2_m68k_68040
-	default 68060		if BR2_m68k_68060
 	default mips1		if BR2_mips_1
 	default mips2		if BR2_mips_2
 	default mips3		if BR2_mips_3
@@ -623,12 +1040,14 @@ config BR2_GCC_TARGET_TUNE
 	default mips64		if BR2_mips_64
 	default mips64r2	if BR2_mips_64r2
 	default mips16		if BR2_mips_16
+	default common		if BR2_powerpc_generic
 	default 401		if BR2_powerpc_401
 	default 403		if BR2_powerpc_403
 	default 405		if BR2_powerpc_405
 	default 405fp		if BR2_powerpc_405fp
 	default 440		if BR2_powerpc_440
 	default 440fp		if BR2_powerpc_440fp
+	default 464		if BR2_powerpc_464
 	default 505		if BR2_powerpc_505
 	default 601		if BR2_powerpc_601
 	default 602		if BR2_powerpc_602
@@ -645,9 +1064,13 @@ config BR2_GCC_TARGET_TUNE
 	default 801		if BR2_powerpc_801
 	default 821		if BR2_powerpc_821
 	default 823		if BR2_powerpc_823
+	default 8540		if BR2_powerpc_8540
+	default e300c2		if BR2_powerpc_e300c2
+	default e300c3		if BR2_powerpc_e300c3
+	default e500mc		if BR2_powerpc_e500mc
 	default 860		if BR2_powerpc_860
 	default 970		if BR2_powerpc_970
-	default 8540		if BR2_powerpc_8540
+	default cell		if BR2_powerpc_cell
 	default v7		if BR2_sparc_v7
 	default cypress		if BR2_sparc_cypress
 	default v8		if BR2_sparc_v8
@@ -665,6 +1088,127 @@ config BR2_GCC_TARGET_TUNE
 	default ultrasparc	if BR2_sparc_ultrasparc || BR2_sparc64_ultrasparc
 	default ultrasparc3	if BR2_sparc_ultrasparc3 || BR2_sparc64_ultrasparc3
 	default niagara		if BR2_sparc_niagara || BR2_sparc64_niagara
+	default g5		if BR2_s390_g5
+	default g6		if BR2_s390_g6
+	default z900		if BR2_s390_z900
+	default z990		if BR2_s390_z990
+	default z9-109		if BR2_s390_z9_109
+config BR2_GCC_TARGET_FLAGS_TUNE
+	string
+	default 68000		if BR2_m68k_68000
+	default 68010		if BR2_m68k_68010
+	default 68020		if BR2_m68k_68020
+	default 68030		if BR2_m68k_68030
+	default 68040		if BR2_m68k_68040
+	default 68060		if BR2_m68k_68060
+	default cpu32		if BR2_m68k_cpu32
+	default cfv1		if BR2_m68k_cfv1
+	default cfv2		if BR2_m68k_cfv2
+	default cfv3		if BR2_m68k_cfv3
+	default cfv4		if BR2_m68k_cfv4
+	default cfv4e		if BR2_m68k_cfv4e
+	default $BR2_m68k_tune	if BR2_m68k_tune
+	default v0		if BR2_cris_unknown
+	default v10		if BR2_cris_generic
+	default v3		if BR2_cris_etrax_4
+	default v8		if BR2_cris_etrax_100
+	default v10		if BR2_cris_etrax_100lx
+	default $BR2_GCC_TARGET_TUNE if BR2_GCC_TARGET_TUNE
+
+config BR2_GCC_TARGET_CPU
+	string
+	default bf522		if BR2_bf522
+	default bf525		if BR2_bf525
+	default bf527		if BR2_bf527
+	default bf531		if BR2_bf531
+	default bf532		if BR2_bf532
+	default bf533		if BR2_bf533
+	default bf534		if BR2_bf534
+	default bf536		if BR2_bf536
+	default bf537		if BR2_bf537
+	default bf538		if BR2_bf538
+	default bf539		if BR2_bf539
+	default bf542		if BR2_bf542
+	default bf544		if BR2_bf544
+	default bf548		if BR2_bf548
+	default bf549		if BR2_bf549
+	default bf561		if BR2_bf561
+config BR2_GCC_TARGET_FLAGS_CPU
+	string
+	default 51qe		if BR2_m68k_cpu_coldfire_51qe
+	default 5202		if BR2_m68k_cpu_coldfire_5202
+	default 5204		if BR2_m68k_cpu_coldfire_5204
+	default 5206		if BR2_m68k_cpu_coldfire_5206
+	default 5206e		if BR2_m68k_cpu_coldfire_5206e
+	default 5207		if BR2_m68k_cpu_coldfire_5207
+	default 5208		if BR2_m68k_cpu_coldfire_5208
+	default 5210a		if BR2_m68k_cpu_coldfire_5210a
+	default 5211a		if BR2_m68k_cpu_coldfire_5211a
+	default 5211		if BR2_m68k_cpu_coldfire_5211
+	default 5212		if BR2_m68k_cpu_coldfire_5212
+	default 5213		if BR2_m68k_cpu_coldfire_5213
+	default 5214		if BR2_m68k_cpu_coldfire_5214
+	default 5216		if BR2_m68k_cpu_coldfire_5216
+	default 52230		if BR2_m68k_cpu_coldfire_52230
+	default 52231		if BR2_m68k_cpu_coldfire_52231
+	default 52232		if BR2_m68k_cpu_coldfire_52232
+	default 52233		if BR2_m68k_cpu_coldfire_52233
+	default 52234		if BR2_m68k_cpu_coldfire_52234
+	default 52235		if BR2_m68k_cpu_coldfire_52235
+	default 5224		if BR2_m68k_cpu_coldfire_5224
+	default 5225		if BR2_m68k_cpu_coldfire_5225
+	default 5232		if BR2_m68k_cpu_coldfire_5232
+	default 5233		if BR2_m68k_cpu_coldfire_5233
+	default 5234		if BR2_m68k_cpu_coldfire_5234
+	default 5235		if BR2_m68k_cpu_coldfire_5235
+	default 523x		if BR2_m68k_cpu_coldfire_523x
+	default 5249		if BR2_m68k_cpu_coldfire_5249
+	default 5250		if BR2_m68k_cpu_coldfire_5250
+	default 5270		if BR2_m68k_cpu_coldfire_5270
+	default 5271		if BR2_m68k_cpu_coldfire_5271
+	default 5272		if BR2_m68k_cpu_coldfire_5272
+	default 5274		if BR2_m68k_cpu_coldfire_5274
+	default 5275		if BR2_m68k_cpu_coldfire_5275
+	default 5280		if BR2_m68k_cpu_coldfire_5280
+	default 5281		if BR2_m68k_cpu_coldfire_5281
+	default 5282		if BR2_m68k_cpu_coldfire_5282
+	default 528x		if BR2_m68k_cpu_coldfire_528x
+	default 5307		if BR2_m68k_cpu_coldfire_5307
+	default 5327		if BR2_m68k_cpu_coldfire_5327
+	default 5328		if BR2_m68k_cpu_coldfire_5328
+	default 5329		if BR2_m68k_cpu_coldfire_5329
+	default 532x		if BR2_m68k_cpu_coldfire_532x
+	default 5372		if BR2_m68k_cpu_coldfire_5372
+	default 5373		if BR2_m68k_cpu_coldfire_5373
+	default 537x		if BR2_m68k_cpu_coldfire_537x
+	default 5407		if BR2_m68k_cpu_coldfire_5407
+	default 5470		if BR2_m68k_cpu_coldfire_5470
+	default 5471		if BR2_m68k_cpu_coldfire_5471
+	default 5472		if BR2_m68k_cpu_coldfire_5472
+	default 5473		if BR2_m68k_cpu_coldfire_5473
+	default 5474		if BR2_m68k_cpu_coldfire_5474
+	default 5475		if BR2_m68k_cpu_coldfire_5475
+	default 547x		if BR2_m68k_cpu_coldfire_547x
+	default 5480		if BR2_m68k_cpu_coldfire_5480
+	default 5481		if BR2_m68k_cpu_coldfire_5481
+	default 5482		if BR2_m68k_cpu_coldfire_5482
+	default 5483		if BR2_m68k_cpu_coldfire_5483
+	default 5484		if BR2_m68k_cpu_coldfire_5484
+	default 5485		if BR2_m68k_cpu_coldfire_5485
+	default 68000		if BR2_m68k_cpu_68000
+	default 68010		if BR2_m68k_cpu_68010
+	default 68020		if BR2_m68k_cpu_68020
+	default 68030		if BR2_m68k_cpu_68030
+	default 68040		if BR2_m68k_cpu_68040
+	default 68060		if BR2_m68k_cpu_68060
+	default 68302		if BR2_m68k_cpu_68302
+	default 68332		if BR2_m68k_cpu_68332
+	default cpu32		if BR2_m68k_cpu_cpu32
+	default $BR2_GCC_TARGET_CPU if BR2_GCC_TARGET_CPU
+
+config BR2_GCC_TARGET_FLAGS_SUBCPU
+	string
+	default $BR2_bfin_sirevision if BR2_bfin_sirevision
 
 config BR2_GCC_TARGET_ARCH
 	string
@@ -692,6 +1236,7 @@ config BR2_GCC_TARGET_ARCH
 	default winchip2	if BR2_x86_winchip2
 	default c3		if BR2_x86_c3
 	default geode		if BR2_x86_geode
+	default iwmmxt		if BR2_iwmmxt
 	default armv4t		if BR2_arm7tdmi
 	default armv3		if BR2_arm610
 	default armv3		if BR2_arm710
@@ -706,18 +1251,21 @@ config BR2_GCC_TARGET_ARCH
 	default armv4		if BR2_sa110
 	default armv4		if BR2_sa1100
 	default armv5te		if BR2_xscale
-	default iwmmxt		if BR2_iwmmxt
+	default m68k		if BR2_m68k_type_m68k
+	default cf		if BR2_m68k_type_coldfire
+	default g5		if BR2_s390_g5
+	default g6		if BR2_s390_g6
+	default z900		if BR2_s390_z900
+	default z990		if BR2_s390_z990
+	default z9-109		if BR2_s390_z9_109
+config BR2_GCC_TARGET_FLAGS_ARCH
+	string
 	default v0		if BR2_cris_unknown
 	default v10		if BR2_cris_generic
 	default v3		if BR2_cris_etrax_4
 	default v8		if BR2_cris_etrax_100
 	default v10		if BR2_cris_etrax_100lx
-	default 68000		if BR2_m68k_68000
-	default 68010		if BR2_m68k_68010
-	default 68020		if BR2_m68k_68020
-	default 68030		if BR2_m68k_68030
-	default 68040		if BR2_m68k_68040
-	default 68060		if BR2_m68k_68060
+	default $BR2_GCC_TARGET_ARCH if BR2_GCC_TARGET_ARCH && !BR2_m68k_type_m68k && !BR2_m68k_type_coldfire
 
 config BR2_GCC_TARGET_ABI
 	string
@@ -725,6 +1273,7 @@ config BR2_GCC_TARGET_ABI
 	default atpcs		if BR2_arm_dunno
 	default aapcs		if BR2_arm_dunno
 	default aapcs-linux	if BR2_ARM_EABI
+	#default iwmmxt		if BR2_iwmmxt
 	default 32		if BR2_MIPS_OABI32
 	default n32		if BR2_MIPS_ABI32
 	default eabi		if BR2_MIPS_EABI
@@ -738,4 +1287,7 @@ config BR2_GCC_TARGET_ABI
 	default no-spe		if BR2_powerpc && BR2_PPC_ABI_no-spe
 	default ibmlongdouble	if BR2_powerpc && BR2_PPC_ABI_ibmlongdouble
 	default ieeelongdouble	if BR2_powerpc && BR2_PPC_ABI_ieeelongdouble
+config BR2_GCC_TARGET_FLAGS_ABI
+	string
+	default $BR2_GCC_TARGET_ABI if BR2_GCC_TARGET_ABI
 
Signature · 1 line
1.6.3.3
#5 lore raw

PATCH 5/14 remove superfluous OPTIMIZE and DEBUG config knobs

There is BR2_TARGET_OPTIMIZATION that is saved in the .config

---
 Config.in           |  101 +--------------------------------------------------
 package/Makefile.in |   30 +--------------
 2 files changed, 3 insertions(+), 128 deletions(-)
Config.in +1 -100
index cc83a6a..9101b2a 100644
@@ -176,38 +176,7 @@ config BR2_ENABLE_DEBUG
 	bool "build packages with debugging symbols"
 	select BR2_PACKAGE_GDB_SERVER
 	help
-	  Build packages with debugging symbols
-	  enabled
-
-if BR2_ENABLE_DEBUG
-choice
-	prompt "gcc debug level"
-	default BR2_DEBUG_2
-	help
-	  Set the debug level for gcc
-
-config BR2_DEBUG_1
-	bool "debug level 1"
-	help
-	  Debug level 1 produces minimal information, enough
-	  for making backtraces in parts of the program that
-	  you don't plan to debug. This includes descriptions
-	  of functions and external variables, but no information
-	  about local variables and no line numbers.
-
-config BR2_DEBUG_2
-	bool "debug level 2"
-	help
-	  The default gcc debug level is 2
-
-config BR2_DEBUG_3
-	bool "debug level 3"
-	help
-	  Level 3 includes extra information, such as all the
-	  macro definitions present in the program. Some debuggers
-	  support macro expansion when you use -g3.
-endchoice
-endif
+	 Build packages with debugging symbols enabled
 
 choice
 	prompt "strip"
@@ -238,74 +207,6 @@ config BR2_STRIP_none
 	  none    do not strip (only for debugging!)
 endchoice
 
-choice
-	prompt "gcc optimization level"
-	default BR2_OPTIMIZE_S
-	help
-	  Set the optimization level for gcc
-
-config BR2_OPTIMIZE_0
-	bool "optimization level 0"
-	depends on !BR2_PACKAGE_LINUX
-	help
-	  Do not optimize. This is the default.
-
-config BR2_OPTIMIZE_1
-	bool "optimization level 1"
-	depends on !BR2_PACKAGE_LINUX
-	help
-	  Optimize. Optimizing compilation takes somewhat more time,
-	  and a lot more memory for a large function. With -O, the
-	  compiler tries to reduce code size and execution time,
-	  without performing any optimizations that take a great deal
-	  of compilation time. -O turns on the following optimization
-	  flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
-	  -fcprop-registers -floop-optimize -fif-conversion
-	  -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
-	  -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
-	  -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
-	  -O also turns on -fomit-frame-pointer on machines where doing
-	  so does not interfere with debugging.
-
-config BR2_OPTIMIZE_2
-	bool "optimization level 2"
-	help
-	  Optimize even more. GCC performs nearly all supported optimizations
-	  that do not involve a space-speed tradeoff. The compiler does not
-	  perform loop unrolling or function inlining when you specify -O2.
-	  As compared to -O, this option increases both compilation time and
-	  the performance of the generated code. -O2 turns on all optimization
-	  flags specified by -O. It also turns on the following optimization
-	  flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
-	  -fcse-follow-jumps -fcse-skip-blocks -fgcse  -fgcse-lm
-	  -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
-	  -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
-	  -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
-	  -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
-	  -freorder-functions -falign-functions -falign-jumps -falign-loops
-	  -falign-labels -ftree-vrp -ftree-pre
-	  Please note the warning under -fgcse about invoking -O2 on programs
-	  that use computed gotos.
-
-config BR2_OPTIMIZE_3
-	bool "optimization level 3"
-	help
-	  Optimize yet more. -O3 turns on all optimizations specified by -O2
-	  and also turns on the -finline-functions, -funswitch-loops and
-	  -fgcse-after-reload options.
-
-config BR2_OPTIMIZE_S
-	bool "optimize for size"
-	help
-	  Optimize for size. -Os enables all -O2 optimizations that do not
-	  typically increase code size. It also performs further optimizations
-	  designed to reduce code size. -Os disables the following optimization
-	  flags: -falign-functions -falign-jumps -falign-loops -falign-labels
-	  -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
-	  -ftree-vect-loop-version
-
-endchoice
-
 config BR2_PREFER_STATIC_LIB
 	bool "prefer static libraries"
 	help
package/Makefile.in +2 -28
index fa7c740..eb4fccb 100644
@@ -9,35 +9,9 @@ HOSTMAKE :=$(shell which $(HOSTMAKE) || type -p $(HOSTMAKE) || echo make)
 MAKE1:=$(HOSTMAKE) -j1
 MAKE:=$(HOSTMAKE) -j$(BR2_JLEVEL)
 
-ifeq ($(BR2_OPTIMIZE_0),y)
-TARGET_OPTIMIZATION+=-O0
-endif
-ifeq ($(BR2_OPTIMIZE_1),y)
-TARGET_OPTIMIZATION+=-O1
-endif
-ifeq ($(BR2_OPTIMIZE_2),y)
-TARGET_OPTIMIZATION+=-O2
-endif
-ifeq ($(BR2_OPTIMIZE_3),y)
-TARGET_OPTIMIZATION+=-O3
-endif
-ifeq ($(BR2_OPTIMIZE_S),y)
-TARGET_OPTIMIZATION+=-Os
-endif
-ifeq ($(BR2_DEBUG_1),y)
-TARGET_DEBUGGING=-g1
-endif
-ifeq ($(BR2_DEBUG_2),y)
-TARGET_DEBUGGING=-g2
-endif
-ifeq ($(BR2_DEBUG_3),y)
-TARGET_DEBUGGING=-g3
-endif
-
-
 #########################################################################
 ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
-TARGET_CFLAGS=$(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) \
+TARGET_CFLAGS=$(TARGET_OPTIMIZATION) \
 	-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
 TARGET_LDFLAGS+=-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib
 ifeq ($(BR2_TOOLCHAIN_SYSROOT),y)
@@ -91,7 +65,7 @@ TARGET_CXXFLAGS=$(TARGET_CFLAGS)
 # else it's an external toolchain
 #########################################################################
 else
-TARGET_CFLAGS=$(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) --sysroot $(STAGING_DIR)/
+TARGET_CFLAGS=$(TARGET_OPTIMIZATION) --sysroot $(STAGING_DIR)/
 TARGET_CXXFLAGS=$(TARGET_CFLAGS)
 TARGET_LDFLAGS=--sysroot $(STAGING_DIR)/
 endif
Signature · 1 line
1.6.3.3
#6 lore raw

PATCH 6/14 allow for testing gcc-4.5

---
 toolchain/gcc/Config.in |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)
toolchain/gcc/Config.in +6 -6
index db7e32e..26b531c 100644
@@ -65,10 +65,10 @@ choice
 		depends on !BR2_avr32 && !BR2_nios2
 		bool "gcc 4.4.x"
 
-#	config BR2_GCC_VERSION_4_3
-#		depends on !BR2_avr32 && !BR2_nios2
-#		select BR2_GCC_IS_SNAP
-#		bool "gcc 4.3"
+	config BR2_GCC_VERSION_4_5
+		depends on !BR2_avr32 && !BR2_nios2
+		select BR2_GCC_IS_SNAP
+		bool "gcc 4.5"
 endchoice
 
 config BR2_GCC_IS_SNAP
@@ -87,7 +87,7 @@ config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
 
 config BR2_GCC_SNAP_DATE
 	string "GCC snapshot date"
-	default "20070921"
+	default ""
 	depends on BR2_GCC_IS_SNAP
 	help
 	  Enter snapshot date to use for gcc.  Format is:
@@ -106,7 +106,7 @@ config BR2_GCC_VERSION
 	default "4.3.3"     if BR2_GCC_VERSION_4_3_3
 	default "4.3.4"     if BR2_GCC_VERSION_4_3_4
 	default "4.4.1"     if BR2_GCC_VERSION_4_4_X
-	default "4.3"       if BR2_GCC_VERSION_4_3
+	default "4.5"       if BR2_GCC_VERSION_4_5
 
 config BR2_TOOLCHAIN_SYSROOT
 	bool "Enable toolchain with --sysroot support"
Signature · 1 line
1.6.3.3
#7 lore raw

PATCH 7/14 *-menuconfig needs dirs to exist

---
 package/busybox/busybox.mk |    2 +-
 target/linux/Makefile.in   |    4 ++--
 toolchain/uClibc/uclibc.mk |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
package/busybox/busybox.mk +1 -1
index eb79134..c82ed0c 100644
@@ -130,7 +130,7 @@ busybox-unpacked: host-sed $(BUILD_DIR) $(BUSYBOX_DIR)/.unpacked
 
 busybox-config: host-sed $(BUILD_DIR) $(BUSYBOX_DIR)/.config
 
-busybox-menuconfig: host-sed $(BUILD_DIR) busybox-source $(BUSYBOX_DIR)/.config
+busybox-menuconfig: host-sed dirs $(BUILD_DIR) busybox-source $(BUSYBOX_DIR)/.config
 	$(MAKE) __TARGET_ARCH=$(ARCH) -C $(BUSYBOX_DIR) menuconfig
 
 busybox-update:
target/linux/Makefile.in +2 -2
index c4962bd..f3c7807 100644
@@ -201,7 +201,7 @@ $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep: $(LINUX26_DIR)/.config
 	fi
 	touch -c $@
 
-linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
+linux26-menuconfig: host-sed dirs $(LINUX26_DIR)/.patched
 	if [ ! -f $(LINUX26_DIR)/.config ]; then \
 		[ -n "$(LINUX26_KCONFIG)" ] && [ -f $(LINUX26_KCONFIG) ] && \
 			cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config || \
@@ -210,7 +210,7 @@ linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) menuconfig
 	-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
 
-linux26-xconfig: $(LINUX26_DIR)/.patched host-sed
+linux26-xconfig: host-sed dirs $(LINUX26_DIR)/.patched
 	[ -f $(LINUX26_DIR)/.config ] || cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) xconfig
 	-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
toolchain/uClibc/uclibc.mk +1 -1
index 292f895..74b058d 100644
@@ -463,7 +463,7 @@ $(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured $(gcc_initial) $(LIBFLOAT_TA
 		all
 	touch -c $@
 
-uclibc-menuconfig: host-sed $(UCLIBC_DIR)/.config
+uclibc-menuconfig: host-sed dirs $(UCLIBC_DIR)/.config
 	$(MAKE1) -C $(UCLIBC_DIR) \
 		ARCH="$(UCLIBC_TARGET_ARCH)" \
 		PREFIX=$(TOOLCHAIN_DIR)/uClibc_dev/ \
Signature · 1 line
1.6.3.3
#8 lore raw

PATCH 8/14 remove BR2_FPU_SUFFIX

---
 Config.in           |    7 -------
 package/Makefile.in |   10 ++--------
 2 files changed, 2 insertions(+), 15 deletions(-)
Config.in +0 -7
index 9101b2a..ca6b298 100644
@@ -99,13 +99,6 @@ config BR2_STAGING_DIR
 	  Most people will leave this set to the default value of
 	  "$(BASE_DIR)/staging".
 
-config BR2_FPU_SUFFIX
-	bool "Add '_nofpu' suffix for softfloat toolchains"
-	help
-	  If the toolchain is configured to use softfloat, then
-	  the "_nofpu" suffix will be added to the toolchain build
-	  directory name and to any rootfs image name
-
 config BR2_GNU_BUILD_SUFFIX
 	string "GNU build hostname suffix"
 	default "pc-linux-gnu"
package/Makefile.in +2 -8
index eb4fccb..a408caa 100644
@@ -79,18 +79,12 @@ XXXX=xxxx
 ROOTFS_SUFFIX:=-$(BR2_ROOTFS_SUFFIX)
 endif
 
-ifeq ($(call qstrip,$(BR2_FPU_SUFFIX)),y)
-COND_ARCH_FPU_SUFFIX:=$(ARCH_FPU_SUFFIX)
-else
-COND_ARCH_FPU_SUFFIX:=
-endif
-
 ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
 TOOLCHAIN_DIR=$(BASE_DIR)/toolchain
 
 # Quotes are needed for spaces et al in path components.
 TARGET_PATH="$(TOOLCHAIN_DIR)/bin:$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:$(PATH)"
-IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(COND_ARCH_FPU_SUFFIX)$(ROOTFS_SUFFIX)
+IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(ROOTFS_SUFFIX)
 GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
 REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)$(GNU_TARGET_SUFFIX)
 TARGET_CROSS=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-
@@ -101,7 +95,7 @@ TOOLCHAIN_EXTERNAL_PATH:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH))
 TOOLCHAIN_DIR=$(BASE_DIR)/toolchain
 TARGET_PATH="$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(TOOLCHAIN_DIR)/bin:$(TOOLCHAIN_EXTERNAL_PATH)/bin:$(PATH)"
 #IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(TOOLCHAIN_EXTERNAL_PREFIX)$(ROOTFS_SUFFIX)
-IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(COND_ARCH_FPU_SUFFIX)$(ROOTFS_SUFFIX)
+IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(ROOTFS_SUFFIX)
 
 REAL_GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
 GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
Signature · 1 line
1.6.3.3
#9 lore raw

PATCH 9/14 tidy up ROOTFS_{PRE,SUF}FIX handling

---
 package/Makefile.in |   14 +++-----------
 1 files changed, 3 insertions(+), 11 deletions(-)
package/Makefile.in +3 -11
index a408caa..a69ea44 100644
@@ -70,21 +70,15 @@ TARGET_CXXFLAGS=$(TARGET_CFLAGS)
 TARGET_LDFLAGS=--sysroot $(STAGING_DIR)/
 endif
 #########################################################################
-#ifeq ($(BR2_ROOTFS_SUFFIX),)
 ROOTFS_SUFFIX:=$(call qstrip,$(BR2_ROOTFS_SUFFIX))
-ifeq ($(ROOTFS_SUFFIX),)
-ROOTFS_SUFFIX:=
-else
-XXXX=xxxx
-ROOTFS_SUFFIX:=-$(BR2_ROOTFS_SUFFIX)
-endif
+ROOTFS_PREFIX:=$(call qstrip,$(BR2_ROOTFS_PREFIX))
 
 ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
 TOOLCHAIN_DIR=$(BASE_DIR)/toolchain
 
 # Quotes are needed for spaces et al in path components.
 TARGET_PATH="$(TOOLCHAIN_DIR)/bin:$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:$(PATH)"
-IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(ROOTFS_SUFFIX)
+IMAGE:=$(BINARIES_DIR)/$(ROOTFS_PREFIX)$(if $(ROOTFS_PREFIX),.,)$(ARCH)$(ROOTFS_SUFFIX)
 GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
 REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)$(GNU_TARGET_SUFFIX)
 TARGET_CROSS=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-
@@ -94,9 +88,7 @@ TOOLCHAIN_EXTERNAL_PREFIX:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))
 TOOLCHAIN_EXTERNAL_PATH:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH))
 TOOLCHAIN_DIR=$(BASE_DIR)/toolchain
 TARGET_PATH="$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(TOOLCHAIN_DIR)/bin:$(TOOLCHAIN_EXTERNAL_PATH)/bin:$(PATH)"
-#IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(TOOLCHAIN_EXTERNAL_PREFIX)$(ROOTFS_SUFFIX)
-IMAGE:=$(BINARIES_DIR)/$(BR2_ROOTFS_PREFIX).$(ARCH)$(ROOTFS_SUFFIX)
-
+IMAGE:=$(BINARIES_DIR)/$(ROOTFS_PREFIX)$(if $(ROOTFS_PREFIX),.,)$(ARCH)$(ROOTFS_SUFFIX)
 REAL_GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
 GNU_TARGET_NAME=$(TOOLCHAIN_EXTERNAL_PREFIX)
 KERNEL_CROSS=$(TOOLCHAIN_EXTERNAL_PATH)/bin/$(TOOLCHAIN_EXTERNAL_PREFIX)-
Signature · 1 line
1.6.3.3
#10 lore raw

PATCH 10/14 honour DISABLE_IPV6

pass --disable-ipv6 to autoconfig packages if IPv6 support is turned off

---
 package/Makefile.autotools.in |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
package/Makefile.autotools.in +1 -0
index d36c884..c3257cf 100644
@@ -256,6 +256,7 @@ $(BUILD_DIR)/%/.stamp_configured:
 		$(DISABLE_DOCUMENTATION) \
 		$(DISABLE_NLS) \
 		$(DISABLE_LARGEFILE) \
+		$(DISABLE_IPV6) \
 		$(QUIET) $($(PKG)_CONF_OPT)
 	$(Q)touch $@
 
Signature · 1 line
1.6.3.3
#11 lore raw

PATCH 11/14 disable-locale implies turning off locale and iconv

Also pass --disable-locale and --disable-iconv to autoconfigured packages (like rsync) if locales are turned off.

---
 package/Makefile.in |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
package/Makefile.in +1 -1
index a69ea44..0a70ab4 100644
@@ -303,7 +303,7 @@ TARGET_CONFIGURE_ARGS= \
 ifeq ($(BR2_ENABLE_LOCALE),y)
 DISABLE_NLS:=
 else
-DISABLE_NLS:=--disable-nls
+DISABLE_NLS:=--disable-nls --disable-locale --disable-iconv
 endif
 
 ifneq ($(BR2_LARGEFILE),y)
Signature · 1 line
1.6.3.3
#12 lore raw

PATCH 12/14 rsync: bump version

Bump version to 3.0.6.
autoreconf is off per default, so no need to specify it. Use config.cache (fix the incorrect package instead). Pass ENABLE_DEBUG setting to configure.

---
 package/rsync/rsync.mk |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
package/rsync/rsync.mk +4 -4
index e24a38c..dbe442a 100644
@@ -4,13 +4,13 @@
 #
 #############################################################
 
-RSYNC_VERSION:=3.0.5
+RSYNC_VERSION:=3.0.6
 RSYNC_SOURCE:=rsync-$(RSYNC_VERSION).tar.gz
-RSYNC_SITE:=http://rsync.samba.org/ftp/rsync/src
-RSYNC_AUTORECONF:=no
-RSYNC_USE_CONFIG_CACHE:=no
+RSYNC_SITE:=http://rsync.samba.org/ftp/rsync
+#RSYNC_USE_CONFIG_CACHE:=no
 RSYNC_INSTALL_STAGING:=NO
 RSYNC_INSTALL_TARGET:=YES
+RSYNC_CONF_OPT=$(if $(BR2_ENABLE_DEBUG),--enable-debug,--disable-debug)
 ifeq ($(BR2_ENABLE_DEBUG),y)
 RSYNC_INSTALL_TARGET_OPT:=DESTDIR=$(TARGET_DIR) INSTALLCMD='./install-sh -c' \
 			  install
Signature · 1 line
1.6.3.3
#13 lore raw

PATCH 13/14 enable config.cache per default

It speeds up configuration considerably.
If a package breaks due to wrong cache-entries, then the broken other package has to be fixed, not the innocent bystander!

Put short: There is absolutely _no_ need to ever turn the cache off unless you hack on autotools itself and goof.

---
 Config.in |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
Config.in +1 -0
index ca6b298..1201279 100644
@@ -160,6 +160,7 @@ config BR2_RECENT
 
 config BR2_CONFIG_CACHE
 	bool "Use a central configure cache file"
+	default y
 	help
 	  This determines if a central config cache is used by
 	  packages, reducing the configure time for packages as each
Signature · 1 line
1.6.3.3
#14 lore raw

PATCH 14/14 libpcap, tcpdump: bump version and autotoolify

---
 package/libpcap/libpcap.mk                         |   92 ++++----------------
 package/libpcap/libpcap.patch                      |   13 ---
 .../tcpdump/tcpdump-4.0.0-100-disable-ipv6.patch   |   21 +++++
 package/tcpdump/tcpdump.mk                         |   77 +++--------------
 4 files changed, 50 insertions(+), 153 deletions(-)
 delete mode 100644 package/libpcap/libpcap.patch
 create mode 100644 package/tcpdump/tcpdump-4.0.0-100-disable-ipv6.patch
package/libpcap/libpcap.mk +18 -74
index 491f985..c25c75a 100644
@@ -3,83 +3,27 @@
 # libpcap
 #
 #############################################################
-# Copyright (C) 2001-2003 by Erik Andersen <[email protected]>
-# Copyright (C) 2002 by Tim Riker <[email protected]>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Library General Public License as
-# published by the Free Software Foundation; either version 2 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
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
-# USA
 
-LIBPCAP_VERSION:=0.9.8
-LIBPCAP_DIR:=$(BUILD_DIR)/libpcap-$(LIBPCAP_VERSION)
+LIBPCAP_VERSION:=1.0.0
 LIBPCAP_SITE:=http://www.tcpdump.org/release
 LIBPCAP_SOURCE:=libpcap-$(LIBPCAP_VERSION).tar.gz
 LIBPCAP_CAT:=$(ZCAT)
-
-$(DL_DIR)/$(LIBPCAP_SOURCE):
-	 $(call DOWNLOAD,$(LIBPCAP_SITE),$(LIBPCAP_SOURCE))
-
-libpcap-source: $(DL_DIR)/$(LIBPCAP_SOURCE)
-
-$(LIBPCAP_DIR)/.unpacked: $(DL_DIR)/$(LIBPCAP_SOURCE)
-	$(LIBPCAP_CAT) $(DL_DIR)/$(LIBPCAP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-	rm -f $(LIBPCAP_DIR)/gencode.c.rej
-	toolchain/patch-kernel.sh $(LIBPCAP_DIR) package/libpcap/ \*.patch
-	$(CONFIG_UPDATE) $(LIBPCAP_DIR)
-	touch $@
-
-$(LIBPCAP_DIR)/.configured: $(LIBPCAP_DIR)/.unpacked
-	(cd $(LIBPCAP_DIR); rm -rf config.cache; \
-		ac_cv_linux_vers=$(BR2_DEFAULT_KERNEL_HEADERS) \
-		BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" \
-		$(TARGET_CONFIGURE_OPTS) \
-		$(TARGET_CONFIGURE_ARGS) \
-		./configure $(QUIET) \
-		--target=$(GNU_TARGET_NAME) \
-		--host=$(GNU_TARGET_NAME) \
-		--build=$(GNU_HOST_NAME) \
-		--prefix=/usr \
-		--localstatedir=/var \
-		--mandir=/usr/share/man \
-		--infodir=/usr/share/info \
-		--disable-yydebug \
-		--with-pcap=linux \
-		$(DISABLE_IPV6) \
-	)
+LIBPCAP_INSTALL_STAGING:=YES
+# doesn't have an install-strip
+LIBPCAP_INSTALL_TARGET_OPT= DESTDIR="$(TARGET_DIR)" \
+	$(if $(BR2_PREFER_STATIC_LIB),install,install-shared)
+LIBPCAP_INSTALL_STAGING_OPT= DESTDIR="$(STAGING_DIR)" \
+	$(if $(BR2_PREFER_STATIC_LIB),install,install-shared)
+LIBPCAP_DEPENDENCIES:=zlib
+LIBPCAP_CONF_ENV:=ac_cv_linux_vers=$(firstword $(subst .,$(space),$(firstword $(call qstrip,$(BR2_DEFAULT_KERNEL_HEADERS)))))
+LIBPCAP_CONF_OPT:=--disable-yydebug --with-pcap=linux
+
+
+$(eval $(call AUTOTARGETS,package,libpcap))
+
+$(LIBPCAP_HOOK_POST_INSTALL): $(LIBPCAP_TARGET_INSTALL_TARGET)
+ifeq ($(BR2_PREFER_STATIC_LIB),)
+	$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(wildcard $(TARGET_DIR)/usr/lib/libpcap.so*)
+endif
 	touch $@
 
-$(LIBPCAP_DIR)/libpcap.a: $(LIBPCAP_DIR)/.configured
-	$(MAKE) AR=$(TARGET_CROSS)ar -C $(LIBPCAP_DIR)
-
-$(STAGING_DIR)/usr/lib/libpcap.a: $(LIBPCAP_DIR)/libpcap.a
-	$(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBPCAP_DIR) install
-
-libpcap: zlib $(STAGING_DIR)/usr/lib/libpcap.a
-
-libpcap-clean:
-	rm -f $(addprefix $(STAGING_DIR)/usr/,include/pcap*.h \
-					      lib/libpcap.a \
-					      share/man/man?/pcap.*)
-	-$(MAKE) -C $(LIBPCAP_DIR) clean
-
-libpcap-dirclean:
-	rm -rf $(LIBPCAP_DIR)
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_LIBPCAP),y)
-TARGETS+=libpcap
-endif
package/libpcap/libpcap.patch deleted +0 -13
deleted file mode 100644
index 9320694..0000000
@@ -1,13 +0,0 @@
-Index: libpcap-0.9.8/Makefile.in
-===================================================================
---- libpcap-0.9.8.orig/Makefile.in	2007-07-24 04:35:15.000000000 +0200
-+++ libpcap-0.9.8/Makefile.in	2008-10-07 09:23:01.000000000 +0200
-@@ -103,7 +103,7 @@
- 
- libpcap.a: $(OBJ)
- 	@rm -f $@
--	ar rc $@ $(OBJ) $(LIBS)
-+	$(AR) rc $@ $(OBJ) $(LIBS)
- 	$(RANLIB) $@
- 
- shared: libpcap.$(DYEXT)
package/tcpdump/tcpdump-4.0.0-100-disable-ipv6.patch new file +21 -0
new file mode 100644
index 0000000..0df50cb
@@ -0,0 +1,21 @@
+diff -rdup tcpdump-4.0.0.oorig/print-enc.c tcpdump-4.0.0/print-enc.c
+--- tcpdump-4.0.0.oorig/print-enc.c	2008-09-01 04:44:22.000000000 +0200
++++ tcpdump-4.0.0/print-enc.c	2009-10-07 21:21:41.000000000 +0200
+@@ -72,14 +72,16 @@ enc_if_print(const struct pcap_pkthdr *h
+ 	length -= ENC_HDRLEN;
+ 	caplen -= ENC_HDRLEN;
+ 	p += ENC_HDRLEN;
+-	
++
+ 	switch (hdr->af) {
+ 	case AF_INET:
+ 		ip_print(gndo, p, length);
+ 		break;
++#ifdef INET6
+ 	case AF_INET6:
+ 		ip6_print(p, length);
+ 		break;
++#endif /*INET6*/
+ 	}
+ 
+ out:
package/tcpdump/tcpdump.mk +11 -66

84 lines not on this page · raw message

Signature · 1 line
1.6.3.3
#15 lore raw

PATCH 14/14 libpcap, tcpdump: bump version and autotoolify

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]>

Bernhard> -LIBPCAP_VERSION:=0.9.8
Bernhard> -LIBPCAP_DIR:=$(BUILD_DIR)/libpcap-$(LIBPCAP_VERSION) Bernhard> +LIBPCAP_VERSION:=1.0.0

 Bernhard>  LIBPCAP_SITE:=http://www.tcpdump.org/release
 Bernhard>  LIBPCAP_SOURCE:=libpcap-$(LIBPCAP_VERSION).tar.gz
 Bernhard>  LIBPCAP_CAT:=$(ZCAT)

LIBPCAP_CAT is unused now, otherwise it looks good - Committed, thanks!

Signature · 1 line
Bye, Peter Korsgaard
#16 lore raw

PATCH 13/14 enable config.cache per default

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

 Bernhard>   It speeds up configuration considerably.
 Bernhard>   If a package breaks due to wrong cache-entries, then the broken
 Bernhard>   other package has to be fixed, not the innocent bystander!

Bernhard> Put short: There is absolutely _no_ need to ever turn the cache off
Bernhard> unless you hack on autotools itself and goof.

In that case, why do we even have the config option?

Committed.

Signature · 1 line
Bye, Peter Korsgaard
#17 lore raw

PATCH 13/14 enable config.cache per default

Quoted 10 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard>   It speeds up configuration considerably.
Bernhard>   If a package breaks due to wrong cache-entries, then the broken
Bernhard>   other package has to be fixed, not the innocent bystander!

Bernhard> Put short: There is absolutely _no_ need to ever turn the cache off
Bernhard> unless you hack on autotools itself and goof.

In that case, why do we even have the config option?

beyond me.

#18 lore raw

PATCH 13/14 enable config.cache per default

In reply to Peter Korsgaard

Le Wed, 07 Oct 2009 22:59:37 +0200,
Peter Korsgaard <[email protected]> a ?crit :

Quoted 9 lines

Bernhard> It speeds up configuration considerably.
Bernhard> If a package breaks due to wrong cache-entries, then the
Bernhard> broken other package has to be fixed, not the innocent Bernhard> bystander!

Bernhard> Put short: There is absolutely _no_ need to ever turn
Bernhard> the cache off unless you hack on autotools itself and goof.

In that case, why do we even have the config option?

Originally, because when the change was introduced, some packages were failing due to incorrect dependencies. And the contributor didn't want to break many packages at once and preferred to have a intermediate step where this is an option.

I think we can now get rid of the option. Or introduce some kind of ?Buildroot Hacking? menu/submenu where we put this kind of very advanced options that normal users shouldn't use, but that can be helpful for debugging. And when doing support, we could also ask users to enable the option that disables the cache to see if it fixes a reported failure.

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com
#19 lore raw

PATCH 13/14 enable config.cache per default

Quoted 18 lines · Thomas Petazzoni

Le Wed, 07 Oct 2009 22:59:37 +0200,
Peter Korsgaard <[email protected]> a ?crit :

Quoted 9 lines

Bernhard> It speeds up configuration considerably.
Bernhard> If a package breaks due to wrong cache-entries, then the
Bernhard> broken other package has to be fixed, not the innocent Bernhard> bystander!

Bernhard> Put short: There is absolutely _no_ need to ever turn
Bernhard> the cache off unless you hack on autotools itself and goof.

In that case, why do we even have the config option?

Originally, because when the change was introduced, some packages were failing due to incorrect dependencies. And the contributor didn't want to break many packages at once and preferred to have a intermediate step where this is an option.

Quoted 6 lines

I think we can now get rid of the option. Or introduce some kind of ?Buildroot Hacking? menu/submenu where we put this kind of very advanced options that normal users shouldn't use, but that can be helpful for debugging. And when doing support, we could also ask users to enable the option that disables the cache to see if it fixes a reported failure.

i'd just leave it as knob, default y.
Note:
http://git.uclibc.org/~aldot/git/buildroot/commit/?h=misc&id=f4221a72ee2d10aa2376be1aae4ead05a44802de

#20 lore raw

PATCH 12/14 rsync: bump version

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

 Bernhard>   Bump version to 3.0.6.
 Bernhard>   autoreconf is off per default, so no need to specify it.
 Bernhard>   Use config.cache (fix the incorrect package instead).
 Bernhard>   Pass ENABLE_DEBUG setting to configure.

Bernhard> -RSYNC_VERSION:=3.0.5
Bernhard> +RSYNC_VERSION:=3.0.6
Bernhard> RSYNC_SOURCE:=rsync-$(RSYNC_VERSION).tar.gz Bernhard> -RSYNC_SITE:=http://rsync.samba.org/ftp/rsync/src Bernhard> -RSYNC_AUTORECONF:=no
Bernhard> -RSYNC_USE_CONFIG_CACHE:=no
Bernhard> +RSYNC_SITE:=http://rsync.samba.org/ftp/rsync Bernhard> +#RSYNC_USE_CONFIG_CACHE:=no

Please don't add commented out code. Do we know what package fail(ed)?

Signature · 1 line
Bye, Peter Korsgaard
#21 lore raw

PATCH 12/14 rsync: bump version

Quoted 16 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard>   Bump version to 3.0.6.
Bernhard>   autoreconf is off per default, so no need to specify it.
Bernhard>   Use config.cache (fix the incorrect package instead).
Bernhard>   Pass ENABLE_DEBUG setting to configure.

Bernhard> -RSYNC_VERSION:=3.0.5
Bernhard> +RSYNC_VERSION:=3.0.6
Bernhard> RSYNC_SOURCE:=rsync-$(RSYNC_VERSION).tar.gz Bernhard> -RSYNC_SITE:=http://rsync.samba.org/ftp/rsync/src Bernhard> -RSYNC_AUTORECONF:=no
Bernhard> -RSYNC_USE_CONFIG_CACHE:=no
Bernhard> +RSYNC_SITE:=http://rsync.samba.org/ftp/rsync Bernhard> +#RSYNC_USE_CONFIG_CACHE:=no

Quoted 1 line

Please don't add commented out code. Do we know what package fail(ed)?

We know that some other package populated the cache with a wrong value. The correct fix is to repair the package that misdetected struct sockaddr_storage and _not_ to penalize rsync.
The setting was commented out as a reminder.

#22 lore raw

PATCH 12/14 rsync: bump version

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

 Bernhard>   Bump version to 3.0.6.
 Bernhard>   autoreconf is off per default, so no need to specify it.
 Bernhard>   Use config.cache (fix the incorrect package instead).
 Bernhard>   Pass ENABLE_DEBUG setting to configure.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#23 lore raw

PATCH 10/14 honour DISABLE_IPV6

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> pass --disable-ipv6 to autoconfig packages if IPv6 support is turned off
Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]> Bernhard> ---

 Bernhard>  package/Makefile.autotools.in |    1 +

Bernhard> 1 files changed, 1 insertions(+), 0 deletions(-)

Bernhard> diff --git a/package/Makefile.autotools.in b/package/Makefile.autotools.in Bernhard> index d36c884..c3257cf 100644
Bernhard> --- a/package/Makefile.autotools.in
Bernhard> +++ b/package/Makefile.autotools.in
Bernhard> @@ -256,6 +256,7 @@ $(BUILD_DIR)/%/.stamp_configured:

 Bernhard>  		$(DISABLE_DOCUMENTATION) \
 Bernhard>  		$(DISABLE_NLS) \
 Bernhard>  		$(DISABLE_LARGEFILE) \

Bernhard> + $(DISABLE_IPV6) \

Please also remove it from the Makefile.autotools.in packages explicitly passing it.

Signature · 1 line
Bye, Peter Korsgaard
#24 lore raw

PATCH 10/14 honour DISABLE_IPV6

Quoted 13 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> pass --disable-ipv6 to autoconfig packages if IPv6 support is turned off
Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]> Bernhard> ---
Bernhard> package/Makefile.autotools.in | 1 +
Bernhard> 1 files changed, 1 insertions(+), 0 deletions(-)

Bernhard> diff --git a/package/Makefile.autotools.in b/package/Makefile.autotools.in Bernhard> index d36c884..c3257cf 100644
Bernhard> --- a/package/Makefile.autotools.in
Bernhard> +++ b/package/Makefile.autotools.in
Bernhard> @@ -256,6 +256,7 @@ $(BUILD_DIR)/%/.stamp_configured:

Quoted 7 lines
Bernhard>  		$(DISABLE_DOCUMENTATION) \
Bernhard>  		$(DISABLE_NLS) \
Bernhard>  		$(DISABLE_LARGEFILE) \

Bernhard> + $(DISABLE_IPV6) \

Please also remove it from the Makefile.autotools.in packages explicitly passing it.

noted as follow-up

#26 lore raw

PATCH 9/14 tidy up ROOTFS_{PRE,SUF}FIX handling

In reply to Bernhard Reutner-Fischer

Le Wed, 7 Oct 2009 22:08:32 +0200,
Bernhard Reutner-Fischer <[email protected]> a ?crit :

package/Makefile.in TARGET_CXXFLAGS=$(TARGET_CFLAGS) · line 74

Quoted 10 lines

#########################################################################

package/Makefile.in +1 -7
-#ifeq ($(BR2_ROOTFS_SUFFIX),)
 ROOTFS_SUFFIX:=$(call qstrip,$(BR2_ROOTFS_SUFFIX))
-ifeq ($(ROOTFS_SUFFIX),)
-ROOTFS_SUFFIX:=
-else
-XXXX=xxxx
-ROOTFS_SUFFIX:=-$(BR2_ROOTFS_SUFFIX)
-endif
+ROOTFS_PREFIX:=$(call qstrip,$(BR2_ROOTFS_PREFIX))

I would rather prefer to completely get rid of these options. You want several projects, use O=.

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com
#27 lore raw

PATCH 8/14 remove BR2_FPU_SUFFIX

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Again, your commit messages are very terse. Please document why you are doing a change, not just what you are doing.

Otherwise it is fine, committed.

Signature · 1 line
Bye, Peter Korsgaard
#29 lore raw

PATCH 7/14 *-menuconfig needs dirs to exist

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Bernhard> -busybox-menuconfig: host-sed $(BUILD_DIR) busybox-source $(BUSYBOX_DIR)/.config Bernhard> +busybox-menuconfig: host-sed dirs $(BUILD_DIR) busybox-source $(BUSYBOX_DIR)/.config
Bernhard> $(MAKE) __TARGET_ARCH=$(ARCH) -C $(BUSYBOX_DIR) menuconfig

dirs includes BUILD_DIR, so we could get rid of that.

Signature · 1 line
Bye, Peter Korsgaard
#30 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

In a pristine checkout the -menuconfig targets need their build dirs to exist.

---
 target/linux/Makefile.in   |    4 ++--
 toolchain/uClibc/uclibc.mk |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
target/linux/Makefile.in +2 -2
index c4962bd..f3c7807 100644
@@ -201,7 +201,7 @@ $(TARGET_DIR)/lib/modules/$(LINUX26_VERSION)/modules.dep: $(LINUX26_DIR)/.config
 	fi
 	touch -c $@
 
-linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
+linux26-menuconfig: host-sed dirs $(LINUX26_DIR)/.patched
 	if [ ! -f $(LINUX26_DIR)/.config ]; then \
 		[ -n "$(LINUX26_KCONFIG)" ] && [ -f $(LINUX26_KCONFIG) ] && \
 			cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config || \
@@ -210,7 +210,7 @@ linux26-menuconfig: $(LINUX26_DIR)/.patched host-sed
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) menuconfig
 	-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
 
-linux26-xconfig: $(LINUX26_DIR)/.patched host-sed
+linux26-xconfig: host-sed dirs $(LINUX26_DIR)/.patched
 	[ -f $(LINUX26_DIR)/.config ] || cp $(LINUX26_KCONFIG) $(LINUX26_DIR)/.config
 	$(MAKE) $(LINUX26_MAKE_FLAGS) -C $(LINUX26_DIR) xconfig
 	-[ -f $(LINUX26_DIR)/.config ] && touch $(LINUX26_DIR)/.configured
toolchain/uClibc/uclibc.mk +1 -1
index 292f895..74b058d 100644
@@ -463,7 +463,7 @@ $(UCLIBC_DIR)/lib/libc.a: $(UCLIBC_DIR)/.configured $(gcc_initial) $(LIBFLOAT_TA
 		all
 	touch -c $@
 
-uclibc-menuconfig: host-sed $(UCLIBC_DIR)/.config
+uclibc-menuconfig: host-sed dirs $(UCLIBC_DIR)/.config
 	$(MAKE1) -C $(UCLIBC_DIR) \
 		ARCH="$(UCLIBC_TARGET_ARCH)" \
 		PREFIX=$(TOOLCHAIN_DIR)/uClibc_dev/ \
Signature · 1 line
1.6.3.3
#31 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> In a pristine checkout the -menuconfig targets need their build dirs
Bernhard> to exist.

Really? I cannot reproduce it:

git clone ~/source/buildroot; cd buildroot
yes ''|make oldconfig >/dev/null
make busybox-menuconfig <- works
make uclibc-menuconfig <- works
sed -i -e 's/.*BR2_KERNEL_none.*=/# BR2_KERNEL_none is not set/' -e 's/.*BR2_KERNEL_LINUX.*/BR2_KERNEL_LINUX=y/' .config yes ''|make oldconfig >/dev/null
make linux26-menuconfig <- works

Signature · 1 line
Bye, Peter Korsgaard
#32 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 9 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> In a pristine checkout the -menuconfig targets need their build dirs
Bernhard> to exist.

Really? I cannot reproduce it:

git clone ~/source/buildroot; cd buildroot
yes ''|make oldconfig >/dev/null

No. You already created the dirs here.

rm -rf /tmp/brrr && \
git clone ~/source/buildroot /tmp/brrr && \
cd /tmp/brrr
make linux26-menuconfig

Quoted 8 lines

make busybox-menuconfig <- works
make uclibc-menuconfig <- works
sed -i -e 's/.*BR2_KERNEL_none.*=/# BR2_KERNEL_none is not set/' -e 's/.*BR2_KERNEL_LINUX.*/BR2_KERNEL_LINUX=y/' .config yes ''|make oldconfig >/dev/null
make linux26-menuconfig <- works

Signature · 1 line
Bye, Peter Korsgaard
#33 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Quoted 2 lines · Peter Korsgaard
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> In a pristine checkout the -menuconfig targets need their build dirs Bernhard> to exist.

Quoted 5 lines
Quoted 5 lines

Really? I cannot reproduce it:

git clone ~/source/buildroot; cd buildroot
yes ''|make oldconfig >/dev/null

Bernhard> No. You already created the dirs here.

Ok, but you need a config with busybox/uclibc/linux26 enabled, otherwise none of those targets make sense.

Anyway, doing:

git clone ~/source/buildroot; cd buildroot
cp ~/source/buildroot/.config . # has busybox enabled make busybox-menuconfig
Makefile:281: .config.cmd: No such file or directory
make: *** No rule to make target `.config.cmd'. Stop.

Adding dirs to the busybox-menuconfig dependency won't change anything about that.

doing touch .config.cmd; make busybox-menuconfig works.

Signature · 1 line
Bye, Peter Korsgaard
#34 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 20 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Quoted 2 lines · Peter Korsgaard
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> In a pristine checkout the -menuconfig targets need their build dirs Bernhard> to exist.

Quoted 5 lines
Quoted 5 lines

Really? I cannot reproduce it:

git clone ~/source/buildroot; cd buildroot
yes ''|make oldconfig >/dev/null

Bernhard> No. You already created the dirs here.

Ok, but you need a config with busybox/uclibc/linux26 enabled, otherwise none of those targets make sense.

Anyway, doing:

Quoted 8 lines

git clone ~/source/buildroot; cd buildroot
cp ~/source/buildroot/.config . # has busybox enabled make busybox-menuconfig
Makefile:281: .config.cmd: No such file or directory
make: *** No rule to make target `.config.cmd'. Stop.

Adding dirs to the busybox-menuconfig dependency won't change anything about that.

my bad, you're right that i did:

$ git clone
$ make defconfig
$ rm -rf output
somebody should fix the clean targets!!
$ make linux26-menuconfig

and that failed.

Quoted 1 line

doing touch .config.cmd; make busybox-menuconfig works.

#35 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> my bad, you're right that i did:
Bernhard> $ git clone
Bernhard> $ make defconfig
Bernhard> $ rm -rf output

defconfig doesn't create output.

Bernhard> somebody should fix the clean targets!! Bernhard> $ make linux26-menuconfig

Bernhard> and that failed.

Yes, with:
make: *** No rule to make target `linux26-menuconfig'. Stop.

which makes sense as the defconfig rightly doesn't have the Linux kernel enabled - It does have busybox+uclibc enabled, and their -menuconfig targets work.

Are you seing something else?

Signature · 1 line
Bye, Peter Korsgaard
#36 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 8 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> my bad, you're right that i did:
Bernhard> $ git clone
Bernhard> $ make defconfig
Bernhard> $ rm -rf output

defconfig doesn't create output.

ok, so it was menuconfig.

Quoted 5 lines

Bernhard> somebody should fix the clean targets!!
Bernhard> $ make linux26-menuconfig

Bernhard> and that failed.

I'll stop arguing about this breakage now and keep the fix local.

thanks for your patience.

#37 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Quoted 1 line
Quoted 1 line

defconfig doesn't create output.

Bernhard> ok, so it was menuconfig.

Quoted 1 line
Quoted 1 line

Bernhard> somebody should fix the clean targets!! Bernhard> $ make linux26-menuconfig

Quoted 1 line
Quoted 1 line

Bernhard> and that failed.

It doesn't here.

Bernhard> I'll stop arguing about this breakage now and keep the fix local.

I have no problem adding fixes, but I want to understand what - if anything, it fixes.

Bernhard> thanks for your patience.

You're welcome.

Signature · 1 line
Bye, Peter Korsgaard
#38 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 2 lines · Peter Korsgaard

I have no problem adding fixes, but I want to understand what - if anything, it fixes.

one last attempt.

$ rm -rf buildroot
$ git clone --depth 1 git://git.uclibc.org/git/buildroot.git && cd buildroot
$ make
select linux kernel, same as headers. Set format to e.g. bzImage; save
and exit. you have e.g.:
$ egrep "^BR2_(.*LINUX|KERNEL)" .config
BR2_KERNEL_MIRROR="http://www.kernel.org/pub/"
BR2_KERNEL_HEADERS_2_6_31=y
BR2_KERNEL_LINUX=y
BR2_PACKAGE_LINUX=y
BR2_PACKAGE_LINUX_KCONFIG=""
BR2_PACKAGE_LINUX_FORMAT="bzImage"

cool, so let's configure the beast:

$ make linux26-menuconfig
--2009-10-09 13:43:42--
http://www.kernel.org/pub//linux/kernel/v2.6//linux-2.6.31.2.tar.bz2
Resolving proxy.loc... 192.168.100.36
Connecting to proxy.loc|192.168.100.36|:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 61449156 (59M) [application/x-bzip2]
Saving to: `./dl/linux-2.6.31.2.tar.bz2'

100%[======================================>] 61,449,156 384K/s in
2m 35s

2009-10-09 13:46:19 (387 KB/s) - `./dl/linux-2.6.31.2.tar.bz2' saved

[61449156/61449156]

rm -rf /tmp/buildroot/output/build/linux-2.6.31.2
*** Unpacking kernel source
bzcat ./dl/linux-2.6.31.2.tar.bz2 | tar -C /tmp/buildroot/output/build -xf -
tar: /tmp/buildroot/output/build: Cannot chdir: No such file or directory
tar: Error is not recoverable: exiting now
make: *** [/tmp/buildroot/output/build/linux-2.6.31.2/.unpacked] Error 2

Note that this is an obvious breakage. Look at the makefiles, who do you think should have created the build-dir before that?
And yes, just BUILD_DIR, like busybox does would be sufficient, but later on you will experience that if you just specify BUILD_DIR as prereq then you will die in funny ways for toplevel-parallel makes. (I can almost hear you saying that this isn't supported right now, so:
yes, it isn't but let's just fix it properly to avoid this future problem, ok?)

.

#39 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Bernhard> cool, so let's configure the beast:
Bernhard> $ make linux26-menuconfig

OK, that one I can reproduce. So the fix only really fixes a problem with linux26, as uclibc has mkdir -p $(TOOLCHAIN_DIR) in it's .unpacked rule and busybox depends on BUILD_DIR.

Bernhard> Note that this is an obvious breakage.

It your commit message would explain the problem, yes ;)

Bernhard> Look at the makefiles, who do you think should have created Bernhard> the build-dir before that? And yes, just BUILD_DIR, like Bernhard> busybox does would be sufficient, but later on you will Bernhard> experience that if you just specify BUILD_DIR as prereq then Bernhard> you will die in funny ways for toplevel-parallel makes. (I Bernhard> can almost hear you saying that this isn't supported right Bernhard> now, so: yes, it isn't but let's just fix it properly to Bernhard> avoid this future problem, ok?)

toplevel parallel builds is a lot bigger cake than I care to eat right now, but I don't have a problem with adding dirs (and removing the mkdir -p) as a prerequisite to uclibc/busybox/linux26-menuconfig as a cleanup.

Thanks for your presistence.

Signature · 1 line
Bye, Peter Korsgaard
#40 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 10 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Bernhard> cool, so let's configure the beast:
Bernhard> $ make linux26-menuconfig

OK, that one I can reproduce. So the fix only really fixes a problem with linux26, as uclibc has mkdir -p $(TOOLCHAIN_DIR) in it's .unpacked rule and busybox depends on BUILD_DIR.

I retract my proposed patch.

I agree this mess should be delt with differently. move INSTALL?=
to toplevel makefile
MKDIR_P ?= $(INSTALL) -d
there.
remove approximately all manual invocations of "mkdir -p". Finally remember that, for each targets some stamps need one (or some) dir as prereq, so spell them out in one two-liner rule once and for all.

There will be only a handful of "manual" MKDIR_P occurances left for the few packages that are exceptions.

Quoted 4 lines

Bernhard> Note that this is an obvious breakage.

It your commit message would explain the problem, yes ;)

heh :)

#41 lore raw

PATCH 6/10 *-menuconfig needs dirs to exist

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Quoted 3 lines
Quoted 3 lines

OK, that one I can reproduce. So the fix only really fixes a problem with linux26, as uclibc has mkdir -p $(TOOLCHAIN_DIR) in it's .unpacked rule and busybox depends on BUILD_DIR.

Bernhard> I retract my proposed patch.

I already committed and pushed your patch. Care to cook a new one that I can apply on top instead?

Signature · 1 line
Bye, Peter Korsgaard
#43 lore raw

PATCH 6/14 allow for testing gcc-4.5

Quoted 7 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]> Bernhard> ---
Bernhard> toolchain/gcc/Config.in | 12 ++++++------

No uclibc-specific patches?

you don't even default to 4.4.1 IIRC, so no not at this time.

#44 lore raw

PATCH 6/14 allow for testing gcc-4.5

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Quoted 2 lines · Peter Korsgaard
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]> Bernhard> ---

 Bernhard> toolchain/gcc/Config.in |   12 ++++++------
Quoted 2 lines
Quoted 2 lines

No uclibc-specific patches?

Bernhard> you don't even default to 4.4.1 IIRC, so no not at this time.

No, because of reported C++ issues. Does 4.5(-pre) even build for uclibc without minimal patches?

Signature · 1 line
Bye, Peter Korsgaard
#45 lore raw

PATCH 6/14 allow for testing gcc-4.5

Quoted 9 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Quoted 2 lines · Peter Korsgaard
Quoted 2 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> Signed-off-by: Bernhard Reutner-Fischer <[email protected]> Bernhard> ---
Bernhard> toolchain/gcc/Config.in | 12 ++++++------

Quoted 1 line
Quoted 1 line
Quoted 6 lines
Quoted 1 line
Quoted 1 line

No uclibc-specific patches?

Bernhard> you don't even default to 4.4.1 IIRC, so no not at this time.

No, because of reported C++ issues. Does 4.5(-pre) even build for uclibc without minimal patches?

builds fine for the few arches i tried.
If there are C++ issues in 4.4.x then they should be fixed or at least be reported.

#46 lore raw

PATCH 4/14 expand arch selection

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

This one still contains a lot of unrelated stuff. Could you please split it up in something like:

- add bfin
- update m68k support
- update cris support
- add s390
- certain options should depend on finegrainedmtune
- ...

That would make reviewing a lot easier.

Signature · 1 line
Bye, Peter Korsgaard
#47 lore raw

PATCH 4/14 expand arch selection

Quoted 5 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

This one still contains a lot of unrelated stuff. Could you please split it up in something like:

Quoted 8 lines

- add bfin
- update m68k support
- update cris support
- add s390
- certain options should depend on finegrainedmtune
- ...

That would make reviewing a lot easier.

It is one logical change, splitting them into individual parts is too cumbersome for me right now. I've even left out default cpu tuning (forgot to do an intermittent commit and synced some more in the meantime which is not pushed yet).

#48 lore raw

PATCH 4/14 expand arch selection

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> It is one logical change, splitting them into individual parts is too Bernhard> cumbersome for me right now. I've even left out default cpu tuning Bernhard> (forgot to do an intermittent commit and synced some more in the Bernhard> meantime which is not pushed yet).

Ok, then review will take some more time.

Signature · 1 line
Bye, Peter Korsgaard
#49 lore raw

PATCH 3/14 handle MMU configuration

In reply to Bernhard Reutner-Fischer
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> some arches do not have an MMU at all, some do but it may be
Bernhard> desirable not to use it.

How's our nommu support? Does anything besides busybox support nommu?

Bernhard> +++ b/toolchain/gcc/Makefile.in Bernhard> @@ -49,6 +49,11 @@ SOFT_FLOAT_CONFIG_OPTION:=

 Bernhard>  TARGET_SOFT_FLOAT:=
 Bernhard>  ARCH_FPU_SUFFIX:=
 Bernhard>  endif

Bernhard> +ifeq ($(BR2_USE_MMU),y)
Bernhard> +ARCH_MMU_SUFFIX:=
Bernhard> +else
Bernhard> +ARCH_MMU_SUFFIX:=_nommu
Bernhard> +endif

Weren't we getting rid of those suffixes?

Signature · 1 line
Bye, Peter Korsgaard
#50 lore raw

PATCH 3/14 handle MMU configuration

Quoted 12 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Bernhard> some arches do not have an MMU at all, some do but it may be
Bernhard> desirable not to use it.

How's our nommu support? Does anything besides busybox support nommu?

Bernhard> +++ b/toolchain/gcc/Makefile.in Bernhard> @@ -49,6 +49,11 @@ SOFT_FLOAT_CONFIG_OPTION:=

Bernhard>  TARGET_SOFT_FLOAT:=
Bernhard>  ARCH_FPU_SUFFIX:=
Bernhard>  endif
Quoted 7 lines

Bernhard> +ifeq ($(BR2_USE_MMU),y)
Bernhard> +ARCH_MMU_SUFFIX:=
Bernhard> +else
Bernhard> +ARCH_MMU_SUFFIX:=_nommu
Bernhard> +endif

Weren't we getting rid of those suffixes?

yes, they are to be removed later (the're unused now)

#51 lore raw

PATCH 3/14 handle MMU configuration

Quoted 3 lines
Quoted 3 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Weren't we getting rid of those suffixes?

Bernhard> yes, they are to be removed later (the're unused now)

Then lets not add then just to remove them again right away.

Signature · 1 line
Bye, Peter Korsgaard
#52 lore raw

PATCH 3/14 RESEND: handle MMU configuration

In reply to Bernhard Reutner-Fischer

Le Wed, 7 Oct 2009 23:27:47 +0200,
Bernhard Reutner-Fischer <[email protected]> a ?crit :

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 90

Quoted 3 lines
toolchain/Config.in.2 +3 -0
+config BR2_HAVE_NOMMU
+	def_bool n
+	# assume that we have an MMU per default.

Maybe we should use BR2_HAVE_MMU, def_bool y. The non-not-negative-if-not-options are really hard to understand.

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 98

Quoted 7 lines
toolchain/Config.in.2 +7 -0
+config BR2_USE_MMU
+	bool "Use MMU"
+	default y
+	depends on !BR2_HAVE_NOMMU
+	help
+	  If your target has an MMU and you want to use it
+	  then say Y here.

What's the usage of these two new options ?

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com
#53 lore raw

PATCH 3/14 RESEND: handle MMU configuration

Quoted 9 lines · Thomas Petazzoni

Le Wed, 7 Oct 2009 23:27:47 +0200,
Bernhard Reutner-Fischer <[email protected]> a ?crit :

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 90

Quoted 3 lines
toolchain/Config.in.2 +3 -0
+config BR2_HAVE_NOMMU
+	def_bool n
+	# assume that we have an MMU per default.

Maybe we should use BR2_HAVE_MMU, def_bool y. The non-not-negative-if-not-options are really hard to understand.

This is a hidden symbol that is (and has to be) only used in this spot. Everything in real packages is wired up to USE_MMU.
That said, I don't mind if you want to change !! to ''.

Quoted 9 lines

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 98

Quoted 7 lines
toolchain/Config.in.2 +7 -0
+config BR2_USE_MMU
+	bool "Use MMU"
+	default y
+	depends on !BR2_HAVE_NOMMU
+	help
+	  If your target has an MMU and you want to use it
+	  then say Y here.

What's the usage of these two new options ?

see how it's odd if one has to split out patches into too fine-grained pieces? See the arch touchup for the user.
And yes, my initial patch contained
- these knobs
- the configury parts
- actual use of the configury parts

#54 lore raw

PATCH 3/14 RESEND: handle MMU configuration

In reply to Thomas Petazzoni
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Le Wed, 7 Oct 2009 23:27:47 +0200,
Thomas> Bernhard Reutner-Fischer <[email protected]> a ?crit :

Quoted 3 lines

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 90

Quoted 3 lines
toolchain/Config.in.2 +3 -0
+config BR2_HAVE_NOMMU
+	def_bool n
+	# assume that we have an MMU per default.

Thomas> Maybe we should use BR2_HAVE_MMU, def_bool y. The Thomas> non-not-negative-if-not-options are really hard to understand.

I guess the idea is that the architectures can 'select' this option behind the user's back. There's afaik nothing in kconfig to disable another option if you enable something.

You could ofcourse move the logic here instead of in the individual arch handling (E.G. default y if BR2_ARCH_bfin, or what it now is).

Quoted 7 lines

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 98

Quoted 7 lines
toolchain/Config.in.2 +7 -0
+config BR2_USE_MMU
+	bool "Use MMU"
+	default y
+	depends on !BR2_HAVE_NOMMU
+	help
+	  If your target has an MMU and you want to use it
+	  then say Y here.

Thomas> What's the usage of these two new options ?

Yes, I would like to know this as well. I would imagine properly supporting nommu would take quite some more effort than this (E.G. most packages should get hidden).

Signature · 1 line
Bye, Peter Korsgaard
#55 lore raw

PATCH 3/14 RESEND: handle MMU configuration

Quoted 12 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Thomas" == Thomas Petazzoni <[email protected]> writes:

Thomas> Le Wed, 7 Oct 2009 23:27:47 +0200,
Thomas> Bernhard Reutner-Fischer <[email protected]> a ?crit :

Quoted 3 lines

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 90

Quoted 3 lines
toolchain/Config.in.2 +3 -0
+config BR2_HAVE_NOMMU
+	def_bool n
+	# assume that we have an MMU per default.

Thomas> Maybe we should use BR2_HAVE_MMU, def_bool y. The Thomas> non-not-negative-if-not-options are really hard to understand.

Quoted 2 lines

I guess the idea is that the architectures can 'select' this option behind the user's back. There's afaik nothing in kconfig to disable

Exactly. e.g.:

$ grep -B3 HAVE_NOMMU target/Config.in.arch 

config BR2_m68k_cpu_68000

	bool "68000"
	select BR2_HAVE_NOMMU
config BR2_m68k_cpu_68010
	bool "68010"
	select BR2_HAVE_NOMMU

--

config BR2_m68k_cpu_coldfire_51qe

	bool "51qe"
	select BR2_HAVE_NOMMU
config BR2_m68k_cpu_coldfire_5202
	bool "5202"
	select BR2_HAVE_NOMMU
config BR2_m68k_cpu_coldfire_5204
	bool "5204"
	select BR2_HAVE_NOMMU
config BR2_m68k_cpu_coldfire_5206
	bool "5206"
	select BR2_HAVE_NOMMU
Quoted 15 lines

another option if you enable something.

You could ofcourse move the logic here instead of in the individual arch handling (E.G. default y if BR2_ARCH_bfin, or what it now is).

Quoted 7 lines

toolchain/Config.in.2 config BR2_SOFT_FLOAT · line 98

Quoted 7 lines
toolchain/Config.in.2 +7 -0
+config BR2_USE_MMU
+	bool "Use MMU"
+	default y
+	depends on !BR2_HAVE_NOMMU
+	help
+	  If your target has an MMU and you want to use it
+	  then say Y here.

Thomas> What's the usage of these two new options ?

Quoted 3 lines

Yes, I would like to know this as well. I would imagine properly supporting nommu would take quite some more effort than this (E.G. most packages should get hidden).

why would you want to hide most of the package?
For a start, it only affects the binary format.

#56 lore raw

PATCH 3/14 RESEND: handle MMU configuration

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Thomas> What's the usage of these two new options ?

Quoted 4 lines
Quoted 4 lines

Yes, I would like to know this as well. I would imagine properly supporting nommu would take quite some more effort than this (E.G. most packages should get hidden).

Bernhard> why would you want to hide most of the package?

Because they use fork or other nommu-nono's?

Signature · 1 line
Bye, Peter Korsgaard
#57 lore raw

PATCH 3/14 RESEND: handle MMU configuration

Quoted 6 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Thomas> What's the usage of these two new options ?

Quoted 1 line
Quoted 1 line
Quoted 7 lines
Quoted 3 lines
Quoted 3 lines

Yes, I would like to know this as well. I would imagine properly supporting nommu would take quite some more effort than this (E.G. most packages should get hidden).

Bernhard> why would you want to hide most of the package?

Because they use fork or other nommu-nono's?

On a nommu box you'd typically not install KDE or stuff like that. The typical package which will be used on nommu boxes should handle fork vs, vfork just fine. If a package does not then this package needs to be fixed and the fix sent upstream, obviously.

#58 lore raw

PATCH 3/14 RESEND: handle MMU configuration

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Bernhard" == Bernhard Reutner-Fischer <[email protected]> writes:

Hi,

Bernhard> why would you want to hide most of the package?

Quoted 2 lines
Quoted 2 lines

Because they use fork or other nommu-nono's?

Bernhard> On a nommu box you'd typically not install KDE or stuff like that.

make randpackageconfig still shouldn't fail. That's the idea behind kconfig's depends/select handling.

Besides, plenty of non-desktop stuff uses fork() or similar.

Bernhard> The typical package which will be used on nommu boxes should handle Bernhard> fork vs, vfork just fine. If a package does not then this package Bernhard> needs to be fixed and the fix sent upstream, obviously.

Signature · 1 line
Bye, Peter Korsgaard