Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upImplement gdk-pixbuf loader #107
Conversation
ohwgiles
force-pushed the
ohwgiles:feature/gdk-pixbuf
branch
from
25759f0
to
d67258f
Jan 29, 2019
This comment has been minimized.
This comment has been minimized.
Thank you, this is great. @fancycode : I guess we will have to put this into a separate package in order to remove the dependency on gdk-pixbuf for the main library. Can you have a look how to do this? Note: we might also need a post-install script that runs
to immediately update the cache of existing loaders. |
This comment has been minimized.
This comment has been minimized.
I have pulled this into the feature branch To do:
|
This comment has been minimized.
This comment has been minimized.
Thanks for the positive reception. I've added a commit to optionally compile the loader. I left it to default ON but maybe you want to change that. I'm not sure I can help with the autoconf. Regarding the post-install script to update the cache, I suggest this is better left to distributions, since as soon as you build deb/rpm/etc it has to be done differently, not to mention when cross-compiling. |
fancycode
requested changes
Feb 4, 2019
Thanks! I added support for autoconf/automake and integrated building with Travis CI in fcfed0a. Travis: https://travis-ci.org/strukturag/libheif/builds/488412771 Please cherry-pick this to your branch and also resolve the commented issues. |
* This file is part of libheif. | ||
* | ||
* libheif is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU Lesser General Public License as |
This comment has been minimized.
This comment has been minimized.
fancycode
Feb 4, 2019
Member
You mention GPL here (https://github.com/strukturag/libheif/pull/107/files#diff-6206122bfef85e4e34d08571ef26db03R169) but the file has a LGPL header, please either change the header to the GPL version or mention LGPL below. Also, please put a COPYING
file in the gdk-pixbuf
folder if it's GPL - similar to our examples which are MIT licensed or the GO code (which is GPL).
This comment has been minimized.
This comment has been minimized.
@@ -63,3 +63,8 @@ endif() | |||
|
|||
add_subdirectory (examples) | |||
add_subdirectory (libheif) | |||
|
|||
option(WITH_GDK_PIXBUF_LOADER "Compile a gdk-pixbuf loader plugin" ON) |
This comment has been minimized.
This comment has been minimized.
fancycode
Feb 4, 2019
Member
This check is not needed. The subdirectory can determine if gdk-pixbuf is available and conditionally build it then.
This comment has been minimized.
This comment has been minimized.
ohwgiles
Feb 5, 2019
Author
Contributor
Well yes, but IMO it's nice to always be explicit about desired features and then use find_package(.. REQUIRED)
. Anyway this is also fine.
|
||
add_library(pixbufloader-heif MODULE pixbufloader-heif.c) | ||
|
||
target_compile_definitions(pixbufloader-heif PRIVATE "-DGDK_PIXBUF_ENABLE_BACKEND") |
This comment has been minimized.
This comment has been minimized.
fancycode
Feb 4, 2019
Member
I moved the GDK_PIXBUF_ENABLE_BACKEND
define in the code to avoid duplication with the autoconf/automake scripts.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I agree, this is something that should be done by the packaging. |
This comment has been minimized.
This comment has been minimized.
Similar as we do with the thumbnailer: the package |
This comment has been minimized.
This comment has been minimized.
Yes, sounds good. |
fancycode
and others
added some commits
Feb 4, 2019
ohwgiles
force-pushed the
ohwgiles:feature/gdk-pixbuf
branch
from
c7eb5d6
to
07c9a6e
Feb 5, 2019
fancycode
approved these changes
Feb 6, 2019
fancycode
merged commit 9d96532
into
strukturag:master
Feb 6, 2019
This comment has been minimized.
This comment has been minimized.
Thanks for your contribution! |
ohwgiles commentedJan 29, 2019
Providing a gdk-pixbuf loader module means applications such as
gpicview
andpcmanfm
automatically gain HEIF support.There are probably some improvements to be made, it would be especially nice to use the embedded thumbnails, but application code doesn't seem to reliably indicate to gdk-pixbuf that a thumbnail could be returned