Commit 568f3d23 authored by Bastien Nocera's avatar Bastien Nocera

build: Remove autotools

parent cca36dd8
......@@ -13,40 +13,8 @@ variables:
xmlto
findutils
gettext-devel
automake
autoconf
meson
build:autotools:
before_script:
- dnf update -y --nogpgcheck && dnf install -y --nogpgcheck $DEPENDENCIES
script:
# Generate spec
- xmlto -o shared-mime-info-spec-html/ html-nochunks data/shared-mime-info-spec.xml
# Compile xdgmime
- git clone https://gitlab.freedesktop.org/xdg/xdgmime.git
- cd xdgmime
- make
- cd ..
# Compile and test shared-mime-info with builddir != srcdir
- rm -rf ../_build/
- mkdir ../_build/
- cd ../_build/
- XDGMIME_PATH=`pwd`/../shared-mime-info/xdgmime/ ../shared-mime-info/autogen.sh --disable-dependency-tracking
- make
- make check
- V=1 make distcheck
- make install
# Compile and test with builddir == srcdir
- make uninstall
- cd ../shared-mime-info/
- rm -rf ../_build/
- git clean -dxf
- XDGMIME_PATH=`pwd`/xdgmime/ ./autogen.sh
- make check
- V=1 make distcheck
build:meson:
before_script:
- dnf update -y --nogpgcheck
......
SUBDIRS=po .
AM_CPPFLAGS = $(ALL_CFLAGS)
packagesdir = $(datadir)/mime/packages
nodist_packages_DATA = freedesktop.org.xml
bin_PROGRAMS = update-mime-database
update_mime_database_SOURCES = src/update-mime-database.c
update_mime_database_CFLAGS = $(ALL_CFLAGS)
update_mime_database_LDADD = $(ALL_LIBS)
noinst_PROGRAMS = test-subclassing
test_subclassing_SOURCES = src/test-subclassing.c
test_subclassing_CFLAGS = $(ALL_CFLAGS)
test_subclassing_LDADD = $(ALL_LIBS)
if HAVE_GIO
noinst_PROGRAMS += test-tree-magic
test_tree_magic_SOURCES = src/test-tree-magic.c
test_tree_magic_CFLAGS = $(GIO_CFLAGS)
test_tree_magic_LDADD = $(GIO_LIBS)
endif
man_MANS = data/update-mime-database.1
ITS_FILES = data/its/shared-mime-info.loc data/its/shared-mime-info.its
EXTRA_DIST = \
data/shared-mime-info-spec.xml \
data/freedesktop.org.xml.in \
src/test-tree-magic.c \
$(packages_DATA) \
README \
HACKING \
$(man_MANS) \
$(ITS_FILES) \
shared-mime-info.pc.in \
data/freedesktop_generate.sh \
po/check_translations.sh \
tests/test_generic_icons.sh \
tests/test_duplicate_mime_types.sh \
tests/test_mime.sh \
tests/test_staging.sh
CLEANFILES = freedesktop.org.xml po/stamp-it
pkgconfigdir = $(datadir)/pkgconfig
pkgconfig_DATA = shared-mime-info.pc
$(pkgconfig_DATA): config.status
freedesktop.org.xml: data/freedesktop.org.xml.in $(top_srcdir)/po/*.po data/its/shared-mime-info.its data/freedesktop_generate.sh
$(top_srcdir)/data/freedesktop_generate.sh "$(top_srcdir)" "$(top_builddir)"
if CROSS_COMPILING
update_mime_database=$(UPDATE_MIME_DATABASE)
else
update_mime_database="$(top_builddir)/update-mime-database$(EXEEXT)"
endif
install-data-hook:
if ENABLE_UPDATE_MIMEDB
$(update_mime_database) -V "$(DESTDIR)$(datadir)/mime"
endif
uninstall-hook:
for media in text application image audio inode video message model multipart x-epoc x-content font; do rm -f "$(DESTDIR)$(datadir)/mime/$${media}/"*.xml; done
rm -f "$(DESTDIR)$(datadir)/mime/globs"
rm -f "$(DESTDIR)$(datadir)/mime/magic"
rm -f "$(DESTDIR)$(datadir)/mime/aliases"
rm -f "$(DESTDIR)$(datadir)/mime/subclasses"
rm -f "$(DESTDIR)$(datadir)/mime/XMLnamespaces"
rm -f "$(DESTDIR)$(datadir)/mime/mime.cache"
rm -f "$(DESTDIR)$(datadir)/mime/XMLnamespaces"
rm -f "$(DESTDIR)$(datadir)/mime/mime.cache"
rm -f "$(DESTDIR)$(datadir)/mime/icons"
rm -f "$(DESTDIR)$(datadir)/mime/generic-icons"
rm -f "$(DESTDIR)$(datadir)/mime/globs2"
rm -f "$(DESTDIR)$(datadir)/mime/treemagic"
rm -f "$(DESTDIR)$(datadir)/mime/types"
rm -f "$(DESTDIR)$(datadir)/mime/version"
all: $(defaultmakedeps)
XDGMIME_PATH=@XDGMIME_PATH@
po/shared-mime-info.pot: data/freedesktop.org.xml.in $(top_srcdir)/po/*.po
make -C po shared-mime-info.pot
local-test: po/shared-mime-info.pot freedesktop.org.xml update-mime-database$(EXEEXT)
if CROSS_COMPILING
@echo "Cross compiling: Skipping checks"
else
@if test -d $(top_srcdir)/.git/ ; then \
$(srcdir)/tests/test_staging.sh "$(top_srcdir)" "$(top_builddir)" "$(top_builddir)/freedesktop.org.xml" "$(top_builddir)/update-mime-database$(EXEEXT)" "$(XDGMIME_PATH)/src/print-mime-data$(EXEEXT)"; \
fi
endif
check: po/shared-mime-info.pot freedesktop.org.xml update-mime-database$(EXEEXT) check-translations
if CROSS_COMPILING
@echo "Cross compiling: Skipping checks"
else
xmllint --noout --valid $(top_builddir)/freedesktop.org.xml || exit 1; \
if test -d $(top_srcdir)/.git/ ; then \
$(top_builddir)/update-mime-database$(EXEEXT) $(top_srcdir)/tests/mime-db-tests/ ; \
fi
@if test -d $(top_srcdir)/.git/ ; then \
if test ! -x $(XDGMIME_PATH)/src/test-mime-data$(EXEEXT) || test ! -x $(top_builddir)/test-tree-magic$(EXEEXT) ; then \
echo "***************************************************************************" ; \
echo "*** xdgmime not compiled, test suite cannot run. Check HACKING for info ***" ; \
echo "***************************************************************************" ; \
exit 1 ; \
else \
$(srcdir)/tests/test_mime.sh "$(top_srcdir)" "$(top_builddir)" "$(top_builddir)/freedesktop.org.xml" "$(top_builddir)/update-mime-database$(EXEEXT)" "$(XDGMIME_PATH)/src/test-mime-data$(EXEEXT)" "$(XDGMIME_PATH)/src/test-mime$(EXEEXT)" "$(top_builddir)/test-tree-magic$(EXEEXT)" || exit 1; \
fi; \
fi
@$(srcdir)/tests/test_duplicate_mime_types.sh $(srcdir)/data/freedesktop.org.xml.in
@$(srcdir)/tests/test_generic_icons.sh $(srcdir)/data/freedesktop.org.xml.in
endif
check-translations:
$(top_srcdir)/po/check_translations.sh
update-translations: po/shared-mime-info.pot
@tx pull --all --force --skip
@tx push --source
# Build ChangeLog from GIT history
ChangeLog:
@if test -f $(top_srcdir)/.git/HEAD; then \
cd $(top_srcdir) ; git log --stat --after="Tue Oct 6 14:46:33 2009 +0000" > $@; \
fi
dist: ChangeLog
.PHONY: ChangeLog
ACLOCAL_AMFLAGS = -I m4
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
pushd $srcdir
autoreconf -vif || exit 1
popd
if test -z "$NOCONFIGURE"; then
$srcdir/configure "$@" && echo "Now type \`make' to compile" || exit 1
fi
AC_INIT([shared-mime-info],[1.15],[https://bugs.freedesktop.org/enter_bug.cgi?product=shared-mime-info])
AM_INIT_AUTOMAKE([1.9 foreign no-dist-gzip dist-xz check-news])
AC_CONFIG_HEADERS([config.h])
# Enable silent build when available (Automake 1.11)
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
dnl Checks for programs.
AC_PROG_CC
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_SYS_LARGEFILE
AM_GNU_GETTEXT_VERSION([0.19.8])
AM_GNU_GETTEXT([external])
AC_CHECK_PROGS([ITSTOOL], [itstool])
if test x"${ITSTOOL}" = x; then
AC_MSG_ERROR([itstool is missing])
fi
AC_CHECK_FUNCS(fdatasync)
dnl Check for cross compiling
AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
dnl Check whether libxml and glib are present is installed
PKG_CHECK_MODULES(ALL, \
libxml-2.0 >= 2.4 \
glib-2.0 >= 2.6.0)
AC_SUBST(ALL_CFLAGS)
AC_SUBST(ALL_LIBS)
dnl Build the tree magic test if gio is present
PKG_CHECK_MODULES(GIO, gio-2.0, HAVE_GIO=yes, AC_MSG_RESULT(no))
AM_CONDITIONAL([HAVE_GIO], test "x$HAVE_GIO" = "xyes")
dnl Use -Wall, etc if possible
[
if test "x$GCC" = "xyes"; then
case " $CFLAGS " in
*[\ \ ]-Wall[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wall -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings" ;;
esac
fi
]
if test "x$XDGMIME_PATH" = "x" ; then
XDGMIME_PATH=$srcdir/../xdgmime
fi
AC_SUBST([XDGMIME_PATH], $XDGMIME_PATH)
AC_ARG_ENABLE(update-mimedb,
AC_HELP_STRING([--disable-update-mimedb],
[disable the update-mime-database after install [default=no]]),,
enable_update_mimedb=yes)
if test $cross_compiling = yes && test x$enable_update_mimedb = xyes; then
AC_PATH_PROG(UPDATE_MIME_DATABASE, update-mime-database, no)
if test x$UPDATE_MIME_DATABASE = xno; then
enable_update_mimedb=no
AC_MSG_WARN(Could not find the update-mime-database program in your PATH. Your mime database will not be updated upon install.)
fi
fi
AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
AC_PATH_PROG([XMLLINT],[xmllint])
AC_CONFIG_FILES([
Makefile
shared-mime-info.pc
po/Makefile.in
])
AC_OUTPUT
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
DOMAIN = $(PACKAGE)
# These two variables depend on the location of this directory.
subdir = po
top_builddir = ..
# This allows us using local its files
XGETTEXT := env GETTEXTDATADIRS="$(top_srcdir)/data" $(XGETTEXT)
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = Free Software Foundation, Inc.
# This tells whether or not to prepend "GNU " prefix to the package
# name that gets inserted into the header of the $(DOMAIN).pot file.
# Possible values are "yes", "no", or empty. If it is empty, try to
# detect it automatically by scanning the files in $(top_srcdir) for
# "GNU packagename" string.
PACKAGE_GNU =
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS = https://gitlab.freedesktop.org/xdg/shared-mime-info/issues
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
# context. Possible values are "yes" and "no". Set this to yes if the
# package uses functions taking also a message context, like pgettext(), or
# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
USE_MSGCTXT = no
# These options get passed to msgmerge.
# Useful options are in particular:
# --previous to keep previous msgids of translated messages,
# --quiet to reduce the verbosity.
MSGMERGE_OPTIONS =
# These options get passed to msginit.
# If you want to disable line wrapping when writing PO files, add
# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
# MSGINIT_OPTIONS.
MSGINIT_OPTIONS =
# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
# has changed. Possible values are "yes" and "no". Set this to no if
# the POT file is checked in the repository and the version control
# program ignores timestamps.
PO_DEPENDS_ON_POT = yes
# This tells whether or not to forcibly update $(DOMAIN).pot and
# regenerate PO files on "make dist". Possible values are "yes" and
# "no". Set this to no if the POT file and PO files are maintained
# externally.
DIST_DEPENDS_ON_UPDATE_PO = no
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment