X-Git-Url: http://git.megacz.com/?p=nestedvm.git;a=blobdiff_plain;f=upstream%2FMakefile;h=70e2519839945c44a2a2ca4cfeb13d2e39e371cf;hp=43f14a7fb0e9f1b1f95d5538259f953b1cf4d722;hb=HEAD;hpb=d5566fee6b4ea8e85ddea33ce20587e7c523bc25 diff --git a/upstream/Makefile b/upstream/Makefile index 43f14a7..70e2519 100644 --- a/upstream/Makefile +++ b/upstream/Makefile @@ -1,6 +1,6 @@ # Inspired by XWT's Makefile.upstream -sourceforge = http://softlayer.dl.sourceforge.net/sourceforge/ +sourceforge = http://download.sourceforge.net/ tasks/everything: \ tasks/build_newlib \ @@ -10,6 +10,9 @@ tasks/everything: \ tasks/build_regex \ tasks/build_openbsdglob \ tasks/build_zlib \ + tasks/build_libpng \ + tasks/build_libiconv \ + tasks/build_gd \ tasks/build_expat \ tasks/build_gmp \ tasks/build_expat \ @@ -32,6 +35,8 @@ tasks/everything: \ darcs_gcclass = http://gcclass.ibex.org/ darcs_classgen = http://classgen.ibex.org/ +git_gcclass = http://gcclass.ibex.org/.git/ +git_classgen = http://classgen.ibex.org/.git/ cross_root := $(usr)/mips-unknown-elf .SECONDARY: # This is broken in gmake < 3.79.1 @@ -100,6 +105,30 @@ tasks/build_darcs_%: tasks/extract_darcs_% cd "build/$*" && $(MAKE) touch $@ +tasks/extract_git_%: + if [ -e $@ ]; then echo "Error: $@ exists. something isn't right"; false; else true; fi + mkdir -p build + if [ -z "$(git_$*)" ]; then echo "No git url for $*" >&2; false; fi + if [ -d "$(root)/.git" ]; then \ + cd build && git clone "$(git_$*)" "$*"; \ + else \ + mkdir -p "build/" && cd "build/"; \ + git clone $(darcs_$*) $*; \ + fi + touch $@ + +update_git_%: tasks/extract_git_% + if [ -d "build/$*/.git" ]; then \ + cd "build/$*" && git fetch; \ + else \ + cd "build/$*" && git clone $(git_$*); \ + fi + rm -f "tasks/build_git_$*" # to force a rebuild + +tasks/build_git_%: tasks/extract_git_% + cd "build/$*" && $(MAKE) + touch $@ + clean_%: rm -rf "build/$(*)"* rm -f "tasks/build_$*" "tasks/patch_$*" "tasks/extract_$*" @@ -249,13 +278,56 @@ url_linpack = http://www.math.iastate.edu/burkardt/f_src/linpack_bench/linpack_b ## zlib ############################################################################## -version_zlib = 1.2.3 +version_zlib = 1.2.7 url_zlib = http://www.zlib.net/zlib-$(version_zlib).tar.gz +configure_zlib = --static tasks/build_zlib: tasks/patch_zlib mkdir -p $(usr) cd build/zlib-$(version_zlib) && \ - AR="mips-unknown-elf-ar rc" CC=mips-unknown-elf-gcc ./configure --prefix=$(usr) $(configure_$*) && \ + AR=mips-unknown-elf-ar CC=mips-unknown-elf-gcc ./configure --prefix=$(usr) $(configure_zlib) && \ + $(MAKE) TARGET_CFLAGS="$(MIPS_CFLAGS)" && \ + $(MAKE) install + touch $@ + +## libpng ############################################################################## + +version_libpng = 1.5.10 +url_libpng = $(sourceforge)libpng/libpng-$(version_libpng).tar.gz +configure_libpng = --disable-shared --host=mips-unknown-elf + +tasks/build_libpng: tasks/build_zlib tasks/patch_libpng tasks/build_libc + mkdir -p $(usr) + cd build/libpng-$(version_libpng) && \ + CPPFLAGS=-I$(usr)/include LDFLAGS=-L$(usr)/lib ./configure --prefix=$(usr) $(configure_libpng) && \ + $(MAKE) TARGET_CFLAGS="$(MIPS_CFLAGS)" && \ + $(MAKE) install + touch $@ + +## libiconv ############################################################################## + +version_libiconv = 1.14 +url_libiconv = http://ftp.gnu.org/gnu/libiconv/libiconv-$(version_libiconv).tar.gz +configure_libiconv = --disable-shared --host=mips-unknown-elf + +tasks/build_libiconv: tasks/patch_libiconv tasks/build_libc + mkdir -p $(usr) + cd build/libiconv-$(version_libiconv) && \ + ./configure --prefix=$(usr) $(configure_libiconv) && \ + $(MAKE) TARGET_CFLAGS="$(MIPS_CFLAGS)" && \ + $(MAKE) install + touch $@ + +## gd ############################################################################## + +version_gd = 2.0.35 +url_gd = http://www.chipsnbytes.net/downloads/gd-$(version_gd).tar.gz +configure_gd = --disable-shared --host=mips-unknown-elf + +tasks/build_gd: tasks/build_freetype tasks/patch_gd tasks/build_libc + mkdir -p $(usr) + cd build/gd-$(version_gd) && \ + CPPFLAGS=-I$(usr)/include/freetype2 LDFLAGS=-L$(usr)/lib ./configure --prefix=$(usr) $(configure_gd) && \ $(MAKE) TARGET_CFLAGS="$(MIPS_CFLAGS)" && \ $(MAKE) install touch $@ @@ -359,9 +431,9 @@ tasks/build_libmspack: tasks/patch_libmspack tasks/build_libc ## freetype ############################################################################## -version_freetype = 2.1.4 +version_freetype = 2.4.9 url_freetype = $(sourceforge)freetype/freetype-$(version_freetype).tar.gz -patches_freetype = freetype.patch ft-nostdio.patch +#patches_freetype = freetype.patch ft-nostdio.patch tasks/build_freetype: tasks/patch_freetype tasks/build_libc cd build/freetype-$(version_freetype) && \