Commit Graph

70 Commits

Author SHA1 Message Date
Sebastian Hengst
d91e9954eb Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon
6095241db8 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Sylvestre Ledru
d6ef04e01c Bug 1394734 - Replace CONFIG['CLANG*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: HbF5oT5HW6f
2017-12-07 22:09:38 +01:00
Sylvestre Ledru
923049ccb3 Bug 1394734 - Replace CONFIG['MSVC'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 5orfnoude7h
2017-12-08 13:46:13 +01:00
Sylvestre Ledru
37064ac043 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m
2017-12-07 22:09:15 +01:00
Francois Marier
0c464166fa Bug 1411450 - Only build files required for the "lite" protobuf runtime. r=mossop
All of our .proto are optimized for LITE_RUNTIME so we can use
libprotobuf-lite instead of the full libprotobuf.

devtools does need something that's not part of libprotobuf-lite
(gzip streams) and so we add that to our builds.

MozReview-Commit-ID: BW8WnTC6pv
2017-10-27 16:44:11 -07:00
Chris Manchester
73ed85bc38 Bug 1403346 - Replace all uses of ALLOW_COMPILER_WARNINGS with a template, remove ALLOW_COMPILER_WARNINGS. r=glandium
MozReview-Commit-ID: 1G2o4fy74cf
2017-10-25 15:12:09 -07:00
Francois Marier
008fc2c194 Bug 1411187 - Build protobuf with NOGDI on all Windows builds. r=tjr
MozReview-Commit-ID: 3nPgVJYdD3w
2017-10-24 13:35:56 -07:00
Francois Marier
e25266583a Bug 1385461 - Document the reason for wire_format.cc in SOURCES. r=glandium
wire_format.cc needs to be out of UNIFIED_SOURCES because it won't
get the GetMessage undef from common.h:

    b04e5cba35/src/google/protobuf/stubs/common.h (L76-L91)

which works around windows.h containing a define for GetMessage()
that turns it into GetMessageA().

This removes the need for the customization added in bug 1024774:

    https://hg.mozilla.org/mozilla-central/diff/8f5b5bbc27af/toolkit/components/protobuf/m-c-changes.patch#l1.25

MozReview-Commit-ID: CrpgEQCBWhf
2017-10-12 17:27:56 -07:00
Francois Marier
8663fbda0d Bug 1385461 - Document the reason for the json_escaping.h-including cc files in SOURCES. r=glandium
Because a namespace is improperly closed outside of the header guard
in json_escaping.h:

    b04e5cba35/src/google/protobuf/util/internal/json_escaping.h (L91)

we can't put any of the files that include json_escaping.h in
UNIFIED_SOURCES without fixing this in the upstream source.

This should be fixed in the next upstream release:

    https://github.com/google/protobuf/pull/3744

MozReview-Commit-ID: sc98xgrUfx
2017-10-12 17:27:49 -07:00
Francois Marier
c453c24234 Bug 1385461 - Document the reason for the time.h-including cc files in SOURCES. r=glandium
On Windows, GetCurrentTime() is an alias for GetTickCount():

    DWORD WINAPI GetTickCount(void);

which comes from winbase.h:

    https://msdn.microsoft.com/en-us/library/windows/desktop/ms724408(v=vs.85).aspx

In order to add the files that use time.h to UNIFIED_SOURCES, we'd
have to add a hack similar to the one that's in util/time_util.h:

    b04e5cba35/src/google/protobuf/util/time_util.h (L94-L96)

In the interest of patching upstream source as little as possible,
we leave these files in SOURCES instead.

MozReview-Commit-ID: BHCtTCQw9EU
2017-10-17 15:53:54 -07:00
Francois Marier
af9d19f286 Bug 1385461 - Upgrade to the latest version of the protobuf library. r=dimi,fitzgen,glandium,mattwoodrow,mossop
The tarball that was imported is the 3.4.1 release:

  https://github.com/google/protobuf/releases/tag/v3.4.1
  https://github.com/google/protobuf/releases/download/v3.4.1/protobuf-cpp-3.4.1.tar.gz

This drops all of the customizations that are no longer needed,
which includes a few issues that were fixed upstream:

- r512.patch from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/r512.patch
    b04e5cba35/src/google/protobuf/io/zero_copy_stream_impl.cc (L43)

- vs2013.patch, also from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/vs2013.patch
    b04e5cba35/src/google/protobuf/wire_format_lite_inl.h (L39)

- sparc64 fixes in m-c-changes.patch from bug 1275204:

    https://hg.mozilla.org/integration/mozilla-inbound/rev/21d692e82582
    b04e5cba35/src/google/protobuf/stubs/platform_macros.h (L68)

The LOGLEVEL_ERROR hack in m-c-changes.patch from bug 1024774 and
bug 1320179 was replaced by a NOGDI define in moz.build as suggested
by upstream:

    https://github.com/google/protobuf/pull/3745/files#r144915445

The other customizations that were dropped came from bug 1024774.

The patch for OpenBSD/32-bit will likely be fixed upstream in a
future release:

    https://github.com/google/protobuf/pull/3747#issuecomment-336581244

Upgrading the protobuf library also required re-generating all
of the existing .pb.h and pb.cc files (they are neither forward
nor backward-compatible) and making adjustments to the build
config to make it compile (and silence warnings).

text_format.cc can now be compiled as part of UNIFIED_SOURCES.

MozReview-Commit-ID: 7F2IqFmwQnN
2017-10-18 15:02:05 -07:00
Francois Marier
bacf9a83fc Bug 1385461 - Add script to regenerate all .pb.cc and .pb.h files. r=mossop
MozReview-Commit-ID: LR0knKFfL7
2017-10-12 16:25:33 -07:00
Francois Marier
b7da2fd0df Bug 1385461 - Fix upgrade script to avoid excluding bytestream files. r=mossop
I had to fix the globbing pattern in the upgrade script which would
otherwise exclude "bytestream.*" from the tree because its name
contains the string "test".

MozReview-Commit-ID: 1J48i0oxVz2
2017-10-12 17:27:32 -07:00
Chris Peterson
2bbe23a688 Bug 1373525 - toolkit/protobuf: Suppress warnings in third-party code. r=Mossop
toolkit/components/protobuf/src/google/protobuf/stubs/map_util.h:356:43 [-Wunused-local-typedef] unused typedef 'value_type'
toolkit/components/protobuf/src/google/protobuf/stubs/map_util.h:367:43 [-Wunused-local-typedef] unused typedef 'value_type'
toolkit/components/protobuf/src/google/protobuf/stubs/strutil.cc:313:8 [-Wcomma] possible misuse of comma operator here
toolkit/components/protobuf/src/google/protobuf/wire_format.cc:60:12 [-Wunused-function] unused function 'GetEnumNumber'

MozReview-Commit-ID: GFXHI2LveE3
2017-06-12 22:18:42 -07:00
Joel Maher
d2be399571 Bug 1351067 - add BUG_COMPONENT to toolkit/* files. r=myk,enndeakin,mossop
MozReview-Commit-ID: 8mv5Oed68JL
2017-04-09 05:43:43 -04:00
Michael Layzell
c176ef3568 Bug 1320179 - Part 4: MOZ_OBJDIR->MOZ_TOPOBJDIR and update m-c-changes.patch for protobuf changes, r=fitzgen
MozReview-Commit-ID: EPhkF350sGY
2017-04-06 18:37:31 -04:00
Michael Layzell
4048a099d9 Bug 1320179 - Part 3: Define LOGLEVEL_0 unconditionally in protobuf on windows, r=fitzgen
This brings the workaround for the GOOGLE_LOG(ERROR) problem when ERROR is
defined as `0` by wingdi.h in line with our workaround in the chromium sandbox
code. (http://searchfox.org/mozilla-central/rev/381a7b8f8a78b481336cfa384cb0a5536e217e4a/security/sandbox/chromium/base/logging.h#334-346)

The other patches on this bug triggered a build problem where in some situations
ERROR would be undefined when the LogLevel enum is being defined, while ERROR
was defined at a callsite. By unconditionally defining ERROR on windows and
including the LOGLEVEL_0 enum variant, we can avoid this issue and fix the
associated build bustage.

MozReview-Commit-ID: 3XFHf1FqHBr
2017-04-06 18:37:29 -04:00
Wes Kocher
3edcd86647 Backed out 4 changesets (bug 1320179) for causing merge conflicts a=backout
Backed out changeset b8aa677f7452 (bug 1320179)
Backed out changeset 9e2f77570128 (bug 1320179)
Backed out changeset 470d8143b350 (bug 1320179)
Backed out changeset ea4f1b3cc7b1 (bug 1320179)
2017-04-06 15:29:24 -07:00
Michael Layzell
38196f2361 Bug 1320179 - Part 4: MOZ_OBJDIR->MOZ_TOPOBJDIR and update m-c-changes.patch for protobuf changes, r=fitzgen
MozReview-Commit-ID: EPhkF350sGY
2017-04-06 17:37:13 -04:00
Michael Layzell
a73539d5c9 Bug 1320179 - Part 3: Define LOGLEVEL_0 unconditionally in protobuf on windows, r=fitzgen
This brings the workaround for the GOOGLE_LOG(ERROR) problem when ERROR is
defined as `0` by wingdi.h in line with our workaround in the chromium sandbox
code. (http://searchfox.org/mozilla-central/rev/381a7b8f8a78b481336cfa384cb0a5536e217e4a/security/sandbox/chromium/base/logging.h#334-346)

The other patches on this bug triggered a build problem where in some situations
ERROR would be undefined when the LogLevel enum is being defined, while ERROR
was defined at a callsite. By unconditionally defining ERROR on windows and
including the LOGLEVEL_0 enum variant, we can avoid this issue and fix the
associated build bustage.

MozReview-Commit-ID: 3XFHf1FqHBr
2017-04-06 17:22:11 -04:00
John Paul Adrian Glaubitz
385fbadd97 Bug 1275204 - protobuf: Sync sparc64 pre-processor defines from upstream. r=fitzgen 2017-01-11 16:09:46 +09:00
Mike Hommey
d4d1fbaa69 Bug 1319604 - Only add -Wno-null-conversion when building with clang. r=gps 2016-11-23 09:14:37 +09:00
Tom Tromey
1b5a2bdb96 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx
2016-07-14 10:16:42 -06:00
Landry Breuil
e3d1777758 Bug 1192556 - #ifdef AtomicWord typedef in protobuf to fix build on OpenBSD/i386. r=fitzgen 2016-03-07 14:14:00 +01:00
Nicholas Nethercote
b9c33b1c31 Bug 1216020 - Comment all ALLOW_COMPILER_WARNINGS lines. r=glandium.
DONTBUILD because it only changes comments.

This will hopefully prevent confusion like that in bug 1215903.
2015-10-19 18:05:20 -07:00
Nicholas Nethercote
12fec02dfb Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.
2015-08-27 20:44:53 -07:00
Nathan Froyd
e88589f672 Bug 1186561 - add #include <vector> to a protobuf header to work around problems on Android; r=fitzgen
Compiling Gecko with libc++ and GCC 4.9 on Android runs into a problem.
The protobuf #includes and libc++ result in preprocessed code that looks
something like:

/* via <iterator> */

namespace std {
namespace __1 {
}
using namespace __1 __attribute__((__strong__));
}

namespace std { namespace __1 {
template <class _Iter>
class __wrap_iter
{
  ...
  template <class _Tp, class _Alloc> friend class vector;
  ...
};

} // namespace __1
} // namespace std

/* via <vector> */

namespace std { namespace __1 {

template <class _Tp, class _Alloc>
class _LIBCPP_TYPE_VIS_ONLY vector : ...
{ ... };

} // namespace __1
} // namespace std

and the problem is that GCC doesn't understand that the forward
declaration of vector inside __wrap_iter is forward-declaring the actual
vector class; it thinks it's declaring something else.

Hacking <iterator> to include _LIBCPP_TYPE_VIS_ONLY for the forward
declaration doesn't help.  What does help is including <vector> earlier
than <iterator>, so the __wrap_iter forward declaration picks up the
correct definition of std::vector, and makes everything happy.  It's
possible that there are other places that could get this same treatment,
but this one place was the only one I needed to modify to make things
go.
2015-07-22 15:10:03 -04:00
Nick Fitzgerald
74ec9c2716 Bug 1024774 - Part 0: Upgrade the protobuf library. r=mmc,glandium 2015-05-28 07:37:42 -07:00
Carsten "Tomcat" Book
f1f61f2bff Backed out 19 changesets (bug 1149397, bug 1065657, bug 1024774) for fixing Linux PGO xpcshell bustage on a CLOSED TREE
Backed out changeset 53058615e7a3 (bug 1024774)
Backed out changeset 68fe0894bb09 (bug 1065657)
Backed out changeset 1b9620d674df (bug 1024774)
Backed out changeset a31c514b59da (bug 1024774)
Backed out changeset 0fcf8757f6c2 (bug 1024774)
Backed out changeset 9a3c71b925d4 (bug 1024774)
Backed out changeset 783acc92af04 (bug 1024774)
Backed out changeset ad71c9a3446b (bug 1024774)
Backed out changeset 4f37e72e70f6 (bug 1024774)
Backed out changeset ec869578cc0a (bug 1024774)
Backed out changeset 3c1d306c8a3d (bug 1024774)
Backed out changeset b3a90f30892d (bug 1024774)
Backed out changeset cf7bbb3774c0 (bug 1024774)
Backed out changeset 2522eb4d3cf2 (bug 1024774)
Backed out changeset 89a502d88f9c (bug 1024774)
Backed out changeset 61046ad3161f (bug 1024774)
Backed out changeset 36706aaa2f06 (bug 1024774)
Backed out changeset ba8e68e05149 (bug 1149397)
Backed out changeset 532169437c2f (bug 1065657)
2015-04-23 08:37:24 +02:00
Nick Fitzgerald
0bea20cb31 Bug 1024774 - Part 0: Upgrade the protobuf library. r=mmc,glandium 2015-04-22 11:09:54 -07:00
Brian Smith
ebf74f4fbc Bug 1119776, Part 7: Avoid defining snprintf when MSVC provides it (other), r=bsmedberg 2015-01-08 22:35:33 -08:00
Chris Peterson
4255d4adef Bug 1095882 - Suppress MSVC warnings in third-party code: toolkit/components/protobuf. r=Mossop 2014-11-08 00:28:21 -08:00
Nathan Froyd
6c629636f0 Bug 1042878 - part 2 - move MOZ_CAIRO_CFLAGS et al additions to C*FLAGS into moz.build; r=glandium 2014-07-24 11:55:33 -04:00
Mike Hommey
ea36b79845 Bug 1041860 - Avoid setting FINAL_LIBRARY to libraries that further use a FINAL_LIBRARY. r=mshal 2014-07-23 08:37:51 +09:00
Boris Chiou
b77abded54 Bug 1035045 - Handle packets by the protocol buffer. r=kamidphish
Use google protocol buffer to handle our package in LayerScope.
Note: LayerScopePacket.pb.h and LayerScopePacket.pb.cc were
generated by version 2.4.1.
2014-07-09 23:16:00 -04:00
Birunthan Mohanathas
55e8a592a8 Bug 1026535 - Disable C4099 warning in 3rd party code. r=ehsan 2014-06-19 14:42:00 -04:00
Chris Peterson
d411611be5 Bug 984079 - Suppress clang and gcc warnings in third-party code: protobuf. r=mmc 2014-03-15 23:25:55 -07:00
Ehsan Akhgari
af0f8ddbaa Bug 977964 - Move some flags to moz.build; r=glandium 2014-03-03 21:58:37 -05:00
Xavier Fung
7aaf808156 Bug 892856 - Fix protobuf to build with VS2013 v2. r=mmc 2014-01-18 02:17:51 +09:00
Mike Shal
e1de3209bf Bug 875013 - Remove VPATH; r=glandium 2013-11-21 14:57:06 -05:00
Ehsan Akhgari
fc9cd7287f Bug 944003 - Build toolkit/components/protobuf in unified mode; r=glandium 2013-11-27 13:43:54 -05:00
Matt Brubeck
bfd50d474d Back out d84bce4e8f2c (bug 943023) because of build errors on a CLOSED TREE 2013-11-25 15:59:01 -08:00
Trevor Saunders
c83a717b5e bug 943023 - unify some of toolkit/components/ and rdf/ r=ehsan 2013-11-25 14:28:06 -05:00
Mike Hommey
97a38484da Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
7f7e4faac1 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
0b49211710 Bug 939039 - Remove now useless FORCE_STATIC_LIB definitions. r=gps 2013-11-19 11:47:28 +09:00
Mike Hommey
656e86914a Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Makoto Kato
51b9c4228e Bug 892856 - Protobuf fails to build in VS 2013. r=mmc 2013-11-05 15:54:30 +09:00
Cykesiopka
fe95cd11b9 Bug 914270 - Part 1: Simple/Automated moves. r=joey 2013-10-24 18:51:00 +01:00