diff --git a/common/shlibs b/common/shlibs index 62767f5b26b..13710b324db 100644 --- a/common/shlibs +++ b/common/shlibs @@ -898,9 +898,8 @@ libepc-ui-1.0.so.3 libepc-0.4.1_1 libgupnp-dlna-2.0.so.3 gupnp-dlna-0.10.0_1 libgupnp-dlna-gst-2.0.so.3 gupnp-dlna-0.10.0_1 libgupnp-dlna-1.0.so.2 gupnp-dlna-0.6.1_1 -libtracker-extract.so.0 libtracker-1.0.0_1 -libtracker-common.so.0 libtracker-0.14.0_1 -libtracker-data.so.0 libtracker-0.14.0_1 +libtracker-common.so libtracker-2.2.0_1 +libtracker-data.so libtracker-2.2.0_1 libfm.so.4 libfm-1.2.3_3 libfm-gtk.so.4 libfm-gtk-1.2.4_2 libfm-extra.so.4 libfm-extra-1.2.3_3 diff --git a/srcpkgs/tracker/patches/fix-cross-gir.patch b/srcpkgs/tracker/patches/fix-cross-gir.patch new file mode 100644 index 00000000000..5f7831163dd --- /dev/null +++ b/srcpkgs/tracker/patches/fix-cross-gir.patch @@ -0,0 +1,28 @@ +diff --git a/src/libtracker-miner/meson.build b/src/libtracker-miner/meson.build +index 49c879057..a3bd2d9d9 100644 +--- src/libtracker-miner/meson.build ++++ src/libtracker-miner/meson.build +@@ -91,6 +91,7 @@ tracker_miner_gir = gnome.generate_gir(libtracker_miner, + install: true, + extra_args: tracker_c_args + [ + '--c-include=libtracker-miner/tracker-miner.h', ++ '-DTRACKER_COMPILATION', + ]) + + gnome.generate_vapi( +diff --git a/src/libtracker-sparql-backend/meson.build b/src/libtracker-sparql-backend/meson.build +index e54333bec..8f4a9e4a0 100644 +--- src/libtracker-sparql-backend/meson.build ++++ src/libtracker-sparql-backend/meson.build +@@ -45,7 +45,9 @@ tracker_sparql_c_gir = gnome.generate_gir(libtracker_sparql, + includes : ['GLib-2.0', 'GObject-2.0', 'Gio-2.0' ], + link_with: libtracker_sparql, + extra_args: [ +- '--c-include', 'libtracker-sparql/tracker-sparql.h', ++ '--c-include', ++ 'libtracker-sparql/tracker-sparql.h', ++ '-DTRACKER_COMPILATION', + ]) + + tracker_sparql_c_gir = tracker_sparql_c_gir[0] # Ignore this .typelib + diff --git a/srcpkgs/tracker/patches/fix-cross.patch b/srcpkgs/tracker/patches/fix-cross.patch new file mode 100644 index 00000000000..91b81d853e4 --- /dev/null +++ b/srcpkgs/tracker/patches/fix-cross.patch @@ -0,0 +1,108 @@ +diff --git meson.build meson.build +index 3794b1142..432445757 100644 +--- meson.build ++++ meson.build +@@ -72,6 +72,7 @@ add_project_arguments(['-D', 'TRACKER_COMPILATION'], + language: 'vala') + + enable_fts = get_option('fts') ++sqlite3_fts5 = get_option('sqlite3_fts5') + + network_manager = dependency('libnm', required: get_option('network_manager')) + have_network_manager = network_manager.found() +@@ -88,41 +89,51 @@ have_libstemmer = libstemmer.found() + ################################################################## + + if enable_fts +- sqlite3_builtin_fts5_test = ''' +- #include +- +- int main (int argc, char *argv[]) { +- sqlite3 *db; +- int rc; +- rc = sqlite3_open(":memory:", &db); +- if (rc!=SQLITE_OK) return -1; +- rc = sqlite3_exec(db, "create table a(text)", 0, 0, 0); +- if (rc!=SQLITE_OK) return -1; +- rc = sqlite3_exec(db, "create virtual table t using fts5(content='a',text)", 0, 0, 0); +- if (rc!=SQLITE_OK) return -1; +- } +- ''' +- +- result = cc.run(sqlite3_builtin_fts5_test, +- name: 'sqlite3 has builtin FTS5 module', +- dependencies: sqlite) +- +- if not result.compiled() +- error('Failed to compile SQLite FTS test.') +- endif +- +- if result.returncode() == 0 +- message('Using sqlite3 builtin FTS module') +- sqlite3_has_builtin_fts5 = true ++ if meson.is_cross_build() and not meson.has_exe_wrapper() ++ if sqlite3_fts5 == 'auto' ++ error('Can\'t detect whether sqlite3 has builtin fts5. please set sqlite3_fts5 accordingly.') ++ elif sqlite3_fts5 == 'builtin' ++ sqlite3_has_builtin_fts5 = true ++ elif sqlite3_fts5 == 'external' ++ sqlite3_has_builtin_fts5 = false ++ endif + else +- message('FTS support was enabled but SQLite doesn\'t have the FTS module built in') +- if sqlite.version().version_compare('>= 3.20.0') +- error('sqlite3 >= 3.20.0 must be compiled with --enable-fts5 in order to get FTS support.') ++ sqlite3_builtin_fts5_test = ''' ++ #include ++ ++ int main (int argc, char *argv[]) { ++ sqlite3 *db; ++ int rc; ++ rc = sqlite3_open(":memory:", &db); ++ if (rc!=SQLITE_OK) return -1; ++ rc = sqlite3_exec(db, "create table a(text)", 0, 0, 0); ++ if (rc!=SQLITE_OK) return -1; ++ rc = sqlite3_exec(db, "create virtual table t using fts5(content='a',text)", 0, 0, 0); ++ if (rc!=SQLITE_OK) return -1; ++ } ++ ''' ++ ++ result = cc.run(sqlite3_builtin_fts5_test, ++ name: 'sqlite3 has builtin FTS5 module', ++ dependencies: sqlite) ++ ++ if not result.compiled() ++ error('Failed to compile SQLite FTS test.') ++ endif ++ ++ if result.returncode() == 0 ++ message('Using sqlite3 builtin FTS module') ++ sqlite3_has_builtin_fts5 = true + else +- message('sqlite3 is older than version 3.20.0, using FTS module that is bundled with Tracker') +- sqlite3_has_builtin_fts5 = false ++ message('FTS support was enabled but SQLite doesn\'t have the FTS module built in') ++ if sqlite.version().version_compare('>= 3.20.0') ++ error('sqlite3 >= 3.20.0 must be compiled with --enable-fts5 in order to get FTS support.') ++ else ++ message('sqlite3 is older than version 3.20.0, using FTS module that is bundled with Tracker') ++ sqlite3_has_builtin_fts5 = false ++ endif + endif +- endif ++ endif + + else + sqlite3_has_builtin_fts5 = false +diff --git meson_options.txt meson_options.txt +index fa1ce51dc..19bfa02f3 100644 +--- meson_options.txt ++++ meson_options.txt +@@ -22,3 +22,6 @@ option('dbus_services', type: 'string', value: '', + description: 'Directory to install D-Bus .service files (leave blank to use the value from dbus-1.pc)') + option('systemd_user_services', type: 'string', value: 'yes', + description: 'Directory to install systemd user .service files (or "yes" for default directory, "no" to disable installation)') ++ ++option('sqlite3_fts5', type: 'combo', choices: ['auto', 'builtin', 'external'], value: 'auto', ++ description: 'Whether sqlite has fts support builtin, meant for cross compilation') + diff --git a/srcpkgs/tracker/template b/srcpkgs/tracker/template index 39040f6c8e5..58703958119 100644 --- a/srcpkgs/tracker/template +++ b/srcpkgs/tracker/template @@ -1,64 +1,50 @@ # Template file for 'tracker' pkgname=tracker -version=2.1.7 +version=2.2.0 revision=1 -build_style=gnu-configure -configure_args="--enable-libflac --enable-libvorbis --disable-unit-tests - --enable-libtiff --disable-static --enable-network-manager - $(vopt_enable gir introspection) LDFLAGS= - ac_cv_lib_sqlite3_sqlite3_threadsafe=yes ax_cv_sqlite_threadsafe=yes - ax_cv_sqlite_auto_extension=yes ax_cv_sqlite_builtin_fts5=yes" -hostmakedepends="automake gettext-devel glib-devel gobject-introspection - intltool libtool libxslt pkg-config" -makedepends="enca-devel exempi-devel giflib-devel gupnp-dlna-devel - json-glib-devel libexif-devel libflac-devel libgee-devel libgsf-devel - libgxps-devel libmediaart-devel libseccomp-devel libsecret-devel - libvorbis-devel libxslt-devel network-manager-applet-devel poppler-glib-devel - taglib-devel totem-pl-parser-devel upower-devel" +build_style=meson +build_helper="gir" +configure_args="-Ddocs=false -Dfts=true -Dfunctional_tests=false + -Djournal=true -Dman=true -Dnetwork_manager=enabled -Dstemmer=disabled + -Dsystemd_user_services=no" +hostmakedepends="pkgconf glib-devel vala" +makedepends="dbus-devel libglib-devel icu-devel json-glib-devel + libsoup-devel libxml2-devel sqlite-devel NetworkManager-devel + bash-completion" short_desc="Personal search tool and storage system" maintainer="Juan RP " license="GPL-2.0-or-later" homepage="https://live.gnome.org/Tracker" distfiles="${GNOME_SITE}/tracker/${version%.*}/tracker-${version}.tar.xz" -checksum=fb4e7b71929dbc56045bc5920bd0e47b6081a094c131e991e5a411e44b24a24a +checksum=6da6c4abd2341a5f2748e504590ef719b8c6fcc78f033d11fb22dab79b8f2306 -# Package build options -build_options="gir" -# Disable gir for cross builds. -if [ -z "$CROSS_BUILD" ]; then - build_options_default="gir" +if [ "$CROSS_BUILD" ]; then + configure_args+=" -Dsqlite3_fts5=builtin" fi -pre_configure() { - # Set AM_LDFLAGS in subdir's Makefile.am because adding the - # option subdir-objects to configure.ac does not work. - sed -e"/^AM_CPPFLAGS/i AM_LDFLAGS = ${LDFLAGS}" \ - -i src/*/Makefile.am src/*/*/Makefile.am - autoreconf -fi -} +case "$XBPS_TARGET_MACHINE" in + x86_64-musl) ;; + *-musl) broken="gobject-introspection" ;; +esac tracker-devel_package() { depends="libglib-devel libtracker>=${version}_${revision}" short_desc+=" - development files" pkg_install() { vmove usr/include - if [ "$build_option_gir" ]; then - vmove usr/share/gir-1.0 - fi - vmove usr/share/gtk-doc + vmove usr/share/gir-1.0 vmove usr/share/vala vmove usr/lib/pkgconfig vmove "usr/lib/*.so" } } + libtracker_package() { - shlib_provides="libtracker-common.so.0 libtracker-data.so.0 libtracker-extract.so.0" + shlib_provides="libtracker-common.so libtracker-data.so" short_desc+=" - shared libraries" pkg_install() { vmove "usr/lib/*.so.*" vmove "usr/lib/tracker-2.0/*.so*" - if [ "$build_option_gir" ]; then - vmove usr/lib/girepository-1.0 - fi + vmove usr/lib/girepository-1.0 } }