From 4cd556cb137c109db469fcecef8d44ab4f38ac4d Mon Sep 17 00:00:00 2001 From: Levi Neely <141506390+lneely@users.noreply.github.com> Date: Tue, 20 Aug 2024 01:15:56 +0200 Subject: [PATCH] static build option (#47) make STATIC=1 to statically link libpcloudcc_lib.so --- Makefile | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 1566f60..c25454a 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,22 @@ CFLAGS=-fPIC -Wall -O0 -g -fsanitize=address -I./pclsync -I/usr/include -I/usr/include/mbedtls2 -LDFLAGS=-lboost_program_options -lssl -lcrypto -lfuse -lpthread -ludev -lsqlite3 -lz -l:libmbedtls.so.14 -l:libmbedx509.so.1 -l:libmbedcrypto.so.7 +LDFLAGS=-lboost_program_options -lssl -lcrypto -lfuse -lpthread -ludev -lsqlite3 -lz -l:libmbedtls.so.14 -l:libmbedx509.so.1 -l:libmbedcrypto.so.7 CMDSRC=control_tools.cpp pclsync_lib_c.cpp pclsync_lib.cpp main.cpp DESTDIR=/usr/local LIBSRC=$(wildcard pclsync/*.c) -LIBOBJ = $(LIBOBJ:%.c=%.o) +LIBOBJ = $(notdir $(LIBSRC:%.c=%.o)) +STATIC=$STATIC + +all: $(LIBSRC) $(CMDSRC) +ifeq ($(STATIC),1) + make pcloudcc_static +else + make libpcloudcc_lib.so pcloudcc +endif + +pcloudcc_static: + gcc -c $(CFLAGS) $(LDFLAGS) $(LIBSRC) + g++ -o pcloudcc $(CFLAGS) $(LDFLAGS) $(LIBOBJ) $(CMDSRC) -all: libpcloudcc_lib.so pcloudcc libpcloudcc_lib.so: $(LIBSRC) gcc -o $@ -shared $(CFLAGS) $(LDFLAGS) $(LIBSRC)