|
|
|
@@ -1,7 +1,7 @@
|
|
|
|
|
#
|
|
|
|
|
# spec file for package perl-Gedcom
|
|
|
|
|
#
|
|
|
|
|
# Copyright (c) 2024 SUSE LLC
|
|
|
|
|
# Copyright (c) 2025 SUSE LLC
|
|
|
|
|
#
|
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
@@ -18,10 +18,11 @@
|
|
|
|
|
|
|
|
|
|
%define cpan_name Gedcom
|
|
|
|
|
Name: perl-Gedcom
|
|
|
|
|
Version: 1.200.0
|
|
|
|
|
Version: 1.220.0
|
|
|
|
|
Release: 0
|
|
|
|
|
# 1.20 -> normalize -> 1.200.0
|
|
|
|
|
%define cpan_version 1.20
|
|
|
|
|
# 1.22 -> normalize -> 1.220.0
|
|
|
|
|
%define cpan_version 1.22
|
|
|
|
|
#Upstream: SUSE-Public-Domain
|
|
|
|
|
License: Artistic-1.0 OR GPL-1.0-or-later
|
|
|
|
|
Summary: Interface to genealogy GEDCOM files
|
|
|
|
|
URL: https://metacpan.org/release/%{cpan_name}
|
|
|
|
@@ -31,6 +32,8 @@ Source100: README.md
|
|
|
|
|
BuildArch: noarch
|
|
|
|
|
BuildRequires: perl
|
|
|
|
|
BuildRequires: perl-macros
|
|
|
|
|
BuildRequires: perl(Pod::Markdown)
|
|
|
|
|
BuildRequires: perl(Test::Pod)
|
|
|
|
|
BuildRequires: perl(Text::Soundex)
|
|
|
|
|
Requires: perl(Text::Soundex)
|
|
|
|
|
Provides: perl(Gedcom) = %{version}
|
|
|
|
@@ -53,21 +56,14 @@ Recommends: perl(Roman)
|
|
|
|
|
%{perl_requires}
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
|
Copyright 1998-2013, Paul Johnson (paul@pjcj.net)
|
|
|
|
|
|
|
|
|
|
This software is free. It is licensed under the same terms as Perl itself.
|
|
|
|
|
|
|
|
|
|
The latest version of this software should be available from my homepage:
|
|
|
|
|
http://www.pjcj.net
|
|
|
|
|
|
|
|
|
|
This module provides for manipulation of Gedcom files. Gedcom is a format
|
|
|
|
|
This module provides for manipulation of GEDCOM files. GEDCOM is a format
|
|
|
|
|
for storing genealogical information designed by The Church of Jesus Christ
|
|
|
|
|
of Latter-Day Saints (http://www.lds.org). Information about Gedcom is
|
|
|
|
|
available as a zip file at
|
|
|
|
|
ftp://gedcom.org/pub/genealogy/gedcom/gedcom55.zip. Unfortunately, this is
|
|
|
|
|
only usable if you can access a PC running Windows of some description.
|
|
|
|
|
Part of the reason I wrote this module is because I don't do that. Well, I
|
|
|
|
|
didn't. I can now although I prefer not to...
|
|
|
|
|
of Latter-Day Saints (http://www.lds.org). Information about GEDCOM used to
|
|
|
|
|
be available as a zip file at
|
|
|
|
|
ftp://gedcom.org/pub/genealogy/gedcom/gedcom55.zip. That may still be the
|
|
|
|
|
case, but it seems to be password protected now. However, the document in
|
|
|
|
|
that archive seems to be available in a somewhat more accessible format at
|
|
|
|
|
https://chronoplexsoftware.com/gedcomvalidator/gedcom/gedcom-5.5.pdf.
|
|
|
|
|
|
|
|
|
|
Requirements:
|
|
|
|
|
|
|
|
|
@@ -81,14 +77,14 @@ Optional Modules:
|
|
|
|
|
Parse::RecDescent.pm to use lines2perl
|
|
|
|
|
Roman.pm to use the LifeLines function roman from lines2perl
|
|
|
|
|
|
|
|
|
|
The Gedcom format is specified in a grammar file (gedcom-5.5.grammar).
|
|
|
|
|
The GEDCOM format is specified in a grammar file (gedcom-5.5.grammar).
|
|
|
|
|
Gedcom.pm parses the grammar which is then used to validate and allow
|
|
|
|
|
manipulation of the Gedcom file. I have only used Gedcom.pm with version
|
|
|
|
|
5.5 of the Gedcom grammar, which I had to modify slightly to correct a few
|
|
|
|
|
errors. The advantage of this approach is that Gedcom.pm should be useful
|
|
|
|
|
if the Gedcom grammar is ever updated. It also made the software easier to
|
|
|
|
|
write, and probably more dependable too. I suppose this is the virtue of
|
|
|
|
|
laziness shining through.
|
|
|
|
|
manipulation of the GEDCOM file. I have only used Gedcom.pm with versions
|
|
|
|
|
5.5 and 5.5.1 of the GEDCOM grammar, which I had to modify slightly to
|
|
|
|
|
correct a few errors. The advantage of this approach is that Gedcom.pm
|
|
|
|
|
should be useful if the GEDCOM grammar is ever updated. It also made the
|
|
|
|
|
software easier to write, and probably more dependable too. I suppose this
|
|
|
|
|
is the virtue of laziness shining through.
|
|
|
|
|
|
|
|
|
|
The vice of laziness is also shining brightly - I need to document how to
|
|
|
|
|
use this module in much greater detail. This is happening - this release
|
|
|
|
@@ -96,7 +92,7 @@ has more documentation than the previous ones - but if you would like
|
|
|
|
|
information feel free to send me mail or better still, ask on the mailing
|
|
|
|
|
list.
|
|
|
|
|
|
|
|
|
|
This module provides some functions which work over the entire Gedcom file,
|
|
|
|
|
This module provides some functions which work over the entire GEDCOM file,
|
|
|
|
|
such as reformatting dates, renumbering entries and ordering the entries.
|
|
|
|
|
It also allows access to individuals, and then to relations of individuals,
|
|
|
|
|
for example sons, siblings, spouse, parents and so forth.
|
|
|
|
@@ -106,16 +102,14 @@ programs to Perl. The program works, but it has a few rough edges, and some
|
|
|
|
|
missing functionality. I'll be working on it when it hits the top of my
|
|
|
|
|
TODO list.
|
|
|
|
|
|
|
|
|
|
There is now an option for read only access to the gedcom file. Actually,
|
|
|
|
|
There is now an option for read only access to the GEDCOM file. Actually,
|
|
|
|
|
this doesn't stop you changing or writing the file, but it does parse the
|
|
|
|
|
gedcom file lazily, meaning that only those portions of the gedcom file
|
|
|
|
|
GEDCOM file lazily, meaning that only those portions of the GEDCOM file
|
|
|
|
|
which are needed will be read. This can provide a substantial saving of
|
|
|
|
|
time and memory providing that not too much of the gedcom file is read. If
|
|
|
|
|
you are going to read the whole gedcom file, this mode is less efficient
|
|
|
|
|
time and memory providing that not too much of the GEDCOM file is read. If
|
|
|
|
|
you are going to read the whole GEDCOM file, this mode is less efficient
|
|
|
|
|
unless you do some manual housekeeping.
|
|
|
|
|
|
|
|
|
|
Note that this is still considered beta software - caveat emptor.
|
|
|
|
|
|
|
|
|
|
Should you find this software useful, or if you make changes to it, or if
|
|
|
|
|
you would like me to make changes to it, please send me mail. I would like
|
|
|
|
|
to have some sort of an idea of the use this software is getting. Apart
|
|
|
|
@@ -133,7 +127,7 @@ To store my genealogy I wrote a syntax file (gedcom.vim) and used vim
|
|
|
|
|
manipulate it. I find this to be a nice solution.
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
%autosetup -n %{cpan_name}-%{cpan_version}
|
|
|
|
|
%autosetup -n %{cpan_name}-%{cpan_version} -p1
|
|
|
|
|
|
|
|
|
|
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
|
|
|
|
|
|
|
|
|
@@ -150,6 +144,6 @@ make test
|
|
|
|
|
%perl_gen_filelist
|
|
|
|
|
|
|
|
|
|
%files -f %{name}.files
|
|
|
|
|
%doc CHANGES ged gedcom-5.5.1.grammar gedcom-5.5.grammar gedcom-5.5-strict.grammar gedcom_compare gedcom.vim lines2perl parse_grammar README royal.ged setup tkged TODO
|
|
|
|
|
%doc CHANGES ged gedcom-5.5.1.grammar gedcom-5.5.grammar gedcom-5.5-strict.grammar gedcom_compare gedcom.vim lines2perl parse_grammar README.md royal.ged tkged TODO
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|