summaryrefslogtreecommitdiff
path: root/tools/HPMHookGen/Makefile.in
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2013-10-08 20:55:27 +0200
committerHaru <haru@dotalux.com>2013-10-09 05:49:04 +0200
commit5fdbee45f634d5d5b29ffa3144c8ac4881c10578 (patch)
tree87ff7e5bab40749666f44d69b24da3b75a1c1f12 /tools/HPMHookGen/Makefile.in
parent540c7071234d44875bf397fb80d2f18c4f4db1bf (diff)
downloadhercules-5fdbee45f634d5d5b29ffa3144c8ac4881c10578.tar.gz
hercules-5fdbee45f634d5d5b29ffa3144c8ac4881c10578.tar.bz2
hercules-5fdbee45f634d5d5b29ffa3144c8ac4881c10578.tar.xz
hercules-5fdbee45f634d5d5b29ffa3144c8ac4881c10578.zip
Added HPMHookGen tool, to re-generate hooks include files
- Slightly reformatted the include files (as produced by the new tool) - You normally won't need to use the generation tool, but in case you do, the software requirements are: * A Unix-compatible system (cygwin may work, or may not), capable to use the Hercules configure/make build system * perl (the perl executable must be in your $PATH) * doxygen (the command-line doxygen executable must be in your $PATH) - The generation tool was developed in collaboration with Ind (originally in php, the file here included is a tweaked version ported to perl) Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'tools/HPMHookGen/Makefile.in')
-rw-r--r--tools/HPMHookGen/Makefile.in68
1 files changed, 68 insertions, 0 deletions
diff --git a/tools/HPMHookGen/Makefile.in b/tools/HPMHookGen/Makefile.in
new file mode 100644
index 000000000..10a3c55ba
--- /dev/null
+++ b/tools/HPMHookGen/Makefile.in
@@ -0,0 +1,68 @@
+@SET_MAKE@
+
+COMMON_C = $(shell ls ../../src/common/*.c)
+COMMON_H = $(shell ls ../../src/common/*.h)
+MAP_C = $(shell ls ../../src/map/*.c)
+MAP_H = $(shell ls ../../src/map/*.h)
+CHAR_C = $(shell ls ../../src/char/*.c)
+CHAR_H = $(shell ls ../../src/char/*.h)
+LOGIN_C = $(shell ls ../../src/login/*.c)
+LOGIN_H = $(shell ls ../../src/login/*.h)
+ALL_C = $(COMMON_C) $(MAP_C) $(CHAR_C) $(LOGIN_C)
+ALL_H = $(COMMON_H) $(MAP_H) $(CHAR_H) $(LOGIN_H)
+
+HOOK_INC = $(addprefix ../../src/plugins/HPMHooking., \
+ $(addsuffix .inc, HookingPoints sources GetSymbol HPMHooksCore Hooks))
+
+HAVE_DOXYGEN=@HAVE_DOXYGEN@
+HAVE_PERL=@HAVE_PERL@
+ifeq ($(HAVE_DOXYGEN)$(HAVE_PERL),yesyes)
+ ALL_DEPENDS = hooks
+else
+ ifeq ($(HAVE_PERL),no)
+ ALL_DEPENDS = needs_perl
+ else
+ ifeq ($(HAVE_DOXYGEN),no)
+ ALL_DEPENDS = needs_doxygen
+ endif
+ endif
+endif
+
+#####################################################################
+.PHONY: hooks clean buildclean generate
+
+all: $(ALL_DEPENDS)
+
+buildclean:
+
+clean: buildclean
+ @echo " CLEAN HPMHookGen"
+ @rm -rf doxyoutput
+
+Makefile: Makefile.in
+ @$(MAKE) -C ../.. tools/HPMHookGen/Makefile
+
+hooks: $(HOOK_INC)
+
+#####################################################################
+
+$(HOOK_INC): generate
+
+generate: doxyoutput
+ @echo " Regenerating hook definitions..."
+ @perl HPMHookGen.pl
+
+doxyoutput: $(ALL_C) $(ALL_H) doxygen.conf
+ @echo " Extracting functions information..."
+ @doxygen doxygen.conf
+
+#####################################################################
+
+needs_doxygen:
+ @echo "doxygen not found or disabled by the configure script"
+ @exit 1
+
+needs_perl:
+ @echo "perl not found or disabled by the configure script"
+ @exit 1
+