First: On - let's see - Fri, 28 Mar 2014 02:02:52 +0100 - I sent a message to this list with the subject "again, must know mechanics of compile" - previously, I was able to send to this list, but as for now, I can't find that message either in the group or in the web archive [1]. (I see my old posts though.) I looked for that message because I thought I build on that thread, that's how I noticed it wasn't there (?).
Anyway, as for including header files, I found that you can indeed make a directory at the base package level, called "include" - and put a Makefile in it just like it is done for the other projects (but I'm unsure what the Makefile actually does - perhaps if you specify the include directory as a target in the *package* Makefile, you can drop it?).
And, you can't use the C++ ".hh" extension, but ".h" works, if you include them like this:
#include <l4/hs/task_scheduler.h>
if your package is named "hs". In effect, this is quite the opposite of the #include "task_scheduler.hh", and then the -I flag to the compiler.
As for -std=c++11, I found that you can pass that not with CFLAGS, but close - this works:
CXXFLAGS += -std=c++11
[1] http://os.inf.tu-dresden.de/pipermail/l4-hackers/2014/thread.html
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi,
Anyway, as for including header files, I found that you can indeed make a directory at the base package level, called "include" - and put a Makefile in it just like it is done for the other projects (but I'm unsure what the Makefile actually does - perhaps if you specify the include directory as a target in the *package* Makefile, you can drop it?).
You guessed correctly that there is some build system magic for include directories. The intent is that headers in these include directories get installed into an include/ subtree of your build directory and you can then include them as
<l4/pkgname/xyz.h>
So staying with your example (l4/hs/task_scheduler.h), you'd have a package hs in l4/pkg/hs. In there you put a subdir include/ (or whatever you want to call it) and in there you'd implement your task_scheduler.h file. Then you use a Makefile that includes $(L4DIR)/mk/include.mk to trigger the install magic.\
You can find plenty of examples for this in l4/pkg as many of the L4 packages ship their own headers.
And, you can't use the C++ ".hh" extension, but ".h" works, if you include them like this:
#include <l4/hs/task_scheduler.h>
Correct. By default only .h files get installed into the build tree. If you have files with other extensions, you will have to tell the build system by defining the EXTRA_TARGET make variable. For an example see for instance l4/pkg/libloader/include/Makefile
if your package is named "hs". In effect, this is quite the opposite of the #include "task_scheduler.hh", and then the -I flag to the compiler.
Was that a question?
As for -std=c++11, I found that you can pass that not with CFLAGS, but close - this works:
CXXFLAGS += -std=c++11
Indeed, CFLAGS specifies parameters for the C compiler whereas CXXFLAGS specifies those for the C++ compiler, so you want to put - -std=c++11 into CXXFLAGS.
Bjoern
Björn Döbel doebel@os.inf.tu-dresden.de writes:
In effect, this is quite the opposite of the #include "task_scheduler.hh", and then the -I flag to the compiler.
Was that a question?
Actually, I'm only referring to how it looks on the surface. In the jungle beneath, the -I might just as well be exactly what happens... (?)
Thanks for your information. Yes, that's what I said, I sent a mail with questions that didn't appear (I never saw it anywhere anyway), nor any answers for that matter, and the second mail (which you answered) was a followup on that (or should have been, had I found the first mail).
So it is what I discovered since I wrote the first mail. That is, in the second mail, there are some questions answered, and some answers to be questioned...
On Tue Apr 01, 2014 at 00:26:17 +0200, Emanuel Berg wrote:
Björn Döbel doebel@os.inf.tu-dresden.de writes:
In effect, this is quite the opposite of the #include "task_scheduler.hh", and then the -I flag to the compiler.
Was that a question?
Actually, I'm only referring to how it looks on the surface. In the jungle beneath, the -I might just as well be exactly what happens... (?)
Thanks for your information. Yes, that's what I said, I sent a mail with questions that didn't appear (I never saw it anywhere anyway), nor any answers for that matter, and the second mail (which you answered) was a followup on that (or should have been, had I found the first mail).
You're posting with a non-subscribed address, so every post by you needs to be approved. You should get a mail for every post being held. And this one expired in the queue.
So it is what I discovered since I wrote the first mail. That is, in the second mail, there are some questions answered, and some answers to be questioned...
May the force be with us.
Adam
Adam Lackorzynski adam@os.inf.tu-dresden.de writes:
You're posting with a non-subscribed address, so every post by you needs to be approved. You should get a mail for every post being held. And this one expired in the queue.
*Laughter* :) Can't handle the truth?
No, but why don't you add my address, then?
And - if I'm not subscribed, how come *I* get all the mail?
Perhaps you have "embe8573" in the database, instead of "Emanuel.Berg.8573", or the other way around?
On Wed, Apr 02, 2014 at 01:07:21AM +0200, Emanuel Berg wrote:
Adam Lackorzynski adam@os.inf.tu-dresden.de writes:
You're posting with a non-subscribed address, so every post by you needs to be approved. You should get a mail for every post being held. And this one expired in the queue.
*Laughter* :) Can't handle the truth?
No, but why don't you add my address, then?
Why don't you subscribe yourself like everyone else?
And - if I'm not subscribed, how come *I* get all the mail?
Because netiquette recommends cc'ing the reply to the original sender.
Matthias.
Matthias Lange matthias.lange@kernkonzept.com writes:
Why don't you subscribe yourself like everyone else?
Because netiquette recommends cc'ing the reply to the original sender.
No, I get all the other mails as well.
On Wed Apr 02, 2014 at 01:07:21 +0200, Emanuel Berg wrote:
Adam Lackorzynski adam@os.inf.tu-dresden.de writes:
You're posting with a non-subscribed address, so every post by you needs to be approved. You should get a mail for every post being held. And this one expired in the queue.
*Laughter* :) Can't handle the truth?
That I'm lazy? Yeah, struggling, as usual.
No, but why don't you add my address, then?
Anything else I can do for you?
And - if I'm not subscribed, how come *I* get all the mail?
Perhaps you have "embe8573" in the database, instead of "Emanuel.Berg.8573", or the other way around?
Indeed, see, you know it yourself. So why bother us? Your personal interface to the database is here: https://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam
Adam Lackorzynski adam@os.inf.tu-dresden.de writes:
That I'm lazy? Yeah, struggling, as usual.
I didn't call you lazy.
No, but why don't you add my address, then?
Anything else I can do for you?
How about: stop being sarcastic?
Perhaps you have "embe8573" in the database, instead of "Emanuel.Berg.8573", or the other way around?
Indeed, see, you know it yourself. So why bother us?
I didn't know that. It is a possible explanation why I am "subscribed", but you perceive me as not so. I don't know why the university people setup that dual system to begin with, but it is there, and it can cause this kind of problems now and then.
On Wed Apr 02, 2014 at 23:37:51 +0200, Emanuel Berg wrote:
Adam Lackorzynski adam@os.inf.tu-dresden.de writes:
No, but why don't you add my address, then?
Anything else I can do for you?
How about: stop being sarcastic?
Well, the actually true answer goes like this, my previous answer was just supposed to be a kind of friendly reminder: Why the ** are you bothering me with your subscription config? Just go to the website I even pointed you at and subscribe with the email address you're using for posting to the list. It's easy. It's quick. Thousands have done it before and they're happy guys now, I tell you.
Better?
Perhaps you have "embe8573" in the database, instead of "Emanuel.Berg.8573", or the other way around?
Indeed, see, you know it yourself. So why bother us?
I didn't know that. It is a possible explanation why I am "subscribed", but you perceive me as not so. I don't know why the university people setup that dual system to begin with, but it is there, and it can cause this kind of problems now and then.
It's common to have multiple addresses, you have to cope with it, we all cope with it. So just use one address, and do not subscribe with one and use another for posting. And that shall be my final words on this topic.
Adam
l4-hackers@os.inf.tu-dresden.de