2015-04-25 07:59:26 +00:00
|
|
|
#
|
|
|
|
# spec file for package perl-Gedcom
|
|
|
|
#
|
2024-07-22 20:37:39 +00:00
|
|
|
# Copyright (c) 2024 SUSE LLC
|
2015-04-25 07:59:26 +00:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2024-07-22 20:37:39 +00:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2015-04-25 07:59:26 +00:00
|
|
|
#
|
|
|
|
|
|
|
|
|
2024-07-22 20:37:39 +00:00
|
|
|
%define cpan_name Gedcom
|
2015-04-25 07:59:26 +00:00
|
|
|
Name: perl-Gedcom
|
2024-07-22 20:37:39 +00:00
|
|
|
Version: 1.200.0
|
2015-04-25 07:59:26 +00:00
|
|
|
Release: 0
|
2024-07-22 20:37:39 +00:00
|
|
|
# 1.20 -> normalize -> 1.200.0
|
|
|
|
%define cpan_version 1.20
|
|
|
|
License: Artistic-1.0 OR GPL-1.0-or-later
|
|
|
|
Summary: Interface to genealogy GEDCOM files
|
|
|
|
URL: https://metacpan.org/release/%{cpan_name}
|
|
|
|
Source0: https://cpan.metacpan.org/authors/id/P/PJ/PJCJ/%{cpan_name}-%{cpan_version}.tar.gz
|
2015-04-25 07:59:26 +00:00
|
|
|
Source1: cpanspec.yml
|
2025-08-12 18:14:19 +02:00
|
|
|
Source100: README.md
|
2015-04-25 07:59:26 +00:00
|
|
|
BuildArch: noarch
|
2010-10-19 08:46:11 +00:00
|
|
|
BuildRequires: perl
|
2010-12-03 14:06:20 +00:00
|
|
|
BuildRequires: perl-macros
|
2015-04-25 07:59:26 +00:00
|
|
|
BuildRequires: perl(Text::Soundex)
|
|
|
|
Requires: perl(Text::Soundex)
|
2024-07-22 20:37:39 +00:00
|
|
|
Provides: perl(Gedcom) = %{version}
|
|
|
|
Provides: perl(Gedcom::CGI) = %{version}
|
|
|
|
Provides: perl(Gedcom::Comparison) = %{version}
|
|
|
|
Provides: perl(Gedcom::Event) = %{version}
|
|
|
|
Provides: perl(Gedcom::Family) = %{version}
|
|
|
|
Provides: perl(Gedcom::Grammar) = %{version}
|
|
|
|
Provides: perl(Gedcom::Grammar_5_5) = %{version}
|
|
|
|
Provides: perl(Gedcom::Grammar_5_5_1) = %{version}
|
|
|
|
Provides: perl(Gedcom::Individual) = %{version}
|
|
|
|
Provides: perl(Gedcom::Item) = %{version}
|
|
|
|
Provides: perl(Gedcom::LifeLines) = %{version}
|
|
|
|
Provides: perl(Gedcom::Record) = %{version}
|
|
|
|
Provides: perl(Gedcom::WebServices)
|
|
|
|
%undefine __perllib_provides
|
2015-04-25 07:59:26 +00:00
|
|
|
Recommends: perl(Date::Manip)
|
|
|
|
Recommends: perl(Parse::RecDescent)
|
|
|
|
Recommends: perl(Roman)
|
|
|
|
%{perl_requires}
|
2007-12-11 19:02:29 +00:00
|
|
|
|
|
|
|
%description
|
2015-04-25 07:59:26 +00:00
|
|
|
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
|
|
|
|
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...
|
|
|
|
|
|
|
|
Requirements:
|
|
|
|
|
|
|
|
Perl 5.005 or later
|
|
|
|
ActivePerl5 Build Number 520 or later has been reported to work
|
|
|
|
|
|
|
|
Optional Modules:
|
|
|
|
|
|
|
|
Date::Manip.pm to work with dates
|
|
|
|
Text::Soundex.pm to use soundex
|
|
|
|
Parse::RecDescent.pm to use lines2perl
|
|
|
|
Roman.pm to use the LifeLines function roman from lines2perl
|
2007-12-11 19:02:29 +00:00
|
|
|
|
2015-04-25 07:59:26 +00:00
|
|
|
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.
|
|
|
|
|
|
|
|
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
|
|
|
|
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,
|
|
|
|
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.
|
|
|
|
|
|
|
|
The distribution includes a lines2perl program to convert LifeLines
|
|
|
|
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,
|
|
|
|
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
|
|
|
|
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
|
|
|
|
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
|
|
|
|
from being of interest to me, this will guide my decisions when I feel the
|
|
|
|
need to make changes to the interface.
|
|
|
|
|
|
|
|
There is a low volume mailing list available for discussing the use of Perl
|
|
|
|
in conjunction with genealogical work. This is an appropriate forum for
|
|
|
|
discussing Gedcom.pm and if you use or are interested in this module I
|
|
|
|
would encourage you to join the list. To subscribe send an empty message to
|
|
|
|
perl-gedcom-subscribe@perl.org.
|
|
|
|
|
|
|
|
To store my genealogy I wrote a syntax file (gedcom.vim) and used vim
|
|
|
|
(http://www.vim.org) to enter the data, and Gedcom.pm to validate and
|
|
|
|
manipulate it. I find this to be a nice solution.
|
2007-12-11 19:02:29 +00:00
|
|
|
|
|
|
|
%prep
|
2024-07-22 20:37:39 +00:00
|
|
|
%autosetup -n %{cpan_name}-%{cpan_version}
|
|
|
|
|
|
|
|
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
|
2007-12-11 19:02:29 +00:00
|
|
|
|
|
|
|
%build
|
2024-07-22 20:37:39 +00:00
|
|
|
perl Makefile.PL INSTALLDIRS=vendor
|
|
|
|
%make_build
|
2015-04-25 07:59:26 +00:00
|
|
|
|
|
|
|
%check
|
2024-07-22 20:37:39 +00:00
|
|
|
make test
|
2007-12-11 19:02:29 +00:00
|
|
|
|
|
|
|
%install
|
2015-04-25 07:59:26 +00:00
|
|
|
%perl_make_install
|
2007-12-11 19:02:29 +00:00
|
|
|
%perl_process_packlist
|
2015-04-25 07:59:26 +00:00
|
|
|
%perl_gen_filelist
|
2007-12-11 19:02:29 +00:00
|
|
|
|
2015-04-25 07:59:26 +00:00
|
|
|
%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
|
2007-12-11 19:02:29 +00:00
|
|
|
|
2015-04-25 07:59:26 +00:00
|
|
|
%changelog
|