# Copyright (C) 2010-2017 by Hoefer Alfred 

USE_BULDIN_APP = y
USE_DEBUG_WIN = 

TOP = ../..

MAKEFLAGS += --no-print-directory

ifndef MAKEOKFLAG
DEBUG = 
STATIC_ALDLIB = y
RPATH_ALDLIB = y
#USE_libPM = y
USE_PNG = y
USE_JPEG = y
USE_JPEG_TURBO = 

# USE_ASM = c
USE_ACL = 

include $(TOP)/Makefile.tool

export USE_DEBUG_WIN USE_BULDIN_APP

MAKEOKFLAG = y
endif #MAKEOKFLAG

ifneq ($(BUILD_OS), Win32)
 include Mobj

 XLIBRARY += -lXext

 include $(TOP)/Makefile.LastBuilt

 ifndef MAKE_ALL
  SUBDIRS = $(TOP)/lib
 endif

 ifdef USE_BULDIN_APP

 include buildin_app/Mobj

 SUBDIRS += buildin_app
 EXTRACF += -DUSE_BULDIN_APP

 endif

 ifdef USE_DEBUG_WIN
  CFLAGS += -DUSE_DEBUG_WIN
  nOBJ += $(wmDebugWinOBJ) debug.o
 endif

 OBJL = $(addprefix $(loc_obj_PHAT)/,$(OBJS))
 APPS = aldesk$(EXE) testdesk$(EXE)
endif

vpath %.o $(loc_obj_PHAT)

all: subdirs $(OBJS) $(APPS)

.PHONY: subdirs $(SUBDIRS)

subdirs: $(SUBDIRS)

$(SUBDIRS):
	@$(MAKE) -C $@

.c.o:
	@echo "	CC $<"
	@$(CC) $(CFLAGS) $(EXTRACF) $(INCL) -c $< -o $(loc_obj_PHAT)/$@

$(OBJS): $(DEPLIB) $(DEPH)

aldesk$(EXE): aldesk.c $(OBJS) $(DEPLIB) $(DEPH) Mobj
	@echo "	CC "$(patsubst %$(EXE),%,$@).c
	@${RM} $(lib_obj_PHAT)/$(patsubst %$(EXE),%,$@).o
	@$(CC) $(CFLAGS) $(EXTRACF) $(INCL) -c $(patsubst %$(EXE),%,$@).c -o $(loc_obj_PHAT)/$(patsubst %$(EXE),%,$@).o

	@echo "	LD $@"
	@$(CC) $(LDFLAGS) -O2 $(PATHLIBS) $(RPATH) -o $@-$(VERSION) $(loc_obj_PHAT)/$(patsubst %$(EXE),%,$@).o $(OBJL) $(LIBRARY) $(XLIBRARY)

ifdef STRIP_BIN
	@echo "	STRIP $@"
	@$(STRIP) -s --remove-section=.note --remove-section=.comment $@-$(VERSION)
endif
	@rm -f $@
	@ln -s $@-$(VERSION) $@

	@$(UPDATE_BUILDversion)

testdesk$(EXE): testdesk.c $(DEPLIB) $(DEPH)
	@echo "	CC "$(patsubst %$(EXE),%,$@).c
	@${RM} $(lib_obj_PHAT)/$(patsubst %$(EXE),%,$@).o
	@$(CC) $(CFLAGS) $(EXTRACF) $(INCL) -c $(patsubst %$(EXE),%,$@).c -o $(loc_obj_PHAT)/$(patsubst %$(EXE),%,$@).o

	@echo "	LD $@"
	@$(CC) $(LDFLAGS) -O2 $(PATHLIBS) $(RPATH) -o $@ $(loc_obj_PHAT)/$(patsubst %$(EXE),%,$@).o $(LIBRARY) $(XLIBRARY)

ifdef STRIP_BIN
	@echo "	STRIP $@"
	@$(STRIP) -s --remove-section=.note --remove-section=.comment $@
endif

install:
ifneq ($(BUILD_OS), Win32)
	${RM} $(DESTDIR)$(bindir)/aldesk*
	${INSTALL} -p -D -m 0755 aldesk$(EXE)-$(VERSION) $(DESTDIR)$(bindir)/aldesk-$(VERSION)
	${RM} $(DESTDIR)$(bindir)/aldfilebox
	cd $(DESTDIR)$(bindir); ${LN} aldesk-$(VERSION) aldesk
ifdef USE_BULDIN_APP
	cd $(DESTDIR)$(bindir); ${LN} aldesk-$(VERSION) aldfilebox
endif
endif

uninstall:
ifneq ($(BUILD_OS), Win32)
	${RM} $(DESTDIR)$(bindir)/aldfilebox
	${RM} $(DESTDIR)$(bindir)/aldesk
	${RM} $(DESTDIR)$(bindir)/aldesk-$(VERSION)
endif

loc_clean:
	${RM} *.o $(loc_obj_PHAT)/*.o

clean:
	${RM} *.o $(loc_obj_PHAT)/*.o
	${RM} -r $(loc_obj_PHAT)
	${RM} aldesk$(EXE)
	${RM} aldesk$(EXE)-$(VERSION)
	${RM} testdesk$(EXE)
ifndef MAKE_ALL
	$(MAKE) -C $(TOP)/lib  -j clean
endif
