summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2009-10-15 07:20:44 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2009-10-15 07:20:44 +0000
commit3311bc4b73b33db9142e738bb8da11a3017f9f26 (patch)
treef046413856d2f7b67edc7ba57dc0a02064d9a085 /TAO/TAO_IDL
parent66d8427a7dfb14a9cc8b56b72697baffbc908369 (diff)
downloadATCD-3311bc4b73b33db9142e738bb8da11a3017f9f26.tar.gz
Thu Oct 15 07:20:38 UTC 2009 Johnny Willemsen <jwillemsen@remedy.nl>
* TAO_IDL/tao_idl.mpc * TAO_IDL/tao_idl_be.mpc * TAO_IDL/tao_idl_fe.mpc Added seperate mpc files for the back end and the front end library
Diffstat (limited to 'TAO/TAO_IDL')
-rw-r--r--TAO/TAO_IDL/tao_idl.mpc143
-rw-r--r--TAO/TAO_IDL/tao_idl_be.mpc31
-rw-r--r--TAO/TAO_IDL/tao_idl_fe.mpc116
3 files changed, 147 insertions, 143 deletions
diff --git a/TAO/TAO_IDL/tao_idl.mpc b/TAO/TAO_IDL/tao_idl.mpc
index d7271e552ef..6faede65a9d 100644
--- a/TAO/TAO_IDL/tao_idl.mpc
+++ b/TAO/TAO_IDL/tao_idl.mpc
@@ -1,87 +1,6 @@
// -*- MPC -*-
// $Id$
-project(TAO_IDL_GEN) {
- requires += tao_idl_fe_gen
- verbatim(gnuace, local) {
- fe/fe_lookup.cpp: fe/keywords.dat
- " echo '\/\/ $$I''d$$' > $@"
- " echo '' >> $@"
- " echo '#include \"fe_private.h\"' >> $@"
- " echo '#include \"ace/OS_NS_string.h\"' >> $@"
- " echo '' >> $@"
- " $(ACE_ROOT)/bin/ace_gperf -M -J -c -C -D -E -T -f 0 -a -o -t -p -K keyword_ -L C++ -Z TAO_IDL_CPP_Keyword_Table -N lookup -k1,2,$$ $^ | \\"
- " sed -e 's/,}/,0}/g' \\"
- " -e 's/\\*str == \\*s && !ACE_OS::strncmp/len == static_cast<unsigned int> (ACE_OS::strlen (s)) \\&\\& *str == *s \\&\\& !ACE_OS::strncmp/g' \\"
- " >> $@"
-
- fe/lex.yy.cpp: fe/idl.ll
- " @echo 'WARNING: Potentially outdated $@'"
- " @echo ' either touch(1) the file or explicitly'"
- " @echo ' generate it using:'"
- " @echo ' make lex.yy'"
-
- .PHONY: lex.yy
- lex.yy:
- "ifeq ($(notdir $(LEX)), flex)"
- " $(LEX) -L -t fe/idl.ll | \\"
- " sed -e 's/yy/tao_yy/g' \\"
- " -e 's/YY/TAO_YY/g' \\"
- " -e 's/ NULL/ 0/g' \\"
- " -e 's/ / /g' \\"
- " -e 's/ *$$\/\/g' \\"
- " -e 's/TAO_YY_BREAK break;/TAO_YY_BREAK ACE_NOTREACHED (break;)/g' \\"
- " -e 's/ECHO/TAO_YY_ECHO/' \\"
- " -e 's/fread\([^\)]*\)/static_cast<int> (&)/g' \\"
- " -e 's/\\$$Hea''der.*\\$$/$$I''d$$/' \\"
- " -e 's@#include <stdio\.h>@#include \"ace/os_include/os_stdio.h\"@' \\"
- " -e 's@#include <unistd\.h>@#include \"ace/os_include/os_ctype.h\"@' \\"
- " -e '/#include </d' \\"
- " > fe/lex.yy.cpp"
- " (cd fe; patch < lex.yy.cpp.diff)"
- "else"
- " @echo 'ERROR: You must use flex 2.5.4 or higher to process this file'"
- " @/bin/false"
- "endif"
-
- fe/y.tab.cpp: fe/idl.yy
- " @echo 'WARNING: Potentially outdated $@'"
- " @echo ' either touch(1) the file or explicitly'"
- " @echo ' generate it using:'"
- " @echo ' make y.tab'"
-
- .PHONY: y.tab
- y.tab: fe/idl.yy
- "ifeq ($(notdir $(YACC)), bison)"
- " $(YACC) -y -l -d fe/idl.yy"
- " sed -e 's/char \\*getenv/char *ace_foo/g' \\"
- " -e 's/= getenv/= ACE_OS::getenv/g' \\"
- " -e 's/int yynew_state,/int,/g' \\"
- " -e 's/int yyold_state,/int,/g' \\"
- " -e 's/int yyrule_num,/int,/g' \\"
- " -e 's/\\(YYDEBUG_DISCARD_TOKEN.*int\\) yytoken_num/\\1/g' \\"
- " -e 's/yynewerror:\/\/g' \\"
- " -e 's/yy/tao_yy/g' \\"
- " -e 's/YY/TAO_YY/g' \\"
- " -e 's/ / /g' \\"
- " -e 's/ *$$\/\/g' \\"
- " -e 's/y\\.tab\\.c/y.tab.cpp/g' \\"
- " -e 's%\\(#pragma ident\\)%\/\/ \\1%' < y.tab.c > /tmp/$(USER).Y"
- " sed -e 's/yy/tao_yy/g' \\"
- " -e 's/YY/TAO_YY/g' < y.tab.h > /tmp/$(USER).YH"
- " echo '\/\/ $$I''d$$' > fe/y.tab.cpp"
- " cat /tmp/$(USER).Y >> fe/y.tab.cpp"
- " echo '\/\/ $$I''d$$' > fe/y.tab.h"
- " cat /tmp/$(USER).YH >> fe/y.tab.h"
- " $(RM) /tmp/$(USER).Y /tmp/$(USER).YH y.tab.c y.tab.h"
- " (cd fe; patch < y.tab.cpp.diff)"
- "else"
- " @echo 'ERROR: You must use bison 2.3 or higher to process this file'"
- " @/bin/false"
- "endif"
- }
-}
-
project(TAO_IDL_EXE) : aceexe, install, tao_output, crosscompile, mcpp, tao_idl_mcpp_local, tao_idl_fe {
exename = tao_idl
libs += TAO_IDL_BE
@@ -126,65 +45,3 @@ project(TAO_IDL_EXE) : aceexe, install, tao_output, crosscompile, mcpp, tao_idl_
}
}
-
-project(TAO_IDL_BE) : acelib, conv_lib, tao_output, crosscompile, tao_vc8warnings, tao_idl_fe {
- sharedname = TAO_IDL_BE
- dynamicflags = TAO_IDL_BE_BUILD_DLL
- includes += $(TAO_ROOT)
-
- specific (automake) {
- includes += $(srcdir)/include $(srcdir)/be_include $(srcdir)/fe
- } else {
- includes += include be_include fe
- }
-
- specific {
- // Override the template value for optimize. Building the backend
- // with optimization turned on doesn't seem to work (at least not with
- // vc6 or vc71). This is due to the use of addresses of static objecs
- // within the code.
- optimize =
- }
-
- Source_Files {
- be
- }
-
- Header_Files {
- be_include
- }
-}
-
-
-project(TAO_IDL_FE) : acelib, conv_lib, tao_output, crosscompile, fe_mcpp {
- sharedname = TAO_IDL_FE
- dynamicflags = TAO_IDL_FE_BUILD_DLL
- includes += $(TAO_ROOT)
-
- specific (automake) {
- includes += $(srcdir)/include $(srcdir)/fe
- } else {
- includes += include fe
- }
-
- specific {
- // Override the template value for optimize. Building the frontend
- // with optimization turned on doesn't seem to work (at least not with
- // vc6 or vc71). This is due to the use of addresses of static objecs
- // within the code.
- optimize =
- }
-
- Source_Files {
- fe
- ast
- util
- narrow
- }
-
- Header_Files {
- include
- fe
- }
-}
-
diff --git a/TAO/TAO_IDL/tao_idl_be.mpc b/TAO/TAO_IDL/tao_idl_be.mpc
new file mode 100644
index 00000000000..e450a7e7586
--- /dev/null
+++ b/TAO/TAO_IDL/tao_idl_be.mpc
@@ -0,0 +1,31 @@
+// -*- MPC -*-
+// $Id$
+
+project(TAO_IDL_BE) : acelib, conv_lib, tao_output, crosscompile, tao_vc8warnings, tao_idl_fe {
+ sharedname = TAO_IDL_BE
+ dynamicflags = TAO_IDL_BE_BUILD_DLL
+ includes += $(TAO_ROOT)
+
+ specific (automake) {
+ includes += $(srcdir)/include $(srcdir)/be_include $(srcdir)/fe
+ } else {
+ includes += include be_include fe
+ }
+
+ specific {
+ // Override the template value for optimize. Building the backend
+ // with optimization turned on doesn't seem to work (at least not with
+ // vc6 or vc71). This is due to the use of addresses of static objecs
+ // within the code.
+ optimize =
+ }
+
+ Source_Files {
+ be
+ }
+
+ Header_Files {
+ be_include
+ }
+}
+
diff --git a/TAO/TAO_IDL/tao_idl_fe.mpc b/TAO/TAO_IDL/tao_idl_fe.mpc
new file mode 100644
index 00000000000..18cd153bbc6
--- /dev/null
+++ b/TAO/TAO_IDL/tao_idl_fe.mpc
@@ -0,0 +1,116 @@
+// -*- MPC -*-
+// $Id$
+
+project(TAO_IDL_GEN) {
+ requires += tao_idl_fe_gen
+ verbatim(gnuace, local) {
+ fe/fe_lookup.cpp: fe/keywords.dat
+ " echo '\/\/ $$I''d$$' > $@"
+ " echo '' >> $@"
+ " echo '#include \"fe_private.h\"' >> $@"
+ " echo '#include \"ace/OS_NS_string.h\"' >> $@"
+ " echo '' >> $@"
+ " $(ACE_ROOT)/bin/ace_gperf -M -J -c -C -D -E -T -f 0 -a -o -t -p -K keyword_ -L C++ -Z TAO_IDL_CPP_Keyword_Table -N lookup -k1,2,$$ $^ | \\"
+ " sed -e 's/,}/,0}/g' \\"
+ " -e 's/\\*str == \\*s && !ACE_OS::strncmp/len == static_cast<unsigned int> (ACE_OS::strlen (s)) \\&\\& *str == *s \\&\\& !ACE_OS::strncmp/g' \\"
+ " >> $@"
+
+ fe/lex.yy.cpp: fe/idl.ll
+ " @echo 'WARNING: Potentially outdated $@'"
+ " @echo ' either touch(1) the file or explicitly'"
+ " @echo ' generate it using:'"
+ " @echo ' make lex.yy'"
+
+ .PHONY: lex.yy
+ lex.yy:
+ "ifeq ($(notdir $(LEX)), flex)"
+ " $(LEX) -L -t fe/idl.ll | \\"
+ " sed -e 's/yy/tao_yy/g' \\"
+ " -e 's/YY/TAO_YY/g' \\"
+ " -e 's/ NULL/ 0/g' \\"
+ " -e 's/ / /g' \\"
+ " -e 's/ *$$\/\/g' \\"
+ " -e 's/TAO_YY_BREAK break;/TAO_YY_BREAK ACE_NOTREACHED (break;)/g' \\"
+ " -e 's/ECHO/TAO_YY_ECHO/' \\"
+ " -e 's/fread\([^\)]*\)/static_cast<int> (&)/g' \\"
+ " -e 's/\\$$Hea''der.*\\$$/$$I''d$$/' \\"
+ " -e 's@#include <stdio\.h>@#include \"ace/os_include/os_stdio.h\"@' \\"
+ " -e 's@#include <unistd\.h>@#include \"ace/os_include/os_ctype.h\"@' \\"
+ " -e '/#include </d' \\"
+ " > fe/lex.yy.cpp"
+ " (cd fe; patch < lex.yy.cpp.diff)"
+ "else"
+ " @echo 'ERROR: You must use flex 2.5.4 or higher to process this file'"
+ " @/bin/false"
+ "endif"
+
+ fe/y.tab.cpp: fe/idl.yy
+ " @echo 'WARNING: Potentially outdated $@'"
+ " @echo ' either touch(1) the file or explicitly'"
+ " @echo ' generate it using:'"
+ " @echo ' make y.tab'"
+
+ .PHONY: y.tab
+ y.tab: fe/idl.yy
+ "ifeq ($(notdir $(YACC)), bison)"
+ " $(YACC) -y -l -d fe/idl.yy"
+ " sed -e 's/char \\*getenv/char *ace_foo/g' \\"
+ " -e 's/= getenv/= ACE_OS::getenv/g' \\"
+ " -e 's/int yynew_state,/int,/g' \\"
+ " -e 's/int yyold_state,/int,/g' \\"
+ " -e 's/int yyrule_num,/int,/g' \\"
+ " -e 's/\\(YYDEBUG_DISCARD_TOKEN.*int\\) yytoken_num/\\1/g' \\"
+ " -e 's/yynewerror:\/\/g' \\"
+ " -e 's/yy/tao_yy/g' \\"
+ " -e 's/YY/TAO_YY/g' \\"
+ " -e 's/ / /g' \\"
+ " -e 's/ *$$\/\/g' \\"
+ " -e 's/y\\.tab\\.c/y.tab.cpp/g' \\"
+ " -e 's%\\(#pragma ident\\)%\/\/ \\1%' < y.tab.c > /tmp/$(USER).Y"
+ " sed -e 's/yy/tao_yy/g' \\"
+ " -e 's/YY/TAO_YY/g' < y.tab.h > /tmp/$(USER).YH"
+ " echo '\/\/ $$I''d$$' > fe/y.tab.cpp"
+ " cat /tmp/$(USER).Y >> fe/y.tab.cpp"
+ " echo '\/\/ $$I''d$$' > fe/y.tab.h"
+ " cat /tmp/$(USER).YH >> fe/y.tab.h"
+ " $(RM) /tmp/$(USER).Y /tmp/$(USER).YH y.tab.c y.tab.h"
+ " (cd fe; patch < y.tab.cpp.diff)"
+ "else"
+ " @echo 'ERROR: You must use bison 2.3 or higher to process this file'"
+ " @/bin/false"
+ "endif"
+ }
+}
+
+project(TAO_IDL_FE) : acelib, conv_lib, tao_output, crosscompile, fe_mcpp {
+ sharedname = TAO_IDL_FE
+ dynamicflags = TAO_IDL_FE_BUILD_DLL
+ includes += $(TAO_ROOT)
+
+ specific (automake) {
+ includes += $(srcdir)/include $(srcdir)/fe
+ } else {
+ includes += include fe
+ }
+
+ specific {
+ // Override the template value for optimize. Building the frontend
+ // with optimization turned on doesn't seem to work (at least not with
+ // vc6 or vc71). This is due to the use of addresses of static objecs
+ // within the code.
+ optimize =
+ }
+
+ Source_Files {
+ fe
+ ast
+ util
+ narrow
+ }
+
+ Header_Files {
+ include
+ fe
+ }
+}
+