graphics/geeqie: update 1.7.3 → 2.0

- Switch from autotools to meson \o/
- Gtk2 support dropped \o/
- Lirc support dropped
- Gspell support added
This commit is contained in:
Dmitry Marakasov 2022-08-31 22:30:03 +03:00
parent 1d87f86c49
commit 663588c104
9 changed files with 135 additions and 119 deletions

View File

@ -1,7 +1,6 @@
PORTNAME= geeqie
DISTVERSIONPREFIX= v
DISTVERSION= 1.7.3
PORTREVISION= 6
DISTVERSION= 2.0
CATEGORIES= graphics
MAINTAINER= amdmi3@FreeBSD.org
@ -12,100 +11,76 @@ LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libpng.so:graphics/png
RUN_DEPENDS= bash:shells/bash
BUILD_DEPENDS= xxd:editors/vim
CONFLICTS= geeqie-devel
USES= autoreconf compiler:c++11-lang gmake gnome jpeg \
localbase pkgconfig desktop-file-utils tar:xz lua:53 shebangfix
USE_GNOME= cairo gdkpixbuf2 intltool
USES= desktop-file-utils gettext-tools gnome jpeg \
lua:53 meson pkgconfig shebangfix
USE_GNOME= cairo gdkpixbuf2 gtk30 glib20
USE_GITHUB= yes
GH_ACCOUNT= BestImageViewer
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --with-readmedir="${DOCSDIR}"
SHEBANG_FILES= plugins/*/geeqie-*
MESON_ARGS= -Djpeg=enabled -Dlua=enabled
PORTDOCS= *
OPTIONS_DEFINE= EXIV2 LCMS LIRC MAP FFMPEGTHUMBNAILER DOCS NLS ARCHIVE
OPTIONS_DEFAULT=EXIV2 LCMS GTK3 PDF FFMPEGTHUMBNAILER HEIF WEBP DJVU OPENJPEG RAW ARCHIVE JXL
OPTIONS_SINGLE= TOOLKIT
OPTIONS_SINGLE_TOOLKIT=GTK2 GTK3
OPTIONS_DEFINE= EXIV2 LCMS MAP FFMPEGTHUMBNAILER ARCHIVE SPELL DOCS NLS
OPTIONS_DEFAULT=EXIV2 LCMS MAP FFMPEGTHUMBNAILER ARCHIVE SPELL \
TIFF PDF HEIF WEBP DJVU OPENJPEG RAW JXL
OPTIONS_GROUP= FORMATS
OPTIONS_GROUP_FORMATS= TIFF PDF HEIF WEBP DJVU OPENJPEG RAW JXL
OPTIONS_SUB= yes
EXIV2_DESC= Metadata editing
LCMS_DESC= Color adjusting
LIRC_DESC= Remote control (broken)
MAP_DESC= GPS map support via libchamplain
TOOLKIT_DESC= Graphical user interface toolkit
FORMATS_DESC= Image formats support
GTK2_DESC= Use GTK 2
GTK3_DESC= Use GTK 3
EXIV2_DESC= Metadata editing
EXIV2_LIB_DEPENDS= libexiv2.so:graphics/exiv2
EXIV2_CONFIGURE_ENABLE= exiv2
EXIV2_MESON_ENABLED= exiv2
LCMS_DESC= Color adjusting
LCMS_LIB_DEPENDS= liblcms2.so:graphics/lcms2
LCMS_CONFIGURE_ENABLE= lcms
LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc
LIRC_CONFIGURE_ENABLE= lirc
LIRC_CONFIGURE_ON= --with-lirc-prefix="${LOCALBASE}"
LIRC_BROKEN= does not build with old lirc from ports
LCMS_MESON_ENABLED= cms
MAP_DESC= GPS map support via libchamplain
MAP_LIB_DEPENDS= libchamplain-0.12.so:graphics/libchamplain \
libclutter-gtk-1.0.so:graphics/clutter-gtk3 \
libclutter-1.0.so:graphics/clutter \
libcogl.so:graphics/cogl \
libjson-glib-1.0.so:devel/json-glib
MAP_CONFIGURE_ENABLE= map gpu-accel
MAP_REQUIRES= GTK3
MAP_USES= gl xorg
MAP_USE= GL=egl XORG=xrandr,x11,xext,xdamage,xfixes,xcomposite,xi
libclutter-1.0.so:graphics/clutter
MAP_MESON_ENABLED= gps-map
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
TIFF_CONFIGURE_ENABLE= tiff
GTK2_USE= GNOME=gtk20
GTK3_USE= GNOME=gtk30
GTK3_CONFIGURE_ENABLE= gtk3
TIFF_MESON_ENABLED= tiff
PDF_LIB_DEPENDS= libpoppler-glib.so:graphics/poppler-glib
PDF_CONFIGURE_ENABLE= pdf
PDF_REQUIRES= GTK3
PDF_MESON_ENABLED= pdf
FFMPEGTHUMBNAILER_DESC= Video file thumbnails generating support
FFMPEGTHUMBNAILER_CONFIGURE_ENABLE= ffmpegthumbnailer
FFMPEGTHUMBNAILER_MESON_ENABLED= videothumbnailer
FFMPEGTHUMBNAILER_LIB_DEPENDS= libffmpegthumbnailer.so:multimedia/ffmpegthumbnailer
GTK2_LIB_DEPENDS= libfreetype.so:print/freetype2 \
libfontconfig.so:x11-fonts/fontconfig
NLS_CONFIGURE_ENABLE= nls
NLS_USES= gettext
NLS_USES_OFF= gettext-tools
HEIF_CONFIGURE_ENABLE= heif
HEIF_MESON_ENABLED= heif
HEIF_LIB_DEPENDS= libheif.so:graphics/libheif
WEBP_CONFIGURE_ENABLE= webp
WEBP_MESON_ENABLED= webp
WEBP_LIB_DEPENDS= libwebp.so:graphics/webp
DJVU_CONFIGURE_ENABLE= djvu
DJVU_MESON_ENABLED= djvu
DJVU_LIB_DEPENDS= libdjvulibre.so:graphics/djvulibre
OPENJPEG_CONFIGURE_ENABLE= j2k
OPENJPEG_MESON_ENABLED= j2k
OPENJPEG_LIB_DEPENDS= libopenjp2.so:graphics/openjpeg
RAW_CONFIGURE_ENABLE= raw
RAW_MESON_ENABLED= libraw
RAW_LIB_DEPENDS= libraw.so:graphics/libraw
ARCHIVE_CONFIGURE_ENABLE= archive
ARCHIVE_MESON_ENABLED= archive
ARCHIVE_USES= libarchive
JXL_CONFIGURE_ENABLE= jpegxl
JXL_MESON_ENABLED= jpegxl
JXL_LIB_DEPENDS= libjxl.so:graphics/libjxl
SPELL_DESC= Spelling check through gspell
SPELL_MESON_ENABLED= spell
SPELL_LIB_DEPENDS= libgspell-1.so:textproc/gspell
DOCS_BUILD_DEPENDS= yelp-build:textproc/yelp-tools
.include <bsd.port.mk>

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1649849477
SHA256 (BestImageViewer-geeqie-v1.7.3_GH0.tar.gz) = 47f7e56b18c6f7b20132228373e03b928df1e7e49a79647e48d8e00b77c3a517
SIZE (BestImageViewer-geeqie-v1.7.3_GH0.tar.gz) = 2813886
TIMESTAMP = 1659995068
SHA256 (BestImageViewer-geeqie-v2.0_GH0.tar.gz) = f6a3c860b161370a695117245fe5e7dbc1340d7bd065c24432f4b8f03c8c8755
SIZE (BestImageViewer-geeqie-v2.0_GH0.tar.gz) = 2821590

View File

@ -1,22 +0,0 @@
--- Makefile.am.orig 2020-11-20 21:36:33 UTC
+++ Makefile.am
@@ -2,8 +2,8 @@
include $(top_srcdir)/aminclude.am
-SUBDIRS = src po doc plugins
-DIST_SUBDIRS = src po doc plugins
+SUBDIRS = src po plugins
+DIST_SUBDIRS = src po plugins
man_MANS = geeqie.1
@@ -12,7 +12,7 @@ readmedir = @readmedir@
if HAVE_MARKDOWN
readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS README.html ChangeLog.html
else
-readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS ChangeLog.html
+readme_DATA = README.md TODO README.lirc AUTHORS
endif
desktopdir = $(datadir)/applications

View File

@ -0,0 +1,11 @@
--- config.h.in.orig 2022-08-08 14:22:00 UTC
+++ config.h.in
@@ -161,7 +161,7 @@
#define HAVE_STRING_H 1
/* Define to 1 if you have the `strverscmp' function. */
-#define HAVE_STRVERSCMP 1
+#mesondefine HAVE_STRVERSCMP
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1

View File

@ -1,28 +0,0 @@
--- configure.ac.orig 2022-01-25 13:04:14 UTC
+++ configure.ac
@@ -18,7 +18,6 @@ AC_PREREQ(2.57)
AC_INIT([geeqie], m4_translit(m4_esyscmd([./version.sh]), m4_newline), [geeqie@freelists.org], [], [http://www.geeqie.org/])
# Add -Werror to the default CFLAGS
-CFLAGS+=" -Werror -Wno-error=deprecated-declarations -Wno-error=sign-compare -Wno-error=return-type"
# Check for rightly dirs
AC_CONFIG_SRCDIR([src/main.c])
@@ -550,7 +549,7 @@ AC_ARG_ENABLE([lua],
[liblua=$enableval], [liblua=auto])
if test "x${liblua}" != "xno"; then
- PKG_CHECK_MODULES(LUA, lua5.3 >= 5.3,
+ PKG_CHECK_MODULES(LUA, lua-5.3 >= 5.3,
[
HAVE_LUA=yes
AC_DEFINE(HAVE_LUA, 1, [define to enable lua support])
@@ -763,7 +762,7 @@ AC_SUBST(JPEGXL_LIBS)
# Markdown support
# ----------------------------------------------------------------------
-AM_CONDITIONAL(HAVE_MARKDOWN, [ "$(command -v markdown)" ])
+AM_CONDITIONAL(HAVE_MARKDOWN, [ "$(false)" ])
# _NL_TIME_FIRST_WEEKDAY support
# note that it is an enum and not a define

View File

@ -0,0 +1,29 @@
--- doc/meson.build.orig 2022-08-08 14:22:00 UTC
+++ doc/meson.build
@@ -16,25 +16,12 @@ subdir('html')
guideindex_xml = files('docbook/GuideIndex.xml')
destdir = join_paths(meson.current_build_dir(), 'html/')
iconsdir = join_paths(meson.current_source_dir(), 'icons/')
-guideindex_html = join_paths(destdir, 'GuideIndex.html')
guideindex_ln = join_paths(destdir, 'index.html')
# Not-found notification already handled by ../meson.build
if gnome_doc_tool.found()
run_command(gnome_doc_tool, 'html', '-o', destdir, '-p', iconsdir, guideindex_xml, check : false)
- run_command(find_program('ln'), '-s', '-f', guideindex_html, guideindex_ln, check : false)
+ run_command(find_program('ln'), '-s', '-f', 'GuideIndex.html', guideindex_ln, check : false)
endif
install_subdir(destdir, install_dir : helpdir, exclude_directories : 'lua-api/latex')
-
-doxygen = find_program('doxygen', required : false)
-if doxygen.found()
- srcdir = join_paths(meson.source_root())
- destdir = join_paths(meson.build_root(), 'doc', 'html', 'lua-api')
-
- run_command(find_program('create-doxygen-lua-api.sh'), srcdir, destdir, check : false)
-
- summary({'lua-api' : ['lua-api help file created:', true]}, section : 'Documentation', bool_yn : true)
-else
- summary({'lua-api' : ['doxygen not found - lua-api help file created:', false]}, section : 'Documentation', bool_yn : true)
-endif

View File

@ -0,0 +1,59 @@
--- meson.build.orig 2022-08-08 14:22:00 UTC
+++ meson.build
@@ -357,7 +357,7 @@ lua_dep = []
req_version = '>=5.3'
option = get_option('lua')
if not option.disabled()
- lua_dep = dependency('lua5.3', version : req_version, required : get_option('lua'))
+ lua_dep = dependency('lua-5.3', version : req_version, required : get_option('lua'))
if lua_dep.found()
conf_data.set('HAVE_LUA', 1)
summary({'lua' : ['lua supported:', true]}, section : 'Configuration', bool_yn : true)
@@ -401,7 +401,7 @@ endif
tiff_dep = []
option = get_option('tiff')
if not option.disabled()
- tiff_dep = cc.find_library('libtiff', required: get_option('tiff'))
+ tiff_dep = dependency('libtiff-4', required: get_option('tiff'))
if tiff_dep.found()
if cc.has_function('TIFFClientOpen', dependencies : tiff_dep)
conf_data.set('HAVE_TIFF', 1)
@@ -446,6 +446,11 @@ else
summary({'nl_langinfo' : ['nl_langinfo not found - first weekday depends on locale:', false, 'first weekday defaults to Monday']}, section : 'Documentation', bool_yn : true)
endif
+result = cc.has_function('strverscmp', prefix : '#include <string.h>')
+if result
+ conf_data.set('HAVE_STRVERSCMP', 1)
+endif
+
conf_data.set_quoted('GETTEXT_PACKAGE', meson.project_name())
conf_data.set_quoted('GQ_APPDIR', gq_appdir)
conf_data.set_quoted('GQ_BINDIR', gq_bindir)
@@ -486,7 +491,7 @@ else
endif
pandoc = find_program('pandoc', required : false)
-if pandoc.found()
+if false
run_command(find_program('gen_readme.sh'), meson.source_root(), meson.build_root(), check : false)
install_data('README.md', 'COPYING', 'TODO', 'AUTHORS',
@@ -494,16 +499,9 @@ if pandoc.found()
install_dir : helpdir)
summary({'README' : ['README.html created:', true]}, section : 'Documentation', bool_yn : true)
else
- install_data('README.md', 'COPYING', 'TODO', 'AUTHORS',
+ install_data('README.md', 'TODO', 'AUTHORS',
install_dir : helpdir)
summary({'README' : ['pandoc not found - README.html created:', false]}, section : 'Documentation', bool_yn : true)
-endif
-
-evince = find_program('evince', required : false)
-if evince.found()
- summary({'print preview' : ['print preview supported:', true]}, section : 'Documentation', bool_yn : true)
-else
- summary({'print preview' : ['evince not found - print preview supported:', false]}, section : 'Documentation', bool_yn : true)
endif
install_data('geeqie.png', install_dir : icondir)

View File

@ -1,8 +0,0 @@
--- version.sh.orig 2022-01-25 13:04:14 UTC
+++ version.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
## @file
## @brief Generate the Geeqie version number

View File

@ -10,7 +10,6 @@ lib/geeqie/geeqie-tethered-photography
lib/geeqie/geeqie-tethered-photography-hook-script
lib/geeqie/geocode-parameters.awk
lib/geeqie/lensID
man/man1/geeqie.1.gz
share/applications/geeqie.desktop
%%DATADIR%%/applications/camera-import.desktop
%%DATADIR%%/applications/export-jpeg.desktop
@ -58,5 +57,6 @@ share/applications/geeqie.desktop
%%NLS%%share/locale/vi/LC_MESSAGES/geeqie.mo
%%NLS%%share/locale/zh_CN/LC_MESSAGES/geeqie.mo
%%NLS%%share/locale/zh_TW/LC_MESSAGES/geeqie.mo
share/man/man1/geeqie.1.gz
share/metainfo/org.geeqie.Geeqie.appdata.xml
share/pixmaps/geeqie.png