Page MenuHomeFreeBSD

D39424.id120397.diff
No OneTemporary

D39424.id120397.diff

Index: CHANGES
===================================================================
--- CHANGES
+++ CHANGES
@@ -10,6 +10,21 @@
All ports committers are allowed to commit to this file.
+20230417:
+AUTHOR: zirias@FreeBSD.org
+
+ USES=magick has been updated based on flavorized ports.
+
+ A new argument 'x11' is available to specifically depend on the flavor
+ with X11 support. Fallback to DEFAULT_VERSIONS now happens
+ independently for the version (currently 6 or 7) and the flavor
+ (currently x11 or nox11).
+
+ Only use arguments for version or flavor if your port really requires
+ it. Also, there is no need to add options for selecting the -nox11
+ flavor any more, as the user setting in DEFAULT_VERSIONS will be
+ honored.
+
20230111:
AUTHOR: vishwin@FreeBSD.org
Index: MOVED
===================================================================
--- MOVED
+++ MOVED
@@ -17909,3 +17909,5 @@
www/rubygem-erubi19|www/rubygem-erubi|2023-04-09|Remove obsoleted port. Use www/rubygem-erubi instead
multimedia/mythtv-frontend|multimedia/mythtv|2023-04-10|Frontend is no part of multimedia/mythtv
lang/ruby27|lang/ruby30|2023-04-13|Please migrate to newer versions. Ruby 2.7 will reach its EoL on April 12, 2023
+graphics/ImageMagick7-nox11|graphics/ImageMagick7|2023-04-17|Flavorized
+graphics/ImageMagick6-nox11|graphics/ImageMagick6|2023-04-17|Flavorized
Index: Mk/Uses/magick.mk
===================================================================
--- Mk/Uses/magick.mk
+++ Mk/Uses/magick.mk
@@ -2,29 +2,33 @@
#
# Feature: magick
# Usage: USES=magick:ARGS
-# Valid ARGS: [version],[kinds],[flavor]
+# Valid ARGS: [version],[flavor],[kinds]
#
# version The chooseable versions are <none>, 6 and 7.
-# USES=magick -- depend on ${IMAGEMAGICK_DEFAULT} (default)
+# USES=magick -- depend on the default version (default)
# USES=magick:6 -- depend on ImageMagick6
# USES=magick:7 -- depend on ImageMagick7
#
-# flavor The flavors are <none> and nox11
+# flavor The flavors are <none>, x11 and nox11
# USES=magick -- depend on the default flavor (default)
+# USES=magick:x11 -- depend on the x11 flavor
# USES=magick:nox11 -- depend on the nox11 flavor
#
# kinds The dependency kinds are <none>, lib, build, run and test
-# USES=magick -- add a LIB_DEPENDS (default)
-# USES=magick:lib -- add a LIB_DEPENDS
-# USES=magick:build -- add a BUILD_DEPENDS
-# USES=magick:run -- add a RUN_DEPENDS
-# USES=magick:test -- add a TEST_DEPENDS
-# USES=build,run -- add a BUILD_- and RUN_DEPENDS
+# USES=magick -- add a LIB_DEPENDS (default)
+# USES=magick:lib -- add a LIB_DEPENDS
+# USES=magick:build -- add a BUILD_DEPENDS
+# USES=magick:run -- add a RUN_DEPENDS
+# USES=magick:test -- add a TEST_DEPENDS
+# USES=magick:build,run -- add a BUILD_- and RUN_DEPENDS
#
-# In short, on a default ports tree
+# In short, on a default ports tree without custom DEFAULT_VERSIONS
# USES=magick
# is equivalent to
-# USES=magick:7,lib
+# USES=magick:7,x11,lib
+#
+# Make sure to only add arguments strictly needed, as [version] and [flavor]
+# will override user configuration in DEFAULT_VERSIONS.
#
# MAINTAINER: tcberner@FreeBSD.org
#
@@ -47,21 +51,31 @@
. endfor
# Fallback to the default version
. if empty(_magick_version)
-_magick_version= ${IMAGEMAGICK_DEFAULT}
+_magick_version= ${IMAGEMAGICK_DEFAULT:C/-.*//}
+. endif
+. if !${_magick_versions:M${_magick_version}}
+IGNORE= Invalid version of ImageMagick: "${_magick_version}"
. endif
#=== Flavor selection ===
-_magick_flavors= nox11
+_magick_flavors= x11 nox11
_magick_flavor= #
. for _flavor in ${_magick_flavors:O:u}
. if ${magick_ARGS:M${_flavor}}
. if empty(_magick_flavor)
-_magick_flavor= -${_flavor}
+_magick_flavor= ${_flavor}
. else
IGNORE= Incorrect USES=magick:${magick_ARGS} - multiple flavors defined
. endif
. endif
. endfor
+# Fallback to the default flavor
+. if empty(_magick_flavor) && ${IMAGEMAGICK_DEFAULT:M*-*}
+_magick_flavor= ${IMAGEMAGICK_DEFAULT:C/.*-//}
+. endif
+. if !empty(_magick_flavor) && !${_magick_flavors:M${_magick_flavor}}
+IGNORE= Invalid flavor of ImageMagick: "${_magick_flavor}"
+. endif
#=== Dependency selection ===
_magick_depends= lib build run test
@@ -75,10 +89,19 @@
_magick_depend= lib
. endif
+#=== Check for invalid arguments ===
+_magick_unknown_args:= ${magick_ARGS:N${_magick_version}:N${_magick_flavor}}
+. for _depend in ${_magick_depend}
+_magick_unknown_args:= ${_magick_unknown_args:N${_depend}}
+. endfor
+. if !empty(_magick_unknown_args)
+IGNORE= Invalid USES=magick - unsupported argument(s): ${_magick_unknown_args}
+. endif
+
#=== Dependency setup ===
-_MAGICK_PORT= graphics/ImageMagick${_magick_version}${_magick_flavor}
+_MAGICK_PORT= graphics/ImageMagick${_magick_version}${_magick_flavor:%=@%}
_MAGICK_LIB= libMagick++-${_magick_version}.so
-_MAGICK_PKG= ImageMagick${_magick_version}${_magick_flavor}
+_MAGICK_PKG= ImageMagick${_magick_version}${_magick_flavor:Mnox11:%=-%}
_MAGICK_BUILD_DEPENDS= ${_MAGICK_PKG}>=${_magick_version}:${_MAGICK_PORT}
_MAGICK_LIB_DEPENDS= ${_MAGICK_LIB}:${_MAGICK_PORT}
Index: Mk/bsd.default-versions.mk
===================================================================
--- Mk/bsd.default-versions.mk
+++ Mk/bsd.default-versions.mk
@@ -59,7 +59,10 @@
GL_DEFAULT?= mesa-libs
# Possible values: 1.18, 1.19, 1.20, 1.21-devel
GO_DEFAULT?= 1.20
-# Possible values: 6, 6-nox11, 7, 7-nox11
+# Possible versions: 6, 7
+# Possible flavors: x11, nox11
+# Format: version[-flavor]
+# Examples: 6-nox11, 7
IMAGEMAGICK_DEFAULT?= 7
# Possible values: 7, 8, 11, 17, 18
JAVA_DEFAULT?= 8
Index: graphics/ImageMagick6-nox11/Makefile
===================================================================
--- graphics/ImageMagick6-nox11/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-# the SVG and PANGO plugins need X11
-OPTIONS_EXCLUDE= X11 SVG PANGO
-PORTSCOUT= ignore:1
-# workaround until bsd.port.mk code can grok the disabling of the X11 option
-WITHOUT_X11=yes
-
-MASTERDIR= ${.CURDIR}/../ImageMagick6
-
-.include "${MASTERDIR}/Makefile"
Index: graphics/ImageMagick6/Makefile
===================================================================
--- graphics/ImageMagick6/Makefile
+++ graphics/ImageMagick6/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ImageMagick
DISTVERSION= 6.9.12-77
-PORTREVISION= 2
+PORTREVISION= 3
PORTEPOCH= 1
CATEGORIES= graphics perl5
MASTER_SITES= https://ftp.acc.umu.se/mirror/imagemagick.org/ftp/releases/ \
@@ -19,11 +19,16 @@
LIB_DEPENDS= libltdl.so:devel/libltdl
-TESTS_DEPENDS= gsfonts>=0:print/gsfonts
+FLAVORS= x11 nox11
+FLAVOR?= ${FLAVORS:[1]}
+FLAVORS_SUB= yes
+nox11_PKGNAMESUFFIX= 6-nox11
PORTSCOUT?= limit:^6\.9\.
-CONFLICTS_INSTALL= ImageMagick7 ImageMagick7-nox11 # bin/Magick++-config
+# bin/Magick++-config
+CONFLICTS_INSTALL= ImageMagick6 ImageMagick6-nox11 \
+ ImageMagick7 ImageMagick7-nox11
# This port uses .la files, keep libtool:keepla! (magick/module.c)
USES= compiler:c++11-lang cpe gettext-runtime gmake gnome \
@@ -50,11 +55,22 @@
OPTIONS_SUB= yes
OPTIONS_DEFINE= BZIP2 DOCS DJVU FFMPEG FFTW FONTCONFIG FPX FREETYPE \
GRAPHVIZ GSLIB HEIF JPEG2000 JBIG JPEG LCMS2 LZMA LQR MODULES \
- OPENEXR OPENMP PANGO PDF PERL PNG RAQM SVG TESTS TIFF WEBP WMF \
- THREADS X11 16BIT_PIXEL HDRI RAW
+ OPENEXR OPENMP PDF PERL PNG TESTS TIFF WEBP WMF THREADS \
+ 16BIT_PIXEL HDRI RAW
OPTIONS_DEFAULT= 16BIT_PIXEL BZIP2 FFTW FONTCONFIG FREETYPE HEIF \
- JPEG2000 JBIG JPEG LCMS2 LZMA LQR MODULES PDF PERL PNG RAQM SVG \
- TIFF WEBP WMF THREADS X11 RAW
+ JPEG2000 JBIG JPEG LCMS2 LZMA LQR MODULES PDF PERL PNG \
+ TIFF WEBP WMF THREADS RAW
+
+.if ${FLAVOR:U} == x11
+# the SVG and PANGO plugins need X11
+OPTIONS_DEFINE+= PANGO RAQM SVG
+OPTIONS_DEFAULT+= RAQM SVG
+CONFIGURE_ARGS+= --with-x
+USES+= xorg
+USE_XORG= ice sm x11 xext xt
+.else
+CONFIGURE_ARGS+= --without-x
+.endif
DJVU_DESC= DJVU format support (needs THREADS)
GSLIB_DESC= libgs (Postscript SHLIB) support
@@ -129,7 +145,6 @@
PANGO_CONFIGURE_WITH= pango
PANGO_USE= gnome=pango
-PANGO_IMPLIES= X11
PNG_CONFIGURE_WITH= png
PNG_LIB_DEPENDS= libpng.so:graphics/png
@@ -148,7 +163,8 @@
SVG_DESC= SVG vector image format support (via librsvg, implies the x11 option)
SVG_CONFIGURE_WITH= rsvg
SVG_USE= gnome=cairo,gdkpixbuf2,librsvg2
-SVG_IMPLIES= X11
+
+TESTS_TEST_DEPENDS= gsfonts>=0:print/gsfonts
TIFF_CONFIGURE_WITH= tiff
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
@@ -156,13 +172,6 @@
WEBP_CONFIGURE_WITH= webp
WEBP_LIB_DEPENDS= libwebp.so:graphics/webp
-X11_CONFIGURE_WITH= x
-X11_USES= xorg
-X11_USE= xorg=ice,sm,x11,xext,xt
-X11_VARS= CONFLICTS_INSTALL+="ImageMagick6-nox11"
-X11_VARS_OFF= CONFLICTS_INSTALL+="ImageMagick6" \
- PKGNAMESUFFIX=6-nox11
-
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MTHREADS}
@@ -256,7 +265,7 @@
.if ${PORT_OPTIONS:MGSLIB}
CONFIGURE_ARGS+= --with-gslib
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11
. else
USES+= ghostscript
@@ -267,7 +276,7 @@
# WMF (Windows Meta File) images
.if ${PORT_OPTIONS:MWMF}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
LIB_DEPENDS+= libwmf.so:graphics/libwmf
. else
LIB_DEPENDS+= libwmf.so:graphics/libwmf-nox11
@@ -281,7 +290,7 @@
# PDF (Adobe Portable Document Format) support
.if ${PORT_OPTIONS:MPDF}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11
. else
USES+= ghostscript
@@ -299,7 +308,7 @@
.endif
.if ${PORT_OPTIONS:MTESTS}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11,build
. else
USES+= ghostscript:build
@@ -332,10 +341,6 @@
@${ECHO_CMD} '###################################################################'
.endif
-.if ${PORT_OPTIONS:MSVG} && ! ${PORT_OPTIONS:MX11}
- @${ECHO_CMD} NOTICE: SVG format support disabled, requires X11
-.endif
-
post-install:
.for i in ${SAMPLE_FILES}
@${MV} ${STAGEDIR}${PREFIX}/etc/ImageMagick-6/${i} \
Index: graphics/ImageMagick7-nox11/Makefile
===================================================================
--- graphics/ImageMagick7-nox11/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-# the SVG and PANGO plugins need X11
-OPTIONS_EXCLUDE= X11 SVG PANGO RAQM
-PORTSCOUT= ignore:1
-# workaround until bsd.port.mk code can grok the disabling of the X11 option
-WITHOUT_X11=yes
-
-MASTERDIR= ${.CURDIR}/../ImageMagick7
-
-.include "${MASTERDIR}/Makefile"
Index: graphics/ImageMagick7/Makefile
===================================================================
--- graphics/ImageMagick7/Makefile
+++ graphics/ImageMagick7/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ImageMagick
DISTVERSION= 7.1.0-62
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= graphics perl5
MASTER_SITES= https://ftp.acc.umu.se/mirror/imagemagick.org/ftp/releases/ \
https://mirror.dogado.de/imagemagick/releases/ \
@@ -19,10 +19,14 @@
LIB_DEPENDS= libltdl.so:devel/libltdl \
libzip.so:archivers/libzip
-TESTS_DEPENDS= gsfonts>=0:print/gsfonts
+FLAVORS= x11 nox11
+FLAVOR?= ${FLAVORS:[1]}
+FLAVORS_SUB= yes
+nox11_PKGNAMESUFFIX= 7-nox11
# bin/Magick++-config
-CONFLICTS_INSTALL= ImageMagick6 ImageMagick6-nox11
+CONFLICTS_INSTALL= ImageMagick6 ImageMagick6-nox11 \
+ ImageMagick7 ImageMagick7-nox11
# This port uses .la files, keep libtool:keepla! (magick/module.c)
USES= cpe gettext-runtime gmake gnome libtool:keepla localbase \
@@ -48,11 +52,22 @@
OPTIONS_SUB= yes
OPTIONS_DEFINE= BZIP2 DOCS DJVU FFMPEG FFTW FONTCONFIG FPX FREETYPE \
GRAPHVIZ GSLIB JPEG2000 JBIG JPEG JXL LCMS2 LZMA LQR MODULES \
- OPENEXR OPENMP PANGO PDF PERL PNG RAQM SVG TESTS TIFF WEBP WMF \
- THREADS X11 16BIT_PIXEL HDRI HEIF RAW
+ OPENEXR OPENMP PDF PERL PNG TESTS TIFF WEBP WMF THREADS \
+ 16BIT_PIXEL HDRI HEIF RAW
OPTIONS_DEFAULT= 16BIT_PIXEL BZIP2 FFTW FONTCONFIG FREETYPE HEIF \
- JPEG2000 JBIG JPEG JXL LCMS2 LZMA LQR MODULES OPENEXR PDF PERL PNG RAQM SVG \
- TIFF WEBP WMF THREADS X11 HDRI RAW
+ JPEG2000 JBIG JPEG JXL LCMS2 LZMA LQR MODULES OPENEXR PDF PERL PNG \
+ TIFF WEBP WMF THREADS HDRI RAW
+
+.if ${FLAVOR:U} == x11
+# the SVG and PANGO plugins need X11
+OPTIONS_DEFINE+= PANGO RAQM SVG
+OPTIONS_DEFAULT+= RAQM SVG
+CONFIGURE_ARGS+= --with-x
+USES+= xorg
+USE_XORG= ice sm x11 xext xt
+.else
+CONFIGURE_ARGS+= --without-x
+.endif
DJVU_DESC= DJVU format support (needs THREADS)
GSLIB_DESC= libgs (Postscript SHLIB) support
@@ -129,7 +144,6 @@
PANGO_CONFIGURE_WITH= pango
PANGO_USE= gnome=pango
-PANGO_IMPLIES= X11
PNG_CONFIGURE_WITH= png
PNG_LIB_DEPENDS= libpng.so:graphics/png
@@ -148,7 +162,8 @@
SVG_DESC= SVG vector image format support (via librsvg, implies the x11 option)
SVG_CONFIGURE_WITH= rsvg
SVG_USE= gnome=cairo,gdkpixbuf2,librsvg2
-SVG_IMPLIES= X11
+
+TESTS_TEST_DEPENDS= gsfonts>=0:print/gsfonts
TIFF_CONFIGURE_WITH= tiff
TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff
@@ -156,13 +171,6 @@
WEBP_CONFIGURE_WITH= webp
WEBP_LIB_DEPENDS= libwebp.so:graphics/webp
-X11_CONFIGURE_WITH= x
-X11_USES= xorg
-X11_USE= xorg=ice,sm,x11,xext,xt
-X11_VARS= CONFLICTS_INSTALL+="ImageMagick7-nox11"
-X11_VARS_OFF= CONFLICTS_INSTALL+="ImageMagick7" \
- PKGNAMESUFFIX=7-nox11
-
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MTHREADS}
@@ -250,7 +258,7 @@
.if ${PORT_OPTIONS:MGSLIB}
CONFIGURE_ARGS+= --with-gslib
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11
. else
USES+= ghostscript
@@ -261,7 +269,7 @@
# WMF (Windows Meta File) images
.if ${PORT_OPTIONS:MWMF}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
LIB_DEPENDS+= libwmf.so:graphics/libwmf
. else
LIB_DEPENDS+= libwmf.so:graphics/libwmf-nox11
@@ -275,7 +283,7 @@
# PDF (Adobe Portable Document Format) support
.if ${PORT_OPTIONS:MPDF}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11
. else
USES+= ghostscript
@@ -298,7 +306,7 @@
.endif
.if ${PORT_OPTIONS:MTESTS}
-. if ${PORT_OPTIONS:MX11}
+. if ${FLAVOR:U} == x11
USES+= ghostscript:x11,build
. else
USES+= ghostscript:build
@@ -329,10 +337,6 @@
@${ECHO_CMD} '###################################################################'
.endif
-.if ${PORT_OPTIONS:MSVG} && ! ${PORT_OPTIONS:MX11}
- @${ECHO_CMD} NOTICE: SVG format support disabled, requires X11
-.endif
-
post-install:
.for i in ${SAMPLE_FILES}
@${MV} ${STAGEDIR}${PREFIX}/etc/ImageMagick-7/${i} \
Index: graphics/Makefile
===================================================================
--- graphics/Makefile
+++ graphics/Makefile
@@ -6,9 +6,7 @@
SUBDIR += Hermes
SUBDIR += IPA
SUBDIR += ImageMagick6
- SUBDIR += ImageMagick6-nox11
SUBDIR += ImageMagick7
- SUBDIR += ImageMagick7-nox11
SUBDIR += O2-tools
SUBDIR += R-cran-DiagrammeR
SUBDIR += R-cran-GDD

File Metadata

Mime Type
text/plain
Expires
Sat, Oct 10, 12:36 AM (10 h, 28 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
40514389
Default Alt Text
D39424.id120397.diff (14 KB)

Event Timeline