aboutsummaryrefslogtreecommitdiff
path: root/finance/alkimia
diff options
context:
space:
mode:
authorJason E. Hale <jhale@FreeBSD.org>2018-04-13 13:16:46 +0000
committerJason E. Hale <jhale@FreeBSD.org>2018-04-13 13:16:46 +0000
commit82be780a05c3f61394fb43cfaaa516d87636863e (patch)
treef5b6361f2d8b911ad03b3412b01dadb66140fec7 /finance/alkimia
parent5b9d7ef28a24114089ae53ff5fe5ffb25579f6a7 (diff)
downloadports-82be780a05c3f61394fb43cfaaa516d87636863e.tar.gz
ports-82be780a05c3f61394fb43cfaaa516d87636863e.zip
- Move finance/libalkimia -> finance/alkimia to follow upstream project name
- Update to 7.0.1 - finance/alkimia is the Qt 5 version for the upcoming kf5 version of KMyMoney - finance/alkimia-qt4 is the Qt 4 version for the kde4 version of KMyMoney - Fix LICENSE - Default multi-precision library is now MPIR upstream, but an option has been added if you wish to use GMP instead - Add regression test support - Adjust finance/kmymoney to use the new version While here: - Add a patch to finance/kmymoney to fix a possible build failure when kmymoneysettings.h is not generated early enough.
Notes
Notes: svn path=/head/; revision=467240
Diffstat (limited to 'finance/alkimia')
-rw-r--r--finance/alkimia/Makefile62
-rw-r--r--finance/alkimia/distinfo3
-rw-r--r--finance/alkimia/files/patch-CMakeLists.txt34
-rw-r--r--finance/alkimia/files/patch-autotests_CMakeLists.txt15
-rw-r--r--finance/alkimia/files/patch-src_LibAlkimiaConfig.cmake.in20
-rw-r--r--finance/alkimia/files/patch-src_libalkimia.pc.in25
-rw-r--r--finance/alkimia/pkg-descr7
-rw-r--r--finance/alkimia/pkg-plist14
8 files changed, 180 insertions, 0 deletions
diff --git a/finance/alkimia/Makefile b/finance/alkimia/Makefile
new file mode 100644
index 000000000000..369fae15b7ec
--- /dev/null
+++ b/finance/alkimia/Makefile
@@ -0,0 +1,62 @@
+# $FreeBSD$
+
+PORTNAME= alkimia
+PORTVERSION= 7.0.1
+CATEGORIES= finance kde
+MASTER_SITES= KDE/stable/${PORTNAME}/${PORTVERSION}/src
+PKGNAMESUFFIX= -${SLAVE}
+
+MAINTAINER= jhale@FreeBSD.org
+COMMENT= KDE financial data handling library
+
+LICENSE= LGPL21+
+LICENSE_FILE= ${WRKSRC}/COPYING.LIB
+
+# Depending on ecm via USE_KDE causes unwanted CMAKE_ARGS to be set
+BUILD_DEPENDS= ${LOCALBASE}/share/ECM/cmake/ECMConfig.cmake:devel/kf5-extra-cmake-modules
+
+USES= cmake:outsource pathfix tar:xz
+USE_LDCONFIG= yes
+
+SLAVE?= qt5
+.if ${SLAVE} == qt4
+USE_QT4= corelib dbus \
+ moc_build qmake_build rcc_build
+# BUILD_QT4 must be set to "1" due to comparison used in src/LibAlkimiaConfig.cmake.in
+CMAKE_ARGS+= -DBUILD_QT4=1
+CMAKE_OFF+= KDE_INSTALL_USE_QT_SYS_PATHS
+INCLUDE_SUBDIR= Qt4
+.else
+USE_QT5= core dbus \
+ buildtools_build qmake_build
+CMAKE_ON+= KDE_INSTALL_USE_QT_SYS_PATHS
+INCLUDE_SUBDIR= Qt5
+QTVER_SUFFIX= 5
+.endif
+
+PLIST_SUB= INCLUDE_SUBDIR=${INCLUDE_SUBDIR} \
+ QTVER_SUFFIX=${QTVER_SUFFIX} \
+ VER=${PORTVERSION:R}
+
+OPTIONS_SINGLE= MPLIB
+OPTIONS_SINGLE_MPLIB= GMP MPIR
+OPTIONS_DEFINE= TEST
+OPTIONS_DEFAULT= MPIR
+OPTIONS_SUB= yes
+MPLIB_DESC= Multi-precision library (MPIR preferred)
+
+GMP_LIB_DEPENDS= libgmp.so:math/gmp
+GMP_CMAKE_BOOL= CMAKE_DISABLE_FIND_PACKAGE_MPIR
+
+MPIR_DESC= MPIR (multiple precision arithmetic) support
+MPIR_LIB_DEPENDS= libmpir.so:math/mpir
+
+.if ${SLAVE} == qt4
+TEST_USE= QT4=qtestlib
+.else
+TEST_USE= QT5=testlib
+.endif
+TEST_CMAKE_BOOL= BUILD_TESTING
+TEST_TEST_TARGET= test
+
+.include <bsd.port.mk>
diff --git a/finance/alkimia/distinfo b/finance/alkimia/distinfo
new file mode 100644
index 000000000000..29718b7968b1
--- /dev/null
+++ b/finance/alkimia/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1523611128
+SHA256 (alkimia-7.0.1.tar.xz) = 42c49025b3f8489dcbc5df55101ef95bc920e160b9d5ecf573a88062883931bb
+SIZE (alkimia-7.0.1.tar.xz) = 38400
diff --git a/finance/alkimia/files/patch-CMakeLists.txt b/finance/alkimia/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..c491f189e4be
--- /dev/null
+++ b/finance/alkimia/files/patch-CMakeLists.txt
@@ -0,0 +1,34 @@
+Make tests conditional
+
+--- CMakeLists.txt.orig 2018-03-15 19:28:26 UTC
++++ CMakeLists.txt
+@@ -15,7 +15,7 @@ include(FeatureSummary)
+ # check for PkgConfig, Qt and MPIR/GMP
+ find_package(PkgConfig)
+ if(BUILD_QT4)
+- find_package(Qt4 REQUIRED COMPONENTS QtCore QtDBus QtTest)
++ find_package(Qt4 REQUIRED COMPONENTS QtCore QtDBus)
+ set(QT_USE_LIBSPREFIX Qt4::Qt)
+ set(ALKIMIA_LIB_SUFFIX "")
+ set(ALKIMIA_INCLUDE_SUFFIX "Qt4")
+@@ -23,7 +23,7 @@ if(BUILD_QT4)
+ set(PC_TARGET_QTPREFIX Qt)
+ set(PC_TARGET_SUFFIX)
+ else()
+- find_package(Qt5 REQUIRED COMPONENTS Core DBus Test)
++ find_package(Qt5 REQUIRED COMPONENTS Core DBus)
+ set(QT_USE_LIBSPREFIX Qt5::)
+ set(ALKIMIA_LIB_SUFFIX "5")
+ set(ALKIMIA_INCLUDE_SUFFIX "Qt5")
+@@ -56,6 +56,10 @@ find_package(Doxygen)
+ feature_summary(WHAT ALL)
+
+ add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
++include_directories(${MP_INCLUDE_DIR})
+
+ add_subdirectory(src)
+-add_subdirectory(autotests)
++
++if(BUILD_TESTING)
++ add_subdirectory(autotests)
++endif()
diff --git a/finance/alkimia/files/patch-autotests_CMakeLists.txt b/finance/alkimia/files/patch-autotests_CMakeLists.txt
new file mode 100644
index 000000000000..6c6161911449
--- /dev/null
+++ b/finance/alkimia/files/patch-autotests_CMakeLists.txt
@@ -0,0 +1,15 @@
+Find testlib (moved from ../CMakeLists.txt)
+
+--- autotests/CMakeLists.txt.orig 2018-03-15 19:28:26 UTC
++++ autotests/CMakeLists.txt
+@@ -1,8 +1,10 @@
+ include(ECMAddTests)
+
+ if(BUILD_QT4)
++ find_package(Qt4 REQUIRED COMPONENTS QtTest)
+ set(TEST_LIB ${QT_QTTEST_LIBRARY})
+ else()
++ find_package(Qt5 REQUIRED COMPONENTS Test)
+ set(TEST_LIB Qt5::Test)
+ endif()
+
diff --git a/finance/alkimia/files/patch-src_LibAlkimiaConfig.cmake.in b/finance/alkimia/files/patch-src_LibAlkimiaConfig.cmake.in
new file mode 100644
index 000000000000..82b875f35bf0
--- /dev/null
+++ b/finance/alkimia/files/patch-src_LibAlkimiaConfig.cmake.in
@@ -0,0 +1,20 @@
+Upstream fixes for KMM 4.8 (fixed in 7.0.2)
+
+--- src/LibAlkimiaConfig.cmake.in.orig 2018-03-15 19:28:26 UTC
++++ src/LibAlkimiaConfig.cmake.in
+@@ -2,6 +2,8 @@
+
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+
++include(CMakeFindDependencyMacro)
++
+ if("@BUILD_QT4@" STREQUAL "1")
+ find_package(Qt4 COMPONENTS QtCore QtDBus)
+ else()
+@@ -12,5 +14,6 @@ find_dependency(@MP_CMAKE_MODULE@)
+
+ include("${CMAKE_CURRENT_LIST_DIR}/LibAlkimia@ALKIMIA_PATH_SUFFIX@Targets.cmake")
+
++set_and_check(LIBALKIMIA_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@")
+ set_property(TARGET Alkimia::alkimia PROPERTY INTERFACE_INCLUDE_DIRECTORIES "@PACKAGE_INCLUDE_INSTALL_DIR@" ${@MP_CMAKE_MODULE@_INCLUDE_DIR})
+ message(STATUS "Found LibAlkimia: ${CMAKE_CURRENT_LIST_DIR}/LibAlkimia@ALKIMIA_PATH_SUFFIX@Config.cmake (found version \"@ALKIMIA_LIB_VERSION@\")")
diff --git a/finance/alkimia/files/patch-src_libalkimia.pc.in b/finance/alkimia/files/patch-src_libalkimia.pc.in
new file mode 100644
index 000000000000..0e49e09d7e45
--- /dev/null
+++ b/finance/alkimia/files/patch-src_libalkimia.pc.in
@@ -0,0 +1,25 @@
+--- src/libalkimia.pc.in.orig 2018-03-15 19:28:26 UTC
++++ src/libalkimia.pc.in
+@@ -3,9 +3,9 @@
+
+ # General installation directories
+ prefix=@CMAKE_INSTALL_PREFIX@
+-exec_prefix=@CMAKE_INSTALL_PREFIX@
+-libdir=@KDE4_LIB_DIR@
+-includedir=@INCLUDE_INSTALL_DIR@
++exec_prefix=${prefix}
++libdir=${exec_prefix}/@LIB_INSTALL_DIR@
++includedir=${prefix}/@INCLUDE_INSTALL_DIR@
+
+ # Human-readable name
+ Name: Alkimia
+@@ -13,7 +13,7 @@ Name: Alkimia
+ Description: A library for financial data handling
+ Version: @ALKIMIA_LIB_VERSION@
+
+-Libs: -lalkimia@PC_TARGET_SUFFIX@
+-Libs.private: -l@PC_LIB@ -l@PC_TARGET_QTPREFIX@Core -l@PC_TARGET_QTPREFIX@DBus -lstdc++
++Libs: -L${libdir} -lalkimia@PC_TARGET_SUFFIX@
++Libs.private: -l@PC_LIB@ -l@PC_TARGET_QTPREFIX@Core -l@PC_TARGET_QTPREFIX@DBus
+ Cflags: -I${includedir} -I@MP_INCLUDE_DIR@
+
diff --git a/finance/alkimia/pkg-descr b/finance/alkimia/pkg-descr
new file mode 100644
index 000000000000..7206a4631abd
--- /dev/null
+++ b/finance/alkimia/pkg-descr
@@ -0,0 +1,7 @@
+Libalkimia is a library with common classes and functionality used by finance
+applications for KDE.
+
+Currently, it supports a common class to represent monetary values with
+arbitrary precision.
+
+WWW: http://community.kde.org/Alkimia/libalkimia
diff --git a/finance/alkimia/pkg-plist b/finance/alkimia/pkg-plist
new file mode 100644
index 000000000000..16553fe1d60d
--- /dev/null
+++ b/finance/alkimia/pkg-plist
@@ -0,0 +1,14 @@
+include/alkimia/%%INCLUDE_SUBDIR%%/alkimia/alk_export.h
+include/alkimia/%%INCLUDE_SUBDIR%%/alkimia/alkcompany.h
+include/alkimia/%%INCLUDE_SUBDIR%%/alkimia/alkquoteitem.h
+include/alkimia/%%INCLUDE_SUBDIR%%/alkimia/alkvalue.h
+%%GMP%%lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/FindGMP.cmake
+%%MPIR%%lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/FindMPIR.cmake
+lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/LibAlkimia%%QTVER_SUFFIX%%Config.cmake
+lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/LibAlkimia%%QTVER_SUFFIX%%ConfigVersion.cmake
+lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/LibAlkimia%%QTVER_SUFFIX%%Targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/LibAlkimia%%QTVER_SUFFIX%%-%%VER%%/LibAlkimia%%QTVER_SUFFIX%%Targets.cmake
+lib/libalkimia%%QTVER_SUFFIX%%.so
+lib/libalkimia%%QTVER_SUFFIX%%.so.7
+lib/libalkimia%%QTVER_SUFFIX%%.so.7.0.1
+libdata/pkgconfig/libalkimia%%QTVER_SUFFIX%%.pc