################################################################################
# vls (VideoLAN Server) module Makefile
# (c)1999-2001 VideoLAN
################################################################################


# Makefile skeleton for modules building
# The Makefile which includes this file at the end must define at least
#   - MODULE which is the name of the module;
#   - SRC which contains the files to be built.


################################################################################
# Files description
################################################################################

#
# Object files
# 
PLUGIN_OBJ:=$(MODULE_SRC:%.cpp=obj/%.o)
BUILTIN_OBJ:=$(MODULE_SRC:%.cpp=obj/BUILTIN_%.o)

#
# Dependancies
#
MODULE_DEP:=$(MODULE_SRC:%.cpp=dep/%.d) $(MODULE_SRC:%.cpp=dep/BUILTIN_%.d)

# export symbols for recursive Makefiles
export


################################################################################
# Default target
################################################################################

default:
	@echo "This Makefile should not be called directly,"


################################################################################
# Targets definition
################################################################################

#
# Build rules
#
clean:
		rm -Rf obj

distclean:	clean
		rm -f ../../../bin/$(MODULE).so
		rm -f ../../../obj/$(MODULE).a
		rm -Rf dep
		rm -Rf *.log *.dbg

dep:		$(DEP)

../../../bin/$(MODULE).so:	$(PLUGIN_OBJ)
		@echo "Linking $@..."
		@test -d ../../../bin || mkdir -p ../../../bin
		$(CXX) $(LCFLAGS) $(MODULE_LCFLAGS) -o $@ $^ $(MODULE_LIB)
		chmod 755 $@

../../../obj/$(MODULE).a:	$(BUILTIN_OBJ)
		@echo "Linking $@..."
		@test -d ../../../obj || mkdir -p ../../../obj
		$(AR) r $@ $^
		$(RANLIB) $@

$(PLUGIN_OBJ):	obj/%.o: dep/%.d
$(PLUGIN_OBJ):	obj/%.o: %.cpp
		@test -d obj/$(dir $*) || mkdir -p obj/$(dir $*)
		@echo "Compiling $<..."
		$(CXX) $(CCFLAGS) $(MODULE_CCFLAGS) -D__PLUGIN__ $(INCLUDE) -fPIC -o $@ -c $< 

$(BUILTIN_OBJ):	obj/BUILTIN_%.o: dep/%.d
$(BUILTIN_OBJ):	obj/BUILTIN_%.o: %.cpp
		@test -d obj/$(dir $*) || mkdir -p obj/$(dir $*)
		@echo "Compiling $<..."
		$(CXX) $(CCFLAGS) $(MODULE_CCFLAGS) -D__BUILTIN__ $(INCLUDE) -o $@ -c $< 

$(MODULE_DEP):	../../../Makefile.module FORCE
$(MODULE_DEP):	dep/%.d: %.cpp
		@$(MAKE) -s --no-print-directory -f \
			../../../Makefile.module.dep $@

FORCE:



syntax highlighted by Code2HTML, v. 0.9.1