kirill-refactor
This commit is contained in:
37
mine/lab_2/Makefile
Normal file
37
mine/lab_2/Makefile
Normal file
@@ -0,0 +1,37 @@
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -Wextra -std=c99
|
||||
LDFLAGS =
|
||||
|
||||
# Static build
|
||||
static: main_static
|
||||
|
||||
main_static: main_static.o textlib_static.o
|
||||
$(CC) $(CFLAGS) -o $@ main_static.o textlib_static.o
|
||||
|
||||
main_static.o: main_static.c textlib_static.h
|
||||
$(CC) $(CFLAGS) -c -o $@ main_static.c
|
||||
|
||||
textlib_static.o: textlib_static.c textlib_static.h
|
||||
$(CC) $(CFLAGS) -c -o $@ textlib_static.c
|
||||
|
||||
# Dynamic build
|
||||
dynamic: main_dynamic libtextlib.so
|
||||
|
||||
main_dynamic: main_dynamic.o
|
||||
$(CC) $(CFLAGS) -o $@ main_dynamic.o -ldl
|
||||
|
||||
main_dynamic.o: main_dynamic.c
|
||||
$(CC) $(CFLAGS) -c -o $@ main_dynamic.c
|
||||
|
||||
libtextlib.so: textlib_dynamic.c
|
||||
$(CC) $(CFLAGS) -fPIC -shared -o $@ textlib_dynamic.c
|
||||
|
||||
# Build both
|
||||
all: static dynamic
|
||||
|
||||
# Clean
|
||||
clean:
|
||||
rm -f *.o main_static main_dynamic libtextlib.so out.txt
|
||||
@echo "Cleaned build artifacts."
|
||||
|
||||
.PHONY: all static dynamic clean
|
||||
Reference in New Issue
Block a user