Przygotowana dystrybujca tarball. Czesciowo przetestowane.

git-svn-id: svn://atos.wmid.amu.edu.pl/utt@45 e293616e-ec6a-49c2-aa92-f4a8b91c5d16
This commit is contained in:
pawelk 2008-05-08 09:48:30 +00:00
parent d33e555ed7
commit adb4c8d65b
17 changed files with 40 additions and 278 deletions

View File

@ -18,6 +18,7 @@ export UTT_BIN_DIR=${UTT_DIR}/bin
# configuration files
export UTT_CONF_DIR=${UTT_DIR}/etc/utt
# language/encoding specific stuff
# any extra files for some programs, like: weights.kor, cats.dgc, gram.dgc, etc.
export UTT_LANG_DIR=${UTT_DIR}/share/utt
# some files like ser.l.template, terms.m4
export UTT_LIB_DIR=${UTT_DIR}/lib/utt
@ -28,7 +29,6 @@ export UTT_SHARE_DIR=${UTT_DIR}/share
# list of components to be included in the distribution
COMPONENTS = compiledic cor dgp fla gph grp gue kon kor kot lem mar rm12 rs12 sen-l sen-nl ser tags tok.l unfla
# gue nie dziala!
##############################
@ -87,7 +87,7 @@ clean_dist:
# sekcja przygotowania paczki (programow wraz z dodatkowymi plikami)
# ------------------------------------------------------------------
.PHONY: build
build: compile build_conf build_lib build_doc
build: compile build_conf build_share build_lib build_doc
@echo "All files builded successfully!"
.PHONY: build_conf
@ -102,6 +102,9 @@ build_lib:
build_doc:
cd $(CUR_DIR)/doc && make && make copy; cd $(CUR_DIR)
.PHONY: build_share
build_share:
cp $(CUR_DIR)/share/* $(UTT_LANG_DIR)/
# ------------------------------------------------------------------

View File

@ -1,7 +1,7 @@
BARDZO WAZNE:
* w dystrybucji tarball umieszczac pliki w określonych miejscach
* gue SIE NIE KOMPILUJE !!!
* zawieszanie sie lema dla wyrazow z pola -I (np. kor)
* komunikaty o nieznalezieniu slownika (lem) [TO]
WAZNE:
* zamienic kota na lepszego (Kubis) [TO]

View File

@ -10,4 +10,4 @@
# All lines must looks like:
# parameter_name [=] value
#
symbols = /usr/local/share/utt/pl_PL.ISO-8859-2/pl_PL.ISO-8859-2.sym
symbols = PATH_PREFIX/share/utt/pl_PL.ISO-8859-2/pl_PL.ISO-8859-2.sym

View File

@ -10,5 +10,5 @@
# All lines must looks like:
# parameter_name [=] value
#
dictionary-home = /usr/local/share/utt
dictionary-home = PATH_PREFIX/share/utt
process = W

View File

@ -10,5 +10,5 @@
# All lines must looks like:
# parameter_name [=] value
#
categories = /usr/local/lib/utt/cats.dgc
grammar = /usr/local/lib/utt/gram.dgc
categories = PATH_PREFIX/share/utt/cats.dgc
grammar = PATH_PREFIX/share/utt/gram.dgc

View File

@ -10,4 +10,4 @@
# All lines must looks like:
# parameter_name [=] value
#
macros = /usr/local/lib/utt/terms.m4
macros = PATH_PREFIX/lib/utt/terms.m4

View File

@ -10,6 +10,6 @@
# All lines must looks like:
# parameter_name [=] value
#
dictionary-home = /usr/local/share/utt
weights = /usr/local/lib/utt/weights.kor
dictionary-home = PATH_PREFIX/share/utt
weights = PATH_PREFIX/share/utt/weights.kor
threshold = 1.0

View File

@ -10,5 +10,5 @@
# All lines must looks like:
# parameter_name [=] value
#
dictionary-home = /usr/local/share/utt
dictionary-home = PATH_PREFIX/share/utt
process = W

View File

@ -10,5 +10,5 @@
# All lines must looks like:
# parameter_name [=] value
#
macros = /usr/local/lib/utt/terms.m4
flex-template = /usr/local/lib/utt/ser.l.template
macros = PATH_PREFIX/lib/utt/terms.m4
flex-template = PATH_PREFIX/lib/utt/ser.l.template

View File

@ -1,250 +0,0 @@
#!/usr/bin/perl
#c:\usr\perl\bin\perl.exe
use Cwd 'abs_path';
use File::Basename;
use File::HomeDir;
use File::Spec::Functions;
use POSIX;
my $sys_home = catdir(dirname(abs_path($0)), "..");
my $usr_home = catdir(home(), '.utt');
prepareUttUsrHome($usr_home);
conf_utt(catfile($usr_home, 'utt.conf'), $sys_home);
conf_cor(catfile($usr_home, 'cor.conf'), $sys_home);
conf_kor(catfile($usr_home, 'kor.conf'), $sys_home);
conf_compiledic(catfile($usr_home, 'compiledic.conf'), $sys_home);
conf_grp(catfile($usr_home, 'grp.conf'), $sys_home);
conf_gue(catfile($usr_home, 'gue.conf'), $sys_home);
conf_lem(catfile($usr_home, 'lem.conf'), $sys_home);
conf_mar(catfile($usr_home, 'mar.conf'), $sys_home);
conf_ser(catfile($usr_home, 'ser.conf'), $sys_home);
conf_dgc(catfile($usr_home, 'dgc.conf'), $sys_home);
print "UTT user configuration created in $usr_home\n";
#Kasuje stare configi i tworzy katalog .utt
sub prepareUttUsrHome() {
my $dir = shift;
print "Preparing user configuration.\n";
if(-d $dir) {
print "Old configuration detected. ";
my $cnt = unlink <$dir/*>;
print "($cnt files deleted)\n";
}
else {
print "Creating directory $dir\n";
if(1 != mkdir $dir) {
die "Unable to create UTT user configuration!\n";
}
}
}
# Tworzy naglowek dla wszystkich plikow konfiguracyjnych
sub makeConfigHeader() {
return "# ************************************************************\n".
"# * This file was created automatically during installation. *\n".
"# * If you don't need do not change it. *\n".
"# * *\n".
"# * UAM Text Tools *\n".
"# * Adam Mickiewicz University, Poland *\n".
"# * http://utt.amu.edu.pl *\n".
"# ************************************************************\n".
"#\n".
"# All lines must looks like:\n".
"# parameter_name [=] value\n".
"#\n\n";
}
sub conf_compiledic() {
my $compiledic_file = shift;
my $utthome = shift;
open(FILE, ">$compiledic_file");
print FILE makeConfigHeader();
my $hm = home();
my $lang=`grep language $hm/.utt/utt.conf | cut -d= -f 2`;
chomp $lang;
# powinno byc $utthome/share/utt/pl_PL.ISO-8859-2/pl_PL.ISO-8892-2.sym
# ale to bez sensu
print FILE "symbols=", abs_path("$utthome/share/utt");
print FILE "/$lang/$lang.sym\n";
close FILE;
}
sub conf_grp() {
my $grp_file = shift;
my $utthome = shift;
open(FILE, ">$grp_file");
print FILE makeConfigHeader();
print FILE "macros=", abs_path("$utthome/lib/utt/terms.m4"), "\n";
print FILE "tags=uam\n";
close FILE;
}
sub conf_cor() {
my $cor_file = shift;
my $utthome = shift;
open(FILE, ">$cor_file");
print FILE makeConfigHeader();
print FILE "dictionary-home=", abs_path("$utthome/share/utt"), "\n";
close FILE;
}
sub conf_kor() {
my $kor_file = shift;
my $utthome = shift;
open(FILE, ">$kor_file");
print FILE makeConfigHeader();
print FILE "dictionary-home=", abs_path("$utthome/share/utt"), "\n";
print FILE "weights=", abs_path("$utthome/lib/utt/weights.cor"), "\n";
print FILE "threshold=1.0\n";
close FILE;
}
sub conf_grp() {
my $grp_file = shift;
my $utthome = shift;
open(FILE, ">$grp_file");
print FILE makeConfigHeader();
print FILE "macros=", abs_path("$utthome/lib/utt/terms.m4"), "\n";
close FILE;
}
sub conf_gue() {
my $gue_file = shift;
my $utthome = shift;
open(FILE, ">$gue_file");
print FILE makeConfigHeader();
close FILE;
}
sub conf_lem() {
my $lem_file = shift;
my $utthome = shift;
open(FILE, ">$lem_file");
print FILE makeConfigHeader();
print FILE "dictionary-home=", abs_path("$utthome/share/utt"), "\n";
close FILE;
}
sub conf_mar() {
my $mar_file = shift;
my $utthome = shift;
open(FILE, ">$mar_file");
print FILE makeConfigHeader();
print FILE "tags=uam\n";
close FILE;
}
sub conf_ser() {
my $ser_file = shift;
my $utthome = shift;
open(FILE, ">$ser_file");
print FILE makeConfigHeader();
print FILE "macros=", abs_path("$utthome/lib/utt/terms.m4"), "\n";
print FILE "flex-template=", abs_path("$utthome/lib/utt/ser.l.template"), "\n";
print FILE "tags=uam\n";
close FILE;
}
sub conf_utt() {
my $utt_file = shift;
my $utthome = shift;
my $lang = getUserLanguage(abs_path(catdir($utthome, "share/utt")));
open(FILE, ">$utt_file");
print FILE makeConfigHeader();
print FILE "# user locale (dictionary)\n";
print FILE "language=", $lang, "\n";
close FILE;
}
sub getUserLanguage() {
my $dict_dir = shift;
print "Setup dictionaries.\n";
opendir(DIR, $dict_dir) || die "Install dictionary first!\n";
@files = grep(/[^\.{1,2}]/ && -d "$dict_dir/$_", readdir(DIR));
closedir DIR;
my $cnt = scalar @files;
print "$cnt dictionary(ies) found.\n";
if(0 == $cnt) {
die("Install dictionary first!\n");
}
foreach my $file (@files) {
print "Do you select dictionary $file [yes/no]? ";
my $ans = <STDIN>;
if($ans =~ /y(es)?/i) {
return $file;
}
}
die "No dictionary selected - setup failed!\n";
}
# Szuka locali u uzytkownika
sub findLocale() {
$cur_locale = setlocale(LC_CTYPE);
# we replace Latinx to ISO-8859-x
$cur_locale =~ s/(.+?)Latin(.+?)/$1ISO\-8859\-$2/g;
if($cur_locale =~ /\w+_\w+\.\S+/) {
$best_locale = $cur_locale;
}
elsif($cur_locale =~ /\w+_\w+/) {
$best_locale = $cur_locale.".UTF-8";
}
else {
$best_locale = toupper($cur_locale).'_'.tolower($cur_locale).'.UTF-8';
}
return $best_locale;
}
sub conf_dgc() {
my $dgc_file = shift;
my $utthome = shift;
open(FILE, ">$dgc_file");
print FILE makeConfigHeader();
print FILE "catfile=", abs_path("$utthome/lib/utt/cats.dgc"), "\n";
print FILE "gramfile=", abs_path("$utthome/lib/utt/gram.dgc"), "\n";
close FILE;
open(FILE, ">$utthome/bin/Makefile.go");
print FILE "\ngram.dgp: ", abs_path("$utthome/lib/utt/gram.dgc"), "\n";
print FILE "\tdgc -c ", abs_path("$utthome/lib/utt/cats.dgc"), " < ", abs_path("$utthome/lib/utt/gram.dgc"), " > gram.dgp\n";
close FILE;
}

View File

@ -21,7 +21,6 @@
/usr/local/bin/tok
/usr/local/bin/tre.rb
/usr/local/bin/unfla
/usr/local/bin/utt-make-config.pl
/usr/local/bin/ipi.tag2re
/usr/local/bin/uam.tag2re
@ -45,11 +44,9 @@
/usr/local/etc/utt/utt.conf
/usr/local/share/utt/weights.kor
# lokalnie: ~/.local/share/utt/weights.kor
/usr/local/share/utt/cats.dgc
# lokalnie: ~/.local/share/utt/cats.dgc
/usr/local/share/utt/gram.dgc
# lokalnie: ~/.local/share/utt/gram.dgc
# lokalnie: wszystkie pliki beda umieszczone w ~/.local/share/utt/
/usr/local/share/utt/pl_PL.ISO-8859-2/pl_PL.ISO-8859-2.sym
/usr/local/share/utt/pl_PL.ISO-8859-2/cor.bin
@ -59,13 +56,13 @@
/usr/local/share/utt/pl_PL.UTF-8/cor.bin
/usr/local/share/utt/pl_PL.UTF-8/gue.bin
/usr/local/share/utt/pl_PL.UTF-8/lem.bin
# lokalnie: wszystkie slowniki beda umieszczone w ~/.local/share/utt/
/usr/local/lib/utt/ser.l.template
/usr/local/lib/utt/terms.m4
/usr/local/lib/utt/seg.rb
# lokalnie: ~/.local/lib/utt/seg.rb <-- tego nie trzeba tak
/usr/local/lib/attr.pm
# lokalnie: ~/.local/lib/utt/attr.pm
# lokalnie: wszystkie pliki beda umieszczone w ~/.local/lib/utt/
/usr/local/share/doc/utt/FAQ
/usr/local/share/doc/utt/COPYRIGHT

View File

@ -32,11 +32,16 @@ default:
mkdir -p ${_TARBALL_ROOT}
cp -fr ${UTT_DIST_DIR}/* ${_TARBALL_ROOT}
@# we add some extra files
cp ../common/utt_make_config.pl ${_TARBALL_ROOT}/bin/
chmod 755 ${_TARBALL_ROOT}/bin/utt_make_config.pl
@# config files
mkdir -p ${_TARBALL_ROOT}/cnf
mv ${_TARBALL_ROOT}/etc/utt/*.conf ${_TARBALL_ROOT}/cnf/
${DIR}/prepare_conf.sh ${_TARBALL_ROOT}/cnf ${_TARBALL_ROOT}/etc/utt
rm -rf ${_TARBALL_ROOT}/cnf
cp ./INSTALL ${_TARBALL_ROOT}/
cp ./Makefile.tarball ${_TARBALL_ROOT}/Makefile
cp ../files/* ${_TARBALL_ROOT}/
tar -czf ${UTT_DIST_OUTPUT}/${_TAR_FILE_NAME} utt*
rm -rf ${_TARBALL_ROOT}

7
app/dist/tarball/prepare_conf.sh vendored Executable file
View File

@ -0,0 +1,7 @@
#!/bin/sh
for FN in `ls $1/*.conf`
do
BN=`basename ${FN}`
sed 's/PATH_PREFIX/~\/.local/g' ${FN} > $2/${BN}
done

View File

@ -6,7 +6,7 @@
#author: Tomasz Obrebski
use lib "/usr/local/lib/utt";
use lib "ENV{HOME}/.local/lib/utt";
use lib "$ENV{'HOME'}/.local/lib/utt";
use strict;
use Getopt::Long;

View File

@ -7,7 +7,7 @@
# wymaga niejawnie programu canonize!!!!
use lib "/usr/local/lib/utt";
use lib "ENV{HOME}/.local/lib/utt";
use lib "$ENV{'HOME'}/.local/lib/utt";
use strict;
use Getopt::Long;

View File

@ -1,4 +1,4 @@
#!/usr/bin/ruby -I /usr/local/lib/utt -I ~/.local/lib/utt
#!/usr/bin/ruby -I /usr/local/lib/utt -I $HOME/.local/lib/utt
require 'getoptlong'
@ -60,8 +60,8 @@ if $INFO=='DEFAULT'
end
end
require File.expand_path(File.dirname(__FILE__) + "../lib/utt/seg.rb")
#require 'seg.rb'
#require File.expand_path(File.dirname(__FILE__) + "../lib/utt/seg.rb")
require 'seg.rb'
$dgpsep=';'

View File

@ -11,7 +11,7 @@
#contact: d287572@atos.wmid.amu.edu.pl, walasiek@gmail.com
use lib "/usr/local/lib/utt";
use lib "ENV{HOME}/.local/lib/utt";
use lib "$ENV{'HOME'}/.local/lib/utt";
use strict;
use Getopt::Long;