By Alex Free
EzRe (Easy Release) provides a simple and sane build system for Linux (i386 and x86_64), Windows (i686 and x86_64), and Mac OS (PowerPC, Intel, ARM) targets, tailored to rapid development and deployment of C/C++ programs from a Linux or Mac OS computer. It includes an easy to use configuration tool and installer that automatically writes GNU Makefiles using the information you provide. EZRE has been written in a way to minimize the amount of user-supplied information required to build all the packages and releases for all these systems.
-
The only pre-requisite is having GNUMake installed.
-
Installation consist of changing into your source directory, and executing the
ezre
command found in the releases. -
No need to write or edit a Makefile for most use cases.
-
No need to write or edit a "how to build" document for most use cases, as a generic
build.md
is provided. -
Specify build dependencies for various package managers. Currently both
dnf
andapt
are supported for Linux. Mac OS uses MacPorts. -
Generate
.deb
packages (i386 and x86_64) for Debian based Linux distributions. -
Generate
.rpm
packages (i386 and x86_64) for Redhat based Linux distributions). -
Generate portable release .zip files for Windows (i686 and x86_64) and Linux (i386 and x86_64).
-
Generate Mac OS executables and release .zip files for any arch (PowerPC, Intel, ARM).
-
Passes a
VERSION
string to source files (no need to edit the version number directly in source files). -
Support for building libraries and linking them with the target executable.
-
Highly configurable, expandable, and hackable.
Changes:
-
Fixed
ezre
command not setting RELEASE_FILES var. -
Added info about specifying -y if it wasn't specified.
-
Fixed GNU sed compatibility making garbage backup files, not setting VERSION with -u , and other issues.
-
Improved build.md template file.
-
ezre-v1.0.6.zip Portable zip release for Linux and Mac OS
-
ezre-v1.0.6.deb Portable deb release for Linux
-
ezre-1.0.6-1.noarch.rpm Portable rpm release for Linux
Note: Currently, EzRe expects a Linux x86_64 host system.
-
Change into your source directory.
-
Execute the
ezre
command. -
Enter any information prompted by the
ezre
command related to your project. -
Type
make
to build your software. Typemake all
to build your software for all targets (see build.md).
For more advanced use cases, you can edit the Makefile
and variables.mk
files generated by EzRe for your project.
To update the EzRe build system in your software, run ezre
again in your source directory.
To update the version number, run ezre -u <version number>
. For example, ezre -u 1.0.1
will change the version number of your project to 1.0.1.
To auto-confirm overwriting existing EzRe generated files, run ezre -y
.
The example directory contains a test use case for EzRe (hello world in C). You can get a grasp of what is possible by trying it out.
EzRe is released with the 3-BSD license, see license.md.