# HG changeset patch # User Volker Grabsch # Date 1233622626 -3600 # Node ID 89ba55cd6e29180f9dad3210ac05b4a1ae5ae287 # Parent d740c44d051f1d0112956f2f15a6581db89227c6 switch from MinGW GCC to TDM-GCC diff -r d740c44d051f -r 89ba55cd6e29 src/gcc-core.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gcc-core.mk Tue Feb 03 01:57:06 2009 +0100 @@ -0,0 +1,16 @@ +# GCC core +# http://gcc.gnu.org/ + +PKG := gcc-core +$(PKG)_VERSION := 4.3.2 +$(PKG)_SUBDIR := gcc-$($(PKG)_VERSION) +$(PKG)_FILE := gcc-core-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/tdm-gcc/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238462' | \ + grep 'gcc-core-' | \ + $(SED) -n 's,.*gcc-core-\([4-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef diff -r d740c44d051f -r 89ba55cd6e29 src/gcc-g++.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gcc-g++.mk Tue Feb 03 01:57:06 2009 +0100 @@ -0,0 +1,16 @@ +# GCC g++ +# http://gcc.gnu.org/ + +PKG := gcc-g++ +$(PKG)_VERSION := 4.3.2 +$(PKG)_SUBDIR := gcc-$($(PKG)_VERSION) +$(PKG)_FILE := gcc-g++-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/tdm-gcc/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238462' | \ + grep 'gcc-g++-' | \ + $(SED) -n 's,.*gcc-g++-\([4-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef diff -r d740c44d051f -r 89ba55cd6e29 src/gcc-gmp.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gcc-gmp.mk Tue Feb 03 01:57:06 2009 +0100 @@ -0,0 +1,16 @@ +# GMP for GCC +# http://www.gmplib.org/ + +PKG := gcc-gmp +$(PKG)_VERSION := 4.2.4 +$(PKG)_SUBDIR := gmp-$($(PKG)_VERSION) +$(PKG)_FILE := gmp-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/tdm-gcc/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238462' | \ + grep 'gmp-' | \ + $(SED) -n 's,.*gmp-\([4-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef diff -r d740c44d051f -r 89ba55cd6e29 src/gcc-mpfr.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gcc-mpfr.mk Tue Feb 03 01:57:06 2009 +0100 @@ -0,0 +1,16 @@ +# MPFR for GCC +# http://www.mpfr.org/ + +PKG := gcc-mpfr +$(PKG)_VERSION := 2.3.2 +$(PKG)_SUBDIR := mpfr-$($(PKG)_VERSION) +$(PKG)_FILE := mpfr-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/tdm-gcc/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238462' | \ + grep 'mpfr-' | \ + $(SED) -n 's,.*mpfr-\([2-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef diff -r d740c44d051f -r 89ba55cd6e29 src/gcc.mk --- a/src/gcc.mk Tue Feb 03 01:42:58 2009 +0100 +++ b/src/gcc.mk Tue Feb 03 01:57:06 2009 +0100 @@ -1,21 +1,37 @@ -# MinGW GCC -# http://mingw.sourceforge.net/ +# TDM-GCC +# http://www.tdragon.net/recentgcc/ PKG := gcc -$(PKG)_VERSION := 4.2.1-2 -$(PKG)_SUBDIR := gcc-$($(PKG)_VERSION)-src -$(PKG)_FILE := gcc-$($(PKG)_VERSION)-src.tar.gz -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/mingw/$($(PKG)_FILE) -$(PKG)_DEPS := mingwrt w32api binutils pkg_config +$(PKG)_VERSION := 4.3.2-tdm-2 +$(PKG)_SUBDIR := . +$(PKG)_FILE := gcc-$($(PKG)_VERSION)-srcbase.zip +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/tdm-gcc/$($(PKG)_FILE) +$(PKG)_DEPS := pkg_config mingwrt w32api binutils gcc-gmp gcc-mpfr gcc-core gcc-g++ define $(PKG)_UPDATE - wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=241304' | \ - $(SED) -n 's,.*gcc-\([4-9][^>]*\)-src\.tar.*,\1,p' | \ + wget -q -O- 'http://sourceforge.net/project/showfiles.php?group_id=200665&package_id=238347' | \ + grep 'gcc-' | \ + $(SED) -n 's,.*gcc-\([4-9][^>]*\)-srcbase\.zip.*,\1,p' | \ head -1 endef define $(PKG)_BUILD - cd '$(1)' && ./configure \ + # unpack GCC + cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-core) + cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-g++) + # apply TDM patches to GCC + cd '$(1)/$(gcc-core_SUBDIR)' && \ + for p in '$(1)'/*.patch; do \ + patch -p1 < "$$p"; \ + done + # unpack support libraries + cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-gmp) + mv '$(1)/$(gcc-gmp_SUBDIR)' '$(1)/$(gcc-core_SUBDIR)/gmp' + cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-mpfr) + mv '$(1)/$(gcc-mpfr_SUBDIR)' '$(1)/$(gcc-core_SUBDIR)/mpfr' + # build + mkdir '$(1)/build' + cd '$(1)/build' && '$(1)/$(gcc-core_SUBDIR)/configure' \ --target='$(TARGET)' \ --prefix='$(PREFIX)' \ --enable-languages='c,c++' \ @@ -29,5 +45,6 @@ --enable-threads=win32 \ --disable-win32-registry \ --enable-sjlj-exceptions - $(MAKE) -C '$(1)' -j 1 all install + $(MAKE) -C '$(1)/build' -j '$(JOBS)' + $(MAKE) -C '$(1)/build' -j 1 install endef