1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
# This property file contains dependencies of classes, methods, and
# field on other methods or classes.
#
# Syntax:
#
# <used>: <needed 1> [... <needed N>]
#
# means that when <used> is included, <needed 1> (... <needed N>) must
# be included as well.
#
# <needed X> and <used> are of the form
#
# <class.methodOrField(signature)>
#
# or just
#
# <class>
#
# Within dependencies, variables can be used. A variable is defined as
# follows:
#
# {variable}: value1 value2 ... value<n>
#
# variables can be used on the right side of dependencies as follows:
#
# <used>: com.bla.blu.{variable}.Class.m()V
#
# The use of the variable will expand to <n> dependencies of the form
#
# <used>: com.bla.blu.value1.Class.m()V
# <used>: com.bla.blu.value2.Class.m()V
# ...
# <used>: com.bla.blu.value<n>.Class.m()V
#
# Variables can be redefined when building a system to select the
# required support for features like encodings, protocols, etc.
#
# Hints:
#
# - For methods and fields, the signature is mandatory. For
# specification, please see the Java Virtual Machine Specification by
# SUN. Unlike in the spec, field signatures (types) are in brackets.
#
# - Package names must be separated by '/' (and not '.'). E.g.,
# java/lang/Class (this is necessary, because the '.' is used to
# separate method or field names from classes)
#
# - In case <needed> refers to a class, only the class itself will be
# included in the resulting binary, NOT necessarily all its methods
# and fields. If you want to refer to all methods and fields, you can
# write class.* as an abbreviation.
#
# - Abbreviations for packages are also possible: my/package/* means all
# methods and fields of all classes in my/package.
#
# - A line with a trailing '\' continues in the next line.
java/net/InetAddress: \
java/lang/ClassNotFoundException.<init>(Ljava/lang/String;)V \
java/lang/InternalError.<init>(Ljava/lang/String;)V \
java/net/UnknownHostException.<init>(Ljava/lang/String;)V
java/net/DatagramSocketImpl: \
java/net/DatagramSocketImpl.fd(Ljava/io/FileDescriptor;) \
java/net/DatagramSocketImpl.localPort(I)
java/net/PlainDatagramSocketImpl: \
java/lang/ClassNotFoundException.<init>(Ljava/lang/String;)V \
java/lang/InternalError.<init>(Ljava/lang/String;)V \
java/io/IOException.<init>(Ljava/lang/String;)V \
java/io/FileDescriptor.<init>()V \
java/lang/Boolean.<init>(Z)V \
java/lang/Integer.<init>(I)V \
java/net/InetAddress.getByName(Ljava/lang/String;)Ljava/net/InetAddress; \
java/net/InetAddress.getAddress()[B \
java/lang/Boolean.booleanValue()Z \
java/lang/Integer.intValue()I \
java/net/SocketException.<init>(Ljava/lang/String;)V \
java/net/DatagramPacket.getData()[B \
java/net/SocketImpl.address(Ljava/net/InetAddress;) \
java/net/PlainSocketImpl.native_fd(I) \
java/net/SocketImpl.fd(Ljava/io/FileDescriptor;) \
java/net/SocketImpl.address(Ljava/net/InetAddress;) \
java/net/PlainDatagramSocketImpl.native_fd(I) \
java/net/SocketImpl.localport(I) \
java/net/SocketImpl.port(I)
java/net/PlainSocketImpl: \
java/lang/ClassNotFoundException.<init>(Ljava/lang/String;)V \
java/lang/InternalError.<init>(Ljava/lang/String;)V \
java/io/IOException.<init>(Ljava/lang/String;)V \
java/io/FileDescriptor.<init>()V \
java/lang/Boolean.<init>(Z)V \
java/lang/Integer.<init>(I)V \
java/net/InetAddress.getByName(Ljava/lang/String;)Ljava/net/InetAddress; \
java/net/InetAddress.getAddress()[B \
java/lang/Boolean.booleanValue()Z \
java/lang/Integer.intValue()I \
java/net/SocketException.<init>(Ljava/lang/String;)V \
java/net/DatagramPacket.getData()[B \
java/net/SocketImpl.address(Ljava/net/InetAddress;) \
java/net/PlainSocketImpl.native_fd(I) \
java/net/SocketImpl.fd(Ljava/io/FileDescriptor;) \
java/net/SocketImpl.address(Ljava/net/InetAddress;) \
java/net/PlainDatagramSocketImpl.native_fd(I) \
java/net/SocketImpl.localport(I) \
java/net/SocketImpl.port(I)
# All protocols supported are loaded via URL.getURLStreamHandler from
# class gnu.java.net.protocol.<protocol>.Handler.
#
# This introduces a dependency for all protocols. To allow an easy selection
# and addition of protocols, the library variable {protocols} can be set to
# the set of supported protocols.
#
{protocols}: http file jar
java/net/URL.getURLStreamHandler(Ljava/lang/String;)Ljava/net/URLStreamHandler;: \
gnu/java/net/protocol/{protocols}/Handler.* \
com/aicas/java/net/protocol/rom/Handler.*
# end of file
|