CC  = g++
CXX = g++

CFLAGS   = -g -Wall
CXXFLAGS = -g -Wall -std=c++20

# turn off warnings about unused variables
CXXFLAGS += -Wno-unused-variable

executables = sharedptr1 sharedptr2 uniqueptr

.PHONY: default
default: $(executables)

sharedptr1: sharedptr1.o

sharedptr2: sharedptr2.o

uniqueptr: uniqueptr.o

sharedptr1.o: sharedptr.h

sharedptr2.o: sharedptr.h

.PHONY: clean
clean:
	rm -f *~ a.out core *.o $(executables)

.PHONY: all
all: clean default
