PREFIX ?= /usr
BINDIR ?= $(PREFIX)/bin
LIBDIR ?= $(PREFIX)/lib64
INCLUDEDIR ?= $(PREFIX)/include
CC ?= cc
SOVERSION ?= 0

test:
	$(CC) -o test $(CFLAGS) convert.c xattrs.c test.c $(LDFLAGS)
	./test

# probably no need to overcomplicate things and link cli with the shared library
cli:
	$(CC) -o cli $(CFLAGS) convert.c xattrs.c cli.c $(LDFLAGS)

# the shared library does not have known consumers for now, but it may have them
libmcbcconvert:
	$(CC) $(CFLAGS) -fPIC -shared -o libmcbcconvert.so.$(SOVERSION) convert.c -Wl,-soname,libmcbcconvert.so.$(SOVERSION) $(LDFLAGS)

install:
	mkdir -p $(DESTDIR)
	mkdir -p $(DESTDIR)$(BINDIR)
	mkdir -p $(DESTDIR)$(LIBDIR)
	mkdir -p $(DESTDIR)$(INCLUDEDIR)/mcbc2selinux
	install -m0755 cli $(DESTDIR)$(BINDIR)/mcbc2selinux
	cd $(DESTDIR)$(BINDIR) && ln -sf mcbc2selinux MCBC-mac-to-SELinux
	install -m0755 libmcbcconvert.so.$(SOVERSION) $(DESTDIR)$(LIBDIR)
	cd $(DESTDIR)$(LIBDIR) && ln -sf libmcbcconvert.so.$(SOVERSION) libmcbcconvert.so
	install -m0644 convert.h xattrs.h $(DESTDIR)$(INCLUDEDIR)/mcbc2selinux

clean:
	rm -f test cli libmcbcconvert.so.$(SOVERSION)

rpm:
	rpmbuild --define "_sourcedir $$PWD" -bb *.spec

tarimg:
	tar -cf mcbc2selinux-docs-img.tar img
	rm -f .abf.yml
	abf put -n
