Hi,
build2 is an open source, cross-platform toolchain for building and
packaging C++ code. It includes a build system, package manager, and
repository web interface. We've also started cppget.org, a public
repository of open source C++ packages.
This is the first alpha release and currently it i
The CppCon 2014 Program is now available with talk titles, abstracts,
and speakers:
http://cppcon.org/conference-program/
The program contains over 100 one-hour sessions by over 70 speakers
including plenary sessions by Scott Meyers and Herb Sutter, as well
as the keynotes by C++ creator Bjarne S
Hi,
I am pleased to announce the release of ODB 2.4.0.
ODB is an open source object-relational mapping (ORM) system for C++. It
allows you to persist C++ objects to a relational database without having
to deal with tables, columns, or SQL and without manually writing any of
the mapping code. ODB
Hi,
In the build system I am working on we are looking at always performing
the preprocessing and then C/C++ compilation as two separate gcc/g++
invocations. The main reason is support for distributed compilation but
see here[1] for other reasons.
I realize that tools like ccache/distcc have been
Hi Jakub,
Jakub Jelinek writes:
> Especially in recent GCC versions the amount of differences for warnings and
> errors keeps dramatically increasing, with separate preprocessing simply
> too much information is lost (macro contexts, lint style comments, exact
> locations, system header issues,
Hi Nathan,
Nathan Sidwell writes:
> How c++ modules fit into a build system is currently an open question.
> Richard Smith & I have talked about it, but with no firm conclusion.
> However, I think that breaking out the preprocessor is not the right
> answer.
Handling modules is one of the least
Hi,
Sometimes it is useful to generate pre-processed output to a file and
the dependency information to stdout for further analysis/processing.
For example:
g++ -E -MD -fdirectives-only -o test.ii test.cxx
This will generate the dependency information to test.d (as per the
documentation). While
Hi,
I have implemented the separate preprocess and compile setup in build2.
For GCC it is using -fdirectives-only (thanks to everyone's suggestions
in the earlier thread). I've also done some benchmarking:
https://build2.org/article/preprocess-compile-performance.xhtml
TL;DR for GCC:
Surprising
F.
Thanks,
Boris
Index: gcc/c-family/ChangeLog
===
--- gcc/c-family/ChangeLog (revision 250514)
+++ gcc/c-family/ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2017-08-06 Boris Kolpackov
+
+ * c-opts.c (c_common_finish): Write dependency i
Joseph Myers writes:
> I suppose a question for the present proposal would be making sure any
> dependencies generated in this case do not include dependencies on files
> that don't exist (so #include "some-misspelling.h" doesn't create any sort
> of dependency on such a header).
Good point.
Boris
Index: gcc/c-family/ChangeLog
===
--- gcc/c-family/ChangeLog (revision 250514)
+++ gcc/c-family/ChangeLog (working copy)
@@ -1,3 +1,8 @@
+2017-08-06 Boris Kolpackov
+
+ * c-opts.c (c_common_finish): Write dependency informat
On Tue, 2018-07-17 at 14:49 +0200, Martin Liška wrote:
> My question is simple: can we starting using a scripting language like
> Python and replace usage of the AWK scripts?
I wonder what will be the expected way to obtain a suitable version of
Python if one is not available on the build machine
Paul Koning writes:
> > On Jul 18, 2018, at 11:13 AM, Boris Kolpackov
> > wrote:
> >
> > I wonder what will be the expected way to obtain a suitable version of
> > Python if one is not available on the build machine? With awk I can
> > build it from sour
Hi,
I am trying to figure out how to get a typedef hierarchy from the C/C++
tree in GCC. Consider the following declarations:
struct s {};
typedef s s_t;
typedef s_t my_s_t;
my_s_t x;
Giveb 'x' VAR_DECL I can have this traversal using TYPE_MAIN_VARIANT():
x -> my_s_t -> s;
What I am trying t
Hi Jonathan,
Jonathan Wakely writes:
> I don't know if GCC keeps the information you want, but according to
> the language rules there is no hierarchy. There's a type, and zero or
> more alternative names for it. The example above makes my_s_t a
> synonym for s, not s_t.
Right. "Hierarchy" was
Hi Ian,
Ian Lance Taylor writes:
> As far as I know this is not possible. A typedef name is just an alias
> for the underlying type. When you typedef T as TNAME, where T is itself
> a typedef, GCC records that TNAME is a name for the underlying type of
> T. It does not record an equivalence of
Hi Ian,
Ian Lance Taylor writes:
> Boris Kolpackov writes:
>
> > Yes, that's what I suspect. Which is unfortunate since GCC already creates
> > all the nodes. All that is left is to establish a link between two types.
> > While this is not necessary for C/C++ co
Hi Ian,
Ian Lance Taylor writes:
> Unfortunately we have discovered over time that all the memory usage
> matters. A rule of thumb for gcc is that compilation speed is roughly
> proportional to the amount of memory used.
I think fundamentally the requirements of those who use GCC as just a
com
Hi Dodji,
Dodji Seketeli writes:
> Boris Kolpackov a =C3=A9crit:
>
> > struct s {};
> >
> > typedef s s_t;
> > typedef s_t my_s_t;
> >
> > my_s_t x;
> >
>
> In G++, let's say that the tree node representing my_s_t is t. Then,
> DEC
Hi Dodji,
Dodji Seketeli writes:
> Boris Kolpackov a =C3=A9crit:
>
> > template
> > struct wrap
> > {
> > typedef T w_s;
> > };
> >
> > typedef wrap::w_s w_s_t;
> >
> > Now if I traverse from w_s_t using DECL_ORIGINAL_TYPE I get:
Hi,
We have just released a C++ object-relational mapping (ORM) system,
called ODB, that uses the new GCC plugin architecture. I thought I
would report back to the GCC community on how the plugin part worked
out.
In a nutshell, the ODB compiler parses a C++ header with class
declarations (and so
Ben Boeckel writes:
> However, for header unit modules, it runs into a problem that imported
> header units are required to be compiled and available in the mapper
> while scanning for dependencies.
>
> Example code:
>
> ```c++ # use-header.cpp
> module;
>
> import "header-unit.hpp";
>
> int
Ben Boeckel writes:
> On Thu, Apr 21, 2022 at 06:05:52 +0200, Boris Kolpackov wrote:
>
> > I don't think it is. A header unit (unlike a named module) may export
> > macros which could affect further dependencies. Consider:
> >
> > import "header-unit.
Iain Sandoe writes:
> The standard has the concept of an “importable header” which is
> implementation-defined.
But it must contain all the C++ library headers:
https://eel.is/c++draft/headers#4
> We could choose that only headers that are self-contained (i.e. unaffected
> by external defines
Ben Boeckel writes:
> If we need to know and have dependencies prepared before we can figure
> out the dependencies for a TU, modules are unsolvable (without an active
> build executor). If C++ implementations are really going to require
> that, then [...] the following tools are all unsuitable f
Jakub Jelinek writes:
> The first release candidate for GCC 12.1 is available [...]
There is an unfixed bogus warning that is a regression in 12
and that I think will have a pretty wide effect (any code
that assigns/appends a 1-char string literal to std::string):
https://gcc.gnu.org/bugzilla/s
Martin Uecker writes:
> Do we really still need complex build systems such as autoconf? Are
> there still so many different configurations with subtle differences
> that every single feature needs to be tested individually by running
> code at build time?
We have taken the alternative approach i
I am pleased to announce the release of ODB 2.3.0.
ODB is an open source object-relational mapping (ORM) system for C++. It
allows you to persist C++ objects to a relational database without having
to deal with tables, columns, or SQL and without manually writing any of
the mapping code. ODB is im
Hi,
Only 5 days left before the submissions deadline for C++Now 2014!
C++Now is a general C++ conference for C++ experts and enthusiasts.
It is not specific to any library/framework or compiler vendor and
has three tracks with presentations ranging from hands-on, practical
tutorials to advanced C
Hi,
Registration is now open for the eighth annual C++Now conference
(formerly BoostCon) which will be held in Aspen, Colorado, USA, May
12th to 17th, 2014.
C++Now is a general C++ conference for C++ experts and enthusiasts.
It is not specific to any library/framework or compiler vendor and
has t
CppCon, The C++ Conference
Opening Keynote by Bjarne Stroustrup
September 7â12, 2014
Bellevue, Washington, USA
Registration is now open for CppCon 2014 to be held September 7â12, 2014
at the Meydenbauer Center in Bellevue, Washington, USA. This year the
conference starts with the keynote by Bj
Hi,
CppCon is the annual, week-long face-to-face gathering for the entire
C++ community. The conference is organized by the C++ community for the
community and so we invite you to present.
Have you learned something interesting about C++, maybe a new technique
possible in C++11? Or perhaps you ha
I am pleased to announce the release of ODB 2.0.0.
ODB is an open source object-relational mapping (ORM) system for C++. It
allows you to persist C++ objects to a relational database without having
to deal with tables, columns, or SQL and without manually writing any of
the mapping code.
ODB is i
The seventh annual C++Now Conference (formerly BoostCon) will be held at the
Aspen Center for Physics in Aspen, Colorado, May 12th to 17th, 2013.
"We are thrilled to announce the second annual C++Now conference,
the whole-language edition of BoostCon covering all the coolest topics
in C++," said D
Just a quick note that the proposals deadline for the C++Now 2013
conference has been extended to January 5th:
http://cppnow.org/2013-call-for-submissions/
C++Now is the largest general C++ conference, that is, it is not specific
to any library/framework or compiler vendor. C++Now has three track
Hi,
I am pleased to announce the release of ODB 2.2.0.
ODB is an open source object-relational mapping (ORM) system for C++. It
allows you to persist C++ objects to a relational database without having
to deal with tables, columns, or SQL and without manually writing any of
the mapping code.
ODB
36 matches
Mail list logo