X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Makefile.upstream;h=342585556e151be843763b60cc197e5775ed65d6;hb=809f99d7ff5f73c97cf7b65ff946ef557f8339eb;hp=24755028bfd9a010d14e504729910a77a7020bbf;hpb=793964725ac9b1ad72ff8bfe0748678b9f81629b;p=org.ibex.core.git diff --git a/Makefile.upstream b/Makefile.upstream index 2475502..3425855 100644 --- a/Makefile.upstream +++ b/Makefile.upstream @@ -1,4 +1,4 @@ -############################################################################# +############################################################################# # # The XWT upstream code Makefile # @@ -7,14 +7,13 @@ setcc := $(shell test `uname` = Darwin && echo "CC=\"/usr/bin/gcc3 -no-cpp-precomp\"") # 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_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_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 @@ -58,31 +57,19 @@ endif # building gcc requires binutils .configure_gcc-3.3_$(target): .install_binutils-2.13.2.1_$(target) -# building newlib requires gcc -.configure_newlib-1.11.0_$(target): .install_gcc-3.3_$(target) - # how to configure it -configure_gcc-3.3 += --enable-languages=c,c++,java --enable-gc-type=boehm --disable-jvmpi -ifneq ($(platform),Solaris) -configure_gcc-3.3 += --disable-shared -else -configure_gcc-3.3 += --enable-shared -endif -configure_gcc-3.3 += --disable-java-awt --disable-interpreter --enable-static --enable-libgcj ifneq ($(shell uname),$(platform)) -ifneq ($(target),mips-unknown-elf) -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 endif -endif +configure_gcc-3.3 += --enable-languages=c,c++,java --enable-gc-type=boehm --disable-jvmpi +configure_gcc-3.3 += --with-ld=$(shell pwd)/upstream/install/bin/$(target)-ld --with-gnu-ld +configure_gcc-3.3 += --with-as=$(shell pwd)/upstream/install/bin/$(target)-as --with-gnu-as +configure_gcc-3.3 += --disable-java-awt --disable-interpreter --enable-static --enable-libgcj +configure_gcc-3.3 += --disable-shared --enable-static 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_sparc-sun-solaris2.7 += --enable-threads=posix --disable-hash-synchronization --disable-multilib # libjpeg's configury doesn't obey --target environment_jpeg-6b_$(target) += PATH=$(shell pwd)/upstream/install/$(target)/bin:$$PATH @@ -95,6 +82,7 @@ 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 @@ -119,8 +107,17 @@ endif @echo -e "\n\033[1mdownloading $*...\033[0m" mkdir -p upstream/$* curl $(url_$*) | tar xzf - -C upstream/$* +ifeq ($(target),powerpc-apple-darwin) + mv upstream/$*/$* upstream/$*/src-darwin; true + mv upstream/$*/libmspack upstream/$*/src-darwin; true + (test -e upstream/$*/patches && cd upstream/$*/src-darwin && for A in ../patches/*.patch; do patch -p0 -l < $$A; done); true + (test -e upstream/$*/patches-darwin && cd upstream/$*/src-darwin && for A in ../patches/*.patch; do patch -p0 -l < $$A; done); true +endif +ifneq ($(target),powerpc-apple-darwin) mv upstream/$*/$* upstream/$*/src; 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 +endif touch $@ .configure_%_$(target): .download_% @@ -134,16 +131,32 @@ 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_$(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_mips2java: + mkdir -p upstream/install + echo '/1 :pserver:cvs@cvs.xwt.org:2401/ A' >> ~/.cvspass + cd upstream; cvs -d :pserver:cvs@cvs.xwt.org:/ co mips + cd upstream/mips/upstream; ln -s `cd ../..; pwd`/install + make -C upstream/mips touch $@ -.install_libmspack-20030726_$(target): .compile_libmspack-20030726_$(target) +.install_binutils-2.13.2.1_mips-unknown-elf: .install_mips2java 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_gcc-3.3_mips-unknown-elf: .install_mips2java + touch $@ + +.install_freetype-2.1.4_mips-unknown-elf: .install_mips2java .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 $@ @@ -155,6 +168,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); \ @@ -167,8 +182,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 @@ -177,8 +192,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