1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Networking library for Ada
8 HOMEPAGE= https://www.codelabs.ch/anet/
9 CONTACT= John_Marino[draco@marino.st]
12 SITES[main]= https://www.codelabs.ch/download/
13 DISTFILE[1]= libanet-0.4.3.tar.bz2:main
15 SPKGS[standard]= complete
19 OPTIONS_AVAILABLE= TESTED
20 OPTIONS_STANDARD= TESTED
22 BUILD_DEPENDS= ruby-asciidoctor:single:ruby_default
23 source-highlight:primary:standard
25 USES= gprbuild gmake ada:primary
27 DISTNAME= libanet-0.4.3
29 LICENSE= GMGPL:primary
30 LICENSE_TERMS= primary:{{WRKDIR}}/TERMS
31 LICENSE_FILE= GMGPL:{{WRKSRC}}/COPYING
32 LICENSE_AWK= TERMS:"^pragma"
33 LICENSE_SOURCE= TERMS:{{WRKSRC}}/src/anet.ads
36 FPC_EQUIVALENT= net/anet
38 BUILD_TARGET= all build-doc
39 MAKE_ARGS= NUM_CPUS={{MAKE_JOBS_NUMBER}}
41 INSTALL_REQ_TOOLCHAIN= yes
43 VAR_OPSYS[freebsd]= MAKE_ARGS=OS=bsd
44 VAR_OPSYS[netbsd]= MAKE_ARGS=OS=bsd
45 VAR_OPSYS[dragonfly]= MAKE_ARGS=OS=bsd
47 [TESTED].DESCRIPTION= Run unit test suite before installation
48 [TESTED].BUILD_DEPENDS_ON= ahven:primary:standard
49 [TESTED].BUILD_TARGET_ON= build-tests
52 (cd ${WRKSRC}/doc && ${COPYTREE_SHARE} html ${STAGEDIR}${STD_DOCDIR})
55 ${REINPLACE_CMD} -e 's|=lib/gnat|=share/gpr|' ${WRKSRC}/Makefile
56 ${REINPLACE_CMD} -e 's|"dynamic"|"static-pic"|' ${WRKSRC}/anet.gpr
58 [FILE:605:descriptions/desc.primary]
59 Anet is a networking library for the Ada programming language featuring:
60 * BSD socket implementation
61 * High abstraction level
62 * Extendable socket type hierarchy
63 * Socket receiver tasks (Stream and Datagram)
64 * Ada type serialisation/deserialisation over sockets
65 * Supported socket families
68 - UNIX domain (AF_UNIX)
69 - Linux only: Packet (AF_PACKET)
70 - Linux only: Netlink (AF_NETLINK)
71 * Supported socket modes
75 * Support for IPv4/IPv6 multicast
76 * UDP/IPv4 packet creation and validation
80 f2b41d8e783fbc73a731936398e4a9ee6094e399109986dea8e2dc644bff69b5 52955 libanet-0.4.3.tar.bz2
83 [FILE:1750:manifests/plist.primary]
87 anet-byte_swapping.adb
88 anet-byte_swapping.ads
97 anet-receivers-datagram.adb
98 anet-receivers-datagram.ads
99 anet-receivers-stream.adb
100 anet-receivers-stream.ads
103 anet-socket_families.ads
104 anet-sockets-filters.adb
105 anet-sockets-filters.ads
106 anet-sockets-inet-iface.adb
107 anet-sockets-inet-iface.ads
108 anet-sockets-inet.adb
109 anet-sockets-inet.ads
110 anet-sockets-net_ifaces.adb
111 anet-sockets-net_ifaces.ads
112 anet-sockets-thin-inet.adb
113 anet-sockets-thin-inet.ads
114 anet-sockets-thin-netdev-requests.ads
115 anet-sockets-thin-netdev.ads
116 anet-sockets-thin-sockaddr.ads
117 anet-sockets-thin-unix.ads
118 anet-sockets-thin.ads
119 anet-sockets-unix.adb
120 anet-sockets-unix.ads
137 anet-byte_swapping.ali
142 anet-os_constants.ali
143 anet-receivers-datagram.ali
144 anet-receivers-stream.ali
146 anet-socket_families.ali
147 anet-sockets-filters.ali
148 anet-sockets-inet-iface.ali
149 anet-sockets-inet.ali
150 anet-sockets-net_ifaces.ali
151 anet-sockets-thin-inet.ali
152 anet-sockets-thin-netdev-requests.ali
153 anet-sockets-thin-netdev.ali
154 anet-sockets-thin-sockaddr.ali
155 anet-sockets-thin-unix.ali
156 anet-sockets-thin.ali
157 anet-sockets-unix.ali
168 [FILE:31:manifests/plist.docs]
169 share/doc/anet/html/index.html
172 [FILE:3023:patches/patch-src_anet-sockets-inet.adb]
173 --- src/anet-sockets-inet.adb.orig 2022-12-04 16:02:18 UTC
174 +++ src/anet-sockets-inet.adb
175 @@ -69,7 +69,7 @@ package body Anet.Sockets.Inet is
177 Sock : Thin.Inet.Sockaddr_In_Type
178 (Family => Socket_Families.Family_Inet);
179 - Len : aliased C.int := Sock'Size / 8;
180 + Len : aliased C.int := Thin.Inet.Sockaddr_In_Size;
182 New_Socket.Sock_FD := -1;
183 Src := (Addr => Any_Addr,
184 @@ -116,7 +116,7 @@ package body Anet.Sockets.Inet is
186 Sock : Thin.Inet.Sockaddr_In_Type
187 (Family => Socket_Families.Family_Inet6);
188 - Len : aliased C.int := Sock'Size / 8;
189 + Len : aliased C.int := Thin.Inet.Sockaddr_In6_Size;
191 New_Socket.Sock_FD := -1;
192 Src := (Addr => Any_Addr_V6,
193 @@ -173,7 +173,7 @@ package body Anet.Sockets.Inet is
194 (Result => Thin.C_Bind
195 (S => Socket.Sock_FD,
196 Name => Sockaddr'Address,
197 - Namelen => Sockaddr'Size / 8),
198 + Namelen => Thin.Inet.Sockaddr_In_Size),
199 Message => "Unable to bind IPv4 socket to " & To_String
200 (Address => Address) & "," & Port'Img);
202 @@ -200,7 +200,7 @@ package body Anet.Sockets.Inet is
203 (Result => Thin.C_Bind
204 (S => Socket.Sock_FD,
205 Name => Sockaddr'Address,
206 - Namelen => Sockaddr'Size / 8),
207 + Namelen => Thin.Inet.Sockaddr_In6_Size),
208 Message => "Unable to bind IPv6 socket to " & To_String
209 (Address => Address) & "," & Port'Img);
211 @@ -220,7 +220,7 @@ package body Anet.Sockets.Inet is
212 (Result => Thin.C_Connect
213 (S => Socket.Sock_FD,
215 - Namelen => Dst'Size / 8),
216 + Namelen => Thin.Inet.Sockaddr_In_Size),
217 Message => "Unable to connect socket to address " & To_String
218 (Address => Address) & " (" & Port'Img & " )");
220 @@ -240,7 +240,7 @@ package body Anet.Sockets.Inet is
221 (Result => Thin.C_Connect
222 (S => Socket.Sock_FD,
224 - Namelen => Dst'Size / 8),
225 + Namelen => Thin.Inet.Sockaddr_In6_Size),
226 Message => "Unable to connect socket to address " & To_String
227 (Address => Address) & " (" & Port'Img & " )");
229 @@ -478,7 +478,7 @@ package body Anet.Sockets.Inet is
231 Flags => Constants.Sys.MSG_NOSIGNAL,
233 - Tolen => Dst'Size / 8);
234 + Tolen => Thin.Inet.Sockaddr_In_Size);
237 (Result => C.int (Res),
238 @@ -510,7 +510,7 @@ package body Anet.Sockets.Inet is
240 Flags => Constants.Sys.MSG_NOSIGNAL,
242 - Tolen => Dst'Size / 8);
243 + Tolen => Thin.Inet.Sockaddr_In6_Size);
246 (Result => C.int (Res),