[MacPorts] #69342: shaderc: new port

MacPorts noreply at macports.org
Thu Feb 15 05:38:34 UTC 2024


#69342: shaderc: new port
-------------------------+----------------------
  Reporter:  DanielO     |      Owner:  (none)
      Type:  submission  |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:
Resolution:              |   Keywords:  haspatch
      Port:  shaderc     |
-------------------------+----------------------

Comment (by ryandesign):

 Thanks!

 Is there a reason why you used the old cmake 1.0 portgroup instead of the
 current cmake 1.1 portgroup?

 There is no need to set `name` or `homepage` because `github.setup` sets
 them for you.

 Email addresses in the `maintainers` line should not be written in literal
 `user at host` format but rather in obfuscated `host:user` format; MacPorts
 will decode these when it displays them.

 Email addresses in `maintainers` should be accompanied by GitHub handles,
 as in the other two ports you maintain: `{dons.net.au:darius @DanielO}`.

 Unless there is a good reason to prohibit it, we prefer to have permission
 up-front to make minor modifications to the port without consulting the
 maintainer. This permission can be indicated by adding `openmaintainer` to
 the `maintainers` line. This applies to the two existing ports you
 maintain as well.

 Your long description will not appear properly when displayed by MacPorts
 because MacPorts combines all lines into one. To insert newlines that will
 be preserved, use `\n`. For an example, see the [browser:macports-
 ports/devel/mongo-tools/Portfile mongo-tools Portfile].

 The glslang and spirv-tools ports both install dynamic libraries but
 you've declared them as `depends_build`. Are you certain that shaderc does
 not use those dynamic libraries? If it does use them, then they must be
 `depends_lib` instead.

 The trailing backslash on the `-DSHADERC_SKIP_TESTS=yes \` line should be
 removed.

 `-I` flags typically go in `configure.cppflags` not `configure.cxxflags`,
 and there is no reason to use quotation marks around them.

 In your patchfile, it would be shorter, simpler, and easier to read if you
 removed the `add_subdirectory(third_party)` line rather than commenting it
 out.

 Could you add sentence or two at the top of the patchfile explaining what
 it is doing and providing any applicable URLs (bug reports, pull requests,
 etc.)?

 The README says it requires C++17. This should be indicated with the line
 `compiler.cxx_standard 2017` so that MacPorts can pick a suitable
 compiler.

 It also says it needs python 3 for utility scripts (and tests but you're
 skipping the tests). If those utility scripts are run as part of the build
 and/or get installed, then you'll need a python 3 dependency and to tell
 the software to use that version of python 3. Simplest would be to use
 port:python312 unconditionally. More complicated could be to use the macOS
 version of python 3 on those versions of macOS that have it. The [browser
 :macports-ports/science/magic/Portfile magic Portfile] gives an example of
 the more complicated strategy, but note that the way that you communicate
 the desired python choice will be specific to shaderc. It may involve
 cmake flags, environment variables, or even patchfiles.

-- 
Ticket URL: <https://trac.macports.org/ticket/69342#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list