Commit 43f75f26 authored by Andreas Tille's avatar Andreas Tille

New upstream version 1.0

parent 93a2baf4
*~
*\.tar\.xz
*\.log
*\.orig
*\.rej
*\.gmo
build/
vroot/
po/entangle.pot
<dan@berrange.com> <berrange@redhat.com>
<dan@berrange.com> <berrange@dhcp-0-224.camlab.fab.redhat.com>
<dan@berrange.com> <berrange@localhost.localdomain>
<dan@berrange.com> <berrange@minilan.home.berrange.com>
<dan@berrange.com> <berrange@t500wlan.home.berrange.com>
......@@ -7,19 +7,7 @@ Entangle is written and maintained by:
With further contributions received from:
Bastien Nocera <hadess@hadess.net>
Cristian Marchi <cri.penta@gmail.com>
Daniel Berrange <dan@berrange.com>
Daniel P. Berrange <dan@berrange.com>
Jehan <jehan@girinstud.io>
Jesper Pedersen <jesper.pedersen@comcast.net>
Jesper Pedersen <jesper.pedersen@jboss.org>
Kashyap Chamarthy <kashyap.cv@gmail.com>
Matteo F. Vescovi <mfvescovi+gitlab@gmail.com>
Pascal Mons <pascal_mons@hotmail.com>
Simon Booth <simon.booth@giric.com>
Thilo Bangert <thilo@bangert.dk>
berrange <dan@berrange.com>
5014out
...send patches to get your name here...
......
Entangle Authors
================
Entangle is written and maintained by:
Daniel P. Berrange <dan@berrange.com>
With further contributions received from:
#authorslist#
...send patches to get your name here...
-- End of authors
This diff is collapsed.
......@@ -30,10 +30,8 @@ else
SHELL = sh
endif
# If the user runs GNU make but has not yet run ./configure,
# give them a diagnostic.
_have-Makefile := $(shell test -f Makefile && echo yes)
ifeq ($(_have-Makefile),yes)
srcdir = .
top_srcdir = .
# Make tar archive easier to reproduce.
export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner
......@@ -41,8 +39,6 @@ export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner
# Allow the user to add to this in the Makefile.
ALL_RECURSIVE_TARGETS =
include Makefile
# Some projects override e.g., _autoreconf here.
-include $(srcdir)/cfg.mk
......@@ -94,25 +90,6 @@ _version:
cd $(srcdir) && rm -rf autom4te.cache .version && $(_autoreconf)
$(MAKE) $(AM_MAKEFLAGS) Makefile
else
.DEFAULT_GOAL := abort-due-to-no-makefile
srcdir = .
# The package can override .DEFAULT_GOAL to run actions like autoreconf.
-include ./cfg.mk
include ./maint.mk
ifeq ($(.DEFAULT_GOAL),abort-due-to-no-makefile)
$(MAKECMDGOALS): abort-due-to-no-makefile
endif
abort-due-to-no-makefile:
@echo There seems to be no Makefile in this directory. 1>&2
@echo "You must run ./configure before running \`make'." 1>&2
@exit 1
endif
# Tell version 3.79 and up of GNU make to not build goals in this
# directory in parallel, in case someone tries to build multiple
......
This diff is collapsed.
SUBDIRS = src po docs help
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = \
$(PACKAGE).spec \
$(PACKAGE).spec.in \
GNUmakefile \
cfg.mk \
AUTHORS.in \
maint.mk \
$(NULL)
MAINTAINERCLEANFILES = ChangeLog AUTHORS
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
dist-hook: gen-ChangeLog gen-AUTHORS
.PHONY: gen-ChangeLog gen-AUTHORS
gen-ChangeLog:
if test -d .git; then \
$(top_srcdir)/build-aux/gitlog-to-changelog \
> $(distdir)/cl-t; \
rm -f $(distdir)/ChangeLog; \
mv $(distdir)/cl-t $(distdir)/ChangeLog; \
fi
gen-AUTHORS:
$(AM_V_GEN)if test -d $(srcdir)/.git; then \
out="`cd $(srcdir) && git log --pretty=format:'%aN <%aE>' | sort -u`" && \
perl -p -e "s/#authorslist#// and print '$$out'" \
< $(srcdir)/AUTHORS.in > $(distdir)/AUTHORS-tmp && \
mv -f $(distdir)/AUTHORS-tmp $(distdir)/AUTHORS ; \
fi
This diff is collapsed.
Entangle News
=============
Release 1.0 - "Lithium" - 2017-10-10
------------------------------------
* Requires Meson + Ninja build system instead of make
* Switch to 2-digit version numbering
* Fix corruption of display when drawing session browser
* Register application actions for main operations
* Compile UI files into binary
* Add a custom application menu
* Switch over to using header bar, instead of menu bar
and tool bar.
* Enable close button for about dialog
* Ensure plugin panel fills preferences dialog
* Tweak UI spacing in supported cameras dialog
* Add keyboard shortcuts overlay
Release 0.7.2 - "Bottom" - 2017-08-25
-------------------------------------
......
......@@ -10,20 +10,21 @@ and 'hands off' shooting directly from the controlling computer.
Installation
------------
The Entangle package uses GNU autotools, so the build install
process follows the standard process documented in the INSTALL file.
The Entangle package uses the Meson build system available from:
http://mesonbuild.com/
As a quick start you can do
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --libdir=/usr/lib
make
sudo make install
meson build-dir
ninja -C build-dir all
sudo ninja -C build-dir install
Or to install into a private user specific location
./configure --prefix=$HOME/usr/entangle
make
make install
meson build-dir --prefix=$HOME/entangle
ninja -C build-dir all
ninja -C build-dir install
NB, if not installing in /usr, you need to set the XDG_DATA_DIRS env
variable to point to the data directory, eg in the above example use:
......@@ -38,6 +39,7 @@ installing to the /usr prefix
Building entangle requires the following external packages to
be present
meson >= 0.41.0
glib2 >= 2.26.0
gdk-pixbf >= 2.12.0
gtk3 >= 3.0.0
......@@ -48,7 +50,7 @@ be present
libpeas >= 0.5.5
gexiv2 >= 0.2.2
LibRaw >= 0.9.0
gnome-icon-theme-symbolic >= 3.0.0
adwaita-icon-theme
Communication
......@@ -57,7 +59,7 @@ Communication
To communicate with the development team, or to post patches
there is a technical mailing list:
https://mail.gna.org/listinfo/entangle-devel/
https://groups.google.com/forum/#!forum/entangle-devel
Bugs found when using an OS distribution's binary packages should
be reported to the OS vendors' own bug tracker first. Otherwise
......
This diff is collapsed.
#!/bin/sh
set -e
set -v
rm -rf build vroot
meson --prefix="`pwd`/vroot" -Denable-gtk-doc=true build
ninja -C build install
make syntax-check
build-aux/make-dist
rpmbuild --nodeps \
--define "_sourcedir `pwd`" \
-ta --clean entangle*.tar.xz
#!/usr/bin/perl
#
# bracket-spacing.pl: Report any usage of 'function (..args..)'
# Also check for other syntax issues, such as correct use of ';'
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library 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
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library. If not, see
# <http://www.gnu.org/licenses/>.
#
# Authors:
# Daniel P. Berrange <berrange@redhat.com>
use strict;
use warnings;
my $ret = 0;
my $incomment = 0;
foreach my $file (@ARGV) {
open FILE, $file;
while (defined (my $line = <FILE>)) {
my $data = $line;
# Kill any quoted ; or "
$data =~ s,'[";]','X',g;
# Kill any quoted strings
$data =~ s,"([^\\\"]|\\.)*","XXX",g;
# Kill any C++ style comments
$data =~ s,//.*$,//,;
next if $data =~ /^#/;
# Kill contents of multi-line comments
# and detect end of multi-line comments
if ($incomment) {
if ($data =~ m,\*/,) {
$incomment = 0;
$data =~ s,^.*\*/,*/,;
} else {
$data = "";
}
}
# Kill single line comments, and detect
# start of multi-line comments
if ($data =~ m,/\*.*\*/,) {
$data =~ s,/\*.*\*/,/* */,;
} elsif ($data =~ m,/\*,) {
$incomment = 1;
$data =~ s,/\*.*,/*,;
}
# We need to match things like
#
# int foo (int bar, bool wizz);
# foo (bar, wizz);
#
# but not match things like:
#
# typedef int (*foo)(bar wizz)
#
# we can't do this (efficiently) without
# missing things like
#
# foo (*bar, wizz);
#
while ($data =~ /(\w+)\s\((?!\*)/) {
my $kw = $1;
# Allow space after keywords only
if ($kw =~ /^(if|for|while|switch|return)$/) {
$data =~ s/($kw\s\()/XXX(/;
} else {
print "$file:$.: $line";
$ret = 1;
last;
}
}
# Require whitespace immediately after keywords,
# but none after the opening bracket
while ($data =~ /\b(if|for|while|switch|return)\(/ ||
$data =~ /\b(if|for|while|switch|return)\s+\(\s/) {
print "$file:$.: $line";
$ret = 1;
last;
}
# Forbid whitespace between )( of a function typedef
while ($data =~ /\(\*\w+\)\s+\(/) {
print "$file:$.: $line";
$ret = 1;
last;
}
# Forbid whitespace following ( or prior to )
while ($data =~ /\S\s+\)/ ||
$data =~ /\(\s+\S/) {
print "$file:$.: $line";
$ret = 1;
last;
}
# Forbid whitespace before ";". Things like below are allowed:
#
# 1) The expression is empty for "for" loop. E.g.
# for (i = 0; ; i++)
#
# 2) An empty statement. E.g.
# while (write(statuswrite, &status, 1) == -1 &&
# errno == EINTR)
# ;
#
while ($data =~ /[^;\s]\s+;/) {
print "$file:$.: $line";
$ret = 1;
last;
}
# Require EOL, macro line continuation, or whitespace after ";".
# Allow "for (;;)" as an exception.
while ($data =~ /;[^ \\\n;)]/) {
print "$file:$.: $line";
$ret = 1;
last;
}
}
close FILE;
}
exit $ret;
eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}'
& eval 'exec perl -wS "$0" $argv:q'
if 0;
# Convert git log output to ChangeLog format.
my $VERSION = '2009-10-30 13:46'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.
# Copyright (C) 2008-2011 Free Software Foundation, Inc.
# 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 3 of the License, 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 <http://www.gnu.org/licenses/>.
# Written by Jim Meyering
use strict;
use warnings;
use Getopt::Long;
use POSIX qw(strftime);
(my $ME = $0) =~ s|.*/||;
# use File::Coda; # http://meyering.net/code/Coda/
END {
defined fileno STDOUT or return;
close STDOUT and return;
warn "$ME: failed to close standard output: $!\n";
$? ||= 1;
}
sub usage ($)
{
my ($exit_code) = @_;
my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR);
if ($exit_code != 0)
{
print $STREAM "Try `$ME --help' for more information.\n";
}
else
{
print $STREAM <<EOF;
Usage: $ME [OPTIONS] [ARGS]
Convert git log output to ChangeLog format. If present, any ARGS
are passed to "git log". To avoid ARGS being parsed as options to
$ME, they may be preceded by '--'.
OPTIONS:
--since=DATE convert only the logs since DATE;
the default is to convert all log entries.
--format=FMT set format string for commit subject and body;
see 'man git-log' for the list of format metacharacters;
the default is '%s%n%b%n'
--help display this help and exit
--version output version information and exit
EXAMPLE:
$ME --since=2008-01-01 > ChangeLog
$ME -- -n 5 foo > last-5-commits-to-branch-foo
EOF
}
exit $exit_code;
}
# If the string $S is a well-behaved file name, simply return it.
# If it contains white space, quotes, etc., quote it, and return the new string.
sub shell_quote($)
{
my ($s) = @_;
if ($s =~ m![^\w+/.,-]!)
{
# Convert each single quote to '\''
$s =~ s/\'/\'\\\'\'/g;
# Then single quote the string.
$s = "'$s'";
}
return $s;
}
sub quoted_cmd(@)
{
return join (' ', map {shell_quote $_} @_);
}
{
my $since_date = '1970-01-01 UTC';
my $format_string = '%s%n%b%n';
GetOptions
(
help => sub { usage 0 },
version => sub { print "$ME version $VERSION\n"; exit },
'since=s' => \$since_date,
'format=s' => \$format_string,
) or usage 1;
my @cmd = (qw (git log --log-size), "--since=$since_date",
'--pretty=format:%ct %an <%ae>%n%n'.$format_string, @ARGV);
open PIPE, '-|', @cmd
or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n"
. "(Is your Git too old? Version 1.5.1 or later is required.)\n");
my $prev_date_line = '';
while (1)
{
defined (my $in = <PIPE>)
or last;
$in =~ /^log size (\d+)$/
or die "$ME:$.: Invalid line (expected log size):\n$in";
my $log_nbytes = $1;
my $log;
my $n_read = read PIPE, $log, $log_nbytes;
$n_read == $log_nbytes
or die "$ME:$.: unexpected EOF\n";
my @line = split "\n", $log;
my $author_line = shift @line;
defined $author_line
or die "$ME:$.: unexpected EOF\n";
$author_line =~ /^(\d+) (.*>)$/
or die "$ME:$.: Invalid line "
. "(expected date/author/email):\n$author_line\n";
my $date_line = sprintf "%s $2\n", strftime ("%F", localtime ($1));
# If this line would be the same as the previous date/name/email
# line, then arrange not to print it.
if ($date_line ne $prev_date_line)
{
$prev_date_line eq ''
or print "\n";
print $date_line;
}
$prev_date_line = $date_line;
# Omit "Signed-off-by..." lines.
@line = grep !/^Signed-off-by: .*>$/, @line;
# If there were any lines
if (@line == 0)
{
warn "$ME: warning: empty commit message:\n $date_line\n";
}
else
{
# Remove leading and trailing blank lines.
while ($line[0] =~ /^\s*$/) { shift @line; }
while ($line[$#line] =~ /^\s*$/) { pop @line; }
# Prefix each non-empty line with a TAB.
@line = map { length $_ ? "\t$_" : '' } @line;
print "\n", join ("\n", @line), "\n";
}
defined ($in = <PIPE>)
or last;
$in ne "\n"
and die "$ME:$.: unexpected line:\n$in";
}
close PIPE
or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n";
# FIXME-someday: include $PROCESS_STATUS in the diagnostic
}
# Local Variables:
# mode: perl
# indent-tabs-mode: nil
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "my $VERSION = '"
# time-stamp-format: "%:y-%02m-%02d %02H:%02M"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "'; # UTC"
# End:
#!/bin/sh
set -e
VERSION=`grep 'version:' meson.build | head -1 | awk '{print $2}' | sed -e "s/'//g" -e "s/,//"`
DISTDIR=entangle-$VERSION
rm -rf $DISTDIR
mkdir $DISTDIR
git clone --shared . $DISTDIR
rm -rf $DISTDIR/.git
build-aux/gitlog-to-changelog > $DISTDIR/ChangeLog
out="`git log --pretty=format:'%aN <%aE>' | sort -u`"
perl -p -e "s/#authorslist#// and print '$$out'" < AUTHORS.in > $DISTDIR/AUTHORS
rm -f $DISTDIR/AUTHORS.in
perl -p -e "s/#VERSION#/$VERSION/" entangle.spec.in > $DISTDIR/entangle.spec
rm -f $DISTDIR/entangle.spec.in
tar Jcf $DISTDIR.tar.xz $DISTDIR/
rm -rf $DISTDIR
echo "Created $DISTDIR.tar.xz"
eval '(exit $?0)' && eval 'exec perl -wST "$0" ${1+"$@"}'
& eval 'exec perl -wST "$0" $argv:q'
if 0;
# Detect instances of "if (p) free (p);".
# Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces.
my $VERSION = '2011-04-20 13:43'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.