Skip to content
Commits on Source (17)
fedora latest:
variables:
LAST_ABI_BREAK: 87e278ef077b4952595cf9d6e973e6d8246f20b3
image:
name: registry.gitlab.gnome.org/gnome/gnome-autoar:latest
entrypoint: ["/bin/sh", "-c"]
tags:
- x86_64
script:
- meson setup _build --prefix=/usr -Dgtk_doc=false -Dintrospection=enabled -Dtests=true
- ninja -C _build test
- check-abi $LAST_ABI_BREAK $(git rev-parse HEAD)
update image:
variables:
STORAGE_DRIVER: vfs
BUILDAH_FORMAT: docker
BUILDAH_ISOLATION: chroot
image: registry.fedoraproject.org/fedora:latest
script:
- dnf install -y buildah runc
- sed -i '/^mountopt =.*/d' /etc/containers/storage.conf
- buildah bud --tag $CI_REGISTRY_IMAGE -f .gitlab/Dockerfile
- buildah tag $CI_REGISTRY_IMAGE "$CI_REGISTRY_IMAGE:v$CI_JOB_ID"
- buildah login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- buildah push --creds $CI_REGISTRY_USER:$CI_REGISTRY_PASSWORD $CI_REGISTRY_IMAGE
- buildah push --creds $CI_REGISTRY_USER:$CI_REGISTRY_PASSWORD "$CI_REGISTRY_IMAGE:v$CI_JOB_ID"
when: manual
only:
variables:
- $CI_PROJECT_NAMESPACE == "GNOME"
FROM fedora:latest
RUN dnf install --nogpg -y dnf-plugins-core git gnome-common gtk-doc meson \
&& dnf builddep --nogpg -y gnome-autoar \
&& dnf clean all
RUN curl https://gitlab.freedesktop.org/hadess/check-abi/-/raw/main/contrib/check-abi-fedora.sh | bash \
&& dnf clean all \
&& rm -r check-abi
# vim: set sw=8 ts=8 sts=8 noet:
NULL =
# Global options
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST =
BUILT_SOURCES =
DISTCHECK_CONFIGURE_FLAGS = --enable-gtk --enable-gtk-doc --enable-introspection
# Top-level directory
EXTRA_DIST += autogen.sh
# Directory: gnome-autoar
EXTRA_DIST += \
gnome-autoar/autoar-enum-types.h.template \
gnome-autoar/autoar-enum-types.c.template \
$(NULL)
libgnome_autoar_la_headers = \
gnome-autoar/autoar-compressor.h \
gnome-autoar/autoar-extractor.h \
gnome-autoar/autoar-format-filter.h \
gnome-autoar/autoar-misc.h \
gnome-autoar/autoar-mime-types.h \
$(NULL)
libgnome_autoar_la_sources = \
gnome-autoar/autoar-compressor.c \
gnome-autoar/autoar-extractor.c \
gnome-autoar/autoar-format-filter.c \
gnome-autoar/autoar-misc.c \
gnome-autoar/autoar-mime-types.c \
$(NULL)
libgnome_autoar_la_private_files = \
gnome-autoar/autoar-private.h \
gnome-autoar/autoar-private.c \
$(NULL)
libgnome_autoar_la_generated_files = \
gnome-autoar/autoar-enum-types.h \
gnome-autoar/autoar-enum-types.c \
$(NULL)
libgnome_autoar_gtk_la_headers = \
gnome-autoar/autoar-gtk-chooser.h \
$(NULL)
libgnome_autoar_gtk_la_sources = \
gnome-autoar/autoar-gtk-chooser.c \
$(NULL)
BUILT_SOURCES += \
$(libgnome_autoar_la_generated_files) \
$(NULL)
lib_LTLIBRARIES = gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la
pkgconfigdir = $(libdir)/pkgconfig
nodist_pkgconfig_DATA = gnome-autoar/gnome-autoar-$(LIBGNOME_AUTOAR_API_VERSION).pc
autoarincludedir = $(includedir)/gnome-autoar-$(LIBGNOME_AUTOAR_API_VERSION)/gnome-autoar
autoarinclude_HEADERS = \
gnome-autoar/gnome-autoar.h \
gnome-autoar/autoar-enum-types.h \
$(libgnome_autoar_la_headers) \
$(NULL)
gnome_autoar_libgnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_la_SOURCES = \
$(libgnome_autoar_la_generated_files) \
$(libgnome_autoar_la_private_files) \
$(libgnome_autoar_la_headers) \
$(libgnome_autoar_la_sources) \
$(NULL)
gnome_autoar_libgnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_la_CPPFLAGS = \
$(AM_CPPFLAGS) \
$(NULL)
gnome_autoar_libgnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_la_CFLAGS = \
$(GIO_CFLAGS) \
$(LIBARCHIVE_CFLAGS) \
-I$(top_srcdir) \
-I$(top_builddir)/gnome-autoar \
$(AM_CFLAGS) \
$(NULL)
gnome_autoar_libgnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_la_LIBADD = \
$(GIO_LIBS) \
$(LIBARCHIVE_LIBS) \
$(NULL)
if ENABLE_GTK
lib_LTLIBRARIES += gnome-autoar/libgnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.la
nodist_pkgconfig_DATA += gnome-autoar/gnome-autoar-gtk-$(LIBGNOME_AUTOAR_API_VERSION).pc
autoargtkincludedir = $(includedir)/gnome-autoar-$(LIBGNOME_AUTOAR_API_VERSION)/gnome-autoar
autoargtkinclude_HEADERS = \
gnome-autoar/autoar-gtk.h \
$(libgnome_autoar_gtk_la_headers) \
$(NULL)
gnome_autoar_libgnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_la_SOURCES = \
$(libgnome_autoar_gtk_la_headers) \
$(libgnome_autoar_gtk_la_sources) \
$(NULL)
gnome_autoar_libgnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_la_CPPFLAGS = \
$(AM_CPPFLAGS)
$(NULL)
gnome_autoar_libgnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_la_CFLAGS = \
$(GTK_CFLAGS) \
-I$(top_srcdir) \
-I$(top_builddir)/gnome-autoar \
$(AM_CFLAGS) \
$(NULL)
gnome_autoar_libgnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_la_LIBADD = \
$(GTK_LIBS) \
$(top_builddir)/gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la \
$(NULL)
endif
gnome-autoar/autoar-enum-types.h: gnome-autoar/autoar-enum-types.h.template $(libgnome_autoar_la_headers)
$(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template gnome-autoar/autoar-enum-types.h.template $(libgnome_autoar_la_headers) ) > $@
gnome-autoar/autoar-enum-types.c: gnome-autoar/autoar-enum-types.c.template $(libgnome_autoar_la_headers)
$(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template gnome-autoar/autoar-enum-types.c.template $(libgnome_autoar_la_headers) ) > $@
CLEANFILES = $(BUILT_SOURCES)
DISTCLEANFILES = $(BUILT_SOURCES) \
gnome-autoar/gnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.pc \
gnome-autoar/gnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.pc
MAINTAINERCLEANFILES = $(BUILT_SOURCES)
-include $(INTROSPECTION_MAKEFILE)
INTROSPECTION_GIRS =
INTROSPECTION_SCANNER_ARGS = --add-include-path=$(top_builddir)/gnome-autoar
INTROSPECTION_COMPILER_ARGS = --includedir=$(top_builddir)/gnome-autoar
if HAVE_INTROSPECTION
INTROSPECTION_GIRS += gnome-autoar/GnomeAutoar-0.1.gir
girdir = $(datadir)/gir-1.0
gir_DATA = $(INTROSPECTION_GIRS)
typelibdir = $(libdir)/girepository-1.0
typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
CLEANFILES += $(gir_DATA) $(typelib_DATA)
gnome-autoar/GnomeAutoar-0.1.gir: gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la
gnome_autoar_GnomeAutoar_0_1_gir_SCANNERFLAGS = --identifier-prefix=Autoar --c-include="gnome-autoar/gnome-autoar.h"
gnome_autoar_GnomeAutoar_0_1_gir_CFLAGS = -I$(top_srcdir) $(AM_CFLAGS)
gnome_autoar_GnomeAutoar_0_1_gir_INCLUDES = GLib-2.0 GObject-2.0 Gio-2.0
gnome_autoar_GnomeAutoar_0_1_gir_LIBS = gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la
gnome_autoar_GnomeAutoar_0_1_gir_FILES = \
$(libgnome_autoar_la_headers) \
$(libgnome_autoar_la_sources) \
$(NULL)
if ENABLE_GTK
INTROSPECTION_GIRS += gnome-autoar/GnomeAutoarGtk-0.1.gir
gnome-autoar/GnomeAutoarGtk-0.1.gir: gnome-autoar/libgnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.la gnome-autoar/GnomeAutoar-0.1.gir
gnome_autoar_GnomeAutoarGtk_0_1_gir_SCANNERFLAGS = --identifier-prefix=AutoarGtk --c-include="gnome-autoar/autoar-gtk.h"
gnome_autoar_GnomeAutoarGtk_0_1_gir_CFLAGS = -I$(top_srcdir) $(AM_CFLAGS)
gnome_autoar_GnomeAutoarGtk_0_1_gir_INCLUDES = GnomeAutoar-0.1 Gtk-3.0
gnome_autoar_GnomeAutoarGtk_0_1_gir_LIBS = gnome-autoar/libgnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.la
gnome_autoar_GnomeAutoarGtk_0_1_gir_FILES = \
$(libgnome_autoar_gtk_la_headers) \
$(libgnome_autoar_gtk_la_sources) \
$(NULL)
endif
if ENABLE_VAPIGEN
include $(VAPIGEN_MAKEFILE)
gnome-autoar/gnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.vapi: gnome-autoar/GnomeAutoar-0.1.gir
VAPIGEN_VAPIS = gnome-autoar/gnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.vapi
gnome_autoar_gnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_vapi_DEPS = gio-2.0
gnome_autoar_gnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_vapi_METADATADIRS = $(srcdir)/gnome-autoar
gnome_autoar_gnome_autoar_@LIBGNOME_AUTOAR_API_VERSION@_vapi_FILES = gnome-autoar/GnomeAutoar-0.1.gir
if ENABLE_GTK
gnome-autoar/gnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.vapi: gnome-autoar/GnomeAutoarGtk-0.1.gir gnome-autoar/gnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.vapi
VAPIGEN_VAPIS += gnome-autoar/gnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.vapi
gnome_autoar_gnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_vapi_DEPS = gnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@ gtk+-3.0
gnome_autoar_gnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_vapi_VAPIDIRS = $(builddir)/gnome-autoar
gnome_autoar_gnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_vapi_METADATADIRS = $(srcdir)/gnome-autoar
gnome_autoar_gnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_vapi_FILES = gnome-autoar/GnomeAutoarGtk-0.1.gir
gnome_autoar_gnome_autoar_gtk_@LIBGNOME_AUTOAR_API_VERSION@_vapi_GIRDIRS = $(builddir)/gnome-autoar
endif
vapidir = $(datadir)/vala/vapi
vapi_DATA = $(VAPIGEN_VAPIS)
CLEANFILES += $(vapi_DATA)
endif
endif
# Directory: data
gsettings_ENUM_NAMESPACE = org.gnome.desktop.archives
gsettings_ENUM_FILES = $(top_srcdir)/gnome-autoar/autoar-format-filter.h
gsettings_SCHEMAS = data/org.gnome.desktop.archives.gschema.xml
EXTRA_DIST += $(gsettings_SCHEMAS)
# Directory: tests
noinst_PROGRAMS = \
tests/test-extract \
tests/test-extract-unit \
tests/test-create \
$(NULL)
test_cflags = \
$(GIO_CFLAGS) \
$(LIBARCHIVE_CFLAGS) \
-I$(top_srcdir) \
$(AM_CFLAGS) \
$(NULL)
test_libs = \
$(GIO_LIBS) \
$(top_builddir)/gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la \
$(NULL)
tests_test_extract_SOURCES = tests/test-extract.c
tests_test_extract_CFLAGS = $(test_cflags)
tests_test_extract_LDADD = $(test_libs)
tests_test_extract_unit_SOURCES = tests/test-extract-unit.c
tests_test_extract_unit_CFLAGS = $(test_cflags)
tests_test_extract_unit_LDADD = $(test_libs)
tests_test_create_SOURCES = tests/test-create.c
tests_test_create_CFLAGS = $(test_cflags)
tests_test_create_LDADD = $(test_libs)
if ENABLE_GTK
noinst_PROGRAMS += \
tests/test-ui \
$(NULL)
test_gtk_cflags = \
$(GTK_CFLAGS) \
-I$(top_srcdir) \
$(AM_CFLAGS) \
$(NULL)
test_gtk_libs = \
$(GTK_LIBS) \
$(top_builddir)/gnome-autoar/libgnome-autoar-gtk-@LIBGNOME_AUTOAR_API_VERSION@.la \
$(top_builddir)/gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la \
$(NULL)
tests_test_ui_SOURCES = tests/test-ui.c
tests_test_ui_CFLAGS = $(test_gtk_cflags)
tests_test_ui_LDADD = $(test_gtk_libs)
endif
SUBDIRS = . docs
This diff is collapsed.
Major changes in 0.4.0:
* Port to meson build system (Iñigo Martínez, Peter Keresztes Schmidt)
* Add support for creation of password-protected archives (Ondrej Holy)
* Fix extraction of archives with absolute paths (Ondrej Holy)
Major changes in 0.3.3:
* extractor: Fix extraction of one file archives (Ondrej Holy)
* compressor: Fix usage of uninitialized value (Ondrej Holy)
......
# gnome-autoar
gnome-autoar provides functions and widgets for GNOME applications which want
to use archives as a method to transfer directories over the Internet.
This diff is collapsed.
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
test -n "$srcdir" || srcdir=$(dirname "$0")
test -n "$srcdir" || srcdir=.
olddir=$(pwd)
cd $srcdir
(test -f configure.ac) || {
echo "*** ERROR: Directory '$srcdir' does not look like the top-level project directory ***"
exit 1
}
# shellcheck disable=SC2016
PKG_NAME=$(autoconf --trace 'AC_INIT:$1' configure.ac)
if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then
echo "*** WARNING: I am going to run 'configure' with no arguments." >&2
echo "*** If you wish to pass any to it, please specify them on the" >&2
echo "*** '$0' command line." >&2
echo "" >&2
fi
aclocal --install || exit 1
gtkdocize --copy || exit 1
autoreconf --verbose --force --install || exit 1
cd "$olddir"
if [ "$NOCONFIGURE" = "" ]; then
$srcdir/configure "$@" || exit 1
if [ "$1" = "--help" ]; then
exit 0
else
echo "Now type 'make' to compile $PKG_NAME" || exit 1
fi
else
echo "Skipping configure process."
fi
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
This diff is collapsed.
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define if debugging is enabled */
#undef GNOME_ENABLE_DEBUG
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `getgrnam' function. */
#undef HAVE_GETGRNAM
/* Define to 1 if you have the `getpwnam' function. */
#undef HAVE_GETPWNAM
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `link' function. */
#undef HAVE_LINK
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `mkfifo' function. */
#undef HAVE_MKFIFO
/* Define to 1 if you have the `mknod' function. */
#undef HAVE_MKNOD
/* Define to 1 if you have the `stat' function. */
#undef HAVE_STAT
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Define if debugging is disabled */
#undef NDEBUG
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
#undef inline
#endif
/* Define to `int' if <sys/types.h> does not define. */
#undef mode_t
/* Define to `long int' if <sys/types.h> does not define. */
#undef off_t
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
/* Define to `int' if <sys/types.h> does not define. */
#undef ssize_t
This diff is collapsed.
This diff is collapsed.
# vim: set sw=8 ts=8 sts=8 et:
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.68])
m4_define([major_version], [0])
m4_define([minor_version], [3])
m4_define([micro_version], [3])
AC_INIT([gnome-autoar],
[major_version.minor_version.micro_version],
[https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-autoar],
[gnome-autoar])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR([gnome-autoar/gnome-autoar.h])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([1.11 foreign dist-xz no-dist-gzip tar-ustar subdir-objects])
AM_MAINTAINER_MODE([enable])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
# reset to 0 at the beginning of a development cycle
# increment by 1 for every stable micro release
m4_define([interface_age], [0])
m4_define([binary_age], [m4_eval(100 * minor_version + micro_version)])
m4_define([lt_current], [m4_eval(binary_age - interface_age)])
m4_define([lt_revision], [interface_age])
m4_define([lt_age], [m4_eval(binary_age - interface_age)])
AC_SUBST([LIBGNOME_AUTOAR_LT_VERSION], [lt_current:lt_revision:lt_age])
AC_SUBST([LIBGNOME_AUTOAR_API_VERSION], [0])
AX_CHECK_ENABLE_DEBUG([yes],[GNOME_ENABLE_DEBUG])
AC_PROG_CC
AC_PROG_CC_STDC
AC_PROG_INSTALL
LT_INIT
PKG_PROG_PKG_CONFIG
GLIB_GSETTINGS
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
AC_PATH_PROG(GLIB_COMPILE_RESOURCES, glib-compile-resources)
# check for gtk-doc
GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
# check for gobject-introspection
GOBJECT_INTROSPECTION_CHECK([1.30.0])
VAPIGEN_CHECK([0.22])
# Checks for libraries.
GLIB_REQUIRED=2.35.6
GTK_REQUIRED=3.2
LIBARCHIVE_REQUIRED=3.4.0
PKG_CHECK_MODULES([LIBARCHIVE], [libarchive >= $LIBARCHIVE_REQUIRED],
[GNOME_AUTOAR_LIBARCHIVE_REQUIRES="libarchive"
AC_SUBST([GNOME_AUTOAR_LIBARCHIVE_REQUIRES])],
[AC_SEARCH_LIBS([archive_entry_is_encrypted], [archive],
[GNOME_AUTOAR_LIBARCHIVE_LIBS="-larchive"
AC_SUBST([GNOME_AUTOAR_LIBARCHIVE_LIBS])],
[AC_MSG_ERROR([libarchive not found])])])
PKG_CHECK_MODULES([GIO], [
glib-2.0 >= $GLIB_REQUIRED
gobject-2.0 >= $GLIB_REQUIRED
gio-2.0 >= $GLIB_REQUIRED
])
AC_ARG_ENABLE([gtk],
[AS_HELP_STRING([--enable-gtk], [Build some common GTK+ widgets])],
[enable_gtk="$enableval"], [enable_gtk=yes])
if test x"$enable_gtk" = xyes; then
PKG_CHECK_MODULES(
[GTK], [gtk+-3.0 >= $GTK_REQUIRED], [],
[AC_MSG_ERROR([
gtk+-3.0 not found (or version < $GTK_REQUIRED)
If you want to disable support for common GTK+ widgets,
please append --disable-gtk to configure.
])])
fi
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
AM_CONDITIONAL(ENABLE_GTK, [test x"$enable_gtk" = xyes])
if test x"$enable_gtk_doc" = xyes && test x"$enable_gtk" '!=' xyes; then
AC_MSG_ERROR([
GTK+ widgets support must be enabled to build API documentation.
Please append --enable-gtk to configure.
])
fi
AM_CPPFLAGS="$AM_CPPFLAGS $DEPRECATION_FLAGS"
AM_CFLAGS="$AM_CFLAGS $WARN_CFLAGS $MORE_WARN_FLAGS"
AC_SUBST([AM_CPPFLAGS])
AC_SUBST([AM_CFLAGS])
AC_SUBST([AM_LDFLAGS])
# Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_MODE_T
AC_TYPE_OFF_T
AC_TYPE_SIZE_T
AC_TYPE_SSIZE_T
AC_C_INLINE
# Checks for library functions.
AC_CHECK_FUNCS([getgrnam getpwnam link mkfifo mknod stat])
AC_CONFIG_FILES([Makefile
docs/Makefile
docs/reference/Makefile
gnome-autoar/gnome-autoar-$LIBGNOME_AUTOAR_API_VERSION.pc:gnome-autoar/gnome-autoar.pc.in
gnome-autoar/gnome-autoar-gtk-$LIBGNOME_AUTOAR_API_VERSION.pc:gnome-autoar/gnome-autoar-gtk.pc.in])
AS_MKDIR_P([data])
AC_OUTPUT
echo "
Configuration:
Source code location : ${srcdir}
Prefix : ${prefix}
Compiler : ${CC}
CFLAGS : ${CFLAGS}
Optional features:
Build API documentation : ${enable_gtk_doc}
GTK+ widgets : ${enable_gtk}
"
<?xml version="1.0" encoding="UTF-8"?>
<schemalist>
<schema path="/org/gnome/desktop/archives/" id="org.gnome.desktop.archives">
<key name="default-format" enum="org.gnome.desktop.archives.AutoarFormat">
<default>'zip'</default>
<summary>Default file format for new archives (archive creation)</summary>
<description>The default file format used to create new archives.</description>
</key>
<key name="default-filter" enum="org.gnome.desktop.archives.AutoarFilter">
<default>'none'</default>
<summary>Default filter to create archives (archive creation)</summary>
<description>The default filter used to compress new archives.</description>
</key>
<key name="file-name-suffix" type="as">
<default>['zip', 'tar', 'cpio', '7z', 'rar', 'lha', 'lzh', 'xar', 'Z', 'gz', 'bz2', 'uue', 'xz', 'lz', 'lzma', 'taz', 'tbz', 'tbz2', 'tgz', 'txz', 'tlz', 'tzma', 'tzo']</default>
<summary>File extensions of archives (archive extraction)</summary>
<description>This list is used by applications to determine whether a file should be automatically extracted.</description>
</key>
<key name="file-mime-type" type="as">
<default>['application/x-7z-compressed', 'application/x-7z-compressed-tar', 'application/x-bzip', 'application/x-bzip-compressed-tar', 'application/x-compress', 'application/x-compressed-tar', 'application/x-cpio', 'application/x-gzip', 'application/x-lha', 'application/x-lzip', 'application/x-lzip-compressed-tar', 'application/x-lzma', 'application/x-lzma-compressed-tar', 'application/x-rar', 'application/x-tar', 'application/x-tarz', 'application/x-xar', 'application/x-xz', 'application/x-xz-compressed-tar', 'application/zip', 'application/gzip', 'application/bzip2']</default>
<summary>>File MIME types of archives (archive extraction)</summary>
<description>This list is used by applications to determine whether a file should be automatically extracted.</description>
</key>
<key name="pattern-to-ignore" type="as">
<default>['__MACOSX', '.DS_Store', '._.*']</default>
<summary>Patterns of file names will not be extracted (archive extraction)</summary>
<description>This list contains glob-style patterns, and it is used by applications to determine whether an entry in an archive should be written to disk.</description>
</key>
<key name="delete-if-succeed" type="b">
<default>true</default>
<summary>Whether to delete the source archive if the extraction is successful (archive extraction)</summary>
<description>If TRUE, the source archive will be deleted after the extraction succeed</description>
</key>
</schema>
</schemalist>
This diff is collapsed.
SUBDIRS = reference
This diff is collapsed.
# vim: set sw=8 ts=8 sts=8 noet:
NULL =
# We require automake 1.6 at least.
AUTOMAKE_OPTIONS = 1.6
DOC_MODULE=gnome-autoar
DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
MKDB_OPTIONS=--xml-mode --output-format=xml
DOC_SOURCE_DIR=$(top_srcdir)/gnome-autoar
HFILE_GLOB=$(top_srcdir)/gnome-autoar/*.h
CFILE_GLOB=$(top_srcdir)/gnome-autoar/*.c
IGNORE_HFILES = \
gnome-autoar.h \
autoar-gtk.h \
autoar-enum-types.h \
autoar-private.h \
$(NULL)
IGNORE_CFILES = \
autoar-enum-types.c \
autoar-private.c \
$(NULL)
GTKDOC_CFLAGS = \
-I$(top_srcdir) \
$(NULL)
GTKDOC_LIBS = \
$(top_builddir)/gnome-autoar/libgnome-autoar-@LIBGNOME_AUTOAR_API_VERSION@.la \
$(NULL)
# This includes the standard gtk-doc make rules, copied by gtkdocize.
include $(top_srcdir)/gtk-doc.make
if ENABLE_GTK_DOC
TESTS_ENVIRONMENT = cd $(srcdir) && \
DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
#TESTS = $(GTKDOC_CHECK)
endif
This diff is collapsed.