Skip to content
A highly portable build system targeting modern UNIX systems. Supports C, OCaml, TeX, METAPOST, NOWEB, M4, and more. Based on BSD Make.
Makefile Shell TeX M4 OCaml C Other
Branch: master
Clone or download
michipili Merge pull request #224 from al-x/patch-1
typo fixes and grammar suggestions
Latest commit 7e9e70b Nov 27, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Library Support developement of elisp macros Jan 11, 2017
bps Merge branch 'topic/filter-out-ds-store-files-when-making-distfiles' Jan 11, 2017
config Change license to BSD Jan 4, 2017
doc Support developement of elisp macros Jan 11, 2017
example Support developement of elisp macros Jan 11, 2017
langc Change license to BSD Jan 4, 2017
misc Support developement of elisp macros Jan 11, 2017
noweb Change license to BSD Jan 4, 2017
ocaml Change license to BSD Jan 4, 2017
opam Change license to BSD Jan 4, 2017
script Change license to BSD Jan 4, 2017
support Change license to BSD Jan 4, 2017
testsuite Support developement of elisp macros Jan 11, 2017
texmf Change license to BSD Jan 4, 2017
www Change license to BSD Jan 4, 2017
.gitignore Update ignore patterns Aug 12, 2015
.travis.opam Test against newest versions of OCaml Jan 4, 2017
.travis.yml Test against newest versions of OCaml Jan 4, 2017
AUTHORS Updating copyright notices and encoding Jun 16, 2013
INSTALL.bmake.md Remove last occurences of former project name Jan 4, 2017
INSTALL.md typo fixes and grammar suggestions Apr 13, 2018
LICENSE Change license to BSD Jan 4, 2017
Makefile Change license to BSD Jan 4, 2017
Makefile.config.in Support developement of elisp macros Jan 11, 2017
README.md Change license to BSD Jan 4, 2017
aclocal.m4 Support developement of elisp macros Jan 11, 2017
configure.ac Support developement of elisp macros Jan 11, 2017

README.md

BSD Owl Scripts

This collection of BSD Make directives aims at providing a highly portable build system targetting modern UNIX systems and supporting common or less command languages. This is a build system, which means that it can be used to organise fairly complex projects.

Build Status

Applicative level features

BSD Owl Scripts assists developers in the production, installation and distribution of projects comprising the following types of products:

  • C programs, compiled for several targets
  • C libraries, static and shared, compiled for several targets
  • Shell scripts
  • Python scripts
  • OCaml programs
  • OCaml libraries, with ocamldoc documentation
  • OCaml plugins
  • TeX documents, prepared for several printing devices
  • METAPOST figures, with output as PDF, PS, SVG or PNG, either as part of a TeX document or as standalone documents

Each item is linked to a project example found in our extensive testsuite.

Build-system level features

BSD Owl Scripts offers developers a rich set of features easing project management:

  • Support of compilation profiles
  • Support of the parallel mode (at the directory level)
  • Support of separate trees for sources and objects
  • Support of architecture-dependant compilation options
  • Support GNU autoconf
  • Production of GPG-signed tarballs
  • Developer subshell, empowered with project-specific scripts
  • Literate programming using noweb
  • Preprocessing with m4

Compatibility list

It is well tested under:

  • Mac OS X, version 10.6.8 and above;
  • FreeBSD, version 9.0 and above;
  • Debian Jessie and newer.

We also want to support NetBSD and OpenBSD, as soon as they will provide a modern version of BSD Make.

This means that projects managed with BSD Owl Scripts are easy to develop and deploy in heterogeneous environment.

Starting points

If you are not at all familiar with makefiles you can quickly learn the basics with de Boor's classical tutorial. It is also nice to feel confident while interacting with the shell, if this is not the case UNIX Power Tools could help you. The documentation index provides an overview of the files available in the doc directory.

Free software

BSD Owl Scripts is free software: copying it and redistributing it is very much welcome under conditions of the BSD licence agreement, found in the LICENSE file of the distribution.

Last words

This project started around 2002, it was hosted on a private CVS server. In 2006 it was reorganised, history was lost and it moved to a private Subversion server. In 2008 it was published for the first time on GNA (gna.org). One year later the history was converted to git and subversion was only marginally used. In 2013, publication on the GNA server was abandoned and the project was published on GitHub and BitBucket, then on GitHub only.

Pallàs Athéné is a Greek goddess of wisdom, mother of sciences and arts. This software is gently dedicated to her.

Michael Grünewald in Bonn, on January 20, 2014

You can’t perform that action at this time.