Skip to content

Commit

Permalink
merge master
Browse files Browse the repository at this point in the history
  • Loading branch information
nniclausse committed Sep 6, 2012
2 parents 10d19f3 + 236b0cd commit db32eae
Show file tree
Hide file tree
Showing 109 changed files with 6,544 additions and 3,501 deletions.
49 changes: 49 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,3 +1,52 @@
1.4.1 -> 1.4.2 Minor enhancements and bugfixes (4 Jan 2012)
Bugfix:
* [TSUN-199] - computation of NUsers is wrong
* [TSUN-206] - build failure with erlang R15B
Improvements:
* [TSUN-202] - IPv6 support
* [TSUN-203] - snmp oids should be customizable in the config file
* [TSUN-205] - handle dyn_variables as array in test conditions (if/until/while)
New Features:
* [TSUN-191] - allow outputting log to stdout
* [TSUN-192] - structured log output (JSON)
* [TSUN-193] - accept configuration from stdin
* [TSUN-197] - Have bug and error message on stderr and not stdout.
1.4.0 -> 1.4.1 Minor bugfixes (13 Sep 2011)
Bugfix:
* [TSUN-188] - munin plugin is not working in 1.4.0
* [TSUN-189] - the controller VM is not used in some case
* [TSUN-190] - pgsql recorder can record a connect request in an already connected session
1.3.3 -> 1.4.0 Major enhancements and bugfixes (5 Sep 2011)
Bugfix:
* [TSUN-129] - regexp (defined in match or dynvars) can fail when chunk encoding is used.
* [TSUN-150] - Munin monitoring broken by cpu stats config request
* [TSUN-163] - Tsung doesn't detect subdomains.
* [TSUN-166] - snmp monitoring does not work with erlang R14A
* [TSUN-171] - maxnumber set in a phase is not always enforced
* [TSUN-172] - auth sasl can't authenticate against ejabberd
* [TSUN-178] - some characters can make url and headers rewriting fail in the recorder
* [TSUN-179] - tsung generated message stanzas are not XMPP compliant
* [TSUN-180] - file server crash if a dynamic substitution use it
* [TSUN-182] - When many clients are configured with few static users, none of them are launched.
* [TSUN-183] - tsung can stop too soon in some cases
* [TSUN-184] - 'random_number' with start and end actually returns a number from start+1 to end
* [TSUN-187] - Client IP scan is very slow on Linux; also uses obsolete "ifconfig"
Improvements:
* [TSUN-54] - tsung is very slow when a lot of dynamic variables are set
* [TSUN-96] - generating more than 64k connections from a single machine
* [TSUN-106] - Add content-encoding support for dynvar extraction
* [TSUN-123] - add option to read usernames from an external file for jabber
* [TSUN-125] - use the new re module everywhere instead of regexp/gregexp
* [TSUN-152] - Add "state_rcv" record as parameter to "get_message" function.
* [TSUN-153] - dynvar used in match may contain regexp special characters
* [TSUN-185] - handle postgresql extended protocol
New Features:
* [TSUN-162] - add foreach tag (loop when a dyn_variable is a list)
* [TSUN-164] - add a switch to allow light queries/replies logging
* [TSUN-165] - add a way to synchronize users for all plugins.
* [TSUN-167] - add do=dump option to matching
* [TSUN-168] - thinktimes value could be dynamically generated with dyn_variable
* [TSUN-181] - add option to simulate slow connections
1.3.2 -> 1.3.3 Minor bugfixes (17 Aug 2010)
Bugfix:
* [TSUN-154] - parent proxy doesn't work anymore in 1.3.x (tested with 1.3.2 and 1.3.0).
Expand Down
201 changes: 107 additions & 94 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,15 @@ ERLANG_XMERL_DIR=@ERLANG_LIB_DIR_xmerl@/include

raw_erlang_prefix=@libdir@/erlang/

prefix=$(DESTDIR)@prefix@
PACKAGE_TARNAME=@PACKAGE_TARNAME@

prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
libdir=@libdir@
datadir=@datadir@
datarootdir=@datarootdir@
docdir=@docdir@
TEMPLATES_SUBDIR=@TEMPLATES_SUBDIR@

CONFIGURE_DEPENDENCIES=@CONFIGURE_DEPENDENCIES@
Expand Down Expand Up @@ -72,11 +75,14 @@ endif
BINDIR = $(bindir)
LIBDIR = $(libdir)/tsung/
TOOLS_BINDIR = $(LIBDIR)/bin
CONFDIR = $(datadir)/doc/tsung/examples
CONFDIR = $(docdir)/examples
SHARE_DIR = $(datadir)/tsung/
TEMPLATES_DIR = $(datadir)/$(TEMPLATES_SUBDIR)
MAN_DIR = $(datadir)/man/man1/
DOC_DIR = $(datadir)/doc/tsung
DOC_DIR = $(docdir)

# custom behaviours
BEHAVIORS = ebin/ts_plugin.beam

BUILDER_LOG = /tmp/builder-tsung.log

Expand All @@ -91,6 +97,7 @@ CONTROLLER_TARGETDIR = $(ERLANG_LIB_DIR)/$(CONTROLLER_APPLICATION)-$(VERSION)
TARGETDIR = $(ERLANG_LIB_DIR)/$(APPLICATION)-$(VERSION)

TEMPLATES = $(wildcard $(ESRC)/templates/*.thtml)
TEMPLATES += $(wildcard $(ESRC)/templates/*.js)
TMP = $(wildcard *~) $(wildcard src/*~) $(wildcard inc/*~)
INC_FILES = $(wildcard $(INC)/*.hrl)
LIBSRC = $(wildcard $(ESRC)/lib/[^mochi]*.erl)
Expand Down Expand Up @@ -213,80 +220,80 @@ clean:
install: doc boot install_recorder install_controller $(CONFFILE)
-rm -f $(TMP)

install -d $(TARGETDIR)/priv
install -d $(TARGETDIR)/ebin
install -d $(TARGETDIR)/src
install -d $(TARGETDIR)/include
install -d $(TOOLS_BINDIR)/
install -d $(BINDIR)/
install -d $(DESTDIR)$(TARGETDIR)/priv
install -d $(DESTDIR)$(TARGETDIR)/ebin
install -d $(DESTDIR)$(TARGETDIR)/src
install -d $(DESTDIR)$(TARGETDIR)/include
install -d $(DESTDIR)$(TOOLS_BINDIR)/
install -d $(DESTDIR)$(BINDIR)/

install -m 0644 $(INC_FILES) $(TARGETDIR)/include/
install -m 0644 $(TARGET) $(TARGETDIR)/ebin/
install -m 0644 $(LIB_TARGET) $(TARGETDIR)/ebin/
install -m 0644 builder.beam $(TARGETDIR)/ebin/
install -m 0644 $(INC_FILES) $(DESTDIR)$(TARGETDIR)/include/
install -m 0644 $(TARGET) $(DESTDIR)$(TARGETDIR)/ebin/
install -m 0644 $(LIB_TARGET) $(DESTDIR)$(TARGETDIR)/ebin/
install -m 0644 builder.beam $(DESTDIR)$(TARGETDIR)/ebin/


install -m 0644 $(TGT_APPFILES_E) $(TARGETDIR)/ebin/
install -m 0644 $(TGT_APPFILES_P) $(TARGETDIR)/priv/
install -m 0644 $(TGT_APPFILES_E) $(DESTDIR)$(TARGETDIR)/ebin/
install -m 0644 $(TGT_APPFILES_P) $(DESTDIR)$(TARGETDIR)/priv/


install -m 0644 $(SRC) $(SRC_APPFILES) $(TARGETDIR)/src/
echo $(BUILD_OPTIONS_DOT) > $(TARGETDIR)/BUILD_OPTIONS
install -m 0644 $(SRC) $(SRC_APPFILES) $(DESTDIR)$(TARGETDIR)/src/
echo $(BUILD_OPTIONS_DOT) > $(DESTDIR)$(TARGETDIR)/BUILD_OPTIONS


# install the man page & user's manual
install -d $(MAN_DIR)
install -m 0644 $(MANPAGES) $(MAN_DIR)
install -d $(DOC_DIR)/images
install -m 0644 $(USERMANUAL) $(DOC_DIR)
install -m 0644 $(USERMANUAL_IMG) $(DOC_DIR)/images
install -d $(DESTDIR)$(MAN_DIR)
install -m 0644 $(MANPAGES) $(DESTDIR)$(MAN_DIR)
install -d $(DESTDIR)$(DOC_DIR)/images
install -m 0644 $(USERMANUAL) $(DESTDIR)$(DOC_DIR)
install -m 0644 $(USERMANUAL_IMG) $(DESTDIR)$(DOC_DIR)/images

# create startup script
install -m 0755 tsung.sh $(SCRIPT)
install -m 0755 tsung-recorder.sh $(REC_SCRIPT)
install -m 0755 $(PERL_SCRIPTS) $(TOOLS_BINDIR)
install -m 0755 tsung.sh $(DESTDIR)$(SCRIPT)
install -m 0755 tsung-recorder.sh $(DESTDIR)$(REC_SCRIPT)
install -m 0755 $(PERL_SCRIPTS) $(DESTDIR)$(TOOLS_BINDIR)
# tsung-plotter
install -m 0755 $(TSPLOT) $(BINDIR)/tsplot
install -d $(LIBDIR)/tsung_plotter
install -d $(SHARE_DIR)/tsung_plotter
install -m 0644 $(TSUNG_PLOTTER_LIB) $(LIBDIR)/tsung_plotter
install -m 0644 $(TSUNG_PLOTTER_CONF) $(SHARE_DIR)/tsung_plotter
install -m 0755 $(TSPLOT) $(DESTDIR)$(BINDIR)/tsplot
install -d $(DESTDIR)$(LIBDIR)/tsung_plotter
install -d $(DESTDIR)$(SHARE_DIR)/tsung_plotter
install -m 0644 $(TSUNG_PLOTTER_LIB) $(DESTDIR)$(LIBDIR)/tsung_plotter
install -m 0644 $(TSUNG_PLOTTER_CONF) $(DESTDIR)$(SHARE_DIR)/tsung_plotter

install -d $(CONFDIR)
install -m 0644 $(CONFFILE) $(CONFDIR)/
install -d $(DESTDIR)$(CONFDIR)
install -m 0644 $(CONFFILE) $(DESTDIR)$(CONFDIR)/

install -d $(TEMPLATES_DIR)
install -m 0644 $(TEMPLATES) $(TEMPLATES_DIR)/
install -m 0644 $(DTD) $(SHARE_DIR)/
install -d $(DESTDIR)$(TEMPLATES_DIR)
install -m 0644 $(TEMPLATES) $(DESTDIR)$(TEMPLATES_DIR)/
install -m 0644 $(DTD) $(DESTDIR)$(SHARE_DIR)/

install_recorder:
install -d $(RECORDER_TARGETDIR)/priv
install -d $(RECORDER_TARGETDIR)/ebin
install -d $(RECORDER_TARGETDIR)/src
install -d $(RECORDER_TARGETDIR)/include
install_recorder: boot
install -d $(DESTDIR)$(RECORDER_TARGETDIR)/priv
install -d $(DESTDIR)$(RECORDER_TARGETDIR)/ebin
install -d $(DESTDIR)$(RECORDER_TARGETDIR)/src
install -d $(DESTDIR)$(RECORDER_TARGETDIR)/include

install -m 0644 $(INC_FILES) $(RECORDER_TARGETDIR)/include
install -m 0644 $(RECORDER_TARGET) $(RECORDER_TARGETDIR)/ebin
install -m 0644 $(INC_FILES) $(DESTDIR)$(RECORDER_TARGETDIR)/include
install -m 0644 $(RECORDER_TARGET) $(DESTDIR)$(RECORDER_TARGETDIR)/ebin

install -m 0644 $(RECORDER_TGT_APPFILES_E) $(RECORDER_TARGETDIR)/ebin
install -m 0644 $(RECORDER_TGT_APPFILES_P) $(RECORDER_TARGETDIR)/priv
install -m 0644 $(RECORDER_TGT_APPFILES_E) $(DESTDIR)$(RECORDER_TARGETDIR)/ebin
install -m 0644 $(RECORDER_TGT_APPFILES_P) $(DESTDIR)$(RECORDER_TARGETDIR)/priv

install -m 0644 $(RECORDER_SRC) $(RECORDER_SRC_APPFILES) $(RECORDER_TARGETDIR)/src
@echo $(BUILD_OPTIONS_DOT) > $(RECORDER_TARGETDIR)/BUILD_OPTIONS
install -m 0644 $(RECORDER_SRC) $(RECORDER_SRC_APPFILES) $(DESTDIR)$(RECORDER_TARGETDIR)/src
@echo $(BUILD_OPTIONS_DOT) > $(DESTDIR)$(RECORDER_TARGETDIR)/BUILD_OPTIONS

install_controller:
install -d $(CONTROLLER_TARGETDIR)/priv
install -d $(CONTROLLER_TARGETDIR)/ebin
install -d $(CONTROLLER_TARGETDIR)/src
install -d $(CONTROLLER_TARGETDIR)/include
install -m 0644 $(INC_FILES) $(CONTROLLER_TARGETDIR)/include
install -m 0644 $(CONTROLLER_TARGET) $(CONTROLLER_TARGETDIR)/ebin
install_controller: boot
install -d $(DESTDIR)$(CONTROLLER_TARGETDIR)/priv
install -d $(DESTDIR)$(CONTROLLER_TARGETDIR)/ebin
install -d $(DESTDIR)$(CONTROLLER_TARGETDIR)/src
install -d $(DESTDIR)$(CONTROLLER_TARGETDIR)/include
install -m 0644 $(INC_FILES) $(DESTDIR)$(CONTROLLER_TARGETDIR)/include
install -m 0644 $(CONTROLLER_TARGET) $(DESTDIR)$(CONTROLLER_TARGETDIR)/ebin

install -m 0644 $(CONTROLLER_TGT_APPFILES_E) $(CONTROLLER_TARGETDIR)/ebin
install -m 0644 $(CONTROLLER_TGT_APPFILES_P) $(CONTROLLER_TARGETDIR)/priv
install -m 0644 $(CONTROLLER_TGT_APPFILES_E) $(DESTDIR)$(CONTROLLER_TARGETDIR)/ebin
install -m 0644 $(CONTROLLER_TGT_APPFILES_P) $(DESTDIR)$(CONTROLLER_TARGETDIR)/priv

install -m 0644 $(CONTROLLER_SRC) $(CONTROLLER_SRC_APPFILES) $(CONTROLLER_TARGETDIR)/src
@echo $(BUILD_OPTIONS_DOT) > $(CONTROLLER_TARGETDIR)/BUILD_OPTIONS
install -m 0644 $(CONTROLLER_SRC) $(CONTROLLER_SRC_APPFILES) $(DESTDIR)$(CONTROLLER_TARGETDIR)/src
@echo $(BUILD_OPTIONS_DOT) > $(DESTDIR)$(CONTROLLER_TARGETDIR)/BUILD_OPTIONS

uninstall:
rm -rf $(TARGETDIR) $(SCRIPT)
Expand All @@ -295,57 +302,57 @@ boot: tsung priv/tsung.boot priv/tsung_recorder.boot priv/tsung_controller.boot

priv/tsung.boot: builder.beam $(SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(APPLICATION)-$(VERSION)/ebin
@cp $(TARGET) $(LIB_TARGET) temp/lib/$(APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(APPLICATION) temp/lib/$(APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp/lib/$(APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp/lib/$(APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp/lib/$(APPLICATION)-$(VERSION)/
@ln -sf $(PWD) temp/lib/$(APPLICATION)-$(VERSION)
@rm -rf temp_ts
@mkdir -p temp_ts/lib/$(APPLICATION)-$(VERSION)/ebin
@cp $(TARGET) $(LIB_TARGET) temp_ts/lib/$(APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(APPLICATION) temp_ts/lib/$(APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp_ts/lib/$(APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp_ts/lib/$(APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp_ts/lib/$(APPLICATION)-$(VERSION)/
@ln -sf $(PWD) temp_ts/lib/$(APPLICATION)-$(VERSION)
@echo -n "build main app boot script ... "
@(cd temp/lib/$(APPLICATION)-$(VERSION) \
@(cd temp_ts/lib/$(APPLICATION)-$(VERSION) \
&& echo $(BUILD_OPTIONS) > $(BUILD_OPTIONS_FILE) \
&& $(ERL) -noshell -s builder go -s init stop >> $(BUILDER_LOG) 2>&1 \
)
@cp temp/lib/$(APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp
@cp temp_ts/lib/$(APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp_ts
@echo "done"

priv/tsung_controller.boot: builder.beam $(CONTROLLER_SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin
@cp $(CONTROLLER_TARGET) temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(CONTROLLER_APPLICATION) temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/
@rm -rf temp_tsc
@mkdir -p temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin
@cp $(CONTROLLER_TARGET) temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(CONTROLLER_APPLICATION) temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/
@echo -n "build controller boot script ... "
@(cd temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION) \
@(cd temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION) \
&& echo $(BUILD_OPTIONS) > $(BUILD_OPTIONS_FILE) \
&& $(ERL) -noshell -s builder go -s init stop >> $(BUILDER_LOG) 2>&1 \
)
@cp temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp
@cp temp_tsc/lib/$(CONTROLLER_APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp_tsc
@echo "done"

priv/tsung_recorder.boot: builder.beam $(RECORDER_SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin
@cp $(RECORDER_TARGET) temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(RECORDER_APPLICATION) temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/
@rm -rf temp_tsr
@mkdir -p temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin
@cp $(RECORDER_TARGET) temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin
@ln -sf $(PWD)/src/$(RECORDER_APPLICATION) temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/src
@ln -sf $(PWD)/include temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/include
@ln -sf $(PWD)/priv temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/priv
@ln -sf $(PWD)/builder.beam temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/
@echo -n "build recorder boot script ... "
@(cd temp/lib/$(RECORDER_APPLICATION)-$(VERSION) \
@(cd temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION) \
&& echo $(BUILD_OPTIONS) > $(BUILD_OPTIONS_FILE) \
&& $(ERL) -noshell -s builder go -s init stop >> $(BUILDER_LOG) 2>&1 \
)
@cp temp/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp
@cp temp_tsr/lib/$(RECORDER_APPLICATION)-$(VERSION)/ebin/*.app ebin
@rm -rf temp_tsr
@echo "done"


Expand Down Expand Up @@ -393,6 +400,7 @@ release: Makefile tsung.spec doc
$(USERMANUAL) $(USERMANUAL_SRC) $(USERMANUAL_IMG) $(DTD) \
COPYING README LISEZMOI TODO $(CONFFILE_SRC) $(TEST_CONFFILE_SRC) \
priv/builder.erl tsung.sh.in vsn.mk src/test/*.csv src/test/*.txt \
src/test/*.out \
$(DEBIAN) $(PERL_SCRIPTS_SRC) CONTRIBUTORS CHANGES \
$(TSPLOT_SRC) $(TSUNG_PLOTTER_CONF) $(TSUNG_PLOTTER_LIB)\
configure configure.in config.guess *.m4 config.sub Makefile.in \
Expand All @@ -417,17 +425,22 @@ ebin/%.beam: src/lib/%.erl $(INC_FILES)
@echo "Compiling $< ... "
@$(CC) -W0 $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -o ebin $<

ebin/%.beam: src/$(APPLICATION)/%.erl $(INC_FILES)
# to avoid circular dependency
ebin/ts_plugin.beam: src/$(APPLICATION)/ts_plugin.erl $(INC_FILES)
@echo "Compiling $< ... "
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -pa ebin -o ebin $<

ebin/%.beam: src/$(APPLICATION)/%.erl $(INC_FILES) $(BEHAVIORS)
@echo "Compiling $< ... "
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -o ebin $<
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -pa ebin -o ebin $<

ebin/%.beam: src/$(RECORDER_APPLICATION)/%.erl $(INC_FILES)
ebin/%.beam: src/$(RECORDER_APPLICATION)/%.erl $(INC_FILES) $(BEHAVIORS)
@echo "Compiling $< ... "
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -o ebin $<
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -pa ebin -o ebin $<

ebin/%.beam: src/$(CONTROLLER_APPLICATION)/%.erl $(INC_FILES)
ebin/%.beam: src/$(CONTROLLER_APPLICATION)/%.erl $(INC_FILES) $(BEHAVIORS)
@echo "Compiling $< ... "
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -o ebin $<
@$(CC) $(OPT) -I $(INC) -I $(ERLANG_XMERL_DIR) -pa ebin -o ebin $<

%:%.sh
# Override makefile default implicit rule
Loading

0 comments on commit db32eae

Please sign in to comment.