From ccd5c6e47cd5c29a2b7dccf36dafda7b769c2f32 Mon Sep 17 00:00:00 2001 From: Ram Kromberg Date: Tue, 6 Sep 2016 00:28:42 +0300 Subject: bsdbuild: init at 3.1 (#18069) --- pkgs/development/tools/misc/bsdbuild/default.nix | 68 ++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 pkgs/development/tools/misc/bsdbuild/default.nix (limited to 'pkgs/development/tools/misc/bsdbuild') diff --git a/pkgs/development/tools/misc/bsdbuild/default.nix b/pkgs/development/tools/misc/bsdbuild/default.nix new file mode 100644 index 000000000000..0fd9f143ce9a --- /dev/null +++ b/pkgs/development/tools/misc/bsdbuild/default.nix @@ -0,0 +1,68 @@ +{ stdenv, fetchurl, perl, libtool, pkgconfig, gettext, groff, ed }: + +stdenv.mkDerivation rec { + name = "bsdbuild-${version}"; + version = "3.1"; + + src = fetchurl { + url = "http://stable.hypertriton.com/bsdbuild/${name}.tar.gz"; + sha256 = "1zrdjh7a6z4khhfw9zrp490afq306cpl5v8wqz2z55ys7k1n5ifl"; + }; + + buildInputs = [ perl groff ed ]; + nativeBuildInputs = [ pkgconfig libtool gettext ]; + + prePatch = '' + #ignore unfamiliar flags + substituteInPlace configure \ + --replace '--sbindir=*' '--sbindir=* | --includedir=* | --oldincludedir=*' + #same for packages using bsdbuild + substituteInPlace mkconfigure.pl \ + --replace '--sbindir=*' '--sbindir=* | --includedir=* | --oldincludedir=*' + #insert header for missing NULL macro + for f in db4.pm sdl_ttf.pm mysql.pm uim.pm strlcpy.pm getpwuid.pm \ + getaddrinfo.pm strtoll.pm free_null.pm getpwnam_r.pm \ + gettimeofday.pm gethostbyname.pm xinerama.pm strsep.pm \ + fontconfig.pm gettext.pm pthreads.pm strlcat.pm kqueue.pm wgl.pm \ + alsa.pm crypt.pm cracklib.pm freesg-rg.pm edacious.pm mmap.pm \ + agar.pm x11.pm x11.pm execvp.pm agar-core.pm dyld.pm getopt.pm \ + strtold.pm sdl_image.pm shl_load.pm glx.pm percgi.pm timerfd.pm \ + glob.pm dlopen.pm freesg.pm csidl.pm perl.pm select.pm \ + portaudio.pm etubestore.pm; + do +ed -s -v BSDBuild/$f << EOF +/#include +i +#include +. +w +EOF + done + ''; + + configureFlags = [ + "--with-libtool=${libtool}/bin/libtool" + "--enable-nls=yes" + "--with-gettext=${gettext}" + "--with-manpages=yes" + ]; + + meta = { + homepage = http://bsdbuild.hypertriton.com; + description = "A cross-platform build system."; + + longDescription = '' + BSDBuild is a cross-platform build system. Derived from the + traditional 4.4BSD make libraries, BSDBuild allows BSD-style + Makefiles (without BSD make extensions), and works natively + under most operating systems and make flavors. Since BSDBuild + is implemented as a library (as opposed to a macro package), + Makefiles are edited directly, as opposed to being compiled + (however, if the build directory is separate from the source + directory, BSDBuild will produce the required Makefiles in place). + ''; + + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.linux; + }; +} -- cgit 1.4.1