view Makefile.mac @ 60:d0b83fc1d62a default tip

Remember our input directory on a per-invocation basis.
author David Barts <n5jrn@me.com>
date Sun, 26 Jul 2020 15:14:03 -0700
parents 89d7f4d91f67
children
line wrap: on
line source

CXX = g++
CXXFLAGS = -I$(JRE_HOME)/include -I$(JRE_HOME)/include/darwin \
    -I$(EXIV2_HOME)/include -I$(EXIV2_HOME)/build
NDIR = src/name/blackcap/exifwasher/exiv2
BDIR = src/name/blackcap/exifwasher/binaries/mac

.PHONY: all checkenv

all: mkdirs checkenv $(BDIR)/libjni.dylib $(BDIR)/libexiv2.dylib

mkdirs:
	@[ -d "$(BDIR)" ] || mkdir -p "$(BDIR)"

checkenv:
	@if [ -z "$(JRE_HOME)" -o -z "$(EXIV2_HOME)" ]; then \
		1>&2 echo "JRE_HOME or EXIV2_HOME not set"; \
		exit 1; \
	fi

$(NDIR)/native.o: $(NDIR)/native.cpp

$(BDIR)/libjni.dylib: $(NDIR)/native.o
	$(CXX) -dynamiclib -o $@ $< -L$(EXIV2_HOME)/build/lib -lexiv2

$(BDIR)/libexiv2.dylib: $(EXIV2_HOME)/build/lib/libexiv2.dylib
	cp -fp $< $@