Граф коммитов

1884 Коммитов

Автор SHA1 Сообщение Дата
Cheng Zhao f51a742c99 Checks Popen's return code. 2013-06-25 19:43:58 +08:00
Cheng Zhao fa1d6a39ff Treat cygwin platform as win32. 2013-06-25 15:00:09 +08:00
Cheng Zhao d3aaccf600 Fix indent. 2013-06-12 09:09:59 +08:00
Cheng Zhao f0066e1e61 Make apply-patches compatible with python 2.6.
Chromium ships binary of python 2.6 instead of 2.7.
2013-06-12 09:07:45 +08:00
Cheng Zhao a2b4049a1a Support running update script from cygwin. 2013-06-12 09:07:28 +08:00
Cheng Zhao c4343a0726 Call ninja with relative paths.
Calling the ninja script with absolute paths under cygwin would pass
posix-style paths, and would cause errors since ninja would force
calling itself under cmd.exe, which uses Windows-style paths.
2013-06-12 08:57:49 +08:00
Adam Roben f4f8a7ecad Include encryptor.lib and its symbols and headers in the distribution 2013-06-04 15:44:31 -04:00
Adam Roben 6ccef70337 Build encryptor.lib on Windows
This isn't included as part of chromiumcontent.dll itself, but can be
used by embedding applications if desired.
2013-06-04 15:35:08 -04:00
Adam Roben ab41d78fa5 Revert all changes before building if any unexpected files are modified
This ensures that old patches aren't still applied when we build.
2013-06-04 15:34:54 -04:00
Adam Roben 582d6ea338 Export headers from cc/
These are needed by some ui/compositor/ headers.
2013-05-31 16:37:38 -04:00
Adam Roben fc02d9380a Export third_party/wtl/include headers
These are needed by any apps that want to use ui/base/win/window_impl.h.
2013-05-31 15:41:44 -04:00
Adam Roben bb75d9cd49 Export test_support_base.pdb and test_support_content.pdb 2013-05-30 16:07:54 -04:00
Adam Roben 04d5265a1e Fix linker errors with test_support_base on Windows 2013-05-30 16:00:07 -04:00
Adam Roben d95ca3eb4d Fix linker errors with base_prefs_test_support on Windows 2013-05-30 15:53:59 -04:00
Adam Roben 2f53a96fc6 Merge pull request #14 from brightray/latest-chromium
Update to Chromium r202921
2013-05-30 12:04:05 -07:00
Adam Roben 077811e93d Export all headers from ui/ and webkit/ 2013-05-30 14:34:29 -04:00
Adam Roben f1b88bf1d1 Export headers from third_party/WebKit/public 2013-05-30 14:21:39 -04:00
Adam Roben ed6d9c62eb Fix linker errors about v8::AssertNoGCScope on Windows
[8/9] LINK(DLL) chromiumcontent.dll
    FAILED: D:\Python27\python.exe gyp-win-tool link-wrapper environment.x86 link.exe /nologo /IMPLIB:chromiumcontent.dll.lib /DLL /OUT:chromiumcontent.dll /PDB:chromiumcontent.dll.pdb @chromiumcontent.dll.rsp && D:\Python27\python.exe gyp-win-tool manifest-wrapper environment.x86 cmd /c if exist chromiumcontent.dll.manifest del chromiumcontent.dll.manifest && D:\Python27\python.exe gyp-win-tool manifest-wrapper environment.x86 mt.exe -nologo -manifest obj\chromiumcontent\chromiumcontent.chromiumcontent.dll.intermediate.manifest -out:chromiumcontent.dll.manifest
    v8_base.ia32.lib(v8_base.ia32.api.obj) : error LNK2005: "private: __thiscall v8::AssertNoGCScope::AssertNoGCScope(class v8::Isolate *)" (??0AssertNoGCScope@v8@@AAE@PAVIsolate@1@@Z) already defined in webcore_rendering.lib(webcore_rendering.stylevisualdata.obj)

V8 is using the DEBUG macro to control how v8::AssertNoGCScope is compiled. But
not all projects define a DEBUG macro in their Debug configurations. So now we
switch V8 to use NDEBUG instead, which is used everywhere.
2013-05-30 14:07:45 -04:00
Adam Roben 8e201753a4 Export wtf and weborigin symbols 2013-05-30 14:04:07 -04:00
Adam Roben e1ab67f8c8 Update V8 target names 2013-05-30 14:04:07 -04:00
Adam Roben 0e239c601b Fix compiler errors in cc/resources/resource_update.h on Windows
FAILED: ninja -t msvc -o obj\webkit\renderer\compositor_bindings\webkit_compositor_bindings.web_external_texture_layer_impl.obj -e environment.x86 -- cl.exe /nologo /showIncludes /FC @obj\webkit\renderer\compositor_bindings\webkit_compositor_bindings.web_external_texture_layer_impl.obj.rsp /c ..\..\webkit\renderer\compositor_bindings\web_external_texture_layer_impl.cc /Foobj\webkit\renderer\compositor_bindings\webkit_compositor_bindings.web_external_texture_layer_impl.obj /Fdobj\webkit\renderer\compositor_bindings\webkit_compositor_bindings.pdb
    vendor\chromium\src\skia\ext\refptr.h(65) : error C2027: use of undefined type 'SkCanvas'
            vendor\chromium\src\third_party\skia\include\core\skdrawlooper.h(15) : see declaration of 'SkCanvas'
            vendor\chromium\src\skia\ext\refptr.h(64) : while compiling class template member function 'skia::RefPtr<T> &skia::RefPtr<T>::operator =(const skia::RefPtr<T> &)'
            with
            [
                T=SkCanvas
            ]
            vendor\chromium\src\cc\resources\resource_update.h(38) : see reference to class template instantiation 'skia::RefPtr<T>' being compiled
            with
            [
                T=SkCanvas
            ]
    vendor\chromium\src\skia\ext\refptr.h(65) : error C2227: left of '->ref' must point to class/struct/union/generic type
    vendor\chromium\src\skia\ext\refptr.h(65) : error C2027: use of undefined type 'SkCanvas'
            vendor\chromium\src\third_party\skia\include\core\skdrawlooper.h(15) : see declaration of 'SkCanvas'
    vendor\chromium\src\skia\ext\refptr.h(65) : error C2227: left of '->unref' must point to class/struct/union/generic type
2013-05-29 16:16:20 -04:00
Adam Roben 799886b8fb Update to the latest Chromium trunk revision 2013-05-29 14:50:41 -04:00
Adam Roben 0d02a8d41a Merge pull request #13 from brightray/windows-test-support
Build test_support_chromiumcontent on Windows
2013-05-29 10:06:06 -07:00
Adam Roben f82d6dc6f7 Include test support PDBs so we can debug tests 2013-05-29 13:03:24 -04:00
Adam Roben 50aad007e2 Fix linker errors with test_support_chromiumcontent.lib
We need to tell the compiler/linker to import symbols that are exported
by chromiumcontent.dll rather than trying to export them again.
2013-05-29 13:02:25 -04:00
Adam Roben ac9b29e3bc Include test_support_chromiumcontent.lib in the distribution 2013-05-29 13:02:25 -04:00
Adam Roben b5815564e9 Create test_support_chromiumcontent.lib
We use lib.exe to combine all the dependent static libraries into one.
2013-05-29 13:02:24 -04:00
Adam Roben ac0ba408fc Build test_support_chromiumcontent's dependencies on Windows
We don't build test_support_chromiumcontent itself yet.
2013-05-28 22:31:23 -04:00
Adam Roben 3cbc11e5d7 Merge pull request #12 from brightray/windows-brightray_example
Changes needed for building brightray_example on Windows
2013-05-22 12:07:58 -07:00
Adam Roben e436974fc1 Export icudt.dll for Windows clients 2013-05-22 13:46:00 -04:00
Adam Roben 015d313beb Export libGLESv2.dll on Windows 2013-05-22 13:46:00 -04:00
Adam Roben 31efc77a0e Use the DLL version of the CRT
This is required so embedding apps can pass types like std::string into
chromiumcontent.dll.

The DLL CRT seems to require exceptions to be enabled. This matches what
Chromium does for component builds.
2013-05-22 13:45:51 -04:00
Adam Roben adb6722b0f Generate libchromiumcontent-symbols.zip on Windows
PDB files required for building go into libchromiumcontent.zip. PDB
files only required for debugging go into
libchromiumcontent-symbols.zip.
2013-05-22 13:19:41 -04:00
Adam Roben 3e96be3562 Fix exporting of WebKit symbols
We had a duplicate target_definitions dictionary.
2013-05-22 13:19:21 -04:00
Adam Roben 04ccdd8d3c Export base_static.lib for Windows clients 2013-05-22 13:19:15 -04:00
Adam Roben c973a7c393 Create and export sandbox_static.lib for Windows clients
sandbox.lib isn't usable out of the box because it expects base's
symbols to be decorated with __declspec(dllexport). So we create a copy
of it that expects them to be decorated with __declspec(dllimport),
as they will be when used in a client application.
2013-05-22 13:18:41 -04:00
Adam Roben 65b85bf315 Export content/app/startup_helper_win.cc to clients
This is needed to build executables on Windows.
2013-05-20 18:08:43 -04:00
Adam Roben a927820917 Rename dist/include to dist/src
This is in preparation for including non-header files in this directory.
2013-05-20 18:08:24 -04:00
Adam Roben 15ada44da4 Include chromiumcontent.dll's import library 2013-05-16 10:06:37 -04:00
Adam Roben 105ab3f337 Export sandbox/ headers
These are needed to launch on Windows.
2013-05-16 09:52:37 -04:00
Adam Roben c8ad48154f Mention that Python is required to build 2013-05-16 08:39:40 -04:00
Adam Roben 4aae27b02c Merge pull request #11 from brightray/windows-build
Get a basic Windows build working
2013-05-16 05:14:54 -07:00
Adam Roben d2c42d3bdc Fix linker warning about _utf8_countTrailBytes_46
The warning:

    sqlite3.lib(sqlite.sqlite3.obj) : warning LNK4049: locally defined symbol _utf8_countTrailBytes_46 imported

This means that this symbol is decorated with __declspec(dllimport),
which is bad. Defining U_UTF8_IMPL fixes this problem, but causes
another error:

    third_party\icu\public\common\unicode\utf8.h(62) : error C2734: 'utf8_countTrailBytes_46' : const object must be initialized if not extern

For some reason ICU doesn't use U_CFUNC when exporting
utf8_countTrailBytes, but does use it when defining it or importing it.
Adding U_CFUNC fixes the above error, because it marks the symbol
`extern`.
2013-05-16 06:52:11 -04:00
Adam Roben b140117ec4 Get rid of ICU's global new/delete
They cause linker errors due to conflicts with the operator new/delete
defined by the CRT.
2013-05-16 06:52:11 -04:00
Adam Roben 3c9db77fbb Fix build error in dom_storage_message_filter.cc
The error was:

    FAILED: ninja -t msvc -o obj\content\browser\dom_storage\content_browser.dom_storage_message_filter.obj -e environment.x86 -- cl.exe /nologo /showIncludes /FC @obj\content\browser\dom_storage\content_browser.dom_storage_message_filter.obj.rsp /c ..\..\content\browser\dom_storage\dom_storage_message_filter.cc /Foobj\content\browser\dom_storage\content_browser.dom_storage_message_filter.obj /Fdobj\content\content_browser.pdb
    vendor\chromium\src\base\memory\ref_counted.h(239) : error C2027: use of undefined type 'dom_storage::DomStorageNamespace'

            vendor\chromium\src\webkit\dom_storage\dom_storage_context.h(36) : see declaration of 'dom_storage::DomStorageNamespace'

            vendor\chromium\src\base\memory\ref_counted.h(237) : while compiling class template member function 'scoped_refptr<T>::scoped_refptr(const scoped_refptr<T> &)'

            with

            [

                T=dom_storage::DomStorageNamespace

            ]

            vendor\chromium\src\webkit\dom_storage\dom_storage_host.h(55) : see reference to class template instantiation 'scoped_refptr<T>' being compiled

            with

            [

                T=dom_storage::DomStorageNamespace

            ]

    vendor\chromium\src\base\memory\ref_counted.h(239) : error C2227: left of '->AddRef' must point to class/struct/union/generic type

It looks like the compiler was generating a copy constructor for
DomStorageHost, so now we disallow that.
2013-05-16 06:52:11 -04:00
Adam Roben d2b38146b8 Fix build error in ppapi_decryptor.cc
We were getting the following build error on Windows:

    FAILED: ninja -t msvc -o obj\webkit\media\crypto\webkit_media.ppapi_decryptor.obj -e environment.x86 -- cl.exe /nologo /showIncludes /FC @obj\webkit\media\crypto\webkit_media.ppapi_decryptor.obj.rsp /c ..\..\webkit\media\crypto\ppapi_decryptor.cc /Foobj\webkit\media\crypto\webkit_media.ppapi_decryptor.obj /Fdobj\webkit\support\webkit_media.pdb
    vendor\chromium\src\base\memory\ref_counted.h(250) : error C2027: use of undefined type 'webkit::ppapi::PPB_Buffer_Impl'

            vendor\chromium\src\webkit\plugins\ppapi\content_decryptor_delegate.h(30) : see declaration of 'webkit::ppapi::PPB_Buffer_Impl'

            vendor\chromium\src\base\memory\ref_counted.h(248) : while compiling class template member function 'scoped_refptr<T>::~scoped_refptr(void)'

            with

            [

                T=webkit::ppapi::PPB_Buffer_Impl

            ]

            vendor\chromium\src\webkit\plugins\ppapi\content_decryptor_delegate.h(163) : see reference to class template instantiation 'scoped_refptr<T>' being compiled

            with

            [

                T=webkit::ppapi::PPB_Buffer_Impl

            ]

    vendor\chromium\src\base\memory\ref_counted.h(250) : error C2227: left of '->Release' must point to class/struct/union/generic type

I believe something about our __declspec(dllexport) declarations is
causing this to happen. We work around this by defining an out-of-line
destructor for ContentDecryptorDelegate so ppapi_decryptor.cc doesn't
have to compile its destructor.
2013-05-16 06:52:11 -04:00
Adam Roben d4cefbe638 Treat linker warnings as errors 2013-05-16 06:52:11 -04:00
Adam Roben 6d9bd8218d Turn off incremental linking
This lets us see all the linker errors at once, and gets rid of a
warning about the module being too big to link incrementally.
2013-05-15 19:03:07 -04:00
Adam Roben 85ca0f6020 Give chromiumcontent.dll a .def file
We use a wrapper around gyp-win-tool that does two things:

1. After a static library is linked, uses dumpbin.exe /directives to get
   the set of exported symbols from the static library, and saves it to
   a .lib.exports file.
2. Before linking chromiumcontent.dll, reads in all the .lib.export
   files for the .libs we're linking against and uses them to create a
   .def file that tells the linker to reexport all those symbols from
   chromiumcontent.dll.

The end result is that chromiumcontent.dll exports all public symbols
from all its static library dependencies.
2013-05-15 19:00:52 -04:00
Adam Roben 28d9c1570a Use base's dllmain.cc
This is needed to link successfully (we need a DllMain function), and
matches what chrome.dll does.
2013-05-15 17:15:36 -04:00