aboutsummaryrefslogtreecommitdiff
path: root/extra/shared-mime-info/build
blob: 4a2c0ae7bbafe35bc779c7737c63b104b123b3f1 (plain)
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
#!/bin/sh -e
#
# We bypass the build system entirely as it has
# a mandatory dependency on gettext.

# Grab the package version.
read -r version _ < "${0%/*}/version"

mkdir -p "$1/usr/share/mime/packages" \
         "$1/usr/share/pkgconfig" \
         "$1/usr/bin"

# Install with only English support.
sed -e 's/_comment/comment/g' freedesktop.org.xml.in \
    > "$1/usr/share/mime/packages/freedesktop.org.xml"

# Replace markers in the file.
sed -e 's|@prefix@|/usr|' -e "s|@VERSION@|$version|" shared-mime-info.pc.in \
    > "$1/usr/share/pkgconfig/shared-mime-info.pc"

# Define our own config.h statically.
cat << EOF > config.h
#define HAVE_BIND_TEXTDOMAIN_CODESET 1
#define HAVE_FDATASYNC 1
#define HAVE_GETTEXT 0
#define HAVE_INTTYPES_H 1
#define HAVE_LC_MESSAGES 1
#define HAVE_LOCALE_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STDINT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRINGS_H 1
#define HAVE_STRING_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_UNISTD_H 1
#define PACKAGE "shared-mime-info"
#define PACKAGE_BUGREPORT ""
#define PACKAGE_NAME "shared-mime-info"
#define PACKAGE_STRING "shared-mime-info $version"
#define PACKAGE_TARNAME "shared-mime-info"
#define PACKAGE_URL ""
#define PACKAGE_VERSION "$version"
#define STDC_HEADERS 1
#define VERSION "$version"
EOF

# Fix config.h include.
sed 's/<config.h>/"config.h"/' update-mime-database.c > update-mime-database.c.bak
mv update-mime-database.c.bak update-mime-database.c

# shellcheck disable=2046
"${CC:-gcc}" -o "$1/usr/bin/update-mime-database" \
    $(pkg-config --libs --cflags glib-2.0 libxml-2.0) \
    update-mime-database.c