diff options
Diffstat (limited to 'sys-fs/e4rat')
-rw-r--r-- | sys-fs/e4rat/Manifest | 11 | ||||
-rw-r--r-- | sys-fs/e4rat/e4rat-0.2.4_pre20141201-r1.ebuild | 63 | ||||
-rw-r--r-- | sys-fs/e4rat/e4rat-0.2.4_pre20141201.ebuild | 62 | ||||
-rw-r--r-- | sys-fs/e4rat/files/e4rat-0.2.2-libdir.patch | 14 | ||||
-rw-r--r-- | sys-fs/e4rat/files/e4rat-0.2.2-shared-build.patch | 74 | ||||
-rw-r--r-- | sys-fs/e4rat/files/e4rat-0.2.4-gcc6.patch | 11 | ||||
-rw-r--r-- | sys-fs/e4rat/files/e4rat-0.2.4-strdup.patch | 41 | ||||
-rw-r--r-- | sys-fs/e4rat/files/e4rat-0.2.4-sysmacros.patch | 13 | ||||
-rw-r--r-- | sys-fs/e4rat/metadata.xml | 11 |
9 files changed, 300 insertions, 0 deletions
diff --git a/sys-fs/e4rat/Manifest b/sys-fs/e4rat/Manifest new file mode 100644 index 000000000000..89aaa1c84066 --- /dev/null +++ b/sys-fs/e4rat/Manifest @@ -0,0 +1,11 @@ +AUX e4rat-0.2.2-libdir.patch 509 SHA256 7b8427c7380c6a56a9c70a1f2f8794550e46f4a110efd9e4cd476f9079e39157 SHA512 c942b1fe189500c666e0994c3b7563a96b05fe065f0b3c2ff5f99bb3a0b462cc13e5ac6ecc692e10d6eec43f2d83c1f80bed7c3f354cda3f3f0d85d358e85d0f WHIRLPOOL 65d0fc8e1ac179346ff75bd60332c920215d3a9252cdd2044515df106d1fb35ec1d15ddde15a9622e7fdd03d50a90ed7584e2d0ccb5a668fab10a1b274b5b478 +AUX e4rat-0.2.2-shared-build.patch 2560 SHA256 0ece6e10a5a77857bb16a61952c69211318046c435cd7f91c522c0c59c19cbaa SHA512 0cb8acc4c2df6cc92574f46153516dbc0cb91240cccb46e2879d60a515af066688db3c79a5f66cf5da43b5a51a85c9cea22cef52178ebea5aec7c267f67562d0 WHIRLPOOL 67361405f6cf52f1f130054b7ad0669c7e06313c761c71f51549acac63a56762bb0dd57d556c6c6ebbe0e7e9dafb774869bd517defbde54e0546dfb1521a1c12 +AUX e4rat-0.2.4-gcc6.patch 542 SHA256 a827c1eb43b15b36c3365dc0a30d4b57f62aec2983e01f2ec64e70e1853ae8f9 SHA512 9bb843a0359acb843a513f701b71a2b666c550d28708a14cdc6e77c4fc56362a10990cfe3fbed2ff9724dc71bc0be6ec72be4309b6e2383120ca75697f359512 WHIRLPOOL 37a11c575fad734c1f001624bbf1695f64a7f5fa567a5ef93d066a88109e42c87579c7e9f94a7ab6a1e45ecb2239649f2e61b11622db72ceb854535fde2869de +AUX e4rat-0.2.4-strdup.patch 1427 SHA256 efcf1c27cccec567d99ff24a96dea6eda32d48452c1c861d14e864847361335d SHA512 62d2b4b2b5e8a9b309b920d20fee98057f7e7564cf86e01f8d4cbd3219b47caf7d78ddfe71b01fde46997bb8966e2ce76df4d32ec6ab9a6190a1351bc2faf6cc WHIRLPOOL a5a6383093a8402d1334d88f769c32529bd95860562770c23060a357fbd7e346cc4ca1d0cd48e6ec91dd0616eca5ce60a9c165e4a14df3c3abf8a3efef0db777 +AUX e4rat-0.2.4-sysmacros.patch 288 SHA256 419662b3f45c68a739172ecd5fac6bb4ecaad1be0558c1fd9f0a4e02aec5f902 SHA512 50883828bf95368c31c620fac46728c6bfaf768a794158b30614cb2c0b7a65ee82e8bcf12268a26de93e87fb6b0466bc93e29a7dd69895234693745e24a6da59 WHIRLPOOL d48091b55b42a9aeef2ebcdc9181556fe5bb3dc32c5ea34e5fd082ac2ccff13028246f045b820d194fb9a51df92fcfa7bc7c7586e2cec32c0b919ba463bc0f84 +DIST e4rat-0.2.4_pre20141201.tar.xz 60408 SHA256 757d9d76b395a8b5092205bf623ba73860546f5f13efdf6b6347217b4ebe9e4b SHA512 61a53f6ac420392df5894d3f76de28c5d2e33fd3a6548cf8c9de52818bf937ba8bf8629db1b89103faa73b660548d7e467e17d7f2794a4100ca07971ded0cfb9 WHIRLPOOL 6c33956a6a601fd05d89325a2d2fa96ddf00c7e8130ac599c39e59e1ee3d3c21fc5ce712421969d96e96cfadd91fdbe6acc24d31d7acf413632fb49a575edeae +EBUILD e4rat-0.2.4_pre20141201-r1.ebuild 1612 SHA256 ea9d49e9d0881b3674f2a4d824eca3dfcc0f766cb8de31901e4a47386dedfc29 SHA512 889c80b66c54fc1377c4ccc66608093fc09e0e389acf56b0ad9fa69c2cf1c8d8fafc39a612cb76530fb67087698b3c3543fcd40fe9b3420677ed5fd85dc5e793 WHIRLPOOL 63cea8a820a5372a1b33cdb3d608cc63c1852e15ea446d8043c3df6cbb996126681bff601a1f187c254786f756eeadacbc0d206168a5efb9dd86a6f8b2d03abe +EBUILD e4rat-0.2.4_pre20141201.ebuild 1570 SHA256 4adefc8498e6f62c15a4de30fc170a9a0f1b5d4336b8400e2aabdc2fa23269b7 SHA512 9f8fcdeea6541af1f20487920fdb3d11e3ab2dbda7a8b7ecf284492a48338e264616a475442ce765c937c7f2d44b2b2f277d0a8fc73021f7fa7391fa7e92c21e WHIRLPOOL 77c4158c6feb8a1c554a7601668db35b2a77b34162df2a540f3ebb93c411ae0bd6e68c00e06b7cd1cb22b50cb9fd2342b0fe8f1d889772e8224c780e0606c70e +MISC ChangeLog 3598 SHA256 dd8b8b86040a27f2621d92b12bb95b0d36beb0d6338e985a1e864aee67911297 SHA512 b5058ad7d8e8da10c5fd0aed02b72a6cd6034a62ca0388145f5c510ca2f998f5cb33892492e74368fd9d03328f16655feb9eb28b5fc01fdff528a18e0e4c2360 WHIRLPOOL d9ac3ce627f74d2cd8a80118f3eb842c7477816c2076505637b4a5c2f3a0b4ec41c9dd8c3e7f1e2b64754e23157fc9755cbe2ebb3dbba9c59836b79ad2abbac5 +MISC ChangeLog-2015 3138 SHA256 0b6ade99e2cf02df427bf4a5923e107a9f6b6e5f63bed3000a5402b6736e49fb SHA512 0fe4d5d025ea8cc9ef55b752f2445269e42ad036d47680d0ac24c9b90f86b75531dba0fe7affa1dbf7e4222bf3a1aea565ec7e09204111d745e037a5cc390057 WHIRLPOOL b337ca37dd11338cadf0440a6d406dfd48c138dd168fdcf5f57a19749fe140e56fa3e0635138a304b0f6dbaaf92f81dd898b8eb0932f8445c0a743aeede60515 +MISC metadata.xml 325 SHA256 b1cc5029a51cd30866c47c99ced2f8260966451265ed2be2c2bef79bda0b0a75 SHA512 3630260f53b5922cd23604a77495370f77cef226d9ca2ba42b31f3ed342f53f9f00c5c4a22eb2f9041dde577f612f8ba2ea9af1a649d105f52c1d15b41a0d516 WHIRLPOOL 4ff34e857165daaab51e379ce733bc0d7b3f2be28d38f181a91206ae24d41d1648f5e5d22aecb121a72b9632a8772c70139d9ae1e49410dbc61796c6d262bf77 diff --git a/sys-fs/e4rat/e4rat-0.2.4_pre20141201-r1.ebuild b/sys-fs/e4rat/e4rat-0.2.4_pre20141201-r1.ebuild new file mode 100644 index 000000000000..b7a6e6d7662a --- /dev/null +++ b/sys-fs/e4rat/e4rat-0.2.4_pre20141201-r1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-utils linux-info readme.gentoo-r1 + +DESCRIPTION="Toolset to accelerate the boot process and application startup" +HOMEPAGE="http://e4rat.sourceforge.net/" +#SRC_URI="mirror://sourceforge/${PN}/${P/-/_}_src.tar.gz" +SRC_URI="https://dev.gentoo.org/~pacho/${PN}/${PN}-0.2.4_pre20141201.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND=" + dev-lang/perl:= + >=dev-libs/boost-1.42:= + sys-fs/e2fsprogs + sys-process/audit[static-libs(+)] + sys-process/lsof +" +DEPEND="${DEPEND}" + +CONFIG_CHECK="~AUDITSYSCALL" + +PATCHES=( + "${FILESDIR}"/${PN}-0.2.2-shared-build.patch + "${FILESDIR}"/${PN}-0.2.2-libdir.patch + "${FILESDIR}"/${PN}-0.2.4-sysmacros.patch #580534 + "${FILESDIR}"/${PN}-0.2.4-gcc6.patch #594046 + "${FILESDIR}"/${PN}-0.2.4-strdup.patch +) + +pkg_setup() { + check_extra_config + DOC_CONTENTS=" + To launch systemd from e4rat you simply need to edit /etc/e4rat.conf + and set:\n + ; path to init process binary (DEFAULT: /sbin/init)\n + init /usr/lib/systemd/systemd" +} + +src_install() { + cmake-utils_src_install + # relocate binaries to /sbin. If someone knows of a better way to do it + # please do tell me + dodir sbin + find "${D}"/usr/sbin -type f -exec mv {} "${D}"/sbin/. \; \ + || die + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog + if has_version sys-apps/preload; then + elog "It appears you have sys-apps/preload installed. This may" + elog "has negative effects on ${PN}. You may want to disable preload" + elog "when using ${PN}." + fi +} diff --git a/sys-fs/e4rat/e4rat-0.2.4_pre20141201.ebuild b/sys-fs/e4rat/e4rat-0.2.4_pre20141201.ebuild new file mode 100644 index 000000000000..35b98532f0ad --- /dev/null +++ b/sys-fs/e4rat/e4rat-0.2.4_pre20141201.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit cmake-utils linux-info readme.gentoo-r1 + +DESCRIPTION="Toolset to accelerate the boot process and application startup" +HOMEPAGE="http://e4rat.sourceforge.net/" +#SRC_URI="mirror://sourceforge/${PN}/${P/-/_}_src.tar.gz" +SRC_URI="https://dev.gentoo.org/~pacho/${PN}/${PN}-0.2.4_pre20141201.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +RDEPEND=" + dev-lang/perl:= + >=dev-libs/boost-1.42:= + sys-fs/e2fsprogs + sys-process/audit[static-libs(+)] + sys-process/lsof +" +DEPEND="${DEPEND}" + +CONFIG_CHECK="~AUDITSYSCALL" + +PATCHES=( + "${FILESDIR}"/${PN}-0.2.2-shared-build.patch + "${FILESDIR}"/${PN}-0.2.2-libdir.patch + "${FILESDIR}"/${PN}-0.2.4-sysmacros.patch #580534 + "${FILESDIR}"/${PN}-0.2.4-gcc6.patch #594046 +) + +pkg_setup() { + check_extra_config + DOC_CONTENTS=" + To launch systemd from e4rat you simply need to edit /etc/e4rat.conf + and set:\n + ; path to init process binary (DEFAULT: /sbin/init)\n + init /usr/lib/systemd/systemd" +} + +src_install() { + cmake-utils_src_install + # relocate binaries to /sbin. If someone knows of a better way to do it + # please do tell me + dodir sbin + find "${D}"/usr/sbin -type f -exec mv {} "${D}"/sbin/. \; \ + || die + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog + if has_version sys-apps/preload; then + elog "It appears you have sys-apps/preload installed. This may" + elog "has negative effects on ${PN}. You may want to disable preload" + elog "when using ${PN}." + fi +} diff --git a/sys-fs/e4rat/files/e4rat-0.2.2-libdir.patch b/sys-fs/e4rat/files/e4rat-0.2.2-libdir.patch new file mode 100644 index 000000000000..eaa2695d7872 --- /dev/null +++ b/sys-fs/e4rat/files/e4rat-0.2.2-libdir.patch @@ -0,0 +1,14 @@ +Index: e4rat-0.2.2/src/CMakeLists.txt +=================================================================== +--- e4rat-0.2.2.orig/src/CMakeLists.txt ++++ e4rat-0.2.2/src/CMakeLists.txt +@@ -170,8 +170,7 @@ endif(NOT BUILD_CORE_LIBRARY_STATIC) + + INSTALL(TARGETS ${${PROJECT_NAME}_TARGETS} + RUNTIME DESTINATION "sbin" +- LIBRARY DESTINATION "lib" +- ARCHIVE DESTINATION "lib" ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + ) + + INSTALL(DIRECTORY DESTINATION "/var/lib/${PROJECT_NAME}") diff --git a/sys-fs/e4rat/files/e4rat-0.2.2-shared-build.patch b/sys-fs/e4rat/files/e4rat-0.2.2-shared-build.patch new file mode 100644 index 000000000000..636eb52fb612 --- /dev/null +++ b/sys-fs/e4rat/files/e4rat-0.2.2-shared-build.patch @@ -0,0 +1,74 @@ +Index: e4rat-0.2.2/CMakeLists.txt +=================================================================== +--- e4rat-0.2.2.orig/CMakeLists.txt ++++ e4rat-0.2.2/CMakeLists.txt +@@ -14,7 +14,6 @@ IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_D + set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "e4rat install prefix" FORCE) + ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + +-set(Boost_USE_STATIC_LIBS ON) + set(Boost_USE_MULTITHREADED OFF) + add_definitions(-DBOOST_FILESYSTEM_VERSION=2) + find_package(Boost 1.41 COMPONENTS system filesystem regex REQUIRED) +Index: e4rat-0.2.2/src/CMakeLists.txt +=================================================================== +--- e4rat-0.2.2.orig/src/CMakeLists.txt ++++ e4rat-0.2.2/src/CMakeLists.txt +@@ -131,21 +131,12 @@ IF(CMAKE_BUILD_TYPE STREQUAL "debug") + ) + ENDIF(CMAKE_BUILD_TYPE STREQUAL "debug") + +-# On 64 bit architecture you cannot link a static to a shared library +-# Therefore -static-libstdc++ will fail. +-if(BUILD_CORE_LIBRARY_STATIC) +- add_library(${PROJECT_NAME}-core STATIC +- ${${PROJECT_NAME}-core_SRC} +- ) +-else(BUILD_CORE_LIBRARY_STATIC) +- add_library(${PROJECT_NAME}-core SHARED +- ${${PROJECT_NAME}-core_SRC} +- ) +- set_target_properties(${PROJECT_NAME}-core PROPERTIES +- SOVERSION 0 +- LINK_FLAGS "-static-libgcc -static-libstdc++" +- ) +-endif(BUILD_CORE_LIBRARY_STATIC) ++add_library(${PROJECT_NAME}-core SHARED ++ ${${PROJECT_NAME}-core_SRC} ++) ++set_target_properties(${PROJECT_NAME}-core PROPERTIES ++ SOVERSION 0 ++) + + target_link_libraries(${PROJECT_NAME}-core + ${${PROJECT_NAME}_LIBRARIES} +@@ -158,15 +149,13 @@ foreach( EXE ${PROJECT_NAME}-collect + TARGET_LINK_LIBRARIES(${EXE} + ${PROJECT_NAME}-core + ) +- set_target_properties(${EXE} PROPERTIES +- LINK_FLAGS "-static-libgcc -static-libstdc++" +- ) + endforeach( EXE ) + + ### + # install project targets + ### + set(${PROJECT_NAME}_TARGETS ++ ${PROJECT_NAME}-core + ${PROJECT_NAME}-collect + ${PROJECT_NAME}-preload + ${PROJECT_NAME}-realloc +Index: e4rat-0.2.2/src/cmake/Findaudit.cmake +=================================================================== +--- e4rat-0.2.2.orig/src/cmake/Findaudit.cmake ++++ e4rat-0.2.2/src/cmake/Findaudit.cmake +@@ -1,7 +1,7 @@ + FIND_PATH(AUDIT_INCLUDE_DIR libaudit.h /usr/include + /usr/local/include) + +-FIND_LIBRARY(AUDIT_LIBRARY NAMES libaudit.a PATH /usr/lib /usr/local/lib) ++FIND_LIBRARY(AUDIT_LIBRARY NAMES audit PATH /usr/lib /usr/local/lib) + + IF (AUDIT_INCLUDE_DIR AND AUDIT_LIBRARY) + SET(AUDIT_FOUND TRUE) diff --git a/sys-fs/e4rat/files/e4rat-0.2.4-gcc6.patch b/sys-fs/e4rat/files/e4rat-0.2.4-gcc6.patch new file mode 100644 index 000000000000..cdf14e5c92eb --- /dev/null +++ b/sys-fs/e4rat/files/e4rat-0.2.4-gcc6.patch @@ -0,0 +1,11 @@ +--- e4rat-0.2.4_pre20141201/src/logging.hh.old 2016-09-21 22:01:37.631925077 -0400 ++++ e4rat-0.2.4_pre20141201/src/logging.hh 2016-09-21 22:01:44.351086734 -0400 +@@ -93,7 +93,7 @@ + #define dump_log(...) logger.write(__VA_ARGS__) + + #ifdef DEBUG_ENABLED +- #define debug(format,args...) dump_log(Debug, "%s:%d in %s(): "format, __FILE__, __LINE__, __FUNCTION__, ## args) ++ #define debug(format,args...) dump_log(Debug, "%s:%d in %s(): " format, __FILE__, __LINE__, __FUNCTION__, ## args) + #else + #define debug(format,args...) + #endif diff --git a/sys-fs/e4rat/files/e4rat-0.2.4-strdup.patch b/sys-fs/e4rat/files/e4rat-0.2.4-strdup.patch new file mode 100644 index 000000000000..c3a9cd0e8ca0 --- /dev/null +++ b/sys-fs/e4rat/files/e4rat-0.2.4-strdup.patch @@ -0,0 +1,41 @@ +--- e4rat-0.2.4_pre20141201/src/e4rat-collect.cc.orig 2014-11-24 12:12:12.000000000 +0300 ++++ e4rat-0.2.4_pre20141201/src/e4rat-collect.cc 2017-02-12 02:16:25.151757182 +0300 +@@ -32,6 +32,7 @@ + #include <fcntl.h> + #include <fstream> + #include <signal.h> ++#include <cstring> + + /* EXT2_SUPER_MAGIC */ + #include <ext2fs/ext2_fs.h> +@@ -361,7 +362,9 @@ + { + create_pid_late = true; + +- outPath = Config::get<std::string>("startup_log_file").c_str(); ++ // It is unsafe to use Config::get<T>(arg)c_str() pointer ++ // directly, since it may be overwritten by later get calls. ++ outPath = strdup(Config::get<std::string>("startup_log_file").c_str()); + verbose = 0; + } + else +--- e4rat-0.2.4_pre20141201/src/e4rat-preload.cc.orig 2014-11-24 12:12:12.000000000 +0300 ++++ e4rat-0.2.4_pre20141201/src/e4rat-preload.cc 2017-02-12 02:16:38.425552630 +0300 +@@ -25,6 +25,7 @@ + + #include <iostream> + #include <fstream> ++#include <cstring> + + #include <sys/types.h> + #include <sys/stat.h> +@@ -227,7 +228,8 @@ + try { + if(getpid() == 1) + { +- const char* logfile = Config::get<std::string>("startup_log_file").c_str(); ++ // pointer may change, string must be copied ++ const char* logfile = strdup(Config::get<std::string>("startup_log_file").c_str()); + notice("Open %s ... ", logfile); + FILE* infile = fopen(logfile, "r"); + if(!infile) diff --git a/sys-fs/e4rat/files/e4rat-0.2.4-sysmacros.patch b/sys-fs/e4rat/files/e4rat-0.2.4-sysmacros.patch new file mode 100644 index 000000000000..5cdcf3f05ae5 --- /dev/null +++ b/sys-fs/e4rat/files/e4rat-0.2.4-sysmacros.patch @@ -0,0 +1,13 @@ +https://sourceforge.net/p/e4rat/tickets/5/ +https://bugs.gentoo.org/580534 + +--- a/src/common.hh ++++ b/src/common.hh +@@ -20,6 +20,7 @@ + #ifndef COMMON_HH + #define COMMON_HH + ++#include <sys/sysmacros.h> + #include <linux/types.h> + #include <boost/filesystem.hpp> + #include <boost/regex.hpp> diff --git a/sys-fs/e4rat/metadata.xml b/sys-fs/e4rat/metadata.xml new file mode 100644 index 000000000000..141e2b6b51e6 --- /dev/null +++ b/sys-fs/e4rat/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>bircoph@gentoo.org</email> + <name>Andrew Savchenko</name> + </maintainer> + <upstream> + <remote-id type="sourceforge">e4rat</remote-id> + </upstream> +</pkgmetadata> |