diff --git a/.travis.yml b/.travis.yml index 60e314a..ebedf85 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,12 @@ language: cpp -# for windows *test* of AppImage -# see https://docs.travis-ci.com/user/build-matrix/#using-different-programming-languages-per-job -# and https://discourse.appimage.org/t/run-appimage-on-windows/177 -# and https://docs.travis-ci.com/user/reference/windows/ -# why fuse is not possible on windows: https://superuser.com/questions/179436/is-it-possible-to-use-fuse-with-windows +# NOTE: Since we do not have direct access to either MacOS or Windows +# machines on which to develop WE DO NOT support building on MacOS or +# Windows. + +# For Windows, it is known that the more recent Windows 10 versions are +# able to use either the debian archive OR AppImage (as Windows 10 now +# allows FUSE). compiler: gcc @@ -12,56 +14,20 @@ branches: except: # do not build tags that we create using the upload.sh script - /^(?i:continuous.*)$/ -#matrix: -# fast_finish: true -# allow_failures: -# - os: osx # Until the build passes, then re-enable. - jobs: fast_finish: true include: -# - stage: build-linux -# os: linux + - stage: build-linux + os: linux # env: # global: DOCKER_FROM="ubuntu:18.04" # services: # - docker -# dist: bionic -# script: ./buildScripts/travisLinuxAptDoItAll - - stage: build-osx - os: - - osx - osx_image: xcode10.1 - addons: - homebrew: - update: true - packages: - # taken from getBuildToolsLinuxBrew - - git - - pkg-config - - ruby - - autoconf - - libtool - - cmake - - make - - gcc - - gettext - - openjdk - - jq - - tree - # taken from getDevLibrariesBrew - - cairo - - libpng - - jpeg - - libxml2 - script: - - ./buildScripts/travisHomeBrewDoItAll -# - pdf2htmlEX --version + dist: bionic + script: ./buildScripts/travisLinuxAptDoItAll # - stage: test # os: # - linux - #- osx - #- windows # script: ./testScripts/doItAllTravis #deploy: # provider: releases diff --git a/.travis.yml.macos.20200602 b/.travis.yml.macos.20200602 deleted file mode 100644 index fee06ac..0000000 --- a/.travis.yml.macos.20200602 +++ /dev/null @@ -1,111 +0,0 @@ -language: cpp - -sudo: true - -# for windows *test* of AppImage -# see https://docs.travis-ci.com/user/build-matrix/#using-different-programming-languages-per-job -# and https://discourse.appimage.org/t/run-appimage-on-windows/177 -# and https://docs.travis-ci.com/user/reference/windows/ -# why fuse is not possible on windows: https://superuser.com/questions/179436/is-it-possible-to-use-fuse-with-windows - -compiler: gcc - -branches: - except: # do not build tags that we create using the upload.sh script - - /^(?i:continuous.*)$/ - -# apt: -# update: true -# packages: -# # build tools -# - git -# - pkg-config -# - ruby -# - autoconf -# - libtool -# - cmake -# - make -# - gcc -# - g++ -# - gettext -# - openjdk-8-jre-headless -# - tree -# # dev libraries -# - libcairo-dev -# - libspiro-dev -# - libpng-dev -# - libjpeg-dev -# - poppler-data -# - libpango1.0-dev -# - liblcms2-dev -# - libxml2-dev -# - libuninameslist-dev -# homebrew: -# packages: -# - pdf2html-new -# - 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. - -jobs: - include: -# - stage: build-linux -# os: -# - linux -# env: -# global: -# - DOCKER_FROM="ubuntu:18.04" -# services: -# - docker -# dist: bionic -# script: ./buildScripts/travisLinuxAptDoItAll - - stage: build-osx - os: - - osx - osx_image: xcode10.1 - addons: - homebrew: - update: true - script: - - ./buildScripts/travisHomeBrewDoItAll - - pdf2htmlEX --version -# - stage: test -# os: -# - linux - #- osx - #- windows -# script: ./testScripts/doItAllTravis -#deploy: -# provider: releases -# api_key: -# secure: ALWKAkgeLSPS4ULyTtxU50ZmSICEafCirCQ1YmuVTqe9nrc8E9Jm+4QaBlab5k6v90EpzNvZBnMOiT8cT1Wp2lqJzcGdGMcG49mhRvirdYhXgWuHYnygVgkxEhgejXcQaEiaGPDV3Y1k9MuiAVr8ApjUvIMlY4Hg1y0r7/rqR2fYmen+f+6a87bp5PptwakC9bfoYb92651d0TbugFfKT6TGKlE2jGlQ6On1alzLQ2DXA8coUjwpp4NcDD8OhnYGN/VZWkqckaBrMrHwjJ5FTfy5MGBOqCLzNix8sCGLEeCKkKC8J0nniNJ7+KOu9LJ2uIezKYfaUOJV0kik7F9ErvxjbfSRieako2yaSOR8X39aicTtpbyoXPRSKDU4WYX56vt4Dx7aNrYtP5b/UwWGXZa9MK7rNGJ+hiMDO1AzuyXirzR4RaJXCyC8n5W9ahBZBHCMqd5gMg5sMGPNj3Rgt34+R+nGYssum5wvr+6IKNl57sIoZFCgqviBrw2gJOCqlgOcEk/4ZSehWnXPCk6Gzxvkqkt/dmp8pJLNyvMaWcEZ6CXNHDU8MZS7bASo8Z7eAYvmX0MMjVty8J47expVaJ8M3OFHu6lE6tU8wwfd+Igr2TlWcixqaa3hDMgS+ghwdiZbYuMdR1AyZnEqK3xwvXXPPXrqRsB9xHtczLibkjY= -# file: pdf2htmlEX-newBuildSystem-x86_64.AppImage -# skip_cleanup: true -# on: -# tags: true -# repo: stephengaito/pdf2htmlEX - diff --git a/.travis.yml.orig20190930 b/.travis.yml.orig20190930 deleted file mode 100644 index c48cdd9..0000000 --- a/.travis.yml.orig20190930 +++ /dev/null @@ -1,130 +0,0 @@ -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 diff --git a/.travisScripts/buildPoppler.sh b/.travisScripts/buildPoppler.sh deleted file mode 100755 index f0a0924..0000000 --- a/.travisScripts/buildPoppler.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/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 - - diff --git a/.travisScripts/copyScriptsToBin b/.travisScripts/copyScriptsToBin deleted file mode 100755 index ec882bd..0000000 --- a/.travisScripts/copyScriptsToBin +++ /dev/null @@ -1,11 +0,0 @@ -#!/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 - diff --git a/.travisScripts/installPoppler.sh b/.travisScripts/installPoppler.sh deleted file mode 100755 index 4d97481..0000000 --- a/.travisScripts/installPoppler.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/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 - - diff --git a/.travisScripts/setupTests.sh b/.travisScripts/setupTests.sh deleted file mode 100755 index 8c0eac1..0000000 --- a/.travisScripts/setupTests.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/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 - diff --git a/buildScripts/travisHomeBrewDoItAll b/buildScripts/travisHomeBrewDoItAll deleted file mode 100755 index 8c05c97..0000000 --- a/buildScripts/travisHomeBrewDoItAll +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -# This bash script builds everyting on an TravisCI Mac OSx worker - -# See: -# https://docs.travis-ci.com/user/installing-dependencies/#using-homebrew-without-addon-on-older-macos-images -# For details on obtaining/using the correct ruby version for homebrew. - -set -ev - -export UNATTENDED="--assume-yes" -export MAKE_PARALLEL="-j $(nproc)" - -export PDF2HTMLEX_BRANCH="$(git rev-parse --abbrev-ref HEAD)" - -./buildScripts/versionEnvs -./buildScripts/reportEnvs -#./buildScripts/getBuildToolsHomeBrew -#./buildScripts/getDevLibrariesBrew -./buildScripts/getPoppler -./buildScripts/buildPoppler -./buildScripts/getFontforge -./buildScripts/buildFontforge -./buildScripts/buildPdf2htmlEX -./buildScripts/installPdf2htmlEX -#./buildScripts/createAppImage -#./buildScripts/createDockerImage -#./buildScripts/uploadGitHubRelease -#./buildScripts/uploadDockerImage diff --git a/buildScripts/travisLinuxAptDoItAll b/buildScripts/travisLinuxAptDoItAll index 060ed49..5b1c5f2 100755 --- a/buildScripts/travisLinuxAptDoItAll +++ b/buildScripts/travisLinuxAptDoItAll @@ -9,6 +9,11 @@ export MAKE_PARALLEL="-j $(nproc)" export PDF2HTMLEX_BRANCH="$(git rev-parse --abbrev-ref HEAD)" +export PDF2HTMLEX_PREFIX=/usr/local + +################ +# do the build + ./buildScripts/versionEnvs ./buildScripts/reportEnvs ./buildScripts/getBuildToolsApt