summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-03-23 20:44:22 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2014-03-23 20:44:22 +0100
commita0ad2f92a9133af67883899615eeb760f47f8bff (patch)
treea995b2811d88bc942105fe5b709bc349513401c7
parent6212b234c5d64e152e5ba8f86f66dc72ea1794c3 (diff)
make optimiztion compiler flags configurable, default -Os -pipe
-rw-r--r--mk/vars.mk2
-rw-r--r--package/asterisk/Makefile2
-rw-r--r--rules.mk1
-rw-r--r--target/arm/target.mk1
-rw-r--r--target/config/Config.in.adk7
-rw-r--r--target/m68k/target.mk1
-rw-r--r--target/microblaze/target.mk1
-rw-r--r--target/mips/target.mk1
-rw-r--r--target/ppc/target.mk1
-rw-r--r--target/ppc64/target.mk1
-rw-r--r--target/sh/target.mk1
-rw-r--r--target/sparc/target.mk1
-rw-r--r--target/sparc64/target.mk1
-rw-r--r--target/x86/target.mk1
-rw-r--r--target/x86_64/target.mk1
-rw-r--r--toolchain/musl/Makefile15
16 files changed, 19 insertions, 19 deletions
diff --git a/mk/vars.mk b/mk/vars.mk
index f22717c2e..4bdd4ae9f 100644
--- a/mk/vars.mk
+++ b/mk/vars.mk
@@ -127,7 +127,7 @@ ifneq ($(ADK_DEBUG),)
TARGET_CFLAGS+= -g3 -fno-omit-frame-pointer
else
TARGET_CPPFLAGS+= -DNDEBUG
-TARGET_CFLAGS+= -fomit-frame-pointer $(TARGET_OPTIMIZATION)
+TARGET_CFLAGS+= -fomit-frame-pointer $(ADK_TARGET_CFLAGS_OPT)
# stop generating eh_frame stuff
TARGET_CFLAGS+= -fno-unwind-tables -fno-asynchronous-unwind-tables
# always add debug information
diff --git a/package/asterisk/Makefile b/package/asterisk/Makefile
index 051ad3ea3..e43b4d275 100644
--- a/package/asterisk/Makefile
+++ b/package/asterisk/Makefile
@@ -105,7 +105,7 @@ TARGET_LDFLAGS+= -lm -ltinfo -ldl -lpthread
MAKE_ENV= ASTCFLAGS="${TARGET_CPPFLAGS} -DHAVE_STRTOQ" \
ASTLDFLAGS="${TARGET_LDFLAGS}"
MAKE_FLAGS+= DESTDIR="$(WRKINST)" \
- OPTIMIZE="${TARGET_OPTIMIZATION}" \
+ OPTIMIZE="${TARGET_CFLAGS}" \
NOISY_BUILD=1
ALL_TARGET:= all install samples
diff --git a/rules.mk b/rules.mk
index f822642d1..09323e912 100644
--- a/rules.mk
+++ b/rules.mk
@@ -36,6 +36,7 @@ ADK_TARGET_FPU:= $(strip $(subst ",, $(ADK_TARGET_FPU)))
ADK_TARGET_ARM_MODE:= $(strip $(subst ",, $(ADK_TARGET_ARM_MODE)))
ADK_TARGET_CPU_ARCH:= $(strip $(subst ",, $(ADK_TARGET_CPU_ARCH)))
ADK_TARGET_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_CFLAGS)))
+ADK_TARGET_CFLAGS_OPT:= $(strip $(subst ",, $(ADK_TARGET_CFLAGS_OPT)))
ADK_TARGET_ABI_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_ABI_CFLAGS)))
ADK_TARGET_ABI:= $(strip $(subst ",, $(ADK_TARGET_ABI)))
ADK_TARGET_MIPS_ABI:= $(strip $(subst ",, $(ADK_TARGET_MIPS_ABI)))
diff --git a/target/arm/target.mk b/target/arm/target.mk
index 677e112f7..87db1e279 100644
--- a/target/arm/target.mk
+++ b/target/arm/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= arm
CPU_ARCH:= $(ADK_TARGET_CPU_ARCH)
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/config/Config.in.adk b/target/config/Config.in.adk
index 27b72941e..0c598e50c 100644
--- a/target/config/Config.in.adk
+++ b/target/config/Config.in.adk
@@ -19,6 +19,13 @@ config ADK_DL_DIR
Configure the download directory for all source packages.
Use an absolute path.
+config ADK_TARGET_CFLAGS_OPT
+ string "optimization flags for compiler"
+ default "-Os -pipe"
+ help
+ Compilation is only verfied with optimization for code size (Os).
+ Other stuff (O2) might break. Will not be used when ADK_DEBUG is on.
+
config ADK_DEBUG
bool "Compile applications with debug support by default"
default n
diff --git a/target/m68k/target.mk b/target/m68k/target.mk
index 1460b732b..80b1424a6 100644
--- a/target/m68k/target.mk
+++ b/target/m68k/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= m68k
CPU_ARCH:= $(ADK_TARGET_CPU_ARCH)
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/microblaze/target.mk b/target/microblaze/target.mk
index bee74e465..c179123f9 100644
--- a/target/microblaze/target.mk
+++ b/target/microblaze/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= microblaze
CPU_ARCH:= $(ADK_TARGET_CPU_ARCH)
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/mips/target.mk b/target/mips/target.mk
index f4864d2cc..8b13be890 100644
--- a/target/mips/target.mk
+++ b/target/mips/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= mips
CPU_ARCH:= $(ADK_TARGET_CPU_ARCH)
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/ppc/target.mk b/target/ppc/target.mk
index bd6624fe7..47ae3121f 100644
--- a/target/ppc/target.mk
+++ b/target/ppc/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= powerpc
CPU_ARCH:= ppc
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) -Wl,--secure-plt
diff --git a/target/ppc64/target.mk b/target/ppc64/target.mk
index 7ccf65b9c..5a0ecc30f 100644
--- a/target/ppc64/target.mk
+++ b/target/ppc64/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= powerpc
CPU_ARCH:= ppc64
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/sh/target.mk b/target/sh/target.mk
index b5630cced..408dd12c5 100644
--- a/target/sh/target.mk
+++ b/target/sh/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= sh
CPU_ARCH:= $(ADK_TARGET_CPU_ARCH)
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/sparc/target.mk b/target/sparc/target.mk
index 4de28f960..960a7cf19 100644
--- a/target/sparc/target.mk
+++ b/target/sparc/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= sparc
CPU_ARCH:= sparc
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/sparc64/target.mk b/target/sparc64/target.mk
index 663e42d23..dda789e55 100644
--- a/target/sparc64/target.mk
+++ b/target/sparc64/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= sparc
CPU_ARCH:= sparc64
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/x86/target.mk b/target/x86/target.mk
index 30e558283..ecb811221 100644
--- a/target/x86/target.mk
+++ b/target/x86/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= x86
CPU_ARCH:= $(strip $(subst ",, $(ADK_TARGET_CPU_ARCH)))
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/target/x86_64/target.mk b/target/x86_64/target.mk
index 3eed00bf5..f381673fa 100644
--- a/target/x86_64/target.mk
+++ b/target/x86_64/target.mk
@@ -1,5 +1,4 @@
include $(TOPDIR)/mk/kernel-ver.mk
ARCH:= x86
CPU_ARCH:= x86_64
-TARGET_OPTIMIZATION:= -Os -pipe
TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS)
diff --git a/toolchain/musl/Makefile b/toolchain/musl/Makefile
index 6701c502a..7b0eeb104 100644
--- a/toolchain/musl/Makefile
+++ b/toolchain/musl/Makefile
@@ -12,6 +12,7 @@ endif
$(WRKBUILD)/.headers:
(cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \
+ CFLAGS='$(TARGET_CFLAGS)' \
./configure --prefix=/usr \
--target=$(GNU_TARGET_NAME) \
--disable-gcc-wrapper \
@@ -22,29 +23,31 @@ $(WRKBUILD)/.headers:
$(WRKBUILD)/.compiled:
# reconfigure musl, otherwise linking with libgcc or libgcc_eh is disabled
- $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) clean
+ $(MAKE) -C $(WRKBUILD) clean
(cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \
+ CFLAGS='$(TARGET_CFLAGS)' \
./configure --prefix=/usr \
--target=$(GNU_TARGET_NAME) \
--disable-gcc-wrapper \
)
- $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all
+ $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' all
touch $@
$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
- $(MAKE) -C $(WRKBUILD) DESTDIR=$(STAGING_TARGET_DIR) install
+ $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' DESTDIR=$(STAGING_TARGET_DIR) install
touch $@
$(WRKBUILD)/.fixup:
# reconfigure musl, otherwise linking with libgcc or libgcc_eh is disabled
- $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) clean
+ $(MAKE) -C $(WRKBUILD) clean
(cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \
+ CFLAGS='$(TARGET_CFLAGS)' \
./configure --prefix=/usr \
--target=$(GNU_TARGET_NAME) \
--disable-gcc-wrapper \
)
- $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all
- $(MAKE) -C $(WRKBUILD) DESTDIR=$(STAGING_TARGET_DIR) install
+ $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' all
+ $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' DESTDIR=$(STAGING_TARGET_DIR) install
# cleanup toolchain
-find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete
ifeq ($(ADK_TOOLCHAIN),y)