Commit 9d5132c4 authored by Inigo Martínez's avatar Inigo Martínez

build: Remove autotools

To avoid the burden of maintaining multiple build systems, this
patch removes autotools support.

GitLab CI configuration has also been updated to use meson.
parent d80568dd
......@@ -2,15 +2,15 @@ build-ubuntu:
image: ubuntu:rolling
before_script:
- apt-get update
- apt-get install -q -y --no-install-recommends gobject-introspection gtk-doc-tools intltool libglib2.0-dev libpolkit-gobject-1-dev libsystemd-dev libtool
- apt-get install -q -y --no-install-recommends meson ninja-build gobject-introspection gtk-doc-tools gettext libglib2.0-dev libpolkit-gobject-1-dev libsystemd-dev libdbus-1-dev
script:
- ./autogen.sh --enable-gtk-doc --with-systemdsystemunitdir=/lib/systemd/system
- make
- meson -Dgtk_doc=true _build
- ninja -C _build all
build-fedora:
image: fedora:latest
before_script:
- dnf install -y gcc gobject-introspection-devel glib-devel gtk-doc intltool make polkit-devel redhat-rpm-config systemd-devel
- dnf install -y gcc meson ninja-build gobject-introspection-devel glib-devel gtk-doc gettext-devel make polkit-devel redhat-rpm-config systemd-devel dbus-devel
script:
- ./autogen.sh --enable-gtk-doc
- make
- meson -Dgtk_doc=true _build
- ninja -C _build all
SUBDIRS = src data po doc
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
EXTRA_DIST = gtk-doc.make README.md
AM_DISTCHECK_CONFIGURE_FLAGS = \
--enable-gtk-doc \
--enable-docbook-docs \
--with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
#!/bin/sh
GTKDOCIZE=$(which gtkdocize 2>/dev/null)
if test -z $GTKDOCIZE; then
echo "You don't have gtk-doc installed, and thus won't be able to generate the documentation."
rm -f gtk-doc.make
cat > gtk-doc.make <<EOF
EXTRA_DIST =
CLEANFILES =
EOF
else
(cd $(dirname $0) && gtkdocize) || exit $?
fi
ACLOCAL="aclocal $ACLOCAL_FLAGS"
export ACLOCAL
(cd $(dirname $0);
autoreconf --install --force --symlink --verbose &&
autoreconf --force --verbose)
test -n "$NOCONFIGURE" || "$(dirname $0)/configure" "$@"
This diff is collapsed.
dbusifdir = $(datadir)/dbus-1/interfaces
dbusif_DATA = \
org.freedesktop.Accounts.xml \
org.freedesktop.Accounts.User.xml
dbusconfdir = $(sysconfdir)/dbus-1/system.d
dbusconf_DATA = org.freedesktop.Accounts.conf
servicedir = $(datadir)/dbus-1/system-services
service_in_files = org.freedesktop.Accounts.service.in
service_DATA = $(service_in_files:.service.in=.service)
$(service_DATA): $(service_in_files) Makefile
@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< >$@
policydir = $(datadir)/polkit-1/actions
policy_in_files = org.freedesktop.accounts.policy.in
policy_DATA = $(policy_in_files:.policy.in=.policy)
org.freedesktop.accounts.policy: org.freedesktop.accounts.policy.in
$(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@
if HAVE_SYSTEMD
systemdsystemunit_DATA = \
accounts-daemon.service
accounts-daemon.service: accounts-daemon.service.in
@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< >$@
endif
EXTRA_DIST = \
$(dbusif_DATA) \
$(dbusconf_DATA) \
$(service_in_files) \
$(policy_in_files) \
accounts-daemon.service.in
DISTCLEANFILES = \
$(service_DATA) \
$(policy_DATA)
CLEANFILES = \
accounts-daemon.service
SUBDIRS = dbus libaccountsservice
NULL =
SPEC_XML_FILES = \
AccountsService.xml \
org.freedesktop.Accounts.ref.xml \
org.freedesktop.Accounts.User.ref.xml \
$(NULL)
if DOCBOOK_DOCS_ENABLED
htmldocdir = $(docdir)/spec
htmldoc_DATA = AccountsService.html
AccountsService.html : $(SPEC_XML_FILES)
$(XMLTO) $(XMLTO_FLAGS) xhtml-nochunks -m $(top_srcdir)/doc/dbus/config.xsl AccountsService.xml
endif # DOCBOOK_DOCS_ENABLED
org.freedesktop.Accounts.ref.xml : $(top_srcdir)/data/org.freedesktop.Accounts.xml spec-to-docbook.xsl
$(XSLTPROC) $(top_srcdir)/doc/dbus/spec-to-docbook.xsl $< | tail -n +2 > $@
org.freedesktop.Accounts.User.ref.xml : $(top_srcdir)/data/org.freedesktop.Accounts.User.xml spec-to-docbook.xsl
$(XSLTPROC) $(top_srcdir)/doc/dbus/spec-to-docbook.xsl $< | tail -n +2 > $@
EXTRA_DIST = \
spec-to-docbook.xsl \
AccountsService.xml.in \
config.xsl \
docbook.css \
dbus-introspect-docs.dtd \
$(SPEC_XML_FILES)
$(NULL)
MAINTAINERCLEANFILES = \
*~ \
Makefile.in \
$(NULL)
clean-local:
rm -f *~ *.ref.xml
rm -f AccountsService.html
check-local:
xmllint --noout --noent --valid AccountsService.xml
AUTOMAKE_OPTIONS=1.6
DOC_MODULE=libaccountsservice
DOC_MAIN_SGML_FILE=libaccountsservice-docs.xml
DOC_SOURCE_DIR=$(top_srcdir)/src/libaccountsservice
MKBD_OPTIONS=--xml-mode --output-format=xml --name-space=act
HFILE_GLOB=$(top_srcdir)/src/libaccountsservice/*.h
IGNORE_HFILES= \
accounts-generated.h \
accounts-user-generated.h \
ck-manager-generated.h \
ck-seat-generated.h \
ck-session-generated.h \
act-user-enum-types.h
GTKDOC_CFLAGS= \
-I$(top_srcdir)/src/libaccountsservice \
$(LIBACCOUNTSSERVICE_CFLAGS)
GTKDOC_LIBS= \
$(top_builddir)/src/libaccountsservice/libaccountsservice.la \
$(LIBACCOUNTSSERVICE_LIBS)
include $(top_srcdir)/gtk-doc.make
CLEANFILES += \
*-decl*.txt \
$(NULL)
# 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 = ..
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2
# 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 = Red Hat, Inc.
# 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 =
# 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 = yes
# 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 = no
# 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
NULL =
BUILT_SOURCES =
SUBDIRS = . libaccountsservice
INCLUDES = \
-DLOCALSTATEDIR=\""$(localstatedir)"\" \
-DDATADIR=\""$(datadir)"\" \
-DICONDIR=\"$(localstatedir)/lib/AccountsService/icons\" \
-DUSERDIR=\"$(localstatedir)/lib/AccountsService/users\" \
-I$(srcdir) \
-I$(builddir) \
$(ACCOUNTS_DAEMON_CFLAGS) \
$(WARN_CFLAGS)
noinst_LTLIBRARIES = libaccounts-generated.la
libaccounts_generated_la_SOURCES = \
accounts-generated.c \
accounts-generated.h \
accounts-user-generated.c \
accounts-user-generated.h \
$(NULL)
BUILT_SOURCES += $(libaccounts_generated_la_SOURCES)
accounts-generated.c accounts-generated.h: $(top_srcdir)/data/org.freedesktop.Accounts.xml Makefile
gdbus-codegen --generate-c-code accounts-generated --c-namespace Accounts --interface-prefix=org.freedesktop. $(top_srcdir)/data/org.freedesktop.Accounts.xml
accounts-user-generated.c accounts-user-generated.h: $(top_srcdir)/data/org.freedesktop.Accounts.User.xml Makefile
gdbus-codegen --generate-c-code accounts-user-generated --c-namespace Accounts --interface-prefix=org.freedesktop.Accounts. $(top_srcdir)/data/org.freedesktop.Accounts.User.xml
libexec_PROGRAMS = accounts-daemon
accounts_daemon_SOURCES = \
$(enums_h_sources) \
types.h \
daemon.h \
daemon.c \
extensions.c \
user-classify.h \
user-classify.c \
user.h \
user.c \
util.h \
util.c \
wtmp-helper.h \
wtmp-helper.c \
main.c
accounts_daemon_LDADD = \
libaccounts-generated.la \
$(ACCOUNTS_DAEMON_LIBS)
EXTRA_DIST = \
fgetpwent.c \
$(NULL)
CLEANFILES = \
$(BUILT_SOURCES) \
*.gcda \
*.gcno \
$(NULL)
install-data-hook:
$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/AccountsService/users"
$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/AccountsService/icons"
END_OF_LIST =
BUILT_SOURCES = $(END_OF_LIST)
CLEANFILES = \
*.gcda \
*.gcno \
$(END_OF_LIST)
AM_CPPFLAGS = \
-I. \
-I.. \
-DG_LOG_DOMAIN=\"AccountsService\" \
$(END_OF_LIST)
lib_LTLIBRARIES = \
libaccountsservice.la \
$(END_OF_LIST)
act-user-enum-types.h: act-user.h act-user-manager.h
$(AM_V_GEN) (cd $(srcdir) && \
glib-mkenums \
--fhead "#ifndef __ACT_USER_ENUM_TYPES_H__\n#define __ACT_USER_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
--fprod "/* enumerations from \"@filename@\" */\n" \
--vhead "GType @enum_name@_get_type (void);\n#define ACT_USER_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
--ftail "G_END_DECLS\n\n#endif /* __ACT_USER_ENUM_TYPES_H__ */" \
$(^F) ) > $@
act-user-enum-types.c: act-user.h act-user-manager.h act-user-enum-types.h
$(AM_V_GEN) (cd $(srcdir) && \
glib-mkenums \
--fhead "#include \"act-user.h\"\n" \
--fhead "#include \"act-user-manager.h\"\n" \
--fhead "#include \"act-user-enum-types.h\"\n" \
--fhead "#include <glib-object.h>" \
--fprod "\n/* enumerations from \"@filename@\" */" \
--vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
--vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
--vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
$(^F) ) > $@
ck-manager-generated.c ck-manager-generated.h: org.freedesktop.ConsoleKit.Manager.xml Makefile
$(AM_V_GEN) gdbus-codegen --generate-c-code ck-manager-generated --c-namespace ConsoleKit --interface-prefix=org.freedesktop.ConsoleKit $(srcdir)/org.freedesktop.ConsoleKit.Manager.xml
ck-seat-generated.c ck-seat-generated.h: org.freedesktop.ConsoleKit.Seat.xml Makefile
$(AM_V_GEN) gdbus-codegen --generate-c-code ck-seat-generated --c-namespace ConsoleKit --interface-prefix=org.freedesktop.ConsoleKit $(srcdir)/org.freedesktop.ConsoleKit.Seat.xml
ck-session-generated.c ck-session-generated.h: org.freedesktop.ConsoleKit.Session.xml Makefile
$(AM_V_GEN) gdbus-codegen --generate-c-code ck-session-generated --c-namespace ConsoleKit --interface-prefix=org.freedesktop.ConsoleKit $(srcdir)/org.freedesktop.ConsoleKit.Session.xml
BUILT_SOURCES += \
act-user-enum-types.c \
act-user-enum-types.h \
ck-manager-generated.c \
ck-manager-generated.h \
ck-seat-generated.c \
ck-seat-generated.h \
ck-session-generated.c \
ck-session-generated.h
CLEANFILES += $(BUILT_SOURCES)
libaccountsservicedir = $(includedir)/accountsservice-1.0/act
libaccountsservice_headers = \
act-user.h \
act-user-manager.h \
act-user-enum-types.h \
$(END_OF_LIST)
libaccountsservice_HEADERS = \
act.h \
$(libaccountsservice_headers) \
$(END_OF_LIST)
libaccountsservice_la_CFLAGS = $(LIBACCOUNTSSERVICE_CFLAGS)
libaccountsservice_la_LDFLAGS = \
-export-symbols-regex '^[^_].*' \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
-no-undefined \
$(END_OF_LIST)
libaccountsservice_la_LIBADD = \
../libaccounts-generated.la \
$(LIBACCOUNTSSERVICE_LIBS) \
-lcrypt \
$(END_OF_LIST)
libaccountsservice_la_sources = \
$(libaccountsservice_headers) \
act-user.c \
act-user-manager.c \
$(END_OF_LIST)
libaccountsservice_la_SOURCES = \
$(libaccountsservice_la_sources) \
act-user-private.h \
$(BUILT_SOURCES) \
$(END_OF_LIST)
pkgconfigdir = $(libdir)/pkgconfig
dist_pkgconfig_DATA = accountsservice.pc
-include $(INTROSPECTION_MAKEFILE)
if HAVE_INTROSPECTION
girdir = $(datadir)/gir-1.0
gir_DATA = AccountsService-1.0.gir
typelibsdir = $(libdir)/girepository-1.0
typelibs_DATA = $(gir_DATA:.gir=.typelib)
INTROSPECTION_GIRS = $(gir_DATA)
AccountsService-1.0.gir: \
$(INTROSPECTION_SCANNER) \
libaccountsservice.la \
Makefile \
$(END_OF_LIST)
AccountsService_1_0_gir_SCANNERFLAGS = \
--warn-all \
--namespace=AccountsService \
--identifier-prefix Act \
--c-include=act/act.h \
$(libaccountsservice_la_CFLAGS) \
$(END_OF_LIST)
AccountsService_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0
AccountsService_1_0_gir_LIBS = libaccountsservice.la
AccountsService_1_0_gir_FILES = \
$(libaccountsservice_la_sources) \
$(END_OF_LIST)
CLEANFILES += $(gir_DATA) $(typelibs_DATA)
endif
MAINTAINERCLEANFILES = Makefile.in
EXTRA_DIST = org.freedesktop.ConsoleKit.Manager.xml org.freedesktop.ConsoleKit.Seat.xml org.freedesktop.ConsoleKit.Session.xml
glib-2.0
gobject-2.0
gio-2.0
\ No newline at end of file
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: Accounts Service
Description: Client Library for communicating with accounts service
Version: @VERSION@
Libs: -L${libdir} -laccountsservice
Cflags: -I${includedir}/accountsservice-1.0
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