automatic makefiles for c++

Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed in the
developer article “Make me a Millionaire” or “Cross Platform Development
iPAQ”. The usage of addvariant is clear but I failed to compile our *.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

“Martin Binner” <m.binner@caa.de> wrote in message
news:a38bpq$me5$1@inn.qnx.com

Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed in the
developer article “Make me a Millionaire” or “Cross Platform Development
iPAQ”. The usage of addvariant is clear but I failed to compile our *.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired affect of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a postset
macro
and continue to use the .cpp suffix.

Sorry Allan,
I can’t change the extension (to many files and to many to port).
The workaround with the LDFLAGS+=-lang-c++ don’t work to.
I can see the correct commandline but there seems to be a filter wich
filters all other extensions than *.c and *.cc.
Do you have an other idea?

Martin

“Allan” <apkleywegt@qnx.com> schrieb im Newsbeitrag
news:a398k6$o4m$1@nntp.qnx.com

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a38bpq$me5$> 1@inn.qnx.com> …
Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and
more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed in
the
developer article “Make me a Millionaire” or “Cross Platform Development
iPAQ”. The usage of addvariant is clear but I failed to compile our
*.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired affect of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a
postset
macro
and continue to use the .cpp suffix.



\

This seems a little odd to me because if you do a ‘make -p’ you will see
that the suffix cpp is defined as using the same mechanisms as cc. (ie.
COMPILE.cpp=$(COMPILE.cc). I’m not sure why it isn’t working for you unless
we are somehow overriding these rules in our recursive Makefiles. I’ll look
into it.

cheers,

Kris

“Martin Binner” <m.binner@caa.de> wrote in message
news:a39c2d$qa9$1@nntp.qnx.com

Sorry Allan,
I can’t change the extension (to many files and to many to port).
The workaround with the LDFLAGS+=-lang-c++ don’t work to.
I can see the correct commandline but there seems to be a filter wich
filters all other extensions than *.c and *.cc.
Do you have an other idea?

Martin

“Allan” <> apkleywegt@qnx.com> > schrieb im Newsbeitrag
news:a398k6$o4m$> 1@nntp.qnx.com> …

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a38bpq$me5$> 1@inn.qnx.com> …
Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and
more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed in
the
developer article “Make me a Millionaire” or “Cross Platform
Development
iPAQ”. The usage of addvariant is clear but I failed to compile our
*.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired affect
of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a
postset
macro
and continue to use the .cpp suffix.





\

…cpp is a common extension for C++ files. I think this should be supported
right out of the box.


Bill Caroselli – 1(626) 824-7983
Q-TPS Consulting
QTPS@EarthLink.net


“Allan” <apkleywegt@qnx.com> wrote in message
news:a398k6$o4m$1@nntp.qnx.com

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a38bpq$me5$> 1@inn.qnx.com> …
Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and
more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed in
the
developer article “Make me a Millionaire” or “Cross Platform Development
iPAQ”. The usage of addvariant is clear but I failed to compile our
*.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired affect of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a
postset
macro
and continue to use the .cpp suffix.



\

In /usr/include/mk/
“qrules.mk” and “qmacros.mk” define rules for .cc ; but not .cpp.

Until rules are provided for .cpp; the supported solution is to use the .cc
suffix.

I’d love to give you a clean work around, but I don’t see one yet.


“Kris Warkentin” <kewarken@qnx.com> wrote in message
news:a39fjq$snj$1@nntp.qnx.com

This seems a little odd to me because if you do a ‘make -p’ you will see
that the suffix cpp is defined as using the same mechanisms as cc. (ie.
COMPILE.cpp=$(COMPILE.cc). I’m not sure why it isn’t working for you
unless
we are somehow overriding these rules in our recursive Makefiles. I’ll
look
into it.

cheers,

Kris

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a39c2d$qa9$> 1@nntp.qnx.com> …
Sorry Allan,
I can’t change the extension (to many files and to many to port).
The workaround with the LDFLAGS+=-lang-c++ don’t work to.
I can see the correct commandline but there seems to be a filter wich
filters all other extensions than *.c and *.cc.
Do you have an other idea?

Martin

“Allan” <> apkleywegt@qnx.com> > schrieb im Newsbeitrag
news:a398k6$o4m$> 1@nntp.qnx.com> …

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a38bpq$me5$> 1@inn.qnx.com> …
Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib and
more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed
in
the
developer article “Make me a Millionaire” or “Cross Platform
Development
iPAQ”. The usage of addvariant is clear but I failed to compile our
*.cpp.
Is there a possibility to include the *.cpp or other than *.c files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker
option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired affect
of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a
postset
macro
and continue to use the .cpp suffix.







\

Many thanks to you Allan,
I changed the rules in
“qrules.mk” and “qmacros” from the “/usr/include/mk/” path
It compiles and links now.
At the next step I try to compile the whole project and after this to debug
it.

Martin

“Allan” <apkleywegt@qnx.com> schrieb im Newsbeitrag
news:a39lu3$43m$1@nntp.qnx.com

In /usr/include/mk/
“qrules.mk” and “qmacros.mk” define rules for .cc ; but not .cpp.

Until rules are provided for .cpp; the supported solution is to use the
…cc
suffix.

I’d love to give you a clean work around, but I don’t see one yet.


“Kris Warkentin” <> kewarken@qnx.com> > wrote in message
news:a39fjq$snj$> 1@nntp.qnx.com> …
This seems a little odd to me because if you do a ‘make -p’ you will see
that the suffix cpp is defined as using the same mechanisms as cc. (ie.
COMPILE.cpp=$(COMPILE.cc). I’m not sure why it isn’t working for you
unless
we are somehow overriding these rules in our recursive Makefiles. I’ll
look
into it.

cheers,

Kris

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a39c2d$qa9$> 1@nntp.qnx.com> …
Sorry Allan,
I can’t change the extension (to many files and to many to port).
The workaround with the LDFLAGS+=-lang-c++ don’t work to.
I can see the correct commandline but there seems to be a filter wich
filters all other extensions than *.c and *.cc.
Do you have an other idea?

Martin

“Allan” <> apkleywegt@qnx.com> > schrieb im Newsbeitrag
news:a398k6$o4m$> 1@nntp.qnx.com> …

“Martin Binner” <> m.binner@caa.de> > wrote in message
news:a38bpq$me5$> 1@inn.qnx.com> …
Hi everybody,
I’m porting a bigger Project of our company. It consits of 1 lib
and
more
than 20 *.so’s. Until now we have for every part a Makefile.
It works of cource. But it would be nicer to use the way, descibed
in
the
developer article “Make me a Millionaire” or “Cross Platform
Development
iPAQ”. The usage of addvariant is clear but I failed to compile
our
*.cpp.
Is there a possibility to include the *.cpp or other than *.c
files.
Which macro or switch I have to include in the common.mk?

thanks

Martin

The QSSL makefile rules understand .cc as needing the C++ linker
option
“-lang-c++”
If you can change your c++ suffix to .cc you’ll get the desired
affect
of
invoking the QSSL
prescribed rules for C++.

Alternatively, you can add LDFLAGS+=-lang-c++ to the common.mk as a
postset
macro
and continue to use the .cpp suffix.









\