include /env.mak

INCLUDES=-I../../include

CCFLAGS=-O2 -Wall $(CFLAGS) -fPIC -DSYNO_CONVERT_PATCH -DSYNO_ISCONVERTIBLETO_PATCH -DSYNO_ARRAY_SEARCH -DSYNO_WRITE_PATCH -DSYNO_READ_PATCH -DSYNO_DSM_6_0 -DSYNO_ASSERT_PATCH
CXXFLAGS=$(CCFLAGS) $(INCLUDES)
ARFLAGS=-rcs

SRCs=json_reader.cpp json_writer.cpp json_value.cpp
OBJs=$(SRCs:.cpp=.o)

all: libjson.so.1 libjson.a

libjson.so.1: $(OBJs)
	rm -f libjson.so.1
	$(CXX) ${CXXFLAGS} -shared -o libjson.so.1 $(OBJs)
	ln -sf libjson.so.1 libjson.so

libjson.a: $(OBJs)
	rm -f $@
	$(AR) $(ARFLAGS) $@ $(OBJs) $(ARCS)
	$(RANLIB) $@

clean:
	rm -f core */*~ *~ */*.o */*.po *.a *.o *.so*

install: libjson.so.1 libjson.a
	[ -d $(DESTDIR)/$(libdir) ] || install -d $(DESTDIR)/$(libdir)
	install -c -m 755 $^ $(DESTDIR)/$(libdir)
	ln -sf $< $(DESTDIR)/$(libdir)/libjson.so

remoteinstall: libjson.so.1
	[ -d $(DESTDIR)/$(libdir) ] || install -d $(DESTDIR)/$(libdir)
	install -c -m 755 $^ $(DESTDIR)/$(libdir)
	ln -sf $< $(DESTDIR)/$(libdir)/libjson.so
ifndef	NOSTRIP
	find $(DESTDIR)/$(libdir) -type f -name \*.so\* -print0 | xargs -0 $(STRIP)
endif

install-test: libjson.so.1
	scp $< $(RHOST):/usr/lib
	ssh $(RHOST) "systemctl restart synoscgi synocgid findhostd synoscgi-socket;"
