diff options
Diffstat (limited to 'ACE/include/makeinclude/rules.bin.GNU')
-rw-r--r-- | ACE/include/makeinclude/rules.bin.GNU | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/ACE/include/makeinclude/rules.bin.GNU b/ACE/include/makeinclude/rules.bin.GNU new file mode 100644 index 00000000000..4a0f71f1bb0 --- /dev/null +++ b/ACE/include/makeinclude/rules.bin.GNU @@ -0,0 +1,68 @@ +# -*- Makefile -*- + +#---------------------------------------------------------------------------- +# $Id$ +# +# Build binaries +# GNU version +# Requires GNU make +#---------------------------------------------------------------------------- + +ifdef BIN + VBIN = $(BIN:%=%$(VAR)) + # VBIN always depends on idl_stubs and libraries, if they exist. + ifdef IDL_SRC + $(VBIN): $(IDL_SRC) + endif + ifdef VLIBS + $(VBIN): $(LIB_INSTALL) $(VLIBS) + endif +else # !BIN + ifndef BIN_UNCHECKED + @echo Warning: rules.bin.GNU included, but no BIN targets detected. + endif # !BIN_UNCHECKED +endif # BIN + +VOBJS = $(addsuffix .$(OBJEXT),$(addprefix $(VDIR),$(basename $(SRC)))) + +ifneq ($(IDL_SRC),) + $(VBIN): $(IDL_SRC) +endif + +# Needed for depend. +PSRC += $(addsuffix .cpp, $(CLEANUP_BIN)) + +CLEANUP_INSTALL += $(CLEANUP_BIN:%=$(INSBIN)/%$(VAR)$(EXEEXT)) + +CHORUSLINK ?= +VXWORKSLINK ?= +using_aix_vacpp ?= + +ifeq ($(VXWORKSLINK),true) +$(BIN): $(DEFAULTRULE) + mv $(DEFAULTRULE) $@ +else # !VXWORKSLINK +ifeq ($(CHORUSLINK),true) +$(BIN): %: $(VDIR)%.$(OBJEXT) $(VOBJS) + $(LINK.cc) $(CC_OUTPUT_FLAG) $@ $(sort $(VDIR)$@.$(OBJEXT) $(VOBJS)) $(VLDLIBS) $(LDFLAGS) $(POSTLINK) +# $(MERGEDIR)/dtool/mkctors $@.xp.o > $@.ct.s +# $(CXX) -c $@.ct.s +# $(RM) $@.ct.s +# $(LD) $(LDOPTIONS) -e _start -o $@ $(MERGEDIR)/lib/crt/crth.u.o $(MERGEDIR)/lib/crt/crt0.o $(MERGEDIR)/lib/crt/crti.o $@.xp.o $@.ct.o $(MERGEDIR)/lib/crt/crtn.o -dn -T $(MERGEDIR)/src/act/slots/act_u.ld +# $(RM) $@.xp.o +# $(RM) $@.ct.o +else # !CHORUSLINK + ifeq (1,$(using_aix_vacpp)) +$(BIN): %: %.icc $(SRC) + vacbld_r $< -severitylevel=warning + else # !using_aix_vacpp + ifdef kylix +$(BIN): %: $(VDIR)%.$(OBJEXT) $(VOBJS) + $(LINK.cc) $(LDFLAGS) $(CC_OUTPUT_FLAG) $(VLDLIBS) $(BORINITEXEOBJ) $(POSTLINK) $(sort $(VDIR)$@.$(OBJEXT) $(VOBJS)) , $@,, + else # !kylix +$(BIN): %: $(VDIR)%.$(OBJEXT) $(VOBJS) + $(LINK.cc) $(LDFLAGS) $(CC_OUTPUT_FLAG) $@ $(sort $(VDIR)$@.$(OBJEXT) $(VOBJS)) $(VLDLIBS) $(POSTLINK) + endif # kylix + endif # using_aix_vacpp +endif +endif |