-#---------------------------------------------------------
-# Bytecode Module Targets:
-# If the user set MODULE_NAME then they want to build a
-# bytecode module from the sources. We compile all the
-# sources and link it together into a single bytecode
-# module.
-#---------------------------------------------------------
-
-ifdef MODULE_NAME
-ifeq ($(strip $(LLVMCC)),)
-$(warning Modules require LLVM capable compiler but none is available ****)
-else
-
-Module := $(LibDir)/$(MODULE_NAME).bc
-LinkModule := $(LLVMLINK)
-
-
-ifdef EXPORTED_SYMBOL_FILE
-LinkModule += -internalize-public-api-file=$(EXPORTED_SYMBOL_FILE)
-endif
-
-$(Module): $(BUILT_SOURCES) $(ObjectsBC) $(LibDir)/.dir $(LLVMLINK)
- $(Echo) Building $(BuildMode) Bytecode Module $(notdir $@)
- $(Verb) $(LinkModule) -o $@ $(ObjectsBC)
-
-all-local:: $(Module)
-
-clean-local::
-ifneq ($(strip $(Module)),)
- -$(Verb) $(RM) -f $(Module)
-endif
-
-ifdef BYTECODE_DESTINATION
-ModuleDestDir := $(BYTECODE_DESTINATION)
-else
-ModuleDestDir := $(DESTDIR)$(PROJ_libdir)
-endif
-
-ifdef NO_INSTALL
-install-local::
- $(Echo) Install circumvented with NO_INSTALL
-uninstall-local::
- $(Echo) Uninstall circumvented with NO_INSTALL
-else
-DestModule := $(ModuleDestDir)/$(MODULE_NAME).bc
-
-install-module:: $(DestModule)
-install-local:: $(DestModule)
-
-$(DestModule): $(ModuleDestDir) $(Module)
- $(Echo) Installing $(BuildMode) Bytecode Module $(DestModule)
- $(Verb) $(DataInstall) $(Module) $(DestModule)
-
-uninstall-local::
- $(Echo) Uninstalling $(BuildMode) Bytecode Module $(DestModule)
- -$(Verb) $(RM) -f $(DestModule)
-endif
-
-endif
-endif
-