From patchwork Tue Oct 13 14:37:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: David Gouarin X-Patchwork-Id: 1381622 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=pTAMcnRk; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4C9dS05LK0z9sRk for ; Wed, 14 Oct 2020 01:37:36 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 9DE0C87BC9; Tue, 13 Oct 2020 14:37:32 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7PNbpWfDBjlx; Tue, 13 Oct 2020 14:37:30 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 9F6F686E75; Tue, 13 Oct 2020 14:37:30 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 8A9271BF294 for ; Tue, 13 Oct 2020 14:37:29 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 87B4E87358 for ; Tue, 13 Oct 2020 14:37:29 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id WkRni5KDsM7M for ; Tue, 13 Oct 2020 14:37:26 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr1-f67.google.com (mail-wr1-f67.google.com [209.85.221.67]) by fraxinus.osuosl.org (Postfix) with ESMTPS id 82E5C8725A for ; Tue, 13 Oct 2020 14:37:26 +0000 (UTC) Received: by mail-wr1-f67.google.com with SMTP id t9so24345695wrq.11 for ; Tue, 13 Oct 2020 07:37:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MEJXW1h66gnnXFBWTDslq6pV/Re6VUtlRozVuB+rk/E=; b=pTAMcnRkKpvDZeiPOYUDI5Q5FHKUkSbdlBIfBkeNLsZKiOYaBbz7ZBatTj34h2A2J/ y/SZrlDjwZP8L07d/WKoAZ6BefxYlaakGsokyY83UdaEx3Pk0JUK9pEUUkgMac9q/zw4 YneIlIajuV8q772F9TjU99utrIcIB7kcKdeHHin2FSwlprYQG97rHXxoHbwqCpz87rUQ XpZCRxqYWsPJgQduHolD2L+L5cfonlwdkcYzbPBzneRM9MjurqLz6wXGEwa56JyKPytM xCm6Nzh7x6Iza3F4jo6Vw1vOWPMmRXAKK4whpO20rL3LgQoKla4Tje6Et6uRlkU+ospl YH1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=MEJXW1h66gnnXFBWTDslq6pV/Re6VUtlRozVuB+rk/E=; b=ihiF0ztQbjxsG2yUSUkXoitdKMp7Ztzd2BEqHfGCv0LcJ418iZP2MdbLJGvhKX2UKr X3OTCZXj0YBSxmXrhLDrMChCNJq7M5nsq3w6y8eF1xsDlHTbakSEXECXT4C9D7onShig 1+yO0YPX08kgwMrlEIV9DSH9iylGsRdMeaCltxk1pJXR9DaU9CublFSOCanYSl5jYUdI fA7qQWrOhaYBwQ6tXDIkGxGxhIGUtxVli9Ji80nXW4Pih0YOS+EdBNyc6YZv9rbeQzKj cu4tEiQYmgDrHlkEGatAvp7x6BOwtfFBfQsonR+DYTwpa6p6DCq4CjUa3ZdobxmF+O0b Akxg== X-Gm-Message-State: AOAM533QzdBNKn+GJ2fPFeXw/6K57VsGTY4XVhYCcwKuURijI0ve4pjl TMyoBdOLPmSw0s9KKDh1TPh3v/TYNscHYA== X-Google-Smtp-Source: ABdhPJx6yrLms2Ioy5nKlCL5kbKg7QpmsXoNgs7QXabWjBE7yFkTPUnoB1Hqdrz4xaOANakyTKvOLQ== X-Received: by 2002:a5d:54c8:: with SMTP id x8mr28158985wrv.286.1602599843927; Tue, 13 Oct 2020 07:37:23 -0700 (PDT) Received: from localhost.localdomain ([2a01:e0a:283:d2f0:db29:e000:1438:5c98]) by smtp.googlemail.com with ESMTPSA id d2sm19424273wrq.34.2020.10.13.07.37.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Oct 2020 07:37:22 -0700 (PDT) From: David GOUARIN To: buildroot@buildroot.org Date: Tue, 13 Oct 2020 16:37:07 +0200 Message-Id: <20201013143707.11678-2-dgouarin@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201013143707.11678-1-dgouarin@gmail.com> References: <20201013143707.11678-1-dgouarin@gmail.com> MIME-Version: 1.0 Subject: [Buildroot] [PATCH 2/2] package/freeradius-server: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David GOUARIN Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" FreeRADIUS is an open source server which implements a protocol for remote user Authorization, Authentication and Accounting. Signed-off-by: David GOUARIN --- DEVELOPERS | 1 + package/Config.in | 1 + .../0001-host-jlibtool.patch | 17 +++++++++ ...thread-support-while-cross-compiling.patch | 15 ++++++++ package/freeradius-server/Config.in | 20 ++++++++++ .../freeradius-server-config.cache | 4 ++ .../freeradius-server/freeradius-server.hash | 3 ++ .../freeradius-server/freeradius-server.mk | 37 +++++++++++++++++++ 8 files changed, 98 insertions(+) create mode 100644 package/freeradius-server/0001-host-jlibtool.patch create mode 100644 package/freeradius-server/0002-thread-support-while-cross-compiling.patch create mode 100644 package/freeradius-server/Config.in create mode 100644 package/freeradius-server/freeradius-server-config.cache create mode 100644 package/freeradius-server/freeradius-server.hash create mode 100644 package/freeradius-server/freeradius-server.mk diff --git a/DEVELOPERS b/DEVELOPERS index c856d7ad45..ae688a85c4 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -711,6 +711,7 @@ N: David du Colombier <0intro@gmail.com> F: package/x264/ N: David GOUARIN +F: package/freeradius-server/ F: package/librelp/ F: package/libtalloc/ diff --git a/package/Config.in b/package/Config.in index a4d6fe02ae..8e3ce4fe20 100644 --- a/package/Config.in +++ b/package/Config.in @@ -2079,6 +2079,7 @@ menu "Networking applications" source "package/flannel/Config.in" source "package/fmc/Config.in" source "package/fping/Config.in" + source "package/freeradius-server/Config.in" source "package/freeswitch/Config.in" source "package/freeswitch-mod-bcg729/Config.in" source "package/frr/Config.in" diff --git a/package/freeradius-server/0001-host-jlibtool.patch b/package/freeradius-server/0001-host-jlibtool.patch new file mode 100644 index 0000000000..18cebcb4e5 --- /dev/null +++ b/package/freeradius-server/0001-host-jlibtool.patch @@ -0,0 +1,17 @@ +jlibtool.c: while cross compiling, use host CC instead of target CC to build jlibtool + +Signed-off-by: David Gouarin + +--- a/scripts/libtool.mk 2018-10-08 09:22:59.032031858 -0600 ++++ b/scripts/libtool.mk 2018-10-08 15:04:18.406661484 -0600 +@@ -43,8 +43,8 @@ ifeq "${LIBTOOL}" "JLIBTOOL" + # binary! + ${JLIBTOOL}: ${top_makedir}/jlibtool.c + $(Q)mkdir -p $(dir $@) +- $(Q)echo CC jlibtool.c +- $(Q)${CC} $< -o $@ ++ $(Q)echo HOSTCC jlibtool.c ++ $(Q)${HOSTCC} $< -o $@ + + clean: jlibtool_clean + diff --git a/package/freeradius-server/0002-thread-support-while-cross-compiling.patch b/package/freeradius-server/0002-thread-support-while-cross-compiling.patch new file mode 100644 index 0000000000..464bcf9aa6 --- /dev/null +++ b/package/freeradius-server/0002-thread-support-while-cross-compiling.patch @@ -0,0 +1,15 @@ +configure: enable __thread attribute compiler support by default when cross compiling to avoid a bug in some freeradius macros + +Signed-off-by: David Gouarin + +--- a/configure ++++ b/configure +@@ -11309,7 +11309,7 @@ fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support in compiler" >&5 + $as_echo_n "checking for __thread support in compiler... " >&6; } + if test "$cross_compiling" = yes; then : +- have_tls=no ++ have_tls=yes + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ diff --git a/package/freeradius-server/Config.in b/package/freeradius-server/Config.in new file mode 100644 index 0000000000..3c2d9af5da --- /dev/null +++ b/package/freeradius-server/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_FREERADIUS_SERVER + bool "freeradius-server" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_COMPILER_PARANOID_UNSAFE_PATH + select BR2_PACKAGE_LIBTALLOC + select BR2_PACKAGE_PCRE + help + FreeRADIUS is an open source server which implements + a protocol for remote user Authorization, Authentication + and Accounting. + + http://wiki.freeradius.org/ + +comment "freeradius-server needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +comment "freeradius-server needs a glibc toolchain" + depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_COMPILER_PARANOID_UNSAFE_PATH + diff --git a/package/freeradius-server/freeradius-server-config.cache b/package/freeradius-server/freeradius-server-config.cache new file mode 100644 index 0000000000..b0e582afc9 --- /dev/null +++ b/package/freeradius-server/freeradius-server-config.cache @@ -0,0 +1,4 @@ +ax_cv_cc_bounded_attribute=no +ax_cv_cc_builtin_bswap64=yes +ax_cv_cc_builtin_choose_expr=yes +ax_cv_cc_builtin_types_compatible_p=yes diff --git a/package/freeradius-server/freeradius-server.hash b/package/freeradius-server/freeradius-server.hash new file mode 100644 index 0000000000..ba338d8b7f --- /dev/null +++ b/package/freeradius-server/freeradius-server.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 2bf914d471d4409fd72e708e308fa32ca8d01d698c518497a1d4b867d50132ae freeradius-server-3.0.21.tar.gz +sha256 8b9cc1e5d41938be45a368f126a6d1fda03d60a3d622dc75e776be4e90c2d2c6 COPYRIGHT diff --git a/package/freeradius-server/freeradius-server.mk b/package/freeradius-server/freeradius-server.mk new file mode 100644 index 0000000000..d04f453c60 --- /dev/null +++ b/package/freeradius-server/freeradius-server.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# freeradius-server +# +################################################################################ + +FREERADIUS_SERVER_VERSION = 3.0.21 +FREERADIUS_SERVER_SITE = ftp://ftp.freeradius.org/pub/freeradius +FREERADIUS_SERVER_LICENSE = GPL-2.0 +FREERADIUS_SERVER_LICENSE_FILES = COPYRIGHT +FREERADIUS_SERVER_INSTALL_HOST = NO + +FREERADIUS_SERVER_DEPENDENCIES = libtalloc pcre + +ifeq ($(BR2_PACKAGE_HAS_OPENSSL),y) +FREERADIUS_SERVER_DEPENDENCIES += openssl +FREERADIUS_SERVER_CONF_OPTS += --with-openssl +else +FREERADIUS_CONF_OPTS += --without-openssl +endif + +define FREERADIUS_SERVER_CACHE_FOR_CROSS_COMPILE + $(INSTALL) -m 0644 package/freeradius-server/freeradius-server-config.cache $(@D)/freeradius-server-config.cache +endef +FREERADIUS_SERVER_PRE_CONFIGURE_HOOKS += FREERADIUS_SERVER_CACHE_FOR_CROSS_COMPILE + +# --cache-file= : some compiler checks are not supported while cross compiling. +# instead of removing those checks, we use a config.cache file +FREERADIUS_SERVER_CONF_OPTS += \ + --cache-file=freeradius-server-config.cache + +FREERADIUS_SERVER_MAKE_ENV = R=$(TARGET_DIR) TARGET_DIR="" + +# make install does not support parallel build +FREERADIUS_SERVER_MAKE = $(MAKE1) + +$(eval $(autotools-package))