mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-20 20:43:09 -04:00
net-vpn/candy: new 4.0 ebuild with version and cflags env patch
Closes: https://github.com/gentoo/guru/pull/145 Signed-off-by: Xin Yang <yangmame@icloud.com> Signed-off-by: David Roman <davidroman96@gmail.com>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST candy-3.9.1.tar.gz 37847 BLAKE2B af7c857a8a41f0e98bd744162be563b973e20a630fb505de91155ab9fb7a17679a2bb9f69db8c737258d1293c5d77ad96a65a2b22455512b8f97390a7368165f SHA512 aa9727c74ab7c9536331098f11a2837daa51aa58503cbf5b43536afedf5eea8d30db296f515c4689cf44c980eea5a88e06ad161836fe64d4146de4fdce9d99ac
|
||||
DIST candy-4.0.tar.gz 43112 BLAKE2B 84c3fbab30dc1d40ba73e7c90a02bf6c13b9bb0de2339fe128c958242213986dc2c490c680032c98f9a3a849e237f1f22274b600e55ed94aea91d9529bf972bf SHA512 9f76ab338cec381e1421040055ba73882a32f6b2b9bebe8fbc289c1c0e418506a57698fa8e551a31a918dfbcfa668dbb6c1d82390a2496a7fe35d6a17adacd64
|
||||
|
||||
43
net-vpn/candy/candy-4.0.ebuild
Normal file
43
net-vpn/candy/candy-4.0.ebuild
Normal file
@@ -0,0 +1,43 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake systemd
|
||||
|
||||
DESCRIPTION="Another virtual private network that supports peer-to-peer connections"
|
||||
HOMEPAGE="https://github.com/lanthora/candy"
|
||||
SRC_URI="https://github.com/lanthora/candy/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/uriparser
|
||||
dev-libs/libconfig
|
||||
net-libs/ixwebsocket[ws]
|
||||
dev-libs/openssl
|
||||
sys-libs/zlib
|
||||
dev-libs/libfmt
|
||||
dev-libs/spdlog
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
eapply "${FILESDIR}/${P}-show-version-and-use-cflags-env.patch"
|
||||
cmake_src_prepare
|
||||
default
|
||||
}
|
||||
|
||||
src_install(){
|
||||
cmake_src_install
|
||||
default
|
||||
|
||||
insinto /etc
|
||||
doins candy.conf
|
||||
fperms 0644 /etc/candy.conf
|
||||
|
||||
systemd_dounit candy.service
|
||||
systemd_dounit candy@.service
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
From de8f5a3109ee3bdc472fbc7fcb1572aaad0b8cb9 Mon Sep 17 00:00:00 2001
|
||||
From: lanthora <lanthora@outlook.com>
|
||||
Date: Thu, 29 Feb 2024 05:16:53 +0000
|
||||
Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=98=BE=E7=A4=BA=E7=89=88?=
|
||||
=?UTF-8?q?=E6=9C=AC=E5=8F=B7?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
---
|
||||
CMakeLists.txt | 10 ++++++----
|
||||
src/main/main.cc | 13 +++++++++++++
|
||||
2 files changed, 19 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 1ebf2c0..dffc31d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,10 +1,12 @@
|
||||
cmake_minimum_required(VERSION 3.18.4)
|
||||
|
||||
-project(candy CXX)
|
||||
+project(candy LANGUAGES CXX VERSION 4.0)
|
||||
|
||||
-set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -std=c++2b -Wall -Werror -Wfatal-errors -Wno-unknown-pragmas")
|
||||
-set(CMAKE_CXX_FLAGS_DEBUG_INIT "-g -fsanitize=address")
|
||||
-set(CMAKE_CXX_FLAGS_RELEASE_INIT "-O2")
|
||||
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++2b -Wall -Werror -Wfatal-errors -Wno-unknown-pragmas")
|
||||
+set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=address")
|
||||
+set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2")
|
||||
+
|
||||
+add_compile_definitions(VERSION="${CMAKE_PROJECT_VERSION}")
|
||||
|
||||
include_directories(${CMAKE_SOURCE_DIR}/src)
|
||||
|
||||
diff --git a/src/main/main.cc b/src/main/main.cc
|
||||
index 286d24d..65cdc4f 100644
|
||||
--- a/src/main/main.cc
|
||||
+++ b/src/main/main.cc
|
||||
@@ -21,6 +21,10 @@
|
||||
|
||||
#include <argp.h>
|
||||
|
||||
+#ifndef VERSION
|
||||
+#define VERSION "unknown"
|
||||
+#endif
|
||||
+
|
||||
namespace {
|
||||
|
||||
struct arguments {
|
||||
@@ -54,6 +58,7 @@ struct argp_option options[] = {
|
||||
{"config", 'c', "PATH", 0, "Configuration file path"},
|
||||
{"discovery", OPT_DISCOVERY_INTERVAL, "SECONDS", 0, "Active discovery broadcast interval"},
|
||||
{"route", 'r', "COST", 0, "Cost of routing"},
|
||||
+ {"version", 'v', 0, 0, "Show version"},
|
||||
{"no-timestamp", OPT_NO_TIMESTAMP, 0, 0, "Log does not show time"},
|
||||
{"debug", OPT_LOG_LEVEL_DEBUG, 0, 0, "Show debug level logs"},
|
||||
{"auto-restart", OPT_AUTO_RESTART, 0, 0, "Automatic restart"},
|
||||
@@ -72,6 +77,11 @@ int setLogLevelDebug() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
+void showVersion() {
|
||||
+ std::cout << VERSION << std::endl;
|
||||
+ exit(0);
|
||||
+}
|
||||
+
|
||||
bool needShowUsage(struct arguments *arguments, struct argp_state *state) {
|
||||
if (state->arg_num > 0)
|
||||
return true;
|
||||
@@ -141,6 +151,9 @@ int parseOption(int key, char *arg, struct argp_state *state) {
|
||||
case 'c':
|
||||
parseConfigFile(arguments, arg);
|
||||
break;
|
||||
+ case 'v':
|
||||
+ showVersion();
|
||||
+ break;
|
||||
case OPT_NO_TIMESTAMP:
|
||||
disableLogTimestamp();
|
||||
break;
|
||||
Reference in New Issue
Block a user