make this actually build on mips64.diff -r1.14 -r1.15 src/usr.bin/ldd/Makefile
(mrg)
--- src/usr.bin/ldd/Makefile 2009/12/13 08:50:56 1.14
+++ src/usr.bin/ldd/Makefile 2009/12/15 04:06:43 1.15
@@ -1,44 +1,44 @@ | @@ -1,44 +1,44 @@ | |||
1 | # $NetBSD: Makefile,v 1.14 2009/12/13 08:50:56 mrg Exp $ | 1 | # $NetBSD: Makefile,v 1.15 2009/12/15 04:06:43 mrg Exp $ | |
2 | 2 | |||
3 | WARNS?= 3 # XXX: -Wsign-compare issues ld.elf_so source | 3 | WARNS?= 3 # XXX: -Wsign-compare issues ld.elf_so source | |
4 | 4 | |||
5 | .include <bsd.own.mk> # for MKDYNAMICROOT definition | 5 | .include <bsd.own.mk> # for MKDYNAMICROOT definition | |
6 | 6 | |||
7 | PROG= ldd | 7 | PROG= ldd | |
8 | SRCS= ldd.c | 8 | SRCS= ldd.c | |
9 | MAN= ldd.1 | 9 | MAN= ldd.1 | |
10 | 10 | |||
11 | 11 | |||
12 | SUBDIR+= elf32 elf64 | 12 | SUBDIR+= elf32 elf64 elf32_compat | |
13 | 13 | |||
14 | .if (${MACHINE_ARCH} != "alpha") | 14 | .if (${MACHINE_ARCH} != "alpha") | |
15 | LIB_ELF32DIR!= cd ${.CURDIR}/elf32 && ${PRINTOBJDIR} | 15 | LIB_ELF32DIR!= cd ${.CURDIR}/elf32 && ${PRINTOBJDIR} | |
16 | EXTRA_LIBS+= ${LIB_ELF32DIR}/libldd_elf32.a | 16 | EXTRA_LIBS+= ${LIB_ELF32DIR}/libldd_elf32.a | |
17 | .endif | 17 | .endif | |
18 | 18 | |||
19 | .if (${MACHINE_ARCH} == "mips64el") || (${MACHINE_ARCH} == "mips64eb") | 19 | .if (${MACHINE_ARCH} == "mips64el") || (${MACHINE_ARCH} == "mips64eb") | |
20 | LIB_ELF32COMPATDIR!= cd ${.CURDIR}/elf32_compat && ${PRINTOBJDIR} | 20 | LIB_ELF32COMPATDIR!= cd ${.CURDIR}/elf32_compat && ${PRINTOBJDIR} | |
21 | EXTRA_LIBS+= ${LIB_ELF32COMPATDIR}/libldd_elf32_compat.a | 21 | EXTRA_LIBS+= ${LIB_ELF32COMPATDIR}/libldd_elf32_compat.a | |
22 | .endif | 22 | .endif | |
23 | 23 | |||
24 | .if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "sparc64") || \ | 24 | .if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "sparc64") || \ | |
25 | (${MACHINE_ARCH} == "x86_64") || (${MACHINE_ARCH} == "powerpc64") || \ | 25 | (${MACHINE_ARCH} == "x86_64") || (${MACHINE_ARCH} == "powerpc64") || \ | |
26 | (${MACHINE_ARCH} == "mips64el") || (${MACHINE_ARCH} == "mips64eb") | 26 | (${MACHINE_ARCH} == "mips64el") || (${MACHINE_ARCH} == "mips64eb") | |
27 | LIB_ELF64DIR!= cd ${.CURDIR}/elf64 && ${PRINTOBJDIR} | 27 | LIB_ELF64DIR!= cd ${.CURDIR}/elf64 && ${PRINTOBJDIR} | |
28 | EXTRA_LIBS+= ${LIB_ELF64DIR}/libldd_elf64.a | 28 | EXTRA_LIBS+= ${LIB_ELF64DIR}/libldd_elf64.a | |
29 | CPPFLAGS.ldd.c= -DELFSIZE=64 | 29 | CPPFLAGS.ldd.c= -DELFSIZE=64 | |
30 | .else | 30 | .else | |
31 | CPPFLAGS.ldd.c= -DELFSIZE=32 | 31 | CPPFLAGS.ldd.c= -DELFSIZE=32 | |
32 | .endif | 32 | .endif | |
33 | 33 | |||
34 | LDADD+= ${EXTRA_LIBS} | 34 | LDADD+= ${EXTRA_LIBS} | |
35 | DPADD+= ${EXTRA_LIBS} | 35 | DPADD+= ${EXTRA_LIBS} | |
36 | 36 | |||
37 | .include "Makefile.common" | 37 | .include "Makefile.common" | |
38 | 38 | |||
39 | .if (${MKDYNAMICROOT} == "no") | 39 | .if (${MKDYNAMICROOT} == "no") | |
40 | LDSTATIC?= -static | 40 | LDSTATIC?= -static | |
41 | .endif | 41 | .endif | |
42 | 42 | |||
43 | .include <bsd.prog.mk> | 43 | .include <bsd.prog.mk> | |
44 | .include <bsd.subdir.mk> | 44 | .include <bsd.subdir.mk> |
--- src/usr.bin/ldd/Makefile.inc 2009/12/13 08:50:56 1.3
+++ src/usr.bin/ldd/Makefile.inc 2009/12/15 04:06:43 1.4
@@ -1,25 +1,26 @@ | @@ -1,25 +1,26 @@ | |||
1 | # $NetBSD: Makefile.inc,v 1.3 2009/12/13 08:50:56 mrg Exp $ | 1 | # $NetBSD: Makefile.inc,v 1.4 2009/12/15 04:06:43 mrg Exp $ | |
2 | 2 | |||
3 | WARNS?= 3 # XXX: -Wsign-compare issues ld.elf_so source | 3 | WARNS?= 3 # XXX: -Wsign-compare issues ld.elf_so source | |
4 | 4 | |||
5 | .if ${MACHINE_ARCH} == "sparc64" | 5 | .if ${MACHINE_ARCH} == "sparc64" | |
6 | MLIBDIR= sparc | 6 | MLIBDIR= sparc | |
7 | .endif | 7 | .endif | |
8 | 8 | |||
9 | .if ${MACHINE_ARCH} == "x86_64" | 9 | .if ${MACHINE_ARCH} == "x86_64" | |
10 | MLIBDIR= i386 | 10 | MLIBDIR= i386 | |
11 | .endif | 11 | .endif | |
12 | 12 | |||
13 | .if ${MACHINE_ARCH} == "powerpc64" | 13 | .if ${MACHINE_ARCH} == "powerpc64" | |
14 | MLIBDIR= powerpc | 14 | MLIBDIR= powerpc | |
15 | .endif | 15 | .endif | |
16 | 16 | |||
17 | # For now make "elf32" look for native (n32) | 17 | # For now make "elf32" look for native (n32) | |
18 | .if (${MACHINE_ARCH} == "mips64eb") || (${MACHINE_ARCH} == "mips64el") | 18 | .if (${MACHINE_ARCH} == "mips64eb") || (${MACHINE_ARCH} == "mips64el") | |
19 | MLIBDIR= 64 | 19 | MLIBDIR= 64 | |
20 | COMPAT_MLIBDIR= o32 | 20 | COMPAT_MLIBDIR= o32 | |
21 | CPPFLAGS+= -DLDD_ELF64 | |||
21 | .endif | 22 | .endif | |
22 | 23 | |||
23 | .if exists(${.CURDIR}/../../Makefile.inc) | 24 | .if exists(${.CURDIR}/../../Makefile.inc) | |
24 | .include "${.CURDIR}/../../Makefile.inc" | 25 | .include "${.CURDIR}/../../Makefile.inc" | |
25 | .endif | 26 | .endif |
--- src/usr.bin/ldd/ldd.h 2009/12/13 08:50:56 1.5
+++ src/usr.bin/ldd/ldd.h 2009/12/15 04:06:43 1.6
@@ -1,46 +1,50 @@ | @@ -1,46 +1,50 @@ | |||
1 | /* $NetBSD: ldd.h,v 1.5 2009/12/13 08:50:56 mrg Exp $ */ | 1 | /* $NetBSD: ldd.h,v 1.6 2009/12/15 04:06:43 mrg Exp $ */ | |
2 | 2 | |||
3 | /* | 3 | /* | |
4 | * Copyright (c) 2008 Matthew R. Green | 4 | * Copyright (c) 2008 Matthew R. Green | |
5 | * All rights reserved. | 5 | * All rights reserved. | |
6 | * | 6 | * | |
7 | * Redistribution and use in source and binary forms, with or without | 7 | * Redistribution and use in source and binary forms, with or without | |
8 | * modification, are permitted provided that the following conditions | 8 | * modification, are permitted provided that the following conditions | |
9 | * are met: | 9 | * are met: | |
10 | * 1. Redistributions of source code must retain the above copyright | 10 | * 1. Redistributions of source code must retain the above copyright | |
11 | * notice, this list of conditions and the following disclaimer. | 11 | * notice, this list of conditions and the following disclaimer. | |
12 | * 2. Redistributions in binary form must reproduce the above copyright | 12 | * 2. Redistributions in binary form must reproduce the above copyright | |
13 | * notice, this list of conditions and the following disclaimer in the | 13 | * notice, this list of conditions and the following disclaimer in the | |
14 | * documentation and/or other materials provided with the distribution. | 14 | * documentation and/or other materials provided with the distribution. | |
15 | * 3. The name of the author may not be used to endorse or promote products | 15 | * 3. The name of the author may not be used to endorse or promote products | |
16 | * derived from this software without specific prior written permission. | 16 | * derived from this software without specific prior written permission. | |
17 | * | 17 | * | |
18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | 18 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
19 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | 19 | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | |
20 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | 20 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |
21 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | 21 | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | |
22 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | 22 | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |
23 | * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 23 | * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | |
24 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED | 24 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED | |
25 | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | 25 | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | |
26 | * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | 26 | * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
27 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 27 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
28 | * SUCH DAMAGE. | 28 | * SUCH DAMAGE. | |
29 | */ | 29 | */ | |
30 | 30 | |||
31 | int elf32_ldd(int, char *, const char *, const char *); | 31 | int elf32_ldd(int, char *, const char *, const char *); | |
32 | 32 | |||
33 | #ifdef _LP64 | 33 | #ifdef _LP64 | |
34 | #define LDD_ELF64 | |||
35 | #endif | |||
36 | ||||
37 | #ifdef LDD_ELF64 | |||
34 | int elf64_ldd(int, char *, const char *, const char *); | 38 | int elf64_ldd(int, char *, const char *, const char *); | |
35 | #define elf_ldd elf64_ldd | 39 | #define elf_ldd elf64_ldd | |
36 | #elif defined(ELF32_COMPAT) | 40 | #elif defined(ELF32_COMPAT) | |
37 | #define elf_ldd elf32_compat_ldd | 41 | #define elf_ldd elf32_compat_ldd | |
38 | #else | 42 | #else | |
39 | #define elf_ldd elf32_ldd | 43 | #define elf_ldd elf32_ldd | |
40 | #endif | 44 | #endif | |
41 | 45 | |||
42 | void fmtprint(const char *, Obj_Entry *, const char *, const char *); | 46 | void fmtprint(const char *, Obj_Entry *, const char *, const char *); | |
43 | void print_needed(Obj_Entry *, const char *, const char *); | 47 | void print_needed(Obj_Entry *, const char *, const char *); | |
44 | 48 | |||
45 | extern char *main_local; | 49 | extern char *main_local; | |
46 | extern char *main_progname; | 50 | extern char *main_progname; |