From 95f29656fa40a330032da4e06763a04499a2c876 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Mon, 20 Jun 2016 11:03:03 +0530 Subject: [PATCH] Edit Book: Fix undocked windows not resizable on OS X Caused by a regression in Qt. https://bugreports.qt.io/browse/QTBUG-46882 Also, add the build scripts for calibre dependencies on OSX and linux to the source tree. --- .../installer/linux/build-scripts/build-apsw | 7 +++++ setup/installer/linux/build-scripts/build-bz2 | 7 +++++ .../linux/build-scripts/build-chmlib | 4 +++ .../installer/linux/build-scripts/build-dbus | 4 +++ .../linux/build-scripts/build-dbus-glib | 3 ++ .../installer/linux/build-scripts/build-expat | 4 +++ .../linux/build-scripts/build-fontconfig | 6 ++++ .../linux/build-scripts/build-freetype | 3 ++ .../installer/linux/build-scripts/build-glib | 3 ++ setup/installer/linux/build-scripts/build-icu | 9 ++++++ .../linux/build-scripts/build-libgcrypt | 3 ++ .../linux/build-scripts/build-libgpg-error | 3 ++ .../linux/build-scripts/build-libiconv | 3 ++ .../build-scripts/build-libimobiledevice | 12 ++++++++ .../linux/build-scripts/build-libjpeg | 4 +++ .../linux/build-scripts/build-libmtp | 11 +++++++ .../linux/build-scripts/build-libpng | 7 +++++ .../linux/build-scripts/build-libusb | 6 ++++ .../linux/build-scripts/build-libwebp | 3 ++ .../linux/build-scripts/build-libxml2 | 4 +++ .../linux/build-scripts/build-libxslt | 4 +++ .../installer/linux/build-scripts/build-lxml | 3 ++ .../linux/build-scripts/build-mozjpeg | 7 +++++ .../installer/linux/build-scripts/build-nasm | 4 +++ .../linux/build-scripts/build-ncurses | 4 +++ .../linux/build-scripts/build-netifaces | 3 ++ .../linux/build-scripts/build-openssl | 14 +++++++++ .../linux/build-scripts/build-optipng | 7 +++++ setup/installer/linux/build-scripts/build-pil | 7 +++++ .../linux/build-scripts/build-plistlib | 5 ++++ .../linux/build-scripts/build-podofo | 25 ++++++++++++++++ .../linux/build-scripts/build-poppler | 15 ++++++++++ .../linux/build-scripts/build-psutil | 3 ++ .../installer/linux/build-scripts/build-pyqt | 5 ++++ .../linux/build-scripts/build-python | 12 ++++++++ setup/installer/linux/build-scripts/build-qt | 18 ++++++++++++ .../linux/build-scripts/build-readline | 4 +++ setup/installer/linux/build-scripts/build-sip | 4 +++ .../linux/build-scripts/build-sqlite | 5 ++++ .../linux/build-scripts/build-usbmuxd | 12 ++++++++ .../installer/linux/build-scripts/build-xpyb | 3 ++ .../installer/linux/build-scripts/build-zlib | 3 ++ .../osx/build-scripts/build-appscript | 3 ++ setup/installer/osx/build-scripts/build-apsw | 7 +++++ .../installer/osx/build-scripts/build-chmlib | 5 ++++ setup/installer/osx/build-scripts/build-expat | 4 +++ .../osx/build-scripts/build-fontconfig | 6 ++++ .../osx/build-scripts/build-freetype | 3 ++ setup/installer/osx/build-scripts/build-icu | 9 ++++++ .../osx/build-scripts/build-libiconv | 3 ++ .../osx/build-scripts/build-libimobiledevice | 12 ++++++++ .../installer/osx/build-scripts/build-libjpeg | 4 +++ .../installer/osx/build-scripts/build-libltdl | 5 ++++ .../installer/osx/build-scripts/build-libmtp | 11 +++++++ .../installer/osx/build-scripts/build-libpng | 6 ++++ .../installer/osx/build-scripts/build-libusb | 6 ++++ .../installer/osx/build-scripts/build-libwebp | 3 ++ .../installer/osx/build-scripts/build-libxml2 | 4 +++ .../installer/osx/build-scripts/build-libxslt | 4 +++ setup/installer/osx/build-scripts/build-lxml | 21 ++++++++++++++ .../osx/build-scripts/build-macfsevents | 3 ++ .../installer/osx/build-scripts/build-mozjpeg | 6 ++++ setup/installer/osx/build-scripts/build-nasm | 4 +++ .../osx/build-scripts/build-netifaces | 3 ++ .../installer/osx/build-scripts/build-openssl | 7 +++++ .../installer/osx/build-scripts/build-optipng | 6 ++++ setup/installer/osx/build-scripts/build-pil | 11 +++++++ .../osx/build-scripts/build-plistlib | 8 +++++ .../installer/osx/build-scripts/build-podofo | 29 +++++++++++++++++++ .../installer/osx/build-scripts/build-poppler | 15 ++++++++++ .../installer/osx/build-scripts/build-psutil | 3 ++ setup/installer/osx/build-scripts/build-pyqt | 5 ++++ .../installer/osx/build-scripts/build-python | 16 ++++++++++ setup/installer/osx/build-scripts/build-qt | 11 +++++++ setup/installer/osx/build-scripts/build-sip | 4 +++ .../installer/osx/build-scripts/build-sqlite | 5 ++++ setup/installer/osx/build-scripts/build-unrar | 12 ++++++++ .../installer/osx/build-scripts/build-usbmuxd | 12 ++++++++ setup/installer/osx/build-scripts/build-zlib | 4 +++ 79 files changed, 553 insertions(+) create mode 100755 setup/installer/linux/build-scripts/build-apsw create mode 100755 setup/installer/linux/build-scripts/build-bz2 create mode 100755 setup/installer/linux/build-scripts/build-chmlib create mode 100755 setup/installer/linux/build-scripts/build-dbus create mode 100755 setup/installer/linux/build-scripts/build-dbus-glib create mode 100755 setup/installer/linux/build-scripts/build-expat create mode 100755 setup/installer/linux/build-scripts/build-fontconfig create mode 100755 setup/installer/linux/build-scripts/build-freetype create mode 100755 setup/installer/linux/build-scripts/build-glib create mode 100755 setup/installer/linux/build-scripts/build-icu create mode 100755 setup/installer/linux/build-scripts/build-libgcrypt create mode 100755 setup/installer/linux/build-scripts/build-libgpg-error create mode 100755 setup/installer/linux/build-scripts/build-libiconv create mode 100755 setup/installer/linux/build-scripts/build-libimobiledevice create mode 100755 setup/installer/linux/build-scripts/build-libjpeg create mode 100755 setup/installer/linux/build-scripts/build-libmtp create mode 100755 setup/installer/linux/build-scripts/build-libpng create mode 100755 setup/installer/linux/build-scripts/build-libusb create mode 100755 setup/installer/linux/build-scripts/build-libwebp create mode 100755 setup/installer/linux/build-scripts/build-libxml2 create mode 100755 setup/installer/linux/build-scripts/build-libxslt create mode 100755 setup/installer/linux/build-scripts/build-lxml create mode 100755 setup/installer/linux/build-scripts/build-mozjpeg create mode 100755 setup/installer/linux/build-scripts/build-nasm create mode 100755 setup/installer/linux/build-scripts/build-ncurses create mode 100755 setup/installer/linux/build-scripts/build-netifaces create mode 100755 setup/installer/linux/build-scripts/build-openssl create mode 100755 setup/installer/linux/build-scripts/build-optipng create mode 100755 setup/installer/linux/build-scripts/build-pil create mode 100755 setup/installer/linux/build-scripts/build-plistlib create mode 100755 setup/installer/linux/build-scripts/build-podofo create mode 100755 setup/installer/linux/build-scripts/build-poppler create mode 100755 setup/installer/linux/build-scripts/build-psutil create mode 100755 setup/installer/linux/build-scripts/build-pyqt create mode 100755 setup/installer/linux/build-scripts/build-python create mode 100755 setup/installer/linux/build-scripts/build-qt create mode 100755 setup/installer/linux/build-scripts/build-readline create mode 100755 setup/installer/linux/build-scripts/build-sip create mode 100755 setup/installer/linux/build-scripts/build-sqlite create mode 100755 setup/installer/linux/build-scripts/build-usbmuxd create mode 100755 setup/installer/linux/build-scripts/build-xpyb create mode 100755 setup/installer/linux/build-scripts/build-zlib create mode 100755 setup/installer/osx/build-scripts/build-appscript create mode 100755 setup/installer/osx/build-scripts/build-apsw create mode 100755 setup/installer/osx/build-scripts/build-chmlib create mode 100755 setup/installer/osx/build-scripts/build-expat create mode 100755 setup/installer/osx/build-scripts/build-fontconfig create mode 100755 setup/installer/osx/build-scripts/build-freetype create mode 100755 setup/installer/osx/build-scripts/build-icu create mode 100755 setup/installer/osx/build-scripts/build-libiconv create mode 100755 setup/installer/osx/build-scripts/build-libimobiledevice create mode 100755 setup/installer/osx/build-scripts/build-libjpeg create mode 100755 setup/installer/osx/build-scripts/build-libltdl create mode 100755 setup/installer/osx/build-scripts/build-libmtp create mode 100755 setup/installer/osx/build-scripts/build-libpng create mode 100755 setup/installer/osx/build-scripts/build-libusb create mode 100755 setup/installer/osx/build-scripts/build-libwebp create mode 100755 setup/installer/osx/build-scripts/build-libxml2 create mode 100755 setup/installer/osx/build-scripts/build-libxslt create mode 100755 setup/installer/osx/build-scripts/build-lxml create mode 100755 setup/installer/osx/build-scripts/build-macfsevents create mode 100755 setup/installer/osx/build-scripts/build-mozjpeg create mode 100755 setup/installer/osx/build-scripts/build-nasm create mode 100755 setup/installer/osx/build-scripts/build-netifaces create mode 100755 setup/installer/osx/build-scripts/build-openssl create mode 100755 setup/installer/osx/build-scripts/build-optipng create mode 100755 setup/installer/osx/build-scripts/build-pil create mode 100755 setup/installer/osx/build-scripts/build-plistlib create mode 100755 setup/installer/osx/build-scripts/build-podofo create mode 100755 setup/installer/osx/build-scripts/build-poppler create mode 100755 setup/installer/osx/build-scripts/build-psutil create mode 100755 setup/installer/osx/build-scripts/build-pyqt create mode 100755 setup/installer/osx/build-scripts/build-python create mode 100755 setup/installer/osx/build-scripts/build-qt create mode 100755 setup/installer/osx/build-scripts/build-sip create mode 100755 setup/installer/osx/build-scripts/build-sqlite create mode 100755 setup/installer/osx/build-scripts/build-unrar create mode 100755 setup/installer/osx/build-scripts/build-usbmuxd create mode 100755 setup/installer/osx/build-scripts/build-zlib diff --git a/setup/installer/linux/build-scripts/build-apsw b/setup/installer/linux/build-scripts/build-apsw new file mode 100755 index 0000000000..23bc7482ab --- /dev/null +++ b/setup/installer/linux/build-scripts/build-apsw @@ -0,0 +1,7 @@ +#!/bin/sh + +# Change the version of sqlite below (get the current version from https://sqlite.org/download.html) +# You might also need to change 2013 to 2014 in the setup.py script + +cd $SW/build/apsw-* && rm -rf build/* && \ +python setup.py fetch --version=3.8.5 --sqlite --missing-checksum-ok && python setup.py install diff --git a/setup/installer/linux/build-scripts/build-bz2 b/setup/installer/linux/build-scripts/build-bz2 new file mode 100755 index 0000000000..3b0dabfa03 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-bz2 @@ -0,0 +1,7 @@ +#!/bin/sh + +LBZ2=libbz2.so.1.0.6 + +cd $SW/build/bzip2* && make -f Makefile-libbz2_so && \ + rm -f $SW/lib/libbz2* && cp -a $LBZ2 $SW/lib && ln -s $LBZ2 $SW/lib/libbz2.so && ln -s $LBZ2 $SW/lib/libbz2.so.1 && ln -s $LBZ2 $SW/lib/libbz2.so.1.0 && \ + cp -a bzlib.h $SW/include diff --git a/setup/installer/linux/build-scripts/build-chmlib b/setup/installer/linux/build-scripts/build-chmlib new file mode 100755 index 0000000000..bf06ab4254 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-chmlib @@ -0,0 +1,4 @@ +#!/bin/bash + +cd $SW/build/chmlib* && \ +./configure --disable-dependency-tracking --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-dbus b/setup/installer/linux/build-scripts/build-dbus new file mode 100755 index 0000000000..b8c9a39f95 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-dbus @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/dbus-python-* && \ +./configure --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-dbus-glib b/setup/installer/linux/build-scripts/build-dbus-glib new file mode 100755 index 0000000000..681dcbf68b --- /dev/null +++ b/setup/installer/linux/build-scripts/build-dbus-glib @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/dbus-glib-* && ./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-expat b/setup/installer/linux/build-scripts/build-expat new file mode 100755 index 0000000000..3f4d23d3a5 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-expat @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/expat-* &&\ +./configure --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-fontconfig b/setup/installer/linux/build-scripts/build-fontconfig new file mode 100755 index 0000000000..0aa2baddbf --- /dev/null +++ b/setup/installer/linux/build-scripts/build-fontconfig @@ -0,0 +1,6 @@ +#!/bin/sh +export FREETYPE_CFLAGS="-I$SW/include/freetype2" +export FREETYPE_LIBS="-L$SW/lib -lfreetype -lz -lbz2" + +cd $SW/build/fontconfig-2.* && \ +./configure --prefix=$SW --disable-static --disable-docs --with-expat=$SW --with-add-fonts=/usr/X11/lib/X11/fonts --disable-dependency-tracking && make && make install diff --git a/setup/installer/linux/build-scripts/build-freetype b/setup/installer/linux/build-scripts/build-freetype new file mode 100755 index 0000000000..9873d3197b --- /dev/null +++ b/setup/installer/linux/build-scripts/build-freetype @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/freetype* && \ +./configure --disable-static --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-glib b/setup/installer/linux/build-scripts/build-glib new file mode 100755 index 0000000000..95e959aa00 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-glib @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/glib-* && ./configure --prefix=$SW --disable-selinux --disable-fam --disable-static --with-libiconv=gnu && make && make install diff --git a/setup/installer/linux/build-scripts/build-icu b/setup/installer/linux/build-scripts/build-icu new file mode 100755 index 0000000000..02217599ff --- /dev/null +++ b/setup/installer/linux/build-scripts/build-icu @@ -0,0 +1,9 @@ +#!/bin/sh + +cd $SW/build/icu*/source && \ + ./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man --sbindir=/usr/bin && make && \ + rm -rf $SW/icu && rm -rf $SW/include/layout $SW/include/unicode && rm -f $SW/lib/libicu* && \ + make -j1 DESTDIR=$SW/icu install && \ + cp -ar $SW/icu/usr/include/* $SW/include && cp -a $SW/icu/usr/lib/libicu* $SW/lib/ && \ + rm -rf $SW/icu + diff --git a/setup/installer/linux/build-scripts/build-libgcrypt b/setup/installer/linux/build-scripts/build-libgcrypt new file mode 100755 index 0000000000..25d0250fc9 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libgcrypt @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/libgcrypt-* && ./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-libgpg-error b/setup/installer/linux/build-scripts/build-libgpg-error new file mode 100755 index 0000000000..380a89eda2 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libgpg-error @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/libgpg-error* && ./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-libiconv b/setup/installer/linux/build-scripts/build-libiconv new file mode 100755 index 0000000000..62fb4629e0 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libiconv @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/libiconv-* && \ +./configure --disable-static --disable-dependency-tracking --enable-shared --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-libimobiledevice b/setup/installer/linux/build-scripts/build-libimobiledevice new file mode 100755 index 0000000000..f6ae9fd13c --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libimobiledevice @@ -0,0 +1,12 @@ +#!/bin/sh + +export libusbmuxd_CFLAGS=-I$SW/include +export libusbmuxd_LIBS=-lusbmuxd +export libplist_CFLAGS=-I$SW/include +export libplist_LIBS=-lplist +export libplistmm_CFLAGS=-I$SW/include +export libplistmm_LIBS=-lplist++ +export openssl_CFLAGS=-I$SW/include +export openssl_LIBS="-lcrypto -lssl" + +cd $SW/build/libimobiledevice-* && ./configure --prefix=$SW --disable-dependency-tracking --without-cython --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-libjpeg b/setup/installer/linux/build-scripts/build-libjpeg new file mode 100755 index 0000000000..b2e883402f --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libjpeg @@ -0,0 +1,4 @@ +#!/bin/bash + +cd $SW/build/libjpeg-turbo* && \ +./configure --disable-dependency-tracking --enable-shared --with-jpeg8 --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-libmtp b/setup/installer/linux/build-scripts/build-libmtp new file mode 100755 index 0000000000..9f50f19135 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libmtp @@ -0,0 +1,11 @@ +#!/bin/sh + +export LIBUSB_CFLAGS="-I$SW/include/libusb-1.0" +export LIBUSB_LIBS="-L$SW/lib -lusb-1.0" +export CFLAGS="$CFLAGS -DHAVE_ICONV" +export LDFLAGS="$LDFLAGS -liconv" + +cd $SW/build/libmtp-* && \ +./configure --disable-mtpz --disable-dependency-tracking --disable-static --prefix=$SW --with-libiconv-prefix=$SW --with-udev=$SW/udev && \ +make && make install + diff --git a/setup/installer/linux/build-scripts/build-libpng b/setup/installer/linux/build-scripts/build-libpng new file mode 100755 index 0000000000..462d7eeff2 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libpng @@ -0,0 +1,7 @@ +#!/bin/bash + +export CPPFLAGS=$CFLAGS + +cd $SW/build/libpng* && \ +./configure --prefix=$SW --disable-dependency-tracking --disable-static && make && make install + diff --git a/setup/installer/linux/build-scripts/build-libusb b/setup/installer/linux/build-scripts/build-libusb new file mode 100755 index 0000000000..ea11b96dde --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libusb @@ -0,0 +1,6 @@ +#!/bin/sh + +cd $SW/build/libusb-* && \ +./configure --disable-udev --disable-dependency-tracking --disable-static --prefix=$SW && \ +make && make install + diff --git a/setup/installer/linux/build-scripts/build-libwebp b/setup/installer/linux/build-scripts/build-libwebp new file mode 100755 index 0000000000..a1023e0ad3 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libwebp @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/libwebp-* && ./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-libxml2 b/setup/installer/linux/build-scripts/build-libxml2 new file mode 100755 index 0000000000..8fcd01d2c7 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libxml2 @@ -0,0 +1,4 @@ +#!/bin/sh +cd $SW/build/libxml2-2.* && \ +./configure --prefix=$SW --enable-shared --disable-static --with-iconv=$SW --with-zlib=$SW --without-python --without-debug --disable-dependency-tracking && make && make install + diff --git a/setup/installer/linux/build-scripts/build-libxslt b/setup/installer/linux/build-scripts/build-libxslt new file mode 100755 index 0000000000..7dc10c235a --- /dev/null +++ b/setup/installer/linux/build-scripts/build-libxslt @@ -0,0 +1,4 @@ +#!/bin/sh +cd $SW/build/libxslt-* +./configure --prefix=$SW --enable-shared --disable-static --without-python --without-debug --disable-dependency-tracking --with-libxml-prefix=$SW && make && make install + diff --git a/setup/installer/linux/build-scripts/build-lxml b/setup/installer/linux/build-scripts/build-lxml new file mode 100755 index 0000000000..ddbee9a31c --- /dev/null +++ b/setup/installer/linux/build-scripts/build-lxml @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/lxml-3* && rm -rf build/* && python setup.py install diff --git a/setup/installer/linux/build-scripts/build-mozjpeg b/setup/installer/linux/build-scripts/build-mozjpeg new file mode 100755 index 0000000000..54ed8bb901 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-mozjpeg @@ -0,0 +1,7 @@ +#!/bin/bash + +export CPPFLAGS=$CFLAGS + +cd $SW/build/mozjpeg && \ +./configure --prefix=$SW/private/mozjpeg --disable-dependency-tracking --disable-shared --with-jpeg8 --without-turbojpeg && make && make install + diff --git a/setup/installer/linux/build-scripts/build-nasm b/setup/installer/linux/build-scripts/build-nasm new file mode 100755 index 0000000000..a488d83ace --- /dev/null +++ b/setup/installer/linux/build-scripts/build-nasm @@ -0,0 +1,4 @@ +#!/bin/bash + +cd $SW/build/nasm* && \ +./configure --prefix=$SW && make -j2 && make install diff --git a/setup/installer/linux/build-scripts/build-ncurses b/setup/installer/linux/build-scripts/build-ncurses new file mode 100755 index 0000000000..6c1f0bc30f --- /dev/null +++ b/setup/installer/linux/build-scripts/build-ncurses @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/ncurses-* && \ +./configure --prefix=$SW --with-shared --without-debug --without-ada --enable-widec && make && make install diff --git a/setup/installer/linux/build-scripts/build-netifaces b/setup/installer/linux/build-scripts/build-netifaces new file mode 100755 index 0000000000..2c07cb20d4 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-netifaces @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/netifaces-* && python setup.py build && cp build/*/netifaces.so $SW/lib/python*/site-packages/ diff --git a/setup/installer/linux/build-scripts/build-openssl b/setup/installer/linux/build-scripts/build-openssl new file mode 100755 index 0000000000..71f764b634 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-openssl @@ -0,0 +1,14 @@ +#!/bin/bash +if [[ `uname -m` == "i686" ]]; then +openssltarget=linux-elf; +optflags='' +else +openssltarget=linux-x86_64; +optflags='enable-ec_nistp_64_gcc_128'; +fi + +cd $SW/build/openssl-* && \ + ./Configure --prefix=/usr --openssldir=/etc/ssl shared zlib $optflags $openssltarget -Wa,--noexecstack $CFLAGS $LDFLAGS && make && make test && \ + rm -rf $SW/openssl && rm -rf $SW/include/openssl && rm -f $SW/lib/libcrypto* $SW/lib/libssl* && \ + make INSTALL_PREFIX=$SW/openssl install_sw && cp -ra $SW/openssl/usr/include/openssl $SW/include/ && cp -a $SW/openssl/usr/lib/lib*.so* $SW/lib && \ + rm -rf $SW/openssl diff --git a/setup/installer/linux/build-scripts/build-optipng b/setup/installer/linux/build-scripts/build-optipng new file mode 100755 index 0000000000..00286277be --- /dev/null +++ b/setup/installer/linux/build-scripts/build-optipng @@ -0,0 +1,7 @@ +#!/bin/bash + +export CPPFLAGS=$CFLAGS + +cd $SW/build/optipng* && \ +./configure -prefix=$SW -with-system-libs && make && make install + diff --git a/setup/installer/linux/build-scripts/build-pil b/setup/installer/linux/build-scripts/build-pil new file mode 100755 index 0000000000..83f6466ab5 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-pil @@ -0,0 +1,7 @@ +#!/bin/bash + +cd $SW/build/Pillow* && \ + echo Disabling zip_safe && \ + python -c "f = open('setup.py', 'r+b'); raw = f.read(); import re; raw = re.sub(r'zip_safe\s*=\s*True', 'zip_safe=False', raw); f.seek(0); f.truncate(0); f.write(raw)" && \ + python setup.py install + diff --git a/setup/installer/linux/build-scripts/build-plistlib b/setup/installer/linux/build-scripts/build-plistlib new file mode 100755 index 0000000000..73022135c7 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-plistlib @@ -0,0 +1,5 @@ +#!/bin/sh + +cd $SW/build/libplist-* && \ +./configure --without-cython --disable-dependency-tracking --prefix=$SW && \ +make && make install diff --git a/setup/installer/linux/build-scripts/build-podofo b/setup/installer/linux/build-scripts/build-podofo new file mode 100755 index 0000000000..1935f9d0d3 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-podofo @@ -0,0 +1,25 @@ +#!/bin/sh + +export CMAKE_INCLUDE_PATH=$SW/include +export CMAKE_LIBRARY_PATH=$SW/lib + +cd $SW/build/podofo* && \ +rm -rf $SW/include/podofo && \ +rm -rf podofo-build && mkdir podofo-build && \ +cd podofo-build && \ + +echo "Running cmake..." && \ + +cmake -G "Unix Makefiles" -Wno-dev \ + -DFREETYPE_INCLUDE_DIR=$SW/include/freetype2 \ + -DFREETYPE_LIBRARIES=-lfreetype \ + -DCMAKE_BUILD_TYPE=RELEASE \ + -DPODOFO_BUILD_SHARED:BOOL=TRUE \ + -DPODOFO_BUILD_STATIC:BOOL=FALSE \ + -DCMAKE_INSTALL_PREFIX=$SW \ + .. && \ +make VERBOSE=0 podofo_shared && \ +rm -rf $SW/lib/libpodofo* $SW/include/podofo && \ +mkdir $SW/include/podofo && \ +cp src/libpodofo* $SW/lib && \ +cp -r podofo_config.h ../src/* $SW/include/podofo/ diff --git a/setup/installer/linux/build-scripts/build-poppler b/setup/installer/linux/build-scripts/build-poppler new file mode 100755 index 0000000000..0c30055aa6 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-poppler @@ -0,0 +1,15 @@ +#!/bin/bash + +export CXXFLAGS="$CFLAGS" +export FONTCONFIG_CFLAGS="-I$SW/include/fontconfig -I$SW/include" +export FONTCONFIG_LIBS="-L$SW/lib -lfontconfig" +export FREETYPE_CFLAGS="-I$SW/include/freetype2 -I$SW/include" +export FREETYPE_LIBS="-L$SW/lib -lfreetype -lz" +export FREETYPE_CONFIG="$SW/bin/freetype-config" +export LIBJPEG_LIBS="-L$SW/lib -ljpeg" +export LIBPNG_LIBS="-L$SW/lib -lpng" +export LIBPNG_CFLAGS="-I$SW/include/libpng16" + +cd $SW/build/poppler* && \ +./configure --prefix $SW --without-x --enable-shared --disable-dependency-tracking --disable-silent-rules --enable-zlib --enable-splash-output --disable-cairo-output --disable-poppler-glib --disable-poppler-qt4 --disable-poppler-qt5 --disable-poppler-cpp --disable-gtk-test --enable-libjpeg --enable-compile-warnings=no && make V=1 && make install + diff --git a/setup/installer/linux/build-scripts/build-psutil b/setup/installer/linux/build-scripts/build-psutil new file mode 100755 index 0000000000..dfa8ca9862 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-psutil @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/psutil-* && python setup.py build && cp -r build/lib*/* $SW/lib/python2.7/site-packages/ diff --git a/setup/installer/linux/build-scripts/build-pyqt b/setup/installer/linux/build-scripts/build-pyqt new file mode 100755 index 0000000000..18b6ca4b64 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-pyqt @@ -0,0 +1,5 @@ +#!/bin/sh + +cd $SW/build/PyQt-gpl-* && \ +python configure.py --verbose --confirm-license -c -j10 --no-designer-plugin --no-qml-plugin --no-docstrings && \ +make -j2 && make install diff --git a/setup/installer/linux/build-scripts/build-python b/setup/installer/linux/build-scripts/build-python new file mode 100755 index 0000000000..1d86eebd81 --- /dev/null +++ b/setup/installer/linux/build-scripts/build-python @@ -0,0 +1,12 @@ +#!/bin/sh + +export CFLAGS="$CFLAGS -DHAVE_LOAD_EXTENSION" + +# Needed otherwise _ssl module fails to import because system openssl is too old +export LD_LIBRARY_PATH=$SW/lib + +cd $SW/build/Python-* && \ +./configure --prefix=$SW --enable-ipv6 --enable-unicode=ucs4 --with-signal-module --with-threads --with-pymalloc --with-system-expat --enable-shared && make -j2 && make install + +# Install setuptools as described in windows/notes. +# Use setuptools to install the various python packages diff --git a/setup/installer/linux/build-scripts/build-qt b/setup/installer/linux/build-scripts/build-qt new file mode 100755 index 0000000000..aa84b9b98d --- /dev/null +++ b/setup/installer/linux/build-scripts/build-qt @@ -0,0 +1,18 @@ +#!/bin/bash + +# See windows/notes.rst for instructions on slimming down Qt. + +# We disable loading of bearer plugins because many distros ship with broken bearer plugins that cause hangs. +# At least, this was the case in Qt 4.x Dont know if it is still true for Qt 5 but since we dont need bearers anyway, it cant hurt. + +cd $SW/build/qt-* && sed -i -e 's:/bearer":/bearer-disabled-by-kovid":' qtbase/src/network/bearer/qnetworkconfigmanager_p.cpp || die "sed for bearer failed." + +# Change pointing_hand to hand2, see https://bugreports.qt.io/browse/QTBUG-41151 + +cd $SW/build/qt-* && sed -i -e 's:pointing_hand":hand2":' qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp || die "sed for pointing_hand failed." + +# libudev is disabled because systemd based distros use libudev.so.1 while non systemd based distros use libudev.so.0 (debian stable currently uses libudev.so.0). And according to the incompetent udev developers, we cannot use mismatching udev client and daemon versions. http://www.marshut.com/yiqmk/can-apps-ship-their-own-copy-of-libudev.html + +rm -rf build && mkdir build && cd build && \ +../configure -opensource -confirm-license -prefix $SW/qt -release -nomake examples -nomake tests -no-sql-odbc -no-sql-psql -no-qml-debug -qt-xcb -cups -no-c++11 -force-pkg-config -pulseaudio -no-libudev -openssl -gtkstyle -icu $CFLAGS $LDFLAGS && \ +make -j4 && rm -rf $SW/qt && make install diff --git a/setup/installer/linux/build-scripts/build-readline b/setup/installer/linux/build-scripts/build-readline new file mode 100755 index 0000000000..bc4c7c472a --- /dev/null +++ b/setup/installer/linux/build-scripts/build-readline @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/readline* && \ +./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-sip b/setup/installer/linux/build-scripts/build-sip new file mode 100755 index 0000000000..67c822d40e --- /dev/null +++ b/setup/installer/linux/build-scripts/build-sip @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/sip-* && \ + python configure.py && make && make install diff --git a/setup/installer/linux/build-scripts/build-sqlite b/setup/installer/linux/build-scripts/build-sqlite new file mode 100755 index 0000000000..715a871a5e --- /dev/null +++ b/setup/installer/linux/build-scripts/build-sqlite @@ -0,0 +1,5 @@ +#!/bin/sh + +export CFLAGS="$CFLAGS" +cd $SW/build/sqlite-* &&\ +./configure --prefix=$SW --disable-dependency-tracking --disable-static && make && make install diff --git a/setup/installer/linux/build-scripts/build-usbmuxd b/setup/installer/linux/build-scripts/build-usbmuxd new file mode 100755 index 0000000000..812a1cf2ec --- /dev/null +++ b/setup/installer/linux/build-scripts/build-usbmuxd @@ -0,0 +1,12 @@ +#!/bin/sh + +# Apply the patch to prevent detection of WIFI devices, from http://www.mobileread.com/forums/showthread.php?t=255234 + +export libplist_CFLAGS="-I$SW/include" +export libplist_LIBS="-L$SW/lib -lplist" +export CPPFLAGS="$CFLAGS" +export CXXFLAGS="$CFLAGS" + +cd $SW/build/libusbmuxd-* && \ + ./configure --prefix=$SW --disable-dependency-tracking && \ + make && make install diff --git a/setup/installer/linux/build-scripts/build-xpyb b/setup/installer/linux/build-scripts/build-xpyb new file mode 100755 index 0000000000..7a88ec75ee --- /dev/null +++ b/setup/installer/linux/build-scripts/build-xpyb @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/xpyb && ./autogen.sh && ./configure --prefix=$SW && make && make install diff --git a/setup/installer/linux/build-scripts/build-zlib b/setup/installer/linux/build-scripts/build-zlib new file mode 100755 index 0000000000..411fc6f23c --- /dev/null +++ b/setup/installer/linux/build-scripts/build-zlib @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/zlib-* && \ +./configure --prefix=$SW && make && make install diff --git a/setup/installer/osx/build-scripts/build-appscript b/setup/installer/osx/build-scripts/build-appscript new file mode 100755 index 0000000000..b6914730ec --- /dev/null +++ b/setup/installer/osx/build-scripts/build-appscript @@ -0,0 +1,3 @@ +#!/bin/sh + +easy_install --always-unzip -U appscript diff --git a/setup/installer/osx/build-scripts/build-apsw b/setup/installer/osx/build-scripts/build-apsw new file mode 100755 index 0000000000..c27e8bc8bd --- /dev/null +++ b/setup/installer/osx/build-scripts/build-apsw @@ -0,0 +1,7 @@ + +#!/bin/sh + +# Change the https URLs to http in setup.py + +cd $SW/build/apsw-* && rm -rf build/* && \ +python setup.py fetch --version=3.8.6 --sqlite --missing-checksum-ok && python setup.py install diff --git a/setup/installer/osx/build-scripts/build-chmlib b/setup/installer/osx/build-scripts/build-chmlib new file mode 100755 index 0000000000..fbd4f489e4 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-chmlib @@ -0,0 +1,5 @@ +#!/bin/bash + +cd $SW/build/chmlib* && \ +#cp /usr/share/libtool/config.* . && \ +./configure --disable-dependency-tracking --disable-pread --disable-io64 --prefix=$SW && make && make install diff --git a/setup/installer/osx/build-scripts/build-expat b/setup/installer/osx/build-scripts/build-expat new file mode 100755 index 0000000000..3f4d23d3a5 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-expat @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/expat-* &&\ +./configure --prefix=$SW && make && make install diff --git a/setup/installer/osx/build-scripts/build-fontconfig b/setup/installer/osx/build-scripts/build-fontconfig new file mode 100755 index 0000000000..0aa2baddbf --- /dev/null +++ b/setup/installer/osx/build-scripts/build-fontconfig @@ -0,0 +1,6 @@ +#!/bin/sh +export FREETYPE_CFLAGS="-I$SW/include/freetype2" +export FREETYPE_LIBS="-L$SW/lib -lfreetype -lz -lbz2" + +cd $SW/build/fontconfig-2.* && \ +./configure --prefix=$SW --disable-static --disable-docs --with-expat=$SW --with-add-fonts=/usr/X11/lib/X11/fonts --disable-dependency-tracking && make && make install diff --git a/setup/installer/osx/build-scripts/build-freetype b/setup/installer/osx/build-scripts/build-freetype new file mode 100755 index 0000000000..9873d3197b --- /dev/null +++ b/setup/installer/osx/build-scripts/build-freetype @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/freetype* && \ +./configure --disable-static --prefix=$SW && make && make install diff --git a/setup/installer/osx/build-scripts/build-icu b/setup/installer/osx/build-scripts/build-icu new file mode 100755 index 0000000000..204d100d57 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-icu @@ -0,0 +1,9 @@ +#!/bin/sh + +export CFLAGS="$CFLAGS -DU_CHARSET_IS_UTF8=1" +export CPPFLAGS="$CFLAGS" +export CXXFLAGS="$CFLAGS" + +cd $SW/build/icu*/source && \ +./runConfigureICU MacOSX --disable-samples --prefix=$SW && make && make install && python ~/build/calibre/setup/installer/osx/fix_icu.py + diff --git a/setup/installer/osx/build-scripts/build-libiconv b/setup/installer/osx/build-scripts/build-libiconv new file mode 100755 index 0000000000..a5986f1dd5 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libiconv @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/libiconv-* && \ +./configure --enable-static --disable-dependency-tracking --disable-shared --prefix=$SW && make && make install diff --git a/setup/installer/osx/build-scripts/build-libimobiledevice b/setup/installer/osx/build-scripts/build-libimobiledevice new file mode 100755 index 0000000000..583f4f7252 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libimobiledevice @@ -0,0 +1,12 @@ +#!/bin/sh + +export libusbmuxd_CFLAGS=-I$SW/include +export libusbmuxd_LIBS=-lusbmuxd +export libplist_CFLAGS=-I$SW/include +export libplist_LIBS=-lplist +export libplistmm_CFLAGS=-I$SW/include +export libplistmm_LIBS=-lplist++ +export openssl_CFLAGS=-I/usr/include +export openssl_LIBS="-lcrypto -lssl" + +cd $SW/build/libimobiledevice-* && ./configure --prefix=$SW --disable-dependency-tracking --without-cython --disable-static && make && make install diff --git a/setup/installer/osx/build-scripts/build-libjpeg b/setup/installer/osx/build-scripts/build-libjpeg new file mode 100755 index 0000000000..d9bf2c8e9c --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libjpeg @@ -0,0 +1,4 @@ +#!/bin/bash + +cd $SW/build/libjpeg-turbo* && \ +./configure --disable-dependency-tracking --enable-shared --with-jpeg8 --without-turbojpeg --prefix=$SW --host x86_64-apple-darwin NASM=$SW/bin/nasm && make -j2 && make install diff --git a/setup/installer/osx/build-scripts/build-libltdl b/setup/installer/osx/build-scripts/build-libltdl new file mode 100755 index 0000000000..c6cd5a50e9 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libltdl @@ -0,0 +1,5 @@ +#!/bin/sh + +cd $SW/build/libtool*/libltdl && \ +./configure --prefix=$SW --disable-dependency-tracking --enable-ltdl-install && \ +make && make install diff --git a/setup/installer/osx/build-scripts/build-libmtp b/setup/installer/osx/build-scripts/build-libmtp new file mode 100755 index 0000000000..5169739756 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libmtp @@ -0,0 +1,11 @@ +#!/bin/sh + +export LIBUSB_CFLAGS="-I$SW/include/libusb-1.0" +export LIBUSB_LIBS="-L$SW/lib -lusb-1.0" +export CFLAGS="$CFLAGS -DHAVE_ICONV" +export LDFLAGS="$LDFLAGS -liconv" + +cd $SW/build/libmtp-* && \ +./configure --disable-dependency-tracking --disable-static --prefix=$SW --with-libiconv-prefix=$SW && \ +make && make install + diff --git a/setup/installer/osx/build-scripts/build-libpng b/setup/installer/osx/build-scripts/build-libpng new file mode 100755 index 0000000000..def0fa1160 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libpng @@ -0,0 +1,6 @@ +#!/bin/bash +export CPPFLAGS=$CFLAGS + +cd $SW/build/libpng* && \ +./configure --prefix=$SW --disable-dependency-tracking && make && make install + diff --git a/setup/installer/osx/build-scripts/build-libusb b/setup/installer/osx/build-scripts/build-libusb new file mode 100755 index 0000000000..96bdbf6a8c --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libusb @@ -0,0 +1,6 @@ +#!/bin/sh + +cd $SW/build/libusb-* && \ +./configure --disable-dependency-tracking --disable-static --prefix=$SW && \ +make && make install + diff --git a/setup/installer/osx/build-scripts/build-libwebp b/setup/installer/osx/build-scripts/build-libwebp new file mode 100755 index 0000000000..a1023e0ad3 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libwebp @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/libwebp-* && ./configure --prefix=$SW --disable-static && make && make install diff --git a/setup/installer/osx/build-scripts/build-libxml2 b/setup/installer/osx/build-scripts/build-libxml2 new file mode 100755 index 0000000000..3e8e493a2f --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libxml2 @@ -0,0 +1,4 @@ +#!/bin/sh +cd $SW/build/libxml2-2.* && \ +./configure --prefix=$SW/private/libxml2 --disable-shared --enable-static --with-iconv=$SW --with-zlib=$SW --without-python --without-debug --disable-dependency-tracking && make && make install + diff --git a/setup/installer/osx/build-scripts/build-libxslt b/setup/installer/osx/build-scripts/build-libxslt new file mode 100755 index 0000000000..d8524c04cd --- /dev/null +++ b/setup/installer/osx/build-scripts/build-libxslt @@ -0,0 +1,4 @@ +#!/bin/sh +cd $SW/build/libxslt-* +./configure --prefix=$SW/private/libxml2 --disable-shared --without-python --without-debug --disable-dependency-tracking --with-libxml-prefix=$SW/private/libxml2 && make && make install + diff --git a/setup/installer/osx/build-scripts/build-lxml b/setup/installer/osx/build-scripts/build-lxml new file mode 100755 index 0000000000..fd32976724 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-lxml @@ -0,0 +1,21 @@ +#!/bin/sh + +# lxml must be built with statically linked libxml2 and libxslt as python on +# OS X loads the system version of these libraries, which can cause incompatibility +# First run python setup.py install and abort it when it reaches the compiling phase + +CC=gcc +BTEMP=build/temp.macosx-10.7-x86_64-2.7 +BLIB=build/lib.macosx-10.7-x86_64-2.7 +PYH=$SW/python/Python.framework/Versions/Current/Headers +LXML=src/lxml/includes +LIBXML=$SW/private/libxml2 + +cd $SW/build/lxml-3* && rm -rf build/* && \ +echo Builiding extension modules... && \ +mkdir -p $BTEMP/src/lxml/ $BLIB/lxml/ && \ +$CC $CFLAGS -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I$LIBXML/include/libxml2 -I$LIBXML/include/libxslt -I/usr/include -I$PYH -I$LXML -c src/lxml/lxml.etree.c -o $BTEMP/src/lxml/lxml.etree.o -w -flat_namespace && \ +$CC $CFLAGS -bundle -undefined dynamic_lookup $BTEMP/src/lxml/lxml.etree.o $LIBXML/lib/libxml2.a $LIBXML/lib/libxslt.a $LIBXML/lib/libexslt.a $SW/lib/libz.a $SW/lib/libiconv.a -lm -o $BLIB/lxml/etree.so && \ +$CC $CFLAGS -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I$LIBXML/include/libxml2 -I$LIBXML/include/libxslt -I/usr/include -I$PYH -I$LXML -c src/lxml/lxml.objectify.c -o $BTEMP/src/lxml/lxml.objectify.o -w -flat_namespace && \ +$CC $CFLAGS -bundle -undefined dynamic_lookup $BTEMP/src/lxml/lxml.objectify.o $LIBXML/lib/libxml2.a $LIBXML/lib/libxslt.a $LIBXML/lib/libexslt.a $SW/lib/libz.a $SW/lib/libiconv.a -lm -o $BLIB/lxml/objectify.so && \ +python setup.py install diff --git a/setup/installer/osx/build-scripts/build-macfsevents b/setup/installer/osx/build-scripts/build-macfsevents new file mode 100755 index 0000000000..7543ec496a --- /dev/null +++ b/setup/installer/osx/build-scripts/build-macfsevents @@ -0,0 +1,3 @@ +#!/bin/sh +cd $SW/build/macfsevents* && \ +python setup.py install diff --git a/setup/installer/osx/build-scripts/build-mozjpeg b/setup/installer/osx/build-scripts/build-mozjpeg new file mode 100755 index 0000000000..f38757277d --- /dev/null +++ b/setup/installer/osx/build-scripts/build-mozjpeg @@ -0,0 +1,6 @@ +#!/bin/bash + +export CPPFLAGS=$CFLAGS + +cd $SW/build/mozjpeg && \ +./configure --prefix=$SW/private/mozjpeg --disable-dependency-tracking --disable-shared --with-jpeg8 --without-turbojpeg && make && make install diff --git a/setup/installer/osx/build-scripts/build-nasm b/setup/installer/osx/build-scripts/build-nasm new file mode 100755 index 0000000000..a488d83ace --- /dev/null +++ b/setup/installer/osx/build-scripts/build-nasm @@ -0,0 +1,4 @@ +#!/bin/bash + +cd $SW/build/nasm* && \ +./configure --prefix=$SW && make -j2 && make install diff --git a/setup/installer/osx/build-scripts/build-netifaces b/setup/installer/osx/build-scripts/build-netifaces new file mode 100755 index 0000000000..2a21ed44bc --- /dev/null +++ b/setup/installer/osx/build-scripts/build-netifaces @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/netifaces-* && python setup.py build && cp build/*/netifaces.so $SW/python/Python.framework/Versions/Current/lib/python*/site-packages/ diff --git a/setup/installer/osx/build-scripts/build-openssl b/setup/installer/osx/build-scripts/build-openssl new file mode 100755 index 0000000000..3b2d778d3b --- /dev/null +++ b/setup/installer/osx/build-scripts/build-openssl @@ -0,0 +1,7 @@ +#!/bin/sh + +SSLDIR=$SW/private/ssl + +cd $SW/build/openssl-* && \ + rm -rf $SSLDIR && \ + ./Configure darwin64-x86_64-cc shared enable-ec_nistp_64_gcc_128 no-ssl2 --openssldir=$SSLDIR && make && make install diff --git a/setup/installer/osx/build-scripts/build-optipng b/setup/installer/osx/build-scripts/build-optipng new file mode 100755 index 0000000000..28fb2a6be1 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-optipng @@ -0,0 +1,6 @@ +#!/bin/bash + +export CPPFLAGS=$CFLAGS + +cd $SW/build/optipng* && \ +./configure -prefix=$SW -with-system-libs && make && make install diff --git a/setup/installer/osx/build-scripts/build-pil b/setup/installer/osx/build-scripts/build-pil new file mode 100755 index 0000000000..2823b77bb3 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-pil @@ -0,0 +1,11 @@ +#!/bin/bash + + +export CFLAGS="$CFLAGS -mmacosx-version-min=10.7" +export LDFLAGS="$LDFLAGS -Wl,-headerpad_max_install_names -mmacosx-version-min=10.7" + +cd $SW/build/Pillow* && \ + echo Disabling zip_safe && \ + python -c "f = open('setup.py', 'r+b'); raw = f.read(); import re; raw = re.sub(r'zip_safe\s*=\s*True', 'zip_safe=False', raw); f.seek(0); f.truncate(0); f.write(raw)" && \ + python setup.py install + diff --git a/setup/installer/osx/build-scripts/build-plistlib b/setup/installer/osx/build-scripts/build-plistlib new file mode 100755 index 0000000000..9911940b54 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-plistlib @@ -0,0 +1,8 @@ +#!/bin/sh + +export libxml2_CFLAGS="-I/usr/include/libxml2" +export libxml2_LIBS="-L/usr/lib -lxml2" + +cd $SW/build/libplist-* && \ +./configure --without-cython --disable-dependency-tracking --prefix=$SW && \ +make && make install diff --git a/setup/installer/osx/build-scripts/build-podofo b/setup/installer/osx/build-scripts/build-podofo new file mode 100755 index 0000000000..01e93a9d86 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-podofo @@ -0,0 +1,29 @@ +#!/bin/sh + +export CMAKE_INCLUDE_PATH=$SW/include +export CMAKE_LIBRARY_PATH=$SW/lib + +cd $SW/build/podofo* && \ +rm -rf podofo-build && mkdir podofo-build && \ +cd podofo-build && \ + +echo "Running cmake..." && \ + +# We set c++98 and libstdc++ as PoDoFo does not use C++11 and without that it +# will be compiled with C++11 and linked against libc++, which means the PoDoFo +# calibre extension would also have to be compiled and liked that way. +cmake -G "Unix Makefiles" -Wno-dev \ + -DFREETYPE_INCLUDE_DIR=$SW/include/freetype2 \ + -DFREETYPE_LIBRARIES=-lfreetype \ + -DCMAKE_BUILD_TYPE=RELEASE \ + -DPODOFO_BUILD_SHARED:BOOL=TRUE \ + -DPODOFO_BUILD_STATIC:BOOL=FALSE \ + -DCMAKE_CXX_FLAGS="${CFLAGS} -std=c++98 -stdlib=libstdc++" \ + -DCMAKE_INSTALL_PREFIX=$SW \ + .. && \ +make VERBOSE=0 podofo_shared && \ +rm -rf $SW/lib/libpodofo*.dylib $SW/include/podofo && \ +mkdir $SW/include/podofo && \ +cp src/libpodofo.*.dylib $SW/lib && \ +cp -r podofo_config.h ../src/* $SW/include/podofo/ && \ +cd $SW/lib/ && install_name_tool -id $SW/lib/libpodofo* $SW/lib/libpodofo.* && ln -s libpodofo*.dylib libpodofo.dylib diff --git a/setup/installer/osx/build-scripts/build-poppler b/setup/installer/osx/build-scripts/build-poppler new file mode 100755 index 0000000000..c30cb9f084 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-poppler @@ -0,0 +1,15 @@ +#!/bin/bash + +export CXXFLAGS="$CFLAGS" +export FONTCONFIG_CFLAGS="-I$SW/include/fontconfig -I$SW/include" +export FONTCONFIG_LIBS="-L$SW/lib -lfontconfig" +export FREETYPE_CFLAGS="-I$SW/include/freetype2 -I$SW/include" +export FREETYPE_LIBS="-L$SW/lib -lfreetype -lz" +export FREETYPE_CONFIG="$SW/bin/freetype-config" +export LIBJPEG_LIBS="-L$SW/lib -ljpeg" +export LIBPNG_LIBS="-L$SW/lib -lpng" +export LIBPNG_CFLAGS="-I$SW/include/libpng12" + +cd $SW/build/poppler* && \ +./configure --prefix $SW --without-x --enable-shared --disable-dependency-tracking --disable-silent-rules --enable-zlib --enable-splash-output --disable-cairo-output --disable-poppler-glib --disable-poppler-qt4 --disable-poppler-cpp --disable-gtk-test --enable-libjpeg --enable-compile-warnings=no && make V=1 && make install + diff --git a/setup/installer/osx/build-scripts/build-psutil b/setup/installer/osx/build-scripts/build-psutil new file mode 100755 index 0000000000..31b14fe324 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-psutil @@ -0,0 +1,3 @@ +#!/bin/sh + +cd $SW/build/psutil-* && python setup.py build && cp -r build/lib*/* $SW/python/Python.framework/Versions/Current/lib/python*/site-packages/ diff --git a/setup/installer/osx/build-scripts/build-pyqt b/setup/installer/osx/build-scripts/build-pyqt new file mode 100755 index 0000000000..18b6ca4b64 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-pyqt @@ -0,0 +1,5 @@ +#!/bin/sh + +cd $SW/build/PyQt-gpl-* && \ +python configure.py --verbose --confirm-license -c -j10 --no-designer-plugin --no-qml-plugin --no-docstrings && \ +make -j2 && make install diff --git a/setup/installer/osx/build-scripts/build-python b/setup/installer/osx/build-scripts/build-python new file mode 100755 index 0000000000..dabb5a4478 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-python @@ -0,0 +1,16 @@ +#!/bin/sh + +# Edit setup.py + +# Disable Tk by adding return 0 to the start of detect_tkinter_darwin + +OPENSSL=$SW/private/ssl +export CFLAGS="-I$OPENSSL/include $CFLAGS -DHAVE_LOAD_EXTENSION" +export LDFLAGS="-L$OPENSSL/lib $LDFLAGS" + +cd $SW/build/Python-* && \ +./configure --prefix=$SW --enable-framework=$SW/python --enable-ipv6 --enable-unicode=ucs2 --with-signal-module --with-threads --with-pymalloc --with-system-expat && make -j2 && make install + +# Now create a symlink from ~/sw/bin/python to the newly installed python binary so that it becomes the default python +# Install setuptools as described in windows/notes. Create symlink for ~/sw/bin/easy_install +# Use setuptools to install the various python packages diff --git a/setup/installer/osx/build-scripts/build-qt b/setup/installer/osx/build-scripts/build-qt new file mode 100755 index 0000000000..66e5c902e7 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-qt @@ -0,0 +1,11 @@ +#!/bin/bash + +# See windows/notes.rst for instructions on slimming down Qt. +# For versions of Qt < 5.6 you need to apply this patch: +# https://codereview.qt-project.org/#/c/125923/ + +cd $SW/build/qt-* && \ +rm -rf build && mkdir build && cd build && \ +../configure -opensource -confirm-license -prefix $SW/qt -release -nomake examples -nomake tests -no-sql-odbc -no-sql-psql -no-qml-debug -I $SW/include -L $SW/lib && \ +make -j2 && rm -rf $SW/qt && make install + diff --git a/setup/installer/osx/build-scripts/build-sip b/setup/installer/osx/build-scripts/build-sip new file mode 100755 index 0000000000..67c822d40e --- /dev/null +++ b/setup/installer/osx/build-scripts/build-sip @@ -0,0 +1,4 @@ +#!/bin/sh + +cd $SW/build/sip-* && \ + python configure.py && make && make install diff --git a/setup/installer/osx/build-scripts/build-sqlite b/setup/installer/osx/build-scripts/build-sqlite new file mode 100755 index 0000000000..cf2c32b41f --- /dev/null +++ b/setup/installer/osx/build-scripts/build-sqlite @@ -0,0 +1,5 @@ +#!/bin/sh + +export CFLAGS="$CFLAGS -O2 -DSQLITE_ENABLE_LOCKING_STYLE" +cd $SW/build/sqlite-* &&\ +./configure --prefix=$SW --disable-dependency-tracking --disable-static && make && make install diff --git a/setup/installer/osx/build-scripts/build-unrar b/setup/installer/osx/build-scripts/build-unrar new file mode 100755 index 0000000000..116bde1b58 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-unrar @@ -0,0 +1,12 @@ +#!/bin/sh + +# Edit makefile.unix setting the vars as shown + +CXX=g++ +CXXFLAGS=-O2 -arch x86_64 -dynamic +DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_SILENT -DSILENT +STRIP=strip +DESTDIR=$SW +WHAT=RARDLL + +cd $SW/unrar && make -fmakefile.unic lib && cp libunrar.so $SW/lib/libunrar.dylib diff --git a/setup/installer/osx/build-scripts/build-usbmuxd b/setup/installer/osx/build-scripts/build-usbmuxd new file mode 100755 index 0000000000..b500d970d9 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-usbmuxd @@ -0,0 +1,12 @@ +#!/bin/sh + +# Apply the patch to prevent detection of WiFi devices from http://www.mobileread.com/forums/showthread.php?t=255234 + +export libplist_CFLAGS="-I$SW/include" +export libplist_LIBS="-L$SW/lib -lplist" +export CPPFLAGS="$CFLAGS" +export CXXFLAGS="$CFLAGS" + +cd $SW/build/libusbmuxd-* && \ + ./configure --prefix=$SW --disable-dependency-tracking && \ + make && make install diff --git a/setup/installer/osx/build-scripts/build-zlib b/setup/installer/osx/build-scripts/build-zlib new file mode 100755 index 0000000000..f44710ee39 --- /dev/null +++ b/setup/installer/osx/build-scripts/build-zlib @@ -0,0 +1,4 @@ +#!/bin/sh +cd $SW/build/zlib-* && \ +./configure --prefix=$SW && make && \ +libtool -static -o libz.a *.o && make install