Project Home
Project Home
Source Code
Source Code
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - using clearmake to build qnx source: (5 Items)
   
using clearmake to build qnx source  
Hi,

We use clearcase to store in our source trees. I was wondering Is there a easier way to use clearmake to build the QNX 
tree apart from rewriting all the existing makefiles.  So that Derived Shared Objects could be winked in to save on 
build time ?

Thanks and Regards,
Ashwin
Re: using clearmake to build qnx source  
Hi Ashwin,

Unfortunately the existing makefiles are not especially ClearCase
friendly - although nor are they exceptionally hostile (for the most
part ;-)  What's the specific problem you're having?

Regards,
Neil

On Thu, 2009-06-18 at 06:14 -0400, Ashwin Patwekar wrote:
> Hi,
> 
> We use clearcase to store in our source trees. I was wondering Is there a easier way to use clearmake to build the QNX
 tree apart from rewriting all the existing makefiles.  So that Derived Shared Objects could be winked in to save on 
build time ?
> 
> Thanks and Regards,
> Ashwin
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post32025
> 
RE: using clearmake to build qnx source  
Hi Neil,

I tried to follow the information @ http://www.ibm.com/developerworks/forums/thread.jspa?threadID=192675

Created a make.cc with 
all:
        make all
        touch all

Intially it complained about the MAKEFLAGS variable. So I unset it. Then Clearmake complains that 
-------------------------------------------------------------------
Makefile:14: qconfig.mk: No such file or directory
make: *** No rule to make target `qconfig.mk'.  Stop.
*** Error code 2
clearmake.exe: Error: Build script failed for "all"
-------------------------------------------------------------------

I gave explicit path in the makefile and it went some steps and complained about recurse.mk. 
The MAKEFLAGS contains the include dir where all these rules are. Not sure how to pass this to clearmake though.


Thanks and Regards,
Ashwin

-----Original Message-----
From: Neil Schellenberger [mailto:community-noreply@qnx.com] 
Sent: Thursday, June 18, 2009 8:16 PM
To: general-toolchain
Subject: Re: using clearmake to build qnx source

Hi Ashwin,

Unfortunately the existing makefiles are not especially ClearCase
friendly - although nor are they exceptionally hostile (for the most
part ;-)  What's the specific problem you're having?

Regards,
Neil

On Thu, 2009-06-18 at 06:14 -0400, Ashwin Patwekar wrote:
> Hi,
> 
> We use clearcase to store in our source trees. I was wondering Is there a easier way to use clearmake to build the QNX
 tree apart from rewriting all the existing makefiles.  So that Derived Shared Objects could be winked in to save on 
build time ?
> 
> Thanks and Regards,
> Ashwin
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post32025
> 

_______________________________________________
General
http://community.qnx.com/sf/go/post32039


RE: using clearmake to build qnx source  
Hi Neil,

I managed to do a build in a snapshot view using the command under bash after running the . ./setenv.sh 
clearmake -C gnu -v -f make.cc --include-dir=d:/QNX630 /qnx/target/qnx6/usr/include

I am looking to use the build avoidance feature of clearcase. So I created a dynamic view. 
I see two problems even with the dynamic view
1. I am at 6.3.0 sp1 and since usemsg needs write permissions to the root directory which in my case is the vob 
directory z:. I can't use build avoidance atleast for now. When I move to 6.4.x it might be possible.

2. Using the derived object might not be entirely possible as during the build process the headers are copied from 
prebuilt to install. 
The headers are under source control from folder prebuilt. But since they are copied using cp command to install, 
Clearmake is not aware of the config records for these files. It does create a derived object but if we see the config 
record for the derived object created it lists the file in install with the timestamp for the time it was copied and no 
version information. 
So in every build it will find a new timestamp for the file in install and create a new derived object. 
Can I remove the rule for prebuilt and have the headers in install  ? 

Thanks and Regards,
Ashwin

-----Original Message-----
From: Neil Schellenberger [mailto:community-noreply@qnx.com] 
Sent: Thursday, June 18, 2009 8:16 PM
To: general-toolchain
Subject: Re: using clearmake to build qnx source

Hi Ashwin,

Unfortunately the existing makefiles are not especially ClearCase
friendly - although nor are they exceptionally hostile (for the most
part ;-)  What's the specific problem you're having?

Regards,
Neil

On Thu, 2009-06-18 at 06:14 -0400, Ashwin Patwekar wrote:
> Hi,
> 
> We use clearcase to store in our source trees. I was wondering Is there a easier way to use clearmake to build the QNX
 tree apart from rewriting all the existing makefiles.  So that Derived Shared Objects could be winked in to save on 
build time ?
> 
> Thanks and Regards,
> Ashwin
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post32025
> 

_______________________________________________
General
http://community.qnx.com/sf/go/post32039


RE: using clearmake to build qnx source  
Hi Ashwin,

Yes, the usemsg/pinfo stuff is one of the things which may cause some
grief.  The various install targets (e.g. install, hinstall, etc.) and
other similar things are also likely to cause grief since they tend to
unconditionally copy groups of items.  It might be possible to provide a
definition for CP_HOST which is a little more clearmake friendly (e.g.
create links, either hard or soft, instead of copies - but the makefiles
might not play along nicely).

There are probably a number of places which "post process" a derived
object and rebuild it in place (e.g. usemsg).  That sort of thing used
to cause clearmake to have fits; I don't know if it still does.

Also, I wouldn't suggest trying a parallel or distributed build ;-)

Regards,
Neil

P.S. Although I used to be very familiar with clearmake and its
peculiarities, it's been some time since I used clearcase.  But at the
time (seven or eight years ago?), the speed of the compilers and drives
was easily beginning to outpace the network for wink-ins.  If you are
just hoping to gain speed, you might want to do some benchmarking to see
if it is actually going to help any.  (Of course there are plenty of
other good reasons why you might want wink-in of derived objects, so the
speed may be moot in any case.)

On Mon, 2009-06-22 at 09:53 -0400, Ashwin Patwekar wrote:
> Hi Neil,
> 
> I managed to do a build in a snapshot view using the command under bash after running the . ./setenv.sh 
> clearmake -C gnu -v -f make.cc --include-dir=d:/QNX630 /qnx/target/qnx6/usr/include
> 
> I am looking to use the build avoidance feature of clearcase. So I created a dynamic view. 
> I see two problems even with the dynamic view
> 1. I am at 6.3.0 sp1 and since usemsg needs write permissions to the root directory which in my case is the vob 
directory z:. I can't use build avoidance atleast for now. When I move to 6.4.x it might be possible.
> 
> 2. Using the derived object might not be entirely possible as during the build process the headers are copied from 
prebuilt to install. 
> The headers are under source control from folder prebuilt. But since they are copied using cp command to install, 
Clearmake is not aware of the config records for these files. It does create a derived object but if we see the config 
record for the derived object created it lists the file in install with the timestamp for the time it was copied and no 
version information. 
> So in every build it will find a new timestamp for the file in install and create a new derived object. 
> Can I remove the rule for prebuilt and have the headers in install  ? 
> 
> Thanks and Regards,
> Ashwin
> 
> -----Original Message-----
> From: Neil Schellenberger [mailto:community-noreply@qnx.com] 
> Sent: Thursday, June 18, 2009 8:16 PM
> To: general-toolchain
> Subject: Re: using clearmake to build qnx source
> 
> Hi Ashwin,
> 
> Unfortunately the existing makefiles are not especially ClearCase
> friendly - although nor are they exceptionally hostile (for the most
> part ;-)  What's the specific problem you're having?
> 
> Regards,
> Neil
> 
> On Thu, 2009-06-18 at 06:14 -0400, Ashwin Patwekar wrote:
> > Hi,
> > 
> > We use clearcase to store in our source trees. I was wondering Is there a easier way to use clearmake to build the 
QNX tree apart from rewriting all the existing makefiles.  So that Derived Shared Objects could be winked in to save on 
build time ?
> > 
> > Thanks and Regards,
> > Ashwin
> > 
> > _______________________________________________
> > General
> > http://community.qnx.com/sf/go/post32025
> > 
> 
> _______________________________________________
> General
> http://community.qnx.com/sf/go/post32039
> 
> 
> 
> 
>...