File: build

package info (click to toggle)
appstream 0.16.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 15,140 kB
  • sloc: ansic: 46,770; xml: 10,353; cpp: 3,864; sh: 252; python: 232; makefile: 18
file content (72 lines) | stat: -rwxr-xr-x 2,255 bytes parent folder | download
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
#!/bin/sh
# autopkgtest check: Build and run a simple dummy program using the AppStream lib,
# to verify that the headers and pkg-config file are installed correctly
# (c) 2014-2016 Matthias Klumpp <mak@debian.org>
set -e

WORKDIR=$(mktemp -d)
trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
cd $WORKDIR
cat <<EOF > asbuildtest.c
#include <appstream.h>

int main()
{
	g_autoptr(AsComponent) cpt = NULL;
	g_autoptr(AsMetadata) metad = NULL;
	g_autofree gchar *xml_metainfo = NULL;
	g_autofree gchar *xml_collection = NULL;
	g_auto(GStrv) strv = NULL;
	GError *error = NULL;

	cpt = as_component_new ();
	as_component_set_kind (cpt, AS_COMPONENT_KIND_DESKTOP_APP);

	as_component_set_id (cpt, "org.example.Test.desktop");
	as_component_set_name (cpt, "Test", "C");
	as_component_set_summary (cpt, "It does things", "C");

	strv = g_new0 (gchar*, 1 + 2);
	strv[0] = g_strdup ("foobar");
	strv[1] = NULL;
	as_component_set_pkgnames (cpt, strv);

	metad = as_metadata_new ();
	as_metadata_add_component (metad, cpt);

	xml_metainfo = as_metadata_component_to_metainfo (metad, AS_FORMAT_KIND_XML, &error);
	g_assert_no_error (error);

	xml_collection = as_metadata_components_to_catalog (metad, AS_FORMAT_KIND_XML, &error);
	g_assert_no_error (error);

	g_debug ("Metainfo XML: %s", xml_metainfo);
	g_debug ("Collection XML: %s", xml_collection);

	g_assert_cmpstr (xml_metainfo, ==, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
					   "<component type=\"desktop-application\">\n"
					   "  <id>org.example.Test.desktop</id>\n"
					   "  <name>Test</name>\n"
					   "  <summary>It does things</summary>\n"
					   "  <pkgname>foobar</pkgname>\n"
					   "</component>\n");
	g_assert_cmpstr (xml_collection, ==, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
					 "<components version=\"0.16\">\n"
					 "  <component type=\"desktop-application\">\n"
					 "    <id>org.example.Test.desktop</id>\n"
					 "    <name>Test</name>\n"
					 "    <summary>It does things</summary>\n"
					 "    <pkgname>foobar</pkgname>\n"
					 "  </component>\n"
					 "</components>\n");

	return 0;
}
EOF
export G_MESSAGES_DEBUG=all

gcc -o asbuildtest asbuildtest.c `pkg-config --cflags --libs appstream`
echo "build: OK"
[ -x asbuildtest ]
./asbuildtest
echo "run: OK"