Do not provide funopen() on musl

Fixes: https://bugs.debian.org/818246
This commit is contained in:
Guillem Jover 2017-01-10 04:33:15 +01:00
parent db7470b048
commit d6c35f618c
3 changed files with 16 additions and 3 deletions

View File

@ -51,7 +51,11 @@ AS_CASE([$host_os],
AC_SEARCH_LIBS([clock_gettime], [rt], [CLOCK_GETTIME_LIBS="-lrt"]) AC_SEARCH_LIBS([clock_gettime], [rt], [CLOCK_GETTIME_LIBS="-lrt"])
AC_SUBST([CLOCK_GETTIME_LIBS]) AC_SUBST([CLOCK_GETTIME_LIBS])
LIBS="$saved_LIBS" LIBS="$saved_LIBS"
] ],
[*-musl], [
# Upstream refuses to define this, we will do it ourselves then.
AC_DEFINE([__MUSL__], [1], [Define to 1 if we are building for musl])
],
) )
# Checks for header files. # Checks for header files.

View File

@ -1,5 +1,5 @@
/* /*
* Copyright © 2011, 2013 Guillem Jover * Copyright © 2011, 2013, 2017 Guillem Jover
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions * modification, are permitted provided that the following conditions
@ -137,6 +137,12 @@ funopen(const void *cookie,
return fopencookie(cookiewrap, mode, funcswrap); return fopencookie(cookiewrap, mode, funcswrap);
} }
#elif defined(__MUSL__)
/*
* This is unimplementable on musl based systems, and upstream has stated
* they will not add the needed support to implement it. Just ignore this
* interface there, as it has never been provided anyway.
*/
#else #else
#error "Function funopen() needs to be ported." #error "Function funopen() needs to be ported or disabled."
#endif #endif

View File

@ -114,6 +114,9 @@ LIBBSD_0.6 {
LIBBSD_0.7 { LIBBSD_0.7 {
getbsize; getbsize;
/* This symbol might not be present on some specific systems, such
* as musl based ones. It might need to be removed on SOVERSION bump,
* as it cannot be portabily implemented everywhere. */
funopen; funopen;
reallocarray; reallocarray;