#!/usr/bin/perl

#
# Coded by Gabriel Gerhardsson, 2001
#

$RPM_BUILD_DIR = "/usr/src/redhat/BUILD";
$RPM_SOURCE_DIR = "/usr/src/redhat/SOURCES";
$RPM_SPEC_DIR = "/usr/src/redhat/SPECS";

$FN_PREFIX = "abispell";
$FN_SPEC = "-general";
$FN_PLATFORM = "";
$FN_VERSION = "0.0.1";
$FN_RELEASE = "7";


@dict = 	("catala.hash", "czech.hash", "dansk.hash", "deutsch.hash", "deutsch.hash", "deutsch.hash", "ellhnika.hash", "british.hash", "british.hash", "british.hash", "british.hash", "british.hash", "american.hash", "british.hash", "esperanto.hash", "espanol.hash", "francais.hash", "francais.hash", "francais.hash", "francais.hash", "irish.hash", "italian.hash", "lietuviu.hash", "nederlands.hash", "norsk.hash", "nynorsk.hash",	"polish.hash", "portugues.hash", "portugues.hash", "russian.hash", "svenska.hash");
@includeEnc = 	(0,		0,		0,		0,		0,		0,		0,		0,		0,		0,		0,		0,		0,		0,		0,			0,		0,		0,		0,		0,		0,		0,		1,		0,		0,		0,			0,		0,		0,		0,		0);
@acr = 		("ca-ES",	"cs-CZ",	"da-DK", 	"de-CH", 	"de-DE", 	"de-AT", 	"el-GR", 	"en-AU", 	"en-CA", 	"en-GB", 	"en-IE", 	"en-NZ", 	"en-US", 	"en-ZA", 	"eo",	 		"es-ES", 	"fr-BE", 	"fr-CA", 	"fr-CH", 	"fr-FR", 	"ga-IE", 	"it-IT", 	"lt-LT", 	"nl-NL", 	"nb-NO", 	"nn-NO", 		"pl-PL", 	"pt-PT", 	"pt-BR", 	"ru-RU", 	"sv-SE");
@name =		("Catalan",	"Czech",	"Danish",	"German",	"German",	"German",	"Greek",	"English",	"English",	"English",	"English",	"English",	"English",	"English",	"Esperanto",		"Spanish",	"Frensh",	"Frensh",	"Frensh",	"Frensh",	"Irish gaelic",	"Italian",	"Latvian",	"Dutch",	"Norwegian",	"Norwegian(nynorsk)",	"Polish",	"Portuguese",	"Portuguese",	"Russian",	"Swedish");

	
for ($i = 0; $i < @dict; $i++) {
	$full_name = "${FN_PREFIX}-$acr[$i]${FN_PLATFORM}-${FN_VERSION}";
	print "--- Building: $name[$i]($acr[$i]) ---\n";

	if ($includeEnc[$i]) {
		`cd dictionaries; tar zcvf ${RPM_SOURCE_DIR}/${full_name}.tar.gz $dict[$i] $dict[$i]-encoding`;
	} else {
		`cd dictionaries; tar zcvf ${RPM_SOURCE_DIR}/${full_name}.tar.gz $dict[$i]`;
	}
		
	`cp ${FN_PREFIX}${FN_SPEC}-${FN_VERSION}-${FN_RELEASE}.spec ${RPM_SPEC_DIR}/${full_name}.spec`;
		
	`perl -pi -e 's/LOCALE_SHORT/$acr[$i]/g' ${RPM_SPEC_DIR}/${full_name}.spec`;
	`perl -pi -e 's/LOCALE/$name[$i]/g' ${RPM_SPEC_DIR}/${full_name}.spec`;
	`perl -pi -e 's/VERSION/${FN_VERSION}/g' ${RPM_SPEC_DIR}/${full_name}.spec`;
	`perl -pi -e 's/RELEASE/${FN_RELEASE}/g' ${RPM_SPEC_DIR}/${full_name}.spec`;
	`perl -pi -e 's/PLATFORM/${FN_PLATFORM}/g' ${RPM_SPEC_DIR}/${full_name}.spec`;


	`cd ${RPM_SPEC_DIR}; rpm -bb --target=i386 ${full_name}.spec`;

	# Try this instead for compatibility-mode on rpm >= 4.0.3(?) (Creates rpms compatible with rpm3). Thou be warned! This has not been tested and is not guaranteed to work!
	# `cd ${RPM_SPEC_DIR}; rpm -bb --target=i386 --define '_noPayloadPrefix 1' --nodirtokens ${full_name}.spec`;


	`rm -f ${RPM_SPEC_DIR}/${full_name}.spec`;
	`rm -f ${RPM_SOURCE_DIR}/${full_name}.tar.gz`;
}

print "\n--- All done!\n";