Alex

EzRe

By Alex Free

EzRe (Easy Release) provides a simple and sane build system for Linux (i386 and x86_64) and Windows (i686 and x86_64) targets, tailored to rapid development and deployment of simple C/C++ programs from a Linux OS. Consisting of a generalized GNU Makefile configured by a user-edited variables.mk file, it can easily be expanded to work for other languages, architectures, and operating systems.

Features:

Homepage

Github

Downloads

Version 1.0 (3/22/2024)

Zip release:

EzRe v1.0

Git clone

git clone https://github.com/alex-free/ezre

One-liner - download the latest template files directly into the current directory (your source tree):

curl -O https://raw.githubusercontent.com/alex-free/ezre/master/Makefile; curl -O https://raw.githubusercontent.com/alex-free/ezre/master/variables.mk; curl -O https://raw.githubusercontent.com/alex-free/ezre/master/control-i386; curl -O https://raw.githubusercontent.com/alex-free/ezre/master/control-x86_64

Setup

1) Copy control-i386, control-x86_64, Makefile, and variables.mk to the root of your source tree.

2) Edit control-i386, control-x86_64, and variables.mk with your project information. For most use cases, you do not need to edit the Makefile at all!

Example

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 and reading the edited control-i386, control-x86_64, and variables.mk files to see a working implementation. The Makefile was not edited at all for this example.

cd example

make deps-apt to install the build dependencies required to compile the example

make creates a hello executable for x86_64 Linux (the host platform set) in the specified build directory found in the root of the source tree where all the EzRe files are copied to.

make clean delete only the generated executable file created by only executing make.

make clean-build deletes the generated build directory in it’s entirety.

make all will generate all of the following in the build directory found in the root of the source tree:

For Windows 95 OSR 2.5 and above, Pentium CPU minimum (32 bit)

For Windows x86_64 (64 bit)

For Linux 3.2.0 and above, 386 CPU minimum (32 bit)

For Linux 3.2.0 and above, x86_64 (64 bit)

License

EzRe is released with the 3-BSD license, see license.md.