1
1
A hack to get around differences between Sun javah and gcj javah - in Sun
2
2
javah, symbols in a nested class use _ as a separator instead of _00024.
3
Patch is originally from Nobuhiro Iwamatsu, bug #561516.
4
--- a/build/generator/gen_make.py
5
+++ b/build/generator/gen_make.py
7
'%s_CLASS_FILENAMES = %s\n'
9
'$(%s_HEADERS): $(%s_CLASS_FILENAMES)\n'
10
- '\t%s -d %s -classpath %s:$(%s_CLASSPATH) $(%s_CLASSES)\n'
11
+ '\t%s -d %s -classpath %s:$(%s_CLASSPATH) -all %s\n'
12
+ '\tcd %s; sed -i s/_00024/_/ *.h\n'
13
% (targ_varname, ' '.join(header_class_filenames),
15
targ_varname, ' '.join(header_classes),
17
targ_varname, targ_varname,
19
target_ob.link_cmd, target_ob.output_dir, target_ob.classes,
20
- targ_varname, targ_varname))
21
+ targ_varname, target_ob.classes,
23
+ target_ob.output_dir))
25
# Build the objects from the object_srcs with one 'javac' call
5
--- a/build/generator/templates/makefile.ezt
6
+++ b/build/generator/templates/makefile.ezt
8
[if-any target.headers][target.varname]_CLASS_FILENAMES =[for target.header_class_filenames] [target.header_class_filenames][end]
9
[target.varname]_CLASSES =[for target.header_classes] [target.header_classes][end]
10
$([target.varname]_HEADERS): $([target.varname]_CLASS_FILENAMES)
11
- [target.link_cmd] -d [target.output_dir] -classpath [target.classes]:$([target.varname]_CLASSPATH) $([target.varname]_CLASSES)
12
+ [target.link_cmd] -d [target.output_dir] -classpath [target.classes]:$([target.varname]_CLASSPATH) -all [target.classes]
13
+ cd [target.output_dir]; sed -i s/_00024/_/ *.h
14
[end][if-any target.sources][target.varname]_SRC =[for target.sources] [target.sources][end]
15
$([target.varname]_OBJECTS): $([target.varname]_SRC)
16
[target.link_cmd] -d [target.output_dir] -classpath [target.classes]:$([target.varname]_CLASSPATH) $([target.varname]_SRC)