Created
August 15, 2018 17:30
-
-
Save namkazt/6352f724765cb8a42ee32c5795aeef3b to your computer and use it in GitHub Desktop.
build 3ds portlibs with ffmpeg 4.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| BZIP2 := bzip2 | |
| BZIP2_VERSION := $(BZIP2)-1.0.6 | |
| BZIP2_SRC := $(BZIP2_VERSION).tar.gz | |
| BZIP2_DOWNLOAD := "http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz" | |
| FREETYPE := freetype | |
| FREETYPE_VERSION := $(FREETYPE)-2.6.2 | |
| FREETYPE_SRC := $(FREETYPE_VERSION).tar.bz2 | |
| FREETYPE_DOWNLOAD := http://download.savannah.gnu.org/releases/freetype/freetype-2.6.2.tar.bz2 | |
| FFMPEG := ffmpeg | |
| FFMPEG_VERSION := $(FFMPEG)-4.0 | |
| FFMPEG_SRC := $(FFMPEG_VERSION).tar.bz2 | |
| FFMPEG_DOWNLOAD := http://ffmpeg.org/releases/ffmpeg-4.0.tar.bz2 | |
| GIFLIB := giflib | |
| GIFLIB_VERSION := $(GIFLIB)-5.1.1 | |
| GIFLIB_SRC := $(GIFLIB_VERSION).tar.bz2 | |
| GIFLIB_DOWNLOAD := "http://sourceforge.net/projects/giflib/files/giflib-5.1.1.tar.bz2" | |
| JANSSON := jansson | |
| JANSSON_VERSION := $(JANSSON)-2.7 | |
| JANSSON_SRC := $(JANSSON_VERSION).tar.gz | |
| JANSSON_DOWNLOAD := https://github.com/akheron/jansson/archive/v2.7.tar.gz | |
| LIBCONFIG := libconfig | |
| LIBCONFIG_VERSION := $(LIBCONFIG)-1.5 | |
| LIBCONFIG_SRC := $(LIBCONFIG_VERSION).tar.gz | |
| LIBCONFIG_DOWNLOAD := "http://www.hyperrealm.com/libconfig/libconfig-1.5.tar.gz" | |
| LIBEXIF := libexif | |
| LIBEXIF_VERSION := $(LIBEXIF)-0.6.21 | |
| LIBEXIF_SRC := $(LIBEXIF_VERSION).tar.bz2 | |
| LIBEXIF_DOWNLOAD := http://sourceforge.net/projects/libexif/files/libexif/0.6.21/libexif-0.6.21.tar.bz2/download | |
| LIBJPEGTURBO := libjpeg-turbo | |
| LIBJPEGTURBO_VERSION := $(LIBJPEGTURBO)-1.5.3 | |
| LIBJPEGTURBO_SRC := $(LIBJPEGTURBO_VERSION).tar.gz | |
| LIBJPEGTURBO_DOWNLOAD := https://sourceforge.net/projects/libjpeg-turbo/files/1.5.3/libjpeg-turbo-1.5.3.tar.gz/download | |
| LIBMAD := libmad | |
| LIBMAD_VERSION := $(LIBMAD)-0.15.1b | |
| LIBMAD_SRC := $(LIBMAD_VERSION).tar.gz | |
| LIBMAD_DOWNLOAD := "http://sourceforge.net/projects/mad/files/libmad/0.15.1b/libmad-0.15.1b.tar.gz" | |
| LIBOGG := libogg | |
| LIBOGG_VERSION := $(LIBOGG)-1.3.2 | |
| LIBOGG_SRC := $(LIBOGG_VERSION).tar.xz | |
| LIBOGG_DOWNLOAD := "http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.xz" | |
| LIBOPUS := libopus | |
| LIBOPUS_VERSION := opus-1.2.1 | |
| LIBOPUS_SRC := $(LIBOPUS_VERSION).tar.gz | |
| LIBOPUS_DOWNLOAD := "http://downloads.xiph.org/releases/opus/opus-1.2.1.tar.gz" | |
| LIBOPUSFILE := libopusfile | |
| LIBOPUSFILE_VERSION := opusfile-0.9 | |
| LIBOPUSFILE_SRC := $(LIBOPUSFILE_VERSION).tar.gz | |
| LIBOPUSFILE_DOWNLOAD := "https://archive.mozilla.org/pub/opus/opusfile-0.9.tar.gz" | |
| LIBPNG := libpng | |
| LIBPNG_VERSION := $(LIBPNG)-1.6.21 | |
| LIBPNG_SRC := $(LIBPNG_VERSION).tar.xz | |
| LIBPNG_DOWNLOAD := http://prdownloads.sourceforge.net/libpng/libpng-1.6.21.tar.xz?download | |
| LIBXML2 := libxml2 | |
| LIBXML2_VERSION := $(LIBXML2)-2.9.3 | |
| LIBXML2_SRC := $(LIBXML2_VERSION).tar.gz | |
| LIBXML2_DOWNLOAD := "http://xmlsoft.org/sources/libxml2-2.9.3.tar.gz" | |
| LIBXMP_LITE := libxmp-lite | |
| LIBXMP_LITE_VERSION := $(LIBXMP_LITE)-4.3.10 | |
| LIBXMP_LITE_SRC := $(LIBXMP_LITE_VERSION).tar.gz | |
| LIBXMP_LITE_DOWNLOAD := http://sourceforge.net/projects/xmp/files/libxmp/4.3.10/libxmp-lite-4.3.10.tar.gz/download | |
| MBED := mbedtls | |
| MBED_VERSION := $(MBED)-2.2.1 | |
| MBED_SRC := $(MBED_VERSION).tgz | |
| MBED_DOWNLOAD := "https://tls.mbed.org/download/mbedtls-2.2.1-gpl.tgz" | |
| MPG123 := mpg123 | |
| MPG123_VERSION := $(MPG123)-1.25.6 | |
| MPG123_SRC := $(MPG123_VERSION).tar.bz2 | |
| MPG123_DOWNLOAD := "https://www.mpg123.de/download/mpg123-1.25.6.tar.bz2" | |
| SQLITE := sqlite | |
| SQLITE_VERSION := $(SQLITE)-autoconf-3100200 | |
| SQLITE_SRC := $(SQLITE_VERSION).tar.gz | |
| SQLITE_DOWNLOAD := https://www.sqlite.org/2016/sqlite-autoconf-3100200.tar.gz | |
| TINYXML := tinyxml2 | |
| TINYXML_VERSION := $(TINYXML)-3.0.0 | |
| TINYXML_SRC := $(TINYXML_VERSION).tar.gz | |
| TINYXML_DOWNLOAD := https://github.com/leethomason/tinyxml2/archive/3.0.0.tar.gz | |
| TREMOR := tremor | |
| TREMOR_VERSION := $(TREMOR)-2a1a8f6 | |
| TREMOR_SRC := $(TREMOR_VERSION).tar.gz | |
| TREMOR_DOWNLOAD := https://git.xiph.org/?p=tremor.git;a=snapshot;h=2a1a8f621e500fdf0749f115e2206f82919560a3;sf=tgz | |
| XZ := xz | |
| XZ_VERSION := $(XZ)-5.2.2 | |
| XZ_SRC := $(XZ_VERSION).tar.xz | |
| XZ_DOWNLOAD := "http://tukaani.org/xz/xz-5.2.2.tar.xz" | |
| ZLIB := zlib | |
| ZLIB_VERSION := $(ZLIB)-1.2.8 | |
| ZLIB_SRC := $(ZLIB_VERSION).tar.gz | |
| ZLIB_DOWNLOAD := http://prdownloads.sourceforge.net/libpng/zlib-1.2.8.tar.gz?download | |
| export DEVKITPRO = /c/devkitPro | |
| export DEVKITARM = /c/devkitPro/devkitARM | |
| export PORTLIBS_PATH := $(DEVKITPRO)/portlibs | |
| export PATH := $(DEVKITARM)/bin:$(PORTLIBS_PATH)/3ds/bin:$(PORTLIBS_PATH)/armv6k/bin:$(PATH) | |
| export PKG_CONFIG := $(PWD)/arm-none-eabi-pkg-config | |
| export CFLAGS := -march=armv6k -mtune=mpcore -mfloat-abi=hard -mtp=soft -O3 -mword-relocations -ffunction-sections | |
| export CPPFLAGS := -I$(PORTLIBS_PATH)/armv6k/include -I/opt/devkitpro/ctrulib/libctru/include | |
| export LDFLAGS := -L$(PORTLIBS_PATH)/armv6k/lib -L/opt/devkitpro/ctrulib/libctru/lib | |
| .PHONY: all install install-zlib clean download \ | |
| $(BZIP2) \ | |
| $(FREETYPE) \ | |
| $(FFMPEG) \ | |
| $(GIFLIB) \ | |
| $(JANSSON) \ | |
| $(LIBCONFIG) \ | |
| $(LIBEXIF) \ | |
| $(LIBJPEGTURBO) \ | |
| $(LIBMAD) \ | |
| $(LIBOGG) \ | |
| $(LIBOPUS) \ | |
| $(LIBOPUSFILE) \ | |
| $(LIBPNG) \ | |
| $(MBED) \ | |
| $(MPG123) \ | |
| $(LIBXML2) \ | |
| $(LIBXMP_LITE) \ | |
| $(SQLITE) \ | |
| $(TINYXML) \ | |
| $(TREMOR) \ | |
| $(XZ) \ | |
| $(ZLIB) | |
| all: | |
| @echo "Please choose one of the following targets:" | |
| @echo " $(BZIP2)" | |
| @echo " $(FREETYPE) (requires zlib to be installed)" | |
| @echo " $(FFMPEG) (requires zlib to be installed)" | |
| @echo " $(GIFLIB)" | |
| @echo " $(JANSSON)" | |
| @echo " $(LIBCONFIG)" | |
| @echo " $(LIBEXIF)" | |
| @echo " $(LIBJPEGTURBO)" | |
| @echo " $(LIBMAD)" | |
| @echo " $(LIBOGG)" | |
| @echo " $(LIBOPUS) (requires $(LIBOGG) to be installed)" | |
| @echo " $(LIBOPUSFILE) (requires $(LIBOGG) and $(LIBOPUS) to be installed)" | |
| @echo " $(LIBPNG) (requires zlib to be installed)" | |
| @echo " $(LIBXML2)" | |
| @echo " $(LIBXMP_LITE)" | |
| @echo " $(MBED) (requires zlib to be installed)" | |
| @echo " $(MPG123)" | |
| @echo " $(SQLITE)" | |
| @echo " $(TINYXML)" | |
| @echo " $(TREMOR) (requires $(LIBOGG) to be installed)" | |
| @echo " $(XZ)" | |
| @echo " $(ZLIB)" | |
| download: $(BZIP2_SRC) $(FREETYPE_SRC) $(FFMPEG_SRC) $(GIFLIB_SRC) $(JANSSON_SRC) $(LIBCONFIG_SRC) $(LIBEXIF_SRC) $(LIBJPEGTURBO_SRC) $(LIBMAD_SRC) $(LIBOGG_SRC) $(LIBOPUS_SRC) $(LIBOPUSFILE_SRC) $(LIBPNG_SRC) $(LIBXML2_SRC) $(LIBXMP_LITE_SRC) $(MBED_SRC) $(MPG123_SRC) $(SQLITE_SRC) $(TINYXML_SRC) $(TREMOR_SRC) $(XZ_SRC) $(ZLIB_SRC) | |
| DOWNLOAD = wget -O "$(1)" "$(2)" || curl -Lo "$(1)" "$(2)" | |
| $(BZIP2_SRC): | |
| @$(call DOWNLOAD,$@,$(BZIP2_DOWNLOAD)) | |
| $(FREETYPE_SRC): | |
| $(call DOWNLOAD,$@,$(FREETYPE_DOWNLOAD)) | |
| $(FFMPEG_SRC): | |
| $(call DOWNLOAD,$@,$(FFMPEG_DOWNLOAD)) | |
| $(GIFLIB_SRC): | |
| $(call DOWNLOAD,$@,$(GIFLIB_DOWNLOAD)) | |
| $(JANSSON_SRC): | |
| @$(call DOWNLOAD,$@,$(JANSSON_DOWNLOAD)) | |
| $(LIBCONFIG_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBCONFIG_DOWNLOAD)) | |
| $(LIBEXIF_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBEXIF_DOWNLOAD)) | |
| $(LIBJPEGTURBO_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBJPEGTURBO_DOWNLOAD)) | |
| $(LIBMAD_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBMAD_DOWNLOAD)) | |
| $(LIBOGG_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBOGG_DOWNLOAD)) | |
| $(LIBOPUS_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBOPUS_DOWNLOAD)) | |
| $(LIBOPUSFILE_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBOPUSFILE_DOWNLOAD)) | |
| $(LIBPNG_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBPNG_DOWNLOAD)) | |
| $(LIBXML2_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBXML2_DOWNLOAD)) | |
| $(LIBXMP_LITE_SRC): | |
| @$(call DOWNLOAD,$@,$(LIBXMP_LITE_DOWNLOAD)) | |
| $(MBED_SRC): | |
| @$(call DOWNLOAD,$@,$(MBED_DOWNLOAD)) | |
| $(MPG123_SRC): | |
| @$(call DOWNLOAD,$@,$(MPG123_DOWNLOAD)) | |
| $(SQLITE_SRC): | |
| @$(call DOWNLOAD,$@,$(SQLITE_DOWNLOAD)) | |
| $(TINYXML_SRC): | |
| @$(call DOWNLOAD,$@,$(TINYXML_DOWNLOAD)) | |
| $(TREMOR_SRC): | |
| @$(call DOWNLOAD,$@,$(TREMOR_DOWNLOAD)) | |
| $(XZ_SRC): | |
| @$(call DOWNLOAD,$@,$(XZ_DOWNLOAD)) | |
| $(ZLIB_SRC): | |
| @$(call DOWNLOAD,$@,$(ZLIB_DOWNLOAD)) | |
| $(BZIP2): $(BZIP2_SRC) | |
| @[ -d $(BZIP2_VERSION) ] || tar -xzf $< | |
| @cd $(BZIP2_VERSION) | |
| @$(MAKE) -C $(BZIP2_VERSION) CC=arm-none-eabi-gcc AR=arm-none-eabi-ar RANLIB=arm-none-eabi-ranlib CPPFLAGS="$(CPPFLAGS)" CFLAGS="-D_FILE_OFFSET_BITS=64 -Winline $(CFLAGS)" libbz2.a | |
| $(FREETYPE): $(FREETYPE_SRC) | |
| @[ -d $(FREETYPE_VERSION) ] || tar -xjf $< | |
| @cd $(FREETYPE_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static --without-harfbuzz | |
| @$(MAKE) -C $(FREETYPE_VERSION) | |
| $(FFMPEG): $(FFMPEG_SRC) | |
| @[ -d $(FFMPEG_VERSION) ] || tar -xjf $< | |
| @cd $(FFMPEG_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k \ | |
| --enable-cross-compile \ | |
| --cross-prefix=$(DEVKITARM)/bin/arm-none-eabi- \ | |
| --disable-shared \ | |
| --disable-runtime-cpudetect \ | |
| --disable-armv5te \ | |
| --disable-programs \ | |
| --disable-doc \ | |
| --enable-gpl \ | |
| --disable-everything \ | |
| --enable-decoder=aac,mpeg4,opus,vorbis,mp1,mp2,mp3,flac \ | |
| --enable-demuxer=aac,avi,mp4,mov,ogg,opus,webm,matroska,mp3 \ | |
| --enable-parser=mpegaudio \ | |
| --enable-protocol=file \ | |
| --enable-static \ | |
| --enable-small \ | |
| --disable-debug \ | |
| --pkg-config=$(PKG_CONFIG) \ | |
| --arch=armv6k \ | |
| --cpu=mpcore \ | |
| --disable-armv6t2 \ | |
| --disable-neon \ | |
| --target-os=none \ | |
| --extra-cflags=" -DARM11 -D_3DS -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard" \ | |
| --extra-cxxflags=" -DARM11 -D_3DS -mword-relocations -fomit-frame-pointer -ffast-math -fno-rtti -fno-exceptions -std=gnu++11 -march=armv6k -mtune=mpcore -mfloat-abi=hard" \ | |
| --extra-ldflags=" -specs=3dsx.specs -march=armv6k -mtune=mpcore -mfloat-abi=hard -L$(DEVKITARM)/lib -L$(DEVKITPRO)/libctru/lib -L$(DEVKITPRO)/portlibs/armv6k/lib -lctru " \ | |
| --disable-bzlib \ | |
| --disable-iconv \ | |
| --disable-lzma \ | |
| --disable-securetransport \ | |
| --disable-xlib | |
| @$(MAKE) -C $(FFMPEG_VERSION) | |
| $(GIFLIB): $(GIFLIB_SRC) | |
| @[ -d $(GIFLIB_VERSION) ] || tar -xjf $< | |
| @cd $(GIFLIB_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(GIFLIB_VERSION) | |
| $(JANSSON): $(JANSSON_SRC) | |
| @[ -d $(JANSSON_VERSION) ] || tar -xzf $< | |
| @cd $(JANSSON_VERSION) && \ | |
| autoreconf -i && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(JANSSON_VERSION) | |
| $(LIBCONFIG): $(LIBCONFIG_SRC) | |
| @[ -d $(LIBCONFIG_VERSION) ] || tar -xzf $< | |
| @cd $(LIBCONFIG_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-cxx --disable-examples | |
| @$(MAKE) -C $(LIBCONFIG_VERSION)/lib | |
| $(LIBEXIF): $(LIBEXIF_SRC) | |
| @[ -d $(LIBEXIF_VERSION) ] || tar -xjf $< | |
| @cd $(LIBEXIF_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBEXIF_VERSION) | |
| $(LIBJPEGTURBO): $(LIBJPEGTURBO_SRC) | |
| @[ -d $(LIBJPEGTURBO_VERSION) ] || tar -xzf $< | |
| @cd $(LIBJPEGTURBO_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBJPEGTURBO_VERSION) | |
| $(LIBMAD): $(LIBMAD_SRC) | |
| @[ -d $(LIBMAD_VERSION) ] || tar -xzf $< | |
| @cd $(LIBMAD_VERSION) && \ | |
| patch -Np1 -i ../libmad-0.15.1b.patch && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBMAD_VERSION) | |
| $(LIBOGG): $(LIBOGG_SRC) | |
| @[ -d $(LIBOGG_VERSION) ] || tar -xJf $< | |
| @cd $(LIBOGG_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBOGG_VERSION) | |
| $(LIBOPUS): $(LIBOPUS_SRC) | |
| @[ -d $(LIBOPUS_VERSION) ] || tar -xzf $< | |
| @cd $(LIBOPUS_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static --disable-extra-programs --disable-rtcd | |
| @$(MAKE) -C $(LIBOPUS_VERSION) | |
| $(LIBOPUSFILE): $(LIBOPUSFILE_SRC) | |
| @[ -d $(LIBOPUSFILE_VERSION) ] || tar -xzf $< | |
| @cd $(LIBOPUSFILE_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBOPUSFILE_VERSION) | |
| $(LIBPNG): $(LIBPNG_SRC) | |
| @[ -d $(LIBPNG_VERSION) ] || tar -xJf $< | |
| @cd $(LIBPNG_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBPNG_VERSION) | |
| $(LIBXML2): $(LIBXML2_SRC) | |
| @[ -d $(LIBXML2_VERSION) ] || tar -xzf $< | |
| @cd $(LIBXML2_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static --without-http --without-ftp --without-threads | |
| @$(MAKE) -C $(LIBXML2_VERSION) libxml2.la | |
| $(LIBXMP_LITE): $(LIBXMP_LITE_SRC) | |
| @[ -d $(LIBXMP_LITE_VERSION) ] || tar -xzf $< | |
| @cd $(LIBXMP_LITE_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static | |
| @$(MAKE) -C $(LIBXMP_LITE_VERSION) | |
| $(MBED): $(MBED_SRC) | |
| @[ -d $(MBED_VERSION) ] || tar xzf $< | |
| @cd $(MBED_VERSION) && \ | |
| patch -Np1 -i ../libmbedtls-2.2.1.patch && \ | |
| cmake -DCMAKE_SYSTEM_NAME=Generic -DCMAKE_C_COMPILER=$(DEVKITARM)/bin/arm-none-eabi-gcc \ | |
| -DCMAKE_CXX_COMPILER=$(DEVKITARM)/bin/arm-none-eabi-g++ \ | |
| -DCMAKE_INSTALL_PREFIX=$(PORTLIBS_PATH)/armv6k -DCMAKE_C_FLAGS="$(CFLAGS)" \ | |
| -DCMAKE_CXX_FLAGS="$(CFLAGS) -fno-exceptions -fno-rtti" \ | |
| -DZLIB_ROOT="$(PORTLIBS_PATH)/armv6k" \ | |
| -DENABLE_ZLIB_SUPPORT=TRUE -DENABLE_TESTING=FALSE -DENABLE_PROGRAMS=FALSE . | |
| @$(MAKE) -C $(MBED_VERSION) | |
| $(MPG123): $(MPG123_SRC) | |
| @[ -d $(MPG123_VERSION) ] || tar -xjf $< | |
| @cd $(MPG123_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static --enable-ipv6=no --enable-network=no --enable-messages=no --enable-8bit=no --enable-32bit=no --enable-real=no --with-optimization=2 --with-cpu=arm_nofpu --enable-layer1=no --enable-layer2=no | |
| @$(MAKE) -C $(MPG123_VERSION) src/libmpg123/libmpg123.la | |
| # sqlite won't work with -ffast-math | |
| $(SQLITE): $(SQLITE_SRC) | |
| @[ -d $(SQLITE_VERSION) ] || tar -xzf $< | |
| @cd $(SQLITE_VERSION) && \ | |
| CFLAGS="$(filter-out -ffast-math,$(CFLAGS)) -DSQLITE_OS_OTHER=1" ./configure --disable-shared --disable-threadsafe --disable-dynamic-extensions --host=arm-none-eabi --prefix=$(PORTLIBS_PATH)/armv6k | |
| # avoid building sqlite3 shell | |
| @$(MAKE) -C $(SQLITE_VERSION) libsqlite3.la | |
| # tinyxml2 uses cmake | |
| $(TINYXML): $(TINYXML_SRC) | |
| @[ -d $(TINYXML_VERSION) ] || tar -xzf $< | |
| @cd $(TINYXML_VERSION) && cmake -DCMAKE_SYSTEM_NAME=Generic -DCMAKE_C_COMPILER=$(DEVKITARM)/bin/arm-none-eabi-gcc -DCMAKE_CXX_COMPILER=$(DEVKITARM)/bin/arm-none-eabi-g++ -DCMAKE_INSTALL_PREFIX=$(PORTLIBS_PATH)/armv6k -DCMAKE_C_FLAGS="$(CFLAGS)" -DCMAKE_CXX_FLAGS="$(CFLAGS) -fno-exceptions -fno-rtti" . && make | |
| $(TREMOR): $(TREMOR_SRC) | |
| @[ -d $(TREMOR_VERSION) ] || tar -xzf $< | |
| @cd $(TREMOR_VERSION) && \ | |
| ./autogen.sh --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --disable-oggtest | |
| @$(MAKE) -C $(TREMOR_VERSION) | |
| $(XZ): $(XZ_SRC) | |
| @[ -d $(XZ_VERSION) ] || tar -xJf $< | |
| @cd $(XZ_VERSION) && \ | |
| ./configure --prefix=$(PORTLIBS_PATH)/armv6k --host=arm-none-eabi --disable-shared --enable-static --disable-xz --enable-threads=no | |
| @$(MAKE) -C $(XZ_VERSION) | |
| $(ZLIB): $(ZLIB_SRC) | |
| @[ -d $(ZLIB_VERSION) ] || tar -xzf $< | |
| @cd $(ZLIB_VERSION) && \ | |
| CHOST=arm-none-eabi ./configure --static --prefix=$(PORTLIBS_PATH)/armv6k | |
| @$(MAKE) -C $(ZLIB_VERSION) | |
| install-zlib: | |
| @$(MAKE) -C $(ZLIB_VERSION) install | |
| install: | |
| @if [ -d $(BZIP2_VERSION) ]; then \ | |
| cp -fv $(BZIP2_VERSION)/bzlib.h $(PORTLIBS_PATH)/armv6k/include; \ | |
| chmod a+r $(PORTLIBS_PATH)/armv6k/include/bzlib.h; \ | |
| cp -fv $(BZIP2_VERSION)/libbz2.a $(PORTLIBS_PATH)/armv6k/lib; \ | |
| chmod a+r $(PORTLIBS_PATH)/armv6k/lib/libbz2.a; \ | |
| fi | |
| @[ ! -d $(FREETYPE_VERSION) ] || $(MAKE) -C $(FREETYPE_VERSION) install | |
| @[ ! -d $(FFMPEG_VERSION) ] || $(MAKE) -C $(FFMPEG_VERSION) install | |
| @[ ! -d $(GIFLIB_VERSION) ] || $(MAKE) -C $(GIFLIB_VERSION) install | |
| @[ ! -d $(JANSSON_VERSION) ] || $(MAKE) -C $(JANSSON_VERSION) install | |
| @[ ! -d $(LIBCONFIG_VERSION) ] || $(MAKE) -C $(LIBCONFIG_VERSION)/lib install | |
| @[ ! -d $(LIBEXIF_VERSION) ] || $(MAKE) -C $(LIBEXIF_VERSION) install | |
| @[ ! -d $(LIBJPEGTURBO_VERSION) ] || $(MAKE) -C $(LIBJPEGTURBO_VERSION) install | |
| @[ ! -d $(LIBMAD_VERSION) ] || $(MAKE) -C $(LIBMAD_VERSION) install | |
| @[ ! -d $(LIBOGG_VERSION) ] || $(MAKE) -C $(LIBOGG_VERSION) install | |
| @[ ! -d $(LIBOPUS_VERSION) ] || $(MAKE) -C $(LIBOPUS_VERSION) install | |
| @[ ! -d $(LIBOPUSFILE_VERSION) ] || $(MAKE) -C $(LIBOPUSFILE_VERSION) install | |
| @[ ! -d $(LIBPNG_VERSION) ] || $(MAKE) -C $(LIBPNG_VERSION) install | |
| @[ ! -d $(LIBXML2_VERSION) ] || $(MAKE) -C $(LIBXML2_VERSION) install | |
| @[ ! -d $(LIBXMP_LITE_VERSION) ] || $(MAKE) -C $(LIBXMP_LITE_VERSION) install | |
| @[ ! -d $(MBED_VERSION) ] || $(MAKE) -C $(MBED_VERSION) install | |
| @[ ! -d $(MPG123_VERSION) ] || $(MAKE) -C $(MPG123_VERSION) install | |
| @[ ! -d $(SQLITE_VERSION) ] || $(MAKE) -C $(SQLITE_VERSION) install-libLTLIBRARIES install-data | |
| @[ ! -d $(TINYXML_VERSION) ] || $(MAKE) -C $(TINYXML_VERSION) install | |
| @[ ! -d $(TREMOR_VERSION) ] || $(MAKE) -C $(TREMOR_VERSION) install | |
| @[ ! -d $(XZ_VERSION) ] || $(MAKE) -C $(XZ_VERSION) install | |
| clean: | |
| @$(RM) -r $(BZIP2_VERSION) | |
| @$(RM) -r $(FREETYPE_VERSION) | |
| @$(RM) -r $(FFMPEG_VERSION) | |
| @$(RM) -r $(GIFLIB_VERSION) | |
| @$(RM) -r $(JANSSON_VERSION) | |
| @$(RM) -r $(LIBCONFIG_VERSION) | |
| @$(RM) -r $(LIBEXIF_VERSION) | |
| @$(RM) -r $(LIBJPEGTURBO_VERSION) | |
| @$(RM) -r $(LIBMAD_VERSION) | |
| @$(RM) -r $(LIBOGG_VERSION) | |
| @$(RM) -r $(LIBOPUS_VERSION) | |
| @$(RM) -r $(LIBOPUSFILE_VERSION) | |
| @$(RM) -r $(LIBPNG_VERSION) | |
| @$(RM) -r $(LIBXML2_VERSION) | |
| @$(RM) -r $(LIBXMP_LITE_VERSION) | |
| @$(RM) -r $(MBED_VERSION) | |
| @$(RM) -r $(MPG123_VERSION) | |
| @$(RM) -r $(SQLITE_VERSION) | |
| @$(RM) -r $(TINYXML_VERSION) | |
| @$(RM) -r $(TREMOR_VERSION) | |
| @$(RM) -r $(XZ_VERSION) | |
| @$(RM) -r $(ZLIB_VERSION) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment