diff --git a/sys-apps/autofdo/Manifest b/sys-apps/autofdo/Manifest new file mode 100644 index 0000000..923712d --- /dev/null +++ b/sys-apps/autofdo/Manifest @@ -0,0 +1,4 @@ +DIST 20250814.0.tar.gz 2235497 BLAKE2B f60f3604215f64f33fad902637360050061ec62cfa6413cafc4cd3794a1898c7ee67f7b6edf78e5cb7c6b0ed86b8d80338ad4abee3f2664e391c2cfae5997220 SHA512 4ee1a217203933382e728d354a149253a517150eee7580a0abecc69584b2eb200d91933ef424487e3a3fe0e8ab5e77b0288485cac982171b3585314a4417e7d4 +DIST b665ecebcb0f14988408036422ac114cade65a7c.zip 95118500 BLAKE2B 976c5c3e6333bbaf6034b667e22132651af17a708771d5795e59f8c9367f801088d263f57214388bab9cc941d3924b828cc6225a958101b64e8e8e7718075ab2 SHA512 e38d816149f53bc5f95e57ac5026ef23289fe15696466328fd1f800320c446058c2b58ef14b970ae2fd9e014877c628daab8b870f7ccd3081733be9d52a095f1 +DIST v0.30.1.tar.gz 60478051 BLAKE2B 5d9792f51aedca66edc176844ac8c7acc8fcaf9ebe2a48faacb0fc8ba0a603f63c60fffc37d3a2889b6b303f9c69bfddc6112282d073e9451e32d41ad856e439 SHA512 0c3102eaa18906192b091241c5c0d1fa86fffc711811de0cfc12d4f2611451c7f9c6ff10ed2cb9e0de9d0e0885a3208439e23d76957a74dd28e4195da80ea27e +DIST v0.7.1.tar.gz 182681 BLAKE2B d8bf2d4285e3be17a151d1f6f63dedbac9d5dd6667983d37e4b591be49751b6982abff7802dcd2c42651360d354c6c8ab1cc03c216ed1a3f7ba5cfb6a1a60dbf SHA512 2dabac87d44e4fe58beceb31b22be732b47df84c22f1af8c0e7d0f262de939889de1f16025c1256539f2833ef3393bc92034e983aa2886752bb8705801a68630 diff --git a/sys-apps/autofdo/autofdo-0.30.1.ebuild b/sys-apps/autofdo/autofdo-0.30.1.ebuild new file mode 100644 index 0000000..f4249e9 --- /dev/null +++ b/sys-apps/autofdo/autofdo-0.30.1.ebuild @@ -0,0 +1,51 @@ +EAPI=8 + +inherit cmake + +HOMEPAGE="https://github.com/google/autofdo" +DESCRIPTION="AutoFDO" + +ABSEIL_VER="20250814.0" +GLOG_VER="0.7.1" +PERF_DC_VER="b665ecebcb0f14988408036422ac114cade65a7c" + +SRC_URI=" + https://github.com/google/${PN}/archive/refs/tags/v${PV}.tar.gz + https://github.com/abseil/abseil-cpp/archive/refs/tags/${ABSEIL_VER}.tar.gz + https://github.com/google/glog/archive/refs/tags/v${GLOG_VER}.tar.gz + https://github.com/google/perf_data_converter/archive/${PERF_DC_VER}.zip +" + +LICENSE="" +SLOT="0" + +KEYWORDS="~amd64" + +IUSE="llvm +gcov" +REQUIRED_USE=" + || ( llvm gcov ) +" + +PATCHES=( + "${FILESDIR}/protobuf-patch.patch" +) + +src_unpack() { + default + + mv ${WORKDIR}/abseil-cpp-${ABSEIL_VER}/* ${S}/third_party/abseil/ + mv ${WORKDIR}/glog-${GLOG_VER}/* ${S}/third_party/glog/ + mv ${WORKDIR}/perf_data_converter-${PERF_DC_VER}/* ${S}/third_party/perf_data_converter/ +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_POLICY_VERSION_MINIMUM=3.5 + -DBUILD_SHARED=On + # -DProtobuf_LIBRARIES=/usr/lib64/libprotobuf.so + $(use llvm && echo "-DENABLE_TOOL=LLVM") + $(use gcov && echo "-DENABLE_TOOL=GCOV") + ) + + cmake_src_configure +} diff --git a/sys-apps/autofdo/files/protobuf-dep.patch b/sys-apps/autofdo/files/protobuf-dep.patch new file mode 100644 index 0000000..185d152 --- /dev/null +++ b/sys-apps/autofdo/files/protobuf-dep.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dc10c28..f22acc6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -7,7 +7,7 @@ set (Protobuf_USE_STATIC_LIBS TRUE) + + function (execute_perf_protobuf) + +- find_package(Protobuf REQUIRED) ++ find_package(protobuf REQUIRED) + + add_library(perf_proto + third_party/perf_data_converter/src/quipper/perf_data.proto diff --git a/sys-apps/autofdo/files/system-glog.patch b/sys-apps/autofdo/files/system-glog.patch new file mode 100644 index 0000000..d428e06 --- /dev/null +++ b/sys-apps/autofdo/files/system-glog.patch @@ -0,0 +1,50 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dc10c28..52acfb0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -20,10 +20,8 @@ endfunction() + + function (build_gcov) + add_subdirectory(third_party/abseil) +- add_subdirectory(third_party/glog) + + include_directories(${CMAKE_HOME_DIRECTORY} +- third_party/glog/src + third_party/abseil + third_party/perf_data_converter/src + third_party/perf_data_converter/src/quipper +@@ -32,6 +30,7 @@ function (build_gcov) + ${PROJECT_BINARY_DIR}/third_party/glog + ${PROJECT_BINARY_DIR}/third_party/perf_data_converter/src/quipper) + ++ find_package (LIBGLOG_LIBRARIES NAMES glog REQUIRED) + find_library (LIBELF_LIBRARIES NAMES elf REQUIRED) + find_library (LIBCRYPTO_LIBRARIES NAMES crypto REQUIRED) + +@@ -90,7 +89,7 @@ function (build_gcov) + absl::flags + absl::flags_parse + create_gcov_lib +- glog ++ glog::glog + quipper_perf + ) + +@@ -111,7 +110,7 @@ function (build_gcov) + absl::flags + absl::flags_parse + profile_merger_lib +- glog ++ glog::glog + quipper_perf + ) + +@@ -130,7 +129,7 @@ function (build_gcov) + absl::flags + absl::flags_parse + dump_gcov_lib +- glog) ++ glog::glog) + + endfunction() +