Issue 66531 - Lots of "Macro `LAST_MINOR' redefined after use" warnings
Summary: Lots of "Macro `LAST_MINOR' redefined after use" warnings
Status: CLOSED FIXED
Alias: None
Product: Build Tools
Classification: Code
Component: solenv (show other issues)
Version: current
Hardware: All All
: P3 Trivial (vote)
Target Milestone: OOo 2.0.4
Assignee: hjs
QA Contact: issues@tools
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-17 23:08 UTC by quetschke
Modified: 2007-01-03 12:12 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Clean up for settings.mk (2.52 KB, patch)
2006-06-17 23:48 UTC, quetschke
no flags Details | Diff
Fixed typo in previous patch (2.42 KB, patch)
2006-06-17 23:55 UTC, quetschke
no flags Details | Diff
Remove unneeded includes of *minor.mk (7.85 KB, patch)
2006-06-19 19:09 UTC, quetschke
no flags Details | Diff
`LAST_MINOR` only patch (7.41 KB, patch)
2006-06-24 03:58 UTC, quetschke
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2006-06-17 23:08:34 UTC
solenv/inc/minor.mk defines LAST_MINOR and is .INCLUDEed by settings.mk

hsqldb\makefile.mk .INCLUDEes minor.mk again. I guess this is a bug.

settings.mh also defines a rule to create $(UPD)minor.mk as a copy of minor.mk
and $(UPD)minor.mk is .INCLUDEed in:
  automation/
  binfilter/
  desktop/
  sc/
  sw/

Is $(UPD)minor.mk needed? Or can I prepare a patch to remove the generating rule
and the .INCLUDES?

And what about the:

.INCLUDE : $(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/$(UPD)minor.mk

in settings.mk. It comes a few lines after the
 .INCLUDE : minor.mk


Slightly related: Where do we create the $(UPD)$(LAST_MINOR).mk for:
.INCLUDE .IGNORE: $(UPD)$(LAST_MINOR).mk
?
Comment 1 quetschke 2006-06-17 23:48:48 UTC
Created attachment 37217 [details]
Clean up for settings.mk
Comment 2 quetschke 2006-06-17 23:51:09 UTC
To answer one of my questions, yes we need to include $(UPD)minor.mk to force the
creation of "its" directory and the flag file. Previous patch cleans that section
up a little.

The first and last part of the second remain unanswered.
Comment 3 quetschke 2006-06-17 23:55:31 UTC
Created attachment 37218 [details]
Fixed typo in previous patch
Comment 4 quetschke 2006-06-18 00:07:47 UTC
> The first and last part of the second remain unanswered.

Wow, cryptic! I meant:
The first and last part of the initial question remain unanswered.
Comment 5 hjs 2006-06-19 14:21:05 UTC
> hsqldb\makefile.mk .INCLUDEes minor.mk again. I guess this is a bug.
yes

also $(UPD)minor.mk isn't intended to be included by anyone else but
settings.mk. this is wrong too.

>Slightly related: Where do we create the $(UPD)$(LAST_MINOR).mk for:
>.INCLUDE .IGNORE: $(UPD)$(LAST_MINOR).mk
>?
hmm... couldn't find neither creation nor usage of this .mk in solenv/inc. it
also isn't created in regular builds here. looks obsolete...

btw.: you cannot simply remove the .IGNORE attribute from including
udkversion.mk as it will break builds from scratch.
Comment 6 quetschke 2006-06-19 14:52:46 UTC
> btw.: you cannot simply remove the .IGNORE attribute from including
> udkversion.mk as it will break builds from scratch.

Uh, right, as $(PRJ)$/inc$/udkversion.mk in:

%udkversion.mk : $(PRJ)$/inc$/udkversion.mk
	@+$(COPY) $(PRJ)$/inc$/udkversion.mk $@

only exists in certain projects. Maybe the .INCLUDE ...udkversion.mk and
the rule to create it should move into the projects that need it. (Which are
those?)

I will prepare a patch for the minor.mk stuff, do you have a CWS with:
  automation, binfilter, desktop, sc, sw ?
Comment 7 hjs 2006-06-19 15:30:31 UTC
>only exists in certain projects. Maybe the .INCLUDE ...udkversion.mk and
>the rule to create it should move into the projects that need it. (Which are
>those?)

AFAIK, there are several. don't ask me for the names. also, including it doesn't
mean there is any usage of it's content ;)

>I will prepare a patch for the minor.mk stuff, do you have a CWS with:
>  automation, binfilter, desktop, sc, sw ?
not yet. but i'll create a new one and add these modules (no helpcontent2? ;)).
Comment 8 quetschke 2006-06-19 16:57:40 UTC
udkversion.mk lives in sal/inc/ and only sets UDK_{MAJOR,MINOR,MICRO} and
these doesn't seem to be used very often:

<http://go-oo.org/lxr/ident?i=UDK_MAJOR>

That file should move into solenv/inc/ and maybe we then move the .INCLUDE
into the projects that need the three macros. - Or set the three variables
in *env.set / solarenv (or what it is called) then we don't need the .INCLUDE.
Comment 9 hjs 2006-06-19 17:43:33 UTC
@jsc: are the reasons not to put udkversion.mk into solenv still valid?
Comment 10 quetschke 2006-06-19 19:09:39 UTC
Created attachment 37237 [details]
Remove unneeded includes of *minor.mk
Comment 11 quetschke 2006-06-24 03:58:06 UTC
Created attachment 37305 [details]
`LAST_MINOR` only patch
Comment 12 quetschke 2006-06-24 03:59:52 UTC
Committed the previous patch to vq33. I will create two new issues for the
.SUFFIXES and udkversion.mk issues.
Comment 13 quetschke 2006-06-24 04:00:22 UTC
@ause: Please verify.
Comment 14 quetschke 2006-06-25 05:27:28 UTC
I found another one in hsqldb/makefile.mk.
Comment 15 quetschke 2006-06-25 05:41:08 UTC
Removed/committed to vq33.

@ause: Please verify.
Comment 16 hjs 2006-07-06 18:05:10 UTC
lots of $(UPD)minor.mk includes removed
Comment 17 hjs 2007-01-03 12:12:04 UTC
.