diff options
Diffstat (limited to 'dev-util/creduce')
-rw-r--r-- | dev-util/creduce/Manifest | 4 | ||||
-rw-r--r-- | dev-util/creduce/creduce-2.8.0_pre20180411-r1.ebuild | 44 | ||||
-rw-r--r-- | dev-util/creduce/creduce-2.8.0_pre20180411.ebuild | 4 | ||||
-rw-r--r-- | dev-util/creduce/files/creduce-llvm-7.patch | 90 |
4 files changed, 140 insertions, 2 deletions
diff --git a/dev-util/creduce/Manifest b/dev-util/creduce/Manifest index 24b797495711..c3554d1e6501 100644 --- a/dev-util/creduce/Manifest +++ b/dev-util/creduce/Manifest @@ -1,8 +1,10 @@ AUX creduce-2.7.0-llvm-5.patch 2491 BLAKE2B c2f7fed04c8da9095ad4c4995119181575c644231db6eed46fcfd7097e3ed5c85e46af52accfa8b78c59a3f8e61715df929e0d60c7693a7542fa83eecc9b05ce SHA512 31808043b9a9727632b76a81041a0ddffd318fb5ae8190b7e4cca70b1117c8c938dd7dda9d9785a841c3d62d51dc876a53dce63ab45695ae77d40f834073c08c +AUX creduce-llvm-7.patch 4046 BLAKE2B 013685de9ad7f364cfff647a6f6783615dcd2289af8ab602f4119401373b6422385e63e1c5aaeec65dd6e922fae945f44f29f18bfe02b581b0a12f129f83e0b9 SHA512 9a0cd0373fa8e0bd14907e5522b97c3c4cdb89a3350e38316edfa6a75dbc5bbe53756c4b605385b1feda5674bbf17d92b4d2e21c58b4a937bd2c61e76e322b0a DIST creduce-2.7.0.tar.gz 768832 BLAKE2B ddc471b658a7feb8591dd4e402ac51d7c97a1705ef5b3787eec0b652bba64fb82cc39db21fa7c87ae0104977514f792b77802b6b35cf7afecb79b4cde16a5b52 SHA512 0ded47fdb4303d84619d63fbedd7bc12141b4857679dda8438683199dbdc98b985f848e797b9dc25a31dda591ee54bcb94580285890b23495fcf151aa3636226 DIST creduce-48e622ba74bc35c5a81299d3a34b9b14038d6a70.tar.gz 720872 BLAKE2B 031104f5e7ca3d3cfb41087f432ec0cf1b1c125171ffac31b6f3b0a9a4483b5ca8a667331aacae7f5acdaaf99e8b688bb62b332405c1266d2b114a4bdceca9cc SHA512 36cc12015d85acfa99f0d04440184517da1f766df7a804ee02719f1208f67aff4f4db7af4066817b17efdc89a6d2cf7ab62b0c622a611bc9b03a89b8d1b68d01 EBUILD creduce-2.7.0-r1.ebuild 831 BLAKE2B 90b54fbd845dbe404bbb18cde38882f2fdc7adff440d7da52ee23941f538bc8bc95608af410a0b9a7de333387750095b733cddd57829cf4381cdd17a4b7cbe62 SHA512 5526fc208eb9c6d1c3e30db997a0787a80868723443795230f178a3227d4aa5d964f4e3813a76915ab38ed56ef48573671ed976edead59ac199ab24696e3a513 EBUILD creduce-2.7.0.ebuild 703 BLAKE2B 9e1bb8170ce619ef3fb23a67c8d5987a202a2608e4a366e6eab765b33f960ddbaa55299a4fb29fc79a2cada80809b66bdf58af7a3869c69e1dfb70fbc62b105f SHA512 dc9bb094eb8d54ec90e74a8031289936c0bd3fc5a5e5520bbedb7d457f73aaa458bf0c094542b94a4d32f508df4163b98651c1ead335a91f032478f498d1e0da -EBUILD creduce-2.8.0_pre20180411.ebuild 905 BLAKE2B a9d06624abb5e882c827048dc2f78fd4ac545bffb0fa356c6a2000e19850c64fe92efdc0f41f605fade209ad9dc3135b7dc77d84f9c44324df831835735e8892 SHA512 3cde436cf4de037d3ddb2885f10252dea84860d33f95f7f0025b4e04078f5031b1bef9ced855f77610f64dac7cf326b3d31fa73065db12fe76584c7ad23822c4 +EBUILD creduce-2.8.0_pre20180411-r1.ebuild 982 BLAKE2B 004a4f77bd8b55f5db067fbf65a56b44a6eb2b171427f1109d88e4be6b3873a445596da80f909515499024d603c8a122d39d526004ab5fec33fa8e6064163f49 SHA512 9063ca1e50144d322d8828efedeacf816b4a77c9169b99097b8032d30010d0e9ba28949153f21b6227ddacb585eae460d42c7f230f785dde6497d84bbb892163 +EBUILD creduce-2.8.0_pre20180411.ebuild 933 BLAKE2B 6160be85dee851d4cc3322d21dbd3e228f65be6ac0b1e21d2911ed5fd3563a00ade8c30cbd95cee57ae20ec0d5d66f4a808c52ec9352f94cfbcb5f839d7fa465 SHA512 741a824defa8c9b2fe010c0471e69b26fb9fad73686d549596b80e7bc7ed2769627f166f513a326b5ae2694939877114db1c26c5330e9939bf9241aee78465fe EBUILD creduce-9999.ebuild 765 BLAKE2B 36967f9afcf36c7b72645f87c58c8edd795a49c69b457be719ba176a6416526592bf33503c7b214d17fa2ca391526c3ede457a7ad8f30d1214b8e964327d1d6d SHA512 26e023880d1143b27d11971f2f95e937f210630c9f2899c239d7f7076ac7741e9cde7e9ba2661c08f2b42e8c71f0dc6e4075f6421e927601ce1276616fe51da8 MISC metadata.xml 247 BLAKE2B 1750cec57189e711ca5eba89a78e1d317f0839fa53564fbd39b4e955c28d98f4ae04caf9069afc20a18536cdc92b30fe7b15eb086767c742bad07d9980cfd24b SHA512 d6e2ea8a9d74791bcbf3d6311a66bafc20b8f4db3a576d9a8d54b86d7afb231122b8d87f71f3f46360980adf8d815c633b6d5041f9a30fc8656e8fb66057a282 diff --git a/dev-util/creduce/creduce-2.8.0_pre20180411-r1.ebuild b/dev-util/creduce/creduce-2.8.0_pre20180411-r1.ebuild new file mode 100644 index 000000000000..fec31d8e8913 --- /dev/null +++ b/dev-util/creduce/creduce-2.8.0_pre20180411-r1.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +: ${CMAKE_MAKEFILE_GENERATOR=ninja} +inherit cmake-utils llvm + +EGIT_COMMIT="48e622ba74bc35c5a81299d3a34b9b14038d6a70" + +DESCRIPTION="C-Reduce - a plugin-based C program reducer" +HOMEPAGE="https://embed.cs.utah.edu/creduce/" +SRC_URI="https://github.com/csmith-project/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${PN}-${EGIT_COMMIT}.tar.gz" + +LICENSE="UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +LLVM_MAX_SLOT=7 + +COMMON_DEPEND=" + >=dev-lang/perl-5.10.0 + sys-devel/clang:${LLVM_MAX_SLOT}" +RDEPEND="${COMMON_DEPEND} + dev-perl/Benchmark-Timer + dev-perl/Exporter-Lite + dev-perl/File-Which + dev-perl/Getopt-Tabular + dev-perl/Regexp-Common + dev-perl/Sys-CPU + dev-util/astyle + dev-util/indent" +DEPEND="${COMMON_DEPEND}" + +S="${WORKDIR}/${PN}-${EGIT_COMMIT}" + +PATCHES=( + "${FILESDIR}"/creduce-llvm-7.patch +) + +llvm_check_deps() { + has_version "sys-devel/clang:${LLVM_SLOT}" +} diff --git a/dev-util/creduce/creduce-2.8.0_pre20180411.ebuild b/dev-util/creduce/creduce-2.8.0_pre20180411.ebuild index 10d19d7cec06..e7964cd3685d 100644 --- a/dev-util/creduce/creduce-2.8.0_pre20180411.ebuild +++ b/dev-util/creduce/creduce-2.8.0_pre20180411.ebuild @@ -17,9 +17,11 @@ SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="" +LLVM_MAX_SLOT=6 + COMMON_DEPEND=" >=dev-lang/perl-5.10.0 - >=sys-devel/clang-6:=" + sys-devel/clang:${LLVM_MAX_SLOT}" RDEPEND="${COMMON_DEPEND} dev-perl/Benchmark-Timer dev-perl/Exporter-Lite diff --git a/dev-util/creduce/files/creduce-llvm-7.patch b/dev-util/creduce/files/creduce-llvm-7.patch new file mode 100644 index 000000000000..a005eebff2e2 --- /dev/null +++ b/dev-util/creduce/files/creduce-llvm-7.patch @@ -0,0 +1,90 @@ +From c0d9c3a2ef763eb09f0a70b8ad86250598549487 Mon Sep 17 00:00:00 2001 +From: Yang Chen <chenyang@cs.utah.edu> +Date: Fri, 28 Sep 2018 00:39:22 -0700 +Subject: [PATCH] building with LLVM 7.0 + +cope with some API changes for LLVM 7.0 +--- + clang_delta/ExpressionDetector.cpp | 20 +++++++++++--------- + clang_delta/RemoveUnusedEnumMember.cpp | 8 ++++---- + clang_delta/TransformationManager.cpp | 2 +- + 3 files changed, 16 insertions(+), 14 deletions(-) + +diff --git a/clang_delta/ExpressionDetector.cpp b/clang_delta/ExpressionDetector.cpp +index aa87873..dd77068 100644 +--- a/clang_delta/ExpressionDetector.cpp ++++ b/clang_delta/ExpressionDetector.cpp +@@ -64,7 +64,8 @@ public: + StringRef FileName, bool IsAngled, + CharSourceRange FilenameRange, const FileEntry *File, + StringRef SearchPath, StringRef RelativePath, +- const Module *Imported) override; ++ const Module *Imported, ++ SrcMgr::CharacteristicKind FileType) override; + + private: + SourceManager &SrcManager; +@@ -77,14 +78,15 @@ private: + }; + + void IncludesPPCallbacks::InclusionDirective(SourceLocation HashLoc, +- const Token &/*IncludeTok*/, +- StringRef FileName, +- bool /*IsAngled*/, +- CharSourceRange /*FilenameRange*/, +- const FileEntry * /*File*/, +- StringRef /*SearchPath*/, +- StringRef /*RelativePath*/, +- const Module * /*Imported*/) ++ const Token &/*IncludeTok*/, ++ StringRef FileName, ++ bool /*IsAngled*/, ++ CharSourceRange /*FilenameRange*/, ++ const FileEntry * /*File*/, ++ StringRef /*SearchPath*/, ++ StringRef /*RelativePath*/, ++ const Module * /*Imported*/, ++ SrcMgr::CharacteristicKind /*FileType*/) + { + if (!SrcManager.isInMainFile(HashLoc)) + return; +diff --git a/clang_delta/RemoveUnusedEnumMember.cpp b/clang_delta/RemoveUnusedEnumMember.cpp +index 8bf8673..469db3f 100644 +--- a/clang_delta/RemoveUnusedEnumMember.cpp ++++ b/clang_delta/RemoveUnusedEnumMember.cpp +@@ -99,15 +99,15 @@ void RemoveUnusedEnumMember::removeEnumConstantDecl() + { + SourceLocation StartLoc = (*TheEnumIterator)->getLocStart(); + if (StartLoc.isMacroID()) { +- std::pair<SourceLocation, SourceLocation> Locs = ++ CharSourceRange CSRange = + SrcManager->getExpansionRange(StartLoc); +- StartLoc = Locs.first; ++ StartLoc = CSRange.getBegin(); + } + SourceLocation EndLoc = (*TheEnumIterator)->getLocEnd(); + if (EndLoc.isMacroID()) { +- std::pair<SourceLocation, SourceLocation> Locs = ++ CharSourceRange CSRange = + SrcManager->getExpansionRange(EndLoc); +- EndLoc = Locs.second; ++ EndLoc = CSRange.getEnd(); + } + SourceLocation CommaLoc = Lexer::findLocationAfterToken( + EndLoc, tok::comma, *SrcManager, Context->getLangOpts(), +diff --git a/clang_delta/TransformationManager.cpp b/clang_delta/TransformationManager.cpp +index 89e9d72..1e56b90 100644 +--- a/clang_delta/TransformationManager.cpp ++++ b/clang_delta/TransformationManager.cpp +@@ -223,7 +223,7 @@ llvm::raw_ostream *TransformationManager::getOutStream() + + std::error_code EC; + llvm::raw_fd_ostream *Out = new llvm::raw_fd_ostream( +- OutputFileName, EC, llvm::sys::fs::F_RW); ++ OutputFileName, EC, llvm::sys::fs::FA_Read | llvm::sys::fs::FA_Write); + assert(!EC && "Cannot open output file!"); + return Out; + } +-- +2.19.0 + |