aboutsummaryrefslogtreecommitdiffstats
path: root/deskutils
diff options
context:
space:
mode:
authoradridg <adridg@FreeBSD.org>2018-09-01 18:32:47 +0800
committeradridg <adridg@FreeBSD.org>2018-09-01 18:32:47 +0800
commit3c6eb398bc7d90122c5e178ea482bf3dceb01b4b (patch)
treeb482d91cfc062429b81a2169d8c16054dab978ec /deskutils
parent1e0f80024a880b0017d7ab9be4be4e51301b4f9c (diff)
downloadfreebsd-ports-gnome-3c6eb398bc7d90122c5e178ea482bf3dceb01b4b.tar.gz
freebsd-ports-gnome-3c6eb398bc7d90122c5e178ea482bf3dceb01b4b.tar.zst
freebsd-ports-gnome-3c6eb398bc7d90122c5e178ea482bf3dceb01b4b.zip
Fix build of deskutils/charmtimetracker
Add patch to actually link in the libraries that qtkeychain depends on. See patch for explanation why and how. Not bumping PORTREVISION because it couldn't have built previously.
Diffstat (limited to 'deskutils')
-rw-r--r--deskutils/charmtimetracker/files/patch-Charm_CMakeLists.txt45
1 files changed, 45 insertions, 0 deletions
diff --git a/deskutils/charmtimetracker/files/patch-Charm_CMakeLists.txt b/deskutils/charmtimetracker/files/patch-Charm_CMakeLists.txt
new file mode 100644
index 000000000000..46ac7bc8a03c
--- /dev/null
+++ b/deskutils/charmtimetracker/files/patch-Charm_CMakeLists.txt
@@ -0,0 +1,45 @@
+Munge (effectively) -L/usr/local/lib into the link lines.
+
+QtKeyChain's cmake config lists the libraries it depends on:
+ - a bunch of Qt5 libraries, which are imported targets, and hence
+ already have full paths for CMake
+ - other libraries, like libsecret-1, gio, gobject .. which are not
+ set up as imported targets; these are not found at link-time unless
+ the directory is added to -L. They do have a pkg-config file,
+ so we'll look for (only) libsecret-1 and just add the directory it
+ lives in -- hopefully the other libraries live there too.
+
+Error message otherwise:
+
+: && /usr/bin/c++ -O2 -pipe -fstack-protector -fno-strict-aliasing -std=c++0x -fno-exceptions -Wno-gnu-zero-variadic-macro-arguments -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Wvla -Wdate-time -fdiagnostics-color=always -pedantic -O2 -pipe -fstack-protector -fno-strict-aliasing -Wl,--enable-new-dtags -fstack-protector Charm/CMakeFiles/charmtimetracker.dir/Charm.cpp.o Charm/CMakeFiles/charmtimetracker.dir/qrc_CharmResources.cpp.o Charm/CMakeFiles/charmtimetracker.dir/charmtimetracker_autogen/mocs_compilation.cpp.o -o Charm/charmtimetracker -Wl,-rpath,/usr/local/lib:/usr/local/lib/qt5: Charm/libCharmApplication.a Core/libCharmCore.a /usr/local/lib/libxcb.so /usr/local/lib/libxcb-screensaver.so /usr/local/lib/qt5/libQt5Network.so.5.10.1 /usr/local/lib/qt5/libQt5PrintSupport.so.5.10.1 /usr/local/lib/libqt5keychain.so.0.9.0 -lsecret-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl /usr/local/lib/qt5/libQt5DBus.so.5.10.1 /usr/local/lib/qt5/libQt5Widgets.so.5.10.1 /usr/local/lib/qt5/libQt5Gui.so.5.10.1 /usr/local/lib/qt5/libQt5Xml.so.5.10.1 /usr/local/lib/qt5/libQt5Sql.so.5.10.1 /usr/local/lib/qt5/libQt5Core.so.5.10.1 -Wl,-rpath-link,/usr/local/lib && :
+/usr/bin/ld: cannot find -lsecret-1
+
+
+--- Charm/CMakeLists.txt.orig 2018-09-01 10:20:52 UTC
++++ Charm/CMakeLists.txt
+@@ -170,6 +170,25 @@ ADD_LIBRARY(
+ ${CharmApplication_SRCS} ${UiGenerated_SRCS}
+ )
+
++# Need to find support-libraries for qt5keychain
++set( CharmExtra_LIBS "" )
++include( FindPkgConfig )
++pkg_search_module( _lso libsecret-1 )
++if( _lso_FOUND )
++ find_library( _lso_lib NAMES ${_lso_LIBRARIES} HINTS ${_lso_LIBRARY_DIRS} )
++ if ( _lso_lib )
++ # The issue is that qtkeychain lists libraries with no
++ # imported targets.
++ #
++ # set( CharmExtra_LIBS ${_lso_lib} )
++ link_directories( ${_lso_LIBRARY_DIRS} )
++ else()
++ message( WARNING "Found libsecret-1, but not ${_lso_LIBRARIES}" )
++ endif()
++else()
++ message( WARNING "Could not find libsecret-1" )
++endif()
++
+ kde_target_enable_exceptions( CharmApplication PUBLIC )
+ TARGET_LINK_LIBRARIES(CharmApplication ${CharmApplication_LIBS}
+ Qt5::Core