nixpkgs/pkgs/development/libraries/expat/default.nix
Vladimír Čunát 89023c38fc
Recover the complicated situation after my bad merge
I made a mistake merge.  Reverting it in c778945806 undid the state
on master, but now I realize it crippled the git merge mechanism.
As the merge contained a mix of commits from `master..staging-next`
and other commits from `staging-next..staging`, it got the
`staging-next` branch into a state that was difficult to recover.

I reconstructed the "desired" state of staging-next tree by:
 - checking out the last commit of the problematic range: 4effe769e2
 - `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken
   merge commit and its revert from that range (while keeping
   reapplication from 4effe769e2)
 - merging the last unaffected staging-next commit (803ca85c20)
 - fortunately no other commits have been pushed to staging-next yet
 - applying a diff on staging-next to get it into that state
2020-10-26 09:01:04 +01:00

39 lines
1.1 KiB
Nix

{ stdenv, fetchurl, lib }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
let
version = "2.2.10";
in stdenv.mkDerivation rec {
name = "expat-${version}";
src = fetchurl {
url = "https://github.com/libexpat/libexpat/releases/download/R_${lib.replaceStrings ["."] ["_"] version}/${name}.tar.xz";
sha256 = "sha256-Xf5Tj4tbY/A+mO2sUg19mmpNIuSC5cltTQb8xUhcJfI=";
};
outputs = [ "out" "dev" ]; # TODO: fix referrers
outputBin = "dev";
configureFlags = stdenv.lib.optional stdenv.isFreeBSD "--with-pic";
outputMan = "dev"; # tiny page for a dev tool
doCheck = true; # not cross;
preCheck = ''
patchShebangs ./run.sh
patchShebangs ./test-driver-wrapper.sh
'';
meta = with stdenv.lib; {
homepage = "http://www.libexpat.org/";
description = "A stream-oriented XML parser library written in C";
platforms = platforms.all;
license = licenses.mit; # expat version
};
}