ooo-build r13486 - in trunk: . patches/dev300



Author: tml
Date: Wed Aug  6 16:31:18 2008
New Revision: 13486
URL: http://svn.gnome.org/viewvc/ooo-build?rev=13486&view=rev

Log:
2008-08-06  Tor Lillqvist  <tml novell com>

	* patches/dev300/win32-multi-lang-installer.diff
	* patches/dev300/win32-multi-lang-installer-m28.diff: Split into
	separate versions, renamed original for [ < dev300-m29 < ooo300-m1
	] and an updated one for [ >= dev300-m29 >= ooo300-m1 ].

	* patches/dev300/apply: Do it.



Added:
   trunk/patches/dev300/win32-multi-lang-installer-m28.diff
Modified:
   trunk/ChangeLog
   trunk/patches/dev300/apply
   trunk/patches/dev300/win32-multi-lang-installer.diff

Modified: trunk/patches/dev300/apply
==============================================================================
--- trunk/patches/dev300/apply	(original)
+++ trunk/patches/dev300/apply	Wed Aug  6 16:31:18 2008
@@ -840,9 +840,18 @@
 # Swap the delete and backspace key bindings but leave the menus alone.
 sc-default-delete-backspace-key.diff, i#17965, kohei
 
+[ CustomUserConfig < dev300-m29 < ooo300-m1 ]
+
+# migrate keyboard shortcuts & reset character set for CSV import dialog.
+desktop-config-migration-m28.diff n#367160, n#376473, kohei
+
+[ CustomUserConfig >= dev300-m29 >= ooo300-m1 ]
+
 # migrate keyboard shortcuts & reset character set for CSV import dialog.
 desktop-config-migration.diff n#367160, n#376473, kohei
 
+[ CustomUserConfig ]
+
 # To make CSV Text Import settings persistent.
 sc-preserve-imp-opts.diff, i#3687, muthusub
 
@@ -1271,9 +1280,19 @@
 mozilla-buildlibs-win32.diff, i#58741, davidf
 # This enables building scsolver on Win32
 boost-patch.diff, tml
+
+[ Win32Only < dev300-m29 < ooo300-m1 ]
+
+# Multi-language installer stuff
+win32-multi-lang-installer-m28.diff, i#66062, i#88638, i#88639, tml
+
+[ Win32Only >= dev300-m29 >= ooo300-m1 ]
+
 # Multi-language installer stuff
 win32-multi-lang-installer.diff, i#66062, i#88638, i#88639, tml
 
+[ Win32Only ]
+
 # fixes for visual studio express 2005 ( ooo-build only )
 2005-express-stl-remove.diff, noelpwer, i#71404
 

Added: trunk/patches/dev300/win32-multi-lang-installer-m28.diff
==============================================================================
--- (empty file)
+++ trunk/patches/dev300/win32-multi-lang-installer-m28.diff	Wed Aug  6 16:31:18 2008
@@ -0,0 +1,514 @@
+--- ../../../2.0.2-pristine/build/OOO_2_0_2/scp2/source/ooo/file_library_ooo.scp	2006-06-02 13:06:38.003914500 +0000
++++ scp2/source/ooo/file_library_ooo.scp	2006-05-31 16:15:01.893875000 +0000
+@@ -2168,3 +2168,12 @@
+ 
+ STD_UNO_LIB_FILE(gid_File_Lib_Unordf, unordf)
+ 
++
++#ifdef WNT
++File gid_File_Lib_sellangmsi
++    TXT_FILE_BODY;
++    Styles = (PACKED, BINARYTABLE, BINARYTABLE_ONLY);
++    Dir = gid_Dir_Program;
++    Name = "sellangmsi.dll";
++End
++#endif
+dummy line to avoid confusing diff-mode
+--- scp2/source/ooo/windowscustomaction_ooo.scp
++++ scp2/source/ooo/windowscustomaction_ooo.scp
+@@ -443,3 +443,11 @@
+ 	Assignment1 = ("InstallExecuteSequence", "(Not Installed or ISPATCH) and Not REMOVE=\"ALL\"", "end");
+ End
+ 
++WindowsCustomAction gid_Customaction_SelectLanguage
++	Name = "SelectLanguage";
++	Typ = "321";
++	Source = "sellangmsi.dll";
++	Target = "SelectLanguage";
++	Inbinarytable = 1;
++	Assignment1 = ("ControlEvent", "SetupType", "Next", "DoAction", "SelectLanguage", "1", "1");
++End
+--- setup_native/prj/build.lst
++++ setup_native/prj/build.lst
+@@ -5,6 +5,7 @@
+ pk  setup_native\source\win32\customactions\regactivex    nmake   -  w   sn_regactivex NULL
+ pk  setup_native\source\win32\customactions\regpatchactivex nmake -  w   sn_regpatchactivex NULL
+ pk  setup_native\source\win32\customactions\reg4allmsdoc  nmake   -  w   sn_reg4allmsdoc NULL
++pk  setup_native\source\win32\customactions\sellang       nmake   -  w   sn_sellang NULL
+ pk  setup_native\source\win32\customactions\javafilter    nmake   -  w   sn_javafilter NULL
+ pk  setup_native\source\win32\customactions\quickstarter  nmake   -  w   sn_quickstarter NULL
+ pk  setup_native\source\win32\customactions\shellextensions nmake   -  w   sn_shellextensions sn_tools.w NULL
+--- /dev/null
++++ setup_native/source/win32/customactions/sellang/exports.dxp	2006-05-31 12:15:54.268875000 +0000
+@@ -0,0 +1 @@
++SelectLanguage
+--- /dev/null
++++ setup_native/source/win32/customactions/sellang/makefile.mk	2006-05-31 12:13:28.331375000 +0000
+@@ -0,0 +1,80 @@
++#*************************************************************************
++#
++#   OpenOffice.org - a multi-platform office productivity suite
++#
++#   The Contents of this file are made available subject to
++#   the terms of GNU Lesser General Public License Version 2.1.
++#
++#
++#     GNU Lesser General Public License Version 2.1
++#     =============================================
++#     Copyright 2005 by Sun Microsystems, Inc.
++#     901 San Antonio Road, Palo Alto, CA 94303, USA
++#
++#     This library is free software; you can redistribute it and/or
++#     modify it under the terms of the GNU Lesser General Public
++#     License version 2.1, as published by the Free Software Foundation.
++#
++#     This library is distributed in the hope that it will be useful,
++#     but WITHOUT ANY WARRANTY; without even the implied warranty of
++#     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++#     Lesser General Public License for more details.
++#
++#     You should have received a copy of the GNU Lesser General Public
++#     License along with this library; if not, write to the Free Software
++#     Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++#     MA  02111-1307  USA
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..
++PRJNAME=setup_native
++TARGET=sellangmsi
++
++.IF "$(GUI)"=="WNT"
++
++# --- Settings -----------------------------------------------------
++
++ENABLE_EXCEPTIONS=TRUE
++NO_DEFAULT_STL=TRUE
++DYNAMIC_CRT=
++USE_DEFFILE=TRUE
++
++.INCLUDE : settings.mk
++
++CFLAGS+=-D_STLP_USE_STATIC_LIB
++
++# --- Files --------------------------------------------------------
++
++UWINAPILIB=
++
++SLOFILES = \
++	$(SLO)$/sellang.obj
++
++SHL1STDLIBS=	kernel32.lib\
++				user32.lib\
++				advapi32.lib\
++				shell32.lib\
++				msi.lib\
++				$(LIBSTLPORTST)								
++
++SHL1LIBS = $(SLB)$/$(TARGET).lib 
++
++SHL1TARGET = $(TARGET)
++SHL1IMPLIB = i$(TARGET)
++
++SHL1DEF = $(MISC)$/$(SHL1TARGET).def
++SHL1DEPN = $(SLB)$/$(TARGET).lib
++SHL1BASE = 0x1c000000
++DEF1NAME=$(SHL1TARGET)
++DEF1EXPORTFILE=exports.dxp
++
++# --- Targets --------------------------------------------------------------
++
++.INCLUDE : target.mk
++
++# -------------------------------------------------------------------------
++
++
++.ENDIF
++
+--- /dev/null
++++ setup_native/source/win32/customactions/sellang/sellang.cxx	2006-06-02 09:13:53.893875000 +0000
+@@ -0,0 +1,347 @@
++/*************************************************************************
++ *
++ *  OpenOffice.org - a multi-platform office productivity suite
++ *
++ *  The Contents of this file are made available subject to
++ *  the terms of GNU Lesser General Public License Version 2.1.
++ *
++ *
++ *    GNU Lesser General Public License Version 2.1
++ *    =============================================
++ *    Copyright 2005 by Sun Microsystems, Inc.
++ *    901 San Antonio Road, Palo Alto, CA 94303, USA
++ *
++ *    This library is free software; you can redistribute it and/or
++ *    modify it under the terms of the GNU Lesser General Public
++ *    License version 2.1, as published by the Free Software Foundation.
++ *
++ *    This library is distributed in the hope that it will be useful,
++ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
++ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++ *    Lesser General Public License for more details.
++ *
++ *    You should have received a copy of the GNU Lesser General Public
++ *    License along with this library; if not, write to the Free Software
++ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++ *    MA  02111-1307  USA
++ *
++ ************************************************************************/
++
++#define WIN32_LEAN_AND_MEAN
++#define _WIN32_WINNT 0x0500
++#undef WINVER
++#define WINVER 0x0500
++
++#pragma warning(push, 1) /* disable warnings within system headers as
++                          * warnings are now treated as errors...
++                          */
++#include <windows.h>
++#include <msiquery.h>
++#include <malloc.h>
++
++#ifdef UNICODE
++#define _UNICODE
++#define _tstring	wstring
++#else
++#define _tstring	string
++#endif
++#include <tchar.h>
++#include <string>
++#include <stdio.h>
++#pragma warning(pop)
++
++#include <systools/win32/uwinapi.h>
++
++/* #define VERBOSE_DEBUG_OUTPUT 1 */
++
++static const char *
++langid_to_string( LANGID langid, int *have_default_lang )
++{
++	/* Map from LANGID to string. The languages below are in the same
++	 * seemingly random order as in
++	 * setup_native/source/win32/msi-encodinglist.txt.
++	 * Only the language part is returned in the string.
++	 */
++	switch (PRIMARYLANGID (langid)) {
++	case LANG_ENGLISH:
++		if (have_default_lang != NULL &&
++		    langid == MAKELANGID(LANG_ENGLISH, SUBLANG_DEFAULT))
++			*have_default_lang = 1;
++		return "en";
++#define CASE(primary, name) \
++		case LANG_##primary: return #name
++	CASE(PORTUGUESE, pt);
++	CASE(RUSSIAN, ru);
++	CASE(GREEK, el);
++	CASE(DUTCH, nl);
++	CASE(FRENCH, fr);
++	CASE(SPANISH, es);
++	CASE(FINNISH, fi);
++	CASE(HUNGARIAN, hu);
++	CASE(CATALAN, ca);
++	CASE(ITALIAN, it);
++	CASE(CZECH, cs);
++	CASE(SLOVAK, sk);
++	CASE(DANISH, da);
++	CASE(SWEDISH, sv);
++	CASE(POLISH, pl);
++	CASE(GERMAN, de);
++	CASE(THAI, th);
++	CASE(ESTONIAN, et);
++	CASE(JAPANESE, ja);
++	CASE(KOREAN, ko);
++	// CASE(KHMER, km);
++	// CASE(WELSH, cy);
++	CASE(CHINESE, zh);
++	CASE(TURKISH, tr);
++	CASE(HINDI, hi);
++	CASE(PUNJABI, pa);
++	CASE(TAMIL, ta);
++	CASE(ARABIC, ar);
++	CASE(HEBREW, he);
++	CASE(AFRIKAANS, af);
++	CASE(ALBANIAN, sq);
++	CASE(ARMENIAN, hy);
++	CASE(BASQUE, eu);
++	CASE(BELARUSIAN, be);
++	CASE(BENGALI, bn);
++	CASE(BULGARIAN, bg);
++	CASE(ICELANDIC, is);
++	CASE(INDONESIAN, id);
++	// CASE(LAO, lo);
++	CASE(LATVIAN, lv);
++	CASE(LITHUANIAN, lt);
++	// CASE(MALTESE, mt);
++	// CASE(ROMANSH, rm);
++	CASE(ROMANIAN, ro);
++	// CASE(KINYARWANDA, rw);
++	CASE(SANSKRIT, sa);
++	// CASE(SETSWANA, tn);
++	CASE(FARSI, fa);
++	CASE(FAEROESE, fo);
++	CASE(SLOVENIAN, sl);
++	// CASE(SORBIAN, sb);
++	// CASE(SUTU, st);
++	CASE(SWAHILI, sw);
++	CASE(TATAR, tt);
++	// CASE(TSONGA, ts);
++	CASE(UKRAINIAN, uk);
++	CASE(URDU, ur);
++	CASE(VIETNAMESE, vi);
++	// CASE(XHOSA, xh);
++	// CASE(YIDDISH, yi);
++	// CASE(ZULU, zu);
++	CASE(GUJARATI, gu);
++	// CASE(BRETON, br);
++	CASE(NEPALI, ne);
++	// CASE(NDEBELE, nr);
++	// CASE(SWAZI, ss);
++	// CASE(VENDA, ve);
++	// CASE(IRISH, ga);
++	CASE(MACEDONIAN, mk);
++	CASE(TELUGU, te);
++	CASE(MALAYALAM, ml);
++	CASE(MARATHI, mr);
++	CASE(ORIYA, or);
++	// CASE(KURDISH, ku);
++	// CASE(TAGALOG, tg);
++	// CASE(TIGRINYA, ti);
++	CASE(GALICIAN, gl);
++	CASE(KANNADA, kn);
++	CASE(MALAY, ms);
++	// CASE(TAJIK, tg);
++	CASE(GEORGIAN, ka);
++	// CASE(ESPERANTO, eo);
++#undef CASE
++	/* Special cases */
++	default:
++		switch (langid) {
++		case MAKELANGID(LANG_SERBIAN, 0x05): return "bs";
++#define CASE(primary, sub, name) \
++		case MAKELANGID(LANG_##primary, SUBLANG_##sub): return #name
++		
++		CASE(NORWEGIAN, NORWEGIAN_BOKMAL, nb);
++		CASE(NORWEGIAN, NORWEGIAN_NYNORSK, nn);
++		CASE(SERBIAN, DEFAULT, hr);
++		CASE(SERBIAN, SERBIAN_LATIN, sh);
++		CASE(SERBIAN, SERBIAN_CYRILLIC, sr);
++		// CASE(SOTHO, DEFAULT, ns);
++		// CASE(SOTHO, SOTHO_SOUTHERN, st);
++#undef CASE
++		default: return "";
++		}
++	}
++}
++
++static const char *ui_langs[100];
++static int num_ui_langs = 0;
++
++BOOL CALLBACK
++enum_ui_lang_proc (LPTSTR language, LONG_PTR /* unused_lParam */)
++{
++	long langid = strtol(language, NULL, 16);
++	if (langid > 0xFFFF)
++		return TRUE;
++	ui_langs[num_ui_langs] = langid_to_string((LANGID) langid, NULL);
++	num_ui_langs++;
++	if (num_ui_langs == sizeof(ui_langs) / sizeof(ui_langs[0]))
++		return FALSE;
++	return TRUE;
++}
++
++static BOOL
++present_in_ui_langs(const char *lang)
++{
++	for (int i = 0; i < num_ui_langs; i++)
++		if (memcmp (ui_langs[i], lang, 2) == 0)
++			return TRUE;
++	return FALSE;
++}
++
++extern "C" UINT __stdcall SelectLanguage( MSIHANDLE handle )
++{
++#ifdef VERBOSE_DEBUG_OUTPUT
++	char tem[2000];
++#endif
++	char feature[100];
++	MSIHANDLE database, view, record;
++	DWORD length;
++	int nlangs = 0;
++	/* Keeping this code simple and stupid... won't bother with any
++	 * dynamic arrays or whatnot. 100 is more than enough for this purpose.
++	 */
++	char langs[100][6];
++
++	database = MsiGetActiveDatabase(handle);
++
++	if (MsiDatabaseOpenViewA(database, "SELECT Feature from Feature WHERE Feature_Parent = 'gm_Langpack_Base'", &view) != ERROR_SUCCESS) {
++		MsiCloseHandle(database);
++		return ERROR_SUCCESS;
++	}
++
++#ifdef VERBOSE_DEBUG_OUTPUT
++	MessageBoxA(NULL, "MsiDatabaseOpenViewA success!", "SelectLanguage", MB_OK);
++#endif
++
++	if (MsiViewExecute(view, NULL) != ERROR_SUCCESS) {
++		MsiCloseHandle(view);
++		MsiCloseHandle(database);
++		return ERROR_SUCCESS;
++	}
++
++#ifdef VERBOSE_DEBUG_OUTPUT
++	MessageBoxA(NULL, "MsiViewExecute success!", "SelectLanguage", MB_OK);
++#endif
++
++	while (MsiViewFetch(view, &record) == ERROR_SUCCESS) {
++		length = sizeof(feature);
++		if (MsiRecordGetStringA(record, 1, feature, &length) != ERROR_SUCCESS) {
++			MsiCloseHandle(record);
++			MsiCloseHandle(view);
++			MsiCloseHandle(database);
++			return ERROR_SUCCESS;
++		}
++
++		/* Keep track of what languages are included in this installer, if
++		 * it is a multilangiage one.
++		 */
++		if (strcmp(feature, "gm_r_en_US") != 0)
++			strcpy(langs[nlangs++], feature + strlen("gm_r_"));
++
++		MsiCloseHandle(record);
++	}
++
++	MsiCloseHandle(view);
++
++	if (nlangs > 0) {
++		/* Deselect those languages that don't match any of the UI languages
++		 * available on the system.
++		 */
++
++		int i;
++		int have_system_default_lang = 0;
++		const char *system_default_lang = langid_to_string(GetSystemDefaultUILanguage(), &have_system_default_lang);
++		const char *user_locale_lang = langid_to_string(LANGIDFROMLCID(GetThreadLocale()), NULL);
++
++#ifdef VERBOSE_DEBUG_OUTPUT
++		sprintf(tem, "GetSystemDefaultUILanguage(): %#x = %s", GetSystemDefaultUILanguage(), system_default_lang);
++		MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++
++		EnumUILanguagesA(enum_ui_lang_proc, 0, 0);
++
++#ifdef VERBOSE_DEBUG_OUTPUT
++		sprintf(tem, "Have %d UI languages: ", num_ui_langs);
++		for (i = 0; i < num_ui_langs; i++) {
++			char *p = tem + strlen(tem);
++			sprintf(p, "%s%s", 
++			        ui_langs[i],
++			        (i + 1 < num_ui_langs) ? ", " : "");
++		}
++		MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++
++		/* If one of the alternative languages in a multi-language installer
++		 * is the system default UI language, deselect those languages that
++		 * aren't among the UI languages available on the system.
++		 * (On most Windows installations, just one UI language is present,
++		 * which obviously is the same as the default UI language. But
++		 * we want to be generic.)
++		 * If none of the languages in a multi-language installer is the
++		 * system default UI language (this happens now in 2.4.0 where we
++		 * cannot put as many UI languages into the installer as we would
++		 * like, but only half a dozen: en-US,de,es,fr,it,pt-BR), pretend 
++		 * that English is the system default UI language,
++		 * so that we will by default deselect everything except
++		 * English. We don't want to by default install all half dozen
++		 * languages for an unsuspecting user of a Finnish Windows, for
++		 * instance. Sigh.
++		 */
++		if (system_default_lang[0]) {
++			for (i = 0; i < nlangs; i++) {
++				if (memcmp (system_default_lang, langs[i], 2) == 0) {
++#ifdef VERBOSE_DEBUG_OUTPUT
++					sprintf(tem, "We have the system default language %s in the installer", system_default_lang);
++					MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++					have_system_default_lang = 1;
++				}
++			}
++		}
++
++		if (!have_system_default_lang) {
++#ifdef VERBOSE_DEBUG_OUTPUT
++			sprintf(tem, "We don't have the system default language %s in the installer, so pretend that English is the system default, sigh.", system_default_lang);
++			MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++			system_default_lang = "en";
++			have_system_default_lang = 1;
++		}
++		if (have_system_default_lang) {
++			for (i = 0; i < nlangs; i++) {
++				if (memcmp(system_default_lang, langs[i], 2) != 0 &&
++					memcmp(user_locale_lang, langs[i], 2) != 0 &&
++					!present_in_ui_langs(langs[i])) {
++					UINT rc;
++					sprintf(feature, "gm_r_%s", langs[i]);
++					rc = MsiSetFeatureStateA(handle, feature, INSTALLSTATE_ABSENT); 
++					if (rc != ERROR_SUCCESS) {
++#ifdef VERBOSE_DEBUG_OUTPUT
++						sprintf(tem, "MsiSetFeatureStateA %s failed: %d", feature, rc);
++						MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++					} else {
++#ifdef VERBOSE_DEBUG_OUTPUT
++						sprintf(tem, "MsiSetFeatureStateA %s OK!", feature);
++						MessageBoxA(NULL, tem, "SelectLanguage", MB_OK);
++#endif
++					}
++				}
++			}
++		}
++	}
++
++	MsiCloseHandle(database);
++
++	return ERROR_SUCCESS;
++}
+--- solenv/bin/modules/installer/download.pm.orig	2008-06-05 12:22:33.000000000 +0800
++++ solenv/bin/modules/installer/download.pm	2008-06-05 12:23:44.000000000 +0800
+@@ -827,12 +827,9 @@ sub put_windows_productpath_into_templat
+ 	
+ 	my $productpath = $variableshashref->{'PROPERTYTABLEPRODUCTNAME'};
+ 	
+-	my $locallangs = $$languagestringref;
+-	$locallangs =~ s/_/ /g;
+ 	if (length($locallangs) > $installer::globals::max_lang_length) { $locallangs = "multi lingual"; }
+ 
+-	if ( ! $installer::globals::languagepack ) { $productpath = $productpath . " (" . $locallangs . ")"; } 		
+-	
++	if ( ! $installer::globals::languagepack ) { $productpath = $productpath . " (" . sprintf('%x', time()) . ")"; }
+ 	replace_one_variable($templatefile, "PRODUCTPATHPLACEHOLDER", $productpath);
+ }
+ 
+--- instsetoo_native/util/makefile.mk
++++ instsetoo_native/util/makefile.mk
+@@ -222,7 +222,7 @@
+ openoffice_% :
+ .ENDIF			# "$(PKGFORMAT)"!=""
+ 	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+-	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
++	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/`date +%Y%m%d_%H%M`_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
+ 
+ .IF "$(PKGFORMAT)"!=""
+ $(foreach,i,$(alllangiso) openofficewithjre_$i) : $$ {$(PKGFORMAT:^".")}
+@@ -250,7 +250,7 @@
+ openofficedev_% :
+ .ENDIF			# "$(PKGFORMAT)"!=""
+ 	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles $(subst,xxx,$(@:e:s/.//) $(PKGFORMATSWITCH) $(VERBOSESWITCH))
+-	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice_Dev --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
++	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice_Dev --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/`date +%Y%m%d_%H%M`_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
+ 
+ openofficedevarchive_% :
+ 	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(COMMONMISC)$/win_ulffiles -format archive $(VERBOSESWITCH)
+

Modified: trunk/patches/dev300/win32-multi-lang-installer.diff
==============================================================================
--- trunk/patches/dev300/win32-multi-lang-installer.diff	(original)
+++ trunk/patches/dev300/win32-multi-lang-installer.diff	Wed Aug  6 16:31:18 2008
@@ -33,7 +33,7 @@
 @@ -5,6 +5,7 @@
  pk  setup_native\source\win32\customactions\regactivex    nmake   -  w   sn_regactivex NULL
  pk  setup_native\source\win32\customactions\regpatchactivex nmake -  w   sn_regpatchactivex NULL
- pk  setup_native\source\win32\customactions\reg4msdoc     nmake   -  w   sn_reg4msdoc NULL
+ pk  setup_native\source\win32\customactions\reg4allmsdoc  nmake   -  w   sn_reg4allmsdoc NULL
 +pk  setup_native\source\win32\customactions\sellang       nmake   -  w   sn_sellang NULL
  pk  setup_native\source\win32\customactions\javafilter    nmake   -  w   sn_javafilter NULL
  pk  setup_native\source\win32\customactions\quickstarter  nmake   -  w   sn_quickstarter NULL
@@ -488,9 +488,9 @@
 -	if ( ! $installer::globals::languagepack ) { $productpath = $productpath . " (" . $locallangs . ")"; } 		
 -	
 +	if ( ! $installer::globals::languagepack ) { $productpath = $productpath . " (" . sprintf('%x', time()) . ")"; }
+ 	# if (( $installer::globals::languagepack ) && ( $installer::globals::unicodensis )) { $productpath = convert_textstring_to_utf16($productpath, $localnsisdir, "stringhelper.txt"); }
+ 	
  	replace_one_variable($templatefile, "PRODUCTPATHPLACEHOLDER", $productpath);
- }
- 
 --- instsetoo_native/util/makefile.mk
 +++ instsetoo_native/util/makefile.mk
 @@ -222,7 +222,7 @@



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]