2020-09-16 10:19:56 -04:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
|
#
|
2026-01-08 02:49:06 -05:00
|
|
|
# Copyright (C) 2020-2026 OpenVPN Inc <sales@openvpn.net>
|
2020-09-16 10:19:56 -04:00
|
|
|
#
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
# Plug-ins to build - listed entries should not carry any extensions
|
|
|
|
|
#
|
|
|
|
|
PLUGINS = \
|
2022-03-13 15:31:52 -04:00
|
|
|
defer/multi-auth \
|
2020-09-16 10:19:56 -04:00
|
|
|
keying-material-exporter-demo/keyingmaterialexporter \
|
|
|
|
|
log/log log/log_v3 \
|
|
|
|
|
simple/base64 \
|
2020-09-17 12:19:09 -04:00
|
|
|
simple/simple \
|
|
|
|
|
client-connect/sample-client-connect
|
2020-09-16 10:19:56 -04:00
|
|
|
|
|
|
|
|
# All the plugins to build - rewritten with .so extension
|
|
|
|
|
all : $(foreach var, $(PLUGINS), $(var).so)
|
|
|
|
|
|
|
|
|
|
# Do not automatically remove object files
|
|
|
|
|
# This is a special Make setting, to avoid adding an implicit
|
|
|
|
|
# 'rm' command on object files - due to the .c.o/%.so rules below
|
|
|
|
|
.PRECIOUS: %.o
|
|
|
|
|
|
|
|
|
|
# Compile step
|
|
|
|
|
.c.o :
|
|
|
|
|
test -d `dirname $@` || $(MKDIR_P) `dirname $@`; \
|
|
|
|
|
$(CC) -c -o $@ $(CFLAGS) $(AM_CPPFLAGS) -fPIC $<
|
|
|
|
|
|
|
|
|
|
# Link step
|
|
|
|
|
%.so : %.o
|
|
|
|
|
$(CC) $(LDFLAGS) -shared -fPIC -o $@ $<
|
|
|
|
|
|
|
|
|
|
# Clean up all build object and shared object files
|
|
|
|
|
clean :
|
|
|
|
|
rm -f $(foreach var, $(PLUGINS), $(var).o) \
|
|
|
|
|
$(foreach var, $(PLUGINS), $(var).so)
|