Date: Fri, 18 Dec 2015 03:06:39 +0000 (UTC) From: Ed Maste <emaste@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r292423 - stable/10/usr.sbin/crunch/crunchide Message-ID: <201512180306.tBI36d84006697@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: emaste Date: Fri Dec 18 03:06:39 2015 New Revision: 292423 URL: https://svnweb.freebsd.org/changeset/base/292423 Log: MFC r281674: crunchide: always include both 32- and 64-bit ELF support This avoids the need to build a target-specific crunchide for cross- builds. Sponsored by: The FreeBSD Foundation Modified: stable/10/usr.sbin/crunch/crunchide/Makefile stable/10/usr.sbin/crunch/crunchide/exec_elf32.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/crunch/crunchide/Makefile ============================================================================== --- stable/10/usr.sbin/crunch/crunchide/Makefile Fri Dec 18 02:34:01 2015 (r292422) +++ stable/10/usr.sbin/crunch/crunchide/Makefile Fri Dec 18 03:06:39 2015 (r292423) @@ -1,19 +1,9 @@ # $FreeBSD$ PROG= crunchide -SRCS= crunchide.c +SRCS= crunchide.c exec_elf32.c exec_elf64.c -TARGET_ARCH?= ${MACHINE_ARCH} - -.if ${TARGET_ARCH} == ia64 || ${TARGET_ARCH} == powerpc64 || \ - ${TARGET_ARCH} == sparc64 || ${TARGET_ARCH} == amd64 || \ - ${TARGET_ARCH:Mmips64*} -CFLAGS+=-DNLIST_ELF64 -SRCS+= exec_elf64.c +CFLAGS+=-DNLIST_ELF32 -DNLIST_ELF64 exec_elf64.o: exec_elf32.c -.else -CFLAGS+=-DNLIST_ELF32 -SRCS+= exec_elf32.c -.endif .include <bsd.prog.mk> Modified: stable/10/usr.sbin/crunch/crunchide/exec_elf32.c ============================================================================== --- stable/10/usr.sbin/crunch/crunchide/exec_elf32.c Fri Dec 18 02:34:01 2015 (r292422) +++ stable/10/usr.sbin/crunch/crunchide/exec_elf32.c Fri Dec 18 03:06:39 2015 (r292423) @@ -79,6 +79,9 @@ __FBSDID("$FreeBSD$"); #define ELFNAME2(x,y) CONCAT(x,CONCAT(_elf,CONCAT(ELFSIZE,CONCAT(_,y)))) #define ELFNAMEEND(x) CONCAT(x,CONCAT(_elf,ELFSIZE)) #define ELFDEFNNAME(x) CONCAT(ELF,CONCAT(ELFSIZE,CONCAT(_,x))) +#ifndef ELFCLASS +#define ELFCLASS CONCAT(ELFCLASS,ELFSIZE) +#endif #define xe16toh(x) ((data == ELFDATA2MSB) ? be16toh(x) : le16toh(x)) #define xe32toh(x) ((data == ELFDATA2MSB) ? be32toh(x) : le32toh(x)) @@ -167,7 +170,7 @@ ELFNAMEEND(check)(int fd, const char *fn if (read(fd, &eh, sizeof eh) != sizeof eh) return 0; - if (IS_ELF(eh) == 0) + if (IS_ELF(eh) == 0 || eh.e_ident[EI_CLASS] != ELFCLASS) return 0; data = eh.e_ident[EI_DATA];
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201512180306.tBI36d84006697>