open_toontown_panda3d/dtool/src/build/Makefile.ss.rules

56 lines
1.3 KiB
Makefile

# Rules to construct .ss's from component files.
##############################################################################
#
# .h -> .ss conversion rules
#
# Clear ALLSSFILES
ALLSSFILES =
ifneq (,$(HFILES))
HSSFILES := $(HFILES:%.h=%.ss)
$(HSSFILES) : %.ss : %.h
$(SALIVATE) $(SALIVATE-FLAGS) $< > $@
ALLSSFILES := $(ALLSSFILES) $(HSSFILES)
endif
ifneq (,$(HHFILES))
HHSSFILES := $(HHFILES:%.hh=%.ss)
$(HHSSFILES) : %.ss : %.hh
@ cat $< > $(sstotmp)
@ for i in ${HHDIRS} ; do if test -r $$i/$(sstoh) ; then \
cat $$i/$(sstoh) >> $(sstotmp) ; fi ; done
$(SALIVATE) $(SALIVATE-FLAGS) $(sstotmp) > $@
@ rm -f $(sstotmp)
ALLSSFILES := $(ALLSSFILES) $(HHSSFILES)
endif
TOTALSSFILES := $(ALLSSFILES) $(OTHERSSFILES)
LIBTARGET := $(addprefix lib,$(addsuffix .so,$(basename $(TARGET))))
ifneq (,$(TOTALSSFILES))
$(TARGET): $(TOTALSSFILES)
@ echo -n "**** Creating Meta-ss file "$(TARGET)" ... "
@ echo '(load-shared-object "'$(LIBTARGET)'")' > $@
ifeq (,$(STRAIGHTINCLUDE))
@ echo '(define dl-handle (dlopen "'$(LIBTARGET)'" 2))' >> $@
@ for i in ${TOTALSSFILES} ; do echo ' ('load-once '"'$$i'")' >> $@ ; done
else
@ for i in ${TOTALSSFILES} ; do echo ' ('load-once '"'$$i'")' >> $@ ; done
endif
@ echo "done"
endif
ifneq (,$(ALLSSFILES))
clean::
rm -f $(TARGET) $(ALLSSFILES)
endif
cleanall: clean
rm -f $(TARGET)
list:
@ echo $(TARGET)