parent
6939a4b57a
commit
8bb512342f
Binary file not shown.
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST hcloud-1.20.0.tar.xz 790040 BLAKE2B ba0d62c8e817daadaa9eb891adb3f655a9ae33b05617449e26b09a3ba6b99a6b6f61df1cf29138a008a7ee58e45efdfe07c408af89efb1c2bd870d7340976bb8 SHA512 5dbb9060595e836ccde99984783954e894f74c098f911ae8c4cc1944d444fd28b6f722bb711d9b1ae245ddf3af8cca1939585ed778c8026fbf8c4201c2d15469
|
||||
DIST hcloud-1.21.0.tar.xz 823556 BLAKE2B 8a37c7854d6c74f58a8f9dd021674a19f1cc968901e109dadf2e1b7621c3dd4981b07939334b293419d42fc8d1b1a1ff04b962a40b0ae8bf2518a0f7cccd7c68 SHA512 3186839ed95f355f67bdf7169dfa0b10852c8e2e3dc0f2a30e712072cd06cc69a40b038cfa214a47d33e39707d00a81f781aae7f51773cdaca96bcc0b80b1dec
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="A command-line interface for Hetzner Cloud"
|
||||
HOMEPAGE="https://github.com/hetznercloud/cli"
|
||||
SRC_URI="https://dev.gentoo.org/~ago/distfiles/${P}.tar.xz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
IUSE=""
|
||||
DEPEND="dev-lang/go:="
|
||||
RESTRICT="strip"
|
||||
QA_FLAGS_IGNORED=".*"
|
||||
|
||||
src_compile() {
|
||||
go build -mod vendor -o ${PN} -ldflags "-w -X github.com/hetznercloud/cli/cli.Version=${PV}-gentoo" ./cmd/${PN} || die "build failed"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# For upstream a simple test is run 'hcloud version'
|
||||
./hcloud version
|
||||
if [[ $? -ne 0 ]]
|
||||
then
|
||||
die "Test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin ${PN}
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST sudo-1.9.5p2.tar.gz 4012277 BLAKE2B 41913887463e4f775564af8d614fb5ed762200aa777dc789ec333842d4f432323474fc952a531fe929b33607cdfbcd18d7fe7470a15d67139deaf855841ed11f SHA512 f0fe914963c31a6f8ab6c86847ff6cdd125bd5a839b27f46dcae03963f4fc413b3d4cca54c1979feb825c8479b44c7df0642c07345c941eecf6f9f1e03ea0e27
|
||||
DIST sudo-1.9.6.tar.gz 4118872 BLAKE2B fa3a3cb47540f6f926a292f81e4a18358e31fe11d0a63cb8560f26fc85a5e82830752f3352466a5dd67787f5e0760f035f8787bd2241034f351cb5905a98100d SHA512 16291bd7290284272efe675f8b94218540224217f03d96bbb7bcbe6c9d5b7453ff6b24fd28dcbce2fdee59cc8adb9798f4f13272bd25592abc17caa77236dfa3
|
||||
DIST sudo-1.9.6p1.tar.gz 4119888 BLAKE2B 02bdb551c46cff11ac56e64937c64e6a29ccd8e0af34ea2f6b33c223bee8f7ad958d0fc3d7ef8ef12bf5bc82565769b923ff112a3f3d6bf6999fa4f6ea55e38e SHA512 632dfe72f04ce9a7a5a7236fcd5c09ce4535e695ced49d24dd848e3a7b1bea7380df44188b9e475af4271069539b5a5816948a98fbb0649ebebaba8b4c4b7745
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="A set of tools for DVD+RW/-RW drives"
|
||||
HOMEPAGE="http://fy.chalmers.se/~appro/linux/DVD+RW/"
|
||||
SRC_URI="http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="app-cdr/cdrtools"
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/m4"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.0-sysmacros.patch
|
||||
"${FILESDIR}"/${PN}-7.0-wctomb-r1.patch
|
||||
"${FILESDIR}"/${PN}-7.0-glibc2.6.90.patch
|
||||
"${FILESDIR}"/${PN}-7.0-dvddl-r1.patch
|
||||
"${FILESDIR}"/${PN}-7.0-wexit.patch
|
||||
"${FILESDIR}"/${PN}-7.0-reload.patch
|
||||
"${FILESDIR}"/${PN}-7.1-noevent.patch
|
||||
"${FILESDIR}"/${PN}-7.1-lastshort.patch
|
||||
"${FILESDIR}"/${PN}-7.1-bluray_srm+pow.patch
|
||||
"${FILESDIR}"/${PN}-7.1-bluray_pow_freespace.patch
|
||||
"${FILESDIR}"/${PN}-7.1-clang.patch
|
||||
)
|
||||
|
||||
# this is a text file, not html
|
||||
DOCS=( index.html )
|
||||
|
||||
src_prepare() {
|
||||
# Linux compiler flags only include -O2 and are incremental.
|
||||
sed -i '/FLAGS/s:-O2::' Makefile.m4 || die "failed to sed out FLAGS"
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake SHELL="${EPREFIX}"/bin/bash CC="$(tc-getCC)" CXX="$(tc-getCXX)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake SHELL="${EPREFIX}"/bin/bash prefix="${ED}/usr" install
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z "${REPLACING_VERSIONS}" ]] ; then
|
||||
elog 'If you receive an error, "unable to anonymously mmap...'
|
||||
elog 'Resource temporarily unavailable" when running growisofs,'
|
||||
elog 'then you may need to run "ulimit -l unlimited".'
|
||||
fi
|
||||
}
|
@ -0,0 +1,71 @@
|
||||
--- a/dvd+rw-booktype.cpp 2006-06-24 12:21:48.000000000 +0300
|
||||
+++ b/dvd+rw-booktype.cpp 2021-03-14 10:16:02.533741829 +0200
|
||||
@@ -398,7 +398,7 @@
|
||||
break;
|
||||
case OPT_MEDIA:
|
||||
if (profile!=0x1A && profile!=0x14 && profile!=13)
|
||||
- { fprintf (stderr,":-( action is applicable to DVD±RW only\n");
|
||||
+ { fprintf (stderr,":-( action is applicable to DVD\xb1RW only\n");
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -759,7 +759,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
- delete list;
|
||||
+ delete[] list;
|
||||
}
|
||||
|
||||
profile=buf[6]<<8|buf[7];
|
||||
--- a/dvd+rw-mediainfo.cpp 2006-09-23 20:46:57.000000000 +0300
|
||||
+++ b/dvd+rw-mediainfo.cpp 2021-03-14 10:16:02.533741829 +0200
|
||||
@@ -621,7 +621,7 @@
|
||||
if (phys_end>0) phys_end -= phys_start;
|
||||
if (phys_end>0) phys_end += 1;
|
||||
|
||||
- printf (" %s %u*2KB=%"LLU"\n",
|
||||
+ printf (" %s %u*2KB=%" LLU "\n",
|
||||
dvd_dash>=0?"Legacy lead-out at:":"Last border-out at:",
|
||||
phys_end,phys_end*2048LL);
|
||||
|
||||
@@ -941,14 +941,14 @@
|
||||
printf(" %s:\t\t%u*%u=",type[formats[8]&3],
|
||||
capacity=formats[4]<<24|formats[5]<<16|formats[6]<<8|formats[7],
|
||||
blocksize);
|
||||
- printf("%"LLU"\n",(unsigned long long)capacity*blocksize);
|
||||
+ printf("%" LLU "\n",(unsigned long long)capacity*blocksize);
|
||||
|
||||
for(i=12;i<len;i+=8)
|
||||
{ printf(" %02Xh(%x):\t\t%u*%u=",formats[i+4]>>2,
|
||||
formats[i+5]<<16|formats[i+6]<<8|formats[i+7],
|
||||
capacity=formats[i]<<24|formats[i+1]<<16|formats[i+2]<<8|formats[i+3],
|
||||
blocksize);
|
||||
- printf("%"LLU"\n",(unsigned long long)capacity*blocksize);
|
||||
+ printf("%" LLU "\n",(unsigned long long)capacity*blocksize);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1121,7 +1121,7 @@
|
||||
if (ccity) ccity++;
|
||||
bsize = header[4]<<24|header[5]<<16|header[6]<<8|header[7];
|
||||
|
||||
- printf ("READ CAPACITY: %u*%u=%"LLU"\n",
|
||||
+ printf ("READ CAPACITY: %u*%u=%" LLU "\n",
|
||||
ccity,bsize,
|
||||
(unsigned long long)ccity*bsize);
|
||||
} while (0);
|
||||
--- a/transport.hxx 2021-03-14 10:17:54.353626017 +0200
|
||||
+++ b/transport.hxx 2021-03-14 10:16:44.180365362 +0200
|
||||
@@ -127,9 +127,9 @@
|
||||
char str[MB_LEN_MAX];
|
||||
public:
|
||||
__plusminus() { setlocale(LC_CTYPE,ENV_LOCALE);
|
||||
- int l = wctomb(str,(wchar_t)(unsigned char)'±');
|
||||
+ int l = wctomb(str,(wchar_t)'\xb1');
|
||||
if (l>0) str[l]='\0';
|
||||
- else str[0]='±',str[1]='\0';
|
||||
+ else str[0]='\xb1',str[1]='\0';
|
||||
}
|
||||
~__plusminus() { }
|
||||
operator char*(){ return str; }
|
@ -1,5 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<maintainer type="person">
|
||||
<email>ceamac.paragon@gmail.com</email>
|
||||
<name>Viorel Munteanu</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -1,3 +1,2 @@
|
||||
DIST nxml-gentoo-schemas-20200303.tar.xz 8452 BLAKE2B bee7e3d58b03e3aaefcd09d93a9b6919ae6b4892ac09e218ac68cbbc048e28def8b49cc4c583ddad04da61d61bb76386f0c0f33e12d2c8a938447e3f590854d5 SHA512 42f8ee48e349423db156d585bdd2c1d333f69693ac541bc44f8c1d0bae412b1793e1d86fc527287225040aa9b4b791ad2922196cf750de6029b4c77eebdc62de
|
||||
DIST nxml-gentoo-schemas-20210203.tar.xz 8440 BLAKE2B 733c7949bd39a94e657c829c478b76229cfbe2edca6f973f45a91423fb573ed6ff5717ef7bca74733266d7ff5b31f5426d06df51d79263422dba1467234ae8ba SHA512 bdd28b40d0748f595b6ac035686605b7d7a08e9802d0e497893329b4cbc1195f4e785befb8afe6362eb8eb45132f3928f394546412ba463c47977587b6f88b3d
|
||||
DIST nxml-gentoo-schemas-20210314.tar.xz 8512 BLAKE2B 9219644c1a0dbc7afc78c0c4f2623d9d71bbd4f62c387eb025e001e756262107d59f739d695c172ae4ef54049b98f4c3e92bc630be39bcf2f6727d8b0ea27247 SHA512 a092f48f3fe69df0bc51b3e5dd11a6ef09f4074589ffe9872f4936548caf14554fef8cd8ab42626f621c0163a23879698ad12a0818b52cc4b4a4f384a98afd6c
|
||||
|
@ -1,24 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="Extension for nxml-mode with Gentoo-specific schemas"
|
||||
HOMEPAGE="https://gitweb.gentoo.org/proj/nxml-gentoo-schemas.git/"
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
|
||||
|
||||
LICENSE="HPND MIT GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
|
||||
SITEFILE="60${PN}-gentoo.el"
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
insinto "${SITEETC}/${PN}"
|
||||
doins schemas.xml *.rnc
|
||||
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
|
||||
}
|
Binary file not shown.
@ -1,6 +1,4 @@
|
||||
DIST oneko-1.2-cat.png 223 BLAKE2B 35eb9a8aa7e49aa00a7a689187b598ee837b9236715ed62ffc37a94f9afdd54cac9c251eb82a85cbf7ef31af36c010d54310d79f079cf43a6ba3761ee3b18c34 SHA512 f3543be2bac0d14d3db5fe6bc33cf59caae743d547993fe010c79d2bfc6f8720d608026d692733b7519d5b6b99db09f58f34af9bd2d8fcc3556b6994734f24bf
|
||||
DIST oneko-1.2-dog.png 236 BLAKE2B 8aa4bb11d75283784e7bef8eb6d887706d90cf6370cfa41433d32bffbb23db0b775e5a23fe9b19ef0d9426d5e98e583b599e477427c3223f4a225f1904da7ad1 SHA512 11e4a4ecfba26a0ea782846ca288da7ba3f68629dc8f4b0d7987923f06afe57971d53c9161ed13711a9a1f737ea3d8ec76f559311dd10234dca49cfa9d20f533
|
||||
DIST oneko-1.2-sakura-nobsd.patch.bz2 2967 BLAKE2B 128fe382d81fdd18f077d015fcad41613baae00171149a2d4fd253bb03595ca4c7be16640531140af90edf176754fad2bf7e4d5ae27471bf7079b3a558788189 SHA512 dbab7471b1c76d8bd7b0c0f9512ce274d98b7e96e8f1cb781a07b031d3a23c0c716222465dee16ad77f658c681116e71e6f8f50ab45ee8f24d132e24fed6849e
|
||||
DIST oneko-1.2.sakura.5.tar.gz 76825 BLAKE2B e6fbb02823a25e71b6b26d067ca898352d26971bd6595b2f8d33205bf268238e277f8a0a980178704857d50042acd0cb1663d9eb0549764934153864b3602ed1 SHA512 328bc267c027dc2bf9f4d0bf7a3a5cfb0f77e7ffe566dad58ba8728a8d72f905ef0b1b92fea77179d1e79886aea8a6b27cda44dc227d96b69ed34b4fdde3ec15
|
||||
DIST oneko_1.2.sakura.6-14.debian.tar.xz 10996 BLAKE2B 4507243c28371d99976a3ef4d015b53f6dc1e28a0e841c55da18710bfc3825786dc8ee8ce06b5af1ca41445661d6f5c10225b80c6802ab5d2de06dab09de10e0 SHA512 35656ade57e57ba400b6e2d0f9dcfa1b41a7002f874f1113db080d9e75e390ff0e1f4ec169fbcf1cbea135988500501c65a2f520eaab196b8d92ef4feb993baf
|
||||
DIST oneko_1.2.sakura.6.orig.tar.gz 64623 BLAKE2B 262f9373b1739c0181a52377dd72c5f35bd9d8e4e54364304704bb6794216585a7617525ccf439cef4783556aa732ac84f60a45424021b5963d69485c21a15fe SHA512 3f06b1c23ac6e3d9864530904bccbe0fdbeebb512233e35555ae44d2b45b2e6e50480081f46b048994c9415dca05691a0796357d86b4b7e8dc0bbcf1642ae348
|
||||
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="A cat, dog and others which chase the mouse or windows around the screen"
|
||||
HOMEPAGE="http://www.daidouji.com/oneko/"
|
||||
SRC_URI="http://www.daidouji.com/oneko/distfiles/${P}.sakura.5.tar.gz
|
||||
mirror://gentoo/${P}-cat.png
|
||||
mirror://gentoo/${P}-dog.png
|
||||
mirror://gentoo/${P}-sakura-nobsd.patch.bz2"
|
||||
|
||||
LICENSE="public-domain"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc ppc64 x86"
|
||||
|
||||
RDEPEND="
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-text/rman
|
||||
x11-base/xorg-proto
|
||||
x11-misc/gccmakedep
|
||||
x11-misc/imake
|
||||
"
|
||||
|
||||
S=${WORKDIR}/oneko-${PV}.sakura.5
|
||||
|
||||
src_prepare() {
|
||||
epatch \
|
||||
"${WORKDIR}"/${P}-sakura-nobsd.patch \
|
||||
"${FILESDIR}"/${P}-include.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
xmkmf -a || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake \
|
||||
CC="$(tc-getCC)" \
|
||||
CCOPTIONS="${CFLAGS}" \
|
||||
EXTRA_LDOPTIONS="${LDFLAGS}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin oneko
|
||||
newman oneko._man oneko.1x
|
||||
dodoc README README-NEW README-SUPP
|
||||
newicon "${DISTDIR}/${P}-cat.png" "cat.png"
|
||||
newicon "${DISTDIR}/${P}-dog.png" "dog.png"
|
||||
make_desktop_entry "oneko" "oneko (cat)" "cat" "Game;Amusement"
|
||||
make_desktop_entry "oneko -dog" "oneko (dog)" "dog" "Game;Amusement"
|
||||
make_desktop_entry "killall -TERM oneko" "oneko kill" "" "Game;Amusement"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "To kill oneko, type the following in a terminal:"
|
||||
elog ""
|
||||
elog "killall oneko"
|
||||
elog ""
|
||||
elog "If your mouse cursor changes to the default black cross"
|
||||
elog "after running ${PN}, you should emerge x11-apps/xsetroot"
|
||||
elog "and run:"
|
||||
elog ""
|
||||
elog "xsetroot -cursor_name left_ptr"
|
||||
elog ""
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit desktop toolchain-funcs
|
||||
|
||||
DESCRIPTION="A cat, dog and others which chase the mouse or windows around the screen"
|
||||
HOMEPAGE="http://www.daidouji.com/oneko/"
|
||||
SRC_URI="
|
||||
http://www.daidouji.com/oneko/distfiles/${P/_p*}.sakura.${PV/*_p}.tar.gz
|
||||
mirror://gentoo/${P/_p*}-cat.png
|
||||
mirror://gentoo/${P/_p*}-dog.png
|
||||
mirror://gentoo/${P/_p*}-sakura-nobsd.patch.bz2
|
||||
"
|
||||
|
||||
LICENSE="public-domain"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
app-text/rman
|
||||
x11-base/xorg-proto
|
||||
x11-misc/gccmakedep
|
||||
x11-misc/imake
|
||||
"
|
||||
PATCHES=(
|
||||
"${WORKDIR}"/${P/_p*}-sakura-nobsd.patch
|
||||
"${FILESDIR}"/${P/_p*}-include.patch
|
||||
)
|
||||
S=${WORKDIR}/${P/_*}.sakura.${PV/*_p}
|
||||
|
||||
src_configure() {
|
||||
xmkmf -a || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake \
|
||||
CC="$(tc-getCC)" \
|
||||
CCOPTIONS="${CFLAGS}" \
|
||||
EXTRA_LDOPTIONS="${LDFLAGS}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin oneko
|
||||
newman oneko._man oneko.1x
|
||||
dodoc README README-NEW README-SUPP
|
||||
|
||||
newicon "${DISTDIR}/${P/_*}-cat.png" "cat.png"
|
||||
newicon "${DISTDIR}/${P/_*}-dog.png" "dog.png"
|
||||
|
||||
make_desktop_entry "oneko" "oneko (cat)" "cat" "Game;Amusement"
|
||||
make_desktop_entry "oneko -dog" "oneko (dog)" "dog" "Game;Amusement"
|
||||
make_desktop_entry "killall -TERM oneko" "oneko kill" "" "Game;Amusement"
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST recoll-1.25.19.tar.gz 2845683 BLAKE2B 745eac2dd3208619e173abba78f1e03186cdb5deb363c30728184a9d826c698d8e088cc0420178754131792f0d933f395a4fdb209a4315888b733a1209644580 SHA512 d56aff810e335f8212b908118de8fe12fc8d8f8341ebc281244c00dfe2216e008c655f4d39955b6c71928a28ea0aea073036fed17be5b80e8443fe6dfbe374f6
|
||||
DIST recoll-1.27.12.tar.gz 3184471 BLAKE2B 60bcdee44259fa7f8b9decb9258ca0dae4edbf0cee1e8b1353cb59418503f0fcea9b439ecd6352500ff5b4cccfae08fc2a3f7f786fbd096cf18fd21fb809705b SHA512 3701dff056b8200f3b3c1bb2acaa69356c0def00959a0b74c14e1d500bd9e05fc81d82ce8b7db59d7e5b85617a8a7197700031aab65b31e005a4fedeaff59e97
|
||||
DIST recoll-1.28.5.tar.gz 3261816 BLAKE2B 6bf9daab0f97ee6fdb4033197d3fa3f4296b2df8a57566195fca3bf170fec621c27e7da00a1a5a8493fbbadca103a0db7b8c3051abe95d5c2aedb7c289c050a5 SHA512 df4c7a5e624933ccc7ce257a767a4621728a4dbcdd5b551b47845ed0fcffdd5a6f7f617a466404c5e8d8b62c81e57986e1f21e01d643899755623a2dc597d712
|
||||
DIST recoll-1.29.2.tar.gz 3871580 BLAKE2B ae6ef5628dfac67a192a3d133d5b5d8ddec079ac79be2e8aa7e744669ed0478cb41628a0ed46b4ff2364823f367815b1eb4bca0a6e4b56a9e12d4f78c6842473 SHA512 c87fc054a0c34f1b6bcc10a4f2c84268a51df02b8ba84634c51f9396befe5b2b84fc93d363876158c9d117a164613e91d9c63b228fec5e0e07d234c97c4680c5
|
||||
|
@ -0,0 +1,135 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6..9} )
|
||||
|
||||
inherit linux-info optfeature python-single-r1 qmake-utils
|
||||
|
||||
DESCRIPTION="Personal full text search package"
|
||||
HOMEPAGE="https://www.lesbonscomptes.com/recoll/"
|
||||
SRC_URI="https://www.lesbonscomptes.com/recoll/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="camelcase chm doc +inotify qt5 session +spell webengine"
|
||||
REQUIRED_USE="
|
||||
session? ( inotify )
|
||||
webengine? ( qt5 )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/xapian:=
|
||||
sys-libs/zlib:=
|
||||
virtual/libiconv
|
||||
chm? (
|
||||
dev-libs/chmlib
|
||||
dev-python/pychm
|
||||
)
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtprintsupport:5
|
||||
webengine? ( dev-qt/qtwebengine:5[widgets] )
|
||||
)
|
||||
session? (
|
||||
inotify? (
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE
|
||||
x11-libs/libX11
|
||||
)
|
||||
)
|
||||
spell? ( app-text/aspell )
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
qt5? ( dev-qt/linguist-tools:5 )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
app-arch/unzip
|
||||
"
|
||||
|
||||
pkg_pretend() {
|
||||
if has_version "<app-misc/recoll-1.20"; then
|
||||
elog "Installing ${PV} over an 1.19 index is possible,"
|
||||
elog "but there have been small changes in the way"
|
||||
elog "compound words are indexed. So it is best to reset"
|
||||
elog "the index. The best method to reset the index is to"
|
||||
elog "quit all recoll programs and delete the index directory"
|
||||
elog "rm -rf ~/.recoll/xapiandb, then start recoll or recollindex."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if use inotify; then
|
||||
local CONFIG_CHECK="~INOTIFY_USER"
|
||||
check_extra_config
|
||||
fi
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
python_fix_shebang filters
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use qt5 && export QMAKE="$(qt5_get_bindir)/qmake"
|
||||
|
||||
local myeconfargs=(
|
||||
$(use_enable camelcase)
|
||||
$(use_enable chm python-chm)
|
||||
$(use_enable session x11mon)
|
||||
$(use_enable qt5 qtgui)
|
||||
$(use_enable webengine)
|
||||
$(use_with inotify)
|
||||
$(use_with spell aspell)
|
||||
--disable-webkit
|
||||
--without-fam
|
||||
--enable-recollq
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake STRIP="$(type -P true || die)" DESTDIR="${D}" install
|
||||
python_optimize
|
||||
|
||||
# html docs should be placed in /usr/share/doc/${PN}/html
|
||||
use doc && dodoc -r "${ED}"/usr/share/recoll/doc/.
|
||||
rm -r "${ED}/usr/share/recoll/doc" || die
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "In order to extract the full functionality of "
|
||||
elog "recoll, the following packages should be installed "
|
||||
elog "to get the corresponding document support."
|
||||
|
||||
optfeature "XML based documents support" "dev-libs/libxslt[python] dev-libs/libxml2[python]"
|
||||
optfeature "PDF files support" app-text/poppler
|
||||
optfeature "PDF files with OCR support" app-text/tesseract
|
||||
optfeature "MS Word files support" app-text/antiword
|
||||
optfeature "Wordperfect files support" "app-text/libwpd[tools]"
|
||||
optfeature "Lyx files support" app-office/lyx
|
||||
optfeature "GNU Info files support" sys-apps/texinfo
|
||||
optfeature "RAR archives support" dev-python/rarfile
|
||||
optfeature "7zip archives support" dev-python/pylzma
|
||||
optfeature "iCalendar files support" dev-python/icalendar
|
||||
optfeature "Postscript files support" app-text/pstotext
|
||||
optfeature "RTF files support" app-text/unrtf
|
||||
optfeature "TeX files support" dev-text/detex
|
||||
optfeature "DVI files support" virtual/tex-base
|
||||
optfeature "DJVU files support" app-text/djvu
|
||||
optfeature "tags in audio files support" media-libs/mutagen
|
||||
optfeature "tags in image files support" media-libs/exiftool
|
||||
optfeature "Midi karaoke files support" dev-python/chardet
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST goatee-0.3.1.2.tar.gz 84576 BLAKE2B 66eea2e0685279acadba0ae857786bc8bf5eec26d4856745f6a040ac220a824d02e7c9ccf36e38d81ad8a60e90972681f9e2ab2e5f67fa4af267e5f8bb5cc98c SHA512 b8723679823dbb092346f8a6c556c3391888f004d609d6b61c73c9f590901abc5d4024d0ad4063692078637be0171d78e9a91c9436735423d597f310226ee9db
|
||||
DIST goatee-0.4.0.tar.gz 86585 BLAKE2B 32d099fdc4acc66a89b8f17790a4c73d234e28e935f5c325a3dbcbd1c34edd24513a99eae5108f2bcd38ead402c209a4d09e2a57c65fb69c4dbd70a4f05903e7 SHA512 ccd53a3924528cb23ea58e5d9080ba2f6f10a3cb0b60d2f7a427f4be3d20cd9082466757394a82a63ccfd7cb13c1dc0d690084b66193ede0fe43e6ccf434706e
|
||||
|
@ -0,0 +1,26 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="A monadic take on a 2,500-year-old board game - library"
|
||||
HOMEPAGE="http://khumba.net/projects/goatee"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="AGPL-3"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND=">=dev-haskell/mtl-2.1:=[profile?] <dev-haskell/mtl-2.3:=[profile?]
|
||||
>=dev-haskell/parsec-3.1:=[profile?] <dev-haskell/parsec-3.2:=[profile?]
|
||||
>=dev-lang/ghc-8.6.3:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-2.4.0.1
|
||||
test? ( >=dev-haskell/hunit-1.2 <dev-haskell/hunit-1.7 )
|
||||
"
|
@ -1,21 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>games@gentoo.org</email>
|
||||
<name>Gentoo Games Project</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>haskell@gentoo.org</email>
|
||||
<name>Gentoo Haskell</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
Goatee is a Go library and game editor, written in Haskell. It provides a
|
||||
GUI for recording, studying, and editing game records. Underneath this is a
|
||||
portable library for manipulating SGF files to build UIs and tools. Goatee
|
||||
aims to be full-featured by supporting all of the SGF spec and allowing for
|
||||
full and easy customization of the game records you create.
|
||||
|
||||
This package is the shared library.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST cabal-install-3.0.0.0.tar.gz 654045 BLAKE2B 5036948651098b83f073b5ce29e2aaa31e4382f07e8b1e79d206889bd9c74fb88789f4b1cbb3bddc6d03375a6e3a3e164d6bda4ea19e3f944904ab11d7693fce SHA512 0b15313fc11bc6b6018e01b6a3a65242306977c16ce9333ea1191c1ce0020b180451235a7a65b47bc01791e05d1b246bf9d573fc7e981a46fcfc7da0fed04cca
|
||||
DIST cabal-install-3.2.0.0.tar.gz 632084 BLAKE2B 55cdbddebed17489f1c031bd867de7868878aa289193b826dd8274860e4f08d48f71cad33af1b62da16f71629ae4ff5745c3ceeada1680dbcc222793eba49a06 SHA512 ad937b2df42b688e4608aa2b91a25daf1042e5573626202e5182cbfeca9acc5933194853405a6396c60d0d28d6d0d5c5276fd85cb6acf4be2c8cd12afe747062
|
||||
|
@ -0,0 +1,74 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.5.9999
|
||||
# hackport: flags: -debug-conflict-sets,-debug-expensive-assertions,-debug-tracetree
|
||||
CABAL_FEATURES=""
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="The command-line interface for Cabal and Hackage"
|
||||
HOMEPAGE="https://www.haskell.org/cabal/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
# keep in sync with ghc-8.10
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+native-dns"
|
||||
|
||||
RDEPEND=">=dev-haskell/async-2.0:= <dev-haskell/async-2.3:=
|
||||
>=dev-haskell/base16-bytestring-0.1.1:= <dev-haskell/base16-bytestring-0.2:=
|
||||
>=dev-haskell/cabal-3.2:= <dev-haskell/cabal-3.3:=
|
||||
>=dev-haskell/cryptohash-sha256-0.11:= <dev-haskell/cryptohash-sha256-0.12:=
|
||||
>=dev-haskell/echo-0.1.3:= <dev-haskell/echo-0.2:=
|
||||
>=dev-haskell/edit-distance-0.2.2:= <dev-haskell/edit-distance-0.3:=
|
||||
>=dev-haskell/fail-4.9:= <dev-haskell/fail-4.10:=
|
||||
>=dev-haskell/hackage-security-0.6.0.0:= <dev-haskell/hackage-security-0.7:=
|
||||
>=dev-haskell/hashable-1.0:= <dev-haskell/hashable-1.4:=
|
||||
>=dev-haskell/http-4000.1.5:= <dev-haskell/http-4000.4:=
|
||||
>=dev-haskell/lukko-0.1:= <dev-haskell/lukko-0.2:=
|
||||
>=dev-haskell/mtl-2.0:= <dev-haskell/mtl-2.3:=
|
||||
>=dev-haskell/network-2.6:= <dev-haskell/network-3.2:=
|
||||
>=dev-haskell/network-uri-2.6.0.2:= <dev-haskell/network-uri-2.7:=
|
||||
>=dev-haskell/parsec-3.1.13.0:= <dev-haskell/parsec-3.2:=
|
||||
>=dev-haskell/random-1:= <dev-haskell/random-1.2:=
|
||||
>=dev-haskell/semigroups-0.18.3:= <dev-haskell/semigroups-0.20:=
|
||||
>=dev-haskell/stm-2.0:= <dev-haskell/stm-2.6:=
|
||||
>=dev-haskell/tar-0.5.0.3:= <dev-haskell/tar-0.6:=
|
||||
>=dev-haskell/text-1.2.3:= <dev-haskell/text-1.3:=
|
||||
>=dev-haskell/zlib-0.5.3:= <dev-haskell/zlib-0.7:=
|
||||
>=dev-lang/ghc-7.10.1:=
|
||||
native-dns? ( >=dev-haskell/resolv-0.1.1:= <dev-haskell/resolv-0.2:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.22.2.0
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-rankntypes.patch )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
cabal_chdeps \
|
||||
'base >= 4.8 && < 4.14' 'base >= 4.8'
|
||||
#if use noprefs; then
|
||||
# epatch "${FILESDIR}/${PN}"-0.13.3-nopref.patch
|
||||
#fi
|
||||
|
||||
# no chance to link to -threaded on ppc64, alpha and others
|
||||
# who use UNREG, not only ARM
|
||||
if ! ghc-supports-threaded-runtime; then
|
||||
cabal_chdeps '-threaded' ' '
|
||||
fi
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
--flags=-debug-conflict-sets \
|
||||
--flags=-debug-expensive-assertions \
|
||||
--flags=-debug-tracetree \
|
||||
$(cabal_flag native-dns native-dns)
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
diff --git a/Distribution/Client/Sandbox.hs b/Distribution/Client/Sandbox.hs
|
||||
index 66b415d..6aa71bb 100644
|
||||
--- a/Distribution/Client/Sandbox.hs
|
||||
+++ b/Distribution/Client/Sandbox.hs
|
||||
@@ -1,5 +1,6 @@
|
||||
{-# LANGUAGE CPP #-}
|
||||
{-# LANGUAGE FlexibleContexts #-}
|
||||
+{-# LANGUAGE RankNTypes #-}
|
||||
-----------------------------------------------------------------------------
|
||||
-- |
|
||||
-- Module : Distribution.Client.Sandbox
|
@ -1 +1,2 @@
|
||||
DIST Cabal-3.0.1.0.tar.gz 758808 BLAKE2B 9a0cf7b055be4d6fa55c4dd44037263df54eff059cd22970383ffa1470317cdaeac8d81a521f8c48cf595fc22e64da031d508f6d2b58f32a613160b3e0cfcd67 SHA512 29a5ae9bad0398ab86c64cba9fb1ae3094d67013151a91c8c25b0e95b08d8fd683d1e85b064f7faf166966f855b261d2f131b727c82476a8514119a8922a6b06
|
||||
DIST Cabal-3.2.1.0.tar.gz 823331 BLAKE2B 060f4808010f9eefd943312144c75e021bf02083c2a0805128da6c9b93da94ba13fe37cef1fbe27e41fe8a10610e088b923783f4b7bb57150532d3a3ea4a91fc SHA512 279088a2ab9145efc03dbdd10941edcf6034137046ee3b659a8cf0ff075a03e3edff28fd01d432d39701c5a7e05a50b99cf8de95f05d3bd4e75edb3af0e3a598
|
||||
|
@ -1 +1,2 @@
|
||||
DIST cairo-0.13.6.1.tar.gz 53029 BLAKE2B 8363b436271bc1666116819d9ac39297e3a8c61e18ef7758e188e194a1a51fd8a335d61707cecc5f5d240fcf1f4c71add7be945ec8686e80b36de97c88ecfda6 SHA512 e268d27298c2b274eb12555ff67e4abb175a1269ed3087b9a5cf1a128252d8d390e3ef393e76f27b857558451fb0a137f4f44e095053a9ca20159a332b8878ef
|
||||
DIST cairo-0.13.8.1.tar.gz 53026 BLAKE2B a05302d41bda35d3864b675e08b9bc296a218d528d3f2ecda34325650cde67a127cb1d21f2bd8d92dfa9a5e768ff6e622a585b81ac5897d86b9d89227af8dda4 SHA512 9c4ec738fe6e335f635c3fa47a26edb9264ec5a9713ff8c0109f2cf321e21331009402d3715321b63f5423e32ad90a0dd3ca9ca83544d554be5463c9784ab727
|
||||
|
@ -0,0 +1,38 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.4.9999
|
||||
#hackport: flags: cairo_ps:postscript,cairo_pdf:pdf,cairo_svg:svg
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Binding to the Cairo library"
|
||||
HOMEPAGE="http://projects.haskell.org/gtk2hs/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+pdf +postscript +svg"
|
||||
|
||||
RDEPEND="dev-haskell/mtl:=[profile?]
|
||||
>=dev-haskell/text-1.0.0.0:=[profile?] <dev-haskell/text-1.3:=[profile?]
|
||||
>=dev-haskell/utf8-string-0.2:=[profile?] <dev-haskell/utf8-string-1.1:=[profile?]
|
||||
>=dev-lang/ghc-7.10.1:=
|
||||
x11-libs/cairo
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.24 <dev-haskell/cabal-3.3
|
||||
>=dev-haskell/gtk2hs-buildtools-0.13.2.0 <dev-haskell/gtk2hs-buildtools-0.14
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
$(cabal_flag pdf cairo_pdf) \
|
||||
$(cabal_flag postscript cairo_ps) \
|
||||
$(cabal_flag svg cairo_svg)
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST ekg-core-0.1.1.6.tar.gz 13454 BLAKE2B 994e8e6395a9a298dcd6b48a4a122e449fc23fb6944f0565632308d3445825beb1f5177ea2debc4ca409e0d957b1cbfa3190347ed2e973e306a7c1637703f789 SHA512 5a654b6a036300234fc2a65acfee05703772581e0cb646f5462196ce8f30695f7838c34f01b6d840aa1999babe4d9d9b01c3d9b7cc199a1a9112b1792b08927d
|
||||
DIST ekg-core-0.1.1.7.tar.gz 13612 BLAKE2B d630fca0277890b6798c28ae83339d4de8491439edbe1ffbdb09177d382b9e3bb2f2ff43c12741061ae78e8c7e2b8bf499bb5748721df3378b3e78d19a5004bb SHA512 68915d62d7851ff99877a478b948ed119462883463949f551a0d94efa60209f734af0578b1437fcefead3e2cc80570d1a844f6be3b5b90b2fc804f9c85aaca90
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.4
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Tracking of system metrics"
|
||||
HOMEPAGE="https://github.com/tibbe/ekg-core"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="<dev-haskell/text-1.3:=[profile?]
|
||||
<dev-haskell/unordered-containers-0.3:=[profile?]
|
||||
>=dev-lang/ghc-7.6.2:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.18
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
cabal_chdeps \
|
||||
'base >= 4.6 && < 4.14' 'base >= 4.6' \
|
||||
'ghc-prim < 0.6' 'ghc-prim'
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
Same fix as https://github.com/visq/language-c/issues/74
|
||||
|
||||
"""
|
||||
Lexer: allow zeros as line numbers in preprocessed directives
|
||||
|
||||
Starting from `gcc-11` initial line numbers not related to
|
||||
actual files are marked as zeros. See the "preprocessor:
|
||||
Better line info for <builtin> & <command-line>"
|
||||
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=6bf2ff0d52a9
|
||||
|
||||
language-c's grammar did not allow it (by accident)
|
||||
|
||||
```
|
||||
Prelude> Language.C.parseC (Data.ByteString.Char8.pack "# 0 \"/dev/null\"\n") Language.C.nopos
|
||||
Left <no file>:: [ERROR] >>> Syntax Error !
|
||||
Lexical error !
|
||||
The character '#' does not fit here.
|
||||
```
|
||||
|
||||
The change allows '0' in line numbers as well.
|
||||
"""
|
||||
--- a/c2hs/c/CLexer.x
|
||||
+++ b/c2hs/c/CLexer.x
|
||||
@@ -130,7 +130,7 @@ $white+ ;
|
||||
-- * allows further ints after the file name a la GCC; as the GCC CPP docu
|
||||
-- doesn't say how many ints there can be, we allow an unbound number
|
||||
--
|
||||
-\#$space*@int$space*(\"($infname|@charesc)*\"$space*)?(@int$space*)*$eol
|
||||
+\#$space*@digits$space*(\"($infname|@charesc)*\"$space*)?(@int$space*)*$eol
|
||||
{ \pos len str -> setPos (adjustPos (take len str) pos) >> lexToken }
|
||||
|
||||
-- #pragma directive (K&R A12.8)
|
@ -0,0 +1,37 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.4
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Tools to build the Gtk2Hs suite of User Interface libraries"
|
||||
HOMEPAGE="http://projects.haskell.org/gtk2hs/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+closuresignals"
|
||||
|
||||
RDEPEND=">=dev-haskell/cabal-1.24.0.0:=[profile?]
|
||||
dev-haskell/fail:=[profile?]
|
||||
dev-haskell/hashtables:=[profile?]
|
||||
dev-haskell/random:=[profile?]
|
||||
>=dev-lang/ghc-7.8.2:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-haskell/alex
|
||||
>=dev-haskell/cabal-1.18.1.3
|
||||
dev-haskell/happy
|
||||
"
|
||||
|
||||
PATCHES=("${FILESDIR}"/${PN}-0.13.8.0-gcc-11.patch)
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
$(cabal_flag closuresignals closuresignals)
|
||||
}
|
@ -1 +1,3 @@
|
||||
DIST hackage-security-0.5.3.0.tar.gz 87119 BLAKE2B 6e69b13d3ee16fbc6488e1e9d926ba07d975555e9ad80c404ccfec60ff549e7eb2d40302ace8ac5f03ed5532c031f236f8a09edc8a3f8c7d4c2bb48743f88aa1 SHA512 57af812fb3911aed6ebdbc5de733e86a2bdc7845a07246c69346c59f654e7c4ae5bf20ad753cfe71dc1d7f47ce66a37fba49b178e8e6ff74002fc8ffb72d920d
|
||||
DIST hackage-security-0.6.0.1-r1.cabal 12313 BLAKE2B 41dbb4a5b175fe49ab65dba01aa1cbd1a43fbf55fc9cd06697dc984f9a3917d3da5c9c3234e336b78372899848b0fa5adf09f0507617ed0835dfad1443eb62ab SHA512 f4a8d2adde837af18587d74cf4191bc12dec22802aaafc4cd86968d893a41bf912d3649be339503063f8c698a4b8a62888ad50e0e58d3836cc55de100ca51e30
|
||||
DIST hackage-security-0.6.0.1.tar.gz 86006 BLAKE2B 6d057da569beb4e30f91a630ec37247fd47a3467e6037ebf0c4391ff58d95d5477bea09f7d66ab6d0bbe49a445ea15d53ded884f9ea7922583a03ba7497cdd9a SHA512 b83fdda3712c58bcc4237965e40bea16b9ce08f30c0671f45967e69a2eb85488e78a41c8d12b9f339f78f30cc50770a72e9e9a46e5ddf740a20bce4ea4e96fdb
|
||||
|
@ -0,0 +1,13 @@
|
||||
diff --git a/tests/TestSuite.hs b/tests/TestSuite.hs
|
||||
index 598e151..f62f1c5 100644
|
||||
--- a/tests/TestSuite.hs
|
||||
+++ b/tests/TestSuite.hs
|
||||
@@ -70,7 +70,7 @@ tests = testGroup "hackage-security" [
|
||||
testProperty "prop_roundtrip_canonical" JSON.prop_roundtrip_canonical
|
||||
, testProperty "prop_roundtrip_pretty" JSON.prop_roundtrip_pretty
|
||||
, testProperty "prop_canonical_pretty" JSON.prop_canonical_pretty
|
||||
- , testProperty "prop_aeson_canonical" JSON.prop_aeson_canonical
|
||||
+ -- , testProperty "prop_aeson_canonical" JSON.prop_aeson_canonical
|
||||
]
|
||||
]
|
||||
|
@ -0,0 +1,63 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
# hackport: flags: -mtl21,+use-network-uri
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Hackage security library"
|
||||
HOMEPAGE="https://github.com/haskell/hackage-security"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz
|
||||
https://hackage.haskell.org/package/${P}/revision/4.cabal -> ${PF}.cabal"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
# keep in sync with ghc-8.10
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+lukko"
|
||||
|
||||
RDEPEND=">=dev-haskell/base16-bytestring-0.1.1:=[profile?] <dev-haskell/base16-bytestring-1.1:=[profile?]
|
||||
>=dev-haskell/base64-bytestring-1.0:=[profile?] <dev-haskell/base64-bytestring-1.3:=[profile?]
|
||||
>=dev-haskell/cabal-1.14:=[profile?] <dev-haskell/cabal-3.6:=[profile?]
|
||||
>=dev-haskell/cryptohash-sha256-0.11:=[profile?] <dev-haskell/cryptohash-sha256-0.12:=[profile?]
|
||||
>=dev-haskell/ed25519-0.0:=[profile?] <dev-haskell/ed25519-0.1:=[profile?]
|
||||
>=dev-haskell/mtl-2.2:=[profile?] <dev-haskell/mtl-2.3:=[profile?]
|
||||
>=dev-haskell/network-2.6:=[profile?] <dev-haskell/network-3.2:=[profile?]
|
||||
>=dev-haskell/network-uri-2.6:=[profile?] <dev-haskell/network-uri-2.7:=[profile?]
|
||||
>=dev-haskell/parsec-3.1:=[profile?] <dev-haskell/parsec-3.2:=[profile?]
|
||||
>=dev-haskell/tar-0.5:=[profile?] <dev-haskell/tar-0.6:=[profile?]
|
||||
>=dev-haskell/zlib-0.5:=[profile?] <dev-haskell/zlib-0.7:=[profile?]
|
||||
>=dev-lang/ghc-8.4.3:=
|
||||
lukko? ( >=dev-haskell/lukko-0.1:=[profile?] <dev-haskell/lukko-0.2:=[profile?] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-2.2.0.1
|
||||
test? ( >=dev-haskell/aeson-1.4 <dev-haskell/aeson-1.6
|
||||
>=dev-haskell/quickcheck-2.11 <dev-haskell/quickcheck-2.15
|
||||
>=dev-haskell/tasty-1.2 <dev-haskell/tasty-1.4
|
||||
>=dev-haskell/tasty-hunit-0.10 <dev-haskell/tasty-hunit-0.11
|
||||
>=dev-haskell/tasty-quickcheck-0.10 <dev-haskell/tasty-quickcheck-0.11
|
||||
>=dev-haskell/temporary-1.2 <dev-haskell/temporary-1.4
|
||||
>=dev-haskell/unordered-containers-0.2.8.0 <dev-haskell/unordered-containers-0.3
|
||||
>=dev-haskell/vector-0.12 <dev-haskell/vector-0.13 )
|
||||
"
|
||||
|
||||
# See upstream issue #247 for more details, https://github.com/haskell/hackage-security/issues/
|
||||
PATCHES=( "${FILESDIR}/hackage-security-0.6.0.1-disable-failing-aeson-canonical-test.patch" )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
cp "${DISTDIR}/${PF}.cabal" "${S}/${PN}.cabal" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
$(cabal_flag lukko lukko) \
|
||||
--flag=-mtl21 \
|
||||
--flag=use-network-uri
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST haddock-api-2.23.1.tar.gz 200096 BLAKE2B 0635881e198c1df3690f07185da7cc49f8eb92283d99c581756c86fb9f293b28608ac3eea9090abcc3afa12c646e584939df9b8c38b4844e9c462824426019f5 SHA512 fb7826102476a3f292da336f8f16c7a647df7c4432bed905815509fff0df164255c0856cc17663bb42479114ed9a418e6bcd214fb8594b245d401c9e091ac4ef
|
||||
DIST haddock-api-2.24.0.tar.gz 200478 BLAKE2B 5c4f7be45066583e3d3afa0b1866070f2c05d71685526b0d915461f75208f13cf6bbf2b91cc820e1f229df9dbf240cfef150fb3a9929878cfdc02db9dc124c99 SHA512 dfbe5bcfd722dc92ec70aca2dd681da9e122f60ec3da5c9583c188f65b11bade314c64d4af1a3a51cf8f618d8bea943bd4052aa9860ece38ab10717b484ed057
|
||||
|
@ -0,0 +1,147 @@
|
||||
From e455bc18e15adf05a1f32bc7c4512eedb7ab889f Mon Sep 17 00:00:00 2001
|
||||
From: Alex Biehl <alexbiehl@gmail.com>
|
||||
Date: Tue, 8 Dec 2020 19:42:52 +0100
|
||||
Subject: [PATCH 1/2] Changes for GHC#17566
|
||||
|
||||
See https://gitlab.haskell.org/ghc/ghc/merge_requests/2469
|
||||
---
|
||||
haddock-api/src/Haddock/Backends/LaTeX.hs | 2 +-
|
||||
haddock-api/src/Haddock/Backends/Xhtml.hs | 2 +-
|
||||
.../src/Haddock/Backends/Xhtml/Decl.hs | 4 ++-
|
||||
haddock-api/src/Haddock/GhcUtils.hs | 29 +++++++++++++++++--
|
||||
haddock-api/src/Haddock/Types.hs | 1 +
|
||||
5 files changed, 32 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/haddock-api/src/Haddock/Backends/LaTeX.hs b/haddock-api/src/Haddock/Backends/LaTeX.hs
|
||||
index 647812f93..024a6c513 100644
|
||||
--- a/src/Haddock/Backends/LaTeX.hs
|
||||
+++ b/src/Haddock/Backends/LaTeX.hs
|
||||
@@ -255,7 +255,7 @@ declNames :: LHsDecl DocNameI
|
||||
, [DocName] -- names being declared
|
||||
)
|
||||
declNames (L _ decl) = case decl of
|
||||
- TyClD _ d -> (empty, [tcdName d])
|
||||
+ TyClD _ d -> (empty, [tcdNameI d])
|
||||
SigD _ (TypeSig _ lnames _ ) -> (empty, map unLoc lnames)
|
||||
SigD _ (PatSynSig _ lnames _) -> (text "pattern", map unLoc lnames)
|
||||
ForD _ (ForeignImport _ (L _ n) _ _) -> (empty, [n])
|
||||
diff --git a/haddock-api/src/Haddock/Backends/Xhtml.hs b/haddock-api/src/Haddock/Backends/Xhtml.hs
|
||||
index f80a9c05f..541f40c4f 100644
|
||||
--- a/src/Haddock/Backends/Xhtml.hs
|
||||
+++ b/src/Haddock/Backends/Xhtml.hs
|
||||
@@ -407,7 +407,7 @@ ppJsonIndex odir maybe_source_url maybe_wiki_url unicode pkg qual_opt ifaces = d
|
||||
exportSubs _ = []
|
||||
|
||||
exportName :: ExportItem DocNameI -> [IdP DocNameI]
|
||||
- exportName ExportDecl { expItemDecl } = getMainDeclBinder (unLoc expItemDecl)
|
||||
+ exportName ExportDecl { expItemDecl } = getMainDeclBinderI (unLoc expItemDecl)
|
||||
exportName ExportNoDecl { expItemName } = [expItemName]
|
||||
exportName _ = []
|
||||
|
||||
diff --git a/haddock-api/src/Haddock/Backends/Xhtml/Decl.hs b/haddock-api/src/Haddock/Backends/Xhtml/Decl.hs
|
||||
index ef0ba1b67..30b8d43eb 100644
|
||||
--- a/src/Haddock/Backends/Xhtml/Decl.hs
|
||||
+++ b/src/Haddock/Backends/Xhtml/Decl.hs
|
||||
@@ -536,6 +536,8 @@ ppClassDecl summary links instances fixities loc d subdocs
|
||||
-- Only the fixity relevant to the class header
|
||||
fixs = ppFixities [ f | f@(n,_) <- fixities, n == unLoc lname ] qual
|
||||
|
||||
+ nm = tcdNameI decl
|
||||
+
|
||||
hdr = ppClassHdr summary lctxt (unLoc lname) ltyvars lfds
|
||||
|
||||
-- Associated types
|
||||
@@ -794,7 +796,7 @@ ppDataDecl summary links instances fixities subdocs loc doc dataDecl pats
|
||||
| otherwise = header_ +++ docSection curname pkg qual doc +++ constrBit +++ patternBit +++ instancesBit
|
||||
|
||||
where
|
||||
- docname = tcdName dataDecl
|
||||
+ docname = tcdNameI dataDecl
|
||||
curname = Just $ getName docname
|
||||
cons = dd_cons (tcdDataDefn dataDecl)
|
||||
isH98 = case unLoc (head cons) of
|
||||
diff --git a/haddock-api/src/Haddock/GhcUtils.hs b/haddock-api/src/Haddock/GhcUtils.hs
|
||||
index 0874e7b4d..43fe3e774 100644
|
||||
--- a/src/Haddock/GhcUtils.hs
|
||||
+++ b/src/Haddock/GhcUtils.hs
|
||||
@@ -58,8 +58,7 @@ moduleString = moduleNameString . moduleName
|
||||
isNameSym :: Name -> Bool
|
||||
isNameSym = isSymOcc . nameOccName
|
||||
|
||||
-getMainDeclBinder :: (SrcSpanLess (LPat p) ~ Pat p , HasSrcSpan (LPat p)) =>
|
||||
- HsDecl p -> [IdP p]
|
||||
+getMainDeclBinder :: HsDecl (GhcPass p) -> [IdP (GhcPass p)]
|
||||
getMainDeclBinder (TyClD _ d) = [tcdName d]
|
||||
getMainDeclBinder (ValD _ d) =
|
||||
case collectHsBindBinders d of
|
||||
@@ -221,6 +220,31 @@ getGADTConType (ConDeclH98 {}) = panic "getGADTConType"
|
||||
-- Should only be called on ConDeclGADT
|
||||
getGADTConType (XConDecl nec) = noExtCon nec
|
||||
|
||||
+getMainDeclBinderI :: HsDecl DocNameI -> [IdP DocNameI]
|
||||
+getMainDeclBinderI (TyClD _ d) = [tcdNameI d]
|
||||
+getMainDeclBinderI (ValD _ d) =
|
||||
+ case collectHsBindBinders d of
|
||||
+ [] -> []
|
||||
+ (name:_) -> [name]
|
||||
+getMainDeclBinderI (SigD _ d) = sigNameNoLoc d
|
||||
+getMainDeclBinderI (ForD _ (ForeignImport _ name _ _)) = [unLoc name]
|
||||
+getMainDeclBinderI (ForD _ (ForeignExport _ _ _ _)) = []
|
||||
+getMainDeclBinderI _ = []
|
||||
+
|
||||
+familyDeclLNameI :: FamilyDecl DocNameI -> Located DocName
|
||||
+familyDeclLNameI (FamilyDecl { fdLName = n }) = n
|
||||
+familyDeclLNameI (XFamilyDecl nec) = noExtCon nec
|
||||
+
|
||||
+tyClDeclLNameI :: TyClDecl DocNameI -> Located DocName
|
||||
+tyClDeclLNameI (FamDecl { tcdFam = fd }) = familyDeclLNameI fd
|
||||
+tyClDeclLNameI (SynDecl { tcdLName = ln }) = ln
|
||||
+tyClDeclLNameI (DataDecl { tcdLName = ln }) = ln
|
||||
+tyClDeclLNameI (ClassDecl { tcdLName = ln }) = ln
|
||||
+tyClDeclLNameI (XTyClDecl nec) = noExtCon nec
|
||||
+
|
||||
+tcdNameI :: TyClDecl DocNameI -> DocName
|
||||
+tcdNameI = unLoc . tyClDeclLNameI
|
||||
+
|
||||
-- -------------------------------------
|
||||
|
||||
getGADTConTypeG :: ConDecl (GhcPass p) -> LHsType (GhcPass p)
|
||||
@@ -761,4 +785,3 @@ defaultRuntimeRepVars = go emptyVarEnv
|
||||
|
||||
go _ ty@(LitTy {}) = ty
|
||||
go _ ty@(CoercionTy {}) = ty
|
||||
-
|
||||
diff --git a/haddock-api/src/Haddock/Types.hs b/haddock-api/src/Haddock/Types.hs
|
||||
index c2cf08bb2..853f4b1b2 100644
|
||||
--- a/src/Haddock/Types.hs
|
||||
+++ b/src/Haddock/Types.hs
|
||||
@@ -789,6 +789,7 @@ type instance XDataDecl DocNameI = NoExtField
|
||||
type instance XSynDecl DocNameI = NoExtField
|
||||
type instance XFamDecl DocNameI = NoExtField
|
||||
type instance XXFamilyDecl DocNameI = NoExtCon
|
||||
+type instance XXTyClDecl DocNameI = NoExtCon
|
||||
|
||||
type instance XHsIB DocNameI _ = NoExtField
|
||||
type instance XHsWC DocNameI _ = NoExtField
|
||||
|
||||
From e1fe49e9458a5d5161adc8b5b8bfea6437a9eedf Mon Sep 17 00:00:00 2001
|
||||
From: alexbiehl <alexbiehl@gmail.com>
|
||||
Date: Tue, 8 Dec 2020 20:03:49 +0100
|
||||
Subject: [PATCH 2/2] Import intercalate
|
||||
|
||||
---
|
||||
haddock-api/src/Haddock/Interface/Rename.hs | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/haddock-api/src/Haddock/Interface/Rename.hs b/haddock-api/src/Haddock/Interface/Rename.hs
|
||||
index 78c585814..4d9eadac5 100644
|
||||
--- a/src/Haddock/Interface/Rename.hs
|
||||
+++ b/src/Haddock/Interface/Rename.hs
|
||||
@@ -29,6 +29,7 @@ import TysWiredIn (eqTyCon_RDR)
|
||||
import Control.Applicative
|
||||
import Control.Arrow ( first )
|
||||
import Control.Monad hiding (mapM)
|
||||
+import Data.List (intercalate)
|
||||
import qualified Data.Map as Map hiding ( Map )
|
||||
import qualified Data.Set as Set
|
||||
import Prelude hiding (mapM)
|
@ -0,0 +1,39 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
CABAL_FEATURES="lib hoogle hscolour profile test-suite" # haddock
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="A documentation-generation tool for Haskell libraries"
|
||||
HOMEPAGE="https://www.haskell.org/haddock/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
# keep in sync with ghc-8.10
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-haskell/ghc-paths-0.1.0.9:=[profile?] <dev-haskell/ghc-paths-0.2:=[profile?]
|
||||
>=dev-haskell/haddock-library-1.9.0:=[profile?] <dev-haskell/haddock-library-1.10:=[profile?]
|
||||
>=dev-haskell/xhtml-3000.2.2:=[profile?] <dev-haskell/xhtml-3000.3:=[profile?]
|
||||
>=dev-lang/ghc-8.10.1:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-3.0.0.0
|
||||
test? ( >=dev-haskell/ghc-paths-0.1.0.12 <dev-haskell/ghc-paths-0.2
|
||||
>=dev-haskell/hspec-2.4.4 <dev-haskell/hspec-2.8
|
||||
>=dev-haskell/quickcheck-2.11
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=("${FILESDIR}"/${P}-ghc-8.10.2.patch )
|
||||
|
||||
src_prepare () {
|
||||
default
|
||||
|
||||
cabal_chdeps \
|
||||
'QuickCheck >= 2.11 && < 2.14' 'QuickCheck >= 2.11'
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST haddock-library-1.8.0.tar.gz 30918 BLAKE2B a8bcf9e08f6596375186930cf4a98ae547c40d85eb0bd00b7aaf8212c3738e32cd51cea044206f3746d10d228b1e8b8a2ccdb28ae7c7957006f518d090a6ceed SHA512 f84672b67dd4b18402efb8b40eb0e2cb912ecf894cfdedf61b0ada87392e63609cf1101d4fc793686cc4af354665661bf4dc902313bb466efee683a7c64bbe2b
|
||||
DIST haddock-library-1.9.0.tar.gz 31465 BLAKE2B 785935a7f80831c000db796ed9d0071309de86d36c68d5677b6c948aa914c09a00582af500a25d2d751d96ef6ebb30696fba51a2ed84fa1b4850e5795ae5f55d SHA512 ec41df15a849a59fc41a443ce233dfa6293f0d201ed1847bd8a7732bc0e2138bab2305c127bd60f51919d8eeeb6808eec7a0add38edacd059956d852167477b5
|
||||
|
@ -0,0 +1,43 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.4.9999
|
||||
|
||||
CABAL_FEATURES="lib profile test-suite" # haddock hoogle hscolour
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Library exposing some functionality of Haddock"
|
||||
HOMEPAGE="https://www.haskell.org/haddock/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0/${PV}"
|
||||
# keep in sync with ghc-8.10
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-haskell/parsec-3.1.13.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?]
|
||||
>=dev-haskell/text-1.2.3.0:=[profile?] <dev-haskell/text-1.3:=[profile?]
|
||||
>=dev-lang/ghc-7.8.2:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-2.2
|
||||
test? ( >=dev-haskell/hspec-2.4.4
|
||||
>=dev-haskell/optparse-applicative-0.15
|
||||
>=dev-haskell/tree-diff-0.1
|
||||
>=dev-haskell/base-compat-0.9.3
|
||||
>=dev-haskell/quickcheck-2.11 )
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
cabal_chdeps \
|
||||
'base-compat ^>= 0.9.3 || ^>= 0.11.0' 'base-compat >= 0.9.3' \
|
||||
'hspec >= 2.4.4 && < 2.8' 'hspec >= 2.4.4' \
|
||||
'optparse-applicative ^>= 0.15' 'optparse-applicative >= 0.15' \
|
||||
'QuickCheck ^>= 2.11 || ^>= 2.13.2' 'QuickCheck >= 2.11' \
|
||||
'tree-diff ^>= 0.1' 'tree-diff >= 0.1'
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST haddock-2.23.1.tar.gz 302698 BLAKE2B 1dae0019ddc08c537aec2f0fa71f5bd1570db4061d22bf53f05aa0e211c3280d09c6a6481f704c34895e0bf70fd2b5ac95644dab23b05cc2b6fec59c845f86c5 SHA512 e69b3b5f2dcadeccc33696ee8d0646387860b98d86c08d4c07d829e3eabc4159adac0a11d408850ef54face5fa835ab8217d1057b14d8de8d758efbfc7a700db
|
||||
DIST haddock-2.24.0.tar.gz 303382 BLAKE2B 3e0c9a92f4f96949ffbdcba4ae26643b715ca8bf930bb26610a3a4b73ddec9a361b00c9c5f529b79fe6e981f23bb9b95d3b0adeff52d1223d97653c7f2573036 SHA512 52748ea2c785faeb9af7c09f9da991e4db8d5b2703eee3824ee1f6c14c82d24b7939746359f147cbc940b2be0d6aac2a1c8ffe2f1b9746e3bc543252859a4003
|
||||
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.1.9999
|
||||
#hackport: flags: -in-ghc-tree
|
||||
|
||||
CABAL_FEATURES="" # broken test-suite
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="A documentation-generation tool for Haskell libraries"
|
||||
HOMEPAGE="https://www.haskell.org/haddock/"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
# keep in sync with ghc-8.10
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RESTRICT=test # test suite unavailable on hackage
|
||||
|
||||
RDEPEND="~dev-haskell/haddock-api-2.24.0:=
|
||||
>=dev-lang/ghc-8.10.1:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-3.0.0.0"
|
||||
# test? ( ~dev-haskell/haddock-test-0.0.1 )
|
||||
#"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
--flag=-in-ghc-tree
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST happstack-server-7.6.0.tar.gz 85715 BLAKE2B c4a673b6575a3131b29f00f4463431605bd26b469a366cbab3f87662b1e2c0ab43b4a6d205dec30ede009a71de38f27fcfcbd1ddf938ac1e4f419b1a31119c83 SHA512 cea814b470dd2d7a1dc3cf8a2724aa72e23f7832fc5292a7a1b3fbf8a6ef0980f13db777fadea3bdc5c9cb7dca7b35700ff2b94d6632ff7857a546a19ed1548f
|
||||
DIST happstack-server-7.6.1.tar.gz 84878 BLAKE2B 5e146a317e41b039d24cac8dc41e7ebd707168193b5fc5cfe482ec53a3b31088438cffb5f91f741822e3ae1db19c98eaae6c1f0e012afebeebcda4182332bd1f SHA512 e75bc986b16777563410ce42010a161790df5f5a575b253dac2a85ca7e724a9bf1a7485406f7235395d3a9adc3d8205dd3549fd718815390927aeed3c0b8a05e
|
||||
|
@ -0,0 +1,55 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Web related tools and services"
|
||||
HOMEPAGE="http://happstack.com"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+network-uri"
|
||||
|
||||
RDEPEND=">=dev-haskell/base64-bytestring-1.0:=[profile?] <dev-haskell/base64-bytestring-1.2:=[profile?]
|
||||
>=dev-haskell/blaze-html-0.5:=[profile?] <dev-haskell/blaze-html-0.10:=[profile?]
|
||||
dev-haskell/exceptions:=[profile?]
|
||||
dev-haskell/extensible-exceptions:=[profile?]
|
||||
>=dev-haskell/hslogger-1.0.2:=[profile?]
|
||||
dev-haskell/html:=[profile?]
|
||||
>=dev-haskell/monad-control-0.3:=[profile?] <dev-haskell/monad-control-1.1:=[profile?]
|
||||
>=dev-haskell/mtl-2:=[profile?] <dev-haskell/mtl-2.3:=[profile?]
|
||||
dev-haskell/old-locale:=[profile?]
|
||||
<dev-haskell/parsec-4:=[profile?]
|
||||
>=dev-haskell/semigroups-0.16:=[profile?]
|
||||
>=dev-haskell/sendfile-0.7.1:=[profile?] <dev-haskell/sendfile-0.8:=[profile?]
|
||||
dev-haskell/syb:=[profile?]
|
||||
>=dev-haskell/system-filepath-0.3.1:=[profile?]
|
||||
>=dev-haskell/text-0.10:=[profile?] <dev-haskell/text-1.3:=[profile?]
|
||||
>=dev-haskell/threads-0.5:=[profile?]
|
||||
>=dev-haskell/transformers-base-0.4:=[profile?] <dev-haskell/transformers-base-0.5:=[profile?]
|
||||
>=dev-haskell/transformers-compat-0.3:=[profile?] <dev-haskell/transformers-compat-0.7:=[profile?]
|
||||
>=dev-haskell/utf8-string-0.3.4:=[profile?] <dev-haskell/utf8-string-1.1:=[profile?]
|
||||
dev-haskell/xhtml:=[profile?]
|
||||
dev-haskell/zlib:=[profile?]
|
||||
>=dev-lang/ghc-7.8.2:=
|
||||
network-uri? ( >=dev-haskell/network-3.0.0:=[profile?] <dev-haskell/network-3.2:=[profile?]
|
||||
>=dev-haskell/network-bsd-2.8.1:=[profile?] <dev-haskell/network-bsd-2.9:=[profile?]
|
||||
>=dev-haskell/network-uri-2.6:=[profile?] <dev-haskell/network-uri-2.7:=[profile?] )
|
||||
!network-uri? ( <dev-haskell/network-2.6:=[profile?] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.18.1.3
|
||||
test? ( dev-haskell/hunit )
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
$(cabal_flag network-uri network-uri)
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST hoauth2-1.11.0.tar.gz 18270 BLAKE2B 8258e8e7a1bfe12ca0da09297c18354617cb525aee70418a85a56cd5421b4695aa22861e1368fbd2d0ac11ff155fd4cebb8d220ebc4b1f7c3403268682e11e95 SHA512 179c97045f33da6f6cb4c153b9be3482031ce8a150ad70defcbbbfa3c67ff10b31c86c45d845aa605b9c4d3ac921f4372bcd49fbb384e0c78409219bc0bf1607
|
||||
DIST hoauth2-1.16.0.tar.gz 18479 BLAKE2B ca9aa0d35d3bfb9ee3a9cbe62c2ecb1a0efd109c89600642a062fbcbe62cefae53f4810b38eb55b81c29c72e4b80aca8f746966ccbaf17ecc83883e2f6fc3528 SHA512 fe42759c2ccaf035bfa15d9276a7c8bf6608a7b74732c6950c2081616196296a73c34474989c1eda5fcfc15066626e1facf2f58b6977d5e00520290948731cb6
|
||||
|
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
#hackport: flags: -test
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Haskell OAuth2 authentication client"
|
||||
HOMEPAGE="https://github.com/freizl/hoauth2"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-haskell/aeson-1.3.0.0:=[profile?] <dev-haskell/aeson-1.6:=[profile?]
|
||||
>=dev-haskell/binary-0.8.3:=[profile?]
|
||||
>=dev-haskell/exceptions-0.8.3:=[profile?] <dev-haskell/exceptions-0.11:=[profile?]
|
||||
>=dev-haskell/http-conduit-2.1:=[profile?] <dev-haskell/http-conduit-2.4:=[profile?]
|
||||
>=dev-haskell/http-types-0.11:=[profile?] <dev-haskell/http-types-0.13:=[profile?]
|
||||
>=dev-haskell/microlens-0.4.0:=[profile?] <dev-haskell/microlens-0.5:=[profile?]
|
||||
>=dev-haskell/text-0.11:=[profile?] <dev-haskell/text-1.3:=[profile?]
|
||||
>=dev-haskell/unordered-containers-0.2.5:=[profile?]
|
||||
>=dev-haskell/uri-bytestring-0.2.3.1:=[profile?] <dev-haskell/uri-bytestring-0.4:=[profile?]
|
||||
>=dev-haskell/uri-bytestring-aeson-0.1:=[profile?] <dev-haskell/uri-bytestring-aeson-0.2:=[profile?]
|
||||
>=dev-lang/ghc-8.0.1:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-2.4
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
--flag=-test
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST syb-with-class-0.6.1.11.tar.gz 13225 BLAKE2B 3c7f25fb942025284bbfba49edc7b16ae04716e42337e8668188a80a193b05a06252a29ac2244a35fa25992bc23d7fa998ddaadb85f017112f903cffb89d4fba SHA512 962eb1bcb63ce7cc1789996ad7191e3ab7c20f3c90828fb3535306ca8509ac210e70f42ebd6ac6fc075d50cc5c5e1c15bb735b5d6040c6348dc82453809330f9
|
||||
DIST syb-with-class-0.6.1.13.tar.gz 13225 BLAKE2B a218611f332037968513b3706bc35e903f335477fa490f0c709f085014e833f1969851a74ae0d2a40c6a085c9aec1bbd963a48d4362963d3a89fe8e399a790fc SHA512 40082f8b97ae49929fb2b686a840656fd2a62936ddc4873f3af4bdfe128e213dff509185e412c3c58bd48ec32abcade8ed68dd257d221bb08f9d20433067f371
|
||||
|
@ -0,0 +1,25 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Scrap Your Boilerplate With Class"
|
||||
HOMEPAGE="https://hackage.haskell.org/package/syb-with-class"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-lang/ghc-7.4.1:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.10
|
||||
test? ( dev-haskell/hunit )
|
||||
"
|
@ -1 +1,2 @@
|
||||
DIST test-framework-th-prime-0.0.10.tar.gz 4035 BLAKE2B 44c0f454ec4018f8aeccc9e7eec33c25778d05e257ce910dd779ac6bbb2acf1d4b54a897d0625e78308def417f1aa1b77194fba353802f2fce7a6e954dea3fbb SHA512 91298214c134821b298270c2770cab284131787a40293c01dba2e88a58f355d6811dea06bf14f237fea5d4aa80987790405644bc09ad64a4d7b4574e2bca97eb
|
||||
DIST test-framework-th-prime-0.0.9.tar.gz 3908 BLAKE2B 4c8794bf66081ffd6eee2b6f0e9d8fd5f2218a90c2522398b13f440aade1244a62e91c3c1e11367f109babd2e78722d94beaac95555be356ce55f25d118adfa3 SHA512 52f64b1705d51f45512da4270d8a80c93602d62a2c33eb3a0146f10a3f737395c9d0294af62cc3ff859dc8292338df892c0262216349109bb4f7b0beb09d3601
|
||||
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Template Haskell for test framework"
|
||||
HOMEPAGE="https://hackage.haskell.org/package/test-framework-th-prime"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-haskell/cpphs-0.2.1:=[profile?]
|
||||
dev-haskell/haskell-src-exts:=[profile?]
|
||||
dev-haskell/test-framework:=[profile?]
|
||||
>=dev-lang/ghc-7.4.1:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.6
|
||||
"
|
@ -1 +1,2 @@
|
||||
DIST text-1.2.4.0.tar.gz 171477 BLAKE2B 29bb6738f5c61e13b218cc57cb0c900fce25ecad190315aea4b0a92d5200e2d54aeeae26c8dfc88ddc74706549b820272fdb3877330c8e1e5bd119cac99deef3 SHA512 a4bd566c7d0aea1bfeacf27332e9cff3ad894e7eed9f826b7e4fc7fb85e272164d18a34a81c89dd1ea802951a80ec1d82000ebef05748d419ddfff792c4525e3
|
||||
DIST text-1.2.4.1_rc1.tar.gz 166148 BLAKE2B c79bbd90c9ccf99668d5a4f0e66b4c75fa7a531d9851355be8a9d859d99578d2e22977ee9514f1743927a8a4fa49d29c252abc39509dd0b6d09bffd96e1f5289 SHA512 27d014d6b870e6cba16ac4a0ac146872d89c363ad1ca786642554bde0cf3ae4876d69ba8dd2655bbdcb88076bf4f5e13b45929ff86cd2bd90d24e607ad7221c6
|
||||
|
@ -0,0 +1,42 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.9999
|
||||
#hackport: flags: -bytestring-builder,-developer
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour" # broken test-suite
|
||||
# break circular dependencies:
|
||||
# https://github.com/gentoo-haskell/gentoo-haskell/issues/810
|
||||
CABAL_FEATURES+=" nocabaldep"
|
||||
inherit haskell-cabal
|
||||
|
||||
MY_PV="$(ver_rs 4 -)"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="An efficient packed Unicode text type"
|
||||
HOMEPAGE="https://github.com/haskell/text"
|
||||
SRC_URI="https://github.com/haskell/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0/${PV}"
|
||||
# keep in sync with ghc-8.10.3
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
# break cyclic dependencies, test suite requires porting to >=QC-2.11
|
||||
RESTRICT=test
|
||||
RDEPEND=">=dev-lang/ghc-8.10.3:="
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
CABAL_CORE_LIB_GHC_PV="PM:8.10.3 PM:8.10.4 PM:9999"
|
||||
|
||||
src_configure() {
|
||||
haskell-cabal_src_configure \
|
||||
--flag=-bytestring-builder \
|
||||
--flag=-developer
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST th-utilities-0.2.3.0.tar.gz 15577 BLAKE2B fad72515936ba6b7876ff731c7a1e12246014e191282028fc1bd1846dc704d4d1408e82e82a394a1f58350f961c5b7b7f5b9ae0cfbf09551fc5964433d42b113 SHA512 edddde2ea3a9da44bd34cbf51d9f4ea14510eac9527f2f1a199390566e24f10ed84403f5450e47244b0cbfc4b5dc3a5c3f64ec596255f191d8bad83d9043a3ba
|
||||
DIST th-utilities-0.2.4.1.tar.gz 16134 BLAKE2B f8357f66c7d62f0fb902f933edb63a75474eea5bb90f80f192799ae0f2c3ce535d5888a53256331552661791277388b1cdae0bab472c3bb1d39bf79fe29f20b1 SHA512 b23272db62a0842af56efbc2f4cc0ebb8d0c900ecb3471fd2a984792da76ab57780d0960fa737fa0023dcd06e12b7585b586ae330005570046ba767101840d02
|
||||
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# ebuild generated by hackport 0.6.7.9999
|
||||
|
||||
CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
|
||||
inherit haskell-cabal
|
||||
|
||||
DESCRIPTION="Collection of useful functions for use with Template Haskell"
|
||||
HOMEPAGE="https://github.com/fpco/th-utilities#readme"
|
||||
SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="dev-haskell/primitive:=[profile?]
|
||||
dev-haskell/syb:=[profile?]
|
||||
dev-haskell/text:=[profile?]
|
||||
dev-haskell/th-orphans:=[profile?]
|
||||
>=dev-lang/ghc-7.8.2:=
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-haskell/cabal-1.18.1.3
|
||||
test? ( dev-haskell/hspec
|
||||
dev-haskell/vector )
|
||||
"
|
Binary file not shown.
@ -0,0 +1,91 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
MY_PV=${PV/_beta/-}
|
||||
MY_PV=${MY_PV/_p/-}
|
||||
MY_PV=${MY_PV#0.}
|
||||
MY_P=java-cup-${MY_PV%-*}
|
||||
|
||||
DESCRIPTION="CUP Parser Generator for Java"
|
||||
HOMEPAGE="http://www2.cs.tum.edu/projects/cup/"
|
||||
SRC_URI="http://www2.cs.tum.edu/projects/cup/releases/java-cup-src-${MY_PV}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
DEPEND="dev-java/ant-core:0
|
||||
dev-java/jflex:0
|
||||
>=virtual/jdk-1.8:*"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.8:*"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="yes"
|
||||
JAVA_ANT_CLASSPATH_TAGS+=" taskdef"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Bizarrely, you can't build from the tarball without this patch.
|
||||
eapply "${FILESDIR}"/${PN}-0.11b_beta20150326-build-xml-svn.patch
|
||||
|
||||
# The JFlex package name has changed to lower case.
|
||||
sed -i "s/JFlex\./jflex./g" build.xml || die
|
||||
|
||||
# Remove the bundled JFlex.
|
||||
rm -v bin/JFlex.jar || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
EANT_GENTOO_CLASSPATH_EXTRA=$(java-pkg_getjars --build-only ant-core,jflex)
|
||||
java-ant-2_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Annoyingly javacup bundles an older version of itself that will
|
||||
# break jflex if that has already been built against this newer
|
||||
# version beforehand. Even more annoyingly, the binary download is
|
||||
# built with Java 8, which isn't much use to us. We therefore use
|
||||
# any installed javacup that is newer than the bundled version where
|
||||
# possible. If this approach turns out to be unworkable then we may
|
||||
# just have to use the bundled jflex for bootstrapping.
|
||||
if has_version \>=${CATEGORY}/${PN}-0.11b:${SLOT}; then
|
||||
# Use PORTAGE_QUIET to suppress a QA warning that is spurious
|
||||
# thanks to has_version above. This is Portage-specific but
|
||||
# showing the warning elsewhere isn't the end of the world.
|
||||
einfo "Bootstrapping with installed javacup ..."
|
||||
EANT_GENTOO_CLASSPATH_EXTRA+=":$(PORTAGE_QUIET=1 java-pkg_getjars --build-only javacup)" eant
|
||||
else
|
||||
einfo "Bootstrapping with bundled javacup ..."
|
||||
EANT_GENTOO_CLASSPATH_EXTRA+=":${S}/bin/${MY_P:0:-1}.jar" eant
|
||||
fi
|
||||
|
||||
# Clean everything except the new jar.
|
||||
rm -rv java/ classes/ || die
|
||||
|
||||
einfo "Recompiling with newly built javacup ..."
|
||||
EANT_GENTOO_CLASSPATH_EXTRA+=":${S}/dist/${MY_P}.jar" eant
|
||||
|
||||
use doc && ejavadoc -sourcepath src/ -d javadoc java_cup
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar dist/${MY_P}.jar
|
||||
java-pkg_newjar dist/${MY_P}-runtime.jar ${PN}-runtime.jar
|
||||
java-pkg_dolauncher ${PN} --jar ${PN}.jar
|
||||
java-pkg_register-ant-task
|
||||
|
||||
dodoc changelog.txt
|
||||
docinto html
|
||||
dodoc manual.html
|
||||
|
||||
use source && java-pkg_dosrc java/*
|
||||
use doc && java-pkg_dojavadoc javadoc
|
||||
}
|
@ -0,0 +1,123 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="JFlex is a lexical analyzer generator for Java"
|
||||
HOMEPAGE="https://www.jflex.de/"
|
||||
SRC_URI="https://${PN}.de/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~ppc-macos ~x64-macos"
|
||||
IUSE="examples test vim-syntax"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
CDEPEND="dev-java/ant-core:0"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.8:*
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
|
||||
${CDEPEND}"
|
||||
|
||||
DEPEND="dev-java/javacup:0
|
||||
>=virtual/jdk-1.8:*
|
||||
test? ( dev-java/junit:4 )
|
||||
${CDEPEND}"
|
||||
|
||||
PDEPEND="dev-java/javacup:0"
|
||||
|
||||
S="${WORKDIR}/${P}"
|
||||
JAVA_SRC_DIR="src/main/java"
|
||||
|
||||
src_prepare() {
|
||||
# See below for details.
|
||||
eapply_user "${FILESDIR}/icedtea-arm.patch"
|
||||
|
||||
# We need the bundled jflex.jar.
|
||||
rm -rv ${JAVA_SRC_DIR}/java_cup examples/pom.xml || die
|
||||
|
||||
# Remove the bundled java-cup.jar if unneeded.
|
||||
if has_version ${PDEPEND}; then
|
||||
rm -v lib/java-cup-*.jar || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# javacup is a cyclic dependency. Use the package if we have it,
|
||||
# otherwise use the bundled version and install the package later.
|
||||
if has_version ${PDEPEND}; then
|
||||
# Use PORTAGE_QUIET to suppress a QA warning that is spurious
|
||||
# thanks to has_version above. This is Portage-specific but
|
||||
# showing the warning elsewhere isn't the end of the world.
|
||||
JAVACUP=$(PORTAGE_QUIET=1 java-pkg_getjar --build-only javacup javacup.jar)
|
||||
else
|
||||
JAVACUP=$(echo lib/java-cup-*.jar)
|
||||
fi
|
||||
|
||||
JAVA_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --build-only ant-core):${JAVACUP}"
|
||||
}
|
||||
|
||||
jflex_compile() {
|
||||
java "${@}" jflex.Main -d ${JAVA_SRC_DIR}/${PN} --skel src/main/${PN}/skeleton.nested src/main/${PN}/LexScan.flex || die
|
||||
java-pkg-simple_src_compile
|
||||
java-pkg_addres ${PN}.jar src/main/resources
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
java -jar "${JAVACUP}" -destdir ${JAVA_SRC_DIR}/${PN} -package ${PN} -parser LexParse -interface src/main/cup/LexParse.cup || die
|
||||
|
||||
# The IcedTea ARM HotSpot port (as of 2.6.1) hangs when running
|
||||
# jflex. We have patched jflex to fix it but we have to run the
|
||||
# bundled version first. -Xint works around the problem. See
|
||||
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2678.
|
||||
use arm && local JFLEX_ARGS="-Xint"
|
||||
|
||||
# First compile (without doc/source) using the bundled jflex.
|
||||
JAVA_PKG_IUSE= jflex_compile -cp "lib/${P}.jar:${JAVACUP}" ${JFLEX_ARGS}
|
||||
|
||||
# Then recompile using the fresh jflex.
|
||||
jflex_compile -cp "${PN}.jar:${JAVACUP}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg-simple_src_install
|
||||
java-pkg_dolauncher ${PN} --main ${PN}.Main
|
||||
|
||||
java-pkg_register-dependency javacup javacup-runtime.jar
|
||||
java-pkg_register-ant-task
|
||||
|
||||
use examples && java-pkg_doexamples examples
|
||||
dodoc {changelog,README}.md
|
||||
|
||||
if use doc; then
|
||||
dodoc doc/*.pdf
|
||||
docinto html
|
||||
dodoc doc/*.{css,html,png} doc/COPYRIGHT
|
||||
fi
|
||||
|
||||
if use vim-syntax; then
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins lib/${PN}.vim
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use arm && java-pkg_current-vm-matches oracle-jdk-bin-1.8; then
|
||||
# This results in a StackOverflowError as of 1.8.0.65 but works
|
||||
# fine on icedtea:7. Don't know about icedtea:8 yet.
|
||||
rm -v src/test/java/jflex/EmitterTest.java || die
|
||||
fi
|
||||
|
||||
local CP="src/test/java:${PN}.jar:${JAVA_GENTOO_CLASSPATH_EXTRA}:$(java-pkg_getjars junit-4)"
|
||||
|
||||
local TESTS=$(find src/test/java -name "*Test*.java" -printf "%P\n")
|
||||
TESTS="${TESTS//.java}"
|
||||
TESTS="${TESTS//\//.}"
|
||||
|
||||
ejavac -classpath "${CP}" $(find src/test/java -name "*.java")
|
||||
ejunit4 -classpath "${CP}" ${TESTS}
|
||||
}
|
Binary file not shown.
@ -1,78 +0,0 @@
|
||||
--- ghc-7.10.0.20150316-orig/compiler/utils/Pair.hs 2015-03-10 05:43:13.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/utils/Pair.hs 2015-03-17 09:50:48.491115080 +1100
|
||||
@@ -15,6 +15,8 @@
|
||||
import Data.Foldable
|
||||
import Data.Monoid
|
||||
import Data.Traversable
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
|
||||
data Pair a = Pair { pFst :: a, pSnd :: a }
|
||||
--- ghc-7.10.0.20150316-orig/compiler/types/Coercion.hs 2015-03-10 05:43:13.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/types/Coercion.hs 2015-03-17 10:11:21.636047380 +1100
|
||||
@@ -104,6 +104,8 @@
|
||||
#if __GLASGOW_HASKELL__ < 709
|
||||
import Control.Applicative hiding ( empty )
|
||||
import Data.Traversable (traverse, sequenceA)
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
import FastString
|
||||
import ListSetOps
|
||||
--- ghc-7.10.0.20150316-orig/compiler/typecheck/TcEvidence.hs 2015-03-14 08:48:57.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/typecheck/TcEvidence.hs 2015-03-17 10:26:03.251433371 +1100
|
||||
@@ -50,6 +50,8 @@
|
||||
#if __GLASGOW_HASKELL__ < 709
|
||||
import Control.Applicative
|
||||
import Data.Traversable (traverse, sequenceA)
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
import qualified Data.Data as Data
|
||||
import Outputable
|
||||
--- ghc-7.10.0.20150316-orig/compiler/hsSyn/HsBinds.hs 2015-03-10 05:43:13.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/hsSyn/HsBinds.hs 2015-03-17 10:42:21.459519033 +1100
|
||||
@@ -47,6 +47,8 @@
|
||||
import Data.Traversable ( Traversable(..) )
|
||||
import Data.Monoid ( mappend )
|
||||
import Control.Applicative hiding (empty)
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
|
||||
{-
|
||||
--- ghc-7.10.0.20150316-orig/compiler/parser/RdrHsSyn.hs 2015-03-10 05:43:13.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/parser/RdrHsSyn.hs 2015-03-17 11:17:48.950929542 +1100
|
||||
@@ -91,9 +91,7 @@
|
||||
import Util
|
||||
import ApiAnnotation
|
||||
|
||||
-#if __GLASGOW_HASKELL__ < 709
|
||||
import Control.Applicative ((<$>))
|
||||
-#endif
|
||||
import Control.Monad
|
||||
|
||||
import Text.ParserCombinators.ReadP as ReadP
|
||||
--- ghc-7.10.0.20150316-orig/compiler/typecheck/TcGenDeriv.hs 2015-03-14 08:48:57.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/typecheck/TcGenDeriv.hs 2015-03-17 11:30:39.106508173 +1100
|
||||
@@ -59,6 +59,8 @@
|
||||
import Var
|
||||
#if __GLASGOW_HASKELL__ < 709
|
||||
import MonadUtils
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
import Outputable
|
||||
import Lexeme
|
||||
--- ghc-7.10.0.20150316-orig/compiler/vectorise/Vectorise/Exp.hs 2015-03-10 05:43:13.000000000 +1100
|
||||
+++ ghc-7.10.0.20150316/compiler/vectorise/Vectorise/Exp.hs 2015-03-17 11:46:41.829481669 +1100
|
||||
@@ -46,6 +46,8 @@
|
||||
import Util
|
||||
#if __GLASGOW_HASKELL__ < 709
|
||||
import MonadUtils
|
||||
+#else
|
||||
+import Control.Applicative ((<$>))
|
||||
#endif
|
||||
|
||||
import Control.Monad
|
@ -1,26 +0,0 @@
|
||||
commit 5cc08ebf2f346992a0abd4440252165c90b5ec05
|
||||
Author: Sergei Trofimovich <siarheit@google.com>
|
||||
Date: Sat Jun 20 12:23:00 2015 +0100
|
||||
|
||||
Recognise 'hardhloat' as a valid vendor in a host tuple
|
||||
|
||||
Observed on a tuple armv7a-hardfloat-linux-gnueabi:
|
||||
> Unknown vendor hardfloat
|
||||
|
||||
Reported-by: Sergey Alirzaev
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
diff --git a/aclocal.m4 b/aclocal.m4
|
||||
index 590edb0..958622c 100644
|
||||
--- a/aclocal.m4
|
||||
+++ b/aclocal.m4
|
||||
@@ -1966,6 +1966,9 @@ AC_DEFUN([GHC_CONVERT_VENDOR],[
|
||||
softfloat) # like armv5tel-softfloat-linux-gnueabi
|
||||
$2="unknown"
|
||||
;;
|
||||
+ hardfloat) # like armv7a-hardfloat-linux-gnueabi
|
||||
+ $2="unknown"
|
||||
+ ;;
|
||||
*)
|
||||
#pass thru by default
|
||||
$2="$1"
|
@ -1,45 +0,0 @@
|
||||
diff --git a/ANNOUNCE b/ANNOUNCE
|
||||
index 7812eba..0018b37 100644
|
||||
--- a/ANNOUNCE
|
||||
+++ b/ANNOUNCE
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
==============================================================
|
||||
- The (Interactive) Glasgow Haskell Compiler -- version 7.10.2
|
||||
+ The (Interactive) Glasgow Haskell Compiler -- version 7.10.3
|
||||
==============================================================
|
||||
|
||||
The GHC Team is pleased to announce a new minor release of GHC. This is a
|
||||
@@ -29,7 +29,7 @@ bug-fix release and contains a number of important fixes,
|
||||
A more thorough list of the changes in the release can be found in the release
|
||||
notes,
|
||||
|
||||
- http://haskell.org/ghc/docs/7.10.2/html/users_guide/release-7-10-2.html
|
||||
+ http://haskell.org/ghc/docs/7.10.3/html/users_guide/release-7-10-3.html
|
||||
|
||||
|
||||
How to get it
|
||||
diff --git a/docs/users_guide/intro.xml b/docs/users_guide/intro.xml
|
||||
index 3292334..fb7116e 100644
|
||||
--- a/docs/users_guide/intro.xml
|
||||
+++ b/docs/users_guide/intro.xml
|
||||
@@ -309,6 +309,7 @@
|
||||
|
||||
&relnotes1;
|
||||
&relnotes2;
|
||||
+&relnotes3;
|
||||
|
||||
</chapter>
|
||||
|
||||
diff --git a/docs/users_guide/ug-ent.xml.in b/docs/users_guide/ug-ent.xml.in
|
||||
index b696aad..3629e93 100644
|
||||
--- a/docs/users_guide/ug-ent.xml.in
|
||||
+++ b/docs/users_guide/ug-ent.xml.in
|
||||
@@ -5,6 +5,7 @@
|
||||
<!ENTITY intro SYSTEM "intro.xml" >
|
||||
<!ENTITY relnotes1 SYSTEM "7.10.1-notes.xml" >
|
||||
<!ENTITY relnotes2 SYSTEM "7.10.2-notes.xml" >
|
||||
+<!ENTITY relnotes3 SYSTEM "7.10.3-notes.xml" >
|
||||
<!ENTITY using SYSTEM "using.xml" >
|
||||
<!ENTITY code-gens SYSTEM "codegens.xml" >
|
||||
<!ENTITY runtime SYSTEM "runtime_control.xml" >
|
@ -1,14 +0,0 @@
|
||||
On hardened 'cp' drops out XT-pax parking.
|
||||
perfinion suggested using 'install', where portage
|
||||
might have a chance to save our marking.
|
||||
|
||||
Reported-by: Jay Yang
|
||||
Gentoo-bug: https://bugs.gentoo.org/518734
|
||||
diff --git a/rules/build-prog.mk b/rules/build-prog.mk
|
||||
index 399369e..2ee9cd5 100644
|
||||
--- a/rules/build-prog.mk
|
||||
+++ b/rules/build-prog.mk
|
||||
@@ -288,3 +288,3 @@ endif
|
||||
$$($1_$2_INPLACE) : $1/$2/build/tmp/$$($1_$2_PROG_INPLACE) | $$$$(dir $$$$@)/.
|
||||
- "$$(CP)" -p $$< $$@
|
||||
+ $$(INSTALL) -m 755 $$< $$@
|
@ -1,81 +0,0 @@
|
||||
commit bb5953484579968c984d074ca1af5d21e1c9e7a0
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Mon Feb 10 12:45:58 2014 +0300
|
||||
|
||||
rts: unrust 'libbfd' debug symbols parser
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index e7fbc7f..e47979c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -801,7 +801,8 @@ fi
|
||||
dnl ** check whether this machine has BFD and libiberty installed (used for debugging)
|
||||
dnl the order of these tests matters: bfd needs libiberty
|
||||
AC_CHECK_LIB(iberty, xmalloc)
|
||||
-AC_CHECK_LIB(bfd, bfd_uncompress_section_contents)
|
||||
+dnl 'bfd_init' is a rare non-macro in libbfd
|
||||
+AC_CHECK_LIB(bfd, bfd_init)
|
||||
|
||||
dnl ################################################################
|
||||
dnl Check for libraries
|
||||
diff --git a/rts/Printer.c b/rts/Printer.c
|
||||
index ca9ca49..ce02b02 100644
|
||||
--- a/rts/Printer.c
|
||||
+++ b/rts/Printer.c
|
||||
@@ -48,6 +48,9 @@ void printPtr( StgPtr p )
|
||||
raw = lookupGHCName(p);
|
||||
if (raw != NULL) {
|
||||
printZcoded(raw);
|
||||
+ /* it can be just a C symbol, like 'stg_returnToStackTop' */
|
||||
+ debugBelch("<%s>", raw);
|
||||
+ debugBelch("[%p]", p);
|
||||
} else {
|
||||
debugBelch("%p", p);
|
||||
}
|
||||
@@ -794,7 +797,7 @@ static void printZcoded( const char *raw )
|
||||
disabling this for now.
|
||||
*/
|
||||
#ifdef USING_LIBBFD
|
||||
-
|
||||
+#include "../mk/config.h" /* silly BFD's requirement */
|
||||
#include <bfd.h>
|
||||
|
||||
/* Fairly ad-hoc piece of code that seems to filter out a lot of
|
||||
@@ -863,7 +866,10 @@ extern void DEBUG_LoadSymbols( char *name )
|
||||
for( i = 0; i != number_of_symbols; ++i ) {
|
||||
symbol_info info;
|
||||
bfd_get_symbol_info(abfd,symbol_table[i],&info);
|
||||
- /*debugBelch("\t%c\t0x%x \t%s\n",info.type,(nat)info.value,info.name); */
|
||||
+ if (0)
|
||||
+ {
|
||||
+ debugBelch("\t%c\t0x%x \t%s\n",info.type,(nat)info.value,info.name);
|
||||
+ }
|
||||
if (isReal(info.type, info.name)) {
|
||||
num_real_syms += 1;
|
||||
}
|
||||
diff --git a/rts/RtsStartup.c b/rts/RtsStartup.c
|
||||
index aa7306f..5bdef94 100644
|
||||
--- a/rts/RtsStartup.c
|
||||
+++ b/rts/RtsStartup.c
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "RtsFlags.h"
|
||||
#include "RtsUtils.h"
|
||||
#include "Prelude.h"
|
||||
+#include "Printer.h" /* DEBUG_LoadSymbols */
|
||||
#include "Schedule.h" /* initScheduler */
|
||||
#include "Stats.h" /* initStats */
|
||||
#include "STM.h" /* initSTM */
|
||||
@@ -162,6 +163,11 @@ hs_init_ghc(int *argc, char **argv[], RtsConfig rts_config)
|
||||
rts_config.rts_opts_enabled, rts_config.rts_opts, rts_config.rts_hs_main);
|
||||
}
|
||||
|
||||
+#ifdef DEBUG
|
||||
+ /* load debugging symbols */
|
||||
+ DEBUG_LoadSymbols((*argv)[0]);
|
||||
+#endif /* DEBUG */
|
||||
+
|
||||
/* Initialise the stats department, phase 1 */
|
||||
initStats1();
|
||||
|
@ -1,34 +0,0 @@
|
||||
commit b0cf3ab7a69b878a4335d21a347b56e4b0ca0b7b
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Mon Apr 14 19:06:24 2014 +0300
|
||||
|
||||
compiler/cmm/PprC.hs: constify local string literals
|
||||
|
||||
Consider one-line module
|
||||
module B (v) where v = "hello"
|
||||
in -fvia-C mode it generates code like
|
||||
static char gibberish_str[] = "hello";
|
||||
|
||||
It uselessly eats data section (precious resource on ia64!).
|
||||
The patch switches genrator to emit:
|
||||
static const char gibberish_str[] = "hello";
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
|
||||
diff --git a/compiler/cmm/PprC.hs b/compiler/cmm/PprC.hs
|
||||
index 2398981..fdb578d 100644
|
||||
--- a/compiler/cmm/PprC.hs
|
||||
+++ b/compiler/cmm/PprC.hs
|
||||
@@ -112,6 +112,12 @@ pprTop (CmmProc infos clbl _ graph) =
|
||||
|
||||
-- We only handle (a) arrays of word-sized things and (b) strings.
|
||||
|
||||
+pprTop (CmmData ReadOnlyData (Statics lbl [CmmString str])) =
|
||||
+ hcat [
|
||||
+ pprLocalness lbl, ptext (sLit "const char "), ppr lbl,
|
||||
+ ptext (sLit "[] = "), pprStringInCStyle str, semi
|
||||
+ ]
|
||||
+
|
||||
pprTop (CmmData _section (Statics lbl [CmmString str])) =
|
||||
hcat [
|
||||
pprLocalness lbl, ptext (sLit "char "), ppr lbl,
|
@ -1,35 +0,0 @@
|
||||
commit 326046739801a380c5457ef4c87bce8fb95497ba
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Sun Aug 10 22:12:28 2014 +0300
|
||||
|
||||
systools info: fix warning about C compiler (message said about linker)
|
||||
|
||||
Summary: Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
|
||||
Test Plan: build-tested
|
||||
|
||||
Reviewers: austin
|
||||
|
||||
Reviewed By: austin
|
||||
|
||||
Subscribers: phaskell, simonmar, relrod, ezyang, carter
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D132
|
||||
|
||||
diff --git a/compiler/main/SysTools.lhs b/compiler/main/SysTools.lhs
|
||||
index 1c1c52c..72fa19b 100644
|
||||
--- a/compiler/main/SysTools.lhs
|
||||
+++ b/compiler/main/SysTools.lhs
|
||||
@@ -809,10 +809,10 @@ getCompilerInfo' dflags = do
|
||||
)
|
||||
(\err -> do
|
||||
debugTraceMsg dflags 2
|
||||
- (text "Error (figuring out compiler information):" <+>
|
||||
+ (text "Error (figuring out C compiler information):" <+>
|
||||
text (show err))
|
||||
errorMsg dflags $ hang (text "Warning:") 9 $
|
||||
- text "Couldn't figure out linker information!" $$
|
||||
+ text "Couldn't figure out C compiler information!" $$
|
||||
text "Make sure you're using GNU gcc, or clang"
|
||||
return UnknownCC)
|
||||
return info
|
@ -1,31 +0,0 @@
|
||||
commit 78863edbb0751f5c9694ea10c6132a87cfd0ee10
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Wed Aug 27 22:20:33 2014 +0300
|
||||
|
||||
Revert "disable shared libs on sparc (linux/solaris) (fixes #8857)"
|
||||
|
||||
This reverts commit 623883f1ed0ee11cc925c4590fb09565403fd231.
|
||||
|
||||
The commit a93ab43ab5f40cadbedea2f6342b93c245e91434
|
||||
driver: pass '-fPIC' option to assembler as well
|
||||
fixes shared libraries on sparc at least on linux.
|
||||
|
||||
Properly fixes Issue #8857
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
|
||||
diff --git a/mk/config.mk.in b/mk/config.mk.in
|
||||
index c210cd3..392237f 100644
|
||||
--- a/mk/config.mk.in
|
||||
+++ b/mk/config.mk.in
|
||||
@@ -97,9 +97,7 @@ endif
|
||||
# Some platforms don't support shared libraries
|
||||
NoSharedLibsPlatformList = powerpc-unknown-linux \
|
||||
x86_64-unknown-mingw32 \
|
||||
- i386-unknown-mingw32 \
|
||||
- sparc-sun-solaris2 \
|
||||
- sparc-unknown-linux
|
||||
+ i386-unknown-mingw32
|
||||
|
||||
ifeq "$(SOLARIS_BROKEN_SHLD)" "YES"
|
||||
NoSharedLibsPlatformList += i386-unknown-solaris2
|
@ -1,351 +0,0 @@
|
||||
commit fa31e8f4a0f853848d96549a429083941877bf8d
|
||||
Author: Sergei Trofimovich <siarheit@google.com>
|
||||
Date: Sun Dec 14 14:30:12 2014 +0000
|
||||
|
||||
powerpc: fix and enable shared libraries by default on linux
|
||||
|
||||
Summary:
|
||||
And fix things all the way down to it. Namely:
|
||||
- remove 'r30' from free registers, it's an .LCTOC1 register
|
||||
for gcc. generated .plt stubs expect it to be initialised.
|
||||
- fix PicBase computation, which originally forgot to use 'tmp'
|
||||
reg in 'initializePicBase_ppc.fetchPC'
|
||||
- mark 'ForeighTarget's as implicitly using 'PicBase' register
|
||||
(see comment for details)
|
||||
- add 64-bit MO_Sub and test on alloclimit3/4 regtests
|
||||
- fix dynamic label offsets to match with .LCTOC1 offset
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
Test Plan: validate passes equal amount of vanilla/dyn tests
|
||||
|
||||
Reviewers: simonmar, erikd, austin
|
||||
|
||||
Reviewed By: erikd, austin
|
||||
|
||||
Subscribers: carter, thomie
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D560
|
||||
|
||||
GHC Trac Issues: #8024, #9831
|
||||
|
||||
diff --git a/compiler/cmm/CLabel.hs b/compiler/cmm/CLabel.hs
|
||||
index 0f2c0ae..37b8ada 100644
|
||||
--- a/compiler/cmm/CLabel.hs
|
||||
+++ b/compiler/cmm/CLabel.hs
|
||||
@@ -1170,7 +1170,8 @@ pprDynamicLinkerAsmLabel platform dllInfo lbl
|
||||
else if osElfTarget (platformOS platform)
|
||||
then if platformArch platform == ArchPPC
|
||||
then case dllInfo of
|
||||
- CodeStub -> ppr lbl <> text "@plt"
|
||||
+ CodeStub -> -- See Note [.LCTOC1 in PPC PIC code]
|
||||
+ ppr lbl <> text "+32768@plt"
|
||||
SymbolPtr -> text ".LC_" <> ppr lbl
|
||||
_ -> panic "pprDynamicLinkerAsmLabel"
|
||||
else if platformArch platform == ArchX86_64
|
||||
diff --git a/compiler/nativeGen/PIC.hs b/compiler/nativeGen/PIC.hs
|
||||
index 9b5c080..6326a8b 100644
|
||||
--- a/compiler/nativeGen/PIC.hs
|
||||
+++ b/compiler/nativeGen/PIC.hs
|
||||
@@ -54,7 +54,6 @@ import qualified X86.Instr as X86
|
||||
|
||||
import Platform
|
||||
import Instruction
|
||||
-import Size
|
||||
import Reg
|
||||
import NCGMonad
|
||||
|
||||
@@ -468,11 +467,8 @@ pprGotDeclaration dflags ArchX86 OSDarwin
|
||||
pprGotDeclaration _ _ OSDarwin
|
||||
= empty
|
||||
|
||||
--- pprGotDeclaration
|
||||
+-- Emit GOT declaration
|
||||
-- Output whatever needs to be output once per .s file.
|
||||
--- The .LCTOC1 label is defined to point 32768 bytes into the table,
|
||||
--- to make the most of the PPC's 16-bit displacements.
|
||||
--- Only needed for PIC.
|
||||
pprGotDeclaration dflags arch os
|
||||
| osElfTarget os
|
||||
, arch /= ArchPPC_64
|
||||
@@ -482,6 +478,7 @@ pprGotDeclaration dflags arch os
|
||||
| osElfTarget os
|
||||
, arch /= ArchPPC_64
|
||||
= vcat [
|
||||
+ -- See Note [.LCTOC1 in PPC PIC code]
|
||||
ptext (sLit ".section \".got2\",\"aw\""),
|
||||
ptext (sLit ".LCTOC1 = .+32768") ]
|
||||
|
||||
@@ -688,12 +685,7 @@ pprImportedSymbol _ _ _
|
||||
|
||||
|
||||
-- Get a pointer to our own fake GOT, which is defined on a per-module basis.
|
||||
--- This is exactly how GCC does it, and it's quite horrible:
|
||||
--- We first fetch the address of a local label (mkPicBaseLabel).
|
||||
--- Then we add a 16-bit offset to that to get the address of a .long that we
|
||||
--- define in .text space right next to the proc. This .long literal contains
|
||||
--- the (32-bit) offset from our local label to our global offset table
|
||||
--- (.LCTOC1 aka gotOffLabel).
|
||||
+-- This is exactly how GCC does it in linux.
|
||||
|
||||
initializePicBase_ppc
|
||||
:: Arch -> OS -> Reg
|
||||
@@ -704,18 +696,9 @@ initializePicBase_ppc ArchPPC os picReg
|
||||
(CmmProc info lab live (ListGraph blocks) : statics)
|
||||
| osElfTarget os
|
||||
= do
|
||||
- dflags <- getDynFlags
|
||||
- gotOffLabel <- getNewLabelNat
|
||||
- tmp <- getNewRegNat $ intSize (wordWidth dflags)
|
||||
let
|
||||
- gotOffset = CmmData Text $ Statics gotOffLabel [
|
||||
- CmmStaticLit (CmmLabelDiffOff gotLabel
|
||||
- mkPicBaseLabel
|
||||
- 0)
|
||||
- ]
|
||||
- offsetToOffset
|
||||
- = PPC.ImmConstantDiff
|
||||
- (PPC.ImmCLbl gotOffLabel)
|
||||
+ gotOffset = PPC.ImmConstantDiff
|
||||
+ (PPC.ImmCLbl gotLabel)
|
||||
(PPC.ImmCLbl mkPicBaseLabel)
|
||||
|
||||
blocks' = case blocks of
|
||||
@@ -726,15 +709,23 @@ initializePicBase_ppc ArchPPC os picReg
|
||||
| bID `mapMember` info = fetchPC b
|
||||
| otherwise = b
|
||||
|
||||
+ -- GCC does PIC prologs thusly:
|
||||
+ -- bcl 20,31,.L1
|
||||
+ -- .L1:
|
||||
+ -- mflr 30
|
||||
+ -- addis 30,30,.LCTOC1-.L1@ha
|
||||
+ -- addi 30,30,.LCTOC1-.L1@l
|
||||
+ -- TODO: below we use it over temporary register,
|
||||
+ -- it can and should be optimised by picking
|
||||
+ -- correct PIC reg.
|
||||
fetchPC (BasicBlock bID insns) =
|
||||
BasicBlock bID (PPC.FETCHPC picReg
|
||||
- : PPC.ADDIS tmp picReg (PPC.HI offsetToOffset)
|
||||
- : PPC.LD PPC.archWordSize tmp
|
||||
- (PPC.AddrRegImm tmp (PPC.LO offsetToOffset))
|
||||
- : PPC.ADD picReg picReg (PPC.RIReg picReg)
|
||||
+ : PPC.ADDIS picReg picReg (PPC.HA gotOffset)
|
||||
+ : PPC.ADDI picReg picReg (PPC.LO gotOffset)
|
||||
+ : PPC.MR PPC.r30 picReg
|
||||
: insns)
|
||||
|
||||
- return (CmmProc info lab live (ListGraph blocks') : gotOffset : statics)
|
||||
+ return (CmmProc info lab live (ListGraph blocks') : statics)
|
||||
|
||||
|
||||
initializePicBase_ppc ArchPPC OSDarwin picReg
|
||||
diff --git a/compiler/nativeGen/PPC/CodeGen.hs b/compiler/nativeGen/PPC/CodeGen.hs
|
||||
index ddf483a..c1c4a74 100644
|
||||
--- a/compiler/nativeGen/PPC/CodeGen.hs
|
||||
+++ b/compiler/nativeGen/PPC/CodeGen.hs
|
||||
@@ -54,7 +54,7 @@ import Outputable
|
||||
import Unique
|
||||
import DynFlags
|
||||
|
||||
-import Control.Monad ( mapAndUnzipM )
|
||||
+import Control.Monad ( mapAndUnzipM, when )
|
||||
import Data.Bits
|
||||
import Data.Word
|
||||
|
||||
@@ -355,6 +355,19 @@ iselExpr64 (CmmMachOp (MO_Add _) [e1,e2]) = do
|
||||
ADDE rhi r1hi r2hi ]
|
||||
return (ChildCode64 code rlo)
|
||||
|
||||
+iselExpr64 (CmmMachOp (MO_Sub _) [e1,e2]) = do
|
||||
+ ChildCode64 code1 r1lo <- iselExpr64 e1
|
||||
+ ChildCode64 code2 r2lo <- iselExpr64 e2
|
||||
+ (rlo,rhi) <- getNewRegPairNat II32
|
||||
+ let
|
||||
+ r1hi = getHiVRegFromLo r1lo
|
||||
+ r2hi = getHiVRegFromLo r2lo
|
||||
+ code = code1 `appOL`
|
||||
+ code2 `appOL`
|
||||
+ toOL [ SUBFC rlo r2lo r1lo,
|
||||
+ SUBFE rhi r2hi r1hi ]
|
||||
+ return (ChildCode64 code rlo)
|
||||
+
|
||||
iselExpr64 (CmmMachOp (MO_UU_Conv W32 W64) [expr]) = do
|
||||
(expr_reg,expr_code) <- getSomeReg expr
|
||||
(rlo, rhi) <- getNewRegPairNat II32
|
||||
@@ -918,8 +931,12 @@ genCCall' dflags gcp target dest_regs args0
|
||||
(toOL []) []
|
||||
|
||||
(labelOrExpr, reduceToFF32) <- case target of
|
||||
- ForeignTarget (CmmLit (CmmLabel lbl)) _ -> return (Left lbl, False)
|
||||
- ForeignTarget expr _ -> return (Right expr, False)
|
||||
+ ForeignTarget (CmmLit (CmmLabel lbl)) _ -> do
|
||||
+ uses_pic_base_implicitly
|
||||
+ return (Left lbl, False)
|
||||
+ ForeignTarget expr _ -> do
|
||||
+ uses_pic_base_implicitly
|
||||
+ return (Right expr, False)
|
||||
PrimTarget mop -> outOfLineMachOp mop
|
||||
|
||||
let codeBefore = move_sp_down finalStack `appOL` passArgumentsCode
|
||||
@@ -940,6 +957,13 @@ genCCall' dflags gcp target dest_regs args0
|
||||
where
|
||||
platform = targetPlatform dflags
|
||||
|
||||
+ uses_pic_base_implicitly = do
|
||||
+ -- See Note [implicit register in PPC PIC code]
|
||||
+ -- on why we claim to use PIC register here
|
||||
+ when (gopt Opt_PIC dflags) $ do
|
||||
+ _ <- getPicBaseNat archWordSize
|
||||
+ return ()
|
||||
+
|
||||
initialStackOffset = case gcp of
|
||||
GCPDarwin -> 24
|
||||
GCPLinux -> 8
|
||||
@@ -1431,3 +1455,21 @@ coerceFP2Int _ toRep x = do
|
||||
-- read low word of value (high word is undefined)
|
||||
LD II32 dst (spRel dflags 3)]
|
||||
return (Any (intSize toRep) code')
|
||||
+
|
||||
+-- Note [.LCTOC1 in PPC PIC code]
|
||||
+-- The .LCTOC1 label is defined to point 32768 bytes into the GOT table
|
||||
+-- to make the most of the PPC's 16-bit displacements.
|
||||
+-- As 16-bit signed offset is used (usually via addi/lwz instructions)
|
||||
+-- first element will have '-32768' offset against .LCTOC1.
|
||||
+
|
||||
+-- Note [implicit register in PPC PIC code]
|
||||
+-- PPC generates calls by labels in assembly
|
||||
+-- in form of:
|
||||
+-- bl puts+32768@plt
|
||||
+-- in this form it's not seen directly (by GHC NCG)
|
||||
+-- that r30 (PicBaseReg) is used,
|
||||
+-- but r30 is a required part of PLT code setup:
|
||||
+-- puts+32768@plt:
|
||||
+-- lwz r11,-30484(r30) ; offset in .LCTOC1
|
||||
+-- mtctr r11
|
||||
+-- bctr
|
||||
diff --git a/compiler/nativeGen/PPC/Instr.hs b/compiler/nativeGen/PPC/Instr.hs
|
||||
index f5b9506..b7081f9 100644
|
||||
--- a/compiler/nativeGen/PPC/Instr.hs
|
||||
+++ b/compiler/nativeGen/PPC/Instr.hs
|
||||
@@ -205,8 +205,11 @@ data Instr
|
||||
| ADD Reg Reg RI -- dst, src1, src2
|
||||
| ADDC Reg Reg Reg -- (carrying) dst, src1, src2
|
||||
| ADDE Reg Reg Reg -- (extend) dst, src1, src2
|
||||
+ | ADDI Reg Reg Imm -- Add Immediate dst, src1, src2
|
||||
| ADDIS Reg Reg Imm -- Add Immediate Shifted dst, src1, src2
|
||||
| SUBF Reg Reg Reg -- dst, src1, src2 ; dst = src2 - src1
|
||||
+ | SUBFC Reg Reg Reg -- (carrying) dst, src1, src2 ; dst = src2 - src1
|
||||
+ | SUBFE Reg Reg Reg -- (extend) dst, src1, src2 ; dst = src2 - src1
|
||||
| MULLW Reg Reg RI
|
||||
| DIVW Reg Reg Reg
|
||||
| DIVWU Reg Reg Reg
|
||||
@@ -284,8 +287,11 @@ ppc_regUsageOfInstr platform instr
|
||||
ADD reg1 reg2 ri -> usage (reg2 : regRI ri, [reg1])
|
||||
ADDC reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
ADDE reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
+ ADDI reg1 reg2 _ -> usage ([reg2], [reg1])
|
||||
ADDIS reg1 reg2 _ -> usage ([reg2], [reg1])
|
||||
SUBF reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
+ SUBFC reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
+ SUBFE reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
MULLW reg1 reg2 ri -> usage (reg2 : regRI ri, [reg1])
|
||||
DIVW reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
DIVWU reg1 reg2 reg3 -> usage ([reg2,reg3], [reg1])
|
||||
@@ -358,8 +364,11 @@ ppc_patchRegsOfInstr instr env
|
||||
ADD reg1 reg2 ri -> ADD (env reg1) (env reg2) (fixRI ri)
|
||||
ADDC reg1 reg2 reg3 -> ADDC (env reg1) (env reg2) (env reg3)
|
||||
ADDE reg1 reg2 reg3 -> ADDE (env reg1) (env reg2) (env reg3)
|
||||
+ ADDI reg1 reg2 imm -> ADDI (env reg1) (env reg2) imm
|
||||
ADDIS reg1 reg2 imm -> ADDIS (env reg1) (env reg2) imm
|
||||
SUBF reg1 reg2 reg3 -> SUBF (env reg1) (env reg2) (env reg3)
|
||||
+ SUBFC reg1 reg2 reg3 -> SUBFC (env reg1) (env reg2) (env reg3)
|
||||
+ SUBFE reg1 reg2 reg3 -> SUBFE (env reg1) (env reg2) (env reg3)
|
||||
MULLW reg1 reg2 ri -> MULLW (env reg1) (env reg2) (fixRI ri)
|
||||
DIVW reg1 reg2 reg3 -> DIVW (env reg1) (env reg2) (env reg3)
|
||||
DIVWU reg1 reg2 reg3 -> DIVWU (env reg1) (env reg2) (env reg3)
|
||||
diff --git a/compiler/nativeGen/PPC/Ppr.hs b/compiler/nativeGen/PPC/Ppr.hs
|
||||
index 6851769..f59d51f 100644
|
||||
--- a/compiler/nativeGen/PPC/Ppr.hs
|
||||
+++ b/compiler/nativeGen/PPC/Ppr.hs
|
||||
@@ -525,6 +525,16 @@ pprInstr (BCTRL _) = hcat [
|
||||
ptext (sLit "bctrl")
|
||||
]
|
||||
pprInstr (ADD reg1 reg2 ri) = pprLogic (sLit "add") reg1 reg2 ri
|
||||
+pprInstr (ADDI reg1 reg2 imm) = hcat [
|
||||
+ char '\t',
|
||||
+ ptext (sLit "addi"),
|
||||
+ char '\t',
|
||||
+ pprReg reg1,
|
||||
+ ptext (sLit ", "),
|
||||
+ pprReg reg2,
|
||||
+ ptext (sLit ", "),
|
||||
+ pprImm imm
|
||||
+ ]
|
||||
pprInstr (ADDIS reg1 reg2 imm) = hcat [
|
||||
char '\t',
|
||||
ptext (sLit "addis"),
|
||||
@@ -539,6 +549,8 @@ pprInstr (ADDIS reg1 reg2 imm) = hcat [
|
||||
pprInstr (ADDC reg1 reg2 reg3) = pprLogic (sLit "addc") reg1 reg2 (RIReg reg3)
|
||||
pprInstr (ADDE reg1 reg2 reg3) = pprLogic (sLit "adde") reg1 reg2 (RIReg reg3)
|
||||
pprInstr (SUBF reg1 reg2 reg3) = pprLogic (sLit "subf") reg1 reg2 (RIReg reg3)
|
||||
+pprInstr (SUBFC reg1 reg2 reg3) = pprLogic (sLit "subfc") reg1 reg2 (RIReg reg3)
|
||||
+pprInstr (SUBFE reg1 reg2 reg3) = pprLogic (sLit "subfe") reg1 reg2 (RIReg reg3)
|
||||
pprInstr (MULLW reg1 reg2 ri@(RIReg _)) = pprLogic (sLit "mullw") reg1 reg2 ri
|
||||
pprInstr (MULLW reg1 reg2 ri@(RIImm _)) = pprLogic (sLit "mull") reg1 reg2 ri
|
||||
pprInstr (DIVW reg1 reg2 reg3) = pprLogic (sLit "divw") reg1 reg2 (RIReg reg3)
|
||||
diff --git a/compiler/nativeGen/PPC/Regs.hs b/compiler/nativeGen/PPC/Regs.hs
|
||||
index 0f636bf..69e69c0 100644
|
||||
--- a/compiler/nativeGen/PPC/Regs.hs
|
||||
+++ b/compiler/nativeGen/PPC/Regs.hs
|
||||
@@ -37,7 +37,8 @@ module PPC.Regs (
|
||||
fits16Bits,
|
||||
makeImmediate,
|
||||
fReg,
|
||||
- sp, r3, r4, r27, r28, f1, f20, f21,
|
||||
+ sp, r3, r4, r27, r28, r30,
|
||||
+ f1, f20, f21,
|
||||
|
||||
allocatableRegs
|
||||
|
||||
@@ -295,12 +296,13 @@ point registers.
|
||||
fReg :: Int -> RegNo
|
||||
fReg x = (32 + x)
|
||||
|
||||
-sp, r3, r4, r27, r28, f1, f20, f21 :: Reg
|
||||
+sp, r3, r4, r27, r28, r30, f1, f20, f21 :: Reg
|
||||
sp = regSingle 1
|
||||
r3 = regSingle 3
|
||||
r4 = regSingle 4
|
||||
r27 = regSingle 27
|
||||
r28 = regSingle 28
|
||||
+r30 = regSingle 30
|
||||
f1 = regSingle $ fReg 1
|
||||
f20 = regSingle $ fReg 20
|
||||
f21 = regSingle $ fReg 21
|
||||
diff --git a/includes/CodeGen.Platform.hs b/includes/CodeGen.Platform.hs
|
||||
index 9916e0e..1d46a01 100644
|
||||
--- a/includes/CodeGen.Platform.hs
|
||||
+++ b/includes/CodeGen.Platform.hs
|
||||
@@ -881,6 +881,8 @@ freeReg 1 = fastBool False -- The Stack Pointer
|
||||
# if !MACHREGS_darwin
|
||||
-- most non-darwin powerpc OSes use r2 as a TOC pointer or something like that
|
||||
freeReg 2 = fastBool False
|
||||
+-- at least linux in -fPIC relies on r30 in PLT stubs
|
||||
+freeReg 30 = fastBool False
|
||||
# endif
|
||||
# ifdef REG_Base
|
||||
freeReg REG_Base = fastBool False
|
||||
diff --git a/mk/config.mk.in b/mk/config.mk.in
|
||||
index 0f5820f..8f134bc 100644
|
||||
--- a/mk/config.mk.in
|
||||
+++ b/mk/config.mk.in
|
||||
@@ -95,7 +95,7 @@ TargetElf = YES
|
||||
endif
|
||||
|
||||
# Some platforms don't support shared libraries
|
||||
-NoSharedLibsPlatformList = powerpc-unknown-linux \
|
||||
+NoSharedLibsPlatformList = \
|
||||
x86_64-unknown-mingw32 \
|
||||
i386-unknown-mingw32
|
||||
|
@ -1,27 +0,0 @@
|
||||
Gentoo-bug: https://bugs.gentoo.org/536426
|
||||
Reported-by: Eric Siegel
|
||||
commit 021b7978d14799bae779907faf7490cfd21b3f46
|
||||
Author: Austin Seipp <austin@well-typed.com>
|
||||
Date: Sun Jul 20 10:13:15 2014 -0500
|
||||
|
||||
driver: use absolute paths in ld scripts (#7452)
|
||||
|
||||
Patch contributed by slowmo.
|
||||
|
||||
Signed-off-by: Austin Seipp <austin@well-typed.com>
|
||||
|
||||
diff --git a/compiler/main/DriverPipeline.hs b/compiler/main/DriverPipeline.hs
|
||||
index 11427e2..49126fe 100644
|
||||
--- a/compiler/main/DriverPipeline.hs
|
||||
+++ b/compiler/main/DriverPipeline.hs
|
||||
@@ -2166,7 +2166,9 @@ joinObjectFiles dflags o_files output_fn = do
|
||||
if ldIsGnuLd
|
||||
then do
|
||||
script <- newTempName dflags "ldscript"
|
||||
- writeFile script $ "INPUT(" ++ unwords o_files ++ ")"
|
||||
+ cwd <- getCurrentDirectory
|
||||
+ let o_files_abs = map (cwd </>) o_files
|
||||
+ writeFile script $ "INPUT(" ++ unwords o_files_abs ++ ")"
|
||||
ld_r [SysTools.FileOption "" script] ccInfo
|
||||
else if sLdSupportsFilelist mySettings
|
||||
then do
|
@ -1,66 +0,0 @@
|
||||
From b677ba51cf8131a6f6ddcdfee8dd2a8c4c2b4ac7 Mon Sep 17 00:00:00 2001
|
||||
From: Sergei Trofimovich <siarheit@google.com>
|
||||
Date: Sat, 17 Jan 2015 14:27:13 +0000
|
||||
Subject: [PATCH 1/3] CMM: add a mechanism to import C data labels
|
||||
|
||||
Fixes threaded runtime on ia64.
|
||||
sm_mutex there was not referenced correctly.
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
---
|
||||
compiler/cmm/CmmParse.y | 4 ++++
|
||||
rts/Exception.cmm | 2 +-
|
||||
rts/PrimOps.cmm | 6 +++---
|
||||
3 files changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/compiler/cmm/CmmParse.y.source b/compiler/cmm/CmmParse.y.source
|
||||
index 6b51e51..fd9489b 100644
|
||||
--- a/compiler/cmm/CmmParse.y.source
|
||||
+++ b/compiler/cmm/CmmParse.y.source
|
||||
@@ -575,6 +575,10 @@ importName
|
||||
: NAME
|
||||
{ ($1, mkForeignLabel $1 Nothing ForeignLabelInExternalPackage IsFunction) }
|
||||
|
||||
+ -- as previous 'NAME', but 'IsData'
|
||||
+ | 'CLOSURE' NAME
|
||||
+ { ($2, mkForeignLabel $2 Nothing ForeignLabelInExternalPackage IsData) }
|
||||
+
|
||||
-- A label imported with an explicit packageId.
|
||||
| STRING NAME
|
||||
{ ($2, mkCmmCodeLabel (fsToPackageKey (mkFastString $1)) $2) }
|
||||
diff --git a/rts/Exception.cmm b/rts/Exception.cmm
|
||||
index 5007ef3..8d19c14 100644
|
||||
--- a/rts/Exception.cmm
|
||||
+++ b/rts/Exception.cmm
|
||||
@@ -13,7 +13,7 @@
|
||||
#include "Cmm.h"
|
||||
#include "RaiseAsync.h"
|
||||
|
||||
-import ghczmprim_GHCziTypes_True_closure;
|
||||
+import CLOSURE ghczmprim_GHCziTypes_True_closure;
|
||||
|
||||
/* -----------------------------------------------------------------------------
|
||||
Exception Primitives
|
||||
diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm
|
||||
index 3e8612c..2e6ca46 100644
|
||||
--- a/rts/PrimOps.cmm
|
||||
+++ b/rts/PrimOps.cmm
|
||||
@@ -28,12 +28,12 @@
|
||||
import pthread_mutex_lock;
|
||||
import pthread_mutex_unlock;
|
||||
#endif
|
||||
-import base_ControlziExceptionziBase_nestedAtomically_closure;
|
||||
+import CLOSURE base_ControlziExceptionziBase_nestedAtomically_closure;
|
||||
import EnterCriticalSection;
|
||||
import LeaveCriticalSection;
|
||||
-import ghczmprim_GHCziTypes_False_closure;
|
||||
+import CLOSURE ghczmprim_GHCziTypes_False_closure;
|
||||
#if defined(USE_MINIINTERPRETER) || !defined(mingw32_HOST_OS)
|
||||
-import sm_mutex;
|
||||
+import CLOSURE sm_mutex;
|
||||
#endif
|
||||
|
||||
/*-----------------------------------------------------------------------------
|
||||
--
|
||||
2.2.1
|
||||
|
@ -1,50 +0,0 @@
|
||||
commit 501e05bb1b8974fc8b6c9eee86c87c367e87a211
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Tue Aug 30 12:10:47 2016 +0100
|
||||
|
||||
GhcMake: limit Capability count to CPU count in parallel mode
|
||||
|
||||
In Trac #9221 one of problems using high --jobs=<N>
|
||||
is amount of mutator (or GC) threads we crate.
|
||||
|
||||
We use userspace spinning-and-yielding (see ACQUIRE_SPIN_LOCK)
|
||||
to acess work stealing queues. In case of
|
||||
N-worker-threads > N-CPUs fraction of time when
|
||||
thread holding spin lock gets descheduled by kernel
|
||||
increases. That causes other threads to waste CPU time
|
||||
before giving up CPU.
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
Test Plan:
|
||||
ghc --make -j8 and -j80 have comparable sys time
|
||||
on a 8-core system.
|
||||
|
||||
Reviewers: austin, gintas, bgamari, simonmar
|
||||
|
||||
Reviewed By: bgamari, simonmar
|
||||
|
||||
Subscribers: thomie
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D2482
|
||||
|
||||
GHC Trac Issues: #9221
|
||||
|
||||
diff --git a/compiler/main/GhcMake.hs b/compiler/main/GhcMake.hs
|
||||
index 9dc43cd..905df63 100644
|
||||
--- a/compiler/main/GhcMake.hs
|
||||
+++ b/compiler/main/GhcMake.hs
|
||||
@@ -761,7 +761,12 @@ parUpsweep n_jobs old_hpt stable_mods cleanup sccs = do
|
||||
|
||||
let updNumCapabilities = liftIO $ do
|
||||
n_capabilities <- getNumCapabilities
|
||||
- unless (n_capabilities /= 1) $ setNumCapabilities n_jobs
|
||||
+ n_cpus <- getNumProcessors
|
||||
+ -- Setting number of capabilities more than
|
||||
+ -- CPU count usually leads to high userspace
|
||||
+ -- lock contention. Trac #9221
|
||||
+ let n_caps = min n_jobs n_cpus
|
||||
+ unless (n_capabilities /= 1) $ setNumCapabilities n_caps
|
||||
return n_capabilities
|
||||
-- Reset the number of capabilities once the upsweep ends.
|
||||
let resetNumCapabilities orig_n = liftIO $ setNumCapabilities orig_n
|
@ -1,65 +0,0 @@
|
||||
commit bdfc5375f219d6def81effda4e57cb56d01fc917
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Tue Aug 30 12:10:54 2016 +0100
|
||||
|
||||
rts: enable parallel GC scan of large (32M+) allocation area
|
||||
|
||||
Parallel GC does not scan large allocation area (-A)
|
||||
effectively as it does not do work stealing from nursery
|
||||
by default.
|
||||
|
||||
That leads to large imbalance when only one of threads
|
||||
overflows allocation area: most of GC threads finish
|
||||
quickly (as there is not much to collect) and sit idle
|
||||
waiting while single GC thread finishes scan of single
|
||||
allocation area for that thread.
|
||||
|
||||
The patch enables work stealing for (equivalent of -qb0)
|
||||
allocation area of -A32M or higher.
|
||||
|
||||
Tested on a highlighting-kate package from Trac #9221
|
||||
|
||||
On 8-core machine the difference is around 5% faster
|
||||
of wall-clock time. On 24-core VM the speedup is 20%.
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
Test Plan: measured wall time and GC parallelism on highlighting-kate build
|
||||
|
||||
Reviewers: austin, bgamari, erikd, simonmar
|
||||
|
||||
Reviewed By: bgamari, simonmar
|
||||
|
||||
Subscribers: thomie
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D2483
|
||||
|
||||
GHC Trac Issues: #9221
|
||||
|
||||
diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c
|
||||
index fda33f0..7a719b9 100644
|
||||
--- a/rts/RtsFlags.c
|
||||
+++ b/rts/RtsFlags.c
|
||||
@@ -237,1 +237,1 @@ void initRtsFlagsDefaults(void)
|
||||
- RtsFlags.ParFlags.parGcLoadBalancingGen = 1;
|
||||
+ RtsFlags.ParFlags.parGcLoadBalancingGen = ~0u; /* auto, based on -A */
|
||||
@@ -1398,2 +1390,19 @@ static void normaliseRtsOpts (void)
|
||||
}
|
||||
|
||||
+#ifdef THREADED_RTS
|
||||
+ if (RtsFlags.ParFlags.parGcLoadBalancingGen == ~0u) {
|
||||
+ StgWord alloc_area_bytes
|
||||
+ = RtsFlags.GcFlags.minAllocAreaSize * BLOCK_SIZE;
|
||||
+
|
||||
+ // If allocation area is larger that CPU cache
|
||||
+ // we can finish scanning quicker doing work-stealing
|
||||
+ // scan. Trac #9221
|
||||
+ // 32M looks big enough not to fit into L2 cache
|
||||
+ // of popular modern CPUs.
|
||||
+ if (alloc_area_bytes >= 32 * 1024 * 1024) {
|
||||
+ RtsFlags.ParFlags.parGcLoadBalancingGen = 0;
|
||||
+ } else {
|
||||
+ RtsFlags.ParFlags.parGcLoadBalancingGen = 1;
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
@ -1,127 +0,0 @@
|
||||
commit 5efbf0d243984444cf352ad6f0d147e226c64498
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Thu Sep 1 17:34:58 2016 +0100
|
||||
|
||||
restore -fmax-worker-args handling (Trac #11565)
|
||||
|
||||
maxWorkerArgs handling was accidentally lost 3 years ago
|
||||
in a major update of demand analysis
|
||||
commit 0831a12ea2fc73c33652eeec1adc79fa19700578
|
||||
|
||||
Old regression is noticeable as:
|
||||
- code bloat (requires stack reshuffling)
|
||||
- compilation slowdown (more code to optimise/generate)
|
||||
- and increased heap usage (DynFlags unboxing/reboxing?)
|
||||
|
||||
On a simple compile benchmark this change causes heap
|
||||
allocation drop from 70G don to 67G (ghc perf build).
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
Reviewers: simonpj, ezyang, goldfire, austin, bgamari
|
||||
|
||||
Reviewed By: simonpj, ezyang
|
||||
|
||||
Subscribers: thomie
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D2503
|
||||
|
||||
GHC Trac Issues: #11565
|
||||
|
||||
diff --git a/compiler/specialise/SpecConstr.hs b/compiler/specialise/SpecConstr.hs
|
||||
index 10d5614..7166f57 100644
|
||||
--- a/compiler/specialise/SpecConstr.hs
|
||||
+++ b/compiler/specialise/SpecConstr.hs
|
||||
@@ -29,7 +29,7 @@ import CoreFVs ( exprsFreeVarsList )
|
||||
import CoreMonad
|
||||
import Literal ( litIsLifted )
|
||||
import HscTypes ( ModGuts(..) )
|
||||
-import WwLib ( mkWorkerArgs )
|
||||
+import WwLib ( isWorkerSmallEnough, mkWorkerArgs )
|
||||
import DataCon
|
||||
import Coercion hiding( substCo )
|
||||
import Rules
|
||||
@@ -1533,10 +1533,14 @@ specialise env bind_calls (RI { ri_fn = fn, ri_lam_bndrs = arg_bndrs
|
||||
|
||||
| Just all_calls <- lookupVarEnv bind_calls fn
|
||||
= -- pprTrace "specialise entry {" (ppr fn <+> ppr (length all_calls)) $
|
||||
- do { (boring_call, pats) <- callsToPats env specs arg_occs all_calls
|
||||
-
|
||||
+ do { (boring_call, all_pats) <- callsToPats env specs arg_occs all_calls
|
||||
-- Bale out if too many specialisations
|
||||
- ; let n_pats = length pats
|
||||
+ ; let pats = filter (is_small_enough . fst) all_pats
|
||||
+ is_small_enough vars = isWorkerSmallEnough (sc_dflags env) vars
|
||||
+ -- We are about to construct w/w pair in 'spec_one'.
|
||||
+ -- Omit specialisation leading to high arity workers.
|
||||
+ -- See Note [Limit w/w arity]
|
||||
+ n_pats = length pats
|
||||
spec_count' = n_pats + spec_count
|
||||
; case sc_count env of
|
||||
Just max | not (sc_force env) && spec_count' > max
|
||||
diff --git a/compiler/stranal/WwLib.hs b/compiler/stranal/WwLib.hs
|
||||
index 09bc204..d9460d9 100644
|
||||
--- a/compiler/stranal/WwLib.hs
|
||||
+++ b/compiler/stranal/WwLib.hs
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
module WwLib ( mkWwBodies, mkWWstr, mkWorkerArgs
|
||||
, deepSplitProductType_maybe, findTypeShape
|
||||
+ , isWorkerSmallEnough
|
||||
) where
|
||||
|
||||
#include "HsVersions.h"
|
||||
@@ -144,7 +145,8 @@ mkWwBodies dflags fam_envs fun_ty demands res_info one_shots
|
||||
wrapper_body = wrap_fn_args . wrap_fn_cpr . wrap_fn_str . applyToVars work_call_args . Var
|
||||
worker_body = mkLams work_lam_args. work_fn_str . work_fn_cpr . work_fn_args
|
||||
|
||||
- ; if useful1 && not (only_one_void_argument) || useful2
|
||||
+ ; if isWorkerSmallEnough dflags work_args
|
||||
+ && (useful1 && not only_one_void_argument || useful2)
|
||||
then return (Just (worker_args_dmds, wrapper_body, worker_body))
|
||||
else return Nothing
|
||||
}
|
||||
@@ -165,6 +167,12 @@ mkWwBodies dflags fam_envs fun_ty demands res_info one_shots
|
||||
| otherwise
|
||||
= False
|
||||
|
||||
+-- See Note [Limit w/w arity]
|
||||
+isWorkerSmallEnough :: DynFlags -> [Var] -> Bool
|
||||
+isWorkerSmallEnough dflags vars = count isId vars <= maxWorkerArgs dflags
|
||||
+ -- We count only Free variables (isId) to skip Type, Kind
|
||||
+ -- variables which have no runtime representation.
|
||||
+
|
||||
{-
|
||||
Note [Always do CPR w/w]
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -178,6 +186,30 @@ a disaster, because then the enclosing function might say it has the CPR
|
||||
property, but now doesn't and there a cascade of disaster. A good example
|
||||
is Trac #5920.
|
||||
|
||||
+Note [Limit w/w arity]
|
||||
+~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
+Guard against high worker arity as it generates a lot of stack traffic.
|
||||
+A simplified example is Trac #11565#comment:6
|
||||
+
|
||||
+Current strategy is very simple: don't perform w/w transformation at all
|
||||
+if the result produces a wrapper with arity higher than -fmax-worker-args=.
|
||||
+
|
||||
+It is a bit all or nothing, consider
|
||||
+
|
||||
+ f (x,y) (a,b,c,d,e ... , z) = rhs
|
||||
+
|
||||
+Currently we will remove all w/w ness entirely. But actually we could
|
||||
+w/w on the (x,y) pair... it's the huge product that is the problem.
|
||||
+
|
||||
+Could we instead refrain from w/w on an arg-by-arg basis? Yes, that'd
|
||||
+solve f. But we can get a lot of args from deeply-nested products:
|
||||
+
|
||||
+ g (a, (b, (c, (d, ...)))) = rhs
|
||||
+
|
||||
+This is harder to spot on an arg-by-arg basis. Previously mkWwStr was
|
||||
+given some "fuel" saying how many arguments it could add; when we ran
|
||||
+out of fuel it would stop w/wing.
|
||||
+Still not very clever because it had a left-right bias.
|
||||
|
||||
************************************************************************
|
||||
* *
|
@ -1,34 +0,0 @@
|
||||
commit b0cf3ab7a69b878a4335d21a347b56e4b0ca0b7b
|
||||
Author: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Mon Apr 14 19:06:24 2014 +0300
|
||||
|
||||
compiler/cmm/PprC.hs: constify local string literals
|
||||
|
||||
Consider one-line module
|
||||
module B (v) where v = "hello"
|
||||
in -fvia-C mode it generates code like
|
||||
static char gibberish_str[] = "hello";
|
||||
|
||||
It uselessly eats data section (precious resource on ia64!).
|
||||
The patch switches genrator to emit:
|
||||
static const char gibberish_str[] = "hello";
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
|
||||
diff --git a/compiler/cmm/PprC.hs b/compiler/cmm/PprC.hs
|
||||
index 2398981..fdb578d 100644
|
||||
--- a/compiler/cmm/PprC.hs
|
||||
+++ b/compiler/cmm/PprC.hs
|
||||
@@ -112,6 +112,12 @@ pprTop (CmmProc infos clbl _ graph) =
|
||||
|
||||
-- We only handle (a) arrays of word-sized things and (b) strings.
|
||||
|
||||
+pprTop (CmmData (Section ReadOnlyData _) (Statics lbl [CmmString str])) =
|
||||
+ hcat [
|
||||
+ pprLocalness lbl, ptext (sLit "const char "), ppr lbl,
|
||||
+ ptext (sLit "[] = "), pprStringInCStyle str, semi
|
||||
+ ]
|
||||
+
|
||||
pprTop (CmmData _section (Statics lbl [CmmString str])) =
|
||||
hcat [
|
||||
pprLocalness lbl, ptext (sLit "char "), ppr lbl,
|
@ -1,35 +0,0 @@
|
||||
ghc -O2 generates too large C files for unregisterised compiler.
|
||||
On ia64 it causes DynFlags to compile for 60 minutes (then assembler
|
||||
crashes).
|
||||
|
||||
To decrease C code inflation we don't use -O2 in UNREG mode.
|
||||
diff --git a/mk/config.mk.in b/mk/config.mk.in
|
||||
index bfaaa66..d8f93b3 100644
|
||||
--- a/mk/config.mk.in
|
||||
+++ b/mk/config.mk.in
|
||||
@@ -72,11 +72,2 @@ GhcStage3HcOpts=-O2
|
||||
|
||||
-# Disable -O2 optimization. Otherwise amount of generated C code
|
||||
-# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.lhs')
|
||||
-# and sometimes not compile at all (powerpc64 overflows something
|
||||
-# on 'compiler/hsSyn/HsExpr.lhs').
|
||||
-ifeq "$(GhcUnregisterised)" "YES"
|
||||
-GhcStage1HcOpts=
|
||||
-GhcStage2HcOpts=
|
||||
-GhcStage3HcOpts=
|
||||
-endif
|
||||
|
||||
@@ -894 +885,13 @@ CURSES_INCLUDE_DIRS = @CURSES_INCLUDE_DIRS@
|
||||
CURSES_LIB_DIRS = @CURSES_LIB_DIRS@
|
||||
+
|
||||
+# Disable -O2 optimization. Otherwise amount of generated C code
|
||||
+# makes things very slow to compile (~5 minutes on core-i7 for 'compiler/hsSyn/HsExpr.lhs')
|
||||
+# and sometimes not compile at all (powerpc64 overflows something
|
||||
+# on 'compiler/hsSyn/HsExpr.lhs').
|
||||
+ifeq "$(GhcUnregisterised)" "YES"
|
||||
+GhcStage1HcOpts=
|
||||
+GhcStage2HcOpts=
|
||||
+GhcStage3HcOpts=
|
||||
+
|
||||
+GhcLibHcOpts=
|
||||
+endif
|
@ -1,65 +0,0 @@
|
||||
From 358b508051333882d4099acca8f269e6fb2b7d65 Mon Sep 17 00:00:00 2001
|
||||
From: Bertram Felgenhauer <int-e@gmx.de>
|
||||
Date: Thu, 3 May 2018 18:03:53 +0300
|
||||
Subject: [PATCH] Compute DW_FORM_block length correctly; also fixes #15068
|
||||
|
||||
Before this patch, the pprUnwindwExpr function computed the length of
|
||||
by the following assembly fragment:
|
||||
|
||||
.uleb128 1f-.-1
|
||||
<expression data>
|
||||
1:
|
||||
|
||||
That is, to compute the length, it takes the difference of the label 1
|
||||
and the address of the .uleb128 directive, and subtracts 1.
|
||||
|
||||
In #15068 it was reported that `as` from binutils 4.30 has trouble with
|
||||
evaluating the `.` part of the expression. However, there is actually a
|
||||
problem with the expression, if the length of the data ever becomes
|
||||
larger than 128: In that case, the .uleb128 directive will emit more
|
||||
than 1 byte, and the computed length will be wrong.
|
||||
|
||||
The present patch changes the assembly fragment to use two labels,
|
||||
which fixes both these problems.
|
||||
|
||||
.uleb128 2f-1f
|
||||
1:
|
||||
<expression data>
|
||||
2:
|
||||
|
||||
Test Plan: validate
|
||||
|
||||
Reviewers: bgamari, osa1
|
||||
|
||||
Reviewed By: bgamari
|
||||
|
||||
Subscribers: thomie, carter
|
||||
|
||||
GHC Trac Issues: #15068
|
||||
|
||||
Differential Revision: https://phabricator.haskell.org/D4654
|
||||
---
|
||||
compiler/nativeGen/Dwarf/Types.hs | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/compiler/nativeGen/Dwarf/Types.hs b/compiler/nativeGen/Dwarf/Types.hs
|
||||
index 23a2c920e7..579ed0d256 100644
|
||||
--- a/compiler/nativeGen/Dwarf/Types.hs
|
||||
+++ b/compiler/nativeGen/Dwarf/Types.hs
|
||||
@@ -492,9 +492,11 @@ pprUnwindExpr spIsCFA expr
|
||||
pprE (UwPlus u1 u2) = pprE u1 $$ pprE u2 $$ pprByte dW_OP_plus
|
||||
pprE (UwMinus u1 u2) = pprE u1 $$ pprE u2 $$ pprByte dW_OP_minus
|
||||
pprE (UwTimes u1 u2) = pprE u1 $$ pprE u2 $$ pprByte dW_OP_mul
|
||||
- in text "\t.uleb128 1f-.-1" $$ -- DW_FORM_block length
|
||||
+ in text "\t.uleb128 2f-1f" $$ -- DW_FORM_block length
|
||||
+ -- computed as the difference of the following local labels 2: and 1:
|
||||
+ text "1:" $$
|
||||
pprE expr $$
|
||||
- text "1:"
|
||||
+ text "2:"
|
||||
|
||||
-- | Generate code for re-setting the unwind information for a
|
||||
-- register to @undefined@
|
||||
--
|
||||
2.17.0
|
||||
|
@ -1,57 +0,0 @@
|
||||
commit 2c220c4b053c8efb2098ee20910084a42a0b2dcd
|
||||
Author: Sergei Trofimovich <siarheit@google.com>
|
||||
Date: Sun Jan 29 11:59:36 2017 +0000
|
||||
|
||||
libffi: fix build COMPLEX build failure on alpha
|
||||
|
||||
libtool: compile: alpha-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I. -I../include -Iinclude \
|
||||
-I../src -I. -I../include -Iinclude -I../src -Wall -w -mieee -D_REENTRANT -fno-stack-protector \
|
||||
-w -MT src/alpha/osf.lo -MMD -MP -MF src/alpha/.deps/osf.Tpo \
|
||||
-c ../src/alpha/osf.S -fPIC -DPIC -o src/alpha/.libs/osf.o
|
||||
|
||||
../src/alpha/osf.S:298:2: error: #error "osf.S out of sync with ffi.h"
|
||||
#error "osf.S out of sync with ffi.h"
|
||||
^
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
|
||||
|
||||
diff --git a/libffi/ghc.mk b/libffi/ghc.mk
|
||||
index 7c5bc9e1b3..4297ed449e 100644
|
||||
--- a/libffi/ghc.mk
|
||||
+++ b/libffi/ghc.mk
|
||||
@@ -63,6 +63,9 @@ $(libffi_STAMP_CONFIGURE): $(TOUCH_DEP)
|
||||
# will use cygwin symbolic links which cannot be read by mingw gcc.
|
||||
chmod +x libffi/ln
|
||||
|
||||
+ # fix libffi build failure on alpha
|
||||
+ ( cd libffi/build && "$(PATCH_CMD)" -p0 < ../libffi.3.2.1-complex_alpha.diff; )
|
||||
+
|
||||
# We need to use -MMD rather than -MD, as otherwise we get paths
|
||||
# like c:/... in the dependency files on Windows, and the extra
|
||||
# colons break make
|
||||
diff --git a/libffi/libffi.3.2.1-complex_alpha.diff b/libffi/libffi.3.2.1-complex_alpha.diff
|
||||
new file mode 100644
|
||||
index 0000000000..0d6e0bc290
|
||||
--- /dev/null
|
||||
+++ b/libffi/libffi.3.2.1-complex_alpha.diff
|
||||
@@ -0,0 +1,20 @@
|
||||
+--- src/alpha/osf.S.orig 2015-01-16 10:46:15.000000000 +0100
|
||||
++++ src/alpha/osf.S 2015-01-16 10:46:24.000000000 +0100
|
||||
+@@ -279,6 +279,7 @@
|
||||
+ .gprel32 $load_64 # FFI_TYPE_SINT64
|
||||
+ .gprel32 $load_none # FFI_TYPE_STRUCT
|
||||
+ .gprel32 $load_64 # FFI_TYPE_POINTER
|
||||
++ .gprel32 $load_none # FFI_TYPE_COMPLEX
|
||||
+
|
||||
+ /* Assert that the table above is in sync with ffi.h. */
|
||||
+
|
||||
+@@ -294,7 +295,8 @@
|
||||
+ || FFI_TYPE_SINT64 != 12 \
|
||||
+ || FFI_TYPE_STRUCT != 13 \
|
||||
+ || FFI_TYPE_POINTER != 14 \
|
||||
+- || FFI_TYPE_LAST != 14
|
||||
++ || FFI_TYPE_COMPLEX != 15 \
|
||||
++ || FFI_TYPE_LAST != 15
|
||||
+ #error "osf.S out of sync with ffi.h"
|
||||
+ #endif
|
||||
+
|
@ -1,12 +0,0 @@
|
||||
diff --git a/docs/users_guide/profiling.rst b/docs/users_guide/profiling.rst
|
||||
index 4d0bb3a..f980f72 100644
|
||||
--- a/docs/users_guide/profiling.rst
|
||||
+++ b/docs/users_guide/profiling.rst
|
||||
@@ -435,7 +435,2 @@ To generate a heap profile from your program:
|
||||
|
||||
-For example, here is a heap profile produced for the ``sphere`` program
|
||||
-from GHC's ``nofib`` benchmark suite,
|
||||
-
|
||||
-.. image:: images/prof_scc.*
|
||||
-
|
||||
You might also want to take a look at
|
@ -1,19 +0,0 @@
|
||||
https://github.com/gentoo-haskell/gentoo-haskell/issues/704
|
||||
|
||||
Allow users to specify -W,--relax externally and pass
|
||||
-Wl,-no-relax unconditonally on all arches.
|
||||
|
||||
Reported-by: wmyrda
|
||||
--- a/compiler/main/DriverPipeline.hs
|
||||
+++ b/compiler/main/DriverPipeline.hs
|
||||
@@ -2144,9 +2144,7 @@ joinObjectFiles dflags o_files output_fn = do
|
||||
-- gcc on sparc sets -Wl,--relax implicitly, but
|
||||
-- -r and --relax are incompatible for ld, so
|
||||
-- disable --relax explicitly.
|
||||
- ++ (if platformArch (targetPlatform dflags)
|
||||
- `elem` [ArchSPARC, ArchSPARC64]
|
||||
- && ldIsGnuLd
|
||||
+ ++ (if ldIsGnuLd
|
||||
then [SysTools.Option "-Wl,-no-relax"]
|
||||
else [])
|
||||
-- See Note [Produce big objects on Windows]
|
@ -1,296 +0,0 @@
|
||||
From fac083e7ac8a37b61a4082bbbca2848e52fd1bb2 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Gamari <ben@smart-cactus.org>
|
||||
Date: Sun, 9 Aug 2020 09:15:16 -0400
|
||||
Subject: [PATCH] Revert "[linker/rtsSymbols] More linker symbols"
|
||||
|
||||
This reverts commit aa2e5863699306920513b216f337de09e29b5bb8.
|
||||
---
|
||||
rts/RtsSymbols.c | 224 ++++-------------------------------------------
|
||||
1 file changed, 17 insertions(+), 207 deletions(-)
|
||||
|
||||
diff --git a/rts/RtsSymbols.c b/rts/RtsSymbols.c
|
||||
index d10a6900db..b2f90a892d 100644
|
||||
--- a/rts/RtsSymbols.c
|
||||
+++ b/rts/RtsSymbols.c
|
||||
@@ -58,6 +58,7 @@
|
||||
SymI_HasProto(signal_handlers) \
|
||||
SymI_HasProto(stg_sig_install) \
|
||||
SymI_HasProto(rtsTimerSignal) \
|
||||
+ SymI_HasProto(atexit) \
|
||||
SymI_NeedsDataProto(nocldstop)
|
||||
#endif
|
||||
|
||||
@@ -976,213 +977,29 @@
|
||||
RTS_USER_SIGNALS_SYMBOLS \
|
||||
RTS_INTCHAR_SYMBOLS
|
||||
|
||||
+
|
||||
// 64-bit support functions in libgcc.a
|
||||
-// See https://gcc.gnu.org/onlinedocs/gccint/Libgcc.html#Libgcc
|
||||
-#define RTS_LIBGCC_SYMBOLS_32 \
|
||||
- SymI_NeedsProto(__fixunsdfdi) \
|
||||
- /* 4 The GCC low-level runtime library */\
|
||||
- /* 4.1.1 Arithmetic functions */\
|
||||
- /* SymI_NeedsProto(__ashlsi3) */\
|
||||
- SymI_NeedsProto(__ashldi3) \
|
||||
- /* SymI_NeedsProto(__ashlti3) */\
|
||||
- /* These functions return the result of shifting a left by b bits. */\
|
||||
- /* SymI_NeedsProto(__ashrsi3) */\
|
||||
- SymI_NeedsProto(__ashrdi3) \
|
||||
- /* SymI_NeedsProto(__ashrti3) */\
|
||||
- /* These functions return the result of arithmetically shifting a right by b bits. */\
|
||||
- /* SymI_NeedsProto(__divsi3) */\
|
||||
- SymI_NeedsProto(__divdi3) \
|
||||
- /* SymI_NeedsProto(__divti3) */\
|
||||
- /* These functions return the quotient of the signed division of a and b. */\
|
||||
- /* SymI_NeedsProto(__lshrsi3) */ \
|
||||
- SymI_NeedsProto(__lshrdi3) \
|
||||
- /* SymI_NeedsProto(__lshrti3) */ \
|
||||
- /* These functions return the result of logically shifting a right by b bits. */\
|
||||
- /* SymI_NeedsProto(__modsi3) */ \
|
||||
- SymI_NeedsProto(__moddi3) \
|
||||
- /* SymI_NeedsProto(__modti3) */ \
|
||||
- /* These functions return the remainder of the signed division of a and b. */\
|
||||
- /* SymI_NeedsProto(__mulsi3) */ \
|
||||
- SymI_NeedsProto(__muldi3) \
|
||||
- /* SymI_NeedsProto(__multi3) */ \
|
||||
- /* These functions return the product of a and b. */\
|
||||
- SymI_NeedsProto(__negdi2) \
|
||||
- /* SymI_NeedsProto(__negti2) */ \
|
||||
- /* These functions return the negation of a. */\
|
||||
- /* SymI_NeedsProto(__udivsi3) */ \
|
||||
- SymI_NeedsProto(__udivdi3) \
|
||||
- /* SymI_NeedsProto(__udivti3) */ \
|
||||
- /* These functions return the quotient of the unsigned division of a and b. */\
|
||||
- SymI_NeedsProto(__udivmoddi4) \
|
||||
- /* SymI_NeedsProto(__udivmodti4) */ \
|
||||
- /* These functions calculate both the quotient and remainder of the unsigned division of a and b. The return value is the quotient, and the remainder is placed in variable pointed to by c. */\
|
||||
- /* SymI_NeedsProto(__umodsi3) */ \
|
||||
- SymI_NeedsProto(__umoddi3) \
|
||||
- /* SymI_NeedsProto(__umodti3) */ \
|
||||
- /* These functions return the remainder of the unsigned division of a and b. */\
|
||||
- /* 4.1.2 Comparison functions */\
|
||||
- /* The following functions implement integral comparisons. These functions implement a low-level compare, upon which the higher level comparison operators (such as less than and greater than or equal to) can be constructed. The returned values lie in the range zero to two, to allow the high-level operators to be implemented by testing the returned result using either signed or unsigned comparison. */\
|
||||
- SymI_NeedsProto(__cmpdi2) \
|
||||
- /* SymI_NeedsProto(__cmpti2) */ \
|
||||
- /* These functions perform a signed comparison of a and b. If a is less than b, they return 0; if a is greater than b, they return 2; and if a and b are equal they return 1. */\
|
||||
- SymI_NeedsProto(__ucmpdi2) \
|
||||
- /* SymI_NeedsProto(__ucmpti2) */ \
|
||||
- /* These functions perform an unsigned comparison of a and b. If a is less than b, they return 0; if a is greater than b, they return 2; and if a and b are equal they return 1. */\
|
||||
- /* 4.1.3 Trapping arithmetic functions */\
|
||||
- /* The following functions implement trapping arithmetic. These functions call the libc function abort upon signed arithmetic overflow. */\
|
||||
- SymI_NeedsProto(__absvsi2) \
|
||||
- SymI_NeedsProto(__absvdi2) \
|
||||
- /* These functions return the absolute value of a. */\
|
||||
- /* SymI_NeedsProto(__addvsi3) */ \
|
||||
- SymI_NeedsProto(__addvdi3) \
|
||||
- /* These functions return the sum of a and b; that is a + b. */\
|
||||
- /* SymI_NeedsProto(__mulvsi3) */ \
|
||||
- SymI_NeedsProto(__mulvdi3) \
|
||||
- /* The functions return the product of a and b; that is a * b. */\
|
||||
- SymI_NeedsProto(__negvsi2) \
|
||||
- SymI_NeedsProto(__negvdi2) \
|
||||
- /* These functions return the negation of a; that is -a. */\
|
||||
- /* SymI_NeedsProto(__subvsi3) */ \
|
||||
- SymI_NeedsProto(__subvdi3) \
|
||||
- /* These functions return the difference between b and a; that is a - b. */\
|
||||
- /* 4.1.4 Bit operations */\
|
||||
- SymI_NeedsProto(__clzsi2) \
|
||||
- SymI_NeedsProto(__clzdi2) \
|
||||
- /* SymI_NeedsProto(__clzti2) */ \
|
||||
- /* These functions return the number of leading 0-bits in a, starting at the most significant bit position. If a is zero, the result is undefined. */\
|
||||
- SymI_NeedsProto(__ctzsi2) \
|
||||
- SymI_NeedsProto(__ctzdi2) \
|
||||
- /* SymI_NeedsProto(__ctzti2) */ \
|
||||
- /* These functions return the number of trailing 0-bits in a, starting at the least significant bit position. If a is zero, the result is undefined. */\
|
||||
- SymI_NeedsProto(__ffsdi2) \
|
||||
- /* SymI_NeedsProto(__ffsti2) */ \
|
||||
- /* These functions return the index of the least significant 1-bit in a, or the value zero if a is zero. The least significant bit is index one. */\
|
||||
- SymI_NeedsProto(__paritysi2) \
|
||||
- SymI_NeedsProto(__paritydi2) \
|
||||
- /* SymI_NeedsProto(__parityti2) */\
|
||||
- /* These functions return the value zero if the number of bits set in a is even, and the value one otherwise. */\
|
||||
- SymI_NeedsProto(__popcountsi2) \
|
||||
- SymI_NeedsProto(__popcountdi2) \
|
||||
- /* SymI_NeedsProto(__popcountti2) */ \
|
||||
- /* These functions return the number of bits set in a. */\
|
||||
- SymI_NeedsProto(__bswapsi2) \
|
||||
- SymI_NeedsProto(__bswapdi2)
|
||||
-#define RTS_LIBGCC_SYMBOLS_aarch32 \
|
||||
- /* armv6l */\
|
||||
- /* TODO: should check for __ARM_EABI__ */\
|
||||
- SymI_NeedsProto(__aeabi_d2f) \
|
||||
- SymI_NeedsProto(__aeabi_d2iz) \
|
||||
- SymI_NeedsProto(__aeabi_d2lz) \
|
||||
- SymI_NeedsProto(__aeabi_d2uiz) \
|
||||
- SymI_NeedsProto(__aeabi_d2ulz) \
|
||||
- SymI_NeedsProto(__aeabi_dadd) \
|
||||
- SymI_NeedsProto(__aeabi_dcmpeq) \
|
||||
- SymI_NeedsProto(__aeabi_dcmpge) \
|
||||
- SymI_NeedsProto(__aeabi_dcmpgt) \
|
||||
- SymI_NeedsProto(__aeabi_dcmple) \
|
||||
- SymI_NeedsProto(__aeabi_dcmplt) \
|
||||
- SymI_NeedsProto(__aeabi_dcmpun) \
|
||||
- SymI_NeedsProto(__aeabi_ddiv) \
|
||||
- SymI_NeedsProto(__aeabi_dmul) \
|
||||
- SymI_NeedsProto(__aeabi_dneg) \
|
||||
- SymI_NeedsProto(__aeabi_dsub) \
|
||||
- SymI_NeedsProto(__aeabi_f2d) \
|
||||
- SymI_NeedsProto(__aeabi_f2iz) \
|
||||
- SymI_NeedsProto(__aeabi_f2lz) \
|
||||
- SymI_NeedsProto(__aeabi_f2uiz) \
|
||||
- SymI_NeedsProto(__aeabi_f2ulz) \
|
||||
- SymI_NeedsProto(__aeabi_fadd) \
|
||||
- SymI_NeedsProto(__aeabi_fcmpeq) \
|
||||
- SymI_NeedsProto(__aeabi_fcmpge) \
|
||||
- SymI_NeedsProto(__aeabi_fcmpgt) \
|
||||
- SymI_NeedsProto(__aeabi_fcmple) \
|
||||
- SymI_NeedsProto(__aeabi_fcmplt) \
|
||||
- SymI_NeedsProto(__aeabi_fcmpun) \
|
||||
- SymI_NeedsProto(__aeabi_fdiv) \
|
||||
- SymI_NeedsProto(__aeabi_fmul) \
|
||||
- SymI_NeedsProto(__aeabi_fneg) \
|
||||
- SymI_NeedsProto(__aeabi_fsub) \
|
||||
- SymI_NeedsProto(__aeabi_i2d) \
|
||||
- SymI_NeedsProto(__aeabi_i2f) \
|
||||
- SymI_NeedsProto(__aeabi_idiv) \
|
||||
- SymI_NeedsProto(__aeabi_idivmod) \
|
||||
- SymI_NeedsProto(__aeabi_l2d) \
|
||||
- SymI_NeedsProto(__aeabi_l2f) \
|
||||
- SymI_NeedsProto(__aeabi_lasr) \
|
||||
- SymI_NeedsProto(__aeabi_lcmp) \
|
||||
- SymI_NeedsProto(__aeabi_ldivmod) \
|
||||
- SymI_NeedsProto(__aeabi_llsl) \
|
||||
- SymI_NeedsProto(__aeabi_llsr) \
|
||||
- SymI_NeedsProto(__aeabi_lmul) \
|
||||
- SymI_NeedsProto(__aeabi_ui2d) \
|
||||
- SymI_NeedsProto(__aeabi_ui2f) \
|
||||
- SymI_NeedsProto(__aeabi_uidiv) \
|
||||
- SymI_NeedsProto(__aeabi_uidivmod) \
|
||||
- SymI_NeedsProto(__aeabi_ul2d) \
|
||||
- SymI_NeedsProto(__aeabi_ul2f) \
|
||||
- SymI_NeedsProto(__aeabi_ulcmp) \
|
||||
- SymI_NeedsProto(__aeabi_uldivmod)
|
||||
-#define RTS_LIBGCC_SYMBOLS_64 \
|
||||
+#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
|
||||
+#define RTS_LIBGCC_SYMBOLS \
|
||||
+ SymI_NeedsProto(__divdi3) \
|
||||
+ SymI_NeedsProto(__udivdi3) \
|
||||
+ SymI_NeedsProto(__moddi3) \
|
||||
+ SymI_NeedsProto(__umoddi3) \
|
||||
+ SymI_NeedsProto(__muldi3) \
|
||||
+ SymI_NeedsProto(__ashldi3) \
|
||||
+ SymI_NeedsProto(__ashrdi3) \
|
||||
+ SymI_NeedsProto(__lshrdi3) \
|
||||
+ SymI_NeedsProto(__fixunsdfdi)
|
||||
+#elif defined(__GNUC__) && SIZEOF_VOID_P == 8
|
||||
+#define RTS_LIBGCC_SYMBOLS \
|
||||
SymI_NeedsProto(__udivti3) \
|
||||
SymI_NeedsProto(__umodti3)
|
||||
-
|
||||
-/* for aarch64 */
|
||||
-#define RTS_LIBGCC_SYMBOLS_aarch64 \
|
||||
- SymI_NeedsProto(__netf2) \
|
||||
- SymI_NeedsProto(__addtf3) \
|
||||
- SymI_NeedsProto(__subtf3) \
|
||||
- SymI_NeedsProto(__multf3) \
|
||||
- SymI_NeedsProto(__extenddftf2) \
|
||||
- SymI_NeedsProto(__fixtfsi) \
|
||||
- SymI_NeedsProto(__fixunstfsi) \
|
||||
- SymI_NeedsProto(__floatsitf) \
|
||||
- SymI_NeedsProto(__floatunsitf)
|
||||
-
|
||||
-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && defined(arm_HOST_OS)
|
||||
-#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_32 RTS_LIBGCC_SYMBOLS_aarch32
|
||||
-#elif defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
|
||||
-#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_32
|
||||
-#elif defined(__GNUC__) && SIZEOF_VOID_P == 8 && defined(aarch64_HOST_OS)
|
||||
-#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_64 RTS_LIBGCC_SYMBOLS_aarch64
|
||||
-#elif defined(__GNUC__) && SIZEOF_VOID_P == 8
|
||||
-#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_64
|
||||
#else
|
||||
#define RTS_LIBGCC_SYMBOLS
|
||||
#endif
|
||||
|
||||
-#if !defined(mingw32_HOST_OS) && !defined(DYNAMIC) && (defined(_FORTIFY_SOURCE) || defined(__SSP__))
|
||||
-#define RTS_SSP_SYMBOLS \
|
||||
- SymI_NeedsProto(__stack_chk_guard) \
|
||||
- SymI_NeedsProto(__stack_chk_fail)
|
||||
-#else
|
||||
-#define RTS_SSP_SYMBOLS
|
||||
-#endif
|
||||
-#if !defined(DYNAMIC) && defined(linux_HOST_OS)
|
||||
-// we need these for static musl builds. However when
|
||||
-// linking shared objects (DLLs) this will fail, hence
|
||||
-// we do not include them when building with -DDYNAMIC
|
||||
-#define RTS_LINKER_SYMBOLS \
|
||||
- SymI_NeedsProto(__fini_array_start) \
|
||||
- SymI_NeedsProto(__fini_array_end)
|
||||
-#else
|
||||
-#define RTS_LINKER_SYMBOLS
|
||||
-#endif
|
||||
-
|
||||
-#if defined(darwin_HOST_OS) && defined(powerpc_HOST_ARCH)
|
||||
- // Symbols that don't have a leading underscore
|
||||
- // on Mac OS X. They have to receive special treatment,
|
||||
- // see machoInitSymbolsWithoutUnderscore()
|
||||
-#define RTS_MACHO_NOUNDERLINE_SYMBOLS \
|
||||
- SymI_NeedsProto(saveFP) \
|
||||
- SymI_NeedsProto(restFP)
|
||||
-#endif
|
||||
-
|
||||
/* entirely bogus claims about types of these symbols */
|
||||
-/* to prevent a bit of define expansion, SymI_NeedsProto is a variadic
|
||||
- * macro. And we'll concat vvv with the __VA_ARGS__. This prevents
|
||||
- * vvv from getting macro expanded.
|
||||
- */
|
||||
-#define SymI_NeedsProto(vvv,...) extern void vvv ## __VA_ARGS__ (void);
|
||||
+#define SymI_NeedsProto(vvv) extern void vvv(void);
|
||||
#define SymI_NeedsDataProto(vvv) extern StgWord vvv[];
|
||||
#if defined(COMPILING_WINDOWS_DLL)
|
||||
#define SymE_HasProto(vvv) SymE_HasProto(vvv);
|
||||
@@ -1209,8 +1026,6 @@ RTS_DARWIN_ONLY_SYMBOLS
|
||||
RTS_OPENBSD_ONLY_SYMBOLS
|
||||
RTS_LIBGCC_SYMBOLS
|
||||
RTS_LIBFFI_SYMBOLS
|
||||
-RTS_SSP_SYMBOLS
|
||||
-RTS_LINKER_SYMBOLS
|
||||
#undef SymI_NeedsProto
|
||||
#undef SymI_NeedsDataProto
|
||||
#undef SymI_HasProto
|
||||
@@ -1230,7 +1045,7 @@ RTS_LINKER_SYMBOLS
|
||||
#define SymE_HasDataProto(vvv) \
|
||||
SymE_HasProto(vvv)
|
||||
|
||||
-#define SymI_NeedsProto(vvv,...) SymI_HasProto(vvv ## __VA_ARGS__)
|
||||
+#define SymI_NeedsProto(vvv) SymI_HasProto(vvv)
|
||||
#define SymI_NeedsDataProto(vvv) SymI_HasDataProto(vvv)
|
||||
#define SymE_NeedsProto(vvv) SymE_HasProto(vvv)
|
||||
#define SymE_NeedsDataProto(vvv) SymE_HasDataProto(vvv)
|
||||
@@ -1251,8 +1066,6 @@ RTS_LINKER_SYMBOLS
|
||||
#define SymI_HasProto_deprecated(vvv) \
|
||||
{ #vvv, (void*)0xBAADF00D, true },
|
||||
|
||||
-void *RTS_DYNAMIC = NULL;
|
||||
-
|
||||
RtsSymbolVal rtsSyms[] = {
|
||||
RTS_SYMBOLS
|
||||
RTS_RET_SYMBOLS
|
||||
@@ -1264,14 +1077,11 @@ RtsSymbolVal rtsSyms[] = {
|
||||
RTS_LIBGCC_SYMBOLS
|
||||
RTS_LIBFFI_SYMBOLS
|
||||
SymI_HasDataProto(nonmoving_write_barrier_enabled)
|
||||
- RTS_SSP_SYMBOLS
|
||||
- RTS_LINKER_SYMBOLS
|
||||
#if defined(darwin_HOST_OS) && defined(i386_HOST_ARCH)
|
||||
// dyld stub code contains references to this,
|
||||
// but it should never be called because we treat
|
||||
// lazy pointers as nonlazy.
|
||||
{ "dyld_stub_binding_helper", (void*)0xDEADBEEF, false },
|
||||
#endif
|
||||
- { "_DYNAMIC", (void*)(&RTS_DYNAMIC), false },
|
||||
{ 0, 0, false } /* sentinel */
|
||||
};
|
||||
--
|
||||
2.25.4
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue