aboutsummaryrefslogtreecommitdiffstats
path: root/tools/sdcc
diff options
context:
space:
mode:
Diffstat (limited to 'tools/sdcc')
-rw-r--r--tools/sdcc/.svn/entries65
-rw-r--r--tools/sdcc/.svn/text-base/Makefile.svn-base43
-rw-r--r--tools/sdcc/Makefile43
-rw-r--r--tools/sdcc/patches/.svn/entries96
-rw-r--r--tools/sdcc/patches/.svn/text-base/100-workaround-gcc-4.6.2-hang.patch.svn-base20
-rw-r--r--tools/sdcc/patches/.svn/text-base/200-fix_order_of_linking.patch.svn-base92
-rw-r--r--tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch20
-rw-r--r--tools/sdcc/patches/200-fix_order_of_linking.patch92
8 files changed, 471 insertions, 0 deletions
diff --git a/tools/sdcc/.svn/entries b/tools/sdcc/.svn/entries
new file mode 100644
index 0000000..75e6f70
--- /dev/null
+++ b/tools/sdcc/.svn/entries
@@ -0,0 +1,65 @@
+10
+
+dir
+36060
+svn://svn.openwrt.org/openwrt/trunk/tools/sdcc
+svn://svn.openwrt.org/openwrt
+
+
+
+2012-08-12T12:34:30.330423Z
+33140
+jow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+3c298f89-4303-0410-b956-a3cf2f4a3e73
+
+patches
+dir
+
+Makefile
+file
+
+
+
+
+2013-03-17T12:13:23.000000Z
+fc1fd7742846fbe5cde07849f81339d4
+2012-08-12T12:34:30.330423Z
+33140
+jow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+944
+
diff --git a/tools/sdcc/.svn/text-base/Makefile.svn-base b/tools/sdcc/.svn/text-base/Makefile.svn-base
new file mode 100644
index 0000000..3210bb3
--- /dev/null
+++ b/tools/sdcc/.svn/text-base/Makefile.svn-base
@@ -0,0 +1,43 @@
+#
+# Copyright (C) 2012 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=sdcc
+PKG_VERSION:=3.0.0
+
+PKG_SOURCE:=$(PKG_NAME)-src-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=@SF/$(PKG_NAME)
+PKG_MD5SUM:=20fbd49a3421e09fe65577c45524c89e
+
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)
+
+include $(INCLUDE_DIR)/host-build.mk
+
+HOST_LDFLAGS += $(HOST_STATIC_LINKING)
+HOST_CONFIGURE_ARGS += \
+ --disable-ucsim \
+ --enable-packihx \
+ --enable-sdcpp \
+ --disable-sdcdb \
+ --disable-gbz80-port \
+ --disable-z80-port \
+ --disable-ds390-port \
+ --disable-ds400-port \
+ --disable-pic-port \
+ --disable-pic16-port \
+ --disable-hc08-port \
+ --disable-avr-port \
+ --disable-xa51-port \
+ --enable-mcs51-port \
+ --enable-device-lib \
+
+define Host/Clean
+ -$(MAKE) -C $(HOST_BUILD_DIR) uninstall
+ $(call Host/Clean/Default)
+endef
+
+$(eval $(call HostBuild))
diff --git a/tools/sdcc/Makefile b/tools/sdcc/Makefile
new file mode 100644
index 0000000..3210bb3
--- /dev/null
+++ b/tools/sdcc/Makefile
@@ -0,0 +1,43 @@
+#
+# Copyright (C) 2012 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=sdcc
+PKG_VERSION:=3.0.0
+
+PKG_SOURCE:=$(PKG_NAME)-src-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=@SF/$(PKG_NAME)
+PKG_MD5SUM:=20fbd49a3421e09fe65577c45524c89e
+
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)
+
+include $(INCLUDE_DIR)/host-build.mk
+
+HOST_LDFLAGS += $(HOST_STATIC_LINKING)
+HOST_CONFIGURE_ARGS += \
+ --disable-ucsim \
+ --enable-packihx \
+ --enable-sdcpp \
+ --disable-sdcdb \
+ --disable-gbz80-port \
+ --disable-z80-port \
+ --disable-ds390-port \
+ --disable-ds400-port \
+ --disable-pic-port \
+ --disable-pic16-port \
+ --disable-hc08-port \
+ --disable-avr-port \
+ --disable-xa51-port \
+ --enable-mcs51-port \
+ --enable-device-lib \
+
+define Host/Clean
+ -$(MAKE) -C $(HOST_BUILD_DIR) uninstall
+ $(call Host/Clean/Default)
+endef
+
+$(eval $(call HostBuild))
diff --git a/tools/sdcc/patches/.svn/entries b/tools/sdcc/patches/.svn/entries
new file mode 100644
index 0000000..1d12ada
--- /dev/null
+++ b/tools/sdcc/patches/.svn/entries
@@ -0,0 +1,96 @@
+10
+
+dir
+36060
+svn://svn.openwrt.org/openwrt/trunk/tools/sdcc/patches
+svn://svn.openwrt.org/openwrt
+
+
+
+2012-04-14T09:05:02.774130Z
+31284
+jogo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+3c298f89-4303-0410-b956-a3cf2f4a3e73
+
+100-workaround-gcc-4.6.2-hang.patch
+file
+
+
+
+
+2013-03-17T12:13:23.000000Z
+e77c73ebb2f46599891790e219c24296
+2012-04-10T13:18:45.702574Z
+31236
+jow
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+583
+
+200-fix_order_of_linking.patch
+file
+
+
+
+
+2013-03-17T12:13:23.000000Z
+7ff7f855486d40da056429520a3adf56
+2012-04-14T09:05:02.774130Z
+31284
+jogo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+3260
+
diff --git a/tools/sdcc/patches/.svn/text-base/100-workaround-gcc-4.6.2-hang.patch.svn-base b/tools/sdcc/patches/.svn/text-base/100-workaround-gcc-4.6.2-hang.patch.svn-base
new file mode 100644
index 0000000..71db14f
--- /dev/null
+++ b/tools/sdcc/patches/.svn/text-base/100-workaround-gcc-4.6.2-hang.patch.svn-base
@@ -0,0 +1,20 @@
+--- a/src/SDCCicode.c
++++ b/src/SDCCicode.c
+@@ -1130,6 +1130,9 @@ iCode *getBuiltinParms (iCode *ic, int *
+ return ic;
+ }
+
++#pragma GCC push_options
++#pragma GCC optimize ("O0")
++
+ /*-----------------------------------------------------------------*/
+ /* operandOperation - performs operations on operands */
+ /*-----------------------------------------------------------------*/
+@@ -1405,6 +1408,7 @@ operandOperation (operand * left, operan
+
+ return retval;
+ }
++#pragma GCC pop_options
+
+
+ /*-----------------------------------------------------------------*/
diff --git a/tools/sdcc/patches/.svn/text-base/200-fix_order_of_linking.patch.svn-base b/tools/sdcc/patches/.svn/text-base/200-fix_order_of_linking.patch.svn-base
new file mode 100644
index 0000000..6443497
--- /dev/null
+++ b/tools/sdcc/patches/.svn/text-base/200-fix_order_of_linking.patch.svn-base
@@ -0,0 +1,92 @@
+diff --git a/sdcc/sdas/as6808/Makefile.in b/sdcc/sdas/as6808/Makefile.in
+index 5041265..0b8732e 100644
+--- a/sdas/as6808/Makefile.in
++++ b/sdas/as6808/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/as8051/Makefile.in b/sdcc/sdas/as8051/Makefile.in
+index 8fa5946..fde3001 100644
+--- a/sdas/as8051/Makefile.in
++++ b/sdas/as8051/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asgb/Makefile.in b/sdcc/sdas/asgb/Makefile.in
+index 2763b3f..f9afb23 100644
+--- a/sdas/asgb/Makefile.in
++++ b/sdas/asgb/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asz80/Makefile.in b/sdcc/sdas/asz80/Makefile.in
+index d2bf1ac..89bd91c 100644
+--- a/sdas/asz80/Makefile.in
++++ b/sdas/asz80/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
diff --git a/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch b/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch
new file mode 100644
index 0000000..71db14f
--- /dev/null
+++ b/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch
@@ -0,0 +1,20 @@
+--- a/src/SDCCicode.c
++++ b/src/SDCCicode.c
+@@ -1130,6 +1130,9 @@ iCode *getBuiltinParms (iCode *ic, int *
+ return ic;
+ }
+
++#pragma GCC push_options
++#pragma GCC optimize ("O0")
++
+ /*-----------------------------------------------------------------*/
+ /* operandOperation - performs operations on operands */
+ /*-----------------------------------------------------------------*/
+@@ -1405,6 +1408,7 @@ operandOperation (operand * left, operan
+
+ return retval;
+ }
++#pragma GCC pop_options
+
+
+ /*-----------------------------------------------------------------*/
diff --git a/tools/sdcc/patches/200-fix_order_of_linking.patch b/tools/sdcc/patches/200-fix_order_of_linking.patch
new file mode 100644
index 0000000..6443497
--- /dev/null
+++ b/tools/sdcc/patches/200-fix_order_of_linking.patch
@@ -0,0 +1,92 @@
+diff --git a/sdcc/sdas/as6808/Makefile.in b/sdcc/sdas/as6808/Makefile.in
+index 5041265..0b8732e 100644
+--- a/sdas/as6808/Makefile.in
++++ b/sdas/as6808/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/as8051/Makefile.in b/sdcc/sdas/as8051/Makefile.in
+index 8fa5946..fde3001 100644
+--- a/sdas/as8051/Makefile.in
++++ b/sdas/as8051/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asgb/Makefile.in b/sdcc/sdas/asgb/Makefile.in
+index 2763b3f..f9afb23 100644
+--- a/sdas/asgb/Makefile.in
++++ b/sdas/asgb/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asz80/Makefile.in b/sdcc/sdas/asz80/Makefile.in
+index d2bf1ac..89bd91c 100644
+--- a/sdas/asz80/Makefile.in
++++ b/sdas/asz80/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------