# # makefile for ossie-liquid-components # # Targets: # all : build all component executables # install : install the components # clean-[component] : clean specific component # clean : clean all targets # # paths srcdir = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ VPATH = @srcdir@ include_dirs := . include vpath %.h $(include_dirs) # programs CXX := @CXX@ MV := mv -f RM := rm -f SED := sed RANLIB := ranlib # flags INCLUDE_CXXFLAGS = $(addprefix -I ,$(include_dirs)) # -g : debugging info CXXFLAGS += $(INCLUDE_CXXFLAGS) -g -O2 -Wall -fPIC $(CONFIG_CXXFLAGS) LDFLAGS += @LIBS@ # components # # adding to this list implies the following files: # include/.h # src/.cpp # xml/.prf.xml # xml/.scd.xml # xml/.spd.xml components := \ complexFloat2Short \ complexShort2Float \ Channel \ FlexframeGen \ FlexframeSync \ FrameGen64 \ FrameSync64 \ PacketDecoder \ PacketEncoder \ PacketSink \ PacketSource \ Resampler # Target collection programs := $(addprefix src/,$(components)) sources := $(patsubst %,%.cpp,$(programs)) objects := $(patsubst %.cpp,%.o,$(sources)) all: $(programs) # additional sources extra_sources := sources += $(extra_sources) ## ## TARGET: components ## # specific component target, example: # complexFloat2Short : src/complexFloat2Short $(components) : % : src/% $(objects) : %.o : %.cpp $(programs) : % : %.o ## ## TARGET: install ## # Installs the components in host system # install specific component, example: # install-complexFloat2Short : src/complexFloat2Short $(addprefix install-,$(components)) : install-% : % @echo installing $<... mkdir -p /sdr/dom/bin/ install -m 755 src/$< /sdr/dom/bin/$< mkdir -p /sdr/dom/xml/$< install -m 644 xml/$<.prf.xml /sdr/dom/xml/$