Testowałem działanie generowania domyślnej konfiguracji. Brakuje jakiś modułów. :(
git-svn-id: svn://atos.wmid.amu.edu.pl/utt@12 e293616e-ec6a-49c2-aa92-f4a8b91c5d16
This commit is contained in:
parent
b2647ded51
commit
d593c5e768
283
app/dist/common/utt_make_config.pl
vendored
283
app/dist/common/utt_make_config.pl
vendored
@ -1,141 +1,142 @@
|
||||
#!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_cor(catfile($usr_home, 'cor.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_ser(catfile($usr_home, 'ser.conf'), $sys_home);
|
||||
conf_utt(catfile($usr_home, 'utt.conf'), $sys_home);
|
||||
|
||||
print "UTT user configuration created in $usr_home\n";
|
||||
|
||||
|
||||
|
||||
#Kasuje stare configi i tworzy katalog .utt
|
||||
sub prepareUttUsrHome() {
|
||||
my $dir = shift;
|
||||
|
||||
if(-d $dir) {
|
||||
print "Old configuration will be deleted!\n";
|
||||
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_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_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_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";
|
||||
|
||||
close FILE;
|
||||
}
|
||||
|
||||
sub conf_utt() {
|
||||
my $utt_file = shift;
|
||||
my $utthome = shift;
|
||||
open(FILE, ">$utt_file");
|
||||
|
||||
print FILE makeConfigHeader();
|
||||
print FILE "# user locale\n";
|
||||
print FILE "language=", findLocale(), "\n";
|
||||
|
||||
close FILE;
|
||||
}
|
||||
|
||||
# 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;
|
||||
}
|
||||
#!/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_cor(catfile($usr_home, 'cor.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_ser(catfile($usr_home, 'ser.conf'), $sys_home);
|
||||
conf_utt(catfile($usr_home, 'utt.conf'), $sys_home);
|
||||
|
||||
print "UTT user configuration created in $usr_home\n";
|
||||
|
||||
|
||||
|
||||
#Kasuje stare configi i tworzy katalog .utt
|
||||
sub prepareUttUsrHome() {
|
||||
my $dir = shift;
|
||||
|
||||
if(-d $dir) {
|
||||
print "Old configuration will be deleted!\n";
|
||||
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_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_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_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";
|
||||
|
||||
close FILE;
|
||||
}
|
||||
|
||||
sub conf_utt() {
|
||||
my $utt_file = shift;
|
||||
my $utthome = shift;
|
||||
open(FILE, ">$utt_file");
|
||||
|
||||
print FILE makeConfigHeader();
|
||||
print FILE "# user locale\n";
|
||||
print FILE "language=", findLocale(), "\n";
|
||||
|
||||
close FILE;
|
||||
}
|
||||
|
||||
# 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;
|
||||
}
|
||||
|
71
app/dist/deb/Makefile
vendored
71
app/dist/deb/Makefile
vendored
@ -1,53 +1,58 @@
|
||||
#default task
|
||||
|
||||
DIR=$(shell pwd)
|
||||
|
||||
ifndef UTT_DIST_DIR
|
||||
UTT_DIST_DIR=${DIR}
|
||||
endif
|
||||
|
||||
ifndef UTT_DIST_OUTPUT
|
||||
UTT_DIST_OUTPUT=${DIR}
|
||||
endif
|
||||
|
||||
# here there're few properties
|
||||
_PRODUCT_NAME=utt
|
||||
_BUILD_DIR=$(_UTT_BIN_DIR)
|
||||
_UTT_VER=$(shell cat ../common/version.def)
|
||||
_UTT_REL=$(shell cat ../common/release.def)
|
||||
_DEB_ROOT=$(shell pwd)/deb_root
|
||||
_INSTALL_DIR=/usr/local/$(_PRODUCT_NAME)/$(_UTT_VER)-$(_UTT_REL)
|
||||
_DEB_FROOT=$(DIR)/deb_root
|
||||
_UTT_DIR=${_DEB_FROOT}/usr/local/$(_PRODUCT_NAME).$(_UTT_VER)-$(_UTT_REL)
|
||||
|
||||
.PHONY: default
|
||||
default:
|
||||
# we need some extra configuration files
|
||||
make_control
|
||||
make_postinst
|
||||
|
||||
default: make_control make_postinst make_prerm
|
||||
# first, we prepare some directory structure
|
||||
mkdir -p $(_DEB_ROOT)/DEBIAN
|
||||
mkdir -p $(_DEB_ROOT)$(_INSTALL_DIR)
|
||||
mkdir -p $(_DEB_ROOT)/usr/share/man/man1
|
||||
mkdir -p $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)
|
||||
mkdir -p $(_DEB_FROOT)/DEBIAN
|
||||
mkdir -p $(_UTT_DIR)
|
||||
|
||||
find $(_DEB_ROOT) -type d | xargs chmod 755 # this is necessary on Debian Woody, don't ask me why
|
||||
# next, we copy deb package files
|
||||
mv ./control $(_DEB_FROOT)/DEBIAN/
|
||||
mv ./postinst $(_DEB_FROOT)/DEBIAN/
|
||||
mv ./prerm $(_DEB_FROOT)/DEBIAN/
|
||||
cd ${_DEB_FROOT} && tar -cvvf control.tar.gz DEBIAN/
|
||||
cd ${DIR};
|
||||
rm -fr ${_DEB_FROOT}/DEBIAN/
|
||||
|
||||
# next, we copy necessary files
|
||||
mv ./control $(_DEB_ROOT)/DEBIAN/
|
||||
cp ./postinst $(_DEB_ROOT)/DEBIAN/
|
||||
cp ./prerm $(_DEB_ROOT)/DEBIAN/
|
||||
# cp -r $(_BUILD_DIR)/man/* $(_DEB_ROOT)/usr/share/man/
|
||||
cp $(_BUILD_DIR)/COPYRIGHT $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)/copyright
|
||||
# cp $(_BUILD_DIR)/changelog $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)/
|
||||
# cp $(_BUILD_DIR)/changelog.Debian $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)/
|
||||
|
||||
|
||||
# next we make man/doc archives
|
||||
# gzip --best $(_DEB_ROOT)/usr/share/man/man1/$(_PRODUCT_NAME).1
|
||||
# we copy all necessery files (binaries)
|
||||
cp -r ${UTT_DIST_DIR}/* ${_UTT_DIR}/
|
||||
cp ./changelog ${_UTT_DIR}/share/doc/$(_PRODUCT_NAME)/
|
||||
# gzip --best $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)/changelog
|
||||
cp ./changelog.Debian $(_UTT_DIR)/share/doc/$(_PRODUCT_NAME)/
|
||||
# gzip --best $(_DEB_ROOT)/usr/share/doc/$(_PRODUCT_NAME)/changelog.Debian
|
||||
# tar -cvvf control.tar.gz ${_DEB_ROOT}/DEBIAN/
|
||||
# rm -fr ${_DEB_ROOT}/DEBIAN/
|
||||
cp ../files/* ${_UTT_DIR}/share/doc/${_PRODUCT_NAME}/
|
||||
cp ../common/utt_make_config.pl ${_UTT_DIR}/bin/
|
||||
chmod 755 ${_UTT_DIR}/bin/utt_make_config.pl
|
||||
|
||||
|
||||
# and binaries
|
||||
cp -rv $(_BUILD_DIR)/* $(_DEB_ROOT)$(_INSTALL_DIR)/
|
||||
# tar -cvvf data.tar.gz ${_DEB_ROOT}/
|
||||
# rm -fr ${_DEB_ROOT}/
|
||||
|
||||
# # next we make man/doc archives
|
||||
# gzip --best $(_DEB_ROOT)/usr/share/man/man1/$(_PRODUCT_NAME).1
|
||||
|
||||
find $(_DEB_FROOT) -type d | xargs chmod 755 # this is necessary on Debian Woody, don't ask me why
|
||||
|
||||
# finally, we buid deb package
|
||||
fakeroot dpkg-deb --build $(_DEB_ROOT)
|
||||
mv $(_DEB_ROOT).deb $(_PRODUCT_NAME)_$(_UTT_VER)-$(_UTT_REL).all.deb
|
||||
fakeroot dpkg-deb --build $(_DEB_FROOT)
|
||||
mv $(_DEB_FROOT).deb $(_PRODUCT_NAME)_$(_UTT_VER)-$(_UTT_REL).all.deb
|
||||
rm -rf ${_DEB_FROOT}
|
||||
|
||||
|
||||
|
||||
.PHONY: make_control
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user