moved _NSIS_NO_INT64_SHR test to SCons/Config/ms so it'll only be called once and not for each stub and because it's a better location being a vc specific problem

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@4595 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2006-03-17 12:01:17 +00:00
parent b430a1020e
commit 503f5c78c8
2 changed files with 25 additions and 22 deletions

View file

@ -116,6 +116,30 @@ cp_util_env = util_env.Copy()
test_env = defenv.Copy()
# return
### weird compiler requirements
#
# MSVC 6 SP6 doesn't like direct shifting of 64-bit integers.
# It generates a call to ___aullshr which requires libc, which
# we don't like. However, it does agree to work properly with
# a call to Int64ShrlMod32.
#
conf = stub_env.Configure()
int64test = """
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInst,LPSTR lpszCmdParam, int nCmdShow) {
ULARGE_INTEGER *i = 0;
return (int)(i->QuadPart >> 10);
}
"""
if not conf.TryLink(int64test, '.c'):
stub_env.Append(CPPDEFINES = ['_NSIS_NO_INT64_SHR'])
conf.Finish()
### return
Return('stub_env makensis_env plugin_env util_env cp_util_env test_env')

View file

@ -48,27 +48,6 @@ libs = Split("""
Import('env compression solid_compression')
### Compiler specific configuration
conf = env.Configure()
int64test = """
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInst,LPSTR lpszCmdParam, int nCmdShow) {
ULARGE_INTEGER *i = 0;
return (int)(i->QuadPart >> 10);
}
"""
if not conf.TryLink(int64test, '.c'):
# MSVC 6 SP6 doesn't like direct shifting of 64-bit integers.
# It generates a call to ___aullshr which requires libc, which
# we don't like. However, it does agree to work properly with
# a call to Int64ShrlMod32.
env.Append(CPPDEFINES = ['_NSIS_NO_INT64_SHR'])
conf.Finish()
### Defines
env.Append(CPPDEFINES = ['EXEHEAD'])