Merge pull request #15677 from womfoo/mod_auth_mellon

mod_auth_mellon: init at 0.12.0 and dependency lasso: init at 2.5.1
This commit is contained in:
zimbatm 2016-06-12 23:38:57 +01:00 committed by GitHub
commit a95229a963
5 changed files with 111 additions and 0 deletions

View File

@ -337,6 +337,7 @@ let
allModules =
concatMap (svc: svc.extraModulesPre) allSubservices
++ map (name: {inherit name; path = "${httpd}/modules/mod_${name}.so";}) apacheModules
++ optional mainCfg.enableMellon { name = "auth_mellon"; path = "${pkgs.apacheHttpdPackages.mod_auth_mellon}/modules/mod_auth_mellon.so"; }
++ optional enablePHP { name = "php5"; path = "${php}/modules/libphp5.so"; }
++ concatMap (svc: svc.extraModules) allSubservices
++ extraForeignModules;
@ -541,6 +542,12 @@ in
'';
};
enableMellon = mkOption {
type = types.bool;
default = false;
description = "Whether to enable the mod_auth_mellon module.";
};
enablePHP = mkOption {
type = types.bool;
default = false;
@ -650,6 +657,7 @@ in
environment =
optionalAttrs enablePHP { PHPRC = phpIni; }
// optionalAttrs mainCfg.enableMellon { LD_LIBRARY_PATH = "${pkgs.xmlsec}/lib"; }
// (listToAttrs (concatMap (svc: svc.globalEnvVars) allSubservices));
preStart =

View File

@ -0,0 +1,31 @@
{ stdenv, autoconf, automake, autoreconfHook, fetchurl, glib, gobjectIntrospection, gtk_doc, libtool, libxml2, libxslt, openssl, pkgconfig, python27Packages, xmlsec, zlib }:
stdenv.mkDerivation rec {
name = "lasso-${version}";
version = "2.5.1";
src = fetchurl {
url = "https://dev.entrouvert.org/lasso/lasso-${version}.tar.gz";
sha256 = "0n10zjjw84303c9vfy9bqhyzdl01459akbwy86cbgphd826mq45y";
};
buildInputs = [ autoconf automake autoreconfHook glib gobjectIntrospection gtk_doc libtool libxml2 libxslt openssl pkgconfig python27Packages.six xmlsec zlib ];
configurePhase = ''
./configure --with-pkg-config=$PKG_CONFIG_PATH \
--disable-python \
--disable-perl \
--prefix=$out
'';
meta = with stdenv.lib; {
homepage = http://lasso.entrouvert.org/;
description = "Liberty Alliance Single Sign-On library";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ womfoo ];
};
}

View File

@ -0,0 +1,38 @@
{ stdenv, apacheHttpd, autoconf, automake, autoreconfHook, curl, fetchFromGitHub, glib, lasso, libtool, libxml2, libxslt, openssl, pkgconfig, xmlsec }:
stdenv.mkDerivation rec {
name = "mod_auth_mellon-${version}";
version = "0.12.0";
src = fetchFromGitHub {
owner = "UNINETT";
repo = "mod_auth_mellon";
rev = "v${version}";
sha256 = "1p6v6vgrfvgvc5y2ygqyyxi0klpm3nxaw3fg35zmpmw663w8skqn";
};
patches = [
./fixdeps.patch
];
buildInputs = [ apacheHttpd autoconf autoreconfHook automake curl glib lasso libtool libxml2 libxslt openssl pkgconfig xmlsec ];
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs" "--exec-prefix=$out"];
installPhase = ''
mkdir -p $out/bin
cp ./mellon_create_metadata.sh $out/bin
mkdir -p $out/modules
cp ./.libs/mod_auth_mellon.so $out/modules
'';
meta = with stdenv.lib; {
homepage = https://github.com/UNINETT/mod_auth_mellon;
description = "An Apache module with a simple SAML 2.0 service provider";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ womfoo ];
};
}

View File

@ -0,0 +1,30 @@
--- a/configure.ac
+++ b/configure.ac
@@ -74,6 +74,16 @@ PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.12])
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
+#include <libxml/uri.h>
+PKG_CHECK_MODULES(LIBXML2, libxml-2.0)
+AC_SUBST(LIBXML2_CFLAGS)
+AC_SUBST(LIBXML2_LIBS)
+
+#include <xmlsec/xmlenc.h>
+PKG_CHECK_MODULES(XMLSEC, xmlsec1-openssl)
+AC_SUBST(XMLSEC_CFLAGS)
+AC_SUBST(XMLSEC_LIBS)
+
# Test to see if we can include lasso/utils.h
# AC_CHECK_HEADER won't work correctly unless we specifiy the include directories
# found in the LASSO_CFLAGS. Save and restore CFLAGS and CPPFLAGS.
--- a/Makefile.in
+++ b/Makefile.in
@@ -25,7 +25,7 @@
all: mod_auth_mellon.la
mod_auth_mellon.la: $(SRC) auth_mellon.h auth_mellon_compat.h
- @APXS2@ -Wc,"-std=c99 @OPENSSL_CFLAGS@ @LASSO_CFLAGS@ @CURL_CFLAGS@ @GLIB_CFLAGS@ @CFLAGS@" -Wl,"@OPENSSL_LIBS@ @LASSO_LIBS@ @CURL_LIBS@ @GLIB_LIBS@" -Wc,-Wall -Wc,-g -c $(SRC)
+ @APXS2@ -Wc,"-std=c99 @OPENSSL_CFLAGS@ @LASSO_CFLAGS@ @CURL_CFLAGS@ @GLIB_CFLAGS@ @CFLAGS@ @LIBXML2_CFLAGS@ @XMLSEC_CFLAGS@ @CFLAGS@" -Wl,"@OPENSSL_LIBS@ @LASSO_LIBS@ @CURL_LIBS@ @GLIB_LIBS@ @LIBXML2_LIBS@ @XMLSEC_LIBS@" -Wc,-Wall -Wc,-g -c $(SRC)
# Building configure (for distribution)

View File

@ -7506,6 +7506,8 @@ in
};
libkrb5 = self.krb5Full.override { type = "lib"; };
lasso = callPackage ../development/libraries/lasso { };
LASzip = callPackage ../development/libraries/LASzip { };
lcms = self.lcms1;
@ -9800,6 +9802,8 @@ in
apacheHttpdPackagesFor = apacheHttpd: self: let callPackage = newScope self; in {
inherit apacheHttpd;
mod_auth_mellon = callPackage ../servers/http/apache-modules/mod_auth_mellon { };
mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { };
mod_evasive = callPackage ../servers/http/apache-modules/mod_evasive { };