nixpkgs-suyu/pkgs/servers/http/apache-httpd/2.2.nix
Vladimír Čunát bf414c9d4f Merge 'staging' into closure-size
- there were many easy merge conflicts
- cc-wrapper needed nontrivial changes

Many other problems might've been created by interaction of the branches,
but stdenv and a few other packages build fine now.
2015-04-18 11:22:20 +02:00

78 lines
2.2 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ stdenv, fetchurl, pkgconfig, openssl, perl, zlib
, sslSupport, proxySupport ? true
, apr, aprutil, pcre
, ldapSupport ? true, openldap
, # Multi-processing module to use. This is built into the server and
# cannot be selected at runtime.
mpm ? "prefork"
}:
assert sslSupport -> openssl != null;
assert ldapSupport -> aprutil.ldapSupport && openldap != null;
assert mpm == "prefork" || mpm == "worker" || mpm == "event";
stdenv.mkDerivation rec {
version = "2.2.29";
name = "apache-httpd-${version}";
src = fetchurl {
url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
sha1 = "1d6a8fbc1391d358cc6fe430edc16222b97258d5";
};
outputs = [ "dev" "out" "doc" ];
buildInputs = [ pkgconfig perl apr aprutil pcre zlib ] ++
stdenv.lib.optional sslSupport openssl;
# An apr-util header file includes an apr header file
# through #include "" (quotes)
# passing simply CFLAGS did not help, then I go by NIX_CFLAGS_COMPILE
NIX_CFLAGS_COMPILE = "-iquote ${apr}/include/apr-1";
# Required for pthread_cancel.
NIX_LDFLAGS = (if stdenv.isDarwin then "" else "-lgcc_s");
configureFlags = ''
--with-z=${zlib}
--with-pcre=${pcre}
--enable-mods-shared=all
--enable-authn-alias
${if proxySupport then "--enable-proxy" else ""}
${if sslSupport then "--enable-ssl --with-ssl=${openssl}" else ""}
${if ldapSupport then "--enable-ldap --enable-authnz-ldap" else ""}
--with-mpm=${mpm}
--enable-cache
--enable-disk-cache
--enable-file-cache
--enable-mem-cache
'';
preConfigure =
''
makeFlagsArray+=("installbuilddir=$dev/share/build")
'';
enableParallelBuilding = true;
stripDebugList = "lib modules bin";
postInstall = ''
mkdir -p $doc/share/doc/httpd
mv $out/manual $doc/share/doc/httpd
mkdir -p $out/share # FIXME, hack
'';
passthru = {
inherit apr aprutil sslSupport proxySupport;
};
meta = {
description = "Apache HTTPD, the world's most popular web server";
branch = "2.2";
homepage = http://httpd.apache.org/;
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
maintainers = with stdenv.lib.maintainers; [ eelco simons lovek323 ];
};
}