Makefile
author František Kučera <franta-hg@frantovo.cz>
Sat, 19 Apr 2025 12:24:18 +0200
changeset 1 d7e35f20b1a5
parent 0 5c6ff8cd880b
permissions -rw-r--r--
vylepšený Makefile
franta-hg@1
     1
NAME = demo
franta-hg@1
     2
LIB  = lib$(NAME).so
franta-hg@1
     3
SRC  = demo.cpp
franta-hg@0
     4
franta-hg@1
     5
all: $(LIB)
franta-hg@1
     6
franta-hg@1
     7
.PHONY: all clean run info
franta-hg@1
     8
franta-hg@1
     9
$(LIB): $(SRC)
franta-hg@1
    10
	g++ -g -shared -fPIC $(^) -o $(@)
franta-hg@0
    11
franta-hg@0
    12
clean:
franta-hg@1
    13
	rm -f $(LIB)
franta-hg@0
    14
franta-hg@1
    15
run: $(LIB)
franta-hg@0
    16
	echo "\
franta-hg@1
    17
	    SELECT 'load_extension',   load_extension('./$(<)'); \
franta-hg@0
    18
	    SELECT 'get_pid',          get_pid(); \
franta-hg@0
    19
	    SELECT 'value_count',      value_count(), value_count('a'), value_count('a', 'b'), value_count(1,2,3); \
franta-hg@0
    20
	    SELECT 'multiply',         multiply(2, 4); \
franta-hg@0
    21
	" | sqlite3
franta-hg@0
    22
franta-hg@1
    23
info: $(LIB)
franta-hg@1
    24
	nm   $(<)
franta-hg@1
    25
	ldd  $(<)
franta-hg@1
    26
	file $(<)