From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 48794BB81 for ; Tue, 11 Apr 2006 22:05:21 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k3BK5KAf025267 for ; Tue, 11 Apr 2006 22:05:20 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id WAA01148 for ; Tue, 11 Apr 2006 22:05:20 +0200 (MET DST) Received: from blizzard.cs.caltech.edu (blizzard.cs.caltech.edu [131.215.44.2]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id k3BK5IoZ012020 for ; Tue, 11 Apr 2006 22:05:19 +0200 Received: from localhost (flood.cs.caltech.edu [131.215.44.31]) by blizzard.cs.caltech.edu (Postfix) with ESMTP id CB5A2402792 for ; Tue, 11 Apr 2006 13:05:17 -0700 (PDT) Received: from blizzard.cs.caltech.edu ([131.215.44.2]) by localhost (flood.cs.caltech.edu [131.215.44.31]) (amavisd-new, port 10024) with ESMTP id 13839-09 for ; Tue, 11 Apr 2006 13:05:17 -0700 (PDT) Received: from [192.168.1.100] (charter-242-005.caltech.edu [131.215.242.5]) by blizzard.cs.caltech.edu (Postfix) with ESMTP id C376F40267C for ; Tue, 11 Apr 2006 13:05:16 -0700 (PDT) Message-ID: <443C0BFC.5000007@cs.caltech.edu> Date: Tue, 11 Apr 2006 13:05:16 -0700 From: Aleksey Nogin Reply-To: omake@metaprl.org, Caml List Organization: California Institute of Technology, Computer Science Department User-Agent: Mozilla Thunderbird 1.0.7-1.1.fc3 (X11/20050929) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Caml List Subject: Announcing OMake 0.9.6.9 X-Enigmail-Version: 0.89.5.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 443C0C00.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 443C0BFE.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; syntax:01 ocaml:01 foo:01 baz:01 foo:01 baz:01 dependencies:01 ocaml:01 unix:01 cygwin:01 osh:01 syntax:01 makefiles:01 gpl:01 bugfixes:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 We are proud to announce the latest release of the OMake Build System - OMake version 0.9.6.9. OMake is a build system designed for scalability and portability. It uses a syntax similar to make utilities you may have used, but it features many additional enhancements, including the following. - Support for projects spanning several directories or directory hierarchies. - Fast, reliable, automated, scriptable dependency analysis using MD5 digests, with full support for incremental builds. - Fully scriptable, includes a library that providing support for standard tasks in C, C++, OCaml, and LaTeX projects, or a mixture thereof. Often, a configuration file is as simple as a single line .DEFAULT: OCamlProgram(prog, foo bar baz) which states that the program "prog" is built from the files foo.ml, bar.ml, and baz.ml. This one line will also invoke the default standard library scripts for discovering implicit dependencies in OCaml files. - Full native support for rules that build several files at once. - Portability: omake provides a uniform interface on Linux/Unix (including 64-bit architectures), Win32, Cygwin, Mac OS X, and other platforms that are supported by OCaml. - Built-in functions that provide the most common features of programs like grep, sed, find, and awk. These are especially useful on Win32. - Active filesystem monitoring, where the build automatically restarts whenever you modify a source file. This can be very useful during the edit/compile cycle. - A built-in command-interpreter osh that can be used interactively. OMake preserves the style of syntax and rule definitions used in Makefiles, making it easy to port your project to OMake. There is no need to code in Perl (cons), or Python (scons). However, there are a few things to keep in mind: 1. Indentation is significant, but tabs are not required. 2. The OMake language is functional: functions are first-class and there are no side-effects apart from I/O. 3. Scoping is dynamic. OMake is licensed under a mixture of the GNU GPL license (OMake engine itself) and the MIT-like license (default configuration files). OMake version 0.9.6.9 in minor bugfixes/feature enhancements release. The changes in this version include: - Significantly improved C++ support; minor improvements in OCaml support. - Significantly updated the default (sample) OMakefile. - Significantly improved the performance of the built-in find command. - Several other bug fixes and improvements. - A number of documentation fixes and improvements. For a more verbose change log, please visit http://omake.metaprl.org/changelog.html#0.9.6.9 . Source and binary packages of OMake 0.9.6.9 may be downloaded from http://omake.metaprl.org/download.html (Windows and OS X binaries are not there yet, but should become available soon). In addition, OMake may be obtained via the GODI packaging system (release lines "3.08", "3.09" and "dev"). To try it out, run the command "omake --install" in a project directory, and modify the generated OMakefile. OMake 0.9.6.9 is still an alpha release. While we have made an effort to ensure that it is bug-free, it is possible some functions may not behave as you would expect. Please report any comments and/or bugs to the mailing list omake@metaprl.org and/or at http://bugzilla.metaprl.org/ -- Aleksey Nogin Home Page: http://nogin.org/ E-Mail: nogin@cs.caltech.edu (office), aleksey@nogin.org (personal) Office: Moore 04, tel: (626) 395-2200