On Sat, 29 Sep 2012, Jon Trulson wrote:

> On Sun, 30 Sep 2012, Marcin Cieslak wrote:
>
>> On Sat, 29 Sep 2012, Jon Trulson wrote:
>>
>>> On Sat, 29 Sep 2012, Marcin Cieslak wrote:
>>>
>>>> On Wed, 19 Sep 2012, Marcin Cieslak wrote:
>>>>> make should never regenerate XmPrivate.h unless:
>>>>> - it is missing
>>>>> - extractprototype.awk is *newer* than XmPrivate.h
>>>>
>>>> Hello,
>>>>
>>>> I have another change to cde/include/Xm/extractprototype.awk
>>>> pending. What shall I do? XmPrivate.h needs to be re-created.
>>>>
>>>> Can we test the 'make World' on a Linux system again?
>>>>
[...]
>>
>> Please do log your build session.
>
> I will log it, and look at the timestamps.
>
>> I can't believe it does not work
>> without Motif linked.
>
> Hmm, it *cannot* work without a compiled openmotif tree linked.  Maybe
> that's where we are not communicating here.
>
> To build that file, you must have the proper *private* motif header
> files available.  At least one of which is generated at openmotif
> compile time.
>
> These are never installed on Linux, and I suspect, any other system
> that does not require you to compile OM yourself.
>
> Keep in mind, linux users do not have to compile openmotif, they just
> install the motif development packages, which include only the
> *public* header files and libs.
>
>> Only be aware that if for some reason
>> XmPrivate.h gets deleted (like error in awk invocation or whatever)
>> it needs to be properly recreated with
>>
>
> In the last case, the Imakefile deleted it due to the failure of the
> script.  The script failed because the private headers were not
> available.
>
>>  make includes MLIBSRC=/your/openmotif-2.3./lib
>>
>
> This means nothing on linux...  There is no openmotif/lib - that's
> only available when you *compile* OM yourself...
>
> You see where I'm coming from now?
>
>

As expected, it failed...

Here is the ls -l output before the build attempt:
-rw-rw-r-- 1 jon jon      5239 Sep 29 20:28 XmPrivate.h
-rw-rw-r-- 1 jon jon      1794 Sep 29 20:28 extractprototype.awk

Timestamps are the same (not sure if seconds count), but whatever, an
attempt is made to rebuild it anyway.

Here's the relevant snippet from the build log:
...
including in include/Xm...
/home/jon/src/CDE/cde/include/Xm
make[3]: Entering directory `/home/jon/src/CDE/cde/include/Xm'
awk -f extractprototype.awk ../../imports/motif/lib/Xm/*.h > XmPrivate.h || rm 
-f XmPrivate.h
awk: cannot open ../../imports/motif/lib/Xm/*.h (No such file or directory)
+ mkdir -p ../../exports/include/Xm
+ cd ../../exports/include/Xm
+ rm -f XmPrivate.h
+ ln -s ../../../include/Xm/XmPrivate.h .

...

Since the includes don't exist, extractprototype.awk fails, and then
the '|| rm -f XmPrivate.h' deletes it.

I have committed a patch that will prevent this from ever being
generated automatically in the future, simply by removing the
dependancy on extractprototype.awk for XmPrivate.h.

To rebuild manually,

cd include/Xm
rm XmPrivate.h
make XmPrivate.h

Sorry, but that's the way it's goingto have to be.

-- 
Jon Trulson

The Higgs Field is what make atoms matter.
                 -- Tom L.



------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel

Reply via email to