libsForQt5.appstream-qt: fix darwin build

This commit is contained in:
Bobby Rong 2022-02-25 23:58:50 +08:00
parent b3d4c1d48f
commit 2bfd5cee81
No known key found for this signature in database
GPG key ID: ED07364437C91161
3 changed files with 57 additions and 2 deletions

View file

@ -28,6 +28,9 @@
stdenv.mkDerivation rec {
pname = "appstream";
version = "0.15.2";
# When bumping this package, please also check whether
# fix-build-for-qt-olderthan-514.patch still applies by
# building libsForQt512.appstream-qt.
outputs = [ "out" "dev" "installedTests" ];

View file

@ -0,0 +1,43 @@
diff --git a/qt/component.h b/qt/component.h
index 47abd1f3..74de943c 100644
--- a/qt/component.h
+++ b/qt/component.h
@@ -90,7 +90,7 @@ class APPSTREAMQT_EXPORT Component {
UrlKindContact,
// deprecated
- UrlTranslate [[deprecated]] = UrlKindTranslate,
+ UrlTranslate = UrlKindTranslate,
};
Q_ENUM(UrlKind)
diff --git a/qt/pool.h b/qt/pool.h
index b59829b7..5237f613 100644
--- a/qt/pool.h
+++ b/qt/pool.h
@@ -70,9 +70,9 @@ public:
FlagMonitor = 1 << 7,
// deprecated
- FlagReadCollection [[deprecated]] = FlagLoadOsCollection,
- FlagReadMetainfo [[deprecated]] = FlagLoadOsMetainfo,
- FlagReadDesktopFiles [[deprecated]] = FlagLoadOsDesktopFiles,
+ FlagReadCollection = FlagLoadOsCollection,
+ FlagReadMetainfo = FlagLoadOsMetainfo,
+ FlagReadDesktopFiles = FlagLoadOsDesktopFiles,
};
/**
@@ -84,9 +84,9 @@ public:
* Flags on how caching should be used.
**/
enum CacheFlags {
- CacheFlagNone [[deprecated]] = 0,
- CacheFlagUseUser [[deprecated]] = 1 << 0,
- CacheFlagUseSystem [[deprecated]] = 1 << 1,
+ CacheFlagNone = 0,
+ CacheFlagUseUser = 1 << 0,
+ CacheFlagUseSystem = 1 << 1,
};
/**

View file

@ -1,10 +1,10 @@
{ mkDerivation, appstream, qtbase, qttools, nixosTests }:
{ lib, mkDerivation, appstream, qtbase, qttools, nixosTests }:
# TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here
mkDerivation {
pname = "appstream-qt";
inherit (appstream) version src patches;
inherit (appstream) version src;
outputs = [ "out" "dev" "installedTests" ];
@ -14,6 +14,15 @@ mkDerivation {
mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ];
patches = (appstream.patches or []) ++ lib.optionals (lib.versionOlder qtbase.version "5.14") [
# Fix darwin build for libsForQt5.appstream-qt
# Old Qt moc doesn't know about fancy C++14 features
# ../qt/component.h:93: Parse error at "UrlTranslate"
# Remove both this patch and related comment in default.nix
# once Qt 5.14 or later becomes default on darwin
./fix-build-for-qt-olderthan-514.patch
];
postFixup = ''
sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
-e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"