Changeset 63833 in webkit


Ignore:
Timestamp:
Jul 21, 2010 9:39:59 AM (14 years ago)
Author:
sfalken@apple.com
Message:

JavaScriptCore: WebKit on Windows should build optionally with an unversioned ICU DLL
https://bugs.webkit.org/show_bug.cgi?id=42722
<rdar://problem/8211743> JavaScriptCore needs to link against unversioned ICU

Reviewed by Adam Roben.

Dynamically create a new header, ICUVersion.h, as part of build-generated-files.sh.
Header contains a preprocessor define (U_DISABLE_RENAMING) indicating to ICU whether the ICU API
should be namespaced with the current ICU version number. Proper value is determined
by checking for the presence of libicuuc.lib, the unversioned copy of ICU.

To get the proper value for U_DISABLE_RENAMING into all source files, we force
the include of ICUVersion.h (our generated header) via the compiler options.

Since the versioned and unversioned ICU have different filenames (libicuuc.lib vs icuuc.lib)
we copy the ICU lib to an intermediate location under obj with a common name. This
allows us to link properly with either without adding a new build configuration.

Copy ICU libs into a common location with a common name.
Add additional library search path to pick up icu lib.
Change ICU library filename specified to linker.
Add forced include of ICUVersion.h.

  • JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Generate ICUVersion.h
  • JavaScriptCore.vcproj/WTF/WTFCommon.vsprops: Add forced include of ICUVersion.h.
  • JavaScriptCore.vcproj/jsc/jscCommon.vsprops:

Copy ICU libs into a common location with a common name.
Add additional library search path to pick up icu lib.
Change ICU library filename specified to linker.
Add forced include of ICUVersion.h.

Copy ICU libs into a common location with a common name.
Add additional library search path to pick up icu lib.
Change ICU library filename specified to linker.
Add forced include of ICUVersion.h.

WebCore: WebKit on Windows should build optionally with an unversioned ICU DLL
https://bugs.webkit.org/show_bug.cgi?id=42722
<rdar://problem/8211767> WebKit needs to link against unversioned ICU

Reviewed by Adam Roben.

To get the proper value for U_DISABLE_RENAMING into all source files, we force
the include of ICUVersion.h (our generated header) via the compiler options.

  • WebCore.vcproj/WebCore.vcproj:

Add forced include of ICUVersion.h.

  • WebCore.vcproj/WebCoreCommon.vsprops: Add forced include of ICUVersion.h.

WebKit/win: WebKit on Windows should build optionally with an unversioned ICU DLL
https://bugs.webkit.org/show_bug.cgi?id=42722
<rdar://problem/8211767> WebKit needs to link against unversioned ICU

Reviewed by Adam Roben.

To get the proper value for U_DISABLE_RENAMING into all source files, we force
the include of ICUVersion.h (our generated header) via the compiler options.

  • WebKit.vcproj/WebKit.vcproj: Add forced include of ICUVersion.h.

WebKit2: WebKit on Windows should build optionally with an unversioned ICU DLL
https://bugs.webkit.org/show_bug.cgi?id=42722
<rdar://problem/8211767> WebKit needs to link against unversioned ICU

Reviewed by Adam Roben.

To get the proper value for U_DISABLE_RENAMING into all source files, we force
the include of ICUVersion.h (our generated header) via the compiler options.

Since the versioned and unversioned ICU have different filenames (libicuuc.lib vs icuuc.lib)
we copy the ICU lib to an intermediate location under obj with a common name. This
allows us to link properly with either without adding a new build configuration.

  • win/WebKit2Common.vsprops:

Copy ICU libs into a common location with a common name.
Add additional library search path to pick up icu lib.
Change ICU library filename specified to linker.
Add forced include of ICUVersion.h.

Location:
trunk
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/ChangeLog

    r63801 r63833  
     12010-07-20  Steve Falkenburg  <sfalken@apple.com>
     2
     3        Reviewed by Adam Roben.
     4
     5        WebKit on Windows should build optionally with an unversioned ICU DLL
     6        https://bugs.webkit.org/show_bug.cgi?id=42722
     7        <rdar://problem/8211743> JavaScriptCore needs to link against unversioned ICU
     8       
     9        Dynamically create a new header, ICUVersion.h, as part of build-generated-files.sh.
     10        Header contains a preprocessor define (U_DISABLE_RENAMING) indicating to ICU whether the ICU API
     11        should be namespaced with the current ICU version number. Proper value is determined
     12        by checking for the presence of libicuuc.lib, the unversioned copy of ICU.
     13       
     14        To get the proper value for U_DISABLE_RENAMING into all source files, we force
     15        the include of ICUVersion.h (our generated header) via the compiler options.
     16       
     17        Since the versioned and unversioned ICU have different filenames (libicuuc.lib vs icuuc.lib)
     18        we copy the ICU lib to an intermediate location under obj with a common name. This
     19        allows us to link properly with either without adding a new build configuration.
     20
     21        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
     22        Copy ICU libs into a common location with a common name.
     23        Add additional library search path to pick up icu lib.
     24        Change ICU library filename specified to linker.
     25        Add forced include of ICUVersion.h.
     26        * JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh: Generate ICUVersion.h
     27        * JavaScriptCore.vcproj/WTF/WTFCommon.vsprops: Add forced include of ICUVersion.h.
     28        * JavaScriptCore.vcproj/jsc/jscCommon.vsprops:
     29        Copy ICU libs into a common location with a common name.
     30        Add additional library search path to pick up icu lib.
     31        Change ICU library filename specified to linker.
     32        Add forced include of ICUVersion.h.
     33        * JavaScriptCore.vcproj/testapi/testapiCommon.vsprops:
     34        Copy ICU libs into a common location with a common name.
     35        Add additional library search path to pick up icu lib.
     36        Change ICU library filename specified to linker.
     37        Add forced include of ICUVersion.h.
     38
    1392010-07-20  Steve Falkenburg  <sfalken@apple.com>
    240
  • trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops

    r63801 r63833  
    99                AdditionalIncludeDirectories="&quot;$(WebKitOutputDir)\obj\JavaScriptCore\DerivedSources\&quot;;../../;../../API/;../../pcre/;../../parser/;../../bytecompiler/;../../jit/;../../runtime/;../../bytecode/;../../interpreter/;../../wtf/;../../profiler;../../assembler/;../../debugger/;&quot;$(WebKitLibrariesDir)\include&quot;;&quot;$(WebKitLibrariesDir)\include\private&quot;;&quot;$(WebKitOutputDir)\include&quot;;&quot;$(WebKitOutputDir)\include\JavaScriptCore&quot;;&quot;$(WebKitOutputDir)\include\private&quot;;&quot;$(WebKitLibrariesDir)\include\pthreads&quot;"
    1010                PreprocessorDefinitions="__STD_C"
    11                 ForcedIncludeFiles=""
     11                ForcedIncludeFiles="ICUVersion.h"
    1212        />
    1313        <Tool
    1414                Name="VCLinkerTool"
    15                 AdditionalDependencies="gdi32.lib oleaut32.lib winmm.lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib WTF$(WebKitConfigSuffix).lib"
     15                AdditionalDependencies="gdi32.lib oleaut32.lib winmm.lib libicuin$(LibraryConfigSuffix).lib libicuuc$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib WTF$(WebKitConfigSuffix).lib"
    1616                OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
     17                AdditionalLibraryDirectories="&quot;$(IntDir)\lib&quot;"
    1718                ModuleDefinitionFile="JavaScriptCore.def"
    1819        />
     
    2526                CommandLine="%SystemDrive%\cygwin\bin\which.exe bash&#x0D;&#x0A;if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%&#x0D;&#x0A;cmd /c&#x0D;&#x0A;if exist &quot;$(WebKitOutputDir)\buildfailed&quot; grep XX$(ProjectName)XX &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;if errorlevel 1 exit 1&#x0D;&#x0A;echo XX$(ProjectName)XX &gt; &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;&#x0D;&#x0A;bash &quot;$(WebKitLibrariesDir)\tools\scripts\auto-version.sh&quot; &quot;$(IntDir)&quot;&#x0D;&#x0A;"
    2627        />
     28        <Tool
     29                Name="VCPreLinkEventTool"
     30                CommandLine="mkdir 2&gt;NUL &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;cmd /c&#x0D;&#x0A;"
     31        />
    2732</VisualStudioPropertySheet>
  • trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/build-generated-files.sh

    r52015 r63833  
    99    test ! -f "${QUARTZCORE_H_PATH}"
    1010    echo "#define QUARTZCORE_PRESENT $?" > "${QUARTZCOREPRESENT_H_PATH}"
     11fi
     12
     13# Determine whether we have the versioned ICU 4.0 or the unversioned ICU 4.4
     14UNVERSIONED_ICU_LIB_PATH=$(cygpath -u "${WEBKITLIBRARIESDIR}/lib/libicuuc.lib")
     15ICUVERSION_H_PATH=$(cygpath -u "${WEBKITOUTPUTDIR}/include/private/ICUVersion.h")
     16if test \( ! -f "${ICUVERSION_H_PATH}" \) -o \( -f "${UNVERSIONED_ICU_LIB_PATH}" -a \( "${UNVERSIONED_ICU_LIB_PATH}" -nt "${ICUVERSION_H_PATH}" \) \)
     17then
     18    mkdir -p "$(dirname "${ICUVERSION_H_PATH}")"
     19    test ! -f "${UNVERSIONED_ICU_LIB_PATH}"
     20    echo "#define U_DISABLE_RENAMING $?" > "${ICUVERSION_H_PATH}"
    1121fi
    1222
  • trunk/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTFCommon.vsprops

    r53864 r63833  
    1010                AdditionalIncludeDirectories="&quot;$(WebKitOutputDir)\obj\JavaScriptCore\$(ConfigurationName)\DerivedSources\&quot;;../../;&quot;../../os-win32/&quot;;../../pcre/;../../parser/;../../wtf/;../../wtf/unicode/;&quot;$(WebKitOutputDir)\include\private&quot;;&quot;$(WebKitLibrariesDir)\include&quot;;../../../icu/include;../../bindings;../../bindings/c;../../bindings/jni;&quot;$(WebKitOutputDir)\include\JavaScriptCore&quot;;&quot;$(WebKitLibrariesDir)\include\pthreads&quot;"
    1111                PreprocessorDefinitions="__STD_C"
     12                ForcedIncludeFiles="ICUVersion.h"
    1213        />
    1314        <Tool
  • trunk/JavaScriptCore/JavaScriptCore.vcproj/jsc/jscCommon.vsprops

    r63801 r63833  
    99                AdditionalIncludeDirectories="&quot;$(WebKitOutputDir)\include&quot;;&quot;$(WebKitOutputDir)\include\private&quot;;&quot;$(WebKitOutputDir)\obj\JavaScriptCore\$(ConfigurationName)\DerivedSources\&quot;;../../;&quot;../../os-win32/&quot;;../../pcre/;../../assembler/;../../API/;../../parser/;../../runtime/;../../VM/;../../bytecode/;../../interpreter/;../../wtf/;../../debugger/;../../bytecompiler/;../../profiler;../../jit/;&quot;$(WebKitLibrariesDir)\include\pthreads&quot;;&quot;$(WebKitLibrariesDir)\include&quot;"
    1010                PreprocessorDefinitions="__STD_C"
    11                 ForcedIncludeFiles=""
     11                ForcedIncludeFiles="ICUVersion.h"
     12                ForcedUsingFiles=""
    1213        />
    1314        <Tool
    1415                Name="VCLinkerTool"
    15                 AdditionalDependencies="JavaScriptCore$(WebKitDLLConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib winmm.lib pthreadVC2$(LibraryConfigSuffix).lib user32.lib"
     16                AdditionalDependencies="JavaScriptCore$(WebKitDLLConfigSuffix).lib libicuin$(LibraryConfigSuffix).lib libicuuc$(LibraryConfigSuffix).lib winmm.lib pthreadVC2$(LibraryConfigSuffix).lib user32.lib"
     17                AdditionalLibraryDirectories="&quot;$(IntDir)\lib&quot;"
    1618                SubSystem="1"
    1719        />
     
    2426                CommandLine="%SystemDrive%\cygwin\bin\which.exe bash&#x0D;&#x0A;if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%&#x0D;&#x0A;cmd /c&#x0D;&#x0A;if exist &quot;$(WebKitOutputDir)\buildfailed&quot; grep XX$(ProjectName)XX &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;if errorlevel 1 exit 1&#x0D;&#x0A;echo XX$(ProjectName)XX &gt; &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;"
    2527        />
     28        <Tool
     29                Name="VCPreLinkEventTool"
     30                CommandLine="mkdir 2&gt;NUL &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;cmd /c&#x0D;&#x0A;"
     31        />
    2632</VisualStudioPropertySheet>
  • trunk/JavaScriptCore/JavaScriptCore.vcproj/testapi/testapiCommon.vsprops

    r63801 r63833  
    1010                WarningLevel="4"
    1111                Detect64BitPortabilityProblems="true"
    12                 ForcedIncludeFiles=""
     12                ForcedIncludeFiles="ICUVersion.h"
    1313        />
    1414        <Tool
    1515                Name="VCLinkerTool"
    16                 AdditionalDependencies="JavaScriptCore$(WebKitDLLConfigSuffix).lib WTF$(WebKitConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib"
     16                AdditionalDependencies="JavaScriptCore$(WebKitDLLConfigSuffix).lib WTF$(WebKitConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib libicuin$(LibraryConfigSuffix).lib libicuuc$(LibraryConfigSuffix).lib"
     17                AdditionalLibraryDirectories="&quot;$(IntDir)\lib&quot;"
    1718                SubSystem="1"
    1819        />
     
    2526                CommandLine="%SystemDrive%\cygwin\bin\which.exe bash&#x0D;&#x0A;if errorlevel 1 set PATH=%SystemDrive%\cygwin\bin;%PATH%&#x0D;&#x0A;cmd /c&#x0D;&#x0A;if exist &quot;$(WebKitOutputDir)\buildfailed&quot; grep XX$(ProjectName)XX &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;if errorlevel 1 exit 1&#x0D;&#x0A;echo XX$(ProjectName)XX &gt; &quot;$(WebKitOutputDir)\buildfailed&quot;&#x0D;&#x0A;"
    2627        />
     28        <Tool
     29                Name="VCPreLinkEventTool"
     30                CommandLine="mkdir 2&gt;NUL &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;cmd /c&#x0D;&#x0A;"
     31        />
    2732</VisualStudioPropertySheet>
  • trunk/WebCore/ChangeLog

    r63822 r63833  
     12010-07-20  Steve Falkenburg  <sfalken@apple.com>
     2
     3        Reviewed by Adam Roben.
     4
     5        WebKit on Windows should build optionally with an unversioned ICU DLL
     6        https://bugs.webkit.org/show_bug.cgi?id=42722
     7        <rdar://problem/8211767> WebKit needs to link against unversioned ICU
     8
     9        To get the proper value for U_DISABLE_RENAMING into all source files, we force
     10        the include of ICUVersion.h (our generated header) via the compiler options.
     11       
     12        * WebCore.vcproj/WebCore.vcproj:
     13        Add forced include of ICUVersion.h.
     14        * WebCore.vcproj/WebCoreCommon.vsprops: Add forced include of ICUVersion.h.
     15
    1162010-07-21  Ilya Tikhonovsky  <loislo@chromium.org>
    217
  • trunk/WebCore/WebCore.vcproj/WebCore.vcproj

    r63800 r63833  
    365365                                                UsePrecompiledHeader="0"
    366366                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    367                                                 ForcedIncludeFiles="$(NOINHERIT)"
     367                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    368368                                        />
    369369                                </FileConfiguration>
     
    375375                                                UsePrecompiledHeader="0"
    376376                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    377                                                 ForcedIncludeFiles="$(NOINHERIT)"
     377                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    378378                                        />
    379379                                </FileConfiguration>
     
    385385                                                UsePrecompiledHeader="0"
    386386                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    387                                                 ForcedIncludeFiles="$(NOINHERIT)"
     387                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    388388                                        />
    389389                                </FileConfiguration>
     
    395395                                                UsePrecompiledHeader="0"
    396396                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    397                                                 ForcedIncludeFiles="$(NOINHERIT)"
     397                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    398398                                        />
    399399                                </FileConfiguration>
     
    405405                                                UsePrecompiledHeader="0"
    406406                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    407                                                 ForcedIncludeFiles="$(NOINHERIT)"
     407                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    408408                                        />
    409409                                </FileConfiguration>
     
    415415                                                UsePrecompiledHeader="0"
    416416                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    417                                                 ForcedIncludeFiles="$(NOINHERIT)"
     417                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    418418                                        />
    419419                                </FileConfiguration>
     
    2091120911                                                UsePrecompiledHeader="0"
    2091220912                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20913                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20913                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2091420914                                        />
    2091520915                                </FileConfiguration>
     
    2092120921                                                UsePrecompiledHeader="0"
    2092220922                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20923                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20923                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2092420924                                        />
    2092520925                                </FileConfiguration>
     
    2093120931                                                UsePrecompiledHeader="0"
    2093220932                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20933                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20933                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2093420934                                        />
    2093520935                                </FileConfiguration>
     
    2094120941                                                UsePrecompiledHeader="0"
    2094220942                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20943                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20943                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2094420944                                        />
    2094520945                                </FileConfiguration>
     
    2095120951                                                UsePrecompiledHeader="0"
    2095220952                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20953                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20953                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2095420954                                        />
    2095520955                                </FileConfiguration>
     
    2096120961                                                UsePrecompiledHeader="0"
    2096220962                                                DisableSpecificWarnings="4065;4273;4565;4701;4702"
    20963                                                 ForcedIncludeFiles="$(NOINHERIT)"
     20963                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2096420964                                        />
    2096520965                                </FileConfiguration>
     
    2382523825                                                        Name="VCCLCompilerTool"
    2382623826                                                        UsePrecompiledHeader="0"
    23827                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23827                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2382823828                                                />
    2382923829                                        </FileConfiguration>
     
    2383423834                                                        Name="VCCLCompilerTool"
    2383523835                                                        UsePrecompiledHeader="0"
    23836                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23836                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2383723837                                                />
    2383823838                                        </FileConfiguration>
     
    2384323843                                                        Name="VCCLCompilerTool"
    2384423844                                                        UsePrecompiledHeader="0"
    23845                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23845                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2384623846                                                />
    2384723847                                        </FileConfiguration>
     
    2385223852                                                        Name="VCCLCompilerTool"
    2385323853                                                        UsePrecompiledHeader="0"
    23854                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23854                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2385523855                                                />
    2385623856                                        </FileConfiguration>
     
    2386123861                                                        Name="VCCLCompilerTool"
    2386223862                                                        UsePrecompiledHeader="0"
    23863                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23863                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2386423864                                                />
    2386523865                                        </FileConfiguration>
     
    2387023870                                                        Name="VCCLCompilerTool"
    2387123871                                                        UsePrecompiledHeader="0"
    23872                                                         ForcedIncludeFiles="$(NOINHERIT)"
     23872                                                        ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    2387323873                                                />
    2387423874                                        </FileConfiguration>
     
    3206832068                                                Name="VCCLCompilerTool"
    3206932069                                                UsePrecompiledHeader="0"
    32070                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32070                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3207132071                                        />
    3207232072                                </FileConfiguration>
     
    3207732077                                                Name="VCCLCompilerTool"
    3207832078                                                UsePrecompiledHeader="0"
    32079                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32079                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3208032080                                        />
    3208132081                                </FileConfiguration>
     
    3208632086                                                Name="VCCLCompilerTool"
    3208732087                                                UsePrecompiledHeader="0"
    32088                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32088                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3208932089                                        />
    3209032090                                </FileConfiguration>
     
    3209532095                                                Name="VCCLCompilerTool"
    3209632096                                                UsePrecompiledHeader="0"
    32097                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32097                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3209832098                                        />
    3209932099                                </FileConfiguration>
     
    3210432104                                                Name="VCCLCompilerTool"
    3210532105                                                UsePrecompiledHeader="0"
    32106                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32106                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3210732107                                        />
    3210832108                                </FileConfiguration>
     
    3211332113                                                Name="VCCLCompilerTool"
    3211432114                                                UsePrecompiledHeader="0"
    32115                                                 ForcedIncludeFiles="$(NOINHERIT)"
     32115                                                ForcedIncludeFiles="$(NOINHERIT);ICUVersion.h"
    3211632116                                        />
    3211732117                                </FileConfiguration>
  • trunk/WebCore/WebCore.vcproj/WebCoreCommon.vsprops

    r63810 r63833  
    1313                PrecompiledHeaderThrough="WebCorePrefix.h"
    1414                ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
    15                 ForcedIncludeFiles="WebCorePrefix.h"
     15                ForcedIncludeFiles="WebCorePrefix.h;ICUVersion.h"
    1616        />
    1717        <Tool
  • trunk/WebKit/win/ChangeLog

    r63829 r63833  
     12010-07-20  Steve Falkenburg  <sfalken@apple.com>
     2
     3        Reviewed by Adam Roben.
     4
     5        WebKit on Windows should build optionally with an unversioned ICU DLL
     6        https://bugs.webkit.org/show_bug.cgi?id=42722
     7        <rdar://problem/8211767> WebKit needs to link against unversioned ICU
     8
     9        To get the proper value for U_DISABLE_RENAMING into all source files, we force
     10        the include of ICUVersion.h (our generated header) via the compiler options.
     11
     12        * WebKit.vcproj/WebKit.vcproj: Add forced include of ICUVersion.h.       
     13
    1142010-07-21  Adam Roben  <aroben@apple.com>
    215
  • trunk/WebKit/win/WebKit.vcproj/WebKit.vcproj

    r63151 r63833  
    4747                                ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
    4848                                DisableSpecificWarnings="4819"
    49                                 ForcedIncludeFiles="WebKitPrefix.h"
     49                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    5050                        />
    5151                        <Tool
     
    112112                                ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
    113113                                DisableSpecificWarnings="4819"
    114                                 ForcedIncludeFiles="WebKitPrefix.h"
     114                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    115115                        />
    116116                        <Tool
     
    177177                                Detect64BitPortabilityProblems="false"
    178178                                DisableSpecificWarnings="4819"
    179                                 ForcedIncludeFiles="WebKitPrefix.h"
     179                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    180180                        />
    181181                        <Tool
     
    241241                                ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
    242242                                DisableSpecificWarnings="4819"
    243                                 ForcedIncludeFiles="WebKitPrefix.h"
     243                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    244244                        />
    245245                        <Tool
     
    307307                                ProgramDataBaseFileName="$(OutDir)\$(TargetName).vc80.pdb"
    308308                                DisableSpecificWarnings="4819"
    309                                 ForcedIncludeFiles="WebKitPrefix.h"
     309                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    310310                        />
    311311                        <Tool
     
    372372                                Detect64BitPortabilityProblems="false"
    373373                                DisableSpecificWarnings="4819"
    374                                 ForcedIncludeFiles="WebKitPrefix.h"
     374                                ForcedIncludeFiles="WebKitPrefix.h;ICUVersion.h"
    375375                        />
    376376                        <Tool
  • trunk/WebKit2/ChangeLog

    r63832 r63833  
     12010-07-20  Steve Falkenburg  <sfalken@apple.com>
     2
     3        Reviewed by Adam Roben.
     4
     5        WebKit on Windows should build optionally with an unversioned ICU DLL
     6        https://bugs.webkit.org/show_bug.cgi?id=42722
     7        <rdar://problem/8211767> WebKit needs to link against unversioned ICU
     8
     9        To get the proper value for U_DISABLE_RENAMING into all source files, we force
     10        the include of ICUVersion.h (our generated header) via the compiler options.
     11
     12        Since the versioned and unversioned ICU have different filenames (libicuuc.lib vs icuuc.lib)
     13        we copy the ICU lib to an intermediate location under obj with a common name. This
     14        allows us to link properly with either without adding a new build configuration.
     15
     16        * win/WebKit2Common.vsprops:
     17        Copy ICU libs into a common location with a common name.
     18        Add additional library search path to pick up icu lib.
     19        Change ICU library filename specified to linker.
     20        Add forced include of ICUVersion.h.       
     21
    1222010-07-21  Adam Roben  <aroben@apple.com>
    223
  • trunk/WebKit2/win/WebKit2Common.vsprops

    r63438 r63833  
    1212                PrecompiledHeaderThrough="WebKit2Prefix.h"
    1313                DisableSpecificWarnings="4819"
    14                 ForcedIncludeFiles="WebKit2Prefix.h"
     14                ForcedIncludeFiles="WebKit2Prefix.h;ICUVersion.h"
    1515        />
    1616        <Tool
    1717                Name="VCLinkerTool"
    18                 AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib icuin$(LibraryConfigSuffix).lib icuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitLib$(WebKitConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib msimg32.lib crypt32.lib iphlpapi.lib winmm.lib comsuppw.lib rpcrt4.lib"
     18                AdditionalDependencies="delayimp.lib kernel32.lib user32.lib gdi32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib usp10.lib comctl32.lib version.lib shlwapi.lib libxml2$(LibraryConfigSuffix).lib libxslt$(LibraryConfigSuffix).lib libicuin$(LibraryConfigSuffix).lib libicuuc$(LibraryConfigSuffix).lib SQLite3$(LibraryConfigSuffix).lib pthreadVC2$(LibraryConfigSuffix).lib JavaScriptCore$(WebKitDLLConfigSuffix).lib WebCore$(WebKitConfigSuffix).lib WebKitLib$(WebKitConfigSuffix).lib WebKitGUID$(WebKitConfigSuffix).lib msimg32.lib crypt32.lib iphlpapi.lib winmm.lib comsuppw.lib rpcrt4.lib"
    1919                OutputFile="$(OutDir)\$(ProjectName)$(WebKitDLLConfigSuffix).dll"
     20                AdditionalLibraryDirectories="&quot;$(IntDir)\lib&quot;"
    2021                DelayLoadDLLs="usp10.dll;comctl32.dll;version.dll;libxslt$(LibraryConfigSuffix).dll;SQLite3$(LibraryConfigSuffix).dll;msimg32.dll;iphlpapi.dll"
    2122        />
     
    2930        />
    3031        <Tool
     32                Name="VCPreLinkEventTool"
     33                CommandLine="mkdir 2&gt;NUL &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\icuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuuc$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;if exist &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; copy /y &quot;$(WebKitLibrariesDir)\lib\libicuin$(LibraryConfigSuffix).lib&quot; &quot;$(IntDir)\lib&quot;&#x0D;&#x0A;&#x0D;&#x0A;cmd /c&#x0D;&#x0A;"
     34        />
     35        <Tool
    3136                Name="VCResourceCompilerTool"
    3237                AdditionalIncludeDirectories="$(WebKitOutputDir)\obj\WebKit2\"
Note: See TracChangeset for help on using the changeset viewer.