28 lines
576 B
Makefile
28 lines
576 B
Makefile
# Makefile
|
|
CC = gcc
|
|
CFLAGS = -Wall -Wextra -std=c99
|
|
LDFLAGS = -ldl
|
|
|
|
# Цель по умолчанию
|
|
all: task12 libtextlib.so
|
|
|
|
# Основная программа
|
|
task12: task12.c
|
|
$(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
|
|
|
|
# Динамическая библиотека
|
|
libtextlib.so: textlib.c
|
|
$(CC) $(CFLAGS) -fPIC -shared -o $@ $<
|
|
|
|
# Очистка
|
|
clean:
|
|
rm -f task12 libtextlib.so input.txt output.txt
|
|
|
|
# Тест
|
|
test: all
|
|
echo -e "Hello world\ntest line\nanother" > input.txt
|
|
./task12 input.txt output.txt 5 ./libtextlib.so
|
|
cat output.txt
|
|
|
|
.PHONY: all clean test
|