about summary refs log blame commit diff
path: root/release.nix
blob: af2c435d725898cfe67425287e117384d36460c9 (plain) (tree)



































































                                                                                    
                                                                                                          



          
let jobs = rec {


  tarball =
    { nix ? {path = ./.; rev = 1234;}
    , nixpkgs ? {path = ../nixpkgs;}
    , officialRelease ? false
    }:
    
    with import nixpkgs.path {};
    
    releaseTools.makeSourceTarball {
      name = "nix-tarball";
      src = nix;
      inherit officialRelease;

      buildInputs = [curl bison flex2533 perl libxml2 libxslt w3m bzip2 jing_tools];

      configureFlags = ''
        --with-docbook-rng=${docbook5}/xml/rng/docbook
        --with-docbook-xsl=${docbook5_xsl}/xml/xsl/docbook
        --with-xml-flags=--nonet
      '';

      # Include the BDB, ATerm and Bzip2 tarballs in the distribution.
      preConfigure = ''
        stripHash ${db45.src}
        # Remove unnecessary stuff from the Berkeley DB tarball.
        ( mkdir bdb-temp
          cd bdb-temp
          tar xfz ${db45.src}
          cd *
          rm -rf docs test tcl perl libdb_java java rpc_server build_vxworks \
            examples_java examples_c examples_cxx dist/tags
          mkdir test
          touch test/include.tcl
          cd ..
          tar cvfz ../externals/$strippedName *
        )

        stripHash ${aterm242fixes.src}
        cp -pv ${aterm242fixes.src} externals/$strippedName

        stripHash ${bzip2.src}
        cp -pv ${bzip2.src} externals/$strippedName
      '';
    };


  build =
    { tarball ? {path = jobs.tarball {};}
    , nixpkgs ? {path = ../nixpkgs;}
    , system ? "i686-linux"
    }:

    with import nixpkgs.path {inherit system;};

    releaseTools.nixBuild {
      name = "nix-build";
      src = tarball;

      buildInputs = [curl perl bzip2 openssl];

      configureFlags = ''
        --disable-init-state
        --with-bdb=${db45} --with-aterm=${aterm242fixes} --with-bzip2=${bzip2}
      '';
      
      postInstall = ''
        echo "doc manual $out/share/doc/nix/manual" >> $out/nix-support/hydra-build-products
        echo "doc release-notes $out/share/doc/nix/release-notes" >> $out/nix-support/hydra-build-products
      '';
    };


}; in jobs