astyle: use cmake to avoid having to manually fix up LDFLAGS

This commit is contained in:
Peter Hoeg 2019-08-26 16:40:04 +08:00
parent 4ca0df1539
commit 076f9d88dd

View file

@ -1,32 +1,26 @@
{ stdenv, fetchurl }:
{ stdenv, lib, fetchurl, cmake }:
let
name = "astyle";
stdenv.mkDerivation rec {
pname = "astyle";
version = "3.1";
in
stdenv.mkDerivation {
name = "${name}-${version}";
src = fetchurl {
url = "mirror://sourceforge/${name}/${name}_${version}_linux.tar.gz";
url = "mirror://sourceforge/${pname}/${pname}_${version}_linux.tar.gz";
sha256 = "1ms54wcs7hg1bsywqwf2lhdfizgbk7qxc9ghasxk8i99jvwlrk6b";
};
sourceRoot = if stdenv.cc.isClang
then "astyle/build/clang"
else "astyle/build/gcc";
# lots of hardcoded references to /usr
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace ' /usr/' " $out/"
'';
# -s option is obsolete on Darwin and breaks build
postPatch = if stdenv.isDarwin then ''
substituteInPlace Makefile --replace "LDFLAGSr = -s" "LDFLAGSr ="
'' else null;
nativeBuildInputs = [ cmake ];
installFlags = "INSTALL=install prefix=$$out";
meta = {
homepage = http://astyle.sourceforge.net/;
meta = with lib; {
description = "Source code indenter, formatter, and beautifier for C, C++, C# and Java";
license = stdenv.lib.licenses.lgpl3;
platforms = stdenv.lib.platforms.unix;
homepage = "https://astyle.sourceforge.net/";
license = licenses.lgpl3;
platforms = platforms.unix;
};
}