libxml2,libxslt: split into multiple outputs

Fixed all references, hopefully.
libxml2Python is slightly hacky now, but it seems to work.
This commit is contained in:
Vladimír Čunát 2015-10-05 13:23:01 +02:00
parent f8c211fd2b
commit 38313d5d87
32 changed files with 83 additions and 79 deletions

View File

@ -43,7 +43,7 @@ let
echo "for hints about the offending path)." echo "for hints about the offending path)."
exit 1 exit 1
fi fi
${libxslt}/bin/xsltproc \ ${libxslt.bin}/bin/xsltproc \
--stringparam revision '${revision}' \ --stringparam revision '${revision}' \
-o $out ${./options-to-docbook.xsl} $optionsXML -o $out ${./options-to-docbook.xsl} $optionsXML
''; '';

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
}; };
patchPhase = '' patchPhase = ''
sed -e "s#xsltproc#${libxslt}/bin/xsltproc#" -i Makefile sed -e "s#xsltproc#${libxslt.bin}/bin/xsltproc#" -i Makefile
sed -e "s#PREFIX = /usr/local#PREFIX = $out#" -i Makefile sed -e "s#PREFIX = /usr/local#PREFIX = $out#" -i Makefile
''; '';

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
''; '';
NIX_CFLAGS_COMPILE = NIX_CFLAGS_COMPILE =
"-I${libxml2}/include/libxml2 -I${json-c-0-11}/include/json-c"; "-I${libxml2.dev}/include/libxml2 -I${json-c-0-11}/include/json-c";
NIX_LDFLAGS = "-lsqlite3 -lcurl -lxml2 -lstfl -ljson"; NIX_LDFLAGS = "-lsqlite3 -lcurl -lxml2 -lstfl -ljson";

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation {
sha256 = "189qndkfq9kgv3qi3wx8ivla4j8fxr4iv7c8y9rjrjaz8jwdkn5x"; sha256 = "189qndkfq9kgv3qi3wx8ivla4j8fxr4iv7c8y9rjrjaz8jwdkn5x";
}; };
NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${libxml2}/include/libxml2 -I${sqlcipher}/include/sqlcipher"; NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/glib-2.0 -I${glib.dev}/lib/glib-2.0/include -I${libxml2.dev}/include/libxml2 -I${sqlcipher}/include/sqlcipher";
patchPhase = '' patchPhase = ''
# Fix build error # Fix build error

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation {
sha256 = "0l2n4pr1hq66q6qa073hrdx3s3d7iw54z8ay1zy82zhk2rwhsavp"; sha256 = "0l2n4pr1hq66q6qa073hrdx3s3d7iw54z8ay1zy82zhk2rwhsavp";
}; };
NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${libxml2}/include/libxml2"; NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/glib-2.0 -I${glib.dev}/lib/glib-2.0/include -I${libxml2.dev}/include/libxml2";
patchPhase = '' patchPhase = ''
sed -i 's/UpnpString_get_String(es_event->PublisherUrl)/es_event->PublisherUrl/' \ sed -i 's/UpnpString_get_String(es_event->PublisherUrl)/es_event->PublisherUrl/' \

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
substituteInPlace $f --replace grep ${gnugrep}/bin/grep substituteInPlace $f --replace grep ${gnugrep}/bin/grep
substituteInPlace $f --replace groff ${groff}/bin/groff substituteInPlace $f --replace groff ${groff}/bin/groff
substituteInPlace $f --replace gunzip ${gzip}/bin/gunzip substituteInPlace $f --replace gunzip ${gzip}/bin/gunzip
substituteInPlace $f --replace iconv ${libiconv}/bin/iconv substituteInPlace $f --replace iconv ${libiconv.bin}/bin/iconv
substituteInPlace $f --replace lyx ${lyx}/bin/lyx substituteInPlace $f --replace lyx ${lyx}/bin/lyx
substituteInPlace $f --replace pdftotext ${xpdf}/bin/pdftotext substituteInPlace $f --replace pdftotext ${xpdf}/bin/pdftotext
substituteInPlace $f --replace pstotext ${ghostscript}/bin/ps2ascii substituteInPlace $f --replace pstotext ${ghostscript}/bin/ps2ascii
@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
substituteInPlace $f --replace tar ${gnutar}/bin/tar substituteInPlace $f --replace tar ${gnutar}/bin/tar
substituteInPlace $f --replace unzip ${unzip}/bin/unzip substituteInPlace $f --replace unzip ${unzip}/bin/unzip
substituteInPlace $f --replace xls2csv ${catdoc}/bin/xls2csv substituteInPlace $f --replace xls2csv ${catdoc}/bin/xls2csv
substituteInPlace $f --replace xsltproc ${libxslt}/bin/xsltproc substituteInPlace $f --replace xsltproc ${libxslt.bin}/bin/xsltproc
substituteInPlace $f --replace unrtf ${unrtf}/bin/unrtf substituteInPlace $f --replace unrtf ${unrtf}/bin/unrtf
substituteInPlace $f --replace untex ${untex}/bin/untex substituteInPlace $f --replace untex ${untex}/bin/untex
substituteInPlace $f --replace wpd2html ${libwpd}/bin/wpd2html substituteInPlace $f --replace wpd2html ${libwpd}/bin/wpd2html

View File

@ -32,8 +32,8 @@ in stdenv.mkDerivation rec {
bundle config --local build.nokogiri --use-system-libraries \ bundle config --local build.nokogiri --use-system-libraries \
--with-iconv-dir=${libiconv} \ --with-iconv-dir=${libiconv} \
--with-xslt-dir=${libxslt} \ --with-xslt-dir=${libxslt.out} \
--with-xml2-dir=${libxml2} \ --with-xml2-dir=${libxml2.out} \
--with-pkg-config \ --with-pkg-config \
--with-pg-config=${postgresql}/bin/pg_config --with-pg-config=${postgresql}/bin/pg_config

View File

@ -67,7 +67,7 @@ let
libxml2 = { libxml2 = {
configureFlags = [ configureFlags = [
"--with-libxml-dir=${libxml2}" "--with-libxml-dir=${libxml2.dev}"
]; ];
buildInputs = [ libxml2 ]; buildInputs = [ libxml2 ];
}; };

View File

@ -63,12 +63,12 @@ in
buildFlags = [ buildFlags = [
"--use-system-libraries" "--use-system-libraries"
"--with-zlib-dir=${zlib}" "--with-zlib-dir=${zlib}"
"--with-xml2-lib=${libxml2}/lib" "--with-xml2-lib=${libxml2.out}/lib"
"--with-xml2-include=${libxml2}/include/libxml2" "--with-xml2-include=${libxml2.dev}/include/libxml2"
"--with-xslt-lib=${libxslt}/lib" "--with-xslt-lib=${libxslt.out}/lib"
"--with-xslt-include=${libxslt}/include" "--with-xslt-include=${libxslt.dev}/include"
"--with-exslt-lib=${libxslt}/lib" "--with-exslt-lib=${libxslt.out}/lib"
"--with-exslt-include=${libxslt}/include" "--with-exslt-include=${libxslt.dev}/include"
] ++ lib.optional stdenv.isDarwin "--with-iconv-dir=${libiconv}"; ] ++ lib.optional stdenv.isDarwin "--with-iconv-dir=${libiconv}";
buildInputs = lib.optional stdenv.isDarwin darwin.libobjc; buildInputs = lib.optional stdenv.isDarwin darwin.libobjc;
}; };

View File

@ -82,8 +82,8 @@ in
nokogiri = { nokogiri = {
buildInputs = [ libxml2 ]; buildInputs = [ libxml2 ];
buildFlags = buildFlags =
[ "--with-xml2-dir=${libxml2} --with-xml2-include=${libxml2}/include/libxml2" [ "--with-xml2-dir=${libxml2.out} --with-xml2-include=${libxml2.dev}/include/libxml2"
"--with-xslt-dir=${libxslt} --use-system-libraries" "--with-xslt-dir=${libxslt.out} --use-system-libraries"
libiconv libiconv
]; ];
}; };

View File

@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
cd "$out/etc/fonts" cd "$out/etc/fonts"
rm conf.d/{50-user,51-local}.conf rm conf.d/{50-user,51-local}.conf
"${libxslt}/bin/xsltproc" --stringparam fontDirectories "${fontbhttf}" \ "${libxslt.bin}/bin/xsltproc" --stringparam fontDirectories "${fontbhttf}" \
--stringparam fontconfig "$out" \ --stringparam fontconfig "$out" \
--stringparam fontconfigConfigVersion "${configVersion}" \ --stringparam fontconfigConfigVersion "${configVersion}" \
--path $out/share/xml/fontconfig \ --path $out/share/xml/fontconfig \

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
ln -sv ${libsoup}/include/*/libsoup $out/include ln -sv ${libsoup}/include/*/libsoup $out/include
ln -sv ${libxml2}/include/*/libxml $out/include ln -sv ${libxml2.dev}/include/*/libxml $out/include
ln -sv ${gssdp}/include/*/libgssdp $out/include ln -sv ${gssdp}/include/*/libgssdp $out/include
''; '';

View File

@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
configureFlags = "--disable-appliance --disable-daemon"; configureFlags = "--disable-appliance --disable-daemon";
patches = [ ./libguestfs-syms.patch ]; patches = [ ./libguestfs-syms.patch ];
NIX_CFLAGS_COMPILE="-I${libxml2}/include/libxml2/"; NIX_CFLAGS_COMPILE="-I${libxml2.dev}/include/libxml2/";
preConfigure = '' preConfigure = ''
AUTOPOINT=true LIBTOOLIZE=true autoreconf --verbose --install AUTOPOINT=true LIBTOOLIZE=true autoreconf --verbose --install

View File

@ -1,14 +1,11 @@
{ stdenv, fetchurl, zlib, xz, python ? null, pythonSupport ? true, findXMLCatalogs }: { stdenv, fetchurl, zlib, xz, python, findXMLCatalogs }:
assert pythonSupport -> python != null;
#TODO: share most stuff between python and non-python builds, perhaps via multiple-output
let let
version = "2.9.2"; version = "2.9.2";
inherit (stdenv.lib) optional;
in in
stdenv.mkDerivation (rec { stdenv.mkDerivation rec {
name = "libxml2-${version}"; name = "libxml2-${version}";
src = fetchurl { src = fetchurl {
@ -16,20 +13,32 @@ stdenv.mkDerivation (rec {
sha256 = "1g6mf03xcabmk5ing1lwqmasr803616gb2xhn7pll10x2l5w6y2i"; sha256 = "1g6mf03xcabmk5ing1lwqmasr803616gb2xhn7pll10x2l5w6y2i";
}; };
outputs = [ "out" "doc" ]; outputs = [ "dev" "out" "bin" "doc" "py" ];
propagatedOutputs = "out bin py";
buildInputs = stdenv.lib.optional pythonSupport python buildInputs = [ python ]
# Libxml2 has an optional dependency on liblzma. However, on impure # Libxml2 has an optional dependency on liblzma. However, on impure
# platforms, it may end up using that from /usr/lib, and thus lack a # platforms, it may end up using that from /usr/lib, and thus lack a
# RUNPATH for that, leading to undefined references for its users. # RUNPATH for that, leading to undefined references for its users.
++ stdenv.lib.optional stdenv.isFreeBSD xz; ++ optional stdenv.isFreeBSD xz;
propagatedBuildInputs = [ zlib findXMLCatalogs ]; propagatedBuildInputs = [ zlib findXMLCatalogs ];
passthru = { inherit pythonSupport version; }; configureFlags = "--with-python=${python}";
enableParallelBuilding = true; enableParallelBuilding = true;
preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$py"'';
installFlags = ''pythondir="$(py)/lib/${python.libPrefix}/site-packages"'';
postFixup = ''
_moveToOutput bin/xml2-config "$dev"
_moveToOutput lib/xml2Conf.sh "$dev"
_moveToOutput share/man/man1 "$bin"
'';
passthru = { inherit version; pythonSupport = true; };
meta = { meta = {
homepage = http://xmlsoft.org/; homepage = http://xmlsoft.org/;
description = "An XML parsing library for C"; description = "An XML parsing library for C";
@ -37,15 +46,5 @@ stdenv.mkDerivation (rec {
platforms = stdenv.lib.platforms.unix; platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.eelco ]; maintainers = [ stdenv.lib.maintainers.eelco ];
}; };
}
} // stdenv.lib.optionalAttrs pythonSupport {
configureFlags = "--with-python=${python}";
# this is a pair of ugly hacks to make python stuff install into the right place
preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$out"'';
installFlags = ''pythondir="$(out)/lib/${python.libPrefix}/site-packages"'';
} // stdenv.lib.optionalAttrs (!pythonSupport) {
configureFlags = "--with-python=no"; # otherwise build impurity bites us
})

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "13029baw9kkyjgr7q3jccw2mz38amq7mmpr5p3bh775qawd1bisz"; sha256 = "13029baw9kkyjgr7q3jccw2mz38amq7mmpr5p3bh775qawd1bisz";
}; };
outputs = [ "out" "doc" ]; outputs = [ "dev" "out" "bin" "doc" ];
buildInputs = [ libxml2 ]; buildInputs = [ libxml2 ];
@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ]; patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ];
configureFlags = [ configureFlags = [
"--with-libxml-prefix=${libxml2}"
"--without-python" "--without-python"
"--without-crypto" "--without-crypto"
"--without-debug" "--without-debug"
@ -25,11 +24,17 @@ stdenv.mkDerivation rec {
"--without-debugger" "--without-debugger"
]; ];
meta = { postFixup = ''
_moveToOutput bin/xslt-config "$dev"
_moveToOutput lib/xsltConf.sh "$dev"
_moveToOutput share/man/man1 "$bin"
'';
meta = with stdenv.lib; {
homepage = http://xmlsoft.org/XSLT/; homepage = http://xmlsoft.org/XSLT/;
description = "A C library and tools to do XSL transformations"; description = "A C library and tools to do XSL transformations";
license = "bsd"; license = "bsd";
platforms = stdenv.lib.platforms.unix; platforms = platforms.unix;
maintainers = [ stdenv.lib.maintainers.eelco ]; maintainers = [ maintainers.eelco ];
}; };
} }

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
substituteInPlace CMakeLists.txt \ substituteInPlace CMakeLists.txt \
--replace "tidy/tidy.h" "tidy.h" \ --replace "tidy/tidy.h" "tidy.h" \
--replace "/usr/include/tidy" "${libtidy}/include" \ --replace "/usr/include/tidy" "${libtidy}/include" \
--replace "/usr/include/libxml2" "${libxml2}/include/libxml2" \ --replace "/usr/include/libxml2" "${libxml2.dev}/include/libxml2" \
''; '';
cmakeFlags = [ cmakeFlags = [

View File

@ -16,8 +16,8 @@ stdenv.mkDerivation {
preBuild = '' preBuild = ''
cp Makefile.linux Makefile cp Makefile.linux Makefile
sed -i 's|/usr/include/libxml2|${libxml2}/include/libxml2|' Makefile sed -i 's|/usr/include/libxml2|${libxml2.dev}/include/libxml2|' Makefile
sed -i 's|-lxml2|-lxml2 -L${libxml2}/lib|' Makefile sed -i 's|-lxml2|-lxml2 -L${libxml2.out}/lib|' Makefile
sed -i 's|XPDF = xpdf_3.01|XPDF = ${libxpdf}/lib|' Makefile sed -i 's|XPDF = xpdf_3.01|XPDF = ${libxpdf}/lib|' Makefile
mkdir exe mkdir exe

View File

@ -1558,7 +1558,7 @@ let
}); });
xml2 = old.xml2.overrideDerivation (attrs: { xml2 = old.xml2.overrideDerivation (attrs: {
preConfigure = "export LIBXML_INCDIR=${pkgs.libxml2}/include/libxml2"; preConfigure = "export LIBXML_INCDIR=${pkgs.libxml2.dev}/include/libxml2";
}); });
curl = old.curl.overrideDerivation (attrs: { curl = old.curl.overrideDerivation (attrs: {

View File

@ -57,8 +57,8 @@ stdenv.mkDerivation rec {
# openssl: c_rehash, openssl # openssl: c_rehash, openssl
rm opt/vagrant/embedded/bin/{c_rehash,openssl} rm opt/vagrant/embedded/bin/{c_rehash,openssl}
ln -s ${openssl}/bin/c_rehash opt/vagrant/embedded/bin ln -s ${openssl.bin}/bin/c_rehash opt/vagrant/embedded/bin
ln -s ${openssl}/bin/openssl opt/vagrant/embedded/bin ln -s ${openssl.bin}/bin/openssl opt/vagrant/embedded/bin
# ruby: erb, gem, irb, rake, rdoc, ri, ruby, testrb # ruby: erb, gem, irb, rake, rdoc, ri, ruby, testrb
rm opt/vagrant/embedded/bin/{erb,gem,irb,rake,rdoc,ri,ruby,testrb} rm opt/vagrant/embedded/bin/{erb,gem,irb,rake,rdoc,ri,ruby,testrb}
@ -77,14 +77,14 @@ stdenv.mkDerivation rec {
# libxml: xml2-config, xmlcatalog, xmllint # libxml: xml2-config, xmlcatalog, xmllint
rm opt/vagrant/embedded/bin/{xml2-config,xmlcatalog,xmllint} rm opt/vagrant/embedded/bin/{xml2-config,xmlcatalog,xmllint}
ln -s ${libxml2}/bin/xml2-config opt/vagrant/embedded/bin ln -s ${libxml2.dev}/bin/xml2-config opt/vagrant/embedded/bin
ln -s ${libxml2}/bin/xmlcatalog opt/vagrant/embedded/bin ln -s ${libxml2.bin}/bin/xmlcatalog opt/vagrant/embedded/bin
ln -s ${libxml2}/bin/xmllint opt/vagrant/embedded/bin ln -s ${libxml2.bin}/bin/xmllint opt/vagrant/embedded/bin
# libxslt: xslt-config, xsltproc # libxslt: xslt-config, xsltproc
rm opt/vagrant/embedded/bin/{xslt-config,xsltproc} rm opt/vagrant/embedded/bin/{xslt-config,xsltproc}
ln -s ${libxslt}/bin/xslt-config opt/vagrant/embedded/bin ln -s ${libxslt.dev}/bin/xslt-config opt/vagrant/embedded/bin
ln -s ${libxslt}/bin/xsltproc opt/vagrant/embedded/bin ln -s ${libxslt.bin}/bin/xsltproc opt/vagrant/embedded/bin
mkdir -p "$out" mkdir -p "$out"
cp -r opt "$out" cp -r opt "$out"

View File

@ -9,7 +9,7 @@ stdenv.mkDerivation {
sha256 = "1k35xppfqi3qfysv81xq3hj4qdy9j2ciinbkfdcmwclcsf3nh94z"; sha256 = "1k35xppfqi3qfysv81xq3hj4qdy9j2ciinbkfdcmwclcsf3nh94z";
}; };
NIX_CFLAGS_COMPILE = "-I${libxml2}/include/libxml2"; NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
# The breakpad fails to build on x86_64, and it's only to report bugs upstream # The breakpad fails to build on x86_64, and it's only to report bugs upstream
cmakeFlags = [ "-DBREAKPAD=0" ]; cmakeFlags = [ "-DBREAKPAD=0" ];

View File

@ -202,10 +202,10 @@ stdenv.mkDerivation rec {
cp libs/ThLB* $out/share/ufr2filter cp libs/ThLB* $out/share/ufr2filter
) )
patchelf --set-rpath "$out/lib32:${i686_libxml2}/lib" $out/lib32/libcanonufr2.so.1.0.0 patchelf --set-rpath "$out/lib32:${i686_libxml2.out}/lib" $out/lib32/libcanonufr2.so.1.0.0
patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32" $out/bin/cnpkmoduleufr2 patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32" $out/bin/cnpkmoduleufr2
patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32:${i686_libxml2}/lib" $out/bin/cnpkbidi patchelf --interpreter "$(cat ${i686_NIX_GCC}/nix-support/dynamic-linker)" --set-rpath "$out/lib32:${i686_libxml2.out}/lib" $out/bin/cnpkbidi
makeWrapper "${ghostscript}/bin/gs" "$out/bin/gs" \ makeWrapper "${ghostscript}/bin/gs" "$out/bin/gs" \
--prefix LD_LIBRARY_PATH ":" "$out/lib" \ --prefix LD_LIBRARY_PATH ":" "$out/lib" \

View File

@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
${optionalString proxySupport "--enable-proxy"} ${optionalString proxySupport "--enable-proxy"}
${optionalString sslSupport "--enable-ssl"} ${optionalString sslSupport "--enable-ssl"}
${optionalString luaSupport "--enable-lua --with-lua=${lua5}"} ${optionalString luaSupport "--enable-lua --with-lua=${lua5}"}
${optionalString libxml2Support "--with-libxml2=${libxml2}/include/libxml2"} ${optionalString libxml2Support "--with-libxml2=${libxml2.dev}/include/libxml2"}
''; '';
postInstall = '' postInstall = ''

View File

@ -149,7 +149,7 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = optionalString modsecurity "-I${aprutil}/include/apr-1 -I${apacheHttpd}/include -I${apr}/include/apr-1 -I${yajl}/include"; NIX_CFLAGS_COMPILE = optionalString modsecurity "-I${aprutil}/include/apr-1 -I${apacheHttpd}/include -I${apr}/include/apr-1 -I${yajl}/include";
preConfigure = '' preConfigure = ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2}/include/libxml2 $additionalFlags" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2.dev}/include/libxml2 $additionalFlags"
''; '';
meta = { meta = {

View File

@ -117,7 +117,7 @@ stdenv.mkDerivation rec {
additionalFlags = optionalString stdenv.isDarwin "-Wno-error=deprecated-declarations"; additionalFlags = optionalString stdenv.isDarwin "-Wno-error=deprecated-declarations";
preConfigure = '' preConfigure = ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2}/include/libxml2 $additionalFlags" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2.dev}/include/libxml2 $additionalFlags"
''; '';
postInstall = '' postInstall = ''

View File

@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
''; '';
preConfigure = '' preConfigure = ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2}/include/libxml2 $additionalFlags" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2.dev}/include/libxml2 $additionalFlags"
export PATH="$PATH:${stdenv.cc.libc.bin}/bin" export PATH="$PATH:${stdenv.cc.libc.bin}/bin"
patchShebangs . patchShebangs .
''; '';

View File

@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
makeFlags = "DESTDIR=$(out)"; makeFlags = "DESTDIR=$(out)";
NIX_CFLAGS_COMPILE = [ "-I${libxml2}/include/libxml2" ]; NIX_CFLAGS_COMPILE = [ "-I${libxml2.dev}/include/libxml2" ];
# Probably a hack, but using DESTDIR and PREFIX makes everything work! # Probably a hack, but using DESTDIR and PREFIX makes everything work!
postInstall = '' postInstall = ''

View File

@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
preConfigure = '' preConfigure = ''
export PKG_CONFIG=${pkgconfig}/bin/pkg-config export PKG_CONFIG=${pkgconfig}/bin/pkg-config
export LIBXML2_CFLAGS="-I ${libxml2}/include/libxml2" export LIBXML2_CFLAGS="-I ${libxml2.dev}/include/libxml2"
export LIBXML2_LIBS="-L${libxml2}/lib -lxml2" export LIBXML2_LIBS="-L${libxml2.out}/lib -lxml2"
''; '';
configureFlags = [ configureFlags = [

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl { stdenv, lib, fetchurl, pkgconfig
, curl, apacheHttpd, pcre, apr, aprutil, libxml2 }: , curl, apacheHttpd, pcre, apr, aprutil, libxml2 }:
with lib; with lib;
@ -12,6 +12,7 @@ stdenv.mkDerivation rec {
sha256 = "e2bbf789966c1f80094d88d9085a81bde082b2054f8e38e0db571ca49208f434"; sha256 = "e2bbf789966c1f80094d88d9085a81bde082b2054f8e38e0db571ca49208f434";
}; };
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ curl apacheHttpd pcre apr aprutil libxml2 ]; buildInputs = [ curl apacheHttpd pcre apr aprutil libxml2 ];
configureFlags = [ configureFlags = [
"--enable-standalone-module" "--enable-standalone-module"

View File

@ -27,7 +27,7 @@ in stdenv.mkDerivation {
patchShebangs . patchShebangs .
''; '';
NIX_CFLAGS_COMPILE = "-I${libxml2}/include/libxml2"; NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
buildInputs = [ autoconf automake openssl libxml2 ]; buildInputs = [ autoconf automake openssl libxml2 ];

View File

@ -237,12 +237,12 @@ stdenv.mkDerivation rec {
# We can remove PATH= when those impurities are fixed. # We can remove PATH= when those impurities are fixed.
sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook5_xsl}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml', PATH='${tetex}/bin:${coreutils}/bin:${gnused}/bin')|" \ sed -e "s|^ENV =.*|ENV = dict(XML_CATALOG_FILES='${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml ${docbook5_xsl}/xml/xsl/docbook/catalog.xml ${docbook_xsl}/xml/xsl/docbook/catalog.xml', PATH='${tetex}/bin:${coreutils}/bin:${gnused}/bin')|" \
-e "s|^ASCIIDOC =.*|ASCIIDOC = '$out/bin/asciidoc'|" \ -e "s|^ASCIIDOC =.*|ASCIIDOC = '$out/bin/asciidoc'|" \
-e "s|^XSLTPROC =.*|XSLTPROC = '${libxslt}/bin/xsltproc'|" \ -e "s|^XSLTPROC =.*|XSLTPROC = '${libxslt.bin}/bin/xsltproc'|" \
-e "s|^DBLATEX =.*|DBLATEX = '${dblatexFull}/bin/dblatex'|" \ -e "s|^DBLATEX =.*|DBLATEX = '${dblatexFull}/bin/dblatex'|" \
-e "s|^FOP =.*|FOP = '${fop}/bin/fop'|" \ -e "s|^FOP =.*|FOP = '${fop}/bin/fop'|" \
-e "s|^W3M =.*|W3M = '${w3m}/bin/w3m'|" \ -e "s|^W3M =.*|W3M = '${w3m}/bin/w3m'|" \
-e "s|^LYNX =.*|LYNX = '${lynx}/bin/lynx'|" \ -e "s|^LYNX =.*|LYNX = '${lynx}/bin/lynx'|" \
-e "s|^XMLLINT =.*|XMLLINT = '${libxml2}/bin/xmllint'|" \ -e "s|^XMLLINT =.*|XMLLINT = '${libxml2.bin}/bin/xmllint'|" \
-e "s|^EPUBCHECK =.*|EPUBCHECK = 'nixpkgs_is_missing_epubcheck'|" \ -e "s|^EPUBCHECK =.*|EPUBCHECK = 'nixpkgs_is_missing_epubcheck'|" \
-i a2x.py -i a2x.py
'' + '' '' + ''

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
wrapProgram "$out/bin/xmlto" \ wrapProgram "$out/bin/xmlto" \
--prefix PATH : "${libxslt}/bin:${libxml2}/bin:${getopt}/bin" --prefix PATH : "${libxslt.bin}/bin:${libxml2.bin}/bin:${getopt}/bin"
# `w3m' is needed for HTML to text conversions. # `w3m' is needed for HTML to text conversions.
substituteInPlace "$out/share/xmlto/format/docbook/txt" \ substituteInPlace "$out/share/xmlto/format/docbook/txt" \

View File

@ -7480,14 +7480,13 @@ let
libxmi = callPackage ../development/libraries/libxmi { }; libxmi = callPackage ../development/libraries/libxmi { };
libxml2 = callPackage ../development/libraries/libxml2 { libxml2 = callPackage ../development/libraries/libxml2 { };
pythonSupport = false; libxml2Python = pkgs.buildEnv { # slightly hacky
name = "libxml2+py-${pkgs.libxml2.version}";
paths = with libxml2; [ dev bin py ];
inherit (pkgs.libxml2) passthru;
}; };
libxml2Python = lowPrio (libxml2.override {
pythonSupport = true;
});
libxmlxx = callPackage ../development/libraries/libxmlxx { }; libxmlxx = callPackage ../development/libraries/libxmlxx { };
libxmp = callPackage ../development/libraries/libxmp { }; libxmp = callPackage ../development/libraries/libxmp { };