[chromium-dev] WebContents is dead, long live TabContents!

2009-04-24 Thread Brett Wilson

I just moved the remaining methods from WebContents to TabContents. I
kept the methods and data members the same, just merged the classes,
so it should be easy to find what you're looking for (or to resolve
conflicts if you have local changes to web_contents.cc). Hopefully
this will make the complexity in this area much more manageable.

We still have a shell class called WebContents (derived from
TabContents) and references to it, which are temporary so I don't have
to immediately change all references to it. It will hopefully soon go
away.


FAQ: Why did we do this?

Chromium 1 used a variety of specialized tab contents types which we
wrote native interfaces for. This included the history and downloads
page. TabContents was the base class providing shared functionality
and an external API, and there were a variety of subclasses for the
different tab types. WebContents was the TabContents specialization
for web pages.

There were several problems with this. The original idea is that our
native UI would be more awesome than a web page could ever be. But it
turned out to be teh suck because a variety of things didn't work
(find in page, printing, selection) and because we didn't end up doing
anything fancy in there anyway. With native UI, we would have to write
it again for every platform, which nobody was excited about doing.
There were also very difficult bugs associated with switching tab
contents types. For example, in Chromium 1, if you go to the history
page, navigate to a regular web page, go back, then navigate to a
different regular web page, you would see a flash of the first web
page during the second transition. This was the tab contents types
being switched between a HistoryContents and a previously-used
WebContents.

So now we only display web pages inside tabs. This makes the switching
problem go away. Glen rewrote history and downloads we be special web
pages with additional permissions, and I did a whole heckuva lof of
refactoring to delete all the old TabContents switching. We still swap
RenderViewHosts inside the TabContents when we need to switch
processes.

Brett

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: WebContents is dead, long live TabContents!

2009-04-24 Thread Ben Goodger (Google)

Hooray! Ding dong the witch is dead! Congrats for finally reaching the
end of this.

-Ben

On Thu, Apr 23, 2009 at 11:02 PM, Brett Wilson bre...@chromium.org wrote:

 I just moved the remaining methods from WebContents to TabContents. I
 kept the methods and data members the same, just merged the classes,
 so it should be easy to find what you're looking for (or to resolve
 conflicts if you have local changes to web_contents.cc). Hopefully
 this will make the complexity in this area much more manageable.

 We still have a shell class called WebContents (derived from
 TabContents) and references to it, which are temporary so I don't have
 to immediately change all references to it. It will hopefully soon go
 away.


 FAQ: Why did we do this?

 Chromium 1 used a variety of specialized tab contents types which we
 wrote native interfaces for. This included the history and downloads
 page. TabContents was the base class providing shared functionality
 and an external API, and there were a variety of subclasses for the
 different tab types. WebContents was the TabContents specialization
 for web pages.

 There were several problems with this. The original idea is that our
 native UI would be more awesome than a web page could ever be. But it
 turned out to be teh suck because a variety of things didn't work
 (find in page, printing, selection) and because we didn't end up doing
 anything fancy in there anyway. With native UI, we would have to write
 it again for every platform, which nobody was excited about doing.
 There were also very difficult bugs associated with switching tab
 contents types. For example, in Chromium 1, if you go to the history
 page, navigate to a regular web page, go back, then navigate to a
 different regular web page, you would see a flash of the first web
 page during the second transition. This was the tab contents types
 being switched between a HistoryContents and a previously-used
 WebContents.

 So now we only display web pages inside tabs. This makes the switching
 problem go away. Glen rewrote history and downloads we be special web
 pages with additional permissions, and I did a whole heckuva lof of
 refactoring to delete all the old TabContents switching. We still swap
 RenderViewHosts inside the TabContents when we need to switch
 processes.

 Brett

 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread nshah

hi there,

thanks for working on getting the shared lib of libraries! I was
pointed to this work by Evan Martin as well and he pointed me to this
(http://codereview.chromium.org/88058). However I am having some
difficulty getting it to build and it errors out while building
libxml.

==
...
Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/lib/libxml2.so
Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/xmlcatalog
Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
collect2: ld returned 1 exit status
scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/xmlcatalog] Error 1
scons: building terminated because of errors.
===

 Here are the steps that I tried:

a) first I tried to download each patch from patch set 4 and patched
the corresponding files  manually. Removed sconsbuild directory and
rebuilt. it had the same errors.

I read your instructions in Description section but I did not
understand where exactly I need to make changes to exclude and include
those files. I looked at all_main.scons and common.gypi. it would be
really helpful if you can elaborate on those instructions.



b) I did a get latest with revision 14166 by using following command:
CHROMIUM_ROOT$ gclient sync --revision s...@14166

(chromium root = directory that has src directory in it).


Let me know what steps I might be missing. Another point I want to add
is that I have followed the instructions in 'Staying Green more of the
time' section of getting code on chrome wiki for linux developers, if
that matters any.

Thanks,

On Apr 21, 8:21 pm, Steven Knight s...@chromium.org wrote:
 The gyp build can generate shared libraries on Linux (as of r14166).

 You can set up to use shared libraries by setting the GYP_DEFINES variable
 as follows:

 $ export GYP_DEFINES='library=shared_library'
 $ gclient runhooks --force

 If it's not set when you run gclient, it will silently generate .scons
 files that build with static libraries, of course, so put it in your
 .profile or .bashrc or whatever suits.

 As an alternative to an environment variable, put the following text in the
 ~/.gyp/include.gypi startup file in your home directory:

 {
   'variables': {
     'library': 'shared_library',
   },

 }

 Note that you *can* build shared and static in the same tree by switching
 back and forth (the shared object files will have a different suffix), but
 the .a and .so files get built in the same sconsbuild/{Debug,Release}/lib
 directory.  This can throw you for a loop if the linker decides to use an
 old .so in preference to the new .a you just built, so it's safer to clean
 things out (at least the lib/ subdirectory, anyway).

         --SK
--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Dean McNamee

Looks like it's missing -ldl, but I haven't looked closely.

On Fri, Apr 24, 2009 at 12:57 PM, nshah nidhi.kejri...@gmail.com wrote:

 hi there,

 thanks for working on getting the shared lib of libraries! I was
 pointed to this work by Evan Martin as well and he pointed me to this
 (http://codereview.chromium.org/88058). However I am having some
 difficulty getting it to build and it errors out while building
 libxml.

 ==
 ...
 Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
 Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so
 Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/xmlcatalog
 Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
 Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
 Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 scons: building terminated because of errors.
 ===

  Here are the steps that I tried:

 a) first I tried to download each patch from patch set 4 and patched
 the corresponding files  manually. Removed sconsbuild directory and
 rebuilt. it had the same errors.

 I read your instructions in Description section but I did not
 understand where exactly I need to make changes to exclude and include
 those files. I looked at all_main.scons and common.gypi. it would be
 really helpful if you can elaborate on those instructions.



 b) I did a get latest with revision 14166 by using following command:
 CHROMIUM_ROOT$ gclient sync --revision s...@14166

 (chromium root = directory that has src directory in it).


 Let me know what steps I might be missing. Another point I want to add
 is that I have followed the instructions in 'Staying Green more of the
 time' section of getting code on chrome wiki for linux developers, if
 that matters any.

 Thanks,

 On Apr 21, 8:21 pm, Steven Knight s...@chromium.org wrote:
 The gyp build can generate shared libraries on Linux (as of r14166).

 You can set up to use shared libraries by setting the GYP_DEFINES variable
 as follows:

 $ export GYP_DEFINES='library=shared_library'
 $ gclient runhooks --force

 If it's not set when you run gclient, it will silently generate .scons
 files that build with static libraries, of course, so put it in your
 .profile or .bashrc or whatever suits.

 As an alternative to an environment variable, put the following text in the
 ~/.gyp/include.gypi startup file in your home directory:

 {
   'variables': {
     'library': 'shared_library',
   },

 }

 Note that you *can* build shared and static in the same tree by switching
 back and forth (the shared object files will have a different suffix), but
 the .a and .so files get built in the same sconsbuild/{Debug,Release}/lib
 directory.  This can throw you for a loop if the linker decides to use an
 old .so in preference to the new .a you just built, so it's safer to clean
 things out (at least the lib/ subdirectory, anyway).

         --SK
 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Dean McNamee

The obvious fix would be to add -ldl, but I don't see why libxml
should be using it...

From a quick peek at the code, I saw xmlmodules.c using dlerror / etc
for dynamic module support.  Since libxml is running sandboxed, do we
really want dynamic module support?

In specific, it seems like we have LIBXML_MODULES_ENABLED defined in
our xmlversion.h...

On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com wrote:

 This group is very impressive, always so quick in reply!
 Thanks for quick reply!
 I did hammer --verbose and here is the command if that helps:

 cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base
  ../chrome/tools/build/linux/version.sh
 file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 global_intermediate/base/file_version_info_linux.h
 flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/
 dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/
 Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/
 v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end-
 group
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-tibetan.os -c -
 m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse -I/
 usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -DTOOLKIT_GTK=1 -
 D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
 ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
 harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
 scons: building terminated because of errors.

 On Apr 24, 7:41 am, Dean McNamee de...@chromium.org wrote:
 Looks like it's missing -ldl, but I haven't looked closely.

 On Fri, Apr 24, 2009 at 12:57 PM, nshah nidhi.kejri...@gmail.com wrote:

  hi there,

  thanks for working on getting the shared lib of libraries! I was
  pointed to this work by Evan Martin as well and he pointed me to this
  (http://codereview.chromium.org/88058). However I am having some
  difficulty getting it to build and it errors out while building
  libxml.

  ==
  ...
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/xmlcatalog
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
  collect2: ld returned 1 exit status
  scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/xmlcatalog] Error 1
  scons: building terminated because of errors.
  ===

   Here are the steps that I tried:

  a) first I tried to download each patch from patch set 4 and patched
  the 

[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread nshah

could you please tell me what files I have to modify to add -ldl ?

When I do command line with -ldl option it goes without error but the
automated build using hammer is obviously regenerating some files that
still miss -ldl option.

Thanks,

On Apr 24, 8:26 am, Dean McNamee de...@chromium.org wrote:
 The obvious fix would be to add -ldl, but I don't see why libxml
 should be using it...

 From a quick peek at the code, I saw xmlmodules.c using dlerror / etc
 for dynamic module support.  Since libxml is running sandboxed, do we
 really want dynamic module support?

 In specific, it seems like we have LIBXML_MODULES_ENABLED defined in
 our xmlversion.h...

 On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com wrote:

  This group is very impressive, always so quick in reply!
  Thanks for quick reply!
  I did hammer --verbose and here is the command if that helps:

  cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base
   ../chrome/tools/build/linux/version.sh
  file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
  chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
  global_intermediate/base/file_version_info_linux.h
  flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/
  chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/
  dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/
  Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
  chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/
  v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
  third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end-
  group
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
  collect2: ld returned 1 exit status
  scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/xmlcatalog] Error 1
  gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-tibetan.os -c -
  m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse -I/
  usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -DTOOLKIT_GTK=1 -
  D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
  ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
  harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
  chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
  scons: building terminated because of errors.

  On Apr 24, 7:41 am, Dean McNamee de...@chromium.org wrote:
  Looks like it's missing -ldl, but I haven't looked closely.

  On Fri, Apr 24, 2009 at 12:57 PM, nshah nidhi.kejri...@gmail.com wrote:

   hi there,

   thanks for working on getting the shared lib of libraries! I was
   pointed to this work by Evan Martin as well and he pointed me to this
   (http://codereview.chromium.org/88058). However I am having some
   difficulty getting it to build and it errors out while building
   libxml.

   ==
   ...
   Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
   src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
   Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so
   Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/xmlcatalog
   Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
   src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
   Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
   src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
   Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
   src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to 

[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Craig Schlenter

Hi

At some point I had used -ldl in the xml gyp file but then I dropped
that when I purely
targeted chrome and not any of the other targets ... in fact I haven't
even tried building
the other targets for a while so it's quite possible that they won't
build as shared targets.

Try
hammer app
and see if that works or add '-ldl' after '-lm' in libxml.gyp near the
xmlcatalog stuff.

Thanks!

--Craig

On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee de...@chromium.org wrote:

 The obvious fix would be to add -ldl, but I don't see why libxml
 should be using it...

 From a quick peek at the code, I saw xmlmodules.c using dlerror / etc
 for dynamic module support.  Since libxml is running sandboxed, do we
 really want dynamic module support?

 In specific, it seems like we have LIBXML_MODULES_ENABLED defined in
 our xmlversion.h...

 On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com wrote:

 This group is very impressive, always so quick in reply!
 Thanks for quick reply!
 I did hammer --verbose and here is the command if that helps:

 cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base
  ../chrome/tools/build/linux/version.sh
 file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 global_intermediate/base/file_version_info_linux.h
 flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/
 dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/
 Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/
 v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end-
 group
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-tibetan.os -c -
 m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse -I/
 usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -DTOOLKIT_GTK=1 -
 D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
 ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
 harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
 scons: building terminated because of errors.

 On Apr 24, 7:41 am, Dean McNamee de...@chromium.org wrote:
 Looks like it's missing -ldl, but I haven't looked closely.

 On Fri, Apr 24, 2009 at 12:57 PM, nshah nidhi.kejri...@gmail.com wrote:

  hi there,

  thanks for working on getting the shared lib of libraries! I was
  pointed to this work by Evan Martin as well and he pointed me to this
  (http://codereview.chromium.org/88058). However I am having some
  difficulty getting it to build and it errors out while building
  libxml.

  ==
  ...
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/xmlcatalog
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
  /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
  

[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Craig Schlenter

Hmmm ... actually it seems as if -ldl is present in
third_party/libxml/libxml.gyp ... so take a look if it's there for you
and run gclient sync if it isn't. Try running gclient runhooks --force
if none of the other things work. Perhaps your scons files have not
been updated properly.

--Craig

On Fri, Apr 24, 2009 at 3:05 PM, Craig Schlenter
craig.schlen...@gmail.com wrote:
 Hi

 At some point I had used -ldl in the xml gyp file but then I dropped
 that when I purely
 targeted chrome and not any of the other targets ... in fact I haven't
 even tried building
 the other targets for a while so it's quite possible that they won't
 build as shared targets.

 Try
 hammer app
 and see if that works or add '-ldl' after '-lm' in libxml.gyp near the
 xmlcatalog stuff.

 Thanks!

 --Craig

 On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee de...@chromium.org wrote:

 The obvious fix would be to add -ldl, but I don't see why libxml
 should be using it...

 From a quick peek at the code, I saw xmlmodules.c using dlerror / etc
 for dynamic module support.  Since libxml is running sandboxed, do we
 really want dynamic module support?

 In specific, it seems like we have LIBXML_MODULES_ENABLED defined in
 our xmlversion.h...

 On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com wrote:

 This group is very impressive, always so quick in reply!
 Thanks for quick reply!
 I did hammer --verbose and here is the command if that helps:

 cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base
  ../chrome/tools/build/linux/version.sh
 file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 global_intermediate/base/file_version_info_linux.h
 flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/
 dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/
 Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/
 v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end-
 group
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-tibetan.os -c -
 m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse -I/
 usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -DTOOLKIT_GTK=1 -
 D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
 ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
 harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
 scons: building terminated because of errors.

 On Apr 24, 7:41 am, Dean McNamee de...@chromium.org wrote:
 Looks like it's missing -ldl, but I haven't looked closely.

 On Fri, Apr 24, 2009 at 12:57 PM, nshah nidhi.kejri...@gmail.com wrote:

  hi there,

  thanks for working on getting the shared lib of libraries! I was
  pointed to this work by Evan Martin as well and he pointed me to this
  (http://codereview.chromium.org/88058). However I am having some
  difficulty getting it to build and it errors out while building
  libxml.

  ==
  ...
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/lib/libxml2.so
  Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
  sconsbuild/Debug/xmlcatalog
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os
  Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
  src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os
  

[chromium-dev] Re: Progress indicator for mini_installer on Windows

2009-04-24 Thread Robert Dailey
On Fri, Apr 24, 2009 at 2:40 AM, Mark Larson (Google) m...@chromium.orgwrote:



 On Thu, Apr 23, 2009 at 22:40, Robert Dailey rcdai...@gmail.com wrote:

 Filed a feature request:
 http://code.google.com/p/chromium/issues/detail?id=10955


 My response to the bug (closed WontFix):

 mini_installer can never have a UI. It needs to remain silent for automatic
 updates.
 In some cases it may get launched from a system service that does not have
 an
 interactive desktop, so it cannot have UI.

 Perhaps a third-party Chromium updater is what you're looking for:
 http://www.google.com/search?q=chromium+nightly+installer

 Or just wait for the hourglass cursor to go away after you double-click
 mini_installer.exe.

 I don't want to invest in building, testing, and archiving a separate
 installer for
 the continuous builds. They're not production-ready, and I will make no
 commitments
 to keeping them so.


Sounds understandable. Thanks for taking the time to review my request. I
really appreciate it.

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread nshah

ok , so building chrome terminated with this error.

scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/lib/libglue.so] Source file: /home/dev/
ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
WebKit/WebCore/Configurations/Version.xcconfig is static and is not
compatible with shared target: /home/dev/ProgramFiles/v8/home/chrome-
svn/tarball/chromium/src/sconsbuild/Debug/lib/libglue.so
scons: building terminated because of errors.

I know you have instruction in your Description to remove the
Version.xcconfig file so I removed it from that directory. (is it
remove from directory or remove from config file? please let me know
which file if it is config file). However removing from directory gave
this error:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
src/sconsbuild/Debug/obj/webkit/glue/intermediate/webkit_version.h]
Source `/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
sconsbuild/Debug/obj/third_party/WebKit/WebCore/Configurations/
Version.xcconfig' not found, needed by target `/home/dev/ProgramFiles/
v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/webkit/
glue/intermediate/webkit_version.h'.
scons: building terminated because of errors.

Thanks,
Nidhi



On Apr 24, 9:55 am, nshah nidhi.kejri...@gmail.com wrote:
 actully I saw it there but then I was not sure if it needs another
 condition block for shared_library but before asking you again I
 wanted to try to build chrome (hammer app) and see if that works as
 you suggested.

 Thanks!
 Nidhi

 On Apr 24, 9:16 am, Craig Schlenter craig.schlen...@gmail.com wrote:

  Hmmm ... actually it seems as if -ldl is present in
  third_party/libxml/libxml.gyp ... so take a look if it's there for you
  and run gclient sync if it isn't. Try running gclient runhooks --force
  if none of the other things work. Perhaps your scons files have not
  been updated properly.

  --Craig

  On Fri, Apr 24, 2009 at 3:05 PM, Craig Schlenter

  craig.schlen...@gmail.com wrote:
   Hi

   At some point I had used -ldl in the xml gyp file but then I dropped
   that when I purely
   targeted chrome and not any of the other targets ... in fact I haven't
   even tried building
   the other targets for a while so it's quite possible that they won't
   build as shared targets.

   Try
   hammer app
   and see if that works or add '-ldl' after '-lm' in libxml.gyp near the
   xmlcatalog stuff.

   Thanks!

   --Craig

   On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee de...@chromium.org wrote:

   The obvious fix would be to add -ldl, but I don't see why libxml
   should be using it...

   From a quick peek at the code, I saw xmlmodules.c using dlerror / etc
   for dynamic module support.  Since libxml is running sandboxed, do we
   really want dynamic module support?

   In specific, it seems like we have LIBXML_MODULES_ENABLED defined in
   our xmlversion.h...

   On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com wrote:

   This group is very impressive, always so quick in reply!
   Thanks for quick reply!
   I did hammer --verbose and here is the command if that helps:

   cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base
../chrome/tools/build/linux/version.sh
   file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
   chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
   global_intermediate/base/file_version_info_linux.h
   flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/
   chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/
   dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/
   Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
   chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/
   v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
   third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end-
   group
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
   /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
   collect2: ld returned 1 exit status
   scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
   src/sconsbuild/Debug/xmlcatalog] Error 1
   gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
   

[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Craig Schlenter

Actually all the targets work ... Steven fixed them all and I just  
hadn't realised that so the hammer app thing and my earlier rambling  
is ignorable. I see from your other mail that you are using the  
tarball though so I'd recommend trying to sync up with the current svn  
trunk. It should all work there. Also you must do the gclient runhooks  
--force thing ...

I might be on #chromium later ... Drop by if you're still having  
trouble. That's easier than trying to solve it here...

--Craig

On 24 Apr 2009, at 15:55, nshah nidhi.kejri...@gmail.com wrote:


 actully I saw it there but then I was not sure if it needs another
 condition block for shared_library but before asking you again I
 wanted to try to build chrome (hammer app) and see if that works as
 you suggested.

 Thanks!
 Nidhi

 On Apr 24, 9:16 am, Craig Schlenter craig.schlen...@gmail.com wrote:
 Hmmm ... actually it seems as if -ldl is present in
 third_party/libxml/libxml.gyp ... so take a look if it's there for  
 you
 and run gclient sync if it isn't. Try running gclient runhooks -- 
 force
 if none of the other things work. Perhaps your scons files have not
 been updated properly.

 --Craig

 On Fri, Apr 24, 2009 at 3:05 PM, Craig Schlenter

 craig.schlen...@gmail.com wrote:
 Hi

 At some point I had used -ldl in the xml gyp file but then I dropped
 that when I purely
 targeted chrome and not any of the other targets ... in fact I  
 haven't
 even tried building
 the other targets for a while so it's quite possible that they won't
 build as shared targets.

 Try
 hammer app
 and see if that works or add '-ldl' after '-lm' in libxml.gyp near  
 the
 xmlcatalog stuff.

 Thanks!

 --Craig

 On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee de...@chromium.org  
 wrote:

 The obvious fix would be to add -ldl, but I don't see why libxml
 should be using it...

 From a quick peek at the code, I saw xmlmodules.c using dlerror /  
 etc
 for dynamic module support.  Since libxml is running sandboxed,  
 do we
 really want dynamic module support?

 In specific, it seems like we have LIBXML_MODULES_ENABLED defined  
 in
 our xmlversion.h...

 On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com  
 wrote:

 This group is very impressive, always so quick in reply!
 Thanks for quick reply!
 I did hammer --verbose and here is the command if that helps:

 cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ 
 src/base
  ../chrome/tools/build/linux/version.sh
 file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 global_intermediate/base/file_version_info_linux.h
 flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ 
 src/
 sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/ 
 home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/ 
 home/
 dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ 
 sconsbuild/
 Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/ 
 tarball/
 chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ 
 ProgramFiles/
 v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 - 
 Wl,--end-
 group
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/ 
 chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/ 
 chromium/src/
 sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz- 
 tibetan.os -c -
 m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse  
 -I/
 usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD - 
 DTOOLKIT_GTK=1 -
 D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/ 
 chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
 ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
 harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
 scons: building terminated because of errors.

 On Apr 24, 7:41 am, Dean McNamee de...@chromium.org wrote:
 Looks like it's missing -ldl, but I haven't looked closely.

 On Fri, Apr 24, 2009 at 12:57 PM, nshah  
 nidhi.kejri...@gmail.com wrote:

 hi there,

 thanks for working on getting the shared lib of libraries! I was
 pointed to this work by Evan Martin as well and he pointed me  
 to this
 (http://codereview.chromium.org/88058). However I am 

[chromium-dev] Re: gyp shared library builds on Linux

2009-04-24 Thread Dean McNamee

Just to follow up explicitly to what Craig said, you should do
something like the following, and make sure there are no errors:

# Clobber
rm -rf sconsbuild
# Make sure everything is up to date
gclient sync --force
# Make sure the scons files were regenerated from the gyp files
gclient runhooks --force

On Fri, Apr 24, 2009 at 4:50 PM, Craig Schlenter
craig.schlen...@gmail.com wrote:

 Actually all the targets work ... Steven fixed them all and I just
 hadn't realised that so the hammer app thing and my earlier rambling
 is ignorable. I see from your other mail that you are using the
 tarball though so I'd recommend trying to sync up with the current svn
 trunk. It should all work there. Also you must do the gclient runhooks
 --force thing ...

 I might be on #chromium later ... Drop by if you're still having
 trouble. That's easier than trying to solve it here...

 --Craig

 On 24 Apr 2009, at 15:55, nshah nidhi.kejri...@gmail.com wrote:


 actully I saw it there but then I was not sure if it needs another
 condition block for shared_library but before asking you again I
 wanted to try to build chrome (hammer app) and see if that works as
 you suggested.

 Thanks!
 Nidhi

 On Apr 24, 9:16 am, Craig Schlenter craig.schlen...@gmail.com wrote:
 Hmmm ... actually it seems as if -ldl is present in
 third_party/libxml/libxml.gyp ... so take a look if it's there for
 you
 and run gclient sync if it isn't. Try running gclient runhooks --
 force
 if none of the other things work. Perhaps your scons files have not
 been updated properly.

 --Craig

 On Fri, Apr 24, 2009 at 3:05 PM, Craig Schlenter

 craig.schlen...@gmail.com wrote:
 Hi

 At some point I had used -ldl in the xml gyp file but then I dropped
 that when I purely
 targeted chrome and not any of the other targets ... in fact I
 haven't
 even tried building
 the other targets for a while so it's quite possible that they won't
 build as shared targets.

 Try
 hammer app
 and see if that works or add '-ldl' after '-lm' in libxml.gyp near
 the
 xmlcatalog stuff.

 Thanks!

 --Craig

 On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee de...@chromium.org
 wrote:

 The obvious fix would be to add -ldl, but I don't see why libxml
 should be using it...

 From a quick peek at the code, I saw xmlmodules.c using dlerror /
 etc
 for dynamic module support.  Since libxml is running sandboxed,
 do we
 really want dynamic module support?

 In specific, it seems like we have LIBXML_MODULES_ENABLED defined
 in
 our xmlversion.h...

 On Fri, Apr 24, 2009 at 2:18 PM, nshah nidhi.kejri...@gmail.com
 wrote:

 This group is very impressive, always so quick in reply!
 Thanks for quick reply!
 I did hammer --verbose and here is the command if that helps:

 cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/base
  ../chrome/tools/build/linux/version.sh
 file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 global_intermediate/base/file_version_info_linux.h
 flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/
 src/
 sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/
 home/
 chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/
 home/
 dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/
 Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/
 tarball/
 chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/
 ProgramFiles/
 v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/
 third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -
 Wl,--end-
 group
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen'
 /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/
 sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose'
 collect2: ld returned 1 exit status
 scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/
 src/sconsbuild/Debug/xmlcatalog] Error 1
 gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/
 sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-
 tibetan.os -c -
 m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse
 -I/
 usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -
 DTOOLKIT_GTK=1 -
 D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/
 src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/
 ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/
 harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/
 chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c
 scons: building terminated because of errors.

 On Apr 24, 7:41 am, Dean McNamee 

[chromium-dev] Re: WebContents is dead, long live TabContents!

2009-04-24 Thread Erik Kay

woot!

On Thu, Apr 23, 2009 at 11:02 PM, Brett Wilson bre...@chromium.org wrote:

 I just moved the remaining methods from WebContents to TabContents. I
 kept the methods and data members the same, just merged the classes,
 so it should be easy to find what you're looking for (or to resolve
 conflicts if you have local changes to web_contents.cc). Hopefully
 this will make the complexity in this area much more manageable.

 We still have a shell class called WebContents (derived from
 TabContents) and references to it, which are temporary so I don't have
 to immediately change all references to it. It will hopefully soon go
 away.


 FAQ: Why did we do this?

 Chromium 1 used a variety of specialized tab contents types which we
 wrote native interfaces for. This included the history and downloads
 page. TabContents was the base class providing shared functionality
 and an external API, and there were a variety of subclasses for the
 different tab types. WebContents was the TabContents specialization
 for web pages.

 There were several problems with this. The original idea is that our
 native UI would be more awesome than a web page could ever be. But it
 turned out to be teh suck because a variety of things didn't work
 (find in page, printing, selection) and because we didn't end up doing
 anything fancy in there anyway. With native UI, we would have to write
 it again for every platform, which nobody was excited about doing.
 There were also very difficult bugs associated with switching tab
 contents types. For example, in Chromium 1, if you go to the history
 page, navigate to a regular web page, go back, then navigate to a
 different regular web page, you would see a flash of the first web
 page during the second transition. This was the tab contents types
 being switched between a HistoryContents and a previously-used
 WebContents.

 So now we only display web pages inside tabs. This makes the switching
 problem go away. Glen rewrote history and downloads we be special web
 pages with additional permissions, and I did a whole heckuva lof of
 refactoring to delete all the old TabContents switching. We still swap
 RenderViewHosts inside the TabContents when we need to switch
 processes.

 Brett

 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: WebContents is dead, long live TabContents!

2009-04-24 Thread Elliot Glaysher (Chromium)

Congrts, Brett!

-- Erg.

On Fri, Apr 24, 2009 at 9:15 AM, Erik Kay erik...@chromium.org wrote:

 woot!

 On Thu, Apr 23, 2009 at 11:02 PM, Brett Wilson bre...@chromium.org wrote:

 I just moved the remaining methods from WebContents to TabContents. I
 kept the methods and data members the same, just merged the classes,
 so it should be easy to find what you're looking for (or to resolve
 conflicts if you have local changes to web_contents.cc). Hopefully
 this will make the complexity in this area much more manageable.

 We still have a shell class called WebContents (derived from
 TabContents) and references to it, which are temporary so I don't have
 to immediately change all references to it. It will hopefully soon go
 away.


 FAQ: Why did we do this?

 Chromium 1 used a variety of specialized tab contents types which we
 wrote native interfaces for. This included the history and downloads
 page. TabContents was the base class providing shared functionality
 and an external API, and there were a variety of subclasses for the
 different tab types. WebContents was the TabContents specialization
 for web pages.

 There were several problems with this. The original idea is that our
 native UI would be more awesome than a web page could ever be. But it
 turned out to be teh suck because a variety of things didn't work
 (find in page, printing, selection) and because we didn't end up doing
 anything fancy in there anyway. With native UI, we would have to write
 it again for every platform, which nobody was excited about doing.
 There were also very difficult bugs associated with switching tab
 contents types. For example, in Chromium 1, if you go to the history
 page, navigate to a regular web page, go back, then navigate to a
 different regular web page, you would see a flash of the first web
 page during the second transition. This was the tab contents types
 being switched between a HistoryContents and a previously-used
 WebContents.

 So now we only display web pages inside tabs. This makes the switching
 problem go away. Glen rewrote history and downloads we be special web
 pages with additional permissions, and I did a whole heckuva lof of
 refactoring to delete all the old TabContents switching. We still swap
 RenderViewHosts inside the TabContents when we need to switch
 processes.

 Brett

 


 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Crossplatform ProcessSingleton and ChromeBrowserProcessId()

2009-04-24 Thread Никита Офицеров

There are now different platform-dependent ways to ensure that only
one instance of Chrome is running, and to get its pid.
I think that there is a way of accomplishing both goals in a
cross-platform way, reusing existing IPC system.
I'll try to explain how IMO things are now, and why this might be not
the best way:

Now:
1. Windows
Hidden top-level window is used for getting Chrome pid and IPC on
startup. This is actually reinventing IPC over window messages with
custom protocol.
2. Linux
UNIX socket is used for IPC on startup, and fuser program is launched
on it to get the pid - IMHO not the best way to do it.
3. Mac
There is now ProcessSingleton on Mac, as it's not needed. Some hack on
ps output is used to get the pid.

So there are 3 different implementations, and not very optimal ones.

Same effect could be acieved by this method:
Don't try to get pid dynamically, but create on startup in datadir
file 'ChromePid' or something like that with pid. Also, create an IPC
channel with channel_id equal to pid with forced FIFO mode on POSIX.
Current POSIX implementation should be modified to allow this and to
store socket in datadir, not in /var/tmp. Then ProcessSingleton check
would be simple and crossplatform: find pid file, read pid, connect to
channel, send some message and wait for response.

This eliminates all differences between platforms in
process_singleton_* and chrome_process_util_*.
What do you think?

Nikita Ofitserov

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Suggestion for crossplatform ProcessSingleton and ChromeBrowserProcessId()

2009-04-24 Thread Nikita Ofitserov

Currently there are different implementations of ProcessSingleton and
ChromeBrowserProcessId() on Windows, Linux and Mac. Most of them are
quite hacky, so there should be a better way. I think current IPC
system with slight modifications can replace them all.

Now:
1. Windows
Hidden top-level window is used for getting Chrome pid and IPC on
startup.
2. Linux
UNIX socket is used for IPC on startup, and fuser program is launched
on it to
get the pid - IMHO not the best way to do it.
3. Mac
There is no ProcessSingleton on Mac, as it's not needed. Chrome pid
comes out of some hack with ps output.

I suggest:
Don't try to get pid dynamically, but create on startup in datadir
file 'ChromePid' or something like that with pid. Also, create an IPC
channel with channel_id equal to pid with forced FIFO mode on POSIX.
Current POSIX implementation should be modified to allow this and to
store socket in datadir, not in /var/tmp. Then ProcessSingleton check
would be simple and crossplatform: find pid file, read pid, connect to
channel, send some message and wait for response.

This eliminates all differences between platforms in
process_singleton_* and chrome_process_util_*.
What do you think?

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: Suggestion for crossplatform ProcessSingleton and ChromeBrowserProcessId()

2009-04-24 Thread Peter Kasting
On Thu, Apr 23, 2009 at 1:35 PM, Nikita Ofitserov himi...@gmail.com wrote:

 I suggest:
 Don't try to get pid dynamically, but create on startup in datadir
 file 'ChromePid' or something like that with pid.


Creating files during startup would slow startup too much.  Chrome crashing
would leave a stale PID file lying around, confusing future launches.

PK

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Chrome Views w/o BrowserProcessImpl?

2009-04-24 Thread Book'em Dano

Is it possible to use views without an instance of BrowserProcess or
are they very tightly coupled?
--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: Chrome Views w/o BrowserProcessImpl?

2009-04-24 Thread Ben Goodger (Google)

At present views has some dependencies on some other parts of the
browser infrastructure but I plan to sever a lot of this in the coming
month or two.

-Ben

On Fri, Apr 24, 2009 at 7:36 PM, Book'em Dano daniel.c...@gmail.com wrote:

 Is it possible to use views without an instance of BrowserProcess or
 are they very tightly coupled?
 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: Chrome Views w/o BrowserProcessImpl?

2009-04-24 Thread Book'em Dano

Okay, thanks Ben

On Apr 24, 7:38 pm, Ben Goodger (Google) b...@chromium.org wrote:
 At present views has some dependencies on some other parts of the
 browser infrastructure but I plan to sever a lot of this in the coming
 month or two.

 -Ben

 On Fri, Apr 24, 2009 at 7:36 PM, Book'em Dano daniel.c...@gmail.com wrote:

  Is it possible to use views without an instance of BrowserProcess or
  are they very tightly coupled?
--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] DO NOT ADD DEPENDENCIES FROM CHROME/VIEWS on CHROME/COMMON

2009-04-24 Thread Ben Goodger (Google)

I have noticed some of these creep in in the past couple of weeks.

DO NOT DO IT.

Or I will hunt you down.

I am trying to extract views from chrome/ and every time you do this,
it adds spaghetti to the plate and makes my life harder.

-Ben

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: DO NOT ADD DEPENDENCIES FROM CHROME/VIEWS on CHROME/COMMON

2009-04-24 Thread Aaron Boodman

Is it possible to enforce these rules with code rather than capital letters?

I don't think I've made this particular error, but it's something I
could see myself doing. From their names, chrome/common seems like a
reasonable thing to include from chrome/views.

Just a thought. Don't we have something already to enforce dependency
rules like this?

- a

On Fri, Apr 24, 2009 at 9:59 PM, Ben Goodger (Google) b...@chromium.org wrote:

 I have noticed some of these creep in in the past couple of weeks.

 DO NOT DO IT.

 Or I will hunt you down.

 I am trying to extract views from chrome/ and every time you do this,
 it adds spaghetti to the plate and makes my life harder.

 -Ben

 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: DO NOT ADD DEPENDENCIES FROM CHROME/VIEWS on CHROME/COMMON

2009-04-24 Thread Brett Wilson

On Fri, Apr 24, 2009 at 10:10 PM, Aaron Boodman a...@chromium.org wrote:

 Is it possible to enforce these rules with code rather than capital letters?

 I don't think I've made this particular error, but it's something I
 could see myself doing. From their names, chrome/common seems like a
 reasonable thing to include from chrome/views.

 Just a thought. Don't we have something already to enforce dependency
 rules like this?

The problem is that there are already some dependencies, so we can't
enforce them. The dependencies are checked on a per-directory basis. I
would like to prevent people from including browser from renderer_host
and tab_contents but can't for the same reason. We could have some
complicated exception list in the checkdeps tool, but that's much
harder than shouting on the mailing list.

Brett

--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---



[chromium-dev] Re: DO NOT ADD DEPENDENCIES FROM CHROME/VIEWS on CHROME/COMMON

2009-04-24 Thread Ben Goodger (Google)

Sadly, chrome/common sounds generic enough that it's become a place to
stash files. I'm not blameless - for some reason I put Animation
there, when it clearly belongs in views/.

Common's purpose is for files shared between two or more subdirs of
chrome where those subdirs are peers on the dependency tree.

-Ben

On Fri, Apr 24, 2009 at 10:10 PM, Aaron Boodman a...@chromium.org wrote:

 Is it possible to enforce these rules with code rather than capital letters?

 I don't think I've made this particular error, but it's something I
 could see myself doing. From their names, chrome/common seems like a
 reasonable thing to include from chrome/views.

 Just a thought. Don't we have something already to enforce dependency
 rules like this?

 - a

 On Fri, Apr 24, 2009 at 9:59 PM, Ben Goodger (Google) b...@chromium.org 
 wrote:

 I have noticed some of these creep in in the past couple of weeks.

 DO NOT DO IT.

 Or I will hunt you down.

 I am trying to extract views from chrome/ and every time you do this,
 it adds spaghetti to the plate and makes my life harder.

 -Ben

 


 


--~--~-~--~~~---~--~~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
http://groups.google.com/group/chromium-dev
-~--~~~~--~~--~--~---