xref: /freebsd/contrib/elftoolchain/libdwarf/zlib_stub.c (revision 3aa0bc89c6a1165cb16987493540372af24e760f)
1*3aa0bc89SMark Johnston /*-
2*3aa0bc89SMark Johnston  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3*3aa0bc89SMark Johnston  *
4*3aa0bc89SMark Johnston  * Copyright (c) 2021 The FreeBSD Foundation
5*3aa0bc89SMark Johnston  *
6*3aa0bc89SMark Johnston  * This software was developed by Mark Johnston under sponsorship from
7*3aa0bc89SMark Johnston  * the FreeBSD Foundation.
8*3aa0bc89SMark Johnston  */
9*3aa0bc89SMark Johnston 
10*3aa0bc89SMark Johnston #include <sys/cdefs.h>
11*3aa0bc89SMark Johnston 
12*3aa0bc89SMark Johnston /*
13*3aa0bc89SMark Johnston  * A hack to allow libdwarf.a to be statically linked without zlib.  This is
14*3aa0bc89SMark Johnston  * unfortunately required for FreeBSD <= 13.0 to bootstrap build tools
15*3aa0bc89SMark Johnston  * such as nm(1), as they use metadata from the source tree to generate the
16*3aa0bc89SMark Johnston  * dependency list but then link with the build host's libraries.
17*3aa0bc89SMark Johnston  */
18*3aa0bc89SMark Johnston 
19*3aa0bc89SMark Johnston extern int uncompress(void *, unsigned long *, const void *,
20*3aa0bc89SMark Johnston     unsigned long);
21*3aa0bc89SMark Johnston 
22*3aa0bc89SMark Johnston int __weak_symbol
uncompress(void * dst __unused,unsigned long * dstsz __unused,const void * src __unused,unsigned long srcsz __unused)23*3aa0bc89SMark Johnston uncompress(void *dst __unused, unsigned long *dstsz __unused,
24*3aa0bc89SMark Johnston     const void *src __unused, unsigned long srcsz __unused)
25*3aa0bc89SMark Johnston {
26*3aa0bc89SMark Johnston 	return (-6); /* Z_VERSION_ERROR */
27*3aa0bc89SMark Johnston }
28