[MacPorts] #61662: slrn @1.0.3: error: implicitly declaring library function 'exit' (was: slrn @1.0.3: procmail)

MacPorts noreply at macports.org
Fri Nov 27 07:48:55 UTC 2020


#61662: slrn @1.0.3: error: implicitly declaring library function 'exit'
------------------------+-----------------------------
  Reporter:  m-schmidt  |      Owner:  (none)
      Type:  defect     |     Status:  new
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:  2.6.4
Resolution:             |   Keywords:  bigsur catalina
      Port:  slrn       |
------------------------+-----------------------------
Description changed by ryandesign:

Old description:

> Building Slrn 1.0.3 fails with this log message:
>
> {{{
> :info:build
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_news_slrn/slrn/work/slrn-1.0.3/src/misc.c:376:4:
> error: implicit declaration of function 'VA_COPY' is invalid in C99
> [-Werror,-Wimplicit-function-declaration]
> :info:build    VA_COPY(ap1, ap);
> :info:build    ^
> }}}
>
> The reason seems to be that Slrn fails to build when it is configured as
> if the system has no support for `va_copy()`. However macOS Big Sur
> actually supports `va_copy()`. We seem to have two bugs here: one in Slrn
> itself for failing to build in this specific configuration and a further
> one in the configure script that fails to properly detect support for
> `va_copy()`.
>
> The reason for the latter problem is a bug in the configure script. The
> check uses `exit()` without properly including the necessary header file
> `stdlib.h` as indicated by configure in its config.log:
>
> {{{
> configure:8294: checking for an implementation of va_copy()
> configure:8323: /usr/bin/clang -o conftest -pipe -Os
> -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
> -arch x86_64 -I/opt/local/include
> -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
> -L/opt/local/lib -Wl,-headerpad_max_install_names
> -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
> -arch x86_64 conftest.c  >&5
> conftest.c:91:4: c with type 'void (int) __attribute__((noreturn))'
> [-Werror,-Wimplicit-function-declaration]
>           exit (1);
>           ^
> conftest.c:91:4: note: include the header <stdlib.h> or explicitly
> provide a declaration for 'exit'
> }}}

New description:

 Building Slrn 1.0.3 fails with this log message:

 {{{
 :info:build
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_news_slrn/slrn/work/slrn-1.0.3/src/misc.c:376:4:
 error: implicit declaration of function 'VA_COPY' is invalid in C99
 [-Werror,-Wimplicit-function-declaration]
 :info:build    VA_COPY(ap1, ap);
 :info:build    ^
 }}}

 The reason seems to be that Slrn fails to build when it is configured as
 if the system has no support for `va_copy()`. However macOS Big Sur
 actually supports `va_copy()`. We seem to have two bugs here: one in Slrn
 itself for failing to build in this specific configuration and a further
 one in the configure script that fails to properly detect support for
 `va_copy()`.

 The reason for the latter problem is a bug in the configure script. The
 check uses `exit()` without properly including the necessary header file
 `stdlib.h` as indicated by configure in its config.log:

 {{{
 configure:8294: checking for an implementation of va_copy()
 configure:8323: /usr/bin/clang -o conftest -pipe -Os
 -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
 -arch x86_64 -I/opt/local/include
 -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
 -L/opt/local/lib -Wl,-headerpad_max_install_names
 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
 -arch x86_64 conftest.c  >&5
 conftest.c:91:4: error: implicitly declaring library function 'exit' with
 type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-function-
 declaration]
           exit (1);
           ^
 conftest.c:91:4: note: include the header <stdlib.h> or explicitly provide
 a declaration for 'exit'
 }}}

--

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


More information about the macports-tickets mailing list