Compiling
This description demonstrates the building steps on the upstream repository, but you can apply these steps on your forked repository as well.
Building
- Clone your forked repository locally
git clone https://github.com/balabit/syslog-ng.git
- Step into the directory
syslog-ng
directory and runautogen.sh
:
./autogen.sh
This script will clone the Git submodules and initialize the build system. The
result of the execution should be a configure
script.
- Create build directory We prefer to build syslog-ng OSE in a dedicated directory, so your Git repo is kept tidy.
mkdir build
cd build
- Run the
configure
scipt:
../configure --enable-debug --prefix=${HOME}/install/syslog-ng
Warning: By a good chance, you might want to install the self built instance first to a custom location to prevent overwriting a possibly already existing installation version. In that case always pass --prefix /full_path_of/installdir/
to the configure
script.
You can pass additional parameters to configure, but these are the most common ones.
If you run ../configure --help
you can see all the valid parameters.
The result of the configuration process is several new Makefile
s in your build directory.
- Run
make
:
make -j
The -j
flag will parallelize the compilation process. If make
works for you (without -j
),
but make -j
does not, that is a bug.
Expected outcome
You should have a freshly built syslog-ng OSE by the end of this step.
Cleanup
You can execute make clean
to remove the build artifacts. make distclean
will also
remove the configure
script. You can also completely remove the content of your build directory.