removed swig
It was always kind of a pain to maintain, and nobody has ever used it,
and I doubt if it would work currently after other changes.
diff --git a/aos/build/aos.gyp b/aos/build/aos.gyp
index b7775a1..f5defa5 100644
--- a/aos/build/aos.gyp
+++ b/aos/build/aos.gyp
@@ -52,21 +52,5 @@
'logging_interface',
],
},
- {
-# Private to make Brian happy. Don't use elsewhere in so targets or risk things
-# breaking.
- 'target_name': 'aos_swig',
- 'type': 'static_library',
- 'sources': [
- '<(AOS)/aos.swig',
- ],
- 'variables': {
- 'package': 'aos',
- },
- 'dependencies': [
- '<(AOS)/common/common.gyp:queues',
- ],
- 'includes': ['../build/swig.gypi'],
- },
],
}
diff --git a/aos/build/aos.gypi b/aos/build/aos.gypi
index bf2e7c9..c2c0813 100644
--- a/aos/build/aos.gypi
+++ b/aos/build/aos.gypi
@@ -182,14 +182,6 @@
'product_dir': '<(so_dir)',
}
],
- ['_type=="loadable_module" or _type=="shared_library"', {
- 'ldflags': [
-# Support loading other shared objects that are in the same directory but not
-# the shared object load path. Required for using the swig-generated libs.
- '-Wl,-rpath=\\$$ORIGIN',
- ],
- }
- ],
],
'ldflags': [
'-pthread',
diff --git a/aos/build/create_jar b/aos/build/create_jar
deleted file mode 100755
index 2ef496e..0000000
--- a/aos/build/create_jar
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-source `dirname $0`/jdk_tools_common
-
-# This is a helper script that compiles java files into a jar.
-
-SOURCEFILEPARENTDIRS=`echo $4 | tr -d '"'`
-SOURCEFILEDIRS=`echo $1 | tr -d '"'`
-[ -n "${SOURCEFILEPARENTDIRS}" ] && SOURCEFILEDIRS+=" `find ${SOURCEFILEPARENTDIRS} -type d -maxdepth 1`"
-SOURCEFILES=`find ${SOURCEFILEDIRS} -name *.java`
-MANIFEST_FILE=$5
-OUTPUT_JAR=$6
-HEADER_DIR=$7
-GEN_HEADERS=$8
-
-CLASSFILES_DIR=${TMPDIR}/classfiles
-
-[ -a ${CLASSFILES_DIR} ] && rm -r ${CLASSFILES_DIR}
-mkdir ${CLASSFILES_DIR}
-[ -a ${HEADER_DIR} ] && rm -r ${HEADER_DIR}
-mkdir -p ${HEADER_DIR}
-
-javac -d ${CLASSFILES_DIR} -classpath "${EXTRA_CLASSPATH}" ${SOURCEFILES}
-
-jar cfm ${OUTPUT_JAR} ${MANIFEST_FILE} \
- `find ${CLASSFILES_DIR} -name *.class | \
- sed "s:${CLASSFILES_DIR}/\(.*\):-C ${CLASSFILES_DIR} \1:g"`
-
-[ -z ${GEN_HEADERS} ] || javah -d ${HEADER_DIR} \
- -classpath "${EXTRA_CLASSPATH}:${OUTPUT_JAR}" ${GEN_HEADERS}
diff --git a/aos/build/download_externals.sh b/aos/build/download_externals.sh
index a025810..9af583b 100755
--- a/aos/build/download_externals.sh
+++ b/aos/build/download_externals.sh
@@ -49,13 +49,6 @@
[ -f ${EIGEN_DIR}.tar.bz2 ] || wget http://bitbucket.org/eigen/eigen/get/${EIGEN_VERSION}.tar.bz2 -O ${EIGEN_DIR}.tar.bz2
[ -d ${EIGEN_DIR} ] || ( mkdir ${EIGEN_DIR} && tar --strip-components=1 -C ${EIGEN_DIR} -xf ${EIGEN_DIR}.tar.bz2 )
-# get the javacv binaries
-JAVACV_VERSION=0.2
-JAVACV_DIR=${EXTERNALS}/javacv-bin
-JAVACV_ZIP=${EXTERNALS}/javacv-${JAVACV_VERSION}-bin.zip
-[ -f ${JAVACV_ZIP} ] || wget http://javacv.googlecode.com/files/javacv-${JAVACV_VERSION}-bin.zip -O ${JAVACV_ZIP}
-[ -d ${JAVACV_DIR} ] || ( cd ${EXTERNALS} && unzip ${JAVACV_ZIP} )
-
# get the simple one-jar template jar
ONEJAR_VERSION=0.97
ONEJAR_JAR=${EXTERNALS}/one-jar-boot-${ONEJAR_VERSION}.jar
diff --git a/aos/build/externals.gyp b/aos/build/externals.gyp
index 56b7867..4165574 100644
--- a/aos/build/externals.gyp
+++ b/aos/build/externals.gyp
@@ -75,26 +75,6 @@
},
},
{
- 'target_name': 'javacv',
- 'type': 'none',
- 'variables': {
- 'javacv_dir': '<(externals_abs)/javacv-bin',
- },
- 'direct_dependent_settings': {
- 'include_dirs': [
- '/usr/lib/jvm/default-java/include',
- '/usr/lib/jvm/default-java/include/linux',
- ],
- 'variables': {
- 'classpath': [
- '<(javacv_dir)/javacv.jar',
- '<(javacv_dir)/javacpp.jar',
- '<(javacv_dir)/javacv-linux-x86.jar',
- ],
- },
- },
- },
- {
'target_name': 'opencv',
'type': 'none',
'link_settings': {
diff --git a/aos/build/java.gypi b/aos/build/java.gypi
deleted file mode 100644
index d832b0a..0000000
--- a/aos/build/java.gypi
+++ /dev/null
@@ -1,74 +0,0 @@
-# Include this file in any target that is going to build java files.
-#
-# To use, create a target of the following form:
-# {
-# 'target_name': 'whatever',
-# 'variables': {
-# 'srcdirs': ['.', 'java'],
-# },
-# 'includes': ['path/to/java.gypi'],
-# }
-# See below for more variables.
-# To make any output jars include some loadable modules, set the 'jni_libs'
-# variable in 'direct_dependent_settings'. Making this easier causes lots of
-# recursion issues in gyp.
-# The dependency on these targets also has to be added manually.
-{
- 'type': 'none',
- 'variables': {
-# The manifest file for creating the jar.
- 'manifest%': '/dev/null',
-# Additional jars/directories to add to the classpath when compiling.
-# This target will automatically add itself to this list for any dependents.
- 'classpath': [],
-# Classes to generate JNI headers for.
-# They will be able to be #included as "jni/package_ClassName.h" by targets
-# that depend on this one.
- 'gen_headers': [],
-# Like 'srcdirs', except not required to exist at gyp time. However, nothing
-# here will depend on any files in these directories.
- 'gen_srcdirs': ['/dev/null'],
-# Like 'gen_srcdirs', except all folders that are children of this folder will
-# be used instead.
- 'gen_srcdir_parents%': [],
- 'srcdirs': ['/dev/null'],
- 'jar_dir': '<(PRODUCT_DIR)/jars',
- 'java_files': '<!(find <(srcdirs) -name *.java)',
- 'create_jar': '<(AOS)/build/create_jar',
- 'out_jar': '<(jar_dir)/<(_target_name).jar',
- 'header_dir': '<(SHARED_INTERMEDIATE_DIR)/jni_headers_<!(pwd | sed s:/:_:g)_<(_target_name)',
- 'no_rsync': 1,
- },
- 'direct_dependent_settings': {
- 'variables': {
- 'classpath': ['<(out_jar)'],
- },
- 'include_dirs': [
- '<(header_dir)',
- ],
- },
- 'actions': [
- {
- 'action_name': 'run javac',
- 'message': 'Compiling java code',
- 'inputs': [
- '<(create_jar)',
- '<@(java_files)',
- '>@(classpath)',
- '>@(gen_srcdirs)',
- '>(manifest)',
- ],
- 'outputs': [
- '<(out_jar)',
- ],
- 'action': [
- '<(create_jar)',
- '<(srcdirs) <(gen_srcdirs)',
- '<(INTERMEDIATE_DIR)', '>(classpath)',
- '>(gen_srcdir_parents)',
- '>(manifest)', '<(out_jar)',
- '<(header_dir)/jni', '>(gen_headers)',
- ],
- },
- ],
-}
diff --git a/aos/build/mkdirswig b/aos/build/mkdirswig
deleted file mode 100755
index 83403e4..0000000
--- a/aos/build/mkdirswig
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-# Creates the directory specified by the first argument and runs swig with the
-# rest of the arguments.
-mkdir -p $1
-shift
-swig $@
diff --git a/aos/build/onejar.gypi b/aos/build/onejar.gypi
deleted file mode 100644
index 6185f02..0000000
--- a/aos/build/onejar.gypi
+++ /dev/null
@@ -1,53 +0,0 @@
-# Include this file in any target that should get packaged with OneJAR.
-#
-# To use, create a target of the following form:
-# {
-# 'target_name': 'whatever',
-# 'variables': {
-# 'main_jar': 'something',
-# },
-# 'includes': ['path/to/onejar.gypi'],
-# },
-# See below for more variables.
-{
- 'type': 'none',
- 'variables': {
-# The names of loadable_module targets to add to the jar.
- 'jni_libs': [],
-# Additional jars to add to the output.
-# Named this so that targets from java.gypi will add themselves automatically.
- 'classpath': [],
- 'jar_dir': '<(PRODUCT_DIR)/jars',
- 'create_onejar': '<(AOS)/build/create_onejar',
- 'out_onejar': '<(rsync_dir)/<(_target_name).jar',
- 'main_jar_file': '<(jar_dir)/<(main_jar).jar',
- 'shared_objects': ">!(echo '>(jni_libs)' | sed 's:[^ ]*:<(so_dir)/lib\\0.so:g')",
- 'no_rsync': 1,
- },
- 'dependencies': [
- '<(EXTERNALS):onejar',
- ],
- 'product_dir': '<(PRODUCT_DIR)',
- 'actions': [
- {
- 'action_name': 'create onejar',
- 'message': 'Creating OneJAR jar',
- 'inputs': [
- '<(create_onejar)',
- '>@(classpath)',
- '<(main_jar_file)',
- '>@(shared_objects)',
- ],
- 'outputs': [
- '<(out_onejar)',
- ],
- 'action': [
- '<(create_onejar)',
- '<(main_jar_file)',
- '<(INTERMEDIATE_DIR)', '>(classpath)',
- '<(out_onejar)', '>(onejar_jar)',
- '>(shared_objects)',
- ],
- },
- ],
-}
diff --git a/aos/build/queues.gypi b/aos/build/queues.gypi
index 884b173..843272d 100644
--- a/aos/build/queues.gypi
+++ b/aos/build/queues.gypi
@@ -28,9 +28,6 @@
'output_h': '<(out_dir)/<(RULE_INPUT_ROOT).q.h',
'output_cc': '<(out_dir)/<(RULE_INPUT_ROOT).q.cc',
'output_main': '<(out_dir)/<(RULE_INPUT_ROOT)_main.cc',
- 'output_swg': '<(out_dir)/<(RULE_INPUT_ROOT).q.swig',
- 'output_java_wrap': '<(out_dir)/<(RULE_INPUT_ROOT)_java_wrap.cc',
- 'java_dir': '<(out_dir)/<(RULE_INPUT_ROOT).q_java',
'no_rsync': 1,
},
'rules': [
@@ -44,19 +41,6 @@
'<(output_h)',
'<(output_cc)',
],
- 'conditions': [
- ['OS=="crio"', {
- 'outputs': [
- # cRIO doesn't do swig for a good reason.
- ]
- },{
- 'outputs': [
- '<(output_swg)',
- '<(output_java_wrap)',
- '<(java_dir)',
- ]
- }]
- ],
'inputs': [
'<(script)',
'<!@(find <(AOS)/build/queues/ -name *.rb)',
@@ -64,8 +48,6 @@
'<(AOS)/common/time.h',
],
'action': ['ruby', '<(script)',
- '--swig',
- '--swigccout', '<(output_java_wrap)',
'-I', '<(DEPTH)',
'<(RULE_INPUT_PATH)',
'-cpp_out',
@@ -98,14 +80,7 @@
'process_outputs_as_sources': 1,
},
],
- 'cflags': [
-# For the swig-generated C++ code.
- '-fno-strict-aliasing',
- '-Wno-cast-qual',
- ],
'include_dirs': [
- '/usr/lib/jvm/default-java/include',
- '/usr/lib/jvm/default-java/include/linux',
'<(prefix_dir)/<(_target_name)',
],
'direct_dependent_settings': {
@@ -119,6 +94,7 @@
'dependencies': [
'<(AOS)/common/common.gyp:queues',
'<(AOS)/common/common.gyp:once',
+ '<(AOS)/common/common.gyp:queue_types',
],
'export_dependent_settings': [
'<(AOS)/common/common.gyp:queues',
diff --git a/aos/build/queues/compiler.rb b/aos/build/queues/compiler.rb
index 8c643c7..bcd497a 100644
--- a/aos/build/queues/compiler.rb
+++ b/aos/build/queues/compiler.rb
@@ -4,7 +4,7 @@
require File.dirname(__FILE__) + "/objects/" + name
end
["standard_types.rb","auto_gen.rb","file_pair_types.rb",
-"dep_file_pair.rb","swig.rb"].each do |name|
+"dep_file_pair.rb"].each do |name|
require File.dirname(__FILE__) + "/cpp_pretty_print/" + name
end
["q_file.rb","message_dec.rb","queue_dec.rb", "q_struct.rb"].each do |name|
@@ -15,8 +15,6 @@
def parse_args(globals,args)
i = 0
- $swig = false
- $swigccout_path = ""
while(i < args.length)
if(args[i] == "-I")
args.delete_at(i)
@@ -28,9 +26,6 @@
end
path = args.delete_at(i)
globals.add_path(path)
- elsif(args[i] == "--swigccout")
- args.delete_at(i)
- $swigccout_path = args.delete_at(i)
elsif(args[i] == "-cpp_out")
args.delete_at(i)
path = args.delete_at(i)
@@ -47,9 +42,6 @@
exit!(-1)
end
$cpp_out = path.split(/\\|\//)
- elsif(args[i] == "--swig")
- $swig = true
- args.delete_at(i)
elsif(args[i] == "-cpp_base")
args.delete_at(i)
path = args.delete_at(i)
@@ -96,8 +88,6 @@
h_file_path = $cpp_base + "/" + rel_path + ".h"
cc_file_path = $cpp_base + "/" + rel_path + ".cc"
- swig_file_path = $cpp_base + "/" + rel_path + ".swig"
- java_directory = $cpp_base + "/" + rel_path + "_java/"
cpp_tree.add_cc_include((rel_path + ".h").inspect)
cpp_tree.add_cc_include("aos/common/byteorder.h".inspect)
cpp_tree.add_cc_include("aos/common/inttypes.h".inspect)
@@ -105,10 +95,6 @@
cpp_tree.add_cc_include("aos/common/once.h".inspect)
cpp_tree.add_cc_using("::aos::to_network")
cpp_tree.add_cc_using("::aos::to_host")
- cpp_tree.add_swig_header_include("aos/common/queue.h".inspect)
- cpp_tree.add_swig_body_include("aos/linux_code/queue-tmpl.h".inspect)
- cpp_tree.add_swig_header_include("aos/common/time.h".inspect)
- cpp_tree.add_swig_include((rel_path + ".h").inspect)
header_file = File.open(h_file_path,"w+")
cc_file = File.open(cc_file_path,"w+")
@@ -116,23 +102,6 @@
cpp_tree.write_cc_file($cpp_base,cc_file)
cc_file.close()
header_file.close()
- if ($swig)
- swig_file = File.open(swig_file_path,"w+")
- cpp_tree.write_swig_file($cpp_base,swig_file,q_filename)
- swig_file.close()
- namespace = q_file.namespace.get_name()[1..-1]
- FileUtils.mkdir_p(java_directory)
- includes = globals.paths.collect { |a| "-I#{a}" }
-
- if (!system('/usr/bin/swig', *(includes + ['-I' + $cpp_base + '/',
- '-package', namespace,
- '-outdir', java_directory,
- '-o', $swigccout_path,
- '-c++', '-Wall', '-Wextra', '-java', swig_file_path])))
- puts "Swig failed."
- exit -1
- end
- end
end
begin
args = ARGV.dup
diff --git a/aos/build/queues/cpp_pretty_print/auto_gen.rb b/aos/build/queues/cpp_pretty_print/auto_gen.rb
index 515939c..d3fb480 100644
--- a/aos/build/queues/cpp_pretty_print/auto_gen.rb
+++ b/aos/build/queues/cpp_pretty_print/auto_gen.rb
@@ -103,10 +103,6 @@
state.pp(@suite)
state.v_pad(2)
end
- def pp_pre_swig_file(state)
- end
- def pp_post_swig_file(state)
- end
alias_method :pp_header_file, :pp_forward_dec
alias_method :pp_cc_file, :pp
diff --git a/aos/build/queues/cpp_pretty_print/dep_file_pair.rb b/aos/build/queues/cpp_pretty_print/dep_file_pair.rb
index ff6d2e7..4c9fb1a 100644
--- a/aos/build/queues/cpp_pretty_print/dep_file_pair.rb
+++ b/aos/build/queues/cpp_pretty_print/dep_file_pair.rb
@@ -54,36 +54,6 @@
end
end
end
-class MemberElementPreSWIG < GroupElement
- def initialize(elem)
- @elem = elem
- end
- def pp(state)
- if(@elem.respond_to?(:pp_pre_swig_file))
- @elem.pp_pre_swig_file(state)
- else
- state.pp(@elem)
- end
- end
- def self.check(plan,elem)
- plan.push(self.new(elem)) if(elem.respond_to?(:pp_pre_swig_file))
- end
-end
-class MemberElementPostSWIG < GroupElement
- def initialize(elem)
- @elem = elem
- end
- def pp(state)
- if(@elem.respond_to?(:pp_post_swig_file))
- @elem.pp_post_swig_file(state)
- else
- state.pp(@elem)
- end
- end
- def self.check(plan,elem)
- plan.push(self.new(elem)) if(elem.respond_to?(:pp_post_swig_file))
- end
-end
class MemberElementCC < GroupElement
attr_accessor :pp_override
def initialize(elem)
@@ -181,36 +151,6 @@
end
end
end
-class SWIGPre_Mask
- def initialize(elem)
- @elem = elem
- end
- def plan_cc(plan)
- end
- def plan_pre_swig(plan)
- elem = MemberElementPreSWIG.new(@elem)
- plan.push(elem)
- end
- def plan_post_swig(plan)
- end
- def plan_header(plan);
- end
-end
-class SWIGPost_Mask
- def initialize(elem)
- @elem = elem
- end
- def plan_cc(plan)
- end
- def plan_pre_swig(plan)
- end
- def plan_post_swig(plan)
- elem = MemberElementPostSWIG.new(@elem)
- plan.push(elem)
- end
- def plan_header(plan);
- end
-end
class CC_Mask
def initialize(elem)
@elem = elem
@@ -222,10 +162,6 @@
end
def plan_header(plan);
end
- def plan_pre_swig(plan);
- end
- def plan_post_swig(plan);
- end
end
module Types
class TypeDef
@@ -280,30 +216,6 @@
@members.push(CC_Mask.new(CPP::Comment.new(arg)))
end
end
- def add_pre_swig(arg)
- @members.push(SWIGPre_Mask.new(arg))
- end
- def add_post_swig(arg)
- @members.push(SWIGPost_Mask.new(arg))
- end
- def plan_pre_swig(plan)
- @members.each do |member|
- if(member.respond_to?(:plan_pre_swig))
- member.plan_pre_swig(plan)
- elsif(member.respond_to?(:pp_pre_swig_file))
- plan.push(MemberElementPreSWIG.new(member))
- end
- end
- end
- def plan_post_swig(plan)
- @members.each do |member|
- if(member.respond_to?(:plan_post_swig))
- member.plan_post_swig(plan)
- elsif(member.respond_to?(:pp_post_swig_file))
- plan.push(MemberElementPostSWIG.new(member))
- end
- end
- end
def plan_cc(plan)
@members.each do |member|
if(member.respond_to?(:plan_cc))
@@ -457,12 +369,6 @@
def add_cc(arg)
@members.push(CC_Mask.new(arg))
end
- def add_pre_swig(arg)
- @members.push(SWIGPre_Mask.new(arg))
- end
- def add_post_swig(arg)
- @members.push(SWIGPost_Mask.new(arg))
- end
def chop_method_prefix()
""
end
@@ -475,25 +381,6 @@
def add_var_dec(arg)
add DepMask.new(arg)
end
- def plan_pre_swig(plan)
- plan.implicit = ImplicitName.new(@name,plan.implicit)
- @members.each do |member|
- if(member.respond_to?(:plan_pre_swig))
- member.plan_pre_swig(plan)
- else
- MemberElementPreSWIG.check(plan,member)
- end
- end
- end
- def plan_post_swig(plan)
- @members.each do |member|
- if(member.respond_to?(:plan_post_swig))
- member.plan_post_swig(plan)
- else
- MemberElementPostSWIG.check(plan,member)
- end
- end
- end
def plan_cc(plan)
plan.implicit = ImplicitName.new(@name,plan.implicit)
@members.each do |member|
@@ -524,23 +411,11 @@
def initialize(rel_path)
@rel_path = rel_path
@cc_includes = []
- @swig_includes_h = []
- @swig_includes_swig = []
@header_includes = []
@spaces = []
@cc_usings = []
@cache = {}
end
- def add_swig_body_include(inc_path)
- @swig_includes_swig << CPP::SwigInclude.new(inc_path)
- end
- def add_swig_header_include(inc_path)
- @swig_includes_h << CPP::Include.new(inc_path)
- end
- def add_swig_include(inc_path)
- @swig_includes_h << CPP::Include.new(inc_path)
- @swig_includes_swig << CPP::SwigInclude.new(inc_path)
- end
def add_cc_include(inc_path)
@cc_includes << CPP::Include.new(inc_path)
end
@@ -589,30 +464,4 @@
include_guard.name = @rel_path.upcase.gsub(/[\.\/\\]/,"_") + "_H_"
CPP.pretty_print(include_guard,header_file)
end
- def write_swig_file(cpp_base,swig_file,q_filename)
- plan_pre_swig = GroupPlan.new(nil, elems_cc = [])
- plan_post_swig = GroupPlan.new(nil, elems_cc = [])
- q_filename_underscore = q_filename.gsub(".","_")
- @spaces.each do |space|
- space.plan_pre_swig(plan_pre_swig)
- space.plan_post_swig(plan_post_swig)
- end
- header_includes = CPP::SWIGBraces.new(CPP::Suite.new(@swig_includes_h))
- # TODO(aschuh): I should probably %import any other headers from this queue's dependencies.
- suite = CPP::Suite.new(["%module \"#{q_filename_underscore}\"",
- "%typemap(javaimports) SWIGTYPE, SWIGTYPE * \"import aos.QueueGroup; import aos.Message; import aos.Time;\"",
- "%pragma(java) jniclassimports=\"import aos.QueueGroup; import aos.Message; import aos.Time;\"",
- "%pragma(java) moduleimports=\"import aos.QueueGroup; import aos.Message; import aos.Time;\"",
- "%include \"std_string.i\"",
- "%include \"stdint.i\""] +
- [header_includes] +
- #["%import \"aos/common/time.h\"",
- #"%import \"aos/common/queue.h\""] +
- ["%import \"aos/aos.swig\""] +
- [plan_pre_swig] +
- @swig_includes_swig +
- [plan_post_swig]
- )
- CPP.pretty_print(suite, swig_file)
- end
end
diff --git a/aos/build/queues/cpp_pretty_print/swig.rb b/aos/build/queues/cpp_pretty_print/swig.rb
deleted file mode 100644
index ac6d062..0000000
--- a/aos/build/queues/cpp_pretty_print/swig.rb
+++ /dev/null
@@ -1,60 +0,0 @@
-class CPP::SwigPragma
- attr_accessor :suite
- def initialize(language, pragmatype, suite = CPP::Suite.new())
- @suite = suite
- @language = language
- @pragmatype = pragmatype
- end
- def pp(state)
- state.needs_semi = false
- state.suppress_indent()
- state.print("%pragma(#{@language}) #{@pragmatype}=%{")
- state.endline()
- if(@suite.respond_to?(:pp_no_braces))
- @suite.pp_no_braces(state)
- else
- state.pp(@suite)
- end
- state.endline()
- state.needs_semi = false
- state.suppress_indent()
- state.print("%}")
- state.endline()
- state.endline()
- end
-end
-class CPP::SWIGBraces
- attr_accessor :suite
- def initialize(suite = CPP::Suite.new())
- @suite = suite
- end
- def pp(state)
- state.needs_semi = false
- state.suppress_indent()
- state.print("%{")
- state.endline()
- if(@suite.respond_to?(:pp_no_braces))
- @suite.pp_no_braces(state)
- else
- state.pp(@suite)
- end
- state.endline()
- state.needs_semi = false
- state.suppress_indent()
- state.print("%}")
- state.endline()
- state.endline()
- end
-end
-class CPP::SwigInclude
- attr_accessor :filename
- def initialize(filename)
- @filename = filename
- end
- def pp(state)
- state.needs_semi = false
- state.suppress_indent()
- state.print("%include #{@filename}")
- state.endline()
- end
-end
diff --git a/aos/build/queues/output/message_dec.rb b/aos/build/queues/output/message_dec.rb
index e5905c2..6cf44c2 100644
--- a/aos/build/queues/output/message_dec.rb
+++ b/aos/build/queues/output/message_dec.rb
@@ -195,7 +195,6 @@
msg_bld_t = "MessageBuilder< #{t}>"
safetemplate.add_member(:private,"#{safemsg_ptr_t} msg_ptr_")
template.add_member(:private,"#{msg_ptr_t} msg_ptr_")
- namespace.add_pre_swig("%feature(\"valuewrapper\") #{safemsg_bld_t}")
template.add_member(:private,"#{msg_bld_t}(const #{msg_bld_t}&)")
template.add_member(:private,"void operator=(const #{msg_bld_t}&)")
safetemplate.add_member(:private,"friend class ::aos::Queue< #{t}>")
@@ -219,13 +218,6 @@
DefineMembers(cpp_tree, safetemplate, safemsg_bld_t)
DefineMembers(cpp_tree, template, msg_bld_t)
- java_type_name = java_type_name(cpp_tree)
- namespace.add_post_swig("%template(#{java_type_name}) ::aos::Queue< #{t}>")
- namespace.add_post_swig("%template(#{java_ptr_name(cpp_tree)}) ::aos::SafeScopedMessagePtr< #{t}>")
- namespace.add_post_swig("%template(#{java_builder_name(cpp_tree)}) ::aos::SafeMessageBuilder< #{t}>")
- # TODO(aschuh): Figure out why this doesn't work and fix it.
- #namespace.add_post_swig("%typemap(javabase) #{@name} \"aos.Message\"")
-
end
def DefineMembers(cpp_tree, template, msg_bld_t)
send = template.def_func("bool","Send")
@@ -245,15 +237,6 @@
end
end
- def java_ptr_name(cpp_tree)
- return "#{@name}MessagePtr"
- end
- def java_builder_name(cpp_tree)
- return "#{@name}MessageBuilder"
- end
- def java_type_name(cpp_tree)
- return "#{@name}Queue"
- end
end
class Target::MessageElement < Target::Node
attr_accessor :name,:loc,:size,:zero,:type,:printformat
diff --git a/aos/build/queues/output/q_file.rb b/aos/build/queues/output/q_file.rb
index 532c6f7..a39799d7 100644
--- a/aos/build/queues/output/q_file.rb
+++ b/aos/build/queues/output/q_file.rb
@@ -98,7 +98,6 @@
type_class.set_parent("public ::aos::QueueGroup")
@queues.each do |queue|
type_class.add_member(:public,queue.create_usage(cpp_tree))
- namespace.add_pre_swig("%immutable #{@name}::#{queue.name}")
end
create_Constructor(type_class,cpp_tree)
namespace.add(type_class)
@@ -179,15 +178,11 @@
Create a reference to the new object in the pointer. Since we have already
created the initializer
COMMENT_END
- comments = str.split(/\n/).map{|str_sec| CPP::Comment.new(str_sec)}
- comments << "static UNUSED_VARIABLE #{type_name} &#{@name} = " +
- "#{@name}_initializer.get()"
- namespace.add_post_swig("%immutable #{@name}_initializer")
- namespace.add_post_swig(CPP::SwigPragma.new("java", "modulecode", CPP::Suite.new(["public static final #{@name} = get#{@name.capitalize}_initializer().get()"])))
- ifdef_statement = CPP::IfnDef.new(CPP::Suite.new(comments))
- ifdef_statement.name = "SWIG"
- namespace.add(ifdef_statement)
-
+ str.split(/\n/).map{|str_sec| CPP::Comment.new(str_sec)}.each do |comment|
+ namespace.add(comment)
+ end
+ namespace.add("static UNUSED_VARIABLE #{type_name} &#{@name}" +
+ " = #{@name}_initializer.get()")
get = init_class.def_func(type_name,"get") #.add_dep(type)
get.pre_func_types = "&"
diff --git a/aos/build/queues/output/queue_dec.rb b/aos/build/queues/output/queue_dec.rb
index 6ffe8c5..db4e1af 100644
--- a/aos/build/queues/output/queue_dec.rb
+++ b/aos/build/queues/output/queue_dec.rb
@@ -6,10 +6,6 @@
def msg_hash()
return @type.msg_hash
end
- def java_type_name(cpp_tree)
- type = cpp_tree.get(@type)
- return "#{type.name}Queue"
- end
def full_message_name(cpp_tree)
type = cpp_tree.get(@type)
return @type.loc.to_cpp_id(type.name)
@@ -81,16 +77,11 @@
Create a reference to the new object in the pointer. Since we have already
created the initializer
COMMENT_END
- comments = str.split(/\n/).map{|str_sec| CPP::Comment.new(str_sec)}
- comments << "static UNUSED_VARIABLE #{type_name} &#{@name} = " +
- "#{@name}_initializer.get()"
- namespace.add_post_swig("%immutable #{@name}_initializer")
- java_type_name = java_type_name(cpp_tree)
- namespace.add_post_swig(CPP::SwigPragma.new("java", "modulecode", CPP::Suite.new(["public static final #{java_type_name} #{@name} = get#{@name.capitalize}_initializer().get()"])))
-
- ifdef_statement = CPP::IfnDef.new(CPP::Suite.new(comments))
- ifdef_statement.name = "SWIG"
- namespace.add(ifdef_statement)
+ str.split(/\n/).map{|str_sec| CPP::Comment.new(str_sec)}.each do |comment|
+ namespace.add(comment)
+ end
+ namespace.add("static UNUSED_VARIABLE #{type_name} &#{@name}" +
+ " = #{@name}_initializer.get()")
get = init_class.def_func(full_type_name,"get")
get.pre_func_types = "&"
diff --git a/aos/build/swig.gypi b/aos/build/swig.gypi
deleted file mode 100644
index 2e99a95..0000000
--- a/aos/build/swig.gypi
+++ /dev/null
@@ -1,73 +0,0 @@
-# Include this file in any target that needs to use swig wrappers.
-#
-# To use, create a target of the following form:
-# {
-# 'target_name': 'my_target_javawrap',
-# 'type': 'static_library', # or any other type that can handle .cc files
-# 'sources': [
-# 'aos/example/target.swig',
-# ],
-# 'variables': {
-# 'package': 'aos.test',
-# },
-# 'includes': ['path/to/swig.gypi'],
-# },
-# Code that depends on this target will be able to use the swig wrapped
-# java classes.
-#
-# using <http://src.chromium.org/svn/trunk/src/build/protoc.gypi> as an
-# example of how this should work
-{
- 'variables': {
- 'prefix_dir': '<(SHARED_INTERMEDIATE_DIR)/',
- 'out_dir': '<(prefix_dir)/<(_target_name)/',
- 'output_java_wrap': '<(out_dir)/<(RULE_INPUT_ROOT)_wrap.cc',
- 'java_dir': '<(out_dir)/<(RULE_INPUT_ROOT)_java',
- 'no_rsync': 1,
- },
- 'rules': [
- {
- 'rule_name': 'genswig',
- 'extension': 'swig',
- 'outputs': [
- '<(output_java_wrap)',
- '<(java_dir)',
- ],
- 'action': [
- '<(DEPTH)/aos/build/mkdirswig',
- '<(java_dir)',
- '-I<(DEPTH)',
- '-outdir', ' <(java_dir)',
- '-package', '<(package)',
- '-o', '<(output_java_wrap)',
- '-c++',
- '-Wall',
- '-Wextra',
- '-java',
- '<(RULE_INPUT_PATH)'],
- 'message': 'Generating C++ code from <(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).swig',
- 'process_outputs_as_sources': 1,
- },
- ],
- 'cflags': [
-# For the swig-generated C++ code.
- '-fno-strict-aliasing',
- '-Wno-cast-qual',
- ],
- 'include_dirs': [
- '<(prefix_dir)/<(_target_name)',
- '/usr/lib/jvm/default-java/include',
- '/usr/lib/jvm/default-java/include/linux',
- ],
- 'direct_dependent_settings': {
- 'include_dirs': [
- '<(prefix_dir)/<(_target_name)',
- '/usr/lib/jvm/default-java/include',
- '/usr/lib/jvm/default-java/include/linux',
- ],
- 'variables': {
- 'gen_srcdir_parents': ['<(out_dir)'],
- },
- },
- 'hard_dependency': 1,
-}