summaryrefslogtreecommitdiffstats
path: root/third_party/libevent
Commit message (Collapse)AuthorAgeFilesLines
* set type 'settings' to 'none' in gyp file in case using the system librobert.nagy@gmail.com2011-11-241-1/+1
| | | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/8694001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111529 0039d316-1c4b-4281-b951-d872f2087c98
* replace platform conditions with os_posix and os_bsd where applicablerobert.nagy@gmail.com2011-11-221-1/+1
| | | | | | | | | | | | | this patch also adds a comment that describes why EAI_NODATA is disabled on FreeBSD BUG= TEST= TBR=wtc Review URL: http://codereview.chromium.org/8598010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111253 0039d316-1c4b-4281-b951-d872f2087c98
* libevent: fix include styleensonic@google.com2011-11-094-6/+15
| | | | | | | | | | | We always want to include the local headers instead of eventually installed ones. Removes the workaround from the gyp build file as that is the wrong and unsafe fix. Review URL: http://codereview.chromium.org/8438070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109251 0039d316-1c4b-4281-b951-d872f2087c98
* Fourth attempt at the following. Unreviewed, this was originally reviewed ↵pkasting@chromium.org2011-09-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | in http://codereview.chromium.org/7550002 . Clean up SSL false start blacklist code. Numerous changes, including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7903016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101378 0039d316-1c4b-4281-b951-d872f2087c98
* Upstream Android change for libeventmichaelbai@google.com2011-09-125-0/+548
| | | | | | | | | | | Add proper config for Android to libevent. Enable libevent to compile without needing __linux__. BUG= TEST= Review URL: http://codereview.chromium.org/7866018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100742 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 98885 - Third attempt at the following. Unreviewed, this was ↵rsleevi@chromium.org2011-08-311-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | originally reviewed in http://codereview.chromium.org/7550002 . Clean up SSL false start blacklist code. Numerous changes, including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7804001 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/7778035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98917 0039d316-1c4b-4281-b951-d872f2087c98
* Third attempt at the following. Unreviewed, this was originally reviewed in ↵pkasting@chromium.org2011-08-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | http://codereview.chromium.org/7550002 . Clean up SSL false start blacklist code. Numerous changes, including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7804001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98885 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: fix build with system libevent.phajdan.jr@chromium.org2011-08-261-0/+1
| | | | | | | | | | | | | | The libevent gyp target is used by both #host and #target gyp targets, which are present even when not cross-compiling. Mark the system libevent as providing both. This is upstreaming a Gentoo Linux patch. BUG=none Review URL: http://codereview.chromium.org/7763005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98496 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 95907 - Clean up SSL false start blacklist code. Numerous changes, ↵mnissler@chromium.org2011-08-111-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7550002 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/7623015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96391 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 95910 - Revert 95907 - Clean up SSL false start blacklist code.pkasting@chromium.org2011-08-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that r96121 has landed, this should not cause compile failures when compiling base/ on the host. Original comments follow. Numerous changes, including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7550002 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/7529035 TBR=fischman@chromium.org Review URL: http://codereview.chromium.org/7587003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96211 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 95907 - Clean up SSL false start blacklist code. Numerous changes, ↵fischman@chromium.org2011-08-081-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | including: * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7550002 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/7529035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95910 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up SSL false start blacklist code. Numerous changes, including:pkasting@chromium.org2011-08-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | * Handle trailing dots in LastTwoLabels() as in http://codereview.chromium.org/7518035/ . Rename this function to LastTwoComponents() to match the terminology used in the RegistryControlledDomainService and elsewhere in Chrome. * Since callers are using std::string anyway, make the functions in the header take const std::string& instead of char*. This also allows doing string operations on them. * Use string operations (like find_last_of()) in place of hand-written algorithms, for brevity, clarity, and safety. * Avoid "unsigned", which the style guide forbids, and use allowed types like size_t, uint32, or int (depending on the situation). * Avoid #define and "using". * Use standard algorithms for similar reasons as using string ops. * Use file_util functions to significantly abbreviate file reading/writing code. * Use wmain() (on Windows) in combination with FilePath to avoid issues if the provided pathname has extended characters that don't flatten losslessly to the default codepage (thanks Darin for pointing out this issue). * Avoid casting where possible. Avoid some casts for printf()-style calls by using a string stream, which also allows for slightly less boilerplate. * Convert non-error uses of stderr to the chrome-standard VLOG(1). * Correctly handle hostnames with trailing dots in the input file. * In general, shorten code where possible. Because this adds a dependency on base, and ssl_false_start_blacklist_process has the "#host" specifier in net.gyp, bradnelson tells me that base and its dependencies need an explicit "host, target" toolchain list for the Linux builds to work correctly. It would be nice if we could avoid this but I guess gyp would have to be smarter or something. BUG=none TEST=none Review URL: http://codereview.chromium.org/7550002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95907 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the comments setting emands and vim tab width and expansion variables.tony@chromium.org2011-07-111-6/+0
| | | | | | | | | | | | | | | | | These were added in r28089 (http://codereview.chromium.org/256059) but are unnecessary bloat for everyone to carry around, even those that don't use emacs or vim. In an earlier change, I added editor config files in src/tools/emacs/ and src/tools/vim/ so users of the appropriate editor can source those instead. BUG=none TEST=none Review URL: http://codereview.chromium.org/7310019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92046 0039d316-1c4b-4281-b951-d872f2087c98
* Patch for Solaris support, mostly ifdefs and header files, plus adds ↵chromium@hybridsource.org2011-06-255-5/+551
| | | | | | | | | | | libevent configuration. BUG=30101 TEST=compiles Review URL: http://codereview.chromium.org/7238021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90494 0039d316-1c4b-4281-b951-d872f2087c98
* libevent: include the revision number of the previous patch now that it has ↵agl@chromium.org2011-05-311-1/+1
| | | | | | landed. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87339 0039d316-1c4b-4281-b951-d872f2087c98
* third_party/libevent: don't touch base unless needed.agl@chromium.org2011-05-312-5/+3
| | | | | | | | | | | | | | | | | See referenced bug. I'm assuming that we don't actually have active events outliving the base, but just that the accesses of the base pointer outside of the conditional were premature. This change makes it so that we don't touch the base object unless the event really is active. This suggests that there's no security problem here and the crashes are those that are hitting pages that have been unmapped. BUG=44966 TEST=Valgrind Review URL: http://codereview.chromium.org/7096012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87338 0039d316-1c4b-4281-b951-d872f2087c98
* These files were LGTM'd in a previous patch ↵chromium@hybridsource.org2011-05-271-0/+274
| | | | | | | | (http://codereview.chromium.org/3423021) but weren't committed, resubmitting them for FreeBSD support. Review URL: http://codereview.chromium.org/7076035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87099 0039d316-1c4b-4281-b951-d872f2087c98
* Final gyp patch to make use of the new cross-platform POSIX defines ↵tony@chromium.org2011-05-231-1/+1
| | | | | | | | toolkit_uses_gtk, os_posix, and use_x11. For lists of source files that use a mix of POSIX and Gtk APIs, toolkit_uses_gtk was given precedence. Solaris was made to use ALSA also, as libasound has been ported to FreeBSD and Solaris as a wrapper around the native OSS. Review URL: http://codereview.chromium.org/7055003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86352 0039d316-1c4b-4281-b951-d872f2087c98
* Globally replace <(library) with static_libraryevan@chromium.org2011-05-191-1/+1
| | | | | | | | | | | We provided <(library) as a variable to support a peculiar build configuration on Linux. We no longer support that build configuration, so we can simplify this code to no longer use a variable. Review URL: http://codereview.chromium.org/7051014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86004 0039d316-1c4b-4281-b951-d872f2087c98
* Websocket to TCP proxy running in a separate thread (only on ChromeOS).dilmah@chromium.org2011-05-102-1/+14
| | | | | | | | | | | | | | | | | | With this webproxy: authorized extensions can connect to ws://127.0.0.1:10101/tcpproxy, pass authorization_token:hostname:port: in first frame, then webproxy establishes TCP connection to hostname:port and forwards any subsequent communication. Subsequent communication between extension and webproxy is base64-encoded. TODO(dilmah): remove this temporary solution, get rid of separate thread and listening socket, instead provide the same functionality via hooks into websocket layer. BUG=chromium-os:9667 TEST=Manual Review URL: http://codereview.chromium.org/6801008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84795 0039d316-1c4b-4281-b951-d872f2087c98
* I added FreeBSD-generated config files for libevent and tcmalloc, along with ↵pvalchev@chromium.org2010-10-043-3/+8
| | | | | | | | some remaining gyp file tweaks. Review URL: http://codereview.chromium.org/3423021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61433 0039d316-1c4b-4281-b951-d872f2087c98
* Pass license check script for most of the tree.evan@chromium.org2010-03-192-1/+25
| | | | | | | | | | | | | Modified license-checker script to allow pruning directories we know to be ok. Still need to do a bit of third_party/* , as well as file a bunch of bugs on pieces where the licenses aren't clear, but I'm running out of energy. Review URL: http://codereview.chromium.org/1100003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42045 0039d316-1c4b-4281-b951-d872f2087c98
* Solaris: Second set adding in Solaris as an OS optionevan@chromium.org2010-02-181-1/+1
| | | | | | | | | | TEST=compiles BUG=30101 Patch by James Choi <jchoi42@pha.jhu.edu>. Review URL: http://codereview.chromium.org/606075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39362 0039d316-1c4b-4281-b951-d872f2087c98
* OpenBSD/FreeBSD GYP changes (most of the remaining ones)pvalchev@google.com2010-02-041-1/+1
| | | | | | Review URL: http://codereview.chromium.org/565043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38079 0039d316-1c4b-4281-b951-d872f2087c98
* Allow using system libevent instead of the bundled one.phajdan.jr@chromium.org2010-01-071-42/+66
| | | | | | | | | | | Patch by Bernard Cafarelli <voyageur@gentoo.org> TEST=none BUG=22140 Review URL: http://codereview.chromium.org/524061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35711 0039d316-1c4b-4281-b951-d872f2087c98
* posix: upgrade libevent from 1.4.7 to 1.4.13evan@chromium.org2009-11-2058-3908/+5604
| | | | | | | | | | | | I took this opportunity to rejigger how we hacked around using an uninstalled libevent, to remove a TODO that mentioned danger in the README. Files to review: README.chromium and chromium.patch. The rest are probably rubber-stampable. Review URL: http://codereview.chromium.org/412006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32656 0039d316-1c4b-4281-b951-d872f2087c98
* Add comments setting emacs and vim tab width and expansion variables.sgk@google.com2009-10-061-0/+6
| | | | | | | | BUG=none TEST=successful builds Review URL: http://codereview.chromium.org/256059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28089 0039d316-1c4b-4281-b951-d872f2087c98
* Force inclusion of build/common.gypi for all chromium gyp files.yaar@chromium.org2009-09-151-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Why: Simpler build code. If everybody includes it, it should be included automatically. Why now: The webkit chromium builds need it be specified, since can't default to build/common.gypi. What was done: 1. build/common.gypi's contents were moved to a new file build/gyp_chromium.gypi 2. tools/gyp/gyp_chromium was moved to build/gyp_chromium and made to automatically include build/gyp_chromium.gypi. 3. lots of gyp files were fixed to not refer to build/common.gypi any more. 4. o3d which also builds independently of chrome, was fixed to have a gyp_o3d that includes gyp_chromium.gypi too. 5. build/common.gypi was left empty, because there are some external projects that still refer to it. Things that are left to do after this patch is in: 1. The following external files (in other repositories) need to stop include common.gypi ./third_party/hunspell/hunspell.gyp ./third_party/icu/icu.gyp ./v8/tools/gyp/v8.gyp 2. Once nobody refers to common.gypi anymore, delete common.gypi -or- Delete gyp_chromium.gypi and move its content back to common.gypi Tested on mac, win and linux. On win, got a few unit tests errors on chrome bookmarks, which should not be related. I'm running again with clobber to verify. Review URL: http://codereview.chromium.org/206006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26302 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the Linux shared build.thestig@chromium.org2009-09-151-2/+12
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/203076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26291 0039d316-1c4b-4281-b951-d872f2087c98
* Added USE_GDK, set when either TOOLKIT_GTK or TOOLKIT_VIEWS is set butbenl@chromium.org2009-09-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | not OS_WIN. Added USE_X11. Set when OS_LINUX or OS_FREEBSD is set. Added USE_BASE_DATA_PACK for base::DataPack usage, set for OS_MACOSX, OS_LINUX or OS_FREEBSD. Added USE_NSS for ... nss (for crypto). Windows and MacOS use platform-specific libraries. All of the above cause slightly odd formulations like: #if defined(OS_WIN) ... #elif defined(USE_BASE_DATA_PACK) ... #endif Possibly should also define USE_DLL_FOR_DATA, etc? Or something? Wrapped various references to struct stat64 and stat64() to use struct stat and stat() for FreeBSD - but a "man stat64" on Linux suggests that we could do the same thing for at least Linux, too, and perhaps eliminate the wrapper? git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25599 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: fix libevent bug.agl@chromium.org2009-06-021-1/+1
| | | | | | | | | | | | | r17436 exposed a libevent bug where an array is not resized to a large enough size when it's one element too short. This bug will be upstreamed to libevent. http://codereview.chromium.org/112089 BUG=11999 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17449 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: stop libevent from pre-allocating huge arrays.agl@chromium.org2009-06-021-12/+2
| | | | | | | | | | | | | | | | | | | Currently, libevent allocates two structures of size RLIMIT_NOFILE (which is 8192 on Ubuntu) and so these end up being several hundred kB of memory for each MessageLoopIO. This patch changes the default size to 32. If the thread watches a file descriptor greater than 32, the arrays will be grown as needed, doubling each time. Also fixes a typo in the upstream code. A bug report for this has been sent upstream. http://codereview.chromium.org/118126 BUG=11999 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17436 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: sync libevent/epoll.c to upstream's version.agl@chromium.org2009-06-021-5/+8
| | | | | | | | | | | | | | Our version of epoll.c has a bug where, when resizing an array, pointers to the old array remain in kernel memory and are subsequently used. This is a pure cherry-pick from libevent 1.4.11-stable. http://codereview.chromium.org/118124 BUG=11999 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17421 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes for two benign race conditions and one bug detecteddkegel@google.com2009-04-241-21/+7
| | | | | | | | | | | | | by kcc's thread sanitizer: 1) remove extra '&' char; this fix is already upstream in libevent 2) delete unused and deprecated event_sigcb interface 3) avoid setting use_monotonic repeatedly. (Should really be protected with a mutex, but a simple init check seems to quiet the race detector.) Review URL: http://codereview.chromium.org/95012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14467 0039d316-1c4b-4281-b951-d872f2087c98
* Restore -Wall to Linux build and set up for -Werror.sgk@google.com2009-04-091-3/+0
| | | | | | | | | | | | | | | * Add -Wall to build/common.gypi (and -Werror, commented out for now). * Have build/external_code.gypi remove -Wall (and -Werror). * Remove chromium_code definition from build/all.gyp. * Remove chromium_code definitions from third_party/ *.gyp files. * Remove scons-specific -Werror removal in webkit.gyp. * Remove unused variables from: base/clipboard_linux.cc chrome/browser/gtk/download_shelf_gtk.cc chrome/browser/gtk/bookmark_bar_gtk.cc Review URL: http://codereview.chromium.org/66001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13478 0039d316-1c4b-4281-b951-d872f2087c98
* Basic underpinnings of the gyp equivalent of the Linux SHARED=1 build:sgk@google.com2009-04-081-1/+1
| | | | | | | | | parameterize the 'type' setting of the various library targets, with a default of 'static_library'. (Hat tip to Craig Schlenter.) Review URL: http://codereview.chromium.org/62127 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13345 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the checked-in scons configuration files.sgk@google.com2009-04-012-91/+0
| | | | | | Review URL: http://codereview.chromium.org/53121 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12982 0039d316-1c4b-4281-b951-d872f2087c98
* Linux (libevent): Supply sys/queue.h replacement macros when needed.agl@chromium.org2009-03-175-1/+55
| | | | | | | | | | | Not all build platforms have a sufficiently up-to-date sys/queue.h header. For those platforms which don't, we select libevent's replace macros and augment them where we are still missing some. Review URL: http://codereview.chromium.org/48048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11823 0039d316-1c4b-4281-b951-d872f2087c98
* GYP it, GYP it good.mark@chromium.org2009-03-023-366/+1
| | | | | | | | Convert the Mac build to the new GYP-based Xcode build, and remove the old Xcode projects. Review URL: http://codereview.chromium.org/28305 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10693 0039d316-1c4b-4281-b951-d872f2087c98
* Import .gyp files into the Chromium treemark@chromium.org2009-02-251-0/+50
| | | | | | Review URL: http://codereview.chromium.org/27158 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10380 0039d316-1c4b-4281-b951-d872f2087c98
* Provide pre-generated config.h files for the Mac for sdch and libevent, somark@chromium.org2009-02-052-0/+254
| | | | | | | we don't have to worry about messy generator steps in the gyp-based build. Review URL: http://codereview.chromium.org/23008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9254 0039d316-1c4b-4281-b951-d872f2087c98
* Rename README.google to README.chromium.mal@chromium.org2009-01-301-0/+0
| | | | | | | | | No code change. B=4380 Review URL: http://codereview.chromium.org/19501 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8988 0039d316-1c4b-4281-b951-d872f2087c98
* Mass convert ChromeStaticLibrary -> ChromeLibrary, including pulling the ↵evanm@google.com2008-12-261-1/+1
| | | | | | | | | | | updated ICU dep that uses it as well. Add a SHARED scons command-line flag to build shared libraries. Review URL: http://codereview.chromium.org/16477 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7479 0039d316-1c4b-4281-b951-d872f2087c98
* Convert from using env['PLATFORM'] directly to using the more flexiblesgk@google.com2008-12-181-4/+4
| | | | | | | | | | | | | | | | | | and better-thought-out Hammer env.Bits() idioms: * env['PLATFORM'] == 'win32' => env.Bit('windows') * env['PLATFORM'] == 'posix' => env.Bit('linux') * env['PLATFORM'] == 'darwin' => env.Bit('mac') New idioms: * env.Bit('posix') => really does mean "any POSIX platform" * env.AnyBits('mac', 'linux') => specifically mac or linux, excluding other POSIX platforms Where we were using compound conditionals (e.g., "env['PLATFORM'] in ('posix', 'darwin')") I tried to take my best shot at translating the intent (i.e., "env.Bits('posix')" for something POSIX, "not env.Bits('mac')" for something not yet ported to Mac, etc.) Review URL: http://codereview.chromium.org/15051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7270 0039d316-1c4b-4281-b951-d872f2087c98
* SCons renaming updates for base, net and googleurl:sgk@google.com2008-10-212-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rename SConscript files to {module}.scons or {moduel}_lib.scons, depending on the primary target involved. * Separate targets into individual *.scons files, with one construction environment (named "env") per *.scons file. * Add using_{module}.scons files (like .vsprops) that will be used by other modules to add CPPDEFINES, CPPPATH, LIBS and LIBPATH values. * Update other modules' *.scons files to use the new using_{module}.scons files (using a temporary one-liner idiom until we have the ApplySConscript() method from the Hammer modules). * Use the idiom of removing to-be-ported files from the master list, so they can be simply deleted from the to-be-ported list as they get ported in the future, instead of having to shuffle entries between lists. * Use $OBJ_ROOT instead of hard-coded '#/$BUILD_TYPE/' for the $*_DIR variables. * Add a addRepository() call mapping build/ to $TARGET_ROOT/googleurl, so its $OBJ_ROOT value can look like the others'. * Formatting changes, primarily modifying indentation to conform to style guidelines. * Fix copyright headers in some third_party/* modules previously overlooked. * Add rudimentary __doc__ strings, setting up for a future ability to generate meaningful documentation. Review URL: http://codereview.chromium.org/7807 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3675 0039d316-1c4b-4281-b951-d872f2087c98
* Get libevent building and linking in base_unittests in the Mac SCons build:sgk@google.com2008-09-242-9/+37
| | | | | | | | | | | | | | | | | | * Call the $LIBEVENT_DIR/SConscript file on both Linux and Mac. * Add generation of the config.h file. * Modify the libevent_prebuild.sh script so SCons can pass in the input file name (because SCons executes things from top of tree) but the script still defaults to what XCode wants. * Only build epoll.c and epoll_sub.c on Linux. * Only build kqueue.c on Mac. * Add -framework AppKit to the link lines. * Add -fobjc-gc to Objective C compilation. * Add message_pump_mac.mm to the base input file list on Mac. * Build message_pump_libevent.cc on for base on both Linux and Mac. * Link against -levent on both Linux and Mac. Review URL: http://codereview.chromium.org/4254 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2555 0039d316-1c4b-4281-b951-d872f2087c98
* Build libevent on Macmark@chromium.org2008-09-189-8733/+372
| | | | | | Review URL: http://codereview.chromium.org/3157 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2384 0039d316-1c4b-4281-b951-d872f2087c98
* Just import libevent, with minor tweaks as described in README.googledkegel@google.com2008-09-1878-0/+80569
A second changelist will actually use it Split because otherwise it's hard to review the second part. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2345 0039d316-1c4b-4281-b951-d872f2087c98