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.
This commit is contained in:
Kovid Goyal 2016-06-20 11:03:03 +05:30
parent 6a4b5c9005
commit 95f29656fa
79 changed files with 553 additions and 0 deletions

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/bash
cd $SW/build/chmlib* && \
./configure --disable-dependency-tracking --prefix=$SW && make && make install

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/dbus-python-* && \
./configure --prefix=$SW && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/dbus-glib-* && ./configure --prefix=$SW --disable-static && make && make install

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/expat-* &&\
./configure --prefix=$SW && make && make install

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/freetype* && \
./configure --disable-static --prefix=$SW && make && make install

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libgcrypt-* && ./configure --prefix=$SW --disable-static && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libgpg-error* && ./configure --prefix=$SW --disable-static && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libiconv-* && \
./configure --disable-static --disable-dependency-tracking --enable-shared --prefix=$SW && make && make install

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/bash
cd $SW/build/libjpeg-turbo* && \
./configure --disable-dependency-tracking --enable-shared --with-jpeg8 --prefix=$SW && make && make install

View File

@ -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

View File

@ -0,0 +1,7 @@
#!/bin/bash
export CPPFLAGS=$CFLAGS
cd $SW/build/libpng* && \
./configure --prefix=$SW --disable-dependency-tracking --disable-static && make && make install

View File

@ -0,0 +1,6 @@
#!/bin/sh
cd $SW/build/libusb-* && \
./configure --disable-udev --disable-dependency-tracking --disable-static --prefix=$SW && \
make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libwebp-* && ./configure --prefix=$SW --disable-static && make && make install

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/lxml-3* && rm -rf build/* && python setup.py install

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/bash
cd $SW/build/nasm* && \
./configure --prefix=$SW && make -j2 && make install

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/ncurses-* && \
./configure --prefix=$SW --with-shared --without-debug --without-ada --enable-widec && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/netifaces-* && python setup.py build && cp build/*/netifaces.so $SW/lib/python*/site-packages/

View File

@ -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

View File

@ -0,0 +1,7 @@
#!/bin/bash
export CPPFLAGS=$CFLAGS
cd $SW/build/optipng* && \
./configure -prefix=$SW -with-system-libs && make && make install

View File

@ -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

View File

@ -0,0 +1,5 @@
#!/bin/sh
cd $SW/build/libplist-* && \
./configure --without-cython --disable-dependency-tracking --prefix=$SW && \
make && make install

View File

@ -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/

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/psutil-* && python setup.py build && cp -r build/lib*/* $SW/lib/python2.7/site-packages/

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/readline* && \
./configure --prefix=$SW --disable-static && make && make install

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/sip-* && \
python configure.py && make && make install

View File

@ -0,0 +1,5 @@
#!/bin/sh
export CFLAGS="$CFLAGS"
cd $SW/build/sqlite-* &&\
./configure --prefix=$SW --disable-dependency-tracking --disable-static && make && make install

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/xpyb && ./autogen.sh && ./configure --prefix=$SW && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/zlib-* && \
./configure --prefix=$SW && make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
easy_install --always-unzip -U appscript

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/expat-* &&\
./configure --prefix=$SW && make && make install

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/freetype* && \
./configure --disable-static --prefix=$SW && make && make install

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libiconv-* && \
./configure --enable-static --disable-dependency-tracking --disable-shared --prefix=$SW && make && make install

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,5 @@
#!/bin/sh
cd $SW/build/libtool*/libltdl && \
./configure --prefix=$SW --disable-dependency-tracking --enable-ltdl-install && \
make && make install

View File

@ -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

View File

@ -0,0 +1,6 @@
#!/bin/bash
export CPPFLAGS=$CFLAGS
cd $SW/build/libpng* && \
./configure --prefix=$SW --disable-dependency-tracking && make && make install

View File

@ -0,0 +1,6 @@
#!/bin/sh
cd $SW/build/libusb-* && \
./configure --disable-dependency-tracking --disable-static --prefix=$SW && \
make && make install

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/libwebp-* && ./configure --prefix=$SW --disable-static && make && make install

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,3 @@
#!/bin/sh
cd $SW/build/macfsevents* && \
python setup.py install

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/bash
cd $SW/build/nasm* && \
./configure --prefix=$SW && make -j2 && make install

View File

@ -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/

View File

@ -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

View File

@ -0,0 +1,6 @@
#!/bin/bash
export CPPFLAGS=$CFLAGS
cd $SW/build/optipng* && \
./configure -prefix=$SW -with-system-libs && make && make install

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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/

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/sip-* && \
python configure.py && make && make install

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd $SW/build/zlib-* && \
./configure --prefix=$SW && make && \
libtool -static -o libz.a *.o && make install