[MacPorts] #60798: gwenhywfar5: Undefined symbols _strndup

MacPorts noreply at macports.org
Mon Jul 13 04:42:50 UTC 2020


#60798: gwenhywfar5: Undefined symbols _strndup
-----------------------------------------+----------------------
  Reporter:  ryandesign                  |      Owner:  (none)
      Type:  defect                      |     Status:  new
  Priority:  Normal                      |  Milestone:
 Component:  ports                       |    Version:  2.6.2
Resolution:                              |   Keywords:  haspatch
      Port:  gwenhywfar5, legacysupport  |
-----------------------------------------+----------------------

Comment (by ryandesign):

 The description of the option in the portgroup is:

 {{{
 #   legacysupport.library_name: linker flag used to add library
 }}}

 If that's what the option is intended to contain, then I suggest instead
 that `legacysupport.library_name` is the wrong name for the option; it
 should be `legacysupport.ldflags` instead. Similarly,
 `legacysupport::get_library_name` should be renamed to
 `legacysupport::get_ldflags`. And then `legacysupport::get_ldflags` would
 be changed to return the `-Wl,` prefix.

 {{{
 #!diff
 Index: legacysupport-1.1.tcl
 ===================================================================
 --- legacysupport-1.1.tcl       (revision 173390)
 +++ legacysupport-1.1.tcl       (working copy)
 @@ -12,7 +12,7 @@
  #
  #   legacysupport.header_search: preprocessor flag used to locate header
 directory
  #
 -#   legacysupport.library_name: linker flag used to add library
 +#   legacysupport.ldflags: linker flag used to add library
  #
  #   legacysupport.use_static: allow static linking of legacysupport if
 preferred (e.g. for compilers)
  #
 @@ -26,8 +26,8 @@
  options legacysupport.header_search
  default legacysupport.header_search
 {-isystem${prefix}/include/LegacySupport}

 -options legacysupport.library_name
 -default legacysupport.library_name
 {[legacysupport::get_library_name]}
 +options legacysupport.ldflags
 +default legacysupport.ldflags           {[legacysupport::get_ldflags]}

  options legacysupport.use_static
  default legacysupport.use_static        no
 @@ -45,12 +45,12 @@
  namespace eval legacysupport {
  }

 -proc legacysupport::get_library_name {} {
 +proc legacysupport::get_ldflags {} {
      global prefix
      if {[option legacysupport.use_static]} {
 -        return ${prefix}/lib/libMacportsLegacySupport.a
 +        return -Wl,${prefix}/lib/libMacportsLegacySupport.a
      } else {
 -        return ${prefix}/lib/libMacportsLegacySupport.dylib
 +        return -Wl,${prefix}/lib/libMacportsLegacySupport.dylib
      }
  }

 @@ -66,8 +66,8 @@
          depends_lib-delete path:lib/libMacportsLegacySupport.dylib
 :legacy-support
          depends_lib-append path:lib/libMacportsLegacySupport.dylib
 :legacy-support

 -        configure.ldflags-delete    [option legacysupport.library_name]
 -        configure.ldflags-append    [option legacysupport.library_name]
 +        configure.ldflags-delete    [option legacysupport.ldflags]
 +        configure.ldflags-append    [option legacysupport.ldflags]

          if {![option compiler.limit_flags]} {
              configure.cppflags-delete   [option
 legacysupport.header_search]
 }}}

 Is that agreeable?

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


More information about the macports-tickets mailing list