diff options
author | David Seifert <soap@gentoo.org> | 2020-02-10 00:05:10 +0100 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2020-02-10 00:05:10 +0100 |
commit | d332eb47396f2afcd46f59a3aeec3c962f860552 (patch) | |
tree | b27c123c06a726bbd44c3af53cbb49fd9efec8fe /dev-libs/libx86emu | |
parent | rpm.eclass: Fix for EAPI 7 (diff) | |
download | gentoo-d332eb47396f2afcd46f59a3aeec3c962f860552.tar.gz gentoo-d332eb47396f2afcd46f59a3aeec3c962f860552.tar.bz2 gentoo-d332eb47396f2afcd46f59a3aeec3c962f860552.zip |
dev-libs/libx86emu: Port to EAPI 7
Closes: https://bugs.gentoo.org/684466
Closes: https://bugs.gentoo.org/706558
Package-Manager: Portage-2.3.88, Repoman-2.3.20
Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'dev-libs/libx86emu')
-rw-r--r-- | dev-libs/libx86emu/files/libx86emu-1.1-fix-makefile.patch | 82 | ||||
-rw-r--r-- | dev-libs/libx86emu/files/libx86emu-1.1-gcc10-fno-common.patch | 13 | ||||
-rw-r--r-- | dev-libs/libx86emu/libx86emu-1.1.ebuild | 28 |
3 files changed, 104 insertions, 19 deletions
diff --git a/dev-libs/libx86emu/files/libx86emu-1.1-fix-makefile.patch b/dev-libs/libx86emu/files/libx86emu-1.1-fix-makefile.patch new file mode 100644 index 000000000000..6e565340e67b --- /dev/null +++ b/dev-libs/libx86emu/files/libx86emu-1.1-fix-makefile.patch @@ -0,0 +1,82 @@ +--- a/Makefile ++++ b/Makefile +@@ -1,15 +1,4 @@ +-ARCH := $(shell uname -m) +-ifneq ($(filter i386 i486 i586 i686, $(ARCH)),) +-ARCH := i386 +-endif +- +-CC = gcc +-CFLAGS = -g -O2 -fPIC -fomit-frame-pointer -Wall +-ifneq ($(filter x86_64, $(ARCH)),) +-LIBDIR = /usr/lib64 +-else +-LIBDIR = /usr/lib +-endif ++CFLAGS += -fPIC -Wall + LIBX86 = libx86emu + + VERSION := $(shell cat VERSION) +@@ -24,9 +13,6 @@ + + .PHONY: all shared install test clean + +-%.o: %.c +- $(CC) -c $(CFLAGS) $< +- + all: shared + + shared: $(LIB_NAME) +@@ -38,13 +24,15 @@ + install -m 644 -D include/x86emu.h $(DESTDIR)/usr/include/x86emu.h + + $(LIB_NAME): .depend $(OBJS) +- $(CC) -shared -Wl,-soname,$(LIB_SONAME) $(OBJS) -o $(LIB_NAME) ++ $(CC) $(LDFLAGS) -shared -Wl,-soname,$(LIB_SONAME) $(OBJS) -o $(LIB_NAME) ++ ln -snf $(LIB_NAME) $(LIB_SONAME) ++ ln -snf $(LIB_SONAME) $(LIBX86).so + +-test: +- make -C test ++check: ++ $(MAKE) -C test + + clean: +- make -C test clean ++ $(MAKE) -C test clean + rm -f *.o *~ include/*~ *.so.* .depend + + ifneq "$(MAKECMDGOALS)" "clean" +--- a/test/Makefile ++++ b/test/Makefile +@@ -1,9 +1,10 @@ +-CC = gcc +-CFLAGS = -g -Wall -fomit-frame-pointer -O2 ++CFLAGS += -fPIC -Wall ++CPPFLAGS += -I../include + TST_FILES = $(wildcard *.tst) + INIT_FILES = $(addsuffix .init,$(basename $(wildcard *.tst))) + RES_FILES = $(addsuffix .result,$(basename $(wildcard *.tst))) + TEST_OPTS = --verbose --show code,regs,data,acc,io,ints,attr,time ++LDLIBS = -L.. -lx86emu + + .PHONY: all test clean + .SECONDARY: $(INIT_FILES) +@@ -12,13 +13,12 @@ + + all: x86test + @./prepare_test *.tst +- @./x86test $(TEST_OPTS) *.init ++ @LD_LIBRARY_PATH=.. ./x86test $(TEST_OPTS) *.init + +-x86test: x86test.c +- $(CC) $(CFLAGS) $< -lx86emu -o $@ ++x86test: x86test.o + +-%.result: %.init +- @./x86test $(TEST_OPTS) $< ++%.result: %.init x86test ++ @LD_LIBRARY_PATH=.. ./x86test $(TEST_OPTS) $< + + %.init: %.tst + @./prepare_test $< diff --git a/dev-libs/libx86emu/files/libx86emu-1.1-gcc10-fno-common.patch b/dev-libs/libx86emu/files/libx86emu-1.1-gcc10-fno-common.patch new file mode 100644 index 000000000000..8d69e874523d --- /dev/null +++ b/dev-libs/libx86emu/files/libx86emu-1.1-gcc10-fno-common.patch @@ -0,0 +1,13 @@ +--- a/include/ops.h ++++ b/include/ops.h +@@ -39,8 +39,8 @@ + #ifndef __X86EMU_OPS_H + #define __X86EMU_OPS_H + +-void (*x86emu_optab[0x100])(u8 op1) L_SYM; +-void (*x86emu_optab2[0x100])(u8 op2) L_SYM; ++extern void (*x86emu_optab[0x100])(u8 op1) L_SYM; ++extern void (*x86emu_optab2[0x100])(u8 op2) L_SYM; + + void decode_cond(int type) L_SYM; + diff --git a/dev-libs/libx86emu/libx86emu-1.1.ebuild b/dev-libs/libx86emu/libx86emu-1.1.ebuild index b8392b9291f2..21c131149a92 100644 --- a/dev-libs/libx86emu/libx86emu-1.1.ebuild +++ b/dev-libs/libx86emu/libx86emu-1.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=4 +EAPI=7 -inherit multilib rpm toolchain-funcs +inherit rpm toolchain-funcs DESCRIPTION="A library for emulating x86" HOMEPAGE="https://www.opensuse.org/" @@ -12,24 +12,14 @@ SRC_URI="https://download.opensuse.org/source/factory/repo/oss/suse/src/${P}-9.8 LICENSE="HPND" SLOT="0" KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" -IUSE="" -src_prepare() { - sed -i \ - -e 's:$(CC) -shared:& $(LDFLAGS):' \ - Makefile || die -} - -src_compile() { - emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} -fPIC -Wall" -} +PATCHES=( + "${FILESDIR}"/${PN}-1.1-fix-makefile.patch + "${FILESDIR}"/${PN}-1.1-gcc10-fno-common.patch +) -src_test() { - ln -sf libx86emu.so.1.1 libx86emu.so || die - ln -sf libx86emu.so.1.1 libx86emu.so.1 || die - emake \ - CC="$(tc-getCC)" \ - CFLAGS="${CFLAGS} ${LDFLAGS} -Wl,-rpath,${S} -fPIC -Wall -I../include/ -L../" test +src_configure() { + tc-export CC } src_install() { |