GraphicsMagick: Rename coders/acppfile.cpp to magick/acppfile.cp...

GraphicsMagick Commits <[email protected]> Thu, 22 Feb 2024 08:01:07 -0600
Newsgroups gmane.comp.video.graphicsmagick.cvs
Message-ID <mailman.8916.1708610477.1744.graphicsmagick-commit@lists.sourceforge.net>
changeset 5028adfce7a6 in /hg/GraphicsMagick
details: http://hg.GraphicsMagick.org/hg/GraphicsMagick?cmd=changeset;node=5028adfce7a6
summary: Rename coders/acppfile.cpp to magick/acppfile.cpp and include some in-progress changes which are necessary for the build to still work.

diffstat:

 ChangeLog             |    6 +
 Makefile.am           |   14 ++
 Makefile.in           |  248 +++++++++++++++++++++++++++----------------------
 coders/Makefile.am    |   14 +-
 coders/acppfile.cpp   |   10 --
 configure             |    4 +-
 configure.ac          |    4 +-
 magick/acppfile.cpp   |   10 ++
 utilities/Makefile.am |    4 +-
 www/ChangeLog.html    |    8 +
 10 files changed, 186 insertions(+), 136 deletions(-)

diffs (truncated from 815 to 500 lines):

diff -r 773c99c3685e -r 5028adfce7a6 ChangeLog
--- a/ChangeLog	Thu Feb 22 07:35:54 2024 -0600
+++ b/ChangeLog	Thu Feb 22 08:01:02 2024 -0600
@@ -1,3 +1,9 @@
+2024-02-22  Bob Friesenhahn  <[email protected]>
+
+	* Makefile.am: Rename coders/acppfile.cpp to magick/acppfile.cpp
+	and include some in-progress changes which are necessary for the
+	build to still work.
+
 2024-02-22  Fojtik Jaroslav  <[email protected]>
 
 	* VisualMagick/tests/runtest.bat: G,K and Y tests started to fail
diff -r 773c99c3685e -r 5028adfce7a6 Makefile.am
--- a/Makefile.am	Thu Feb 22 07:35:54 2024 -0600
+++ b/Makefile.am	Thu Feb 22 08:01:02 2024 -0600
@@ -28,6 +28,20 @@
 MODULECOMMONFLAGS = -no-undefined -export-symbols-regex ".*" -shared -module -avoid-version
 MODULECOMMONCPPFLAGS = $(AM_CPPFLAGS)
 
+# A dummy C++ file to force libtool linkage with the C++ compiler via simple inclusion.
+# FIXME: Need condition code to handle the cases where:
+#  C++ is not needed at all (don't include acppfile.cpp in compile at all)
+#  C++ is needed and a static build (acppfile.cpp added to libGraphicsMagick.a and utilities/gm)
+#  C++ is needed but a shared (non-module) build (acppfile.cpp added to only libGraphicsMagick.so)
+#  C++ is needed, but a shared modules build (acppfile.cpp added to only to C++-dependent modules)
+ACPPFILE = magick/acppfile.cpp
+
+# if WITH_MODULES # Building modules
+# if WITH_SHARED_LIBS # Building shared libraries
+# if HasFPX
+# if HasHEIF
+# if HasJXL
+
 # Coverity parameters
 # FIXME: Could use info from /etc/os-release, or output from
 # lsb_release.
diff -r 773c99c3685e -r 5028adfce7a6 Makefile.in
--- a/Makefile.in	Thu Feb 22 07:35:54 2024 -0600
+++ b/Makefile.in	Thu Feb 22 08:01:02 2024 -0600
@@ -34,7 +34,7 @@
 #
 #
 
-# Copyright (C) 2004-2022 GraphicsMagick Group
+# Copyright (C) 2004-2024 GraphicsMagick Group
 #
 # This program is covered by multiple licenses, which are described in
 # Copyright.txt. You should have received a copy of Copyright.txt with this
@@ -117,7 +117,7 @@
 # Makefile for building Wand API HTML files
 #
 
-# Copyright (C) 2004-2022 GraphicsMagick Group
+# Copyright (C) 2004-2024 GraphicsMagick Group
 #
 # This program is covered by multiple licenses, which are described in
 # Copyright.txt. You should have received a copy of Copyright.txt with this
@@ -492,8 +492,8 @@
 	$@
 @WITH_MODULES_TRUE@am_coders_fits_la_rpath = -rpath $(codersdir)
 coders_fpx_la_DEPENDENCIES = $(LIBMAGICK) $(am__DEPENDENCIES_1)
-am_coders_fpx_la_OBJECTS = coders/fpx_la-fpx.lo \
-	coders/fpx_la-acppfile.lo
+am__objects_1 = magick/coders_fpx_la-acppfile.lo
+am_coders_fpx_la_OBJECTS = coders/fpx_la-fpx.lo $(am__objects_1)
 coders_fpx_la_OBJECTS = $(am_coders_fpx_la_OBJECTS)
 coders_fpx_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
@@ -525,8 +525,8 @@
 	$@
 @WITH_MODULES_TRUE@am_coders_gray_la_rpath = -rpath $(codersdir)
 coders_heif_la_DEPENDENCIES = $(LIBMAGICK) $(am__DEPENDENCIES_1)
-am_coders_heif_la_OBJECTS = coders/heif_la-heif.lo \
-	coders/heif_la-acppfile.lo
+am__objects_2 = magick/coders_heif_la-acppfile.lo
+am_coders_heif_la_OBJECTS = coders/heif_la-heif.lo $(am__objects_2)
 coders_heif_la_OBJECTS = $(am_coders_heif_la_OBJECTS)
 coders_heif_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
@@ -618,8 +618,8 @@
 @HasJPEG_TRUE@@WITH_MODULES_TRUE@am_coders_jpeg_la_rpath = -rpath \
 @HasJPEG_TRUE@@WITH_MODULES_TRUE@	$(codersdir)
 coders_jxl_la_DEPENDENCIES = $(LIBMAGICK) $(am__DEPENDENCIES_1)
-am_coders_jxl_la_OBJECTS = coders/jxl_la-jxl.lo \
-	coders/jxl_la-acppfile.lo
+am__objects_3 = magick/coders_jxl_la-acppfile.lo
+am_coders_jxl_la_OBJECTS = coders/jxl_la-jxl.lo $(am__objects_3)
 coders_jxl_la_OBJECTS = $(am_coders_jxl_la_OBJECTS)
 coders_jxl_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
@@ -1222,7 +1222,7 @@
 	coders/psd.c coders/cals.c coders/caption.c coders/cineon.c \
 	coders/cmyk.c coders/cut.c coders/dcm.c coders/dcraw.c \
 	coders/dib.c coders/dps.c coders/dpx.c coders/fax.c \
-	coders/fits.c coders/fpx.c coders/acppfile.cpp \
+	coders/fits.c coders/fpx.c magick/acppfile.cpp \
 	coders/clipboard.c coders/emf.c coders/gif.c coders/gradient.c \
 	coders/gray.c coders/heif.c coders/histogram.c coders/hrz.c \
 	coders/html.c coders/icon.c coders/identity.c coders/info.c \
@@ -1245,12 +1245,12 @@
 	coders/wmf.c coders/wpg.c coders/x.c coders/xwd.c coders/xbm.c \
 	coders/xc.c coders/xcf.c coders/xpm.c coders/yuv.c \
 	filters/analyze.c
-@HasX11_TRUE@am__objects_1 = magick/libGraphicsMagick_la-animate.lo \
+@HasX11_TRUE@am__objects_4 = magick/libGraphicsMagick_la-animate.lo \
 @HasX11_TRUE@	magick/libGraphicsMagick_la-display.lo \
 @HasX11_TRUE@	magick/libGraphicsMagick_la-PreRvIcccm.lo \
 @HasX11_TRUE@	magick/libGraphicsMagick_la-widget.lo \
 @HasX11_TRUE@	magick/libGraphicsMagick_la-xwindow.lo
-am__objects_2 = magick/libGraphicsMagick_la-analyze.lo \
+am__objects_5 = magick/libGraphicsMagick_la-analyze.lo \
 	magick/libGraphicsMagick_la-annotate.lo \
 	magick/libGraphicsMagick_la-attribute.lo \
 	magick/libGraphicsMagick_la-average.lo \
@@ -1323,44 +1323,45 @@
 	magick/libGraphicsMagick_la-type.lo \
 	magick/libGraphicsMagick_la-unix_port.lo \
 	magick/libGraphicsMagick_la-utility.lo \
-	magick/libGraphicsMagick_la-version.lo $(am__objects_1)
-@CYGWIN_BUILD_TRUE@@WIN32_NATIVE_BUILD_FALSE@am__objects_3 = magick/libGraphicsMagick_la-nt_feature.lo
-@WIN32_NATIVE_BUILD_TRUE@am__objects_3 = magick/libGraphicsMagick_la-nt_base.lo \
+	magick/libGraphicsMagick_la-version.lo $(am__objects_4)
+@CYGWIN_BUILD_TRUE@@WIN32_NATIVE_BUILD_FALSE@am__objects_6 = magick/libGraphicsMagick_la-nt_feature.lo
+@WIN32_NATIVE_BUILD_TRUE@am__objects_6 = magick/libGraphicsMagick_la-nt_base.lo \
 @WIN32_NATIVE_BUILD_TRUE@	magick/libGraphicsMagick_la-nt_feature.lo
-@ENABLE_BROKEN_CODERS_TRUE@am__objects_4 = coders/magick_libGraphicsMagick_la-psd.lo
-@HasDPS_TRUE@am__objects_5 =  \
+@ENABLE_BROKEN_CODERS_TRUE@am__objects_7 = coders/magick_libGraphicsMagick_la-psd.lo
+@HasDPS_TRUE@am__objects_8 =  \
 @HasDPS_TRUE@	coders/magick_libGraphicsMagick_la-dps.lo
-@HasFPX_TRUE@am__objects_6 =  \
+am__objects_9 = magick/libGraphicsMagick_la-acppfile.lo
+@HasFPX_TRUE@am__objects_10 =  \
 @HasFPX_TRUE@	coders/magick_libGraphicsMagick_la-fpx.lo \
-@HasFPX_TRUE@	coders/magick_libGraphicsMagick_la-acppfile.lo
-@HasWINGDI32_TRUE@am__objects_7 = coders/magick_libGraphicsMagick_la-clipboard.lo \
+@HasFPX_TRUE@	$(am__objects_9)
+@HasWINGDI32_TRUE@am__objects_11 = coders/magick_libGraphicsMagick_la-clipboard.lo \
 @HasWINGDI32_TRUE@	coders/magick_libGraphicsMagick_la-emf.lo
-@HasHEIF_TRUE@am__objects_8 =  \
+@HasHEIF_TRUE@am__objects_12 =  \
 @HasHEIF_TRUE@	coders/magick_libGraphicsMagick_la-heif.lo \
-@HasHEIF_TRUE@	coders/magick_libGraphicsMagick_la-acppfile.lo
-@HasJBIG_TRUE@am__objects_9 =  \
+@HasHEIF_TRUE@	$(am__objects_9)
+@HasJBIG_TRUE@am__objects_13 =  \
 @HasJBIG_TRUE@	coders/magick_libGraphicsMagick_la-jbig.lo
-@HasJP2_TRUE@am__objects_10 =  \
+@HasJP2_TRUE@am__objects_14 =  \
 @HasJP2_TRUE@	coders/magick_libGraphicsMagick_la-jp2.lo
-@HasJPEG_TRUE@am__objects_11 =  \
+@HasJPEG_TRUE@am__objects_15 =  \
 @HasJPEG_TRUE@	coders/magick_libGraphicsMagick_la-jnx.lo \
 @HasJPEG_TRUE@	coders/magick_libGraphicsMagick_la-jpeg.lo
-@HasJXL_TRUE@am__objects_12 =  \
+@HasJXL_TRUE@am__objects_16 =  \
 @HasJXL_TRUE@	coders/magick_libGraphicsMagick_la-jxl.lo \
-@HasJXL_TRUE@	coders/magick_libGraphicsMagick_la-acppfile.lo
-@HasPNG_TRUE@am__objects_13 =  \
+@HasJXL_TRUE@	$(am__objects_9)
+@HasPNG_TRUE@am__objects_17 =  \
 @HasPNG_TRUE@	coders/magick_libGraphicsMagick_la-png.lo
-@HasTIFF_TRUE@am__objects_14 =  \
+@HasTIFF_TRUE@am__objects_18 =  \
 @HasTIFF_TRUE@	coders/magick_libGraphicsMagick_la-ept.lo \
 @HasTIFF_TRUE@	coders/magick_libGraphicsMagick_la-tiff.lo
-@HasWEBP_TRUE@am__objects_15 =  \
+@HasWEBP_TRUE@am__objects_19 =  \
 @HasWEBP_TRUE@	coders/magick_libGraphicsMagick_la-webp.lo
-@HasX11_TRUE@am__objects_16 = coders/magick_libGraphicsMagick_la-x.lo \
+@HasX11_TRUE@am__objects_20 = coders/magick_libGraphicsMagick_la-x.lo \
 @HasX11_TRUE@	coders/magick_libGraphicsMagick_la-xwd.lo
-am__objects_17 = coders/magick_libGraphicsMagick_la-art.lo \
+am__objects_21 = coders/magick_libGraphicsMagick_la-art.lo \
 	coders/magick_libGraphicsMagick_la-avs.lo \
 	coders/magick_libGraphicsMagick_la-bmp.lo \
-	coders/magick_libGraphicsMagick_la-braille.lo $(am__objects_4) \
+	coders/magick_libGraphicsMagick_la-braille.lo $(am__objects_7) \
 	coders/magick_libGraphicsMagick_la-cals.lo \
 	coders/magick_libGraphicsMagick_la-caption.lo \
 	coders/magick_libGraphicsMagick_la-cineon.lo \
@@ -1368,20 +1369,20 @@
 	coders/magick_libGraphicsMagick_la-cut.lo \
 	coders/magick_libGraphicsMagick_la-dcm.lo \
 	coders/magick_libGraphicsMagick_la-dcraw.lo \
-	coders/magick_libGraphicsMagick_la-dib.lo $(am__objects_5) \
+	coders/magick_libGraphicsMagick_la-dib.lo $(am__objects_8) \
 	coders/magick_libGraphicsMagick_la-dpx.lo \
 	coders/magick_libGraphicsMagick_la-fax.lo \
-	coders/magick_libGraphicsMagick_la-fits.lo $(am__objects_6) \
-	$(am__objects_7) coders/magick_libGraphicsMagick_la-gif.lo \
+	coders/magick_libGraphicsMagick_la-fits.lo $(am__objects_10) \
+	$(am__objects_11) coders/magick_libGraphicsMagick_la-gif.lo \
 	coders/magick_libGraphicsMagick_la-gradient.lo \
-	coders/magick_libGraphicsMagick_la-gray.lo $(am__objects_8) \
+	coders/magick_libGraphicsMagick_la-gray.lo $(am__objects_12) \
 	coders/magick_libGraphicsMagick_la-histogram.lo \
 	coders/magick_libGraphicsMagick_la-hrz.lo \
 	coders/magick_libGraphicsMagick_la-html.lo \
 	coders/magick_libGraphicsMagick_la-icon.lo \
 	coders/magick_libGraphicsMagick_la-identity.lo \
-	coders/magick_libGraphicsMagick_la-info.lo $(am__objects_9) \
-	$(am__objects_10) $(am__objects_11) $(am__objects_12) \
+	coders/magick_libGraphicsMagick_la-info.lo $(am__objects_13) \
+	$(am__objects_14) $(am__objects_15) $(am__objects_16) \
 	coders/magick_libGraphicsMagick_la-label.lo \
 	coders/magick_libGraphicsMagick_la-locale.lo \
 	coders/magick_libGraphicsMagick_la-logo.lo \
@@ -1408,7 +1409,7 @@
 	coders/magick_libGraphicsMagick_la-pdf.lo \
 	coders/magick_libGraphicsMagick_la-pict.lo \
 	coders/magick_libGraphicsMagick_la-pix.lo \
-	coders/magick_libGraphicsMagick_la-plasma.lo $(am__objects_13) \
+	coders/magick_libGraphicsMagick_la-plasma.lo $(am__objects_17) \
 	coders/magick_libGraphicsMagick_la-pnm.lo \
 	coders/magick_libGraphicsMagick_la-preview.lo \
 	coders/magick_libGraphicsMagick_la-ps.lo \
@@ -1424,7 +1425,7 @@
 	coders/magick_libGraphicsMagick_la-stegano.lo \
 	coders/magick_libGraphicsMagick_la-sun.lo \
 	coders/magick_libGraphicsMagick_la-svg.lo \
-	coders/magick_libGraphicsMagick_la-tga.lo $(am__objects_14) \
+	coders/magick_libGraphicsMagick_la-tga.lo $(am__objects_18) \
 	coders/magick_libGraphicsMagick_la-tile.lo \
 	coders/magick_libGraphicsMagick_la-tim.lo \
 	coders/magick_libGraphicsMagick_la-topol.lo \
@@ -1436,20 +1437,20 @@
 	coders/magick_libGraphicsMagick_la-vicar.lo \
 	coders/magick_libGraphicsMagick_la-vid.lo \
 	coders/magick_libGraphicsMagick_la-viff.lo \
-	coders/magick_libGraphicsMagick_la-wbmp.lo $(am__objects_15) \
+	coders/magick_libGraphicsMagick_la-wbmp.lo $(am__objects_19) \
 	coders/magick_libGraphicsMagick_la-wmf.lo \
-	coders/magick_libGraphicsMagick_la-wpg.lo $(am__objects_16) \
+	coders/magick_libGraphicsMagick_la-wpg.lo $(am__objects_20) \
 	coders/magick_libGraphicsMagick_la-xbm.lo \
 	coders/magick_libGraphicsMagick_la-xc.lo \
 	coders/magick_libGraphicsMagick_la-xcf.lo \
 	coders/magick_libGraphicsMagick_la-xpm.lo \
 	coders/magick_libGraphicsMagick_la-yuv.lo
-am__objects_18 = filters/magick_libGraphicsMagick_la-analyze.lo
+am__objects_22 = filters/magick_libGraphicsMagick_la-analyze.lo
 @WITH_MODULES_FALSE@am_magick_libGraphicsMagick_la_OBJECTS =  \
-@WITH_MODULES_FALSE@	$(am__objects_2) $(am__objects_3) \
-@WITH_MODULES_FALSE@	$(am__objects_17) $(am__objects_18)
+@WITH_MODULES_FALSE@	$(am__objects_5) $(am__objects_6) \
+@WITH_MODULES_FALSE@	$(am__objects_21) $(am__objects_22)
 @WITH_MODULES_TRUE@am_magick_libGraphicsMagick_la_OBJECTS =  \
-@WITH_MODULES_TRUE@	$(am__objects_2) $(am__objects_3)
+@WITH_MODULES_TRUE@	$(am__objects_5) $(am__objects_6)
 magick_libGraphicsMagick_la_OBJECTS =  \
 	$(am_magick_libGraphicsMagick_la_OBJECTS)
 magick_libGraphicsMagick_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
@@ -1458,11 +1459,11 @@
 	$(magick_libGraphicsMagick_la_LDFLAGS) $(LDFLAGS) -o $@
 wand_libGraphicsMagickWand_la_DEPENDENCIES = $(LIBMAGICK) \
 	$(am__DEPENDENCIES_1)
-am__objects_19 = wand/libGraphicsMagickWand_la-drawing_wand.lo \
+am__objects_23 = wand/libGraphicsMagickWand_la-drawing_wand.lo \
 	wand/libGraphicsMagickWand_la-magick_compat.lo \
 	wand/libGraphicsMagickWand_la-magick_wand.lo \
 	wand/libGraphicsMagickWand_la-pixel_wand.lo
-am_wand_libGraphicsMagickWand_la_OBJECTS = $(am__objects_19)
+am_wand_libGraphicsMagickWand_la_OBJECTS = $(am__objects_23)
 wand_libGraphicsMagickWand_la_OBJECTS =  \
 	$(am_wand_libGraphicsMagickWand_la_OBJECTS)
 wand_libGraphicsMagickWand_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
@@ -1580,12 +1581,13 @@
 am_tests_rwfile_OBJECTS = tests/rwfile-rwfile.$(OBJEXT)
 tests_rwfile_OBJECTS = $(am_tests_rwfile_OBJECTS)
 tests_rwfile_DEPENDENCIES = $(LIBMAGICK)
-am_utilities_gm_OBJECTS = utilities/gm.$(OBJEXT)
+am__objects_24 = magick/acppfile.$(OBJEXT)
+am_utilities_gm_OBJECTS = utilities/gm.$(OBJEXT) $(am__objects_24)
 utilities_gm_OBJECTS = $(am_utilities_gm_OBJECTS)
 utilities_gm_DEPENDENCIES = $(LIBMAGICK)
-utilities_gm_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
-	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(utilities_gm_LDFLAGS) $(LDFLAGS) -o $@
+utilities_gm_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+	$(CXXFLAGS) $(utilities_gm_LDFLAGS) $(LDFLAGS) -o $@
 am_wand_drawtest_OBJECTS = wand/wand_drawtest-drawtest.$(OBJEXT)
 wand_drawtest_OBJECTS = $(am_wand_drawtest_OBJECTS)
 wand_drawtest_DEPENDENCIES = $(LIBWAND)
@@ -1669,12 +1671,10 @@
 	coders/$(DEPDIR)/emf_la-emf.Plo coders/$(DEPDIR)/ept.Plo \
 	coders/$(DEPDIR)/fax_la-fax.Plo \
 	coders/$(DEPDIR)/fits_la-fits.Plo \
-	coders/$(DEPDIR)/fpx_la-acppfile.Plo \
 	coders/$(DEPDIR)/fpx_la-fpx.Plo \
 	coders/$(DEPDIR)/gif_la-gif.Plo \
 	coders/$(DEPDIR)/gradient_la-gradient.Plo \
 	coders/$(DEPDIR)/gray_la-gray.Plo \
-	coders/$(DEPDIR)/heif_la-acppfile.Plo \
 	coders/$(DEPDIR)/heif_la-heif.Plo \
 	coders/$(DEPDIR)/histogram_la-histogram.Plo \
 	coders/$(DEPDIR)/hrz_la-hrz.Plo \
@@ -1686,13 +1686,11 @@
 	coders/$(DEPDIR)/jnx_la-jnx.Plo \
 	coders/$(DEPDIR)/jp2_la-jp2.Plo \
 	coders/$(DEPDIR)/jpeg_la-jpeg.Plo \
-	coders/$(DEPDIR)/jxl_la-acppfile.Plo \
 	coders/$(DEPDIR)/jxl_la-jxl.Plo \
 	coders/$(DEPDIR)/label_la-label.Plo \
 	coders/$(DEPDIR)/locale_la-locale.Plo \
 	coders/$(DEPDIR)/logo_la-logo.Plo \
 	coders/$(DEPDIR)/mac_la-mac.Plo \
-	coders/$(DEPDIR)/magick_libGraphicsMagick_la-acppfile.Plo \
 	coders/$(DEPDIR)/magick_libGraphicsMagick_la-art.Plo \
 	coders/$(DEPDIR)/magick_libGraphicsMagick_la-avs.Plo \
 	coders/$(DEPDIR)/magick_libGraphicsMagick_la-bmp.Plo \
@@ -1859,7 +1857,12 @@
 	coders/$(DEPDIR)/yuv_la-yuv.Plo \
 	filters/$(DEPDIR)/analyze_la-analyze.Plo \
 	filters/$(DEPDIR)/magick_libGraphicsMagick_la-analyze.Plo \
+	magick/$(DEPDIR)/acppfile.Po \
+	magick/$(DEPDIR)/coders_fpx_la-acppfile.Plo \
+	magick/$(DEPDIR)/coders_heif_la-acppfile.Plo \
+	magick/$(DEPDIR)/coders_jxl_la-acppfile.Plo \
 	magick/$(DEPDIR)/libGraphicsMagick_la-PreRvIcccm.Plo \
+	magick/$(DEPDIR)/libGraphicsMagick_la-acppfile.Plo \
 	magick/$(DEPDIR)/libGraphicsMagick_la-analyze.Plo \
 	magick/$(DEPDIR)/libGraphicsMagick_la-animate.Plo \
 	magick/$(DEPDIR)/libGraphicsMagick_la-annotate.Plo \
@@ -2787,6 +2790,20 @@
 MODULECOMMONFLAGS = -no-undefined -export-symbols-regex ".*" -shared -module -avoid-version
 MODULECOMMONCPPFLAGS = $(AM_CPPFLAGS)
 
+# A dummy C++ file to force libtool linkage with the C++ compiler via simple inclusion.
+# FIXME: Need condition code to handle the cases where:
+#  C++ is not needed at all (don't include acppfile.cpp in compile at all)
+#  C++ is needed and a static build (acppfile.cpp added to libGraphicsMagick.a and utilities/gm)
+#  C++ is needed but a shared (non-module) build (acppfile.cpp added to only libGraphicsMagick.so)
+#  C++ is needed, but a shared modules build (acppfile.cpp added to only to C++-dependent modules)
+ACPPFILE = magick/acppfile.cpp
+
+# if WITH_MODULES # Building modules
+# if WITH_SHARED_LIBS # Building shared libraries
+# if HasFPX
+# if HasHEIF
+# if HasJXL
+
 # Coverity parameters
 # FIXME: Could use info from /etc/os-release, or output from
 # lsb_release.
@@ -2940,11 +2957,11 @@
 @HasDPS_TRUE@MAGICK_DPS_MODULES = coders/dps.la
 @HasDPS_TRUE@MAGICK_DPS_SRCS = coders/dps.c
 @HasFPX_TRUE@MAGICK_FPX_MODULES = coders/fpx.la
-@HasFPX_TRUE@MAGICK_FPX_SRCS = coders/fpx.c coders/acppfile.cpp
+@HasFPX_TRUE@MAGICK_FPX_SRCS = coders/fpx.c $(ACPPFILE)
 @HasWINGDI32_TRUE@MAGICK_GDI32_MODULES = coders/clipboard.la coders/emf.la
 @HasWINGDI32_TRUE@MAGICK_GDI32_SRCS = coders/clipboard.c coders/emf.c
 @HasHEIF_TRUE@MAGICK_HEIF_MODULES = coders/heif.la
-@HasHEIF_TRUE@MAGICK_HEIF_SRCS = coders/heif.c coders/acppfile.cpp
+@HasHEIF_TRUE@MAGICK_HEIF_SRCS = coders/heif.c $(ACPPFILE)
 @HasJBIG_TRUE@MAGICK_JBIG_MODULES = coders/jbig.la
 @HasJBIG_TRUE@MAGICK_JBIG_SRCS = coders/jbig.c
 @HasJPEG_TRUE@MAGICK_JPEG_MODULES = coders/jnx.la coders/jpeg.la
@@ -2952,7 +2969,7 @@
 @HasJP2_TRUE@MAGICK_JP2_MODULES = coders/jp2.la
 @HasJP2_TRUE@MAGICK_JP2_SRCS = coders/jp2.c
 @HasJXL_TRUE@MAGICK_JXL_MODULES = coders/jxl.la
-@HasJXL_TRUE@MAGICK_JXL_SRCS = coders/jxl.c coders/acppfile.cpp
+@HasJXL_TRUE@MAGICK_JXL_SRCS = coders/jxl.c $(ACPPFILE)
 @HasPNG_TRUE@MAGICK_PNG_MODULES = coders/png.la
 @HasPNG_TRUE@MAGICK_PNG_SRCS = coders/png.c
 @HasTIFF_TRUE@MAGICK_TIFF_MODULES = coders/ept.la coders/tiff.la
@@ -3286,7 +3303,7 @@
 coders_fits_la_LIBADD = $(LIBMAGICK) $(LIB_MATH)
 
 # FPX coder module
-coders_fpx_la_SOURCES = coders/fpx.c coders/acppfile.cpp
+coders_fpx_la_SOURCES = coders/fpx.c $(ACPPFILE)
 coders_fpx_la_CPPFLAGS = $(MAGICK_CODER_CPPFLAGS)
 coders_fpx_la_LDFLAGS = $(MODULECOMMONFLAGS)
 coders_fpx_la_LIBADD = $(LIBMAGICK) $(LIB_FPX)
@@ -3310,7 +3327,7 @@
 coders_gradient_la_LIBADD = $(LIBMAGICK)
 
 # HEIF coder module
-coders_heif_la_SOURCES = coders/heif.c coders/acppfile.cpp
+coders_heif_la_SOURCES = coders/heif.c $(ACPPFILE)
 coders_heif_la_CPPFLAGS = $(MAGICK_CODER_CPPFLAGS)
 coders_heif_la_LDFLAGS = $(MODULECOMMONFLAGS)
 coders_heif_la_LIBADD = $(LIBMAGICK) $(LIB_HEIF)
@@ -3376,7 +3393,7 @@
 coders_jp2_la_LIBADD = $(LIBMAGICK) $(LIB_JP2) $(LIB_HEIF) $(LIB_JPEG) $(LIB_MATH)
 
 # JXL coder module
-coders_jxl_la_SOURCES = coders/jxl.c coders/acppfile.cpp
+coders_jxl_la_SOURCES = coders/jxl.c $(ACPPFILE)
 coders_jxl_la_CPPFLAGS = $(MAGICK_CODER_CPPFLAGS)
 coders_jxl_la_LDFLAGS = $(MODULECOMMONFLAGS)
 coders_jxl_la_LIBADD = $(LIBMAGICK) $(LIB_JXL)
@@ -4837,7 +4854,7 @@
 
 utilities_gm_LDADD = $(LIBMAGICK)
 utilities_gm_LDFLAGS = $(LDFLAGS)
-utilities_gm_SOURCES = utilities/gm.c
+utilities_gm_SOURCES = utilities/gm.c $(ACPPFILE)
 UTILITIES_XFAIL_TESTS = 
 
 # Tests to run
@@ -5444,8 +5461,14 @@
 	$(AM_V_CCLD)$(coders_fits_la_LINK) $(am_coders_fits_la_rpath) $(coders_fits_la_OBJECTS) $(coders_fits_la_LIBADD) $(LIBS)
 coders/fpx_la-fpx.lo: coders/$(am__dirstamp) \
 	coders/$(DEPDIR)/$(am__dirstamp)
-coders/fpx_la-acppfile.lo: coders/$(am__dirstamp) \
-	coders/$(DEPDIR)/$(am__dirstamp)
+magick/$(am__dirstamp):
+	@$(MKDIR_P) magick
+	@: > magick/$(am__dirstamp)
+magick/$(DEPDIR)/$(am__dirstamp):
+	@$(MKDIR_P) magick/$(DEPDIR)
+	@: > magick/$(DEPDIR)/$(am__dirstamp)
+magick/coders_fpx_la-acppfile.lo: magick/$(am__dirstamp) \
+	magick/$(DEPDIR)/$(am__dirstamp)
 
 coders/fpx.la: $(coders_fpx_la_OBJECTS) $(coders_fpx_la_DEPENDENCIES) $(EXTRA_coders_fpx_la_DEPENDENCIES) coders/$(am__dirstamp)
 	$(AM_V_CXXLD)$(coders_fpx_la_LINK) $(am_coders_fpx_la_rpath) $(coders_fpx_la_OBJECTS) $(coders_fpx_la_LIBADD) $(LIBS)
@@ -5466,8 +5489,8 @@
 	$(AM_V_CCLD)$(coders_gray_la_LINK) $(am_coders_gray_la_rpath) $(coders_gray_la_OBJECTS) $(coders_gray_la_LIBADD) $(LIBS)
 coders/heif_la-heif.lo: coders/$(am__dirstamp) \
 	coders/$(DEPDIR)/$(am__dirstamp)
-coders/heif_la-acppfile.lo: coders/$(am__dirstamp) \
-	coders/$(DEPDIR)/$(am__dirstamp)
+magick/coders_heif_la-acppfile.lo: magick/$(am__dirstamp) \
+	magick/$(DEPDIR)/$(am__dirstamp)
 
 coders/heif.la: $(coders_heif_la_OBJECTS) $(coders_heif_la_DEPENDENCIES) $(EXTRA_coders_heif_la_DEPENDENCIES) coders/$(am__dirstamp)
 	$(AM_V_CXXLD)$(coders_heif_la_LINK) $(am_coders_heif_la_rpath) $(coders_heif_la_OBJECTS) $(coders_heif_la_LIBADD) $(LIBS)
@@ -5523,8 +5546,8 @@
 	$(AM_V_CCLD)$(coders_jpeg_la_LINK) $(am_coders_jpeg_la_rpath) $(coders_jpeg_la_OBJECTS) $(coders_jpeg_la_LIBADD) $(LIBS)
 coders/jxl_la-jxl.lo: coders/$(am__dirstamp) \
 	coders/$(DEPDIR)/$(am__dirstamp)
-coders/jxl_la-acppfile.lo: coders/$(am__dirstamp) \
-	coders/$(DEPDIR)/$(am__dirstamp)
+magick/coders_jxl_la-acppfile.lo: magick/$(am__dirstamp) \
+	magick/$(DEPDIR)/$(am__dirstamp)
 
 coders/jxl.la: $(coders_jxl_la_OBJECTS) $(coders_jxl_la_DEPENDENCIES) $(EXTRA_coders_jxl_la_DEPENDENCIES) coders/$(am__dirstamp)
 	$(AM_V_CXXLD)$(coders_jxl_la_LINK) $(am_coders_jxl_la_rpath) $(coders_jxl_la_OBJECTS) $(coders_jxl_la_LIBADD) $(LIBS)
@@ -5879,12 +5902,6 @@
 
 filters/analyze.la: $(filters_analyze_la_OBJECTS) $(filters_analyze_la_DEPENDENCIES) $(EXTRA_filters_analyze_la_DEPENDENCIES) filters/$(am__dirstamp)
 	$(AM_V_CCLD)$(filters_analyze_la_LINK) $(am_filters_analyze_la_rpath) $(filters_analyze_la_OBJECTS) $(filters_analyze_la_LIBADD) $(LIBS)
-magick/$(am__dirstamp):
-	@$(MKDIR_P) magick
-	@: > magick/$(am__dirstamp)
-magick/$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) magick/$(DEPDIR)
-	@: > magick/$(DEPDIR)/$(am__dirstamp)
 magick/libGraphicsMagick_la-analyze.lo: magick/$(am__dirstamp) \
 	magick/$(DEPDIR)/$(am__dirstamp)
 magick/libGraphicsMagick_la-annotate.lo: magick/$(am__dirstamp) \
@@ -6083,8 +6100,8 @@
 	coders/$(DEPDIR)/$(am__dirstamp)
 coders/magick_libGraphicsMagick_la-fpx.lo: coders/$(am__dirstamp) \
 	coders/$(DEPDIR)/$(am__dirstamp)
-coders/magick_libGraphicsMagick_la-acppfile.lo:  \
-	coders/$(am__dirstamp) coders/$(DEPDIR)/$(am__dirstamp)
+magick/libGraphicsMagick_la-acppfile.lo: magick/$(am__dirstamp) \
+	magick/$(DEPDIR)/$(am__dirstamp)
 coders/magick_libGraphicsMagick_la-clipboard.lo:  \
 	coders/$(am__dirstamp) coders/$(DEPDIR)/$(am__dirstamp)
 coders/magick_libGraphicsMagick_la-emf.lo: coders/$(am__dirstamp) \
@@ -6479,10 +6496,12 @@
 	@: > utilities/$(DEPDIR)/$(am__dirstamp)
 utilities/gm.$(OBJEXT): utilities/$(am__dirstamp) \
 	utilities/$(DEPDIR)/$(am__dirstamp)
+magick/acppfile.$(OBJEXT): magick/$(am__dirstamp) \
+	magick/$(DEPDIR)/$(am__dirstamp)
 
 utilities/gm$(EXEEXT): $(utilities_gm_OBJECTS) $(utilities_gm_DEPENDENCIES) $(EXTRA_utilities_gm_DEPENDENCIES) utilities/$(am__dirstamp)
 	@rm -f utilities/gm$(EXEEXT)
-	$(AM_V_CCLD)$(utilities_gm_LINK) $(utilities_gm_OBJECTS) $(utilities_gm_LDADD) $(LIBS)
+	$(AM_V_CXXLD)$(utilities_gm_LINK) $(utilities_gm_OBJECTS) $(utilities_gm_LDADD) $(LIBS)
 wand/wand_drawtest-drawtest.$(OBJEXT): wand/$(am__dirstamp) \
 	wand/$(DEPDIR)/$(am__dirstamp)
 
@@ -6607,12 +6626,10 @@
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/ept.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/fax_la-fax.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/fits_la-fits.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/fpx_la-acppfile.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/fpx_la-fpx.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/gif_la-gif.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/gradient_la-gradient.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/gray_la-gray.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/heif_la-acppfile.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/heif_la-heif.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/histogram_la-histogram.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/hrz_la-hrz.Plo@am__quote@ # am--include-marker
@@ -6624,13 +6641,11 @@
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/jnx_la-jnx.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/jp2_la-jp2.Plo@am__quote@ # am--include-marker
 @AMDEP_TRUE@@am__include@ @am__quote@coders/$(DEPDIR)/jpeg_la-jpeg.Plo@am__quote@ # am--include-marker