X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Makefile.upstream;h=bf13f5f671e9ac24db6920cdd8be11e4f889f2b7;hb=b8c64721391095b141b84a000e53326f05a45281;hp=2224f5d9a880140ac8627cefdea6bf96b10f4817;hpb=574af437a07d0e80428923a4004f3d7c1b1be7e2;p=org.ibex.core.git diff --git a/Makefile.upstream b/Makefile.upstream index 2224f5d..bf13f5f 100644 --- a/Makefile.upstream +++ b/Makefile.upstream @@ -8,16 +8,17 @@ setcc := $(shell test `uname` = Darwin && echo "CC=\"/usr/bin/gcc3 -no-cpp-preco # where to get stuff url_newlib-1.11.0 := ftp://sources.redhat.com/pub/newlib/newlib-1.11.0.tar.gz -url_binutils-2.13.2.1 := ftp://ftp.gnu.org/gnu/binutils/binutils-2.13.2.1.tar.gz +url_binutils-2.14 := ftp://ftp.gnu.org/gnu/binutils/binutils-2.14.tar.gz url_w32api-2.3 := http://umn.dl.sourceforge.net/sourceforge/mingw/w32api-2.3.tar.gz url_mingw-runtime-3.0 := http://umn.dl.sourceforge.net/sourceforge/mingw/mingw-runtime-3.0.tar.gz url_freetype-2.1.4 := http://umn.dl.sourceforge.net/sourceforge/freetype/freetype-2.1.4.tar.gz -url_gcc-3.3 := http://mirrors.rcn.net/pub/sourceware/gcc/releases/gcc-3.3/gcc-3.3.tar.gz +url_gcc-3.3.2 := http://mirrors.rcn.net/pub/sourceware/gcc/releases/gcc-3.3.2/gcc-3.3.2.tar.gz url_jpeg-6b := http://www.ijg.org/files/jpegsrc.v6b.tar.gz -url_jikes-1.18 := http://www.megacz.com/tmp/jikes-1.18.tgz #ftp://www-126.ibm.com/pub/jikes/1.18/jikes-1.18.tar.gz +url_jikes-1.18 := http://dist.xwt.org/jikes-1.18.tgz url_libmspack-20030726 := http://www.kyz.uklinux.net/downloads/libmspack-20030726.tar.gz +url_vera-1.10 := http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/ttf-bitstream-vera-1.10.tar.gz -.install_binutils-2.13.2.1_powerpc-apple-darwin: .vendor +.install_binutils-2.14_powerpc-apple-darwin: .vendor rm -rf upstream/darwin-linker/src cd upstream/darwin-linker; tar xvzf ../install/powerpc-apple-darwin/cctools-478.tgz ifneq ($(shell uname),Darwin) @@ -55,27 +56,36 @@ endif touch $@ # building gcc requires binutils -.configure_gcc-3.3_$(target): .install_binutils-2.13.2.1_$(target) +.configure_gcc-3.3.2_$(target): .install_binutils-2.14_$(target) # building newlib requires gcc -.configure_newlib-1.11.0_$(target): .install_gcc-3.3_$(target) +.configure_newlib-1.11.0_$(target): .install_gcc-3.3.2_$(target) # how to configure it -configure_gcc-3.3 += --enable-languages=c,c++,java --enable-gc-type=boehm -configure_gcc-3.3 += --disable-shared --disable-jvmpi -configure_gcc-3.3 += --disable-java-awt --disable-interpreter --enable-static --enable-libgcj +configure_gcc-3.3.2 += --enable-languages=c,c++,java --enable-gc-type=boehm --disable-jvmpi +ifneq ($(platform),Solaris) +configure_gcc-3.3.2 += --disable-shared +else +configure_gcc-3.3.2 += --enable-shared +endif +configure_gcc-3.3.2 += --disable-java-awt --disable-interpreter --enable-static --enable-libgcj ifneq ($(shell uname),$(platform)) -configure_gcc-3.3 += --with-gnu-ld=$(shell pwd)/upstream/install/bin/$(target)-ld -configure_gcc-3.3 += --with-as=$(shell pwd)/upstream/install/bin/$(target)-as -configure_gcc-3.3 += --with-headers=$(shell pwd)/upstream/install/$(target)/include +ifneq ($(target),mips-unknown-elf) +configure_gcc-3.3.2 += --with-ld=$(shell pwd)/upstream/install/bin/$(target)-ld --with-gnu-ld +configure_gcc-3.3.2 += --with-as=$(shell pwd)/upstream/install/bin/$(target)-as --with-gnu-as +configure_gcc-3.3.2 += --with-headers=$(shell pwd)/upstream/install/$(target)/include +configure_gcc-3.3.2 += --with-libs=$(shell pwd)/upstream/install/$(target)/lib +endif endif -configure_gcc-3.3_powerpc-apple-darwin += --enable-threads=posix --disable-hash-synchronization --disable-multilib -configure_gcc-3.3_i686-pc-mingw32 += --enable-threads=win32 --enable-hash-synchronization -configure_gcc-3.3_i686-pc-linux-gnu += --enable-threads=posix --enable-hash-synchronization -configure_gcc-3.3_sparc-sun-solaris2.7 += --enable-threads=posix --disable-multilib -configure_gcc-3.3_mips-unknown-elf += --with-gnu-ld=$(shell pwd)/upstream/install/bin/$(target)-ld -configure_gcc-3.3_mips-unknown-elf += --with-as=$(shell pwd)/upstream/install/bin/$(target)-as -configure_gcc-3.3_mips-unknown-elf += --enable-languages=c --nfp --enable-multilib --disable-threads +configure_gcc-3.3.2_powerpc-apple-darwin += --enable-threads=posix --disable-hash-synchronization --disable-multilib +configure_gcc-3.3.2_i686-pc-mingw32 += --enable-threads=win32 --enable-hash-synchronization +configure_gcc-3.3.2_i686-pc-linux-gnu += --enable-threads=posix --enable-hash-synchronization +configure_gcc-3.3.2_sparc-sun-solaris2.7 += --enable-threads=posix --disable-multilib +configure_gcc-3.3.2_mips-unknown-elf += --with-gnu-ld=$(shell pwd)/upstream/install/bin/$(target)-ld +configure_gcc-3.3.2_mips-unknown-elf += --with-as=$(shell pwd)/upstream/install/bin/$(target)-as +configure_gcc-3.3.2_mips-unknown-elf += --enable-languages=c --nfp --enable-multilib --disable-threads + +environment_newlib-1.11.0_mips-unknown-elf += TARGET_CFLAGS="-O3 -ffunction-sections -fdata-sections" # libjpeg's configury doesn't obey --target environment_jpeg-6b_$(target) += PATH=$(shell pwd)/upstream/install/$(target)/bin:$$PATH @@ -88,6 +98,8 @@ environment_libmspack-20030726_$(target) += PATH=$(shell pwd)/upstream/install/$ environment_libmspack-20030726_$(target) += CC=$(shell pwd)/upstream/install/bin/$(target)-gcc environment_libmspack-20030726_$(target) += AR="$(shell pwd)/upstream/install/$(target)/bin/ar" environment_libmspack-20030726_$(target) += AR2=$(shell pwd)/upstream/install/$(target)/bin/ranlib +environment_libmspack-20030726_$(target) += OPTIM="-ffunction-sections -fdata-sections -O3" + environment_gcc_3.3_$(target) += PATH=$(shell pwd)/upstream/install/bin:$$PATH @@ -113,7 +125,8 @@ endif mkdir -p upstream/$* curl $(url_$*) | tar xzf - -C upstream/$* mv upstream/$*/$* upstream/$*/src; true - (test -e upstream/$*/patches && cd upstream/$*/src && for A in ../patches/*.patch; do patch -p0 < $$A; done); true + mv upstream/$*/libmspack upstream/$*/src; true + (test -e upstream/$*/patches && cd upstream/$*/src && for A in ../patches/*.patch; do patch -p0 -l < $$A; done); true touch $@ .configure_%_$(target): .download_% @@ -127,16 +140,18 @@ endif $(configure_$*_$(target)) touch $@ -.configure_libmspack-20030726_$(target): .download_libmspack-20030726 .install_gcc-3.3_$(target) .install_newlib-1.11.0_$(target) +.configure_libmspack-20030726_$(target): .download_libmspack-20030726 .install_gcc-3.3.2_$(target) .install_newlib-1.11.0_$(target) mkdir -p upstream/libmspack-20030726/build-$(target) - cd upstream/libmspack-20030726/build-$(target); ln -sf ../libmspack/mspack/* . + cd upstream/libmspack-20030726/build-$(target); ln -sf ../src/mspack/* . touch $@ -.install_libmspack-20030726_$(target): .build_libmspack-20030726_$(target) - touch $@ - -.install_freetype-2.1.4_mips-unknown-elf: .install_gcc-3.3_mips-unknown-elf .install_newlib-1.11.0_mips-unknown-elf .download_freetype-2.1.4 - cd upstream/freetype-2.1.4/src; make setup ansi; PATH=$$PATH:`pwd`/../../install/bin make CC=mips-unknown-elf-gcc AR=mips-unknown-elf-ar +.install_freetype-2.1.4_mips-unknown-elf: .install_gcc-3.3.2_mips-unknown-elf .install_newlib-1.11.0_mips-unknown-elf .download_freetype-2.1.4 + cd upstream/freetype-2.1.4/src; \ + make setup ansi; \ + PATH=$$PATH:`pwd`/../../install/bin make \ + CC=mips-unknown-elf-gcc \ + AR=mips-unknown-elf-ar \ + CFLAGS="-c -ffunction-sections -fdata-sections -O3" upstream/install/bin/mips-unknown-elf-ranlib upstream/freetype-2.1.4/src/objs/libfreetype.a touch $@ @@ -148,6 +163,8 @@ endif make $(setcc) $(environment_$*_$(target)) touch $@ +.install_libmspack-20030726_$(target): .build_libmspack-20030726_$(target); true + .install_%_$(target): .build_%_$(target) @echo -e "\n\033[1minstalling $*...\033[0m" cd upstream/$*/build-$(target); \ @@ -160,8 +177,8 @@ endif .jikes: @echo -e "\n\033[1mdetecting your jikes installation...\033[0m" echo "#!/bin/sh" > .jikes - echo 'for A in `find build/class -name \*.class`; do mv $$A $$A.old; done;' >> .jikes - echo -n 'PATH=upstream/install/bin:$$PATH jikes -classpath lib/libgcj-minimal.jar $$@ -d build/class/ -sourcepath build/java/ ' >> .jikes + #echo 'for A in `find build/class -name \*.class`; do mv $$A $$A.old; done;' >> .jikes + echo -n 'PATH=upstream/install/bin:$$PATH jikes -classpath lib/libgcj-minimal.jar:build/class $$@ -d build/class/ -sourcepath build/java/ ' >> .jikes (type jikes && (jikes --version | grep "Version 1.18")) || make .install_jikes-1.18_ target= echo -n "$(jikes_flags) -bootclasspath " >> .jikes echo "public class GetBootClassPath { public static void main(String[] s) { " > GetBootClassPath.java @@ -170,8 +187,8 @@ endif java -cp . GetBootClassPath >> .jikes rm GetBootClassPath.* echo 'EXIT=$$?' >> .jikes - echo 'for A in `find build/class -name \*.class`; do test -e $$A.old && cmp -s $$A $$A.old && mv $$A.old $$A; done' >> .jikes - echo 'for A in `find build/class -name \*.class`; do test -e $$A.old && rm $$A.old; done' >> .jikes + #echo 'for A in `find build/class -name \*.class`; do test -e $$A.old && cmp -s $$A $$A.old && mv $$A.old $$A; done' >> .jikes + #echo 'for A in `find build/class -name \*.class`; do test -e $$A.old && rm $$A.old; done' >> .jikes echo 'exit $$EXIT' >> .jikes mv .jikes .jikes+ cp .jikes+ .jikes