Commit graph

63 commits

Author SHA1 Message Date
anders_k
7cc150c464 MakeNSIS can now generate Unicode or Ansi installers based on a script attribute. SCons generates both Ansi and Unicode stubs and plugins.
The official plugins are now stored in architecture specific subdirectories under NSIS\Plugins. !AddPluginDir also gained a new (optional) architecture flag because MakeNSIS now stores separate plugin information for each target architecture. Storing plugins in the root of the Plugins directory is no longer supported.

MinGW does not implement the unicode CRT startup functions so the entry point functions and linker parameters had to be changed. The unicode tools use the ansi entry point and a small helper function that calls into the real code: _tmain has full argc+argv emulation while wWinMain does not pass the command line parameters. The stubs do not use any CRT functions and have no CRT or unicode helper code, they call our entry point directly.



git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6269 212acab6-be3b-0410-9dea-997c60f758d6
2012-10-13 01:47:50 +00:00
anders_k
f2e3e13a0e MinGW: Don't link to LIBGCC*.DLL and LIBSTDC++-*.DLL
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6261 212acab6-be3b-0410-9dea-997c60f758d6
2012-09-11 00:53:50 +00:00
f0rt
737a5c8468 Allow building with a specific win32 targeted cross compiler (#3305366)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6156 212acab6-be3b-0410-9dea-997c60f758d6
2011-06-25 19:29:38 +00:00
anders_k
fd1febb2f0 Fixes for MinGW (substart and system.dll still broken)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6154 212acab6-be3b-0410-9dea-997c60f758d6
2011-06-15 22:48:02 +00:00
wizou
57f7ff8a1c 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
2010-06-14 10:07:22 +00:00
f0rt
8ab72b9ece #1753070: Enable that makensis and its related utilities can be built natively for 64-bit systems
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6040 212acab6-be3b-0410-9dea-997c60f758d6
2010-03-27 19:20:16 +00:00
kichik
3d12aaa1f0 applied patch #2930854 - mingw compiled makensis: installers don't show bitmaps
(fixed plug-in compatibility with mingw 4.4)

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6028 212acab6-be3b-0410-9dea-997c60f758d6
2010-02-06 17:00:00 +00:00
kichik
6f8cb01206 proper flags order to avoid the horrible non-virtual destructor warning
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5926 212acab6-be3b-0410-9dea-997c60f758d6
2009-02-05 00:52:28 +00:00
pabs3
f41ba95bab fix bug #2497148 - allow out of tree builds on POSIX platforms
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5921 212acab6-be3b-0410-9dea-997c60f758d6
2009-02-04 14:05:48 +00:00
kichik
86bcd61baa again, force quotation around stdcall to avoid parenthesis madness
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5848 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-15 21:51:24 +00:00
kichik
6f5d687490 use lists instead of dicts so scons will not treat the dict as a string when a list is also appended
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5847 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-14 23:56:10 +00:00
kichik
2d06f24c5d force quoting to avoid problems with the parenthesis
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5818 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 23:06:03 +00:00
kichik
f6e4fefbf5 moved NSISCALL detection to scons
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5814 212acab6-be3b-0410-9dea-997c60f758d6
2008-12-09 22:42:12 +00:00
kichik
a91ab7ab59 spaces are now frowned upon and quoted for unknown reason
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5783 212acab6-be3b-0410-9dea-997c60f758d6
2008-11-21 08:47:37 +00:00
kichik
c8884e0988 scons 1.1.0 support
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5767 212acab6-be3b-0410-9dea-997c60f758d6
2008-11-15 21:54:24 +00:00
pabs3
8666849f94 Fix FTBFS on Debian GNU/Linux amd64 due to not enough use of -m32
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5565 212acab6-be3b-0410-9dea-997c60f758d6
2008-03-03 16:33:56 +00:00
pabs3
018b9cc347 Add Debian patch for separate stripping options for Win32 & cross-platform options
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5368 212acab6-be3b-0410-9dea-997c60f758d6
2007-11-14 06:20:44 +00:00
kichik
16280a6389 check compiler flag `-m32' before linker flag as some gcc versions crash when linking non 32-bit objects with this flag
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5336 212acab6-be3b-0410-9dea-997c60f758d6
2007-10-14 21:25:57 +00:00
kichik
70e0fec9e5 fixed bug #1800834 - CVS FTBFS with new mingw32
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5294 212acab6-be3b-0410-9dea-997c60f758d6
2007-09-29 10:13:07 +00:00
kichik
8e716ed458 applied patch #1758863 - Patch for building on GCC and aCC
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5217 212acab6-be3b-0410-9dea-997c60f758d6
2007-07-23 18:43:07 +00:00
kichik
44e366f9da changed __ALLOW_UNALIGNED_DATA_ACCESS__ to NSIS_HPUX_ALLOW_UNALIGNED_DATA_ACCESS
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5182 212acab6-be3b-0410-9dea-997c60f758d6
2007-06-27 14:16:07 +00:00
kichik
81afed0591 applied patch #1714416 - patch to build on hpux
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5181 212acab6-be3b-0410-9dea-997c60f758d6
2007-06-27 14:15:00 +00:00
kichik
bebb041789 more of bug #1676243 - compiler warnings on Linux
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5066 212acab6-be3b-0410-9dea-997c60f758d6
2007-04-13 10:29:24 +00:00
kichik
3608995944 added -Wno-non-virtual-dtor for 7zip files on gnu configuration for bug #1676243
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5051 212acab6-be3b-0410-9dea-997c60f758d6
2007-04-11 20:54:00 +00:00
kichik
7b6071caec more of bug #1635841 - gcc strict-aliasing and build system
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5000 212acab6-be3b-0410-9dea-997c60f758d6
2007-03-18 18:34:03 +00:00
kichik
b293ebb229 added MSVCRT_FLAG
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4963 212acab6-be3b-0410-9dea-997c60f758d6
2007-03-02 11:17:08 +00:00
kichik
82910689b3 fixed bug #1646170 - nsis-2.23 can be built on x86_64 hosts
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4920 212acab6-be3b-0410-9dea-997c60f758d6
2007-02-02 22:53:07 +00:00
kichik
bd86ee1bfc fixed bug #1635841 - gcc strict-aliasing and build system
- added STRIP, APPEND_CCFLAGS and APPEND_LINKFLAGS command line options
 - added -fno-strict-aliasing to stubs and plug-ins


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4863 212acab6-be3b-0410-9dea-997c60f758d6
2007-01-23 17:01:54 +00:00
kichik
4bdb1ebd7d Copy is deprecated by Clone in scons 0.96.93
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4813 212acab6-be3b-0410-9dea-997c60f758d6
2006-11-11 13:04:35 +00:00
kichik
a7d4d32640 scons 0.96.92
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4776 212acab6-be3b-0410-9dea-997c60f758d6
2006-10-17 16:59:03 +00:00
kichik
991295e17f fixed bug #1474597 - Mac OS X 10.4 build failures
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4664 212acab6-be3b-0410-9dea-997c60f758d6
2006-04-28 15:54:42 +00:00
kichik
f36bb7557e make sure -Wl,-Map is supported by the linker
mingw supports it, so only check for non-cross envs


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4590 212acab6-be3b-0410-9dea-997c60f758d6
2006-03-14 18:22:57 +00:00
kichik
bc76613d85 use FlagsConfigure for -pthread
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4587 212acab6-be3b-0410-9dea-997c60f758d6
2006-03-14 17:53:24 +00:00
pabs3
e2c7cdb60a Remember to define __BIG_ENDIAN__ for the tests as well as makensis.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4514 212acab6-be3b-0410-9dea-997c60f758d6
2006-02-01 06:01:11 +00:00
kichik
94f7f3b673 added NSIS_CONFIG_LOG_STDOUT
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4510 212acab6-be3b-0410-9dea-997c60f758d6
2006-01-27 17:53:00 +00:00
pabs3
82cbf4e478 Fix Debian bug #350112: Use CPPDEFINES instead of broken CPPFLAGS to define __BIG_ENDIAN__ on big endian POSIX platforms.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4505 212acab6-be3b-0410-9dea-997c60f758d6
2006-01-27 13:45:08 +00:00
kichik
47b2ca9bcb fixed bug #1370179 - endianness problem with FIX_ENDIAN_INT32_INPLACE
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4444 212acab6-be3b-0410-9dea-997c60f758d6
2005-12-15 18:53:38 +00:00
kichik
337019b8b6 use a cross-compile environment to test for memcpy and memset
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4393 212acab6-be3b-0410-9dea-997c60f758d6
2005-11-12 10:46:28 +00:00
kichik
a70e478d6e freebsd portability
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4379 212acab6-be3b-0410-9dea-997c60f758d6
2005-11-08 19:30:18 +00:00
kichik
a546017631 workaround for scons bug - use CPPDEFINES in RCCOM
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4306 212acab6-be3b-0410-9dea-997c60f758d6
2005-10-05 13:47:12 +00:00
kichik
20248c1ca9 no optimizations and symbol stripping in debug mode
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4288 212acab6-be3b-0410-9dea-997c60f758d6
2005-09-24 11:41:41 +00:00
kichik
31e868b010 only mingw supports --file-alignment
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4278 212acab6-be3b-0410-9dea-997c60f758d6
2005-09-20 17:32:10 +00:00
kichik
08665528b9 added support for compilation of cross platform utilities
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4272 212acab6-be3b-0410-9dea-997c60f758d6
2005-09-17 09:43:10 +00:00
kichik
1898a9b2e1 fixed in scons 0.96.91
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4244 212acab6-be3b-0410-9dea-997c60f758d6
2005-09-08 17:52:57 +00:00
kichik
39f365d25f linker script is defined using -T, not -Wl
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4207 212acab6-be3b-0410-9dea-997c60f758d6
2005-08-05 15:27:03 +00:00
kichik
cfb0ff9762 DllMain's name is _DllMain@12, not _DllMain@16
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4206 212acab6-be3b-0410-9dea-997c60f758d6
2005-08-05 13:14:15 +00:00
kichik
20521a99e9 added -mwindows to plug-ins linkage
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4205 212acab6-be3b-0410-9dea-997c60f758d6
2005-08-05 12:52:12 +00:00
kichik
df2a7ce233 add $MAP_FLAG to all envs
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4172 212acab6-be3b-0410-9dea-997c60f758d6
2005-07-16 10:09:17 +00:00
kichik
c0ce38d877 if emitter is a list of emitters, take the first and only emitter
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4164 212acab6-be3b-0410-9dea-997c60f758d6
2005-07-08 09:49:51 +00:00
kichik
de7378b40b * use a nicer method to replace the emitter
* don't write required files on runtime, added them to cvs


git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4159 212acab6-be3b-0410-9dea-997c60f758d6
2005-07-02 17:53:06 +00:00