فهرست منبع

build our own libjpeg-turbo (avoid -fPIC error)

Andy Li 8 سال پیش
والد
کامیت
b532c3cee3
2فایلهای تغییر یافته به همراه25 افزوده شده و 5 حذف شده
  1. 22 2
      .travis.yml
  2. 3 3
      Makefile

+ 22 - 2
.travis.yml

@@ -7,11 +7,11 @@ linux32_before_install: &linux32_before_install
       gcc-multilib
       libz-dev:i386
       zlib1g-dev:i386
-      libturbojpeg:i386
       libpng-dev:i386
       libsdl2-dev:i386
       libvorbis-dev:i386
       libalut-dev:i386
+      nasm # for compiling libjpeg-turbo
   # install mbedtls
   - mkdir ~/mbedtls
   - pushd ~/mbedtls
@@ -21,6 +21,16 @@ linux32_before_install: &linux32_before_install
   -   make lib           SHARED=1 CFLAGS="-O2 -m32" LDFLAGS="-m32"
   -   sudo make install  SHARED=1 CFLAGS="-O2 -m32" LDFLAGS="-m32"
   - popd
+  # install libjpeg-turbo (the Ubuntu package is missing -fPIE/-fPIC)
+  - mkdir ~/libjpeg-turbo
+  - pushd ~/libjpeg-turbo
+  -   wget https://github.com/libjpeg-turbo/libjpeg-turbo/archive/1.5.1.tar.gz
+  -   tar xzf 1.5.1.tar.gz --strip-components=1
+  -   autoreconf -fiv
+  -   ./configure
+  -   make
+  -   sudo make install
+  - popd
   - haxelib install hashlink
 
 linux64_before_install: &linux64_before_install
@@ -28,11 +38,11 @@ linux64_before_install: &linux64_before_install
   - sudo apt-get install -y
       libz-dev
       zlib1g-dev
-      libturbojpeg
       libpng-dev
       libsdl2-dev
       libvorbis-dev
       libalut-dev
+      nasm # for compiling libjpeg-turbo
   # install mbedtls
   - mkdir ~/mbedtls
   - pushd ~/mbedtls
@@ -42,6 +52,16 @@ linux64_before_install: &linux64_before_install
   -   SHARED=1 make lib
   -   sudo make install
   - popd
+  # install libjpeg-turbo (the Ubuntu package is missing -fPIE/-fPIC)
+  - mkdir ~/libjpeg-turbo
+  - pushd ~/libjpeg-turbo
+  -   wget https://github.com/libjpeg-turbo/libjpeg-turbo/archive/1.5.1.tar.gz
+  -   tar xzf 1.5.1.tar.gz --strip-components=1
+  -   autoreconf -fiv
+  -   ./configure
+  -   make
+  -   sudo make install
+  - popd
   - haxelib install hashlink
 
 mac_before_install: &mac_before_install

+ 3 - 3
Makefile

@@ -64,11 +64,11 @@ else
 CFLAGS += -m$(ARCH) -fPIC
 LFLAGS += -lm -Wl,--export-dynamic -Wl,--no-undefined
 
-# otherwise ld will link to the .a and complain about missing -fPIC (Ubuntu 14)
-LIBTURBOJPEG = -l:libturbojpeg.so.0
-
 ifeq ($(ARCH),32)
 CFLAGS += -I /usr/include/i386-linux-gnu
+LIBFLAGS += -L/opt/libjpeg-turbo/lib
+else
+LIBFLAGS += -L/opt/libjpeg-turbo/lib64
 endif
 
 LIBOPENAL = -lopenal