Ravenports generated: 14 Jan 2024 04:52
[ravenports.git] / bucket_B5 / gnatcoll-bindings
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               gnatcoll-bindings
4 VERSION=                23.0.0
5 REVISION=               4
6 EPOCH=                  1
7 KEYWORDS=               devel
8 VARIANTS=               standard
9 SDESC[standard]=        Core packages of GNAT Components Collection
10 HOMEPAGE=               https://github.com/AdaCore/gnatcoll-bindings
11 CONTACT=                John_Marino[draco@marino.st]
12
13 DOWNLOAD_GROUPS=        main
14 SITES[main]=            GITHUB/AdaCore:gnatcoll-bindings:411d4c6
15 DISTFILE[1]=            generated:main
16 DF_INDEX=               1
17 SPKGS[standard]=        complete
18                         gmp
19                         iconv
20                         python3
21                         readline
22                         syslog
23                         examples
24                         dev
25
26 OPTIONS_AVAILABLE=      none
27 OPTIONS_STANDARD=       none
28
29 BUILD_DEPENDS=          gmp:static:standard
30                         gmp:shared:standard
31                         gprbuild:dev:standard
32                         gprbuild:gprlib:standard
33                         readline:dev:standard
34                         readline:primary:standard
35                         python312:dev:standard
36                         gnatcoll-core:dev:standard
37                         gnatcoll-core:primary:standard
38 EXRUN[readline]=        readline:primary:standard
39                         gnatcoll-core:primary:standard
40 EXRUN[iconv]=           libiconv:primary:standard
41                         gnatcoll-core:primary:standard
42 EXRUN[python3]=         python312:primary:standard
43                         gnatcoll-core:primary:standard
44 EXRUN[gmp]=             gmp:shared:standard
45                         gnatcoll-core:primary:standard
46
47 USES=                   gprbuild gmake iconv:build
48
49 LICENSE=                GPLv3+:iconv
50 LICENSE_TERMS=          iconv:{{WRKDIR}}/TERMS
51 LICENSE_FILE=           GPLv3+:{{WRKSRC}}/COPYING3
52 LICENSE_AWK=            TERMS:"^$$"
53 LICENSE_SOURCE=         TERMS:{{WRKSRC}}/iconv/gnatcoll-iconv.ads
54 LICENSE_SCHEME=         solo
55
56 MAKE_ENV=               BUILD=PROD
57
58 INSTALL_REQ_TOOLCHAIN=  yes
59 SOVERSION=              0.0
60
61 do-build:
62 .for component in gmp iconv readline syslog
63 .  for libtype in static static-pic relocatable
64         (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
65                 gprbuild -p -XLIBRARY_TYPE=${libtype} \
66                 -XGNATCOLL_ICONV_OPT="-liconv_pic" \
67                 -P ${component}/gnatcoll_${component}.gpr)
68 .  endfor
69         # handle python components separately
70 .  for libtype in static static-pic relocatable
71         (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} AUTOPYTHON=3.12 \
72                 GNATCOLL_PYTHON_CFLAGS="-I${LOCALBASE}/include/python3.12" \
73                 gprbuild -p -XLIBRARY_TYPE=${libtype} \
74                 -P python/gnatcoll_python.gpr)
75 .  endfor
76 .endfor
77
78 post-extract:
79         ${MV} ${WRKSRC}/python ${WRKSRC}/python2
80         ${MV} ${WRKSRC}/python3 ${WRKSRC}/python
81
82 do-install:
83         ${MKDIR} ${STAGEDIR}${PREFIX}/share/gpr
84 .for component in gmp iconv readline syslog python
85 .  for libtype in static static-pic relocatable
86         ${MKDIR} ${WRKDIR}/${component}/${libtype}
87         ${MKDIR} ${STAGEDIR}${PREFIX}/lib/gnatcoll_${component}.${libtype}
88         (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV}\
89                 gprinstall -p --prefix=${WRKDIR}/${component}/${libtype}\
90                 -XLIBRARY_TYPE=${libtype} \
91                 -XGNATCOLL_ICONV_OPT="-liconv_pic" \
92                 -P ${component}/gnatcoll_${component}.gpr)
93 .  endfor
94         ${MKDIR} ${STAGEDIR}${PREFIX}/include/gnatcoll_${component}
95         ${MV} ${WRKDIR}/${component}/static/include/gnatcoll_${component}/* \
96                 ${STAGEDIR}${PREFIX}/include/gnatcoll_${component}/
97 .  for libtype in static static-pic relocatable
98         ${MV} ${WRKDIR}/${component}/${libtype}/lib/gnatcoll_${component}/*.ali \
99                 ${STAGEDIR}${PREFIX}/lib/gnatcoll_${component}.${libtype}/
100         @if [ "${libtype}" = "relocatable" ]; then\
101                 ${INSTALL_LIB} ${WRKDIR}/${component}/${libtype}/lib/gnatcoll_${component}/*.so.0.0 \
102                 ${STAGEDIR}${PREFIX}/lib/ ;\
103                 echo "Relocate ${libtype}/lib/gnatcoll_${component}/*.so.0.0" ;\
104         else\
105                 ${MV} ${WRKDIR}/${component}/${libtype}/lib/gnatcoll_${component}/*.a\
106                 ${STAGEDIR}${PREFIX}/lib/gnatcoll_${component}.${libtype}/ ;\
107                 echo "Relocate ${libtype}/lib/gnatcoll_${component}/*.a" ;\
108         fi
109 .  endfor
110         ${SH} ${FILESDIR}/gen_gpr.sh \
111                 "${component}" \
112                 "${STAGEDIR}${PREFIX}" \
113                 "-I${LOCALBASE}/include/python3.12" \
114                 "0.0" \
115                 "-lpython3.12"
116 .endfor
117
118 [FILE:102:descriptions/desc.gmp]
119 This is the bindings module of the GNAT Components Collection.
120 This subpackage contains gmp bindings.
121
122
123 [FILE:104:descriptions/desc.iconv]
124 This is the bindings module of the GNAT Components Collection.
125 This subpackage contains iconv bindings.
126
127
128 [FILE:110:descriptions/desc.python3]
129 This is the bindings module of the GNAT Components Collection.
130 This subpackage contains the python3 bindings.
131
132
133 [FILE:107:descriptions/desc.readline]
134 This is the bindings module of the GNAT Components Collection.
135 This subpackage contains readline bindings.
136
137
138 [FILE:105:descriptions/desc.syslog]
139 This is the bindings module of the GNAT Components Collection.
140 This subpackage contains syslog bindings.
141
142
143 [FILE:119:distinfo]
144 bdc1eb01ba2740672d3dd9e5f364790299f4d182975e84e61a74ce5b447ec6a9       253304 AdaCore-gnatcoll-bindings-411d4c6.tar.gz
145
146
147 [FILE:167:manifests/plist.gmp]
148 lib/
149  libgnatcoll_gmp.so.%%SOMAJOR%%
150  libgnatcoll_gmp.so.%%SOVERSION%%
151 lib/gnatcoll_gmp.relocatable/
152  libgnatcoll_gmp.so.%%SOMAJOR%%
153  libgnatcoll_gmp.so.%%SOVERSION%%
154
155
156 [FILE:177:manifests/plist.iconv]
157 lib/
158  libgnatcoll_iconv.so.%%SOMAJOR%%
159  libgnatcoll_iconv.so.%%SOVERSION%%
160 lib/gnatcoll_iconv.relocatable/
161  libgnatcoll_iconv.so.%%SOMAJOR%%
162  libgnatcoll_iconv.so.%%SOVERSION%%
163
164
165 [FILE:186:manifests/plist.python3]
166 lib/
167  libgnatcoll_python3.so.%%SOMAJOR%%
168  libgnatcoll_python3.so.%%SOVERSION%%
169 lib/gnatcoll_python.relocatable/
170  libgnatcoll_python3.so.%%SOMAJOR%%
171  libgnatcoll_python3.so.%%SOVERSION%%
172
173
174 [FILE:192:manifests/plist.readline]
175 lib/
176  libgnatcoll_readline.so.%%SOMAJOR%%
177  libgnatcoll_readline.so.%%SOVERSION%%
178 lib/gnatcoll_readline.relocatable/
179  libgnatcoll_readline.so.%%SOMAJOR%%
180  libgnatcoll_readline.so.%%SOVERSION%%
181
182
183 [FILE:182:manifests/plist.syslog]
184 lib/
185  libgnatcoll_syslog.so.%%SOMAJOR%%
186  libgnatcoll_syslog.so.%%SOVERSION%%
187 lib/gnatcoll_syslog.relocatable/
188  libgnatcoll_syslog.so.%%SOMAJOR%%
189  libgnatcoll_syslog.so.%%SOVERSION%%
190
191
192 [FILE:4639:manifests/plist.dev]
193 include/gnatcoll_gmp/
194  gmp_support.c
195  gnatcoll-gmp-integers-io.adb
196  gnatcoll-gmp-integers-io.ads
197  gnatcoll-gmp-integers-misc.adb
198  gnatcoll-gmp-integers-misc.ads
199  gnatcoll-gmp-integers-number_theoretic.adb
200  gnatcoll-gmp-integers-number_theoretic.ads
201  gnatcoll-gmp-integers-random.adb
202  gnatcoll-gmp-integers-random.ads
203  gnatcoll-gmp-integers-root_extraction.adb
204  gnatcoll-gmp-integers-root_extraction.ads
205  gnatcoll-gmp-integers.adb
206  gnatcoll-gmp-integers.ads
207  gnatcoll-gmp-lib.ads
208  gnatcoll-gmp-mpz_even_p.c
209  gnatcoll-gmp-mpz_odd_p.c
210  gnatcoll-gmp-mpz_sign.c
211  gnatcoll-gmp-random_state.adb
212  gnatcoll-gmp-random_state.ads
213  gnatcoll-gmp-rational_numbers.adb
214  gnatcoll-gmp-rational_numbers.ads
215  gnatcoll-gmp.ads
216 include/gnatcoll_iconv/
217  gnatcoll-iconv.adb
218  gnatcoll-iconv.ads
219  iconv_support.c
220 include/gnatcoll_python/
221  gnatcoll-any_types-python.adb
222  gnatcoll-any_types-python.ads
223  gnatcoll-python-capsule.adb
224  gnatcoll-python-capsule.ads
225  gnatcoll-python-ctypes.ads
226  gnatcoll-python-errors.ads
227  gnatcoll-python-eval.ads
228  gnatcoll-python-exceptions.ads
229  gnatcoll-python-fileutils.adb
230  gnatcoll-python-fileutils.ads
231  gnatcoll-python-lifecycle.adb
232  gnatcoll-python-lifecycle.ads
233  gnatcoll-python-state.adb
234  gnatcoll-python-state.ads
235  gnatcoll-python.adb
236  gnatcoll-python.ads
237  gnatcoll-scripts-python.adb
238  gnatcoll-scripts-python.ads
239  python_support.c
240 include/gnatcoll_readline/
241  gnatcoll-readline.adb
242  gnatcoll-readline.ads
243 include/gnatcoll_syslog/
244  gnatcoll-traces-syslog.adb
245  gnatcoll-traces-syslog.ads
246  syslog_support.c
247 lib/
248  libgnatcoll_gmp.so
249  libgnatcoll_iconv.so
250  libgnatcoll_python3.so
251  libgnatcoll_readline.so
252  libgnatcoll_syslog.so
253 lib/gnatcoll_gmp.relocatable/
254  gnatcoll-gmp-integers-io.ali
255  gnatcoll-gmp-integers-misc.ali
256  gnatcoll-gmp-integers-number_theoretic.ali
257  gnatcoll-gmp-integers-random.ali
258  gnatcoll-gmp-integers-root_extraction.ali
259  gnatcoll-gmp-integers.ali
260  gnatcoll-gmp-lib.ali
261  gnatcoll-gmp-random_state.ali
262  gnatcoll-gmp-rational_numbers.ali
263  gnatcoll-gmp.ali
264  libgnatcoll_gmp.so
265 lib/gnatcoll_gmp.static/
266  gnatcoll-gmp-integers-io.ali
267  gnatcoll-gmp-integers-misc.ali
268  gnatcoll-gmp-integers-number_theoretic.ali
269  gnatcoll-gmp-integers-random.ali
270  gnatcoll-gmp-integers-root_extraction.ali
271  gnatcoll-gmp-integers.ali
272  gnatcoll-gmp-lib.ali
273  gnatcoll-gmp-random_state.ali
274  gnatcoll-gmp-rational_numbers.ali
275  gnatcoll-gmp.ali
276  libgnatcoll_gmp.a
277 lib/gnatcoll_gmp.static-pic/
278  gnatcoll-gmp-integers-io.ali
279  gnatcoll-gmp-integers-misc.ali
280  gnatcoll-gmp-integers-number_theoretic.ali
281  gnatcoll-gmp-integers-random.ali
282  gnatcoll-gmp-integers-root_extraction.ali
283  gnatcoll-gmp-integers.ali
284  gnatcoll-gmp-lib.ali
285  gnatcoll-gmp-random_state.ali
286  gnatcoll-gmp-rational_numbers.ali
287  gnatcoll-gmp.ali
288  libgnatcoll_gmp.a
289 lib/gnatcoll_iconv.relocatable/
290  gnatcoll-iconv.ali
291  libgnatcoll_iconv.so
292 lib/gnatcoll_iconv.static/
293  gnatcoll-iconv.ali
294  libgnatcoll_iconv.a
295 lib/gnatcoll_iconv.static-pic/
296  gnatcoll-iconv.ali
297  libgnatcoll_iconv.a
298 lib/gnatcoll_python.relocatable/
299  gnatcoll-any_types-python.ali
300  gnatcoll-python-capsule.ali
301  gnatcoll-python-ctypes.ali
302  gnatcoll-python-errors.ali
303  gnatcoll-python-eval.ali
304  gnatcoll-python-exceptions.ali
305  gnatcoll-python-fileutils.ali
306  gnatcoll-python-lifecycle.ali
307  gnatcoll-python-state.ali
308  gnatcoll-python.ali
309  gnatcoll-scripts-python.ali
310  libgnatcoll_python3.so
311 lib/gnatcoll_python.static/
312  gnatcoll-any_types-python.ali
313  gnatcoll-python-capsule.ali
314  gnatcoll-python-ctypes.ali
315  gnatcoll-python-errors.ali
316  gnatcoll-python-eval.ali
317  gnatcoll-python-exceptions.ali
318  gnatcoll-python-fileutils.ali
319  gnatcoll-python-lifecycle.ali
320  gnatcoll-python-state.ali
321  gnatcoll-python.ali
322  gnatcoll-scripts-python.ali
323  libgnatcoll_python3.a
324 lib/gnatcoll_python.static-pic/
325  gnatcoll-any_types-python.ali
326  gnatcoll-python-capsule.ali
327  gnatcoll-python-ctypes.ali
328  gnatcoll-python-errors.ali
329  gnatcoll-python-eval.ali
330  gnatcoll-python-exceptions.ali
331  gnatcoll-python-fileutils.ali
332  gnatcoll-python-lifecycle.ali
333  gnatcoll-python-state.ali
334  gnatcoll-python.ali
335  gnatcoll-scripts-python.ali
336  libgnatcoll_python3.a
337 lib/gnatcoll_readline.relocatable/
338  gnatcoll-readline.ali
339  libgnatcoll_readline.so
340 lib/gnatcoll_readline.static/
341  gnatcoll-readline.ali
342  libgnatcoll_readline.a
343 lib/gnatcoll_readline.static-pic/
344  gnatcoll-readline.ali
345  libgnatcoll_readline.a
346 lib/gnatcoll_syslog.relocatable/
347  gnatcoll-traces-syslog.ali
348  libgnatcoll_syslog.so
349 lib/gnatcoll_syslog.static/
350  gnatcoll-traces-syslog.ali
351  libgnatcoll_syslog.a
352 lib/gnatcoll_syslog.static-pic/
353  gnatcoll-traces-syslog.ali
354  libgnatcoll_syslog.a
355 share/gpr/
356  gnatcoll_gmp.gpr
357  gnatcoll_iconv.gpr
358  gnatcoll_python.gpr
359  gnatcoll_readline.gpr
360  gnatcoll_syslog.gpr
361
362
363 [FILE:495:patches/patch-python_python__support.c]
364 https://github.com/AdaCore/gnatcoll-bindings/issues/18
365
366 Fixes build with python 3.11+
367
368 --- python/python_support.c.orig        2023-01-04 08:36:46 UTC
369 +++ python/python_support.c
370 @@ -813,13 +813,13 @@ PyAPI_FUNC(PyObject *) PyFile_FromString
371  PyCodeObject*
372  ada_pyframe_get_code (PyFrameObject* obj)
373  {
374 -   return obj->f_code;
375 +   return PyFrame_GetCode (obj);
376  }
377  
378  PyFrameObject*
379  ada_pyframe_get_back (PyFrameObject* obj)
380  {
381 -   return obj->f_back;
382 +   return PyFrame_GetBack (obj);
383  }
384  
385  PyObject*
386
387
388 [FILE:2217:files/gen_gpr.sh]
389 #!/bin/sh
390 # This scripts generates gpr files and creates symbolic links
391 # Expected inputs: component, destdir, python-includes
392 # component one of (gmp, iconv, readline, syslog, python)
393
394 name="$1"
395 destdir="$2"
396 python_includes="$3"
397 soversion="$4"
398 python3_linking="\"$5\""
399
400 case "$name" in
401         "gmp")  
402                 component=GMP
403                 component_upper=GMP
404                 component_lower="gmp"
405                 linker_opts='"-lgmp"'
406                 ;;
407         "iconv")        
408                 component=Iconv
409                 component_upper=ICONV
410                 component_lower="iconv"
411                 linker_opts='"-liconv"'
412                 ;;
413         "readline")
414                 component=Readline
415                 component_upper=READLINE
416                 component_lower="readline"
417                 linker_opts='"-lreadline"'
418                 ;;
419         "syslog")
420                 component=Syslog
421                 component_upper=SYSLOG
422                 component_lower="syslog"
423                 linker_opts=
424                 ;;
425         "python")
426                 name=python3
427                 component=Python
428                 component_upper=PYTHON
429                 component_lower="python"
430                 linker_opts="${python3_linking}"
431                 ;;
432         *)
433                 echo "Illegal component $component"
434                 exit 1
435                 ;;
436 esac
437
438 dname=$(dirname "$0")
439 filesdir=$(cd "$dname" && pwd -P)
440 target="gnatcoll_${component_lower}.gpr"
441 major="${soversion%.[0-9]}"
442
443 case "$name" in
444         python|python3)
445                 pyhandle="s|%%PYTHON_ON%%||; s|%%PYTHON_INCLUDE%%|${python_includes}|"  
446                 ;;
447         *)
448                 pyhandle="/%%PYTHON_ON%%/d"
449                 ;;
450 esac
451
452 case "$name" in
453         "iconv")
454                 iconvhandle="s|%%ICONV_ON%%||"
455                 ;;
456         *)
457                 iconvhandle="/%%ICONV_ON%%/d"
458                 ;;
459 esac
460         
461 sed \
462  -e "s|%%COMPONENT%%|${component}|"\
463  -e "s|%%COMPONENT_U%%|${component_upper}|"\
464  -e "s|%%COMPONENT_L%%|${component_lower}|"\
465  -e "s|%%NAME%%|${name}|"\
466  -e "s|%%LINKER_OPTS%%|${linker_opts}|"\
467  -e "${pyhandle}"\
468  -e "${iconvhandle}"\
469  "${filesdir}/gnatcoll_template.gpr" > "${destdir}/share/gpr/${target}"
470
471 ln -s "libgnatcoll_${name}.so.${major}" "${destdir}/lib/libgnatcoll_${name}.so"
472 ln -s "libgnatcoll_${name}.so.${soversion}" "${destdir}/lib/libgnatcoll_${name}.so.${major}"
473 ln -s "../libgnatcoll_${name}.so.${soversion}" \
474         "${destdir}/lib/gnatcoll_${component_lower}.relocatable/libgnatcoll_${name}.so"
475 ln -s "../libgnatcoll_${name}.so.${soversion}" \
476         "${destdir}/lib/gnatcoll_${component_lower}.relocatable/libgnatcoll_${name}.so.${major}"
477 ln -s "../libgnatcoll_${name}.so.${soversion}" \
478         "${destdir}/lib/gnatcoll_${component_lower}.relocatable/libgnatcoll_${name}.so.${soversion}"
479
480
481 [FILE:1997:files/gnatcoll_template.gpr]
482 with "gpr";
483 with "xmlada_schema";
484 with "xmlada_dom";
485 with "xmlada_sax";
486 with "xmlada_input_sources";
487 with "xmlada_unicode";
488 with "gnatcoll";
489
490 library project GnatColl_%%COMPONENT%% is
491    type BUILD_KIND is ("static", "static-pic", "relocatable");
492    BUILD : BUILD_KIND := external("GNATCOLL_%%COMPONENT_U%%_BUILD", external("LIBRARY_TYPE", "static-pic"));
493
494    for Languages use ("Ada", "C");
495
496    case BUILD is
497       when "static" =>
498          for Source_Dirs use ("../../include/gnatcoll_%%COMPONENT_L%%");
499          for Library_Dir use "../../lib/gnatcoll_%%COMPONENT_L%%.static";
500          for Library_Kind use "static";
501       when "static-pic" =>
502          for Source_Dirs use ("../../include/gnatcoll_%%COMPONENT_L%%");
503          for Library_Dir use "../../lib/gnatcoll_%%COMPONENT_L%%.static-pic";
504          for Library_Kind use "static-pic";
505       when "relocatable" =>
506          for Source_Dirs use ("../../include/gnatcoll_%%COMPONENT_L%%");
507          for Library_Dir use "../../lib/gnatcoll_%%COMPONENT_L%%.relocatable";
508          for Library_Kind use "relocatable";
509    end case;
510
511    for Library_Name use "gnatcoll_%%NAME%%";
512
513    package Naming is
514       for dot_replacement use "-";
515       for casing use "lowercase";
516       for body_suffix ("c") use ".c";
517       for body_suffix ("ada") use ".adb";
518       for spec_suffix ("c") use ".h";
519       for spec_suffix ("ada") use ".ads";
520    end Naming;
521
522    package Linker is
523       for Linker_Options use (%%LINKER_OPTS%%);
524    end Linker;
525
526    package Install is
527       for Active use "False";
528    end Install;
529
530    for Externally_Built use "True";
531
532    type Build_Type is
533      ("DEBUG", "PROD");
534
535    %%PYTHON_ON%%libpython_kind    := "shared";
536    %%PYTHON_ON%%python_static_lib := "";
537    %%PYTHON_ON%%python_libs       := ();
538    %%PYTHON_ON%%python_cflags     := ("%%PYTHON_INCLUDE%%");
539    %%ICONV_ON%%iconv_opt    := "-liconv";
540    build        : build_type := "PROD";
541    name         := "gnatcoll_%%NAME%%";
542    version      := "0.0";
543 end GnatColl_%%COMPONENT%%;
544