[MacPorts] #64033: gdcm @3.0.5_2: build fails on macOS 12 arm64
MacPorts
noreply at macports.org
Mon Nov 29 14:21:29 UTC 2021
#64033: gdcm @3.0.5_2: build fails on macOS 12 arm64
-------------------------+---------------------------------
Reporter: bal-agates | Owner: MarcusCalhoun-Lopez
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.7.1
Resolution: | Keywords: gdcm xsl
Port: gdcm |
-------------------------+---------------------------------
Comment (by bal-agates):
Attached is a Portfile.patch that allowed me to build gdcm for macOS 12
and arm64, both the standard and +applications variant. The primary
change was disabling the portion of the build that attempts to build the
application man pages with:
{{{
-DGDCM_DOCUMENTATION=OFF \
-DGDCM_BUILD_DOCBOOK_MANPAGES=OFF \
}}}
So while it builds it will be missing the man pages. I deem those are not
essential because most of the command line applications have a "-h" option
to get help or you can download detailed help in a PDF from the gdcm
homepage. I still do not understand the build problems. It seems related
to xsl style sheet paths. I think the source xsl include paths need to
get adjusted for the build environment and that is not happening.
I am not sure what other changes I made to the Portfile might be
important. Some errors I saw early in the debugging seemed to indicate
even when only building the gdcm libraries the C++-14 standard was needed
so I eliminated a conditional and set the following for all builds.
{{{
compiler.cxx_standard 2014
}}}
Is there some benefit to using 2011? Would that allow builds on older
macOS?
The original Portfile had the following only in the +application variant
so I moved it up to the primary.
{{{
-DCMAKE_CXX_STANDARD=14
}}}
I am not sure exactly what the compiler.cxx_standard does but it seems
likely the CMAKE_CXX_STANDARD=14 is redundant?
I added "depends_lib-append port:ossp-uuid" related to
"-DGDCM_USE_SYSTEM_UUID"
I added a bunch of defines to explicity turn off build options. When I
ran ccmake manually these were configuration options and I figured it
might be clues to someone later if they want to make additional variants
that turn on other options.
{{{
-DGDCM_BUILD_EXAMPLES=OFF \
-DGDCM_BUILD_TESTING=OFF \
-DGDCM_WRAP_CSHARP=OFF \
-DGDCM_WRAP_JAVA=OFF \
-DGDCM_WRAP_PYTHON=OFF \
-DOPJ_USE_DSYMUTIL=OFF \
}}}
The changes here do not address the case sensitive path <CharLS/charls.h>
issue of #60696 so I would expect file systems that are case sensitive to
still have build issues.
--
Ticket URL: <https://trac.macports.org/ticket/64033#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list