extern.h revision 1.7
11.7Smsaitoh/*	$NetBSD: extern.h,v 1.7 1999/11/26 13:47:53 msaitoh Exp $	*/
21.1Scgd
31.1Scgd/*
41.1Scgd * Copyright (c) 1997 Christopher G. Demetriou.  All rights reserved.
51.1Scgd *
61.1Scgd * Redistribution and use in source and binary forms, with or without
71.1Scgd * modification, are permitted provided that the following conditions
81.1Scgd * are met:
91.1Scgd * 1. Redistributions of source code must retain the above copyright
101.1Scgd *    notice, this list of conditions and the following disclaimer.
111.1Scgd * 2. Redistributions in binary form must reproduce the above copyright
121.1Scgd *    notice, this list of conditions and the following disclaimer in the
131.1Scgd *    documentation and/or other materials provided with the distribution.
141.1Scgd * 3. All advertising materials mentioning features or use of this software
151.1Scgd *    must display the following acknowledgement:
161.1Scgd *      This product includes software developed by Christopher G. Demetriou
171.1Scgd *	for the NetBSD Project.
181.1Scgd * 4. The name of the author may not be used to endorse or promote products
191.1Scgd *    derived from this software without specific prior written permission
201.1Scgd *
211.1Scgd * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
221.1Scgd * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
231.1Scgd * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
241.1Scgd * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
251.1Scgd * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
261.1Scgd * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
271.1Scgd * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
281.1Scgd * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
291.1Scgd * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
301.1Scgd * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
311.1Scgd */
321.1Scgd
331.6Schristos#if defined(__alpha__)
341.6Schristos# define	NLIST_ECOFF
351.6Schristos# define	NLIST_ELF64
361.6Schristos#elif defined(__mips__)
371.6Schristos# define	NLIST_ELF32
381.6Schristos#elif defined(__powerpc__)
391.6Schristos# define	NLIST_ELF32
401.7Smsaitoh#elif defined(__sh3__)
411.7Smsaitoh# define	NLIST_COFF
421.7Smsaitoh# define	NLIST_ELF32
431.6Schristos#elif defined(__sparc__) || defined(__i386__)
441.6Schristos# define	NLIST_AOUT
451.6Schristos# define	NLIST_ELF32
461.1Scgd#else
471.6Schristos# define	NLIST_AOUT
481.3Scgd/* #define	NLIST_ECOFF */
491.1Scgd/* #define	NLIST_ELF32 */
501.1Scgd/* #define	NLIST_ELF64 */
511.1Scgd#endif
521.1Scgd
531.1Scgd#ifdef NLIST_AOUT
541.1Scgdint	check_aout(int, const char *);
551.2Scgdint	hide_aout(int, const char *);
561.7Smsaitoh#endif
571.7Smsaitoh#ifdef NLIST_COFF
581.7Smsaitohint	check_coff(int, const char *);
591.7Smsaitohint	hide_coff(int, const char *);
601.3Scgd#endif
611.3Scgd#ifdef NLIST_ECOFF
621.3Scgdint	check_ecoff(int, const char *);
631.3Scgdint	hide_ecoff(int, const char *);
641.1Scgd#endif
651.1Scgd#ifdef NLIST_ELF32
661.1Scgdint	check_elf32(int, const char *);
671.2Scgdint	hide_elf32(int, const char *);
681.1Scgd#endif
691.1Scgd#ifdef NLIST_ELF64
701.1Scgdint	check_elf64(int, const char *);
711.2Scgdint	hide_elf64(int, const char *);
721.1Scgd#endif
731.1Scgd
741.1Scgdint	in_keep_list(const char *symbol);
75