Merge pull request #11 from pdf2htmlEX/master

update development project from master project
This commit is contained in:
stephengaito 2019-11-21 10:51:52 +00:00 committed by GitHub
commit e4ba125385
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 271 additions and 99 deletions

3
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1,3 @@
# These are supported funding model platforms
github: [stephengaito]

View File

@ -4,15 +4,17 @@ sudo: true
os:
- linux
- osx
# - osx
dist: bionic
env:
global:
- POPPLER_NAME="poppler-0.63.0"
- POPPLER_SOURCE="https://gitlab.freedesktop.org/poppler/poppler.git"
- FONTFORGE_SOURCE="https://github.com/fontforge/fontforge.git"
- LIBUNINAMESLIST_SOURCE="https://github.com/fontforge/libuninameslist.git"
matrix:
- PDF2HTMLEX_RELEASE="v0.18.7-poppler-0.81.0" POPPLER_RELEASE="poppler-0.81.0"
- PDF2HTMLEX_RELEASE="v0.18.0-poppler-0.74.0-ubuntu-19.04" POPPLER_RELEASE="poppler-0.74.0"
- PDF2HTMLEX_RELEASE="v0.16.0-poppler-0.62.0-ubuntu-18.04" POPPLER_RELEASE="poppler-0.62.0"
compiler: gcc
@ -22,109 +24,65 @@ addons:
packages:
- build-essential
- autoconf
- gcc
- pkg-config
- git
- pkg-config
- cmake
- ca-certificates
- libfreetype6-dev
- make
- gcc
- g++
# - ca-certificates
# - libfreetype6-dev
# Poppler-specific packages
- libfontconfig1-dev
- libfontforge-dev
- libfontconfig-dev
- libjpeg-dev
- libpng-dev
- libnss3-dev
# libuninameslist-specific packages
- automake
- libtool
# fontforge-specific packages
- libltdl-dev
- python-dev
- libglib2.0-dev
- libxml2-dev
- libspiro-dev
- gettext
# pdf2htmlEX-specific packages
- default-jre
- libcairo2-dev
- libcairo-dev
- libspiro-dev
- libpango1.0-dev
homebrew:
packages:
- autoconf
- pkg-config
- git
- cmake
- freetype
# Poppler-specific packages
- fontconfig
- jpeg
- nss
# libuninameslist-specific packages
- automake
- libtool
# fontforge-specific packages
- python
- glib
- xml2
- libspiro
- gettext
# pdf2htmlEX-specific packages
- cairo
- pango
sauce_connect: true
- poppler-data
# homebrew:
# packages:
# - autoconf
# - pkg-config
# - git
# - cmake
# - freetype
# # Poppler-specific packages
# - fontconfig
# - jpeg
# - nss
# # libuninameslist-specific packages
# - automake
# - libtool
# # fontforge-specific packages
# - python
# - glib
# - xml2
# - libspiro
# - gettext
# # pdf2htmlEX-specific packages
# - cairo
# - pango
# sauce_connect: true
matrix:
fast_finish: true
allow_failures:
- os: osx # Until the build passes, then re-enable.
# allow_failures:
# - os: osx # Until the build passes, then re-enable.
before_install:
# Clone and build poppler
- git clone ${POPPLER_SOURCE}
- cd poppler;
git checkout tags/${POPPLER_NAME} -b poppler-local;
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${TRAVIS_BUILD_DIR}/usr -DENABLE_XPDF_HEADERS=ON -DENABLE_LIBOPENJPEG=none .;
make;
make install
- cd ${TRAVIS_BUILD_DIR}
# Install libuninameslist
- git clone ${LIBUNINAMESLIST_SOURCE}
- cd libuninameslist;
git checkout tags/20180701 -b libuninameslist-local;
autoreconf -i;
automake;
./configure --prefix=${TRAVIS_BUILD_DIR}/usr;
make;
make install
- cd ${TRAVIS_BUILD_DIR}
# Install fontforge
- git clone ${FONTFORGE_SOURCE}
- cd fontforge;
git checkout tags/20170731 -b fontforge-local;
./bootstrap;
./configure --disable-programs --disable-python-extension --disable-python-scripting --prefix=${TRAVIS_BUILD_DIR}/usr;
make;
make install;
sudo ldconfig
- cd ${TRAVIS_BUILD_DIR}
# Test setup
- pip install --user Pillow selenium sauceclient
- export DISPLAY=:99.0
- test/start_xvfb.sh
- pushd /
- python -m SimpleHTTPServer 8000 >/dev/null 2>&1 &
- popd
- sleep 5
before_script:
- export LD_LIBRARY_PATH=${TRAVIS_BUILD_DIR}/usr/lib:$LD_LIBRARY_PATH
- export PKG_CONFIG_PATH=${TRAVIS_BUILD_DIR}/usr/lib/pkgconfig:$PKG_CONFIG_PATH
- patch < CMakeLists.txt.patch
- mkdir build && cd build && cmake -DENABLE_SVG=ON -DCMAKE_INSTALL_PREFIX=${TRAVIS_BUILD_DIR}/usr ..
- ./.travisScripts/copyScriptsToBin
- $HOME/bin/buildPoppler.sh
- $HOME/bin/installPoppler.sh
#- $HOME/setupTests.sh
script:
- make
- P2H_TEST_REMOTE=1 ctest --output-on-failure --verbose
- make install
- ${TRAVIS_BUILD_DIR}/usr/bin/pdf2htmlEX -v
- git checkout ${PDF2HTMLEX_RELEASE}
- git branch
- $HOME/bin/dobuild
- $HOME/bin/doinstall --noWait
- /usr/local/bin/pdf2htmlEX -v

130
.travis.yml.orig20190930 Normal file
View File

@ -0,0 +1,130 @@
language: cpp
sudo: true
os:
- linux
- osx
env:
global:
- POPPLER_NAME="poppler-0.63.0"
- POPPLER_SOURCE="https://gitlab.freedesktop.org/poppler/poppler.git"
- FONTFORGE_SOURCE="https://github.com/fontforge/fontforge.git"
- LIBUNINAMESLIST_SOURCE="https://github.com/fontforge/libuninameslist.git"
compiler: gcc
addons:
apt:
update: true
packages:
- build-essential
- autoconf
- gcc
- pkg-config
- git
- cmake
- ca-certificates
- libfreetype6-dev
# Poppler-specific packages
- libfontconfig1-dev
- libjpeg-dev
- libnss3-dev
# libuninameslist-specific packages
- automake
- libtool
# fontforge-specific packages
- libltdl-dev
- python-dev
- libglib2.0-dev
- libxml2-dev
- libspiro-dev
- gettext
# pdf2htmlEX-specific packages
- default-jre
- libcairo2-dev
- libpango1.0-dev
homebrew:
packages:
- autoconf
- pkg-config
- git
- cmake
- freetype
# Poppler-specific packages
- fontconfig
- jpeg
- nss
# libuninameslist-specific packages
- automake
- libtool
# fontforge-specific packages
- python
- glib
- xml2
- libspiro
- gettext
# pdf2htmlEX-specific packages
- cairo
- pango
sauce_connect: true
matrix:
fast_finish: true
allow_failures:
- os: osx # Until the build passes, then re-enable.
before_install:
# Clone and build poppler
- git clone ${POPPLER_SOURCE}
- cd poppler;
git checkout tags/${POPPLER_NAME} -b poppler-local;
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${TRAVIS_BUILD_DIR}/usr -DENABLE_XPDF_HEADERS=ON -DENABLE_LIBOPENJPEG=none .;
make;
make install
- cd ${TRAVIS_BUILD_DIR}
# Install libuninameslist
- git clone ${LIBUNINAMESLIST_SOURCE}
- cd libuninameslist;
git checkout tags/20180701 -b libuninameslist-local;
autoreconf -i;
automake;
./configure --prefix=${TRAVIS_BUILD_DIR}/usr;
make;
make install
- cd ${TRAVIS_BUILD_DIR}
# Install fontforge
- git clone ${FONTFORGE_SOURCE}
- cd fontforge;
git checkout tags/20170731 -b fontforge-local;
./bootstrap;
./configure --disable-programs --disable-python-extension --disable-python-scripting --prefix=${TRAVIS_BUILD_DIR}/usr;
make;
make install;
sudo ldconfig
- cd ${TRAVIS_BUILD_DIR}
# Test setup
- pip install --user Pillow selenium sauceclient
- export DISPLAY=:99.0
- test/start_xvfb.sh
- pushd /
- python -m SimpleHTTPServer 8000 >/dev/null 2>&1 &
- popd
- sleep 5
before_script:
- export LD_LIBRARY_PATH=${TRAVIS_BUILD_DIR}/usr/lib:$LD_LIBRARY_PATH
- export PKG_CONFIG_PATH=${TRAVIS_BUILD_DIR}/usr/lib/pkgconfig:$PKG_CONFIG_PATH
- patch < CMakeLists.txt.patch
- mkdir build && cd build && cmake -DENABLE_SVG=ON -DCMAKE_INSTALL_PREFIX=${TRAVIS_BUILD_DIR}/usr ..
script:
- make
- P2H_TEST_REMOTE=1 ctest --output-on-failure --verbose
- make install
- ${TRAVIS_BUILD_DIR}/usr/bin/pdf2htmlEX -v

25
.travisScripts/buildPoppler.sh Executable file
View File

@ -0,0 +1,25 @@
#!/bin/bash
# This bash script clones and builds the specified poppler release
# See: https://github.com/pdf2htmlEX/buildAndPackagingTools/blob/master/building/awsEC2/scripts/dobuildPoppler
# Clone and build poppler
git clone ${POPPLER_SOURCE}
cd poppler
git checkout tags/${POPPLER_RELEASE}
git branch
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr \
-DENABLE_XPDF_HEADERS=ON -DENABLE_LIBOPENJPEG=none ..
make

11
.travisScripts/copyScriptsToBin Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash
# This bash script copies the various scripts in the .travisScripts to the
# /home/travis/bin directory to ensure the current scripts are not lost
# when we checkout different versions of pdf2htmlEX
cp .travisScripts/* $HOME/bin
cp dobuild $HOME/bin
cp doinstall $HOME/bin

View File

@ -0,0 +1,28 @@
#!/bin/bash
# This bash scripts **installs** poppler
# See: https://github.com/pdf2htmlEX/buildAndPackagingTools/blob/master/building/awsEC2/scripts/doinstallPoppler
pushd poppler/build
sudo make install
popd
sudo mkdir -p /usr/include/poppler
sudo cp poppler/poppler/*.h /usr/include/poppler
sudo mkdir -p /usr/include/poppler/goo
sudo cp poppler/goo/*.h /usr/include/poppler/goo
sudo mkdir -p /usr/include/poppler/fofi
sudo cp poppler/fofi/*.h /usr/include/poppler/fofi
sudo mkdir -p /usr/include/poppler/splash
sudo cp poppler/splash/*.h /usr/include/poppler/splash
sudo cp poppler/build/poppler/poppler-config.h \
/usr/include/poppler

13
.travisScripts/setupTests.sh Executable file
View File

@ -0,0 +1,13 @@
#!/bin/bash
# This bash script sets up the test environment
# Test setup
pip install --user Pillow selenium sauceclient
export DISPLAY=:99.0
test/start_xvfb.sh
pushd /
python -m SimpleHTTPServer 8000 >/dev/null 2>&1 &
popd
sleep 5

View File

@ -1,8 +1,12 @@
#!/bin/bash
echo "This installation assumes you have 'sudo' privileges"
echo "Type ctrl-c now if DO NOT want to continue"
read -p "Type anything else to continue: "
if [[ $# -eq 0 ]] ; then
echo "This installation assumes you have 'sudo' privileges"
echo "Type ctrl-c now if DO NOT want to continue"
read -p "Type anything else to continue: "
fi
cd build
sudo make install