diff options
author | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-09-09 21:56:00 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-09-09 21:57:26 +0300 |
commit | c1d34338068e7d99e34db98597b2d8b3b58e6c2a (patch) | |
tree | 9d67e75edf68185cb9bd927a46accb4da1076174 /meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb | |
parent | 8b5c4203192fdd08369251934d67889367169f44 (diff) | |
download | openbmc-c1d34338068e7d99e34db98597b2d8b3b58e6c2a.tar.xz |
meta-openembedded: subtree update:6a5d6bc9ad..3061ead8cf
Adrian Bunk (2):
gpsd: gpscat no longer uses python-curses in 3.19
dejagnu: Remove, moved to oe-core
Alex Kiernan (1):
zstd: Upgrade 1.4.2 -> 1.4.3
Alistair Francis (2):
python3-twine: Initial commit of 1.13.0
python3-pytest-asyncio: Initial commit of 0.10.0
Andreas Müller (4):
fluidsynth: upgrade 2.0.5 -> 2.0.6
imsettings: upgrade 1.7.3 -> 1.8.1 and rework recipe
xfce4-settings: upgrade 4.14.0 -> 4.14.1
xfce4-screenshooter: upgrade 1.9.5 -> 1.9.6
Andrej Valek (1):
nodejs: 10.16.2 -> 10.16.3
Changqing Li (7):
yail: update UPSTREAM_CHECK_GITTAGREGEX
iscsi-initiator-utils: 2.0.876 -> 2.0.877
postgresql: 11.4 -> 11.5
satyr: upgrade 0.27 -> 0.28
freeradius: upgrade 3.0.17 -> 3.0.19
drbd-utils: switch to add patch from change source in do_configure
xfsdump: support usrmerge
Gianfranco Costamagna (2):
grpc: don't use unexisting gettid function on glibc 2.29, it has been implemented only in 2.30
grpc: Change gettid patch with the upstream merged version
Hongxu Jia (1):
lvm2: fix blkdeactivate failed with command not found
Kai Kang (4):
lmbench: update script lmbench-run
mariadb: fix file conflictions when multilib enabled
php: sync with apache2's change
apache2: fix multilib file conflicts
Khem Raj (11):
iperf2: Fix build with latest libc++
iscsi-initiator-utils: Inherit pkgconfig and override PKG_CONFIG
klibc: Fix build with 5.2+ kernel headers
samba: Fix configure tests to work with clang
ltrace: Fix build on mips
python-jinja2: Make asyncio specific to python3 module alone
python3-cmd2: Add to blacklist
nodejs: Mark incompatible with risc-v
drbd,netkit-rusers: Blacklist packages
vboxguestdrivers,can-isotp,bpftool: Add to Blacklist
strongswan: Fix do_patch fuzz
Li Zhou (1):
tipcutils: ptts: Set recv buffer size to max to receive as many packets as possible
Martin Jansa (1):
python3-pyatspi: restrict with GTK2DISTROFEATURES
Oleksandr Kravchuk (1):
nano: update to 4.4
Qi.Chen@windriver.com (2):
python-hyperlink: rdepend on python-idna
python-jinja2: rdepend on asyncio module
Robert Yang (1):
netcf: Fix do_configure failed when multilib
Scott Ellis (1):
wireguard: Upgrade 20190702 to 20190905
Yuan Chao (10):
strongswan: upgrade 5.8.0 -> 5.8.1
php: upgrade 7.3.8 -> 7.3.9
libtalloc: upgrade 2.2.0 -> 2.3.0
numactl: upgrade 2.0.12 -> 2.0.13
uhubctl: upgrade 2.0.0 -> 2.1.0
python-pytest: upgrade 5.1.1 -> 5.1.2
python-stevedore: upgrade 1.30.1 -> 1.31.0
python-dbus: upgrade 1.2.8 -> 1.2.10
python-pbr: upgrade 5.4.2 -> 5.4.3
python-pyasn1: upgrade 0.4.6 -> 0.4.7
Zang Ruochen (3):
python-paste: upgrade 3.1.1 -> 3.2.0
libnet-dns-perl: upgrade 1.20 -> 1.21
hwdata: upgrade 0.326 -> 0.327
Zheng Ruoqin (1):
python-cmd2: Add python3 version
aehs29@gmail.com (1):
remmina: Add recipe for the remmina remote desktop client
Change-Id: I11f4319f53655ab389fcb7a0ce4f22b71f9a8da2
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb')
-rw-r--r-- | meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb | 230 |
1 files changed, 230 insertions, 0 deletions
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb new file mode 100644 index 000000000..ded1a67ff --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.19.bb @@ -0,0 +1,230 @@ +DESCRIPTION = "FreeRADIUS is an Internet authentication daemon, which implements the RADIUS \ +protocol, as defined in RFC 2865 (and others). It allows Network Access \ +Servers (NAS boxes) to perform authentication for dial-up users. There are \ +also RADIUS clients available for Web servers, firewalls, Unix logins, and \ +more. Using RADIUS allows authentication and authorization for a network to \ +be centralized, and minimizes the amount of re-configuration which has to be \ +done when adding or deleting new users." + +SUMMARY = "High-performance and highly configurable RADIUS server" +HOMEPAGE = "http://www.freeradius.org/" +SECTION = "System/Servers" +LICENSE = "GPLv2 & LGPLv2+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a" +DEPENDS = "openssl-native openssl libidn libtool libpcap libtalloc" + +SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x; \ + file://freeradius \ + file://volatiles.58_radiusd \ + file://freeradius-enble-user-in-conf.patch \ + file://freeradius-configure.ac-allow-cross-compilation.patch \ + file://freeradius-libtool-detection.patch \ + file://freeradius-configure.ac-add-option-for-libcap.patch \ + file://freeradius-avoid-searching-host-dirs.patch \ + file://freeradius-rlm_python-add-PY_INC_DIR.patch \ + file://freeradius-libtool-do-not-use-jlibtool.patch \ + file://freeradius-fix-quoting-for-BUILT_WITH.patch \ + file://freeradius-fix-error-for-expansion-of-macro.patch \ + file://0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch \ + file://radiusd.service \ + file://radiusd-volatiles.conf \ +" + +SRCREV = "ab4c767099f263a7cd4109bcdca80ee74210a769" + +PARALLEL_MAKE = "" + +S = "${WORKDIR}/git" + +LDFLAGS_append_powerpc = " -latomic" +LDFLAGS_append_mipsarch = " -latomic" + +EXTRA_OECONF = " --enable-strict-dependencies \ + --with-docdir=${docdir}/freeradius-${PV} \ + --with-openssl-includes=${STAGING_INCDIR} \ + --with-openssl-libraries=${STAGING_LIBDIR} \ + --without-rlm_ippool \ + --without-rlm_cache_memcached \ + --without-rlm_counter \ + --without-rlm_couchbase \ + --without-rlm_dbm \ + --without-rlm_eap_tnc \ + --without-rlm_eap_ikev2 \ + --without-rlm_opendirectory \ + --without-rlm_redis \ + --without-rlm_rediswho \ + --without-rlm_sql_db2 \ + --without-rlm_sql_firebird \ + --without-rlm_sql_freetds \ + --without-rlm_sql_iodbc \ + --without-rlm_sql_oracle \ + --without-rlm_sql_sybase \ + --without-rlm_sqlhpwippool \ + --without-rlm_securid \ + --without-rlm_unbound \ + ac_cv_path_PERL=${bindir}/perl \ + ax_cv_cc_builtin_choose_expr=no \ + ax_cv_cc_builtin_types_compatible_p=no \ + ax_cv_cc_builtin_bswap64=no \ + ax_cv_cc_bounded_attribute=no \ +" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \ + pcre libcap \ + openssl rlm-eap-fast rlm-eap-pwd \ +" + +PACKAGECONFIG[krb5] = "--with-rlm_krb5,--without-rlm_krb5,krb5" +PACKAGECONFIG[pam] = "--with-rlm_pam,--without-rlm_pam,libpam" +PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap" +PACKAGECONFIG[ldap] = "--with-rlm_ldap,--without-rlm_ldap,openldap" +PACKAGECONFIG[mysql] = "--with-rlm_sql_mysql,--without-rlm_sql_mysql,mysql5" +PACKAGECONFIG[sqlite] = "--with-rlm_sql_sqlite,--without-rlm_sql_sqlite,sqlite3" +PACKAGECONFIG[unixodbc] = "--with-rlm_sql_unixodbc,--without-rlm_sql_unixodbc,unixodbc" +PACKAGECONFIG[postgresql] = "--with-rlm_sql_postgresql,--without-rlm_sql_postgresql,postgresql" +PACKAGECONFIG[pcre] = "--with-pcre,--without-pcre,libpcre" +PACKAGECONFIG[perl] = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl --with-rlm_perl,--without-rlm_perl,perl-native perl,perl" +PACKAGECONFIG[python] = "--with-rlm_python --with-rlm-python-bin=${STAGING_BINDIR_NATIVE}/python-native/python --with-rlm-python-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python,python-native python" +PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest,curl json-c" +PACKAGECONFIG[ruby] = "--with-rlm_ruby,--without-rlm_ruby,ruby" +PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl" +PACKAGECONFIG[rlm-eap-fast] = "--with-rlm_eap_fast, --without-rlm_eap_fast" +PACKAGECONFIG[rlm-eap-pwd] = "--with-rlm_eap_pwd, --without-rlm_eap_pwd" + +inherit useradd autotools-brokensep update-rc.d systemd + +# This is not a cpan or python based package, but it needs some definitions +# from cpan-base and python-dir bbclasses for building rlm_perl and rlm_python +# correctly. +inherit cpan-base python-dir + +# The modules subdirs also need to be processed by autoreconf. Use autogen.sh +# in order to handle the subdirs correctly. +do_configure () { + ./autogen.sh + + # the configure of rlm_perl needs this to get correct + # mod_cflags and mod_ldflags + if ${@bb.utils.contains('PACKAGECONFIG', 'perl', 'true', 'false', d)}; then + export PERL5LIB="${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}" + fi + + oe_runconf + + # we don't need dhcpclient + sed -i -e 's/dhcpclient.mk//' ${S}/src/modules/proto_dhcp/all.mk +} + +INITSCRIPT_NAME = "radiusd" + +SYSTEMD_SERVICE_${PN} = "radiusd.service" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "--system --no-create-home --shell /bin/false --user-group radiusd" + +do_install() { + rm -rf ${D} + mkdir -p ${D}/${sysconfdir}/logrotate.d + mkdir -p ${D}/${sysconfdir}/pam.d + mkdir -p ${D}/${sysconfdir}/init.d + mkdir -p ${D}/${localstatedir}/lib/radiusd + mkdir -p ${D}${sysconfdir}/default/volatiles + + export LD_LIBRARY_PATH=${D}/${libdir} + oe_runmake install R=${D} INSTALLSTRIP="" + + # remove unsupported config files + rm -f ${D}/${sysconfdir}/raddb/experimental.conf + + # remove scripts that required Perl(DBI) + rm -rf ${D}/${bindir}/radsqlrelay + + cp -f ${WORKDIR}/freeradius ${D}/etc/init.d/radiusd + rm -f ${D}/${sbindir}/rc.radiusd + chmod +x ${D}/${sysconfdir}/init.d/radiusd + rm -rf ${D}/${localstatedir}/run/ + install -m 0644 ${WORKDIR}/volatiles.58_radiusd ${D}${sysconfdir}/default/volatiles/58_radiusd + + chown -R radiusd:radiusd ${D}/${sysconfdir}/raddb/ + chown -R radiusd:radiusd ${D}/${localstatedir}/lib/radiusd + + # For systemd + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/radiusd.service ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@SBINDIR@,${sbindir},g' \ + -e 's,@STATEDIR@,${localstatedir},g' \ + -e 's,@SYSCONFDIR@,${sysconfdir},g' \ + ${D}${systemd_unitdir}/system/radiusd.service + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d/ + install -m 0644 ${WORKDIR}/radiusd-volatiles.conf ${D}${sysconfdir}/tmpfiles.d/ + fi +} + +# This is only needed when we install/update on a running target. +# +pkg_postinst_${PN} () { + if [ -z "$D" ]; then + if command -v systemd-tmpfiles >/dev/null; then + # create /var/log/radius, /var/run/radiusd + systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/radiusd-volatiles.conf + elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then + ${sysconfdir}/init.d/populate-volatile.sh update + fi + + # Fix ownership for /etc/raddb/*, /var/lib/radiusd + chown -R radiusd:radiusd ${sysconfdir}/raddb + chown -R radiusd:radiusd ${localstatedir}/lib/radiusd + fi +} + +# We really need the symlink :( +INSANE_SKIP_${PN} = "dev-so" +INSANE_SKIP_${PN}-krb5 = "dev-so" +INSANE_SKIP_${PN}-ldap = "dev-so" +INSANE_SKIP_${PN}-mysql = "dev-so" +INSANE_SKIP_${PN}-perl = "dev-so" +INSANE_SKIP_${PN}-postgresql = "dev-so" +INSANE_SKIP_${PN}-python = "dev-so" +INSANE_SKIP_${PN}-unixodbc = "dev-so" + +PACKAGES =+ "${PN}-utils ${PN}-ldap ${PN}-krb5 ${PN}-perl \ + ${PN}-python ${PN}-mysql ${PN}-postgresql ${PN}-unixodbc" + +FILES_${PN}-utils = "${bindir}/*" + +FILES_${PN}-ldap = "${libdir}/rlm_ldap.so* \ + ${sysconfdir}/raddb/mods-available/ldap \ +" + +FILES_${PN}-krb5 = "${libdir}/rlm_krb5.so* \ + ${sysconfdir}/raddb/mods-available/krb5 \ +" + +FILES_${PN}-perl = "${libdir}/rlm_perl.so* \ + ${sysconfdir}/raddb/mods-config/perl \ + ${sysconfdir}/raddb/mods-available/perl \ +" + +FILES_${PN}-python = "${libdir}/rlm_python.so* \ + ${sysconfdir}/raddb/mods-config/python \ + ${sysconfdir}/raddb/mods-available/python \ +" + +FILES_${PN}-mysql = "${libdir}/rlm_sql_mysql.so* \ + ${sysconfdir}/raddb/mods-config/sql/*/mysql \ + ${sysconfdir}/raddb/mods-available/sql \ +" + +FILES_${PN}-postgresql = "${libdir}/rlm_sql_postgresql.so* \ + ${sysconfdir}/raddb/mods-config/sql/*/postgresql \ +" + +FILES_${PN}-unixodbc = "${libdir}/rlm_sql_unixodbc.so*" + +FILES_${PN} =+ "${libdir}/rlm_*.so* ${libdir}/proto_*so*" + +RDEPENDS_${PN} += "perl" +RDEPENDS_${PN}-utils = "${PN} perl" |