Makefile
changeset 1 d7e35f20b1a5
parent 0 5c6ff8cd880b
     1.1 --- a/Makefile	Tue May 12 21:30:46 2020 +0200
     1.2 +++ b/Makefile	Sat Apr 19 12:24:18 2025 +0200
     1.3 @@ -1,20 +1,26 @@
     1.4 -all: libdemo.so
     1.5 +NAME = demo
     1.6 +LIB  = lib$(NAME).so
     1.7 +SRC  = demo.cpp
     1.8  
     1.9 -libdemo.so: demo.cpp
    1.10 -	g++ -g -shared -fPIC demo.cpp -o libdemo.so
    1.11 +all: $(LIB)
    1.12 +
    1.13 +.PHONY: all clean run info
    1.14 +
    1.15 +$(LIB): $(SRC)
    1.16 +	g++ -g -shared -fPIC $(^) -o $(@)
    1.17  
    1.18  clean:
    1.19 -	rm -f libdemo.so
    1.20 +	rm -f $(LIB)
    1.21  
    1.22 -run: libdemo.so
    1.23 +run: $(LIB)
    1.24  	echo "\
    1.25 -	    SELECT 'load_extension',   load_extension('./libdemo.so'); \
    1.26 +	    SELECT 'load_extension',   load_extension('./$(<)'); \
    1.27  	    SELECT 'get_pid',          get_pid(); \
    1.28  	    SELECT 'value_count',      value_count(), value_count('a'), value_count('a', 'b'), value_count(1,2,3); \
    1.29  	    SELECT 'multiply',         multiply(2, 4); \
    1.30  	" | sqlite3
    1.31  
    1.32 -info: libdemo.so
    1.33 -	nm libdemo.so
    1.34 -	ldd libdemo.so
    1.35 -	file libdemo.so
    1.36 +info: $(LIB)
    1.37 +	nm   $(<)
    1.38 +	ldd  $(<)
    1.39 +	file $(<)