1SUMMARY="Introspection system for GObject-based libraries" 2DESCRIPTION="GObject introspection is a middleware layer between C libraries \ 3(using GObject) and language bindings. The C library can be scanned at \ 4compile time and generate a metadata file, in addition to the actual native \ 5C library. Then at runtime, language bindings can read this metadata and \ 6automatically provide bindings to call into the C library." 7HOMEPAGE="https://wiki.gnome.org/Projects/GObjectIntrospection" 8COPYRIGHT="Colin Walters 9 Johan Dahlin 10 Matthias Clasen (girepository) 11 J��rg Billeter (scanner)" 12LICENSE="GNU LGPL v2 13 GNU GPL v2 14 MIT" 15REVISION="1" 16SOURCE_URI="http://ftp.gnome.org/pub/GNOME/sources/gobject-introspection/${portVersion%.*}/gobject-introspection-$portVersion.tar.xz" 17CHECKSUM_SHA256="bd7babd99af7258e76819e45ba4a6bc399608fe762d83fde3cac033c50841bb4" 18SOURCE_DIR="gobject-introspection-$portVersion" 19PATCHES="gobject_introspection-$portVersion.patchset" 20 21ARCHITECTURES="all !x86_gcc2" 22SECONDARY_ARCHITECTURES="x86" 23 24# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/. 25commandSuffix=$secondaryArchSuffix 26commandBinDir=$binDir 27if [ "$targetArchitecture" = x86_gcc2 ]; then 28 commandSuffix= 29 commandBinDir=$prefix/bin 30fi 31 32libVersion="1.0.0" 33libVersionCompat="$libVersion compat >= ${libVersion%%.*}" 34 35PROVIDES=" 36 gobject_introspection$secondaryArchSuffix = $portVersion 37 cmd:g_ir_annotation_tool$commandSuffix 38 cmd:g_ir_compiler$commandSuffix 39 cmd:g_ir_generate$commandSuffix 40 cmd:g_ir_inspect$commandSuffix 41 cmd:g_ir_scanner$commandSuffix 42 lib:libgirepository_1.0$secondaryArchSuffix = $libVersionCompat 43 " 44REQUIRES=" 45 haiku$secondaryArchSuffix 46 lib:libffi$secondaryArchSuffix 47 lib:libgio_2.0$secondaryArchSuffix 48 lib:libglib_2.0$secondaryArchSuffix 49 lib:libgmodule_2.0$secondaryArchSuffix 50 lib:libgobject_2.0$secondaryArchSuffix 51 lib:libintl$secondaryArchSuffix 52 lib:libxml2$secondaryArchSuffix 53 " 54 55PROVIDES_devel=" 56 gobject_introspection${secondaryArchSuffix}_devel = $portVersion 57 devel:libgirepository_1.0$secondaryArchSuffix = $libVersionCompat 58 " 59REQUIRES_devel=" 60 gobject_introspection$secondaryArchSuffix == $portVersion base 61 devel:libffi$secondaryArchSuffix 62 devel:libglib_2.0$secondaryArchSuffix 63 devel:libpcre$secondaryArchSuffix 64 " 65 66BUILD_REQUIRES=" 67 haiku${secondaryArchSuffix}_devel 68 devel:libffi$secondaryArchSuffix 69 devel:libgio_2.0$secondaryArchSuffix 70 devel:libglib_2.0$secondaryArchSuffix 71 devel:libgmodule_2.0$secondaryArchSuffix 72 devel:libgobject_2.0$secondaryArchSuffix 73 devel:libxml2$secondaryArchSuffix 74 " 75BUILD_PREREQUIRES=" 76 cmd:aclocal 77 cmd:autoconf 78 cmd:bison 79 cmd:flex 80 cmd:gcc$secondaryArchSuffix 81 cmd:ld$secondaryArchSuffix 82 cmd:libtoolize$secondaryArchSuffix 83 cmd:make 84 cmd:meson 85 cmd:ninja 86 cmd:pkg_config$secondaryArchSuffix 87 cmd:python3 88 cmd:which 89 " 90 91defineDebugInfoPackage gobject_introspection$secondaryArchSuffix \ 92 "$libDir"/libgirepository-1.0.so.$libVersion 93 94BUILD() 95{ 96 meson build --buildtype=release \ 97 --prefix=$prefix \ 98 --includedir=$includeDir \ 99 --datadir=$dataDir \ 100 --libdir=$libDir \ 101 --mandir=$manDir 102 103 ninja -C build $jobArgs 104} 105 106INSTALL() 107{ 108 ninja -C build install 109 110 prepareInstalledDevelLib libgirepository-1.0 111 fixPkgconfig 112 113 # devel package 114 packageEntries devel \ 115 "$developDir" 116} 117 118TEST() 119{ 120 # tests fails on Regress-1.0.gir, but as it looks 121 # it is known to fail there (doesn't break the tests) 122 ninja -C build test 123} 124