Unicode port: Unicode version of NSIS can now generate both ANSI & Unicode installers (using new instruction UnicodeInstaller on/off).

Stubs & Plugins differentiation is done automatically using a 'W' suffix.
SConscripts need to be reviewed to generate both variants of Plugins & pluginapi.lib under Unicode compilation.

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6100 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
wizou 2010-06-14 10:07:22 +00:00
parent fbc7cb8fd0
commit 57f7ff8a1c
24 changed files with 376 additions and 112 deletions

View file

@ -136,7 +136,9 @@ class CEXEBuild {
int prepare_uninstaller();
int pack_exe_header();
int set_build_unicode(bool unicode_installer);
int set_compressor(const tstring& compressor, const bool solid);
int load_stub();
int update_exehead(const tstring& file, size_t *size=NULL);
void update_exehead(const unsigned char *new_exehead, size_t new_size);
@ -377,6 +379,7 @@ class CEXEBuild {
// a whole bunch O data.
tstring stubs_dir;
tstring stub_filename;
#ifdef NSIS_CONFIG_COMPRESSION_SUPPORT
ICompressor *compressor;
@ -392,6 +395,7 @@ class CEXEBuild {
int build_compress_dict_size;
bool no_space_texts;
bool build_unicode;
bool has_called_write_output;
@ -442,7 +446,7 @@ class CEXEBuild {
GrowBuf build_instruction_entry_map,ubuild_instruction_entry_map, *cur_instruction_entry_map;
TinyGrowBuf build_functions, ubuild_functions, *cur_functions;
TinyGrowBuf build_labels, ubuild_labels, *cur_labels;
StringList build_strlist, ubuild_strlist, *cur_strlist;
MLStringList build_strlist, ubuild_strlist, *cur_strlist;
GrowBuf build_langtables, ubuild_langtables, *cur_langtables;
TinyGrowBuf build_pages, ubuild_pages, *cur_pages;
TinyGrowBuf build_ctlcolors, ubuild_ctlcolors, *cur_ctlcolors;