1. 16 Dec, 2017 1 commit
    • Sam Thursfield's avatar
      Rename libtracker-common to libtracker-miners-common · 3cee7b92
      Sam Thursfield authored
      We made a big compromise when splitting tracker core from tracker-miners
      in that the common code that was needed by both parts would end up
      duplicated. It's ugly but it works fine at the moment and allows us to
      keep all of the common code private.
      
      I had an issue when trying to embed tracker core into tracker-miners as
      a Meson subproject though. Having two targets named tracker-common
      caused confusion as duplicate targets aren't allowed, but they are not
      quite equivalent so we can't just pick one or the other.
      
      To work around this, I've renamed the copy in this repo to
      tracker-miners-common. This only affects the target names, not the
      actual function names.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=789725
      3cee7b92
  2. 02 Nov, 2017 1 commit
  3. 03 Aug, 2017 1 commit
    • Carlos Garnacho's avatar
      Remove code not related to miners · 63af0cfe
      Carlos Garnacho authored
      The miners are being split from the core tracker package.
      
      On both autotools/meson builds, datadir and libdir for
      private data has been changed to be separate from the tracker
      core. Same goes for the gettext package and other bits.
      
      Additionally, avoid installing the dbus xml descriptions.
      That's fairly non-standard and unnecessary with introspection.
      63af0cfe
  4. 22 May, 2017 1 commit
    • Sam Thursfield's avatar
      Meson build instructions for Tracker · 68b41e39
      Sam Thursfield authored
      See <http://mesonbuild.com/> for information about Meson.
      
      Remaining issues:
      
        * There's no `make dist` equivalent. We currently produce release
          tarballs containing the output files of the Vala compiler. We need
          to think through whether we can stop doing that. Shipping the
          generated .c files does make the Vala preprocessor useless so
          it would be good if we can stop.
      
        * The Firefox, Thunderbird, Evolution and Nautilus plugins are not
          built
      
        * https://github.com/mesonbuild/meson/issues/671 -- means we can't
          depend on tracker_common_dep in most places and have to manually
          set link_with, include_directories and sources instead.
      
        * https://github.com/mesonbuild/meson/issues/1469 -- without this we
          have to install generated Vala headers using a script
      
        * https://github.com/mesonbuild/meson/issues/1229 -- means adding
          the #include guard to libtracker-sparql/tracker-generated-no-checks.h
          is a pain
      
        * The test suite has some spurious failures.
      
      Here's a rough speed comparison.
      
      Meson:
              time sh -c 'meson .. --prefix=/opt/tracker-meson -D bash_completion=/opt/tracker-meson/share/bash-completion -Dsystemd_user_services=/opt/tracker-meson/lib/systemd/user -Ddbus_services=/opt/tracker-meson/share/dbus-1/services && ninja-build -j 4 && ninja-build install'
      
              real  1m8.194s
              user  2m16.962s
              sys   0m20.532s
      
      Autotools:
              time sh -c './configure --prefix=/opt/tracker-autotools --with-bash-completion-dir=/opt/tracker-autotools/share/bash-completion --with-session-bus-services-dir=/opt/tracker-autotools/share/dbus-1/services --disable-nautilus-extension && make -j 4 && make install'
      
              real  2m37.750s
              user  4m37.214s
              sys   0m54.806s
      
              Plus 30+ seconds of ./autogen.sh first.
      
      Note that Meson builds may fail if your source tree has generated files
      from an Autotools build in there. If you see errors about duplicate
      definitions, first try cleaning your source tree (use `git clean -dfx`,
      but make sure you commit any work first!!)
      68b41e39