From e0705672ec72b999d135801a7d0bb1f61fa3ccbf Mon Sep 17 00:00:00 2001 From: Quincy Fleming Date: Mon, 24 Apr 2023 22:02:10 -0500 Subject: [PATCH] app-misc/Clipboard: new package, add 0.6.0 Signed-off-by: Quincy Fleming --- app-misc/Clipboard/Clipboard-0.6.0.ebuild | 49 +++++++++ app-misc/Clipboard/Manifest | 1 + .../files/Clipboard-0.6.0-disable-debug.patch | 18 +++ ...bdestination-and-disable-lto-and-git.patch | 103 ++++++++++++++++++ app-misc/Clipboard/metadata.xml | 27 +++++ 5 files changed, 198 insertions(+) create mode 100644 app-misc/Clipboard/Clipboard-0.6.0.ebuild create mode 100644 app-misc/Clipboard/Manifest create mode 100644 app-misc/Clipboard/files/Clipboard-0.6.0-disable-debug.patch create mode 100644 app-misc/Clipboard/files/Clipboard-0.6.0-libdestination-and-disable-lto-and-git.patch create mode 100644 app-misc/Clipboard/metadata.xml diff --git a/app-misc/Clipboard/Clipboard-0.6.0.ebuild b/app-misc/Clipboard/Clipboard-0.6.0.ebuild new file mode 100644 index 0000000000..856d2293c8 --- /dev/null +++ b/app-misc/Clipboard/Clipboard-0.6.0.ebuild @@ -0,0 +1,49 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Cut, copy, and paste anything in your terminal" +HOMEPAGE="https://getclipboard.app/ https://github.com/Slackadays/Clipboard" +SRC_URI="https://github.com/Slackadays/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="X wayland lto debug" + +RDEPEND="X? ( x11-libs/libX11 ) + wayland? ( + dev-libs/wayland-protocols + dev-libs/wayland + ) +" +PATCHES=( + "${FILESDIR}/${P}-libdestination-and-disable-lto-and-git.patch" +) + +src_prepare() { + if ! use wayland; then + sed -i '/pkg_check_modules(WAYLAND_CLIENT wayland-client wayland-protocols)/d' CMakeLists.txt || die + fi + + if ! use debug; then + eapply "${FILESDIR}/${P}-disable-debug.patch" + fi + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + "-DCMAKE_INSTALL_LIBDIR=$(get_libdir)" + "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=$(usex lto TRUE FALSE)" + "-DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex X OFF ON)" + ) + cmake_src_configure +} + +pkg_postinst() { + elog "The \"clipboard\" command is depreciated. Use \"cb\" instead. \"cb\" is symlinked to \"clipboard\" for now." +} diff --git a/app-misc/Clipboard/Manifest b/app-misc/Clipboard/Manifest new file mode 100644 index 0000000000..58b92a5cd7 --- /dev/null +++ b/app-misc/Clipboard/Manifest @@ -0,0 +1 @@ +DIST Clipboard-0.6.0.tar.gz 9187112 BLAKE2B 91f1a4064d7cb539aa4e2cb227703cee6a7f9a4931d7555bf35fa9b4499a641cdd9093cadb713ab4f4d2a985e98616216921b658388b2adc939b4495293a301c SHA512 aaf8a05736ba36b24448ec2df822d633f3532557b8f976447e19342fb6a482be8194d2c4d67c8fb9c4d8ecc04f88db5af14ad9d836b923fedfecce275c420875 diff --git a/app-misc/Clipboard/files/Clipboard-0.6.0-disable-debug.patch b/app-misc/Clipboard/files/Clipboard-0.6.0-disable-debug.patch new file mode 100644 index 0000000000..12c68f3ae9 --- /dev/null +++ b/app-misc/Clipboard/files/Clipboard-0.6.0-disable-debug.patch @@ -0,0 +1,18 @@ +diff -ur '--color=auto' Clipboard-0.6.0/src/gui/include/all/clipboard/logging.hpp Clipboard-0.6.0-new/src/gui/include/all/clipboard/logging.hpp +--- Clipboard-0.6.0/src/gui/include/all/clipboard/logging.hpp 2023-04-08 12:34:14.000000000 -0500 ++++ Clipboard-0.6.0-new/src/gui/include/all/clipboard/logging.hpp 2023-04-19 23:01:23.069641770 -0500 +@@ -17,7 +17,6 @@ + #include + #include + +-#if defined(NDEBUG) + class NullBuffer : public std::streambuf { + public: + int overflow(int c) override { return c; } +@@ -26,6 +25,3 @@ + static NullBuffer nullBuffer; + static std::ostream nullStream(&nullBuffer); + static std::ostream& debugStream = nullStream; +-#else +-static std::ostream& debugStream = std::cerr; +-#endif diff --git a/app-misc/Clipboard/files/Clipboard-0.6.0-libdestination-and-disable-lto-and-git.patch b/app-misc/Clipboard/files/Clipboard-0.6.0-libdestination-and-disable-lto-and-git.patch new file mode 100644 index 0000000000..e717f94ba9 --- /dev/null +++ b/app-misc/Clipboard/files/Clipboard-0.6.0-libdestination-and-disable-lto-and-git.patch @@ -0,0 +1,103 @@ +diff -ur '--color=auto' Clipboard-0.6.0/CMakeLists.txt Clipboard-0.6.0-new/CMakeLists.txt +--- Clipboard-0.6.0/CMakeLists.txt 2023-04-08 12:34:14.000000000 -0500 ++++ Clipboard-0.6.0-new/CMakeLists.txt 2023-04-24 10:03:45.180861938 -0500 +@@ -11,22 +11,6 @@ + set(X11WL ON) + endif() + +-execute_process( # save the current branch to GIT_BRANCH +- COMMAND git rev-parse --abbrev-ref HEAD +- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} +- OUTPUT_VARIABLE GIT_BRANCH +- OUTPUT_STRIP_TRAILING_WHITESPACE +-) +- +-execute_process( # save the current commit hash to GIT_COMMIT_HASH +- COMMAND git log -1 --format=%h +- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} +- OUTPUT_VARIABLE GIT_COMMIT_HASH +- OUTPUT_STRIP_TRAILING_WHITESPACE +-) +- +-add_definitions(-DGIT_COMMIT_HASH="${GIT_COMMIT_HASH}") +-add_definitions(-DGIT_BRANCH="${GIT_BRANCH}") + add_definitions(-DCLIPBOARD_VERSION="${PROJECT_VERSION}") + + if (MSVC) +@@ -74,17 +58,6 @@ + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_${CMAKE_BUILD_TYPE} ${LIB_LOCATION}) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_${CMAKE_BUILD_TYPE} ${BIN_LOCATION}) + +-function(enable_lto this_target) +-include(CheckIPOSupported) +-check_ipo_supported(RESULT lto_supported) +-if(lto_supported AND NOT NO_LTO) +- set_property(TARGET ${this_target} PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE) +- if(CMAKE_COMPILER_IS_GNUCXX) +- list(APPEND CMAKE_CXX_COMPILE_OPTIONS_IPO "-flto=auto") # set the thread amount to what is available on the CPU +- endif() +-endif() +-endfunction() +- + add_subdirectory(src/gui) + + find_package(X11) +diff -ur '--color=auto' Clipboard-0.6.0/src/clipboard/CMakeLists.txt Clipboard-0.6.0-new/src/clipboard/CMakeLists.txt +--- Clipboard-0.6.0/src/clipboard/CMakeLists.txt 2023-04-08 12:34:14.000000000 -0500 ++++ Clipboard-0.6.0-new/src/clipboard/CMakeLists.txt 2023-04-24 10:04:39.144864894 -0500 +@@ -5,8 +5,6 @@ + src/themes.cpp + ) + +-enable_lto(clipboard) +- + target_link_libraries(clipboard gui) + + if(WIN32) +@@ -45,13 +43,13 @@ + TARGET clipboard + APPEND + PROPERTY BUILD_RPATH +- "${CMAKE_INSTALL_PREFIX}/lib" ++ "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" + ) + set_property( + TARGET clipboard + APPEND + PROPERTY INSTALL_RPATH +- "${CMAKE_INSTALL_PREFIX}/lib" ++ "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" + ) + target_link_options(clipboard PRIVATE -z origin) # set the rpath to $ORIGIN + target_link_libraries(clipboard ${CMAKE_DL_LIBS}) +diff -ur '--color=auto' Clipboard-0.6.0/src/clipboardwayland/CMakeLists.txt Clipboard-0.6.0-new/src/clipboardwayland/CMakeLists.txt +--- Clipboard-0.6.0/src/clipboardwayland/CMakeLists.txt 2023-04-08 12:34:14.000000000 -0500 ++++ Clipboard-0.6.0-new/src/clipboardwayland/CMakeLists.txt 2023-04-24 10:05:44.524868476 -0500 +@@ -60,8 +60,6 @@ + ) + add_dependencies(clipboardwayland clipboardwayland_generatedheaders) + +-enable_lto(clipboardwayland) +- + target_link_libraries(clipboardwayland + ${WAYLAND_CLIENT_LIBRARIES} + gui +@@ -71,4 +69,4 @@ + ${GENERATED_INCLUDE_DIR} + ) + +-install(TARGETS clipboardwayland LIBRARY DESTINATION lib) ++install(TARGETS clipboardwayland LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) +diff -ur '--color=auto' Clipboard-0.6.0/src/clipboardx11/CMakeLists.txt Clipboard-0.6.0-new/src/clipboardx11/CMakeLists.txt +--- Clipboard-0.6.0/src/clipboardx11/CMakeLists.txt 2023-04-08 12:34:14.000000000 -0500 ++++ Clipboard-0.6.0-new/src/clipboardx11/CMakeLists.txt 2023-04-24 10:05:23.048867299 -0500 +@@ -7,8 +7,6 @@ + gui + ) + +-enable_lto(clipboardx11) +- + target_include_directories(clipboardx11 PRIVATE ${X11_INCLUDE_DIR}) + +-install(TARGETS clipboardx11 LIBRARY DESTINATION lib) ++install(TARGETS clipboardx11 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) diff --git a/app-misc/Clipboard/metadata.xml b/app-misc/Clipboard/metadata.xml new file mode 100644 index 0000000000..0f4bbcf126 --- /dev/null +++ b/app-misc/Clipboard/metadata.xml @@ -0,0 +1,27 @@ + + + + + quincyf467@protonmail.com + Quincy Fleming + + + proxy-maint@gentoo.org + Proxy Maintainers + + + Enable Link Time Optimization (LTO) + + + Slackadays/Clipboard + https://github.com/Slackadays/Clipboard/blob/main/README.md + https://github.com/Slackadays/Clipboard/issues + + + CB (or Clipboard) is a ridonkulously easy-to-use data remembrance tool bursting with oodles of useful features and absolutely gorgeous eye candy. + + That's underselling it a bit. + + This is your one-way golden ticket to saving time and effort anytime and anywhere. Have a telepath with an infallible memory always by your side. Feel the sheer power flowing through your commanding body as you cut, copy, paste, add, remove, load, and make note of anything that dares lay in your terminal at the mere press of a button. In no time, you'll be reclined back on a sunny beach in the Caribbean sipping a succulent papaya smoothie with the love of your life all while you watch dolphins leaping from the shimmering waves of the soft blue water. Ok, so maybe that last part won't actually happen, but you get the idea + +