Skip to content

Commit

Permalink
Add cmake support to all platforms, bump libjpeg
Browse files Browse the repository at this point in the history
  • Loading branch information
lovell committed Nov 21, 2018
1 parent 1d022f5 commit fad8f99
Show file tree
Hide file tree
Showing 11 changed files with 61 additions and 11 deletions.
13 changes: 7 additions & 6 deletions build/lin.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ VERSION_XML2=2.9.8
VERSION_GSF=1.14.44
VERSION_EXIF=0.6.21
VERSION_LCMS2=2.9
VERSION_JPEG=1.5.3
VERSION_JPEG=2.0.1
VERSION_PNG16=1.6.34
VERSION_WEBP=1.0.1
VERSION_TIFF=4.0.10
Expand All @@ -35,7 +35,7 @@ VERSION_EXPAT=2.2.6
VERSION_UUID=2.33
VERSION_FONTCONFIG=2.13.1
VERSION_HARFBUZZ=2.1.3
VERSION_PIXMAN=0.34.0
VERSION_PIXMAN=0.36.0
VERSION_CAIRO=1.16.0
VERSION_FRIBIDI=1.0.5
VERSION_PANGO=1.42.4
Expand Down Expand Up @@ -67,7 +67,7 @@ version_latest "xml2" "$VERSION_XML2" "1783"
version_latest "gsf" "$VERSION_GSF" "1980"
version_latest "exif" "$VERSION_EXIF" "1607"
version_latest "lcms2" "$VERSION_LCMS2" "9815"
#version_latest "jpeg" "$VERSION_JPEG" "1648" # latest version requires cmake
version_latest "jpeg" "$VERSION_JPEG" "1648"
version_latest "png" "$VERSION_PNG16" "15294"
version_latest "webp" "$VERSION_WEBP" "1761"
version_latest "tiff" "$VERSION_TIFF" "13521"
Expand Down Expand Up @@ -153,9 +153,10 @@ make install-strip
mkdir ${DEPS}/jpeg
curl -Ls https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${VERSION_JPEG}.tar.gz | tar xzC ${DEPS}/jpeg --strip-components=1
cd ${DEPS}/jpeg
autoreconf -fiv
./configure --host=${CHOST} --prefix=${TARGET} --enable-shared --disable-static --disable-dependency-tracking --with-jpeg8 --without-turbojpeg
make install-strip
sed -i "s/cmake_minimum_required(VERSION 2.8.12)/cmake_minimum_required(VERSION 2.8.11)/" CMakeLists.txt
cmake -G"Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=/root/Toolchain.cmake -DCMAKE_INSTALL_PREFIX=${TARGET} -DCMAKE_INSTALL_LIBDIR=${TARGET}/lib \
-DENABLE_SHARED=TRUE -DENABLE_STATIC=FALSE -DWITH_JPEG8=1 -DWITH_TURBOJPEG=FALSE
make install/strip

mkdir ${DEPS}/png16
curl -Ls ${SOURCEFORGE_BASE_URL}libpng/libpng16/${VERSION_PNG16}/libpng-${VERSION_PNG16}.tar.xz | tar xJC ${DEPS}/png16 --strip-components=1
Expand Down
4 changes: 3 additions & 1 deletion linux-armv6/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ RUN \
apt-get install -y curl && \
dpkg --add-architecture armhf && \
apt-get update && \
apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint && \
apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf

Expand All @@ -19,3 +19,5 @@ ENV \
PLATFORM="linux-armv6" \
CHOST="arm-linux-gnueabihf" \
FLAGS="-marm -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0"

COPY Toolchain.cmake /root/
11 changes: 11 additions & 0 deletions linux-armv6/Toolchain.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR armv6-a)

SET(CMAKE_C_COMPILER /usr/bin/arm-linux-gnueabihf-gcc)
SET(CMAKE_AR /usr/bin/arm-linux-gnueabihf-gcc-ar)
SET(CMAKE_RANLIB /usr/bin/arm-linux-gnueabihf-gcc-ranlib)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
4 changes: 3 additions & 1 deletion linux-armv7/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ RUN \
apt-get install -y curl && \
dpkg --add-architecture armhf && \
apt-get update && \
apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint && \
apt-get install -y crossbuild-essential-armhf autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
~/.cargo/bin/rustup target add arm-unknown-linux-gnueabihf

Expand All @@ -19,3 +19,5 @@ ENV \
PLATFORM="linux-armv7" \
CHOST="arm-linux-gnueabihf" \
FLAGS="-marm -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -Os -D_GLIBCXX_USE_CXX11_ABI=0"

COPY Toolchain.cmake /root/
11 changes: 11 additions & 0 deletions linux-armv7/Toolchain.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR armv7-a)

SET(CMAKE_C_COMPILER /usr/bin/arm-linux-gnueabihf-gcc)
SET(CMAKE_AR /usr/bin/arm-linux-gnueabihf-gcc-ar)
SET(CMAKE_RANLIB /usr/bin/arm-linux-gnueabihf-gcc-ranlib)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
4 changes: 3 additions & 1 deletion linux-armv8/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ RUN \
apt-get install -y curl && \
dpkg --add-architecture arm64 && \
apt-get update && \
apt-get install -y crossbuild-essential-arm64 autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint && \
apt-get install -y crossbuild-essential-arm64 autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev jq gettext intltool autopoint cmake && \
curl https://sh.rustup.rs -sSf | sh -s -- -y && \
~/.cargo/bin/rustup target add aarch64-unknown-linux-gnu

Expand All @@ -19,3 +19,5 @@ ENV \
PLATFORM="linux-armv8" \
CHOST="aarch64-linux-gnu" \
FLAGS="-march=armv8-a -Os -D_GLIBCXX_USE_CXX11_ABI=0"

COPY Toolchain.cmake /root/
11 changes: 11 additions & 0 deletions linux-armv8/Toolchain.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR aarch64)

SET(CMAKE_C_COMPILER /usr/bin/aarch64-linux-gnu-gcc)
SET(CMAKE_AR /usr/bin/aarch64-linux-gnu-gcc-ar)
SET(CMAKE_RANLIB /usr/bin/aarch64-linux-gnu-gcc-ranlib)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
4 changes: 3 additions & 1 deletion linux-x64/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ RUN \
echo "deb http://ftp.debian.org/debian wheezy-backports main" | tee /etc/apt/sources.list.d/wheezy-backports.list && \
apt-get update && \
apt-get install -y build-essential gcc-4.9-backport prelink autoconf libtool nasm gtk-doc-tools texinfo gperf advancecomp libglib2.0-dev gobject-introspection && \
apt-get -t wheezy-backports install -y jq && \
apt-get -t wheezy-backports install -y jq cmake && \
curl https://sh.rustup.rs -sSf | sh -s -- -y

# Compiler settings
ENV \
PATH="/root/.cargo/bin:$PATH" \
PLATFORM="linux-x64" \
FLAGS="-O3"

COPY Toolchain.cmake /root/
3 changes: 3 additions & 0 deletions linux-x64/Toolchain.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
4 changes: 3 additions & 1 deletion linuxmusl-x64/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ RUN \
apk update && apk upgrade && \
apk --update --no-cache add \
build-base curl git autoconf automake libtool intltool shared-mime-info nasm gtk-doc \
texinfo gperf glib-dev gobject-introspection-dev findutils jq linux-headers && \
texinfo gperf glib-dev gobject-introspection-dev findutils jq linux-headers cmake && \
apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/edge/community/ add cargo && \
apk --update --no-cache --repository https://alpine.global.ssl.fastly.net/alpine/edge/testing/ add advancecomp

# Compiler settings
ENV \
PLATFORM="linuxmusl-x64" \
FLAGS="-O3"

COPY Toolchain.cmake /root/
3 changes: 3 additions & 0 deletions linuxmusl-x64/Toolchain.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

0 comments on commit fad8f99

Please sign in to comment.