diff options
-rw-r--r-- | dev-libs/libx86/Manifest | 17 | ||||
-rw-r--r-- | dev-libs/libx86/files/libx86-1.1-x86emu.patch | 38 | ||||
-rw-r--r-- | dev-libs/libx86/libx86-1.1-r4.ebuild (renamed from dev-libs/libx86/libx86-1.1-r99.ebuild) | 28 |
3 files changed, 64 insertions, 19 deletions
diff --git a/dev-libs/libx86/Manifest b/dev-libs/libx86/Manifest index 09ab8df..7ac7790 100644 --- a/dev-libs/libx86/Manifest +++ b/dev-libs/libx86/Manifest @@ -1,8 +1,9 @@ -AUX libx86-0.99-ifmask.patch 584 SHA256 b8070e57c5d267b3736b133e4c3c92965cc5a62e72466b705b506ad2ce39dd25 SHA512 781ea16e535ca1c0a54552b51d67b0901102f20ab63ff5ff39f9f2bb513abb53867eb5e52089e72afa6c313380b2033881f17cfe233b09a38ed5a9e95ad8d5f8 WHIRLPOOL 148e94477662dd91e654972f8ad475808574e006677e3858346c864b580776ec203457d1011f05d984ba82231f8ebdddac46e8f9bd1e1650e831268c7abe0b66 -AUX libx86-1.1-add-pkgconfig.patch 1551 SHA256 de18116436db7e35011f5524071e3abb05e838fc24da4a53e2c1b16fe609ad40 SHA512 77a2eb5d063f2bae279abd4bb45a3a839448201c11eb6b68e59454f25265c450368952fcf8663727e5b7fd16438a4a95456cd44d91dc4748d215c2716529c9a8 WHIRLPOOL ce79d4c8d25c6de08ae7242fce3c89eae76b26d02696892762521475cfb6a564be8953a0fca457688ad168c40c9b68f67089b89d4aedd782f1d2074a5f66f74f -AUX libx86-1.1-makefile.patch 853 SHA256 ce7c23404e1ba95343418cc0256c7ad2db702b79518e4cda77c802dfbbce306f SHA512 a61e21ab31b1f22d898799ecc3db57e6816146488d436d3d33817f0ac19d420562830411111bacd8ca4c80a446c088fb931ee293522828076d0a1cae6e7ee0a6 WHIRLPOOL 80d8a599a7fa6aa54f3a65076c5642f5281e79eb283215ced4da9e5523f74c21e17a26eb75b8957757b96f71b7f0a3eee5a0098b46099df2ac193c2577853a7e -DIST libx86-1.1.tar.gz 87428 SHA256 5bf13104cb327472b5cb65643352a9138646becacc06763088d83001d832d048 SHA512 b946555a45405a06fdf00b3e2522fc99dd7c61349c32726221aa60117a8d3da6da4b44188b1ebb208368e12b396f26055437cebcc8a0e6df10c7a006182c9280 WHIRLPOOL 778dae64fb0a21988debb12ca43ca6eed94fc34ab8d0e012aa30914053f57e6817fc7bbec42f6a85a0be4399263c035f981708036804cb756875143f91fe227c -EBUILD libx86-1.1-r99.ebuild 1202 SHA256 3ada07db37e9464f5f8398036ac67b9d79f809a84c06d5715597121d440959a2 SHA512 b748d14d0b4b8f96f3ea0e187e963fd4bb732855b1bc062a50e8cd27e89b8d6e24da8a4310ffc7e825173b7a84af29ccd4005526d0a81f58d1785ade4310f5d5 WHIRLPOOL ea1d2808e0ec6d2fef97a13b416e66773bf350ccfbc887e180f54251fc801b25c404c82f24590724c9894e09a05c36f96ef325ad04fa9eb3f5c9f66b02016c84 -MISC ChangeLog 2170 SHA256 1703a1bfef5c503620f4014520ec6176fecf886844dbe085a463947624473d4d SHA512 c946edeb94f0918bb6647204b566d27063143910f6d27cfd209531572701de8363db79b00f3256a35c1d973530036f31ee3f6f57606aa21de537cdc84a55c3cb WHIRLPOOL 8039c8abd7586ef194945f09478cb54602ace2bd287ea907a576a4ac0d47331833f5288b0b3ffdbd3d3ceee0ee66ada04b82be4cdaecd37fb50d018f0a8e80d9 -MISC ChangeLog-2015 3104 SHA256 279a3b4a4d63f4703fdea67ac8381e730a82e74c9d5af424528d7b996405544f SHA512 db6c59484fc9d2b9771b1ae94c4b36916a9fe97359eff37682422548ec07575a939fc115516aaf8ba5d9166ec134e94c54f9804cb59abf19a2186e3ca5afa880 WHIRLPOOL 0a0a560262770a20a4634e86ddafcecd198c2e5fd7bcf647785e94d850e1ff88db14a940a0580ce87dcbb3c9bfc0a90bddb9f8f8bdcc2ab95155526fbcc87474 -MISC metadata.xml 233 SHA256 a93cf5c4e554b97b2a48b92f801e3a3d87833cac311db0160a387a757ab7054c SHA512 704c94018edcbc53edcf0a41c2603dd59ea217aa5871f35d4d17f7df26156b8fb0a735d2efb11b74256565db01e6790a833242de39c29a9e46ed8ed96d505334 WHIRLPOOL 57f455cf256b91fb72e642f5a861e7367961775f2ab992b8afc798ff376c9a2bc8860d09f2bc43c870531248484128c966f25a081b7789a31ba9fb4f52b5519c +AUX libx86-0.99-ifmask.patch 584 BLAKE2B 33c0ebeb0ca32b892cebf4bdd91bb2f82fefa3caa3c7c30c31e806aaeb96b36215f41d9389242ba45c2e8c69b4eedd1742092be77b113a7a0311e826cd863206 SHA512 781ea16e535ca1c0a54552b51d67b0901102f20ab63ff5ff39f9f2bb513abb53867eb5e52089e72afa6c313380b2033881f17cfe233b09a38ed5a9e95ad8d5f8 +AUX libx86-1.1-add-pkgconfig.patch 1551 BLAKE2B 0690db851681d8b82573441ac9aac9d1fa876c132dfb8e24a70f4b5cac56f21087237ad566f8aeb0382239f1c13d0c8f0df402ce0dad2ed8ed2081e9a7aa08d3 SHA512 77a2eb5d063f2bae279abd4bb45a3a839448201c11eb6b68e59454f25265c450368952fcf8663727e5b7fd16438a4a95456cd44d91dc4748d215c2716529c9a8 +AUX libx86-1.1-makefile.patch 853 BLAKE2B 48a25cd96bacd2e39bc8ecb4fd7988ab3775441f259bfe56fedf0f39f8cb894f3f4bcd64a03a6a5357ed064f9dc0e0b578cccbd760cd2056c564f2502f065d6c SHA512 a61e21ab31b1f22d898799ecc3db57e6816146488d436d3d33817f0ac19d420562830411111bacd8ca4c80a446c088fb931ee293522828076d0a1cae6e7ee0a6 +AUX libx86-1.1-x86emu.patch 1194 BLAKE2B e4f721ca09e081fb9f528ec95ea491a8267a9be8a169a12ebfd05d18425d473b89fe3e6d121ece254b6764a66a4adaeee9d811e619c6db1ce0c62178185d1ac5 SHA512 476d0bc7d3e903c1b1dff75577ea0caa80a5dd06618a08b24300367031ccb578322fcc267746285bcb671583407f22bfb7165374eeb2301ed67177ee18ec549e +DIST libx86-1.1.tar.gz 87428 BLAKE2B cee90a446994816ce925a5b9edb3de5256f404bcadd9853ad197f13bdf4c86bf4c2def6d38e342ed9af5eba9e87400bfb76cad56852d44583b183853b65dcfff SHA512 b946555a45405a06fdf00b3e2522fc99dd7c61349c32726221aa60117a8d3da6da4b44188b1ebb208368e12b396f26055437cebcc8a0e6df10c7a006182c9280 +EBUILD libx86-1.1-r4.ebuild 1384 BLAKE2B a39ca7fba9adf47bd8cad4a75bf918754f5d50d2e2af4560121096e8f13f603f81e6d95cda6dc7b85d06da6530333d55234dc2a89fa341d4fbaa4ba4b030ed87 SHA512 9367b773b1b9b08eb3cb5f0a06e30e69cd0e12c361547f93fecbf35c3b96f69d991714a7ce7e5cb2a159ebd93136f314dc9fefddbd5ec37a51f9e3126d2b02e2 +MISC ChangeLog 2170 BLAKE2B c631882b8ce9c4205051e7c6cf4de37a90331a06c700d161b9a162abb8db9f2b47d88121edeec7097664ed9714ea377c39e7a477ee555bc6443b1396e6475b1f SHA512 c946edeb94f0918bb6647204b566d27063143910f6d27cfd209531572701de8363db79b00f3256a35c1d973530036f31ee3f6f57606aa21de537cdc84a55c3cb +MISC ChangeLog-2015 3104 BLAKE2B d132a5a08c543a57cb7c1d18aa361d49b579b0114f86d521e5994b34dd5b88367dc672eab7a32f996429b5b354ccaff90cfcfc32bc4d3a39488b588939417453 SHA512 db6c59484fc9d2b9771b1ae94c4b36916a9fe97359eff37682422548ec07575a939fc115516aaf8ba5d9166ec134e94c54f9804cb59abf19a2186e3ca5afa880 +MISC metadata.xml 233 BLAKE2B cfe19caa1d389f303098c3e3761b0939ca1648237eff46d3b6742dd81c4e94aff6346b7d86a4394487842aca796c68c650cf1d396f0e1f42f18294a7d3229cbd SHA512 704c94018edcbc53edcf0a41c2603dd59ea217aa5871f35d4d17f7df26156b8fb0a735d2efb11b74256565db01e6790a833242de39c29a9e46ed8ed96d505334 diff --git a/dev-libs/libx86/files/libx86-1.1-x86emu.patch b/dev-libs/libx86/files/libx86-1.1-x86emu.patch new file mode 100644 index 0000000..7b4fe42 --- /dev/null +++ b/dev-libs/libx86/files/libx86-1.1-x86emu.patch @@ -0,0 +1,38 @@ +diff -Naur libx86-1.1+ds1.orig/Makefile libx86-1.1+ds1/Makefile +--- a/libx86-1.1/Makefile 2008-05-19 12:28:59.000000000 +0300 ++++ b/libx86-1.1/Makefile 2012-02-20 01:32:03.750068423 +0200 +@@ -5,6 +5,7 @@ + ifeq ($(BACKEND),x86emu) + OBJECTS += thunk.o x86emu/decode.o x86emu/debug.o x86emu/fpu.o \ + x86emu/ops.o x86emu/ops2.o x86emu/prim_ops.o x86emu/sys.o ++ CFLAGS += -DX86EMU + else + OBJECTS += lrmi.o + endif +diff -Naur libx86-1.1+ds1.orig/thunk.c libx86-1.1+ds1/thunk.c +--- a/libx86-1.1+ds1.orig/thunk.c 2008-04-03 03:48:00.000000000 +0300 ++++ b/libx86-1.1/thunk.c 2012-02-20 01:12:56.468820192 +0200 +@@ -32,6 +32,7 @@ + #define TRUE 1 + #define FALSE 0 + ++#ifndef X86EMU + #define __BUILDIO(bwl,bw,type) \ + static inline void out##bwl##_local(unsigned long port, unsigned type value) { __asm__ __volatile__("out" #bwl " %" #bw "0, %w1" : : "a"(value), "Nd"(port)); \ + }\ +@@ -44,6 +45,15 @@ + __BUILDIO(b,b,char) + __BUILDIO(w,w,short) + __BUILDIO(l,,int) ++#else ++/* use libc functions */ ++#define inb_local inb ++#define inw_local inw ++#define inl_local inl ++#define outb_local outb ++#define outw_local outw ++#define outl_local outl ++#endif /* X86EMU */ + + + char *mmap_addr = SHMERRORPTR; diff --git a/dev-libs/libx86/libx86-1.1-r99.ebuild b/dev-libs/libx86/libx86-1.1-r4.ebuild index 474bce3..78fdfc3 100644 --- a/dev-libs/libx86/libx86-1.1-r99.ebuild +++ b/dev-libs/libx86/libx86-1.1-r4.ebuild @@ -1,34 +1,40 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Id$ -EAPI=5 +EAPI=7 -inherit eutils multilib toolchain-funcs +inherit eutils toolchain-funcs flag-o-matic DESCRIPTION="A hardware-independent library for executing real-mode x86 code" -HOMEPAGE="http://www.codon.org.uk/~mjg59/libx86" -SRC_URI="http://www.codon.org.uk/~mjg59/${PN}/downloads/${P}.tar.gz" +HOMEPAGE="https://www.codon.org.uk/~mjg59/libx86/" +SRC_URI="https://www.codon.org.uk/~mjg59/${PN}/downloads/${P}.tar.gz" LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 ~arm x86" IUSE="static-libs" src_prepare() { # fix compile failure with linux-headers-2.6.26, bug 235599 - epatch "${FILESDIR}"/${PN}-0.99-ifmask.patch + eapply -p0 "${FILESDIR}/${PN}-0.99-ifmask.patch" # Patch for bugs #236888 and #456648 - epatch "${FILESDIR}"/${P}-makefile.patch + eapply -p0 "${FILESDIR}/${P}-makefile.patch" + # Wider arch compatibility, bug #579682 + eapply -p2 "${FILESDIR}/${P}-x86emu.patch" # Add support for pkgconfig (enables newer versions of vbetool to link against this) - epatch "${FILESDIR}"/${P}-add-pkgconfig.patch + eapply "${FILESDIR}"/${P}-add-pkgconfig.patch + eapply_user +} + +src_configure() { tc-export CC AR + append-flags -fno-delete-null-pointer-checks #523276 } src_compile() { local ARGS - use amd64 && ARGS="BACKEND=x86emu" + use x86 || ARGS="BACKEND=x86emu" emake ${ARGS} LIBRARY=shared shared if use static-libs; then emake ${ARGS} objclean |