summaryrefslogtreecommitdiff
path: root/libmediaart
Commit message (Collapse)AuthorAgeFilesLines
* libmediaart/meson.build: replace shared_libraryFabrice Fontaine2022-06-011-1/+1
| | | | | | | | | | | Use library() to make building a static or dynamic library optional depending on the builtin "default_library" meson option. Fixes failures when using the library statically: /home/buildroot/autobuild/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/buildroot/autobuild/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libc.a(__uClibc_main.os): in function `__uClibc_fini': __uClibc_main.c:(.text+0x15c): undefined reference to `__fini_array_start' Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
* meson: add vapi optionMatt Turner2022-03-261-4/+6
|
* meson: add introspection optionFabrice Fontaine2022-03-261-20/+22
| | | | | | | | Add introspection option Fix #3 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
* Hide the parent members from gtk-docEmmanuele Bassi2021-05-221-2/+2
| | | | It's pointless to document them.
* Document the media_art_error_quark functionEmmanuele Bassi2021-05-221-0/+2
| | | | The description is missing.
* Remove AutotoolsEmmanuele Bassi2021-05-221-118/+0
| | | | | There is no point in keeping two build systems in parallel, especially when one of them is Autotools.
* Drop Qt4 supportEmmanuele Bassi2021-05-202-13/+1
| | | | Qt 4 was end-of-lifed in December 2015.
* Merge branch 'ebassi/memdup' into 'master'Sam Thursfield2021-05-201-1/+5
|\ | | | | | | | | Don't use a field before setting it See merge request GNOME/libmediaart!10
| * Use g_memdup2() with newer versions of GLibEmmanuele Bassi2021-05-201-0/+4
| | | | | | | | | | | | The g_memdup() call was deprecated in GLib 2.68 because it used an unsigned integer for the buffer size argument. The g_memdup2() function, which uses a gsize, was introduced in the same version.
| * Don't use a field before setting itEmmanuele Bassi2021-05-201-1/+1
| | | | | | | | | | | | We are using the data->len field in our g_memdup() call before we're actually setting it; since the data structure is zero-filled, it means we're not copying the buffer at all.
* | build: Export the pkg-config file in the GIREmmanuele Bassi2021-05-171-3/+8
|/ | | | Tools that parse the GIR need the exported package.
* Mandate that inputs are valid UTF8Sam Thursfield2020-12-271-0/+17
| | | | | | | | | | | | | This restriction was already in place, since we passed the inputs directly to GLib functions that expect valid UTF8. If this library were widely used then we might proactively validate inputs to protect against exploits. At time of writing, this module is only used in 3 places (grilo-plugins, gnome-music and rygel), so just check they are doing the right thing when calling the API. See https://gitlab.gnome.org/GNOME/libmediaart/-/merge_requests/5 for background.
* Rationalize NULL/empty string handling in media_art_strip_invalid_entities()Sam Thursfield2020-12-271-3/+14
| | | | | | | | | | | We return NULL if input is NULL and a newly allocated empty string if input is "". Some comments disagreed with this, and it's possible the change causes a memory leak in some app, but the alternative of returning NULL when passed "" is dangerous as some code may free the return value in this case. (In fact, libmediaart itself does so). Also, make behaviour occur independently of whether `G_ENABLE_CONSISTENCY_CHECKS` was defined at build time.
* Merge branch 'master' into 'master'Sam Thursfield2020-10-161-0/+4
|\ | | | | | | | | Fix Qt5 backend crashing when running in Qt application See merge request GNOME/libmediaart!2
| * Fix Qt5 backend crashing when running in Qt applicationPekka Vuorela2020-04-221-0/+4
| | | | | | | | | | Creating a dummy QCoreApplication instance is bad in itself, but even worse when running in an app that already has one.
* | Merge branch 'master' into 'master'Sam Thursfield2020-10-161-0/+1
|\ \ | | | | | | | | | | | | meson.build: don't require C++ See merge request GNOME/libmediaart!3
| * | meson.build: don't require C++Fabrice Fontaine2020-05-081-0/+1
| |/ | | | | | | | | | | Does not mandate C++ as it is only required for extractqt.cpp Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
* | extract: Remove Storagewip/phako/remove-storageJens Georg2020-05-315-1240/+2
| | | | | | | | | | | | After the removal of mediaartlocal, this is useless now. It can also cause some lock-ups if gvfs is missing
* | extract: Drop obsolete stringsJens Georg2020-05-311-4/+0
|/
* meson: Introspection fixMarinus Schraal2018-01-081-1/+5
| | | | | | | The meson build did not add the extractdummy.c to the sources, which contains introspection annotations. https://bugzilla.gnome.org/show_bug.cgi?id=792272
* extract*: Add missing config.h includesCarlos Garnacho2017-08-102-0/+4
| | | | | This was making the functions defined in extractgeneric.h not really exported.
* meson: Add missing mediaart-macros.h headerCarlos Garnacho2017-08-101-0/+1
| | | | This must be installed by the meson install as well...
* meson: Fix library versioningJan Alexander Steffens (heftig)2017-08-101-0/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=786067
* build: Install macros headerEmmanuele Bassi2017-08-101-1/+1
| | | | | The header is referenced by publicly installed headers, which means installations of libmediaart without it are now broken.
* Distcheck fixesCarlos Garnacho2017-08-091-0/+1
|
* build: Add meson.build files to EXTRA_DISTCarlos Garnacho2017-08-091-0/+1
|
* Meson build instructions for libmediaartSam Thursfield2017-08-091-0/+62
| | | | | | | | | | | | | These are hopefully complete already. I have compared an Autotools-built and a Meson-built install of libmediaart and found only the following differences: * libmediaart-2.0.la isn't generated by Meson * External references in the gtk-doc documentation are relative with Meson and absolute with Autotools * Some changes in generated .vapi file and .pc file https://bugzilla.gnome.org/show_bug.cgi?id=783562
* Use compiler symbol visiblity features to hide internal functionsSam Thursfield2017-08-095-3/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we relied on libtool's -export-symbols-regex feature, but we are hoping to drop GNU Autotools and GNU Libtool in soon in favour of Meson. Meson doesn't have an equivalent feature, instead the advice is to control symbol visibility at compile time. The approach taken in this patch is based on Pango's build system. Pango tells the compiler to hide symbols by default (if possible), and then defines a _PANGO_EXTERN variable at compile time which marks a single symbol as public. In Pango's case there is then further machinary to hide symbols based on deprecation policies but I have not copied that here, instead I used _LIBMEDIAART_EXTERN directly. If a compiler doesn't support hiding symbols then the library we build makes all symbols available, which is exactly what would happen before on platforms where the libtool didn't have an implementation for -export-symbols-regex. See also: http://mesonbuild.com/FAQ.html#how-do-i-do-the-equivalent-of-libtools-exportsymbol-and-exportregex https://git.gnome.org/browse/pango/ https://git.gnome.org/browse/pango/tree/pango/pango-version-macros.h https://gcc.gnu.org/wiki/Visibility https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#Code-Gen-Options (-fvisibility) https://bugzilla.gnome.org/show_bug.cgi?id=783562
* Remove --enable-nemoSam Thursfield2017-08-091-7/+0
| | | | | | | | | | This flag was just enabling a codepath that sets QT_QPA_PLATFORM=minimal in the environment before constructing a QCoreApplication instance. This code path has no effect anyway: QT_QPA_PLATFORM only has an effect if you are using QGuiApplication. https://bugzilla.gnome.org/show_bug.cgi?id=783562
* Remove duplicate introspection comment for media_art_error_quark()Sam Thursfield2017-07-211-7/+0
| | | | | | Fixes this warning: libmediaart/extract.h:93: Warning: MediaArt: multiple comment blocks documenting 'media_art_error_quark:' identifier (already seen at extract.c:1279).
* build: Add an explicit dependency on marshal filesEmmanuele Bassi2017-07-171-0/+2
| | | | | We need those files to be generated before the library is built, but it seems Automake is failing miserably in conditions of massive parallelism.
* build: Improve dependency tracking for marshallers sourcesEmmanuele Bassi2017-07-171-6/+8
| | | | | | | | | Under massive parallelism — like the Continuous build — we may end up in a situation where the sources get built before the marshaller sources are generated. Let's try to increase chances that the dependency tracking inside Automake will do the right thing.
* extract: Remove Nokia album art downloader supportJens Georg2017-06-301-143/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=767959
* extract: Add introspection annotations to media_art_buffer_to_jpeg()Carlos Garnacho2017-03-041-1/+1
| | | | Otherwise the function is unusable through gobject-introspection.
* extract: Initialize variableCarlos Garnacho2016-12-151-1/+1
| | | | | There are paths where the stop variable is not set, so might end up with an uninitialized value when checked.
* libmediaart: Fix _media_art_marshal*() errors when compilingbaserock/1.9.0-8-g52eb649Martyn Russell2015-07-122-4/+4
|
* build: hide private symbolsMichael Biebl2015-05-312-5/+6
| | | | | Use -export-symbols-regex to hide private symbols which should not be exported.
* extract: Align annotation with documentationJens Georg2015-05-151-1/+1
| | | | | | | Documentation says "or NULL" and the code also handles it, but the g-i for this was missing. https://bugzilla.gnome.org/show_bug.cgi?id=739943
* extract: Allow empty artist in media_art_setJens Georg2015-05-151-1/+0
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=739942
* extract: Don't print confusing random strerrorJens Georg2015-05-151-2/+2
| | | | | | | debug was printing g_strerror(errno) even in success case, leaving weird confusing messages, indicating an error even if symlinking succeeded. https://bugzilla.gnome.org/show_bug.cgi?id=739873
* extract, cache: Remove all .mediaartlocal usesremove-mediaartlocalMartyn Russell2014-10-173-281/+68
| | | | | | | This is deemed quite useless now and we should not be littering the file system with .mediaartlocal directories everywhere. https://bugzilla.gnome.org/show_bug.cgi?id=722795
* extract: Add async APIs for all functionsasync-apiMartyn Russell2014-10-172-224/+769
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=724879
* cache: Fixed removing media art, was failing badlyMartyn Russell2014-10-171-55/+51
|
* cache: Added media_art_remove_async() and _finish()Martyn Russell2014-10-174-22/+199
| | | | | | | | Part of this API changes makes the media_art_get_{path|file}() APIs not do i/o operations like creating the cache directory. This is now done in media_art_process_new(). https://bugzilla.gnome.org/show_bug.cgi?id=724879
* extract: Fixed gtkdoc warning for return value of media_art_error_quark()Martyn Russell2014-09-161-1/+1
|
* cache: Allow null values in artist, title and prefixArnel A. Borja2014-09-101-6/+6
| | | | | | | | | The function media_art_get_file checks for null values in artist, title and prefix arguments, and puts special values on them if they do. Do the same on media_art_get_path which calls media_art_get_file internally. https://bugzilla.gnome.org/show_bug.cgi?id=727478
* cache: Make the documentation for media_art_get_path() and _get_file() clearerMartyn Russell2014-08-152-23/+76
| | | | | | | Also added some checks into the API and a return value to know if the function was successful. https://bugzilla.gnome.org/show_bug.cgi?id=734837
* tests: Use tap automake testing scripts, fixes output summariesMartyn Russell2014-08-151-2/+0
| | | | Also updated the unit tests so they don't fail with the new tap system
* extract: Fixed process_buffer() len check (was inverted) and artist/titleMartyn Russell2014-07-281-1/+4
|
* build: Updated .gitignore to omit INSTALL, *.vapi...Martyn Russell2014-07-281-1/+1
|