From 91f229f94d8557ca915670c02cac8fe09b50f0c1 Mon Sep 17 00:00:00 2001 From: obache Date: Sat, 29 May 2010 10:43:14 +0000 Subject: [PATCH] Import omake-0.9.8.5 as devel/omake. Based on PR#43374 by YAMAMOTO Takeshi, some improvements. OMake is a build system, similar to GNU make, but with many additional features, including: - Support for large projects spanning multiple directories; - Support for commands that produce several targets at once; - Fast, accurate, automated dependency analysis using MD5 digests; - Portability: omake provides a consistent interface on Win32 and on Unix systems including Linux, OSX, and Cygwin; - Builtin functions that provide the most common features of programs like grep, sed, and awk; - Active filesystem monitoring, where the build automatically restarts whenever you modify a source file. --- devel/omake/DESCR | 11 +++++++++++ devel/omake/Makefile | 25 +++++++++++++++++++++++++ devel/omake/PLIST | 23 +++++++++++++++++++++++ devel/omake/distinfo | 7 +++++++ devel/omake/patches/patch-aa | 15 +++++++++++++++ devel/omake/patches/patch-ab | 26 ++++++++++++++++++++++++++ 6 files changed, 107 insertions(+) create mode 100644 devel/omake/DESCR create mode 100644 devel/omake/Makefile create mode 100644 devel/omake/PLIST create mode 100644 devel/omake/distinfo create mode 100644 devel/omake/patches/patch-aa create mode 100644 devel/omake/patches/patch-ab diff --git a/devel/omake/DESCR b/devel/omake/DESCR new file mode 100644 index 00000000000..d820bdd8d47 --- /dev/null +++ b/devel/omake/DESCR @@ -0,0 +1,11 @@ +OMake is a build system, similar to GNU make, but with many additional +features, including: +- Support for large projects spanning multiple directories; +- Support for commands that produce several targets at once; +- Fast, accurate, automated dependency analysis using MD5 digests; +- Portability: omake provides a consistent interface on Win32 + and on Unix systems including Linux, OSX, and Cygwin; +- Builtin functions that provide the most common features of + programs like grep, sed, and awk; +- Active filesystem monitoring, where the build automatically + restarts whenever you modify a source file. diff --git a/devel/omake/Makefile b/devel/omake/Makefile new file mode 100644 index 00000000000..2212f10c079 --- /dev/null +++ b/devel/omake/Makefile @@ -0,0 +1,25 @@ +# $NetBSD$ +# + +DISTNAME= omake-${VERSION}-3 +PKGNAME= omake-${VERSION} +CATEGORIES= devel +MASTER_SITES= http://omake.metaprl.org/downloads/ + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://omake.metaprl.org/index.html +COMMENT= Build system designed for scalability and portability +LICENSE= gnu-gpl-v2 AND mit AND gnu-lgpl-v2.1 + +PKG_DESTDIR_SUPPORT= user-destdir + +MAKE_JOBS_SAFE= no + +WRKSRC= ${WRKDIR}/omake-${VERSION} + +MAKE_ENV+= INSTALL_ROOT=${DESTDIR} + +VERSION= 0.9.8.5 + +.include "../../lang/ocaml/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/devel/omake/PLIST b/devel/omake/PLIST new file mode 100644 index 00000000000..b1b42e21cfd --- /dev/null +++ b/devel/omake/PLIST @@ -0,0 +1,23 @@ +@comment $NetBSD$ +bin/cvs_realclean +bin/ocamldep-omake +bin/omake +bin/osh +lib/omake/OMakefile.default +lib/omake/OMakeroot.default +lib/omake/OMakeroot.om +lib/omake/Pervasives.om +lib/omake/build/C.om +lib/omake/build/Common.om +lib/omake/build/LaTeX.om +lib/omake/build/OCaml.om +lib/omake/build/svn_realclean.om +lib/omake/configure/Configure.om +lib/omake/configure/X.om +lib/omake/configure/fam.om +lib/omake/configure/fs_case_sensitive.om +lib/omake/configure/ncurses.om +lib/omake/configure/readline.om +lib/omake/configure/snprintf.om +lib/omake/parse/C/Lex.om +lib/omake/parse/C/Parse.om diff --git a/devel/omake/distinfo b/devel/omake/distinfo new file mode 100644 index 00000000000..64cf29c7f3b --- /dev/null +++ b/devel/omake/distinfo @@ -0,0 +1,7 @@ +$NetBSD$ + +SHA1 (omake-0.9.8.5-3.tar.gz) = e78c9d8858749f5e234cba303637980e24085cbc +RMD160 (omake-0.9.8.5-3.tar.gz) = 2364e29a7cc9bd6aaf837818bbe0a64ef4afce14 +Size (omake-0.9.8.5-3.tar.gz) = 3321245 bytes +SHA1 (patch-aa) = b8138151041b1c99ddc752361f99c1822d88ef07 +SHA1 (patch-ab) = 449aae3ff362efbc50f188cba8a76a13334eb964 diff --git a/devel/omake/patches/patch-aa b/devel/omake/patches/patch-aa new file mode 100644 index 00000000000..90b29cfebff --- /dev/null +++ b/devel/omake/patches/patch-aa @@ -0,0 +1,15 @@ +$NetBSD$ + +http://svn.metaprl.org/viewvc/mojave?view=rev&revision=12923 + +--- src/exec/omake_exec.ml.orig 2006-12-08 22:52:01.000000000 +0000 ++++ src/exec/omake_exec.ml +@@ -46,8 +46,6 @@ open Omake_exec_notify + open Omake_options + open Omake_command_type + +-external sync : unit -> unit = "caml_sync" +- + module Exec = + struct + (* diff --git a/devel/omake/patches/patch-ab b/devel/omake/patches/patch-ab new file mode 100644 index 00000000000..4f9b8d3b794 --- /dev/null +++ b/devel/omake/patches/patch-ab @@ -0,0 +1,26 @@ +$NetBSD$ + +--- src/libmojave-external/cutil/fam_kqueue.c.orig 2010-05-28 09:23:46.000000000 +0000 ++++ src/libmojave-external/cutil/fam_kqueue.c +@@ -181,6 +181,12 @@ static kevent_t *new_kevent() { + return ev; + } + ++#if defined(__NetBSD__) ++typedef intptr_t kqueue_udata_t; ++#else ++typedef void *kqueue_udata_t; ++#endif ++ + /* + * Start monitoring a directory. + * We store the DirInfo pointer as the userdata in the kevent. +@@ -199,7 +205,7 @@ static int monitor_start(FAMConnection * + dir->kevent = kev; + /* Register interest in the MON_FLAGS flags of the dir */ + EV_SET(kev, dir->handle, EVFILT_VNODE, EV_ADD | EV_CLEAR, MON_FLAGS, +- (intptr_t) NULL, (void *)dir); ++ (intptr_t) NULL, (kqueue_udata_t) dir); + code = kevent(fc->id, kev, 1, NULL, 0, &gTime0); + #ifdef FAM_DEBUG + fprintf(stderr, -- 2.41.0