Commits (161)
......@@ -25,4 +25,4 @@ appimage:linux:
artifacts:
expire_in: 14 days
paths:
- ./Scribus*.AppImage*
\ No newline at end of file
- ./Scribus*.AppImage*
......@@ -25,7 +25,7 @@ matrix:
before_install:
# Linux
- if [ $TRAVIS_OS_NAME == linux ]; then
sudo apt-add-repository ppa:beineri/opt-qt595-xenial -y;
sudo apt-add-repository ppa:beineri/opt-qt597-xenial -y;
sudo apt-add-repository ppa:as-bahanta/raqm -y;
sudo apt-add-repository ppa:ricotz/testing -y;
sudo apt-get update -qq;
......
......@@ -56,7 +56,10 @@ export TK_LIBRARY="${HERE}"/usr/share/tcltk/tk8.6:$TK_LIBRARY:$TCL_LIBRARY
# Make it look more native on Gtk+ based systems
############################################################################################
export QT_QPA_PLATFORMTHEME=gtk2
case "${XDG_CURRENT_DESKTOP}" in
*GNOME*|*gnome*)
export QT_QPA_PLATFORMTHEME=gtk2
esac
############################################################################################
# Run experimental bundle that bundles everything if a private ld-linux-x86-64.so.2 is there
......
......@@ -2,23 +2,12 @@
cat /proc/1/cgroup # Check if we run in Docker; https://github.com/AppImage/AppImageKit/issues/912
# for docker images:
# if qt is not in the standard path, load its environment variables
. /opt/qt*/bin/qt*-env.sh || true
########################################################################
# Build Plaform Theme for Gtk+
########################################################################
find /opt/qt*/| grep platform
#apt-get update
#apt-get -y install libgtk-3-dev libnotify-dev qt5113d
#git clone https://github.com/CrimsonAS/gtkplatform
#cd gtkplatform
#qmake
#make -j$(nproc)
#sudo make install
#cd -
########################################################################
# https://askubuntu.com/a/910143
# https://askubuntu.com/a/748186
# Deploy with linuxdeployqt using
......@@ -37,12 +26,32 @@ cd -
# Build Scribus and install to appdir/
########################################################################
cmake . -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_INSTALL_PREFIX=/usr -DWANT_HUNSPELL=1 -DWITH_PODOFO=1 -DWANT_GRAPHICSMAGICK=1 -DWANT_DEBUG=0 -DWANT_SVNVERSION=0 -DWANT_GUI_LANG=en_US
# Needed for CI with Ubuntu 16.04 LTS; don't do this on other systems
# wget "https://github.com/Kitware/CMake/releases/download/v3.13.2/cmake-3.13.2-Linux-x86_64.tar.gz"
# tar xf cmake*.tar.gz --strip-components=1 -C /usr
cmake . -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWANT_RELOCATABLE=1 \
-DWANT_HUNSPELL=1 \
-DWITH_PODOFO=1 \
-DWANT_GRAPHICSMAGICK=1 \
-DWANT_DEBUG=0 \
-DWANT_SVNVERSION=0
make -j$(nproc)
make DESTDIR=appdir -j$(nproc) install ; find appdir/
cp AppImage-package/AppRun appdir/ ; chmod +x appdir/AppRun
make DESTDIR=appdir -j$(nproc) install
#find appdir/
# TODO: make sure that the appdir directory exits
cp AppImage-package/AppRun appdir/
chmod +x appdir/AppRun
cp ./appdir/usr/share/icons/hicolor/256x256/apps/scribus.png ./appdir/
sed -i -e 's|^Icon=.*|Icon=scribus|g' ./appdir/usr/share/applications/scribus.desktop # Needed?
# TODO: is this needed?
sed -i -e 's|^Icon=.*|Icon=scribus|g' ./appdir/usr/share/applications/scribus.desktop
########################################################################
# Bundle everyhting
......@@ -72,13 +81,17 @@ rm *deb
cd -
########################################################################
# Patch away absolute paths
# FIXME: It would be nice if they were relative
# Work around side effect of bundling everything
########################################################################
sed -i -e 's|/usr/share/scribus|././/share/scribus|g' appdir/usr/bin/scribus
sed -i -e 's|/usr/lib/scribus|././/lib/scribus|g' appdir/usr/bin/scribus
sed -i -e 's|/usr/share/doc/scribus/|././/share/doc/scribus/|g' appdir/usr/bin/scribus
# https://github.com/scribusproject/scribus/issues/111#issuecomment-457823282
# applicationDirPath() is not usr/bin but lib/x86_64-linux-gnu/
# when AppRun invokes the binary with
# exec "${HERE}/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2" --inhibit-cache --library-path "${LIBRARY_PATH}" "${MAIN}" "$@"
# hence we add a symlink here to mitigate this
cd appdir/lib/
ln -s ../usr/* .
cd -
########################################################################
# Also bundle Tcl/Tk, Tkinter (for Calendar script)
......@@ -90,7 +103,8 @@ cp -r /usr/lib/tcltk appdir/usr/lib/
cp -r /usr/share/tcltk appdir/usr/share/
########################################################################
# Create extra qt.conf in a strange location; FIXME: why is this needed?
# Create extra qt.conf in a strange location;
# FIXME: why is this needed?
########################################################################
mkdir -p appdir/lib/x86_64-linux-gnu/
......@@ -107,9 +121,11 @@ EOF
# Generate AppImage
########################################################################
export VERSION=master
# Finalize AppDir but do not turn into AppImage just yet
wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
chmod a+x linuxdeployqt-continuous-x86_64.AppImage
ARCH=x86_64 ./linuxdeployqt-continuous-x86_64.AppImage --appimage-extract-and-run appdir/usr/share/applications/scribus.desktop \
-appimage -unsupported-bundle-everything \
-executable=appdir/usr/bin/python2.7 -executable=appdir/usr/_tkinter.so -extra-plugins=platformthemes/libqgtk2.so,styles/libqgtk2style.so
\ No newline at end of file
-executable=appdir/usr/bin/python2.7 -executable=appdir/usr/_tkinter.so -extra-plugins=platformthemes/libqgtk2.so,styles/libqgtk2style.so
This diff is collapsed.
if(APPLE_10_15_X)
set(OSXMINVER "10.15" CACHE STRING "OSX 10.15")
if (WANT_OSX_SDK)
if(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk")
elseif(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk")
endif()
endif()
endif()
if(APPLE_10_14_X)
set(OSXMINVER "10.14" CACHE STRING "OSX 10.14")
if (WANT_OSX_SDK)
if(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk")
elseif(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk")
endif()
endif()
endif()
if(APPLE_10_13_X)
set(OSXMINVER "10.13" CACHE STRING "OSX 10.13")
if (WANT_OSX_SDK)
if(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk")
elseif(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk")
endif()
endif()
endif()
if(APPLE_10_12_X)
set(OSXMINVER "10.12" CACHE STRING "OSX 10.12")
if (WANT_OSX_SDK)
if(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk")
elseif(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk")
endif()
endif()
endif()
if(APPLE_10_11_X)
set(OSXMINVER "10.11" CACHE STRING "OSX 10.11")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk")
endif()
endif()
if(APPLE_10_10_X)
set(OSXMINVER "10.10" CACHE STRING "OSX 10.10")
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.10")
if (WANT_OSX_SDK)
if(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk")
elseif(EXISTS("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk"))
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk")
endif()
endif()
endif()
if(APPLE_10_9_X)
set(OSXMINVER "10.9" CACHE STRING "OSX 10.9")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk")
endif()
endif()
if(APPLE_10_8_X)
set(OSXMINVER "10.8" CACHE STRING "OSX 10.8")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk")
endif()
endif()
if(APPLE_10_7_X)
set(OSXMINVER "10.7" CACHE STRING "OSX 10.7")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk")
endif()
endif()
if(APPLE_10_6_X)
set(OSXMINVER "10.6" CACHE STRING "OSX 10.6")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk")
endif()
endif()
if(APPLE_10_5_X)
set(OSXMINVER "10.5" CACHE STRING "OSX 10.5")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.5.sdk")
endif()
endif()
if(APPLE_10_4_X)
set(OSXMINVER "10.4" CACHE STRING "OSX 10.4")
if (WANT_OSX_SDK)
set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk")
endif()
endif()
# gcc/mac
if(WANT_UNIVERSAL_BUNDLE)
message(STATUS "Setting Universal (PPC/i386) Architecture for OSX Build/Bundle")
set(CMAKE_OSX_ARCHITECTURES "ppc;i386" )
set(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc;i386" )
if (WANT_OSX_SDK)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.4")
endif()
else()
if(ARCH_PPC OR ARCH_PPC_64)
message(STATUS "Setting PPC Architecture for OSX Build/Bundle")
set(CMAKE_OSX_ARCHITECTURES "ppc" )
set(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc" )
else()
if (WANT_OSX_SDK)
set(CMAKE_OSX_DEPLOYMENT_TARGET "${OSXMINVER}")
endif()
if(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X OR APPLE_10_11_X OR APPLE_10_12_X OR APPLE_10_13_X OR APPLE_10_14_X OR APPLE_10_15_X)
message(STATUS "Setting x86_64 Architecture for OSX Build/Bundle")
set(CMAKE_OSX_ARCHITECTURES "x86_64" )
set(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "x86_64" )
else()
message(STATUS "Setting i386 Architecture for OSX Build/Bundle")
set(CMAKE_OSX_ARCHITECTURES "i386" )
set(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "i386" )
endif()
endif()
endif()
message(STATUS "Apple Architecture: ${CMAKE_OSX_ARCHITECTURES}")
message(STATUS "Apple SDK: ${CMAKE_OSX_SYSROOT}")
set(ENV{MACOSX_DEPLOYMENT_TARGET} ${OSXMINVER} )
set(ENV{LD_PREBIND} 1 )
set(ENV{LD_PREBIND_ALLOW_OVERLAP} 1 )
if (WANT_DEBUG)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -g -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -g -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
endif()
if (WANT_RELEASEWITHDEBUG)
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O2 -g -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O2 -g -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
endif()
if (NOT WANT_DEBUG AND NOT WANT_RELEASEWITHDEBUG)
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}")
endif()
##############################################################################################################
########## Find Dependencies ##########
#<< Qt
set(QT_MIN_VERSION "5.7.0")
set(CMAKE_PREFIX_PATH "${QT_PREFIX}/lib/cmake")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Qt5Core ${QT_MIN_VERSION} REQUIRED)
if(Qt5Core_FOUND)
message(STATUS "----- USE QT 5-----")
else()
message(FATAL_ERROR "ERROR: No QT 5 found")
endif()
find_package(Qt5Widgets ${QT_MIN_VERSION} REQUIRED)
if(Qt5Widgets_FOUND)
message(STATUS "----- USE QT Widgets-----")
else()
message(FATAL_ERROR "ERROR: No QT Widgets found")
endif()
find_package(Qt5Gui ${QT_MIN_VERSION} REQUIRED)
if(Qt5Gui_FOUND)
message(STATUS "----- USE Qt5Gui -----")
else()
message(FATAL_ERROR "ERROR: Qt5Gui found")
endif()
find_package(Qt5Xml ${QT_MIN_VERSION} REQUIRED)
if(Qt5Xml_FOUND)
message(STATUS "----- USE QT 5 XML -----")
else()
message(FATAL_ERROR "ERROR: No QT 5 XML found")
endif()
find_package(Qt5Network ${QT_MIN_VERSION} REQUIRED)
if(Qt5Network_FOUND)
message(STATUS "----- USE Qt5Network -----")
else()
message(FATAL_ERROR "ERROR: No Qt5Network found")
endif()
find_package(Qt5OpenGL ${QT_MIN_VERSION} REQUIRED)
if(Qt5OpenGL_FOUND)
message(STATUS "----- USE Qt5OpenGL -----")
else()
message(FATAL_ERROR "ERROR: No Qt5OpenGL found")
endif()
find_package(Qt5LinguistTools ${QT_MIN_VERSION} REQUIRED)
if(Qt5LinguistTools_FOUND)
message(STATUS "----- USE Qt5LinguistTools -----")
else()
message(FATAL_ERROR "ERROR: No Qt5LinguistTools found")
endif()
#find_package(Qt5Quick ${QT_MIN_VERSION} REQUIRED)
#if(Qt5Quick_FOUND)
# message(STATUS "----- USE Qt5Quick -----")
#else()
# message(FATAL_ERROR "ERROR: No Qt5Quick found")
#endif()
find_package(Qt5PrintSupport ${QT_MIN_VERSION} REQUIRED)
if(Qt5PrintSupport_FOUND)
message(STATUS "----- USE Qt5PrintSupport -----")
else()
message(FATAL_ERROR "ERROR: No Qt5PrintSupport found")
endif()
include_directories(${Qt5Core_INCLUDE_DIRS})
add_definitions(${Qt5Core_DEFINITIONS})
include_directories(${Qt5Widgets_INCLUDE_DIRS})
add_definitions(${Qt5Widgets_DEFINITIONS})
include_directories(${Qt5Gui_INCLUDE_DIRS})
add_definitions(${Qt5Gui_DEFINITIONS})
include_directories(${Qt5Xml_INCLUDE_DIRS})
add_definitions(${Qt5Xml_DEFINITIONS})
include_directories(${Qt5Network_INCLUDE_DIRS})
add_definitions(${Qt5Network_DEFINITIONS})
include_directories(${Qt5OpenGL_INCLUDE_DIRS})
add_definitions(${Qt5OpenGL_DEFINITIONS})
#include_directories(${Qt5Quick_INCLUDE_DIRS})
#add_definitions(${Qt5Quick_DEFINITIONS})
include_directories(${Qt5PrintSupport_INCLUDE_DIRS})
add_definitions(${Qt5PrintSupport_DEFINITIONS})
message(STATUS "Qt VERSION: ${Qt5Widgets_VERSION}")
#if (NOT WANT_CPP11 AND Qt5Widgets_VERSION_MAJOR EQUAL 5 AND Qt5Widgets_VERSION_MINOR GREATER 6)
# message(STATUS "Your Qt version is 5.7.0 or superior, enabling C++11 compiler features")
# set(WANT_CPP11 ON)
#endif()
#>> Qt
#<< ZLIB, PNG
if (WIN32)
# On win32 we can use Qt's zlib and libpng, so we use some
# custom cmake includes. This permits us to honour the
# USE_QT_ZLIB_PNGLIB flag if passed.
set(PNG_DIR ${CMAKE_MODULE_PATH})
set(ZLIB_DIR ${CMAKE_MODULE_PATH})
endif()
find_package(ZLIB REQUIRED)
if (ZLIB_FOUND)
message("ZLIB Library Found OK")
set(HAVE_LIBZ ON)
endif()
#find_package(PNG REQUIRED)
#if (PNG_FOUND)
# message("PNG Library Found OK")
#endif()
#>> ZLIB, PNG
if (WANT_NOOSG)
message("Building without 3D Extension")
else()
find_package(OSG)
if(OSG_FOUND)
message("OSG found OK")
set(HAVE_OSG ON)
find_package(OpenGL)
include(CheckFunctionExists)
CHECK_FUNCTION_EXISTS(memrchr HAVE_MEMRCHR)
else()
message("No OSG found, building without 3D Extension")
endif()
endif()
#<< JPEG, TIFF
find_package(JPEG REQUIRED)
if (JPEG_FOUND)
message("JPEG Library Found OK")
endif()
find_package(TIFF REQUIRED)
if (TIFF_FOUND)
message("TIFF Library Found OK")
set(HAVE_TIFF ON)
else()
message(FATAL_ERROR "Could not find the TIFF Library")
endif()
#<< JPEG, TIFF
#<< PYTHON
#
#find_package(PythonInterp 2)
#find_package(PythonLibs 2 REQUIRED)
#if (PYTHON_LIBRARY)
# message("Python Library Found OK")
# set(HAVE_PYTHON ON)
# set(COMPILE_PYTHON ON)
#endif()
#
find_package (Python2 REQUIRED COMPONENTS Interpreter Development)
if (Python2_Development_FOUND)
message("Python Library Found OK")
set(HAVE_PYTHON ON)
set(COMPILE_PYTHON ON)
endif()
#>> PYTHON
#<< FreeType2
find_package(Freetype REQUIRED)
if (FREETYPE_FOUND)
message(STATUS "FreeType2 Library Found OK")
include(CheckLibraryExists)
CHECK_LIBRARY_EXISTS(${FREETYPE_LIBRARY} FT_Get_First_Char "" HAVE_FREETYPE_FIRST)
CHECK_LIBRARY_EXISTS(${FREETYPE_LIBRARY} FT_Get_Next_Char "" HAVE_FREETYPE_NEXT)
# here we have an alternative
# a) Setup CFLAGS with the FREETYPE_INCLUDE_DIR_freetype2 provided by cmake
# b) Insert ${FREETYPE_INCLUDE_DIRS} in include sections of CMakeLists that need it
# I prefer (b) and at some point & from my opinion it should be just needed in scribus/fonts/CmakeLists.txt - pm
else()
message(FATAL_ERROR "No Freetype Found")
endif()
#>> FreeType2
#<<Render Library
if (WANT_PRIVATE_CAIRO)
message("We no longer support the private cairo library as the latest public release is more up to date, setting WANT_SYSTEM_CAIRO=1")
endif()
if (RENDER_LIB)
if (RENDER_LIB STREQUAL "QTARTHUR")
message("Qt4's Arthur as renderer is not supported anymore, performing renderer detection again")
endif()
endif()
set(CAIRO_DIR ${CMAKE_MODULE_PATH})
find_package(CAIRO REQUIRED)
if(CAIRO_FOUND)
message("CAIRO Library Found OK")
set(RENDER_LIB "CAIRO_SYSTEM" CACHE STRING "Set render library to cairo")
else()
message(FATAL_ERROR "No Cairo Found")
endif()
#>>Render Library
#<<CUPS
if(NOT WIN32 AND NOT HAIKU)
find_package(Cups REQUIRED)
if(CUPS_FOUND)
set(HAVE_CUPS ON)
message("CUPS Library Found OK")
endif()
else()
# Windows doesn't use CUPS
set(CUPS_INCLUDE_DIR)
endif()
#>>CUPS
#<<LibXML2
find_package(LibXml2 REQUIRED)
if(LIBXML2_FOUND)
set(HAVE_XML ON)
message("LIBXML2 Library Found OK")
endif()
#>>LibXML2
#<<LittleCMS
set(LCMS_DIR ${CMAKE_MODULE_PATH})
find_package(LCMS2 REQUIRED)
if(LCMS2_FOUND)
set(HAVE_LCMS2 ON)
set(HAVE_CMS ON)
set(CMS_INC "\"lcms2.h\"")
message("LittleCMS-2 Library Found OK")
else()
message(FATAL_ERROR "Could not find the LittleCMS 2 Library")
endif()
#>>LittleCMS
#<<FontConfig
if(NOT WIN32)
set(FONTCONFIG_DIR ${CMAKE_MODULE_PATH})
find_package(FONTCONFIG)
if(FONTCONFIG_FOUND)
message("FontConfig Found OK")
set(HAVE_FONTCONFIG ON)
endif()
else()
# Windows builds neither use nor require fontconfig
set(FONTCONFIG_INCLUDE_DIR)
endif()
#>>FontConfig
#<<HUNSPELL for Speelling support
option(WANT_HUNSPELL "Enable support for spell checking with hunspell" ON)
if (WANT_HUNSPELL)
find_package(HUNSPELL)
if (HUNSPELL_FOUND)
message("Hunspell Found OK")
set(HAVE_HUNSPELL ON)
else()
message("Hunspell or its developer libraries NOT found - Disabling support for spell checking")
endif()
endif()
#>>HUNSPELL for Speelling support
#<<PoDoFo for AI PDF import
option(WITH_PODOFO "Enable support for PDF embedded in AI" ON)
if (WITH_PODOFO)
find_package(LIBPODOFO)
if (LIBPODOFO_FOUND)
message("PoDoFo found OK")
set(HAVE_PODOFO ON)
else()
message("PoDoFo NOT found - Disabling support for PDF embedded in AI")
endif()
endif()
#>>PoDoFo for AI PDF import
#<<Boost for 2Geom Tools
option(WITH_BOOST "Enable support for Boost based enhancements" ON)
if (WITH_BOOST)
find_package(Boost)
if (Boost_FOUND)
message("Boost Library Found OK")
set(HAVE_BOOST ON)
else()
message("Boost: NOT FOUND, not building 2geomtools")
endif()
endif()
#>>Boost for 2Geom Tools
#<< GraphicsMagick for image import
if (WANT_GRAPHICSMAGICK)
set(GMAGICK_DIR ${CMAKE_MODULE_PATH})
pkg_check_modules(GMAGICK GraphicsMagick)
# find_package(GMAGICK)
if(GMAGICK_FOUND)
message(" GraphicsMagick Found OK")
else()
message(" GraphicsMagick NOT found! Building without additional image format support!")
endif()
else()
message("Building without GraphicsMagick (use -DWANT_GRAPHICSMAGICK=1 to enable)")
endif()
#>> GraphicsMagick for image import
#<<Poppler for PDF import
find_package(POPPLER REQUIRED)
if (POPPLER_FOUND)
set(HAVE_POPPLER ON)
message(STATUS "Found poppler")
message(STATUS "Found poppler libs: ${POPPLER_LIBRARY}")
message(STATUS "Found poppler includes: ${POPPLER_INCLUDE_DIR}")
else()
message(FATAL_ERROR "Could not find poppler library")
endif()
#>>Poppler for PDF import
# librevenge for MsPub import
pkg_check_modules(LIBREVENGE librevenge-0.0)
if (LIBREVENGE_FOUND)
pkg_check_modules(LIBREVENGE_STREAM librevenge-stream-0.0)
if (LIBREVENGE_STREAM_FOUND)
pkg_check_modules(LIBREVENGE_GENERATORS librevenge-generators-0.0)
if (LIBREVENGE_GENERATORS_FOUND)
set(HAVE_REVENGE ON)
endif()
endif()
endif()
# CTL support
pkg_check_modules(HARFBUZZ REQUIRED harfbuzz>=0.9.42 harfbuzz-icu)
pkg_check_modules(ICU REQUIRED icu-uc)
##############################################################################################################
########## Install/Directory Setup ##########
if (APPLEBUNDLE)
set (APPLE_APP_DIR "${CMAKE_INSTALL_PREFIX}")
if ("${CMAKE_INSTALL_PREFIX}" MATCHES "[.]app/Contents/?$")
# all ok
else()
if ("${CMAKE_INSTALL_PREFIX}" MATCHES "[.]app/?$")
# add "/Contents" subpath
set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Contents")
else()
# no bundle name specified, use appname and version
set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Scribus${VERSION}.app/Contents")
endif()
endif()
message(STATUS "APPLEBUNDLE install prefix: ${APPLE_APP_DIR}")
endif()
#Setup all the directories we will use
#cmake_policy(SET CMP0005 OLD)
#SHARE
if(WANT_VERSIONING)
set(SHAREDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/")
else()
set(SHAREDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}/")
endif()
if(IS_ABSOLUTE ${SHAREDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: SHAREDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${SHAREDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DSHAREDIR="${CMAKE_INSTALL_PREFIX}/${SHAREDIR}")
else()
add_definitions(-DSHAREDIR="${SHAREDIR}")
endif()
#SHARE - use the default on Apple as TAG_VERSION is empty
if(WIN32 OR OS2)
set(DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/")
elseif(TAG_VERSION OR BUILD_OSX_BUNDLE)
set(DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${MAIN_DIR_NAME}${TAG_VERSION}/")
elseif(NOT WANT_VERSIONING)
set(DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${MAIN_DIR_NAME}/")
else()
set(DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${MAIN_DIR_NAME}-${VERSION}/")
endif()
if(IS_ABSOLUTE ${DOCDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: DOCDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${DOCDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DDOCDIR="${CMAKE_INSTALL_PREFIX}/${DOCDIR}")
else()
add_definitions(-DDOCDIR="${DOCDIR}")
endif()
#ICONS
if(WIN32)
set(ICONDIR "${CMAKE_INSTALL_DATAROOTDIR}/icons/")
else()
set(ICONDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/icons/")
endif()
if(IS_ABSOLUTE ${ICONDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: ICONDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${ICONDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DICONDIR="${CMAKE_INSTALL_PREFIX}/${ICONDIR}")
else()
add_definitions(-DICONDIR="${ICONDIR}")
endif()
#SAMPLES
if(WIN32)
set(SAMPLESDIR "${CMAKE_INSTALL_DATAROOTDIR}/samples/")
else()
set(SAMPLESDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/samples/")
endif()
if(IS_ABSOLUTE ${SAMPLESDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: SAMPLESDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${SAMPLESDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DSAMPLESDIR="${CMAKE_INSTALL_PREFIX}/${SAMPLESDIR}")
else()
add_definitions(-DSAMPLESDIR="${SAMPLESDIR}")
endif()
#SCRIPTS
if(WIN32)
set(SCRIPTSDIR "${CMAKE_INSTALL_DATAROOTDIR}/scripts/")
else()
set(SCRIPTSDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/scripts/")
endif()
if(IS_ABSOLUTE ${SCRIPTSDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: SCRIPTSDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${SCRIPTSDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DSCRIPTSDIR="${CMAKE_INSTALL_PREFIX}/${SCRIPTSDIR}")
else()
add_definitions(-DSCRIPTSDIR="${SCRIPTSDIR}")
endif()
#TEMPLATES
if(WIN32)
set(TEMPLATEDIR "${CMAKE_INSTALL_DATAROOTDIR}/templates/")
else()
set(TEMPLATEDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/templates/")
endif()
if(IS_ABSOLUTE ${TEMPLATEDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: TEMPLATEDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${TEMPLATEDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DTEMPLATEDIR="${CMAKE_INSTALL_PREFIX}/${TEMPLATEDIR}")
else()
add_definitions(-DTEMPLATEDIR="${TEMPLATEDIR}")
endif()
#QML
if(WIN32)
set(QMLDIR "${CMAKE_INSTALL_DATAROOTDIR}/qml/")
else()
set(QMLDIR "${CMAKE_INSTALL_DATAROOTDIR}/${MAIN_DIR_NAME}${TAG_VERSION}/qml/")
endif()
if(IS_ABSOLUTE ${QMLDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: QMLDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${QMLDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DQMLDIR="${CMAKE_INSTALL_PREFIX}/${QMLDIR}")
else()
add_definitions(-DQMLDIR="${QMLDIR}")
endif()
#DESKTOP
set(DESKTOPDIR "${CMAKE_INSTALL_DATAROOTDIR}/applications/")
if(IS_ABSOLUTE ${DESKTOPDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: DESKTOPDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${DESKTOPDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DDESKTOPDIR="${CMAKE_INSTALL_PREFIX}/${DESKTOPDIR}")
else()
add_definitions(-DDESKTOPDIR="${DESKTOPDIR}")
endif()
#APPDATA
set(APPDATADIR "${CMAKE_INSTALL_DATAROOTDIR}/metainfo/")
if(IS_ABSOLUTE ${APPDATADIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: APPDATADIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${APPDATADIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DAPPDATADIR="${CMAKE_INSTALL_PREFIX}/${APPDATADIR}")
else()
add_definitions(-DAPPDATADIR="${APPDATADIR}")
endif()
# APPLICATION_DATA_DIR
# It allows specify the user configuration directory in the compile time.
# Example: I want to use special ~/.scribus135svn config directory for my trunk
# cmake -DAPPLICATION_DATA_DIR=.scribus135svn ...
if (APPLICATION_DATA_DIR)
message(STATUS "Using ApplicationDataDir ${APPLICATION_DATA_DIR} instead of the platform default.")
add_definitions(-DAPPLICATION_DATA_DIR="${APPLICATION_DATA_DIR}")
else()
message(STATUS "Using standard ApplicationDataDir. You can change it with -DAPPLICATION_DATA_DIR")
endif()
if (APPLICATION_CONFIG_DIR)
message(STATUS "Using ApplicationConfigDir ${APPLICATION_CONFIG_DIR} instead of the platform default.")
add_definitions(-DAPPLICATION_CONFIG_DIR="${APPLICATION_CONFIG_DIR}")
else()
message(STATUS "Using standard ApplicationConfigDir. You can change it with -DAPPLICATION_CONFIG_DIR")
endif()
#LIB LOCATION - lib or lib64 normally
#LIB
if(WANT_LIB64)
if(NOT ARCH_X86_64)
message(STATUS "WARNING: BUILDING 64 Bit build on non 64 bit architecture")
endif()
set(LIB_SUFFIX "64" CACHE STRING "Library directory suffix")
endif()
set(LIB_DIR_NAME "lib${LIB_SUFFIX}")
if (APPLEBUNDLE)
set(LIBDIR "lib/")
else()
set(LIBDIR "${LIB_DIR_NAME}/${MAIN_DIR_NAME}${TAG_VERSION}/")
endif()
if(IS_ABSOLUTE ${LIBDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: LIBDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${LIBDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DLIBDIR="${CMAKE_INSTALL_PREFIX}/${LIBDIR}")
else()
add_definitions(-DLIBDIR="${LIBDIR}")
endif()
#PLUGINS
if(WIN32)
set(PLUGINDIR "plugins")
elseif (APPLEBUNDLE)
set(PLUGINDIR "${LIBDIR}")
else()
set(PLUGINDIR "${LIB_DIR_NAME}/${MAIN_DIR_NAME}${TAG_VERSION}/plugins/")
endif()
if(IS_ABSOLUTE ${PLUGINDIR} AND WANT_RELOCATABLE)
message(FATAL_ERROR "ERROR: PLUGINDIR must be relative when using WANT_RELOCATABLE option")
elseif(NOT IS_ABSOLUTE ${PLUGINDIR} AND NOT WANT_RELOCATABLE)
add_definitions(-DPLUGINDIR="${CMAKE_INSTALL_PREFIX}/${PLUGINDIR}")
else()
add_definitions(-DPLUGINDIR="${PLUGINDIR}")
endif()
#INCLUDE
set(INCLUDEDIR "include/${MAIN_DIR_NAME}${TAG_VERSION}/")
#NO ADD DEFINITIONS, WE ONLY INSTALL WITH IT
#RPATH
if (WANT_NORPATH OR WANT_DISTROBUILD)
set(CMAKE_INSTALL_RPATH "")
else()
set(CMAKE_INSTALL_RPATH ${PLUGINDIR})
endif()
# Set the XDG mime stuff
set(MIMEDIR "${CMAKE_INSTALL_DATAROOTDIR}/mime/packages/")
Scribus - 1.5.5 (Released 2018-xx-xx)
Scribus - 1.5.6 (Released 2019-xx-xx)
=========================================
 
Scribus - 1.5.5 (Released 2019-07-31)
=========================================
0015747: [Import / Export] Image's transparency is positioned differently in PDF export (jghali)
0015736: [Typography] Modifying character horizontal scale produces bad result on Malayalam text (jghali)
0015731: [Build System] Build error in revision 23064 (jghali)
0015728: [Build System] AppImage's bundle.sh: remove -DWANT_GUI_LANG cmake options (jghali)
0015723: [Build System] Small typo in the main CMakeLists.txt (jghali)
0015720: [Scrapbook] Small improvement to scrapbook initialization (jghali)
0015719: [User Interface] Keyboard shortcuts for copy/paste/delete content don't work (jghali)
0015718: [Story Editor / Text Frames] Text layout not updated when flow around shape stop overlapping text frame (jghali)
0015715: [Typography] When changing sections, page numbers on regular pages are not updated immediately (jghali)
0015709: [Build System] Missing docstring in cmake set command (jghali)
0015705: [Usability] Text color combos show wrong value (jghali)
0015703: [Usability] "None" color value is R:153, G:102, B:51 (jghali)
0015700: [Internal] Conditional jump or move depends on uninitialised value(s) in PageItem::setLineEnd on importing from PDF. (jghali)
0015696: [Translation] Croatian update for scribus-short-words.rc (jghali)
0015690: [Color Management] Replace Color function skips paragraph background color (jghali)
0015685: [Graphics / Image Frames] Multi-step gradient incorrectly imported from PDF (jghali)
0015675: [Import / Export] Wrong color used on svg import (jghali)
0015671: [Build System] Improve AppImage build by allowing relative paths to resource directories (jghali)
0015670: [PDF] PDF Link annotations not updated when inserting/removing pages (jghali)
0015666: [Internal] Fix build with poppler-0.76 (jghali)
0015664: [Language Tools] Support Hebrew numbering system (jghali)
0015663: [Translation] croatian translation (cbradney)
0015660: [User Interface] Reorder Space glyphs (cbradney)
0015655: [General] tooltip length (cbradney)
0015654: [General] Incorrect ordering of language list in Preference's document setup options (jghali)
0015650: [General] Footnote frame incorrectly sized when re-opening document (jghali)
0015648: [General] Crash when loading document containing footnotes (jghali)
0015646: [Internal] remove ScribusDoc::CurrentSel: it's not used (jghali)
0015645: [Translation] Non translatable strings in Picture Browser (jghali)
0015644: [User Interface] Use "Apply" and "Remove" for the buttons in the Image Effects tool (cbradney)
0015638: [Build System] Missing dll in 1.5.5.svn snapshot from 07/04/19 (jghali)
0015631: [Internal] make StyleSet::getDefault() const (jghali)
0015630: [Scripter] Document scripter's getCharStyles() (jghali)
0015629: [Scripter] Calling createCharStyle() with no arguments creates a style with a font size of 200 pt (jghali)
0015616: [Import / Export] After importing PDF created by imagemagick, scribus saves corrupt .sla files (jghali)
0015614: [Shape Drawing] path tools > subtract does not work correctly (jghali)
0015612: [General] Pasting several objects changes z-index (jghali)
0015611: [Shape Drawing] Deleting shape point triggers crash (jghali)
0015604: [Undo/Redo] wrong undo when resizing multiple items (jghali)
0015603: [User Interface] Image rotation increment down button doesn't go below zero (or wrap to 360) (jghali)
0015601: [Story Editor / Text Frames] Last line of text frame appears duplicated at the beginning of next linked text frame (jghali)
0015597: [Graphics / Image Frames] crash when inserting a glyph... in an image frame (jghali)
0015596: [Internal] remove the global variable ScMW (jghali)
0015594: [Graphics / Image Frames] Copy-pasting image may change image offset (jghali)
0015589: [Internal] Remove old PrefsPanel API (jghali)
0015585: [Graphics / Image Frames] Enable toolsEditContents action also when image is set to scale to frame (jghali)
0015583: [General] Clicking "ok" in the preferences calls "Prefs_Scripter::apply()" two times (jghali)
0015578: [Language Tools] Cannot install Swedish spelling dictionary (jghali)
0015576: [General] scripter's setProperty() works only with two possible values of 'startArrowIndex' and 'endArrowIndex' (jghali)
0015565: [Import / Export] PDF is wrongly imported : page twice as large as it should (jghali)
0015564: [Guides] Wrong color of guides inserted from guide manager colum/row tab (jghali)
0015563: [Canvas] Add shift modifier to resize gesture (jghali)
0015562: [Fonts] Fonts installed by user are not found by scribus on Windows 10 1809 (jghali)
0015557: [Build System] update the appimage config for gitlab (jghali)
0015554: [Canvas] Fix shift selection mode for multiple selection (jghali)
0015552: [Usability] Add possibility to search through scribus actions (ale)
0015550: [Fonts] Add a tab to Preferences > Fonts with the rejected fonts (jghali)
0015549: [Internal] Typo in propertiespalette.cpp: xyzPal, not imagePal (jghali)
0015546: [Plug-ins] cannot add plugins to some of the menus (jghali)
0015543: [Templates] Prices on Menükarte template disappear (jghali)
0015537: [Build System] changes in poppler 0.73.0 cause build failure (jghali)
0015534: [User Interface] Deleting guides in Page -> Manage guides broken when rulers not relative to page (jghali)
0015532: [Master Pages] SVG imported into masterpage shows "out of bounds" in pre flight (jghali)
0015527: [Usability] Page jumps when trying to edit an object (jghali)
0015516: [Build System] changes in poppler 0.72.0 cause build failure (jghali)
0015512: [Usability] Moving control points when editing shape crashes Scribus (jghali)
0015509: [Scripter] puzzling definition of scripter getTextColor() function (jghali)
0015508: [Scripter] getTextColor / getLineColor mixup in the scripter documentation (jghali)
0015498: [Import / Export] Document crashes Scribus upon export to pdf (jghali)
0015495: [Printing] Print Preview is blank (jghali)
0015489: [Scripter] scriptplugin: Add combinePolygons to API (jghali)
0015485: [Scripter] add getImageColorSpace python function (jghali)
0015483: [Scripter] add setJSActionScript and getJSActionScript python functions (jghali)
0015482: [User Interface] Zoom to mouse cursor no longer possible after svn from 2018.11.01 (jghali)
0015477: [Canvas] Add Alt selection mode (jghali)
0015470: [User Interface] Menu says Non Breaking Dash, should be Non Breaking Hyphen (jghali)
0015469: [PDF] Scribus shows wrong style for PDF-Textfield style "Underline" (jghali)
0015462: [OS-Linux] FTBFS with poppler 0.70.0 (jghali)
0015461: [User Interface] Icons are barely visible with Breeze Dark Theme (jghali)
0015459: [Typography] Non Breaking Dash gives hyphen followed by space (jghali)
0015457: [Graphics / Image Frames] Incorrect rendering of LaTeX Render Frames after toggling color management (jghali)
0015455: [Scripter] Add transparency to image exporter in scripter (jghali)
0015449: [PDF] Arabic number glyphs of Noto Serif CJK are not exported into PDF correctly depending on specified languages (jghali)
0015441: [Plug-ins] Text vertical alignment not accessible from python/scripter (jghali)
0015426: [Usability] Pasting path into file dialog and hitting return stopped working (jghali)
0015424: [General] pattern background not rendered after duplicating an item with a pattern background (jghali)
0015423: [General] Wrong undo tooltip string for multiple copy by columns and rows (jghali)
0015422: [Internal] Remove PageItem::hasLinks() (jghali)
0015419: [Internal] small refactoring for scribusXml (jghali)
0015415: [User Interface] Add tooltips for font names in font selectors (jghali)
0015413: [User Interface] Missing units in the Picture Browser (jghali)
0015411: [General] Checkbox value is rendered as "4" (or some other value) by iText (jghali)
0015409: [Import / Export] embedded image positioned incorrectly in imported svg (jghali)
0015406: [User Interface] Unusable button in the Picture Browser (jghali)
0015403: [Scripter] scripter: getStyle for obtaining frame style (jghali)
0015402: [Story Editor / Text Frames] accidentally pasting scribus object in story editor pastes bunch of XML in plain text (jghali)
0015395: [Internal] scpainterex_ps2.cpp uses ScImage but does not include scimage.h (jghali)
0015392: [Import / Export] RGB colours changed when exported to PDF and SVG (jghali)
0015372: [General] Unckecking preflight verifier's "Check for empty text frames" has no effect (jghali)
0015371: [Import / Export] CIELab spot colours in PDF imported as CMYK (jghali)
0015367: [General] Drop Shadow "Blur" needs more decimal places - 1.5.5.svn (cbradney)
0015354: [Translation] Italian translation update for 1.5.5.svn (FirasH)
0015352: [Master Pages] Scribus looses color setting of variable text marks (jghali)
0015350: [Import / Export] xtg import broken for multibyte encoded input files (jghali)
0015349: [User Interface] Image Manager: show images in the file manager (ale)
0015348: [Language Tools] Add hyphenation patterns for Indian languages (jghali)
0015346: [Usability] Empty "Printing File" windows after changing options in Print Preview (jghali)
0015337: [Story Editor / Text Frames] Unicode search in Character Palette not working for Latin Extended-D characters (jghali)
0015334: [Master Pages] Creating master page from a page that already has a master page assigned generates garbage master page (jghali)
0015331: [Usability] Extend the automatic addition of black, white and registration colours in the C&F dialog to Document Setup/Prefs (jghali)
0015329: [User Interface] No simplified-Chinese option in Preferences (jghali)
0015325: [Tables] columns and rows selection not working on tables (jghali)
0015318: [PDF] Page number glyphs partially render as boxes/blank during PDF export in certain circumstances (jghali)
0015308: [General] the preview mode state should not be stored in the .sla (jghali)
0015306: [Scripter] Add python command setScaleFrameToImage (jghali)
0015304: [Scripter] Typo in documentation for python function (jghali)
0015302: [Documentation] Documentation points to old Ghostscript dowload page (jghali)
0015301: [PDF] Rotated PDF Form fields are not positioned correctly in final PDF (jghali)
0015289: [OS-Linux] FTBFS 1.5.4 with error: invalid conversion from ‘const GooString*’ to ‘GooString*’ (jghali)
0015288: [Internal] Bad comparison in specialchars.cpp (jghali)
0015287: [Internal] Bad comparison in api_imageitem.cpp (jghali)
0015284: [Internal] Wrong delete operator used on cpp array (jghali)
0015283: [Internal] Redundant assignment in TIFF image loader (jghali)
0015282: [Internal] Suspicious assignment in PSD image loader (jghali)
0015281: [Internal] Warning: Expression is always false because 'else if' condition matches previous condition (jghali)
0015279: [Internal] Warning: Array index used before limits check (jghali)
0015278: [Internal] Incorrect use of iterator after erasing element (jghali)
0015277: [Internal] Warning: same iterator is used with different containers (jghali)
0015273: [Documentation] Updated README (jghali)
0015085: [Story Editor / Text Frames] Linked text restart at beginning of linked frame (jghali)
0015071: [User Interface] [PATCH] Color replacement dialog too narrow (cbradney)
0014973: [General] When saving as compressed file, file is not compressed and extension is set to ".gz.gz.sla" (jghali)
0014434: [Fonts] Converting true type fonts to outlines produces wrong shapes (jghali)
0013126: [Language Tools] add en_US to the hyphenations installed by default (jghali)
0010720: [Fonts] Right-aligned text does not work as expected with some fonts. (jghali)
0007006: [Typography] Drop Cap little too large causing text baseline misalignment (jghali)
Scribus - 1.5.4 (Released 2018-04-28)
=========================================
- 0015267: [Color Management] Colour model switch in the "Colours & Fills" dialogue doesn't work as expected (jghali)
......
......@@ -2,21 +2,21 @@
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleGetInfoString</key>
<string>Scribus Installer 1.5.5.svn</string>
<key>CFBundleIdentifier</key>
<string>net.scribus.osxinstaller</string>
<key>CFBundleName</key>
<string>Scribus</string>
<key>CFBundleShortVersionString</key>
<string>1.5.5.svn</string>
<key>CFBundleGetInfoString</key>
<string>Scribus Installer 1.5.6.svn</string>
<key>CFBundleIdentifier</key>
<string>net.scribus.osxinstaller</string>
<key>CFBundleName</key>
<string>Scribus</string>
<key>CFBundleShortVersionString</key>
<string>1.5.6.svn</string>
<key>IFMajorVersion</key>
<integer>0</integer>
<key>IFMinorVersion</key>
<integer>0</integer>
<key>IFPkgFlagBackgroundAlignment</key>
<string>topleft</string>
<key>IFPkgFlagBackgroundScaling</key>
<string>tofit</string>
<string>topleft</string>
<key>IFPkgFlagBackgroundScaling</key>
<string>tofit</string>
</dict>
</plist>
......@@ -2,14 +2,14 @@
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleGetInfoString</key>
<string>Scribus 1.5.5.svn</string>
<key>CFBundleIdentifier</key>
<string>net.scribus.aqua</string>
<key>CFBundleName</key>
<string>Scribus</string>
<key>CFBundleShortVersionString</key>
<string>1.5.5.svn</string>
<key>CFBundleGetInfoString</key>
<string>Scribus 1.5.6.svn</string>
<key>CFBundleIdentifier</key>
<string>net.scribus</string>
<key>CFBundleName</key>
<string>Scribus</string>
<key>CFBundleShortVersionString</key>
<string>1.5.6.svn</string>
<key>IFMajorVersion</key>
<integer>0</integer>
<key>IFMinorVersion</key>
......
......@@ -11,7 +11,7 @@ Also note that the 1.5.x series is not an officially stable version. Instead, al
==General==
Qt 5: As of version 1.5.4, Scribus is being built using version 5.5 of the Qt toolkit.
Qt 5: As of version 1.5.5, Scribus is being built using version 5.7 of the Qt toolkit.
More dependencies: Scribus 1.5.x makes extensive use of many more external libraries than earlier versions, especially for import filters. In most cases Scribus needs to be explicitly compiled against these libraries, so they become dependencies. In other cases (e.g. UniConvertor), Scribus will detect an installed version automatically. Note that full support for some libraries may not be available on Mac OS X and Windows until the final 1.6.0 release.
......
......@@ -57,7 +57,7 @@
</dict>
</array>
<key>CFBundleGetInfoString</key>
<string>Scribus (c) 2001-2018 The Scribus Team</string>
<string>Scribus (c) 2001-2019 The Scribus Team</string>
<key>CFBundleIconFile</key>
<string>Scribus.icns</string>
<key>CFBundleIdentifier</key>
......@@ -67,7 +67,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.5.5.svn</string>
<string>1.5.6.svn</string>
<key>CFBundleSignature</key>
<string>OSCR</string>
<key>NSPrincipalClass</key>
......
######################################################################
# Automatically generated by qmake (3.1) Sun May 20 10:57:32 2018
# Automatically generated by qmake (3.1) Wed Aug 7 21:21:13 2019
######################################################################
INCLUDEPATH+=./scribus
......@@ -7,19 +7,16 @@ TEMPLATE = app
TARGET = Scribus
INCLUDEPATH += .
# The following define makes your compiler warn you if you use any
# feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if you use deprecated APIs.
# You can make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# Please consult the documentation of the deprecated API in order to know
# how to port your code away from it.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
# Input
HEADERS += scribus/actionmanager.h \
scribus/actionsearch.h \
scribus/annotation.h \
scribus/appmodehelper.h \
scribus/appmodes.h \
......@@ -168,6 +165,7 @@ HEADERS += scribus/actionmanager.h \
scribus/sccolor.h \
scribus/sccolorengine.h \
scribus/sccolorshade.h \
scribus/sccolorstructs.h \
scribus/scconfig.h \
scribus/scdebug.h \
scribus/scdocoutput.h \
......@@ -393,6 +391,7 @@ HEADERS += scribus/actionmanager.h \
scribus/text/textsource.h \
scribus/ui/about.h \
scribus/ui/aboutplugins.h \
scribus/ui/actionsearchdialog.h \
scribus/ui/AdapterWidget.h \
scribus/ui/adjustcmsdialog.h \
scribus/ui/aligndistribute.h \
......@@ -656,7 +655,7 @@ HEADERS += scribus/actionmanager.h \
scribus/ui/viewtoolbar.h \
scribus/ui/vruler.h \
scribus/ui/weldedit.h \
win32/msvc2012/win-config.h \
win32/msvc2013/win-config.h \
win32/msvc2015/win-config.h \
scribus/designer/smwidgets/smalignselectplugin.h \
scribus/designer/smwidgets/smcolorcomboplugin.h \
......@@ -884,9 +883,9 @@ HEADERS += scribus/actionmanager.h \
scribus/third_party/zip/zipglobal.h \
scribus/tt/simpletreemodel/treeitem.h \
scribus/tt/simpletreemodel/treemodel.h \
win32/msvc2012/scribus-main/resource.h \
win32/msvc2012/scribus-main/scribuspch.h \
win32/msvc2012/scribus-rtf/scribus-rtf-pch.h \
win32/msvc2013/scribus-main/resource.h \
win32/msvc2013/scribus-main/scribuspch.h \
win32/msvc2013/scribus-rtf/scribus-rtf-pch.h \
win32/msvc2015/scribus-main/resource.h \
win32/msvc2015/scribus-main/scribuspch.h \
win32/msvc2015/scribus-rtf/scribus-rtf-pch.h \
......@@ -1022,6 +1021,7 @@ HEADERS += scribus/actionmanager.h \
scribus/plugins/tools/2geomtools/pathalongpath/pathalongpath.h \
scribus/plugins/tools/2geomtools/pathalongpath/pathdialog.h
FORMS += scribus/ui/aboutplugins.ui \
scribus/ui/actionsearchdialog.ui \
scribus/ui/aligndistribute.ui \
scribus/ui/annot.ui \
scribus/ui/arcvectorbase.ui \
......@@ -1177,8 +1177,8 @@ FORMS += scribus/ui/aboutplugins.ui \
scribus/plugins/scripter/python/sceditor/mainwindow.ui \
scribus/plugins/tools/2geomtools/meshdistortion/meshdistortiondialog.ui \
scribus/plugins/tools/2geomtools/pathalongpath/pathdialogbase.ui
SOURCES += scribus/actionmanager.cpp \
scribus/actionsearch.cpp \
scribus/appmodehelper.cpp \
scribus/canvas.cpp \
scribus/canvasgesture_cellselect.cpp \
......@@ -1319,6 +1319,7 @@ SOURCES += scribus/actionmanager.cpp \
scribus/sccolor.cpp \
scribus/sccolorengine.cpp \
scribus/sccolorshade.cpp \
scribus/sccolorstructs.cpp \
scribus/scdocoutput.cpp \
scribus/scdocoutput_ps2.cpp \
scribus/scdomelement.cpp \
......@@ -1513,6 +1514,7 @@ SOURCES += scribus/actionmanager.cpp \
scribus/text/textsource.cpp \
scribus/ui/about.cpp \
scribus/ui/aboutplugins.cpp \
scribus/ui/actionsearchdialog.cpp \
scribus/ui/AdapterWidget.cpp \
scribus/ui/adjustcmsdialog.cpp \
scribus/ui/aligndistribute.cpp \
......@@ -1967,59 +1969,59 @@ SOURCES += scribus/actionmanager.cpp \
scribus/third_party/zip/zipglobal.cpp \
scribus/tt/simpletreemodel/treeitem.cpp \
scribus/tt/simpletreemodel/treemodel.cpp \
win32/msvc2012/aiimport/aiimportdll.cpp \
win32/msvc2012/barcodegenerator/barcodegeneratordll.cpp \
win32/msvc2012/cgmimport/cgmimportdll.cpp \
win32/msvc2012/colorwheel/colorwheeldll.cpp \
win32/msvc2012/cvgimport/cvgimportdll.cpp \
win32/msvc2012/drwimport/drwimportdll.cpp \
win32/msvc2012/flattenpath/flattenpathdll.cpp \
win32/msvc2012/fontpreview/fontpreviewdll.cpp \
win32/msvc2012/gettext-csvim/gettext-csvimdll.cpp \
win32/msvc2012/gettext-docim/gettext-docimdll.cpp \
win32/msvc2012/gettext-htmlim/gettext-htmlimdll.cpp \
win32/msvc2012/gettext-odtim/gettext-odtimdll.cpp \
win32/msvc2012/gettext-pdbim/gettext-pdbimdll.cpp \
win32/msvc2012/gettext-sxwim/gettext-sxwimdll.cpp \
win32/msvc2012/gettext-textfilter/gettext-textfilterdll.cpp \
win32/msvc2012/gettext-txtim/gettext-txtimdll.cpp \
win32/msvc2012/gettext-xtgim/gettext-xtgimdll.cpp \
win32/msvc2012/hunspellcheck/hunspellcheckdll.cpp \
win32/msvc2012/idmlimport/idmlimportdll.cpp \
win32/msvc2012/lenseffects/lenseffectsdll.cpp \
win32/msvc2012/meshdistortion/meshdistortiondll.cpp \
win32/msvc2012/oodrawimport/oodrawimportdll.cpp \
win32/msvc2012/pathalongpath/pathalongpathdll.cpp \
win32/msvc2012/pathconnect/pathconnectdll.cpp \
win32/msvc2012/pathcut/pathcutdll.cpp \
win32/msvc2012/pathfinder/pathfinderdll.cpp \
win32/msvc2012/pathstroker/pathstrokerdll.cpp \
win32/msvc2012/pctimport/pctimportdll.cpp \
win32/msvc2012/pdfimport/pdfimportdll.cpp \
win32/msvc2012/picturebrowser/picturebrowserdll.cpp \
win32/msvc2012/pixmapexport/pixmapexportdll.cpp \
win32/msvc2012/saveastemplate/saveastemplatedll.cpp \
win32/msvc2012/scribus-main/scribuspch.cpp \
win32/msvc2012/scribus-rtf/scribus-rtf-pch.cpp \
win32/msvc2012/scribus12format/scribus12formatdll.cpp \
win32/msvc2012/scribus134format/scribus134formatdll.cpp \
win32/msvc2012/scribus13format/scribus13formatdll.cpp \
win32/msvc2012/scribus150format/scribus150formatdll.cpp \
win32/msvc2012/scriptplugin/scriptplugindll.cpp \
win32/msvc2012/shapeimport/shapeimportdll.cpp \
win32/msvc2012/shortwords/shortwordsdll.cpp \
win32/msvc2012/smlimport/smlimportdll.cpp \
win32/msvc2012/smoothpath/smoothpathdll.cpp \
win32/msvc2012/subdivide/subdividedll.cpp \
win32/msvc2012/svgexport/svgexportdll.cpp \
win32/msvc2012/svgimport/svgimportdll.cpp \
win32/msvc2012/uniconvimport/uniconvimportdll.cpp \
win32/msvc2012/vivaimport/vivaimportdll.cpp \
win32/msvc2012/wmfimport/wmfimportdll.cpp \
win32/msvc2012/wpgimport/wpgimportdll.cpp \
win32/msvc2012/xarimport/xarimportdll.cpp \
win32/msvc2012/xfigimport/xfigimportdll.cpp \
win32/msvc2012/xpsimport/xpsimportdll.cpp \
win32/msvc2013/aiimport/aiimportdll.cpp \
win32/msvc2013/barcodegenerator/barcodegeneratordll.cpp \
win32/msvc2013/cgmimport/cgmimportdll.cpp \
win32/msvc2013/colorwheel/colorwheeldll.cpp \
win32/msvc2013/cvgimport/cvgimportdll.cpp \
win32/msvc2013/drwimport/drwimportdll.cpp \
win32/msvc2013/flattenpath/flattenpathdll.cpp \
win32/msvc2013/fontpreview/fontpreviewdll.cpp \
win32/msvc2013/gettext-csvim/gettext-csvimdll.cpp \
win32/msvc2013/gettext-docim/gettext-docimdll.cpp \
win32/msvc2013/gettext-htmlim/gettext-htmlimdll.cpp \
win32/msvc2013/gettext-odtim/gettext-odtimdll.cpp \
win32/msvc2013/gettext-pdbim/gettext-pdbimdll.cpp \
win32/msvc2013/gettext-sxwim/gettext-sxwimdll.cpp \
win32/msvc2013/gettext-textfilter/gettext-textfilterdll.cpp \
win32/msvc2013/gettext-txtim/gettext-txtimdll.cpp \
win32/msvc2013/gettext-xtgim/gettext-xtgimdll.cpp \
win32/msvc2013/hunspellcheck/hunspellcheckdll.cpp \
win32/msvc2013/idmlimport/idmlimportdll.cpp \
win32/msvc2013/lenseffects/lenseffectsdll.cpp \
win32/msvc2013/meshdistortion/meshdistortiondll.cpp \
win32/msvc2013/oodrawimport/oodrawimportdll.cpp \
win32/msvc2013/pathalongpath/pathalongpathdll.cpp \
win32/msvc2013/pathconnect/pathconnectdll.cpp \
win32/msvc2013/pathcut/pathcutdll.cpp \
win32/msvc2013/pathfinder/pathfinderdll.cpp \
win32/msvc2013/pathstroker/pathstrokerdll.cpp \
win32/msvc2013/pctimport/pctimportdll.cpp \
win32/msvc2013/pdfimport/pdfimportdll.cpp \
win32/msvc2013/picturebrowser/picturebrowserdll.cpp \
win32/msvc2013/pixmapexport/pixmapexportdll.cpp \
win32/msvc2013/saveastemplate/saveastemplatedll.cpp \
win32/msvc2013/scribus-main/scribuspch.cpp \
win32/msvc2013/scribus-rtf/scribus-rtf-pch.cpp \
win32/msvc2013/scribus12format/scribus12formatdll.cpp \
win32/msvc2013/scribus134format/scribus134formatdll.cpp \
win32/msvc2013/scribus13format/scribus13formatdll.cpp \
win32/msvc2013/scribus150format/scribus150formatdll.cpp \
win32/msvc2013/scriptplugin/scriptplugindll.cpp \
win32/msvc2013/shapeimport/shapeimportdll.cpp \
win32/msvc2013/shortwords/shortwordsdll.cpp \
win32/msvc2013/smlimport/smlimportdll.cpp \
win32/msvc2013/smoothpath/smoothpathdll.cpp \
win32/msvc2013/subdivide/subdividedll.cpp \
win32/msvc2013/svgexport/svgexportdll.cpp \
win32/msvc2013/svgimport/svgimportdll.cpp \
win32/msvc2013/uniconvimport/uniconvimportdll.cpp \
win32/msvc2013/vivaimport/vivaimportdll.cpp \
win32/msvc2013/wmfimport/wmfimportdll.cpp \
win32/msvc2013/wpgimport/wpgimportdll.cpp \
win32/msvc2013/xarimport/xarimportdll.cpp \
win32/msvc2013/xfigimport/xfigimportdll.cpp \
win32/msvc2013/xpsimport/xpsimportdll.cpp \
win32/msvc2015/scribus-main/scribuspch.cpp \
win32/msvc2015/scribus-rtf/scribus-rtf-pch.cpp \
win32/msvc2015/vivaimport/vivaimportdll.cpp \
......
......@@ -54,7 +54,7 @@ find_library(CAIRO_LIBRARY
# endif(PREFIX_CAIRO)
# endif(NOT PREFIX_CAIRO)
set(CAIRO_FIND_QUIETLY 1)
set(CAIRO_FIND_QUIETLY ON)
if (CAIRO_LIBRARY)
if (CAIRO_INCLUDE_DIR)
......
......@@ -10,12 +10,12 @@
# LIBFONTCONFIG_CFLAGS, cflags for include information
if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} LESS 2.5)
include(UsePkgConfig)
PKGCONFIG(fontconfig _fontconfigIncDir _fontconfigLinkDir _fontconfigLinkFlags _fontconfigCflags)
set(FONTCONFIG_LIBS ${_fontconfigCflags})
include(UsePkgConfig)
PKGCONFIG(fontconfig _fontconfigIncDir _fontconfigLinkDir _fontconfigLinkFlags _fontconfigCflags)
set(FONTCONFIG_LIBS ${_fontconfigCflags})
else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} LESS 2.5)
include(FindPkgConfig)
pkg_search_module(FONTCONFIG REQUIRED fontconfig)
include(FindPkgConfig)
pkg_search_module(FONTCONFIG REQUIRED fontconfig)
endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} LESS 2.5)
#include(UsePkgConfig)
......@@ -27,30 +27,30 @@ endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} LESS 2.5)
#set(FONTCONFIG_LIBS ${_fontconfigCflags})
if(BUILD_OSX_BUNDLE)
find_path(FONTCONFIG_INCLUDE_DIR
NAMES fontconfig/fontconfig.h
PATHS ${FONTCONFIG_INCLUDE_DIRS} /opt/local/include
NO_DEFAULT_PATH
)
find_library(FONTCONFIG_LIBRARY
NAMES fontconfig
PATHS ${FONTCONFIG_LIBRARY_DIRS} /opt/local/lib
NO_DEFAULT_PATH
)
find_path(FONTCONFIG_INCLUDE_DIR
NAMES fontconfig/fontconfig.h
PATHS ${FONTCONFIG_INCLUDE_DIRS} /opt/local/include
NO_DEFAULT_PATH
)
find_library(FONTCONFIG_LIBRARY
NAMES fontconfig
PATHS ${FONTCONFIG_LIBRARY_DIRS} /opt/local/lib
NO_DEFAULT_PATH
)
else(BUILD_OSX_BUNDLE)
find_path(FONTCONFIG_INCLUDE_DIR
NAMES fontconfig/fontconfig.h
PATHS ${FONTCONFIG_INCLUDE_DIRS}
${_fontconfigIncDir}
/usr/include
/usr/local/include
PATH_SUFFIXES fontconfig
)
# quick hack as the above finds it nicely but our source includes the libart_lgpl text at the moment
#string(REGEX REPLACE "/libart_lgpl" "" FONTCONFIG_INCLUDE_DIR ${FONTCONFIG_INCLUDE_DIR})
find_library(FONTCONFIG_LIBRARY NAMES fontconfig
PATHS ${FONTCONFIG_LIBRARY_DIRS} /usr/lib /usr/local/lib
)
find_path(FONTCONFIG_INCLUDE_DIR
NAMES fontconfig/fontconfig.h
PATHS ${FONTCONFIG_INCLUDE_DIRS}
${_fontconfigIncDir}
/usr/include
/usr/local/include
PATH_SUFFIXES fontconfig
)
# quick hack as the above finds it nicely but our source includes the libart_lgpl text at the moment
#string(REGEX REPLACE "/libart_lgpl" "" FONTCONFIG_INCLUDE_DIR ${FONTCONFIG_INCLUDE_DIR})
find_library(FONTCONFIG_LIBRARY NAMES fontconfig
PATHS ${FONTCONFIG_LIBRARY_DIRS} /usr/lib /usr/local/lib
)
endif(BUILD_OSX_BUNDLE)
......@@ -59,13 +59,13 @@ endif(BUILD_OSX_BUNDLE)
if (FONTCONFIG_LIBRARY)
if (FONTCONFIG_INCLUDE_DIR)
set( FONTCONFIG_FOUND "YES" )
set( FONTCONFIG_LIBRARIES ${FONTCONFIG_LIBRARY} )
find_program(FONTCONFIG_CONFIG NAMES fontconfig-config PATHS ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin /usr/bin /usr/nekoware/bin /usr/X11/bin)
# exec_program(${FONTCONFIG_CONFIG} ARGS --libs OUTPUT_VARIABLE FONTCONFIG_LIBS)
# exec_program(${FONTCONFIG_CONFIG} ARGS --cflags OUTPUT_VARIABLE FONTCONFIG_CFLAGS)
# message(STATUS ${FONTCONFIG_LIBS})
# message(STATUS ${FONTCONFIG_CFLAGS})
endif (FONTCONFIG_INCLUDE_DIR)
if (FONTCONFIG_INCLUDE_DIR)
set( FONTCONFIG_FOUND "YES" )
set( FONTCONFIG_LIBRARIES ${FONTCONFIG_LIBRARY} )
find_program(FONTCONFIG_CONFIG NAMES fontconfig-config PATHS ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin /usr/bin /usr/nekoware/bin /usr/X11/bin)
# exec_program(${FONTCONFIG_CONFIG} ARGS --libs OUTPUT_VARIABLE FONTCONFIG_LIBS)