Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- UNAME=$(shell uname)
- ifeq ($(UNAME), Darwin)
- CC=clang
- UNIFLAGS=-pedantic -Wall -fsanitize=address -g
- endif
- ifneq (,$(filter $(UNAME), Linux FreeBSD))
- CC=gcc
- UNIFLAGS=-pedantic -Wall -g
- endif
- SRCDIR=src
- CFLAGS=-c
- BUILDDIR=build
- LNFLAGS=-o
- DISTDIR=dist
- EXECUTABLE=myshell
- all: build
- mkdir -p $(DISTDIR)
- $(CC) $(BUILDDIR)/*.o $(UNIFLAGS) $(LNFLAGS) $(DISTDIR)/$(EXECUTABLE)
- build: *.o
- mkdir -p $(BUILDDIR)
- mv *.o $(BUILDDIR)
- *.o: $(SRCDIR)/*.c $(SRCDIR)/mystl/*.c
- $(CC) $(CFLAGS) $(UNIFLAGS) $(SRCDIR)/*.c $(SRCDIR)/mystl/*.c
- clean:
- rm -rf $(BUILDDIR)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement