gfxconversion/mifconv/makefile_templates/mifconv_step3.make
author Simon Howkins <simonh@symbian.org>
Wed, 10 Nov 2010 00:18:53 +0000
changeset 45 ed860f0ee3bf
parent 18 b196ca449a75
permissions -rw-r--r--
Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm). This should make it much easier to pinpoint how the system model should be adjusted to avoid the warnings in future. Also simplified the existing redefinition guards.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
# All rights reserved.
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
# This component and the accompanying materials are made available
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
# under the terms of "Eclipse Public License v1.0"
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
# which accompanies this distribution, and is available
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
# Initial Contributors:
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
# Nokia Corporation - initial contribution.
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
# Contributors:
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
# 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
# Description:
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
# 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
##########################################################################################
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
# Get list of files
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
18
hgs
parents: 12
diff changeset
    22
# First get SVG files from SOURCEDIR, then .bmp files from SOURCEDIR, then .svg from VECTORSOURCEDIR, 
hgs
parents: 12
diff changeset
    23
# then .bmp from BITMAPSOURCEDIR and finally .svg from all VECTORSOURCESUBDIR's
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
SOURCEPATHS:=$(foreach FILE, \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
					$(basename $(FILES)), \
18
hgs
parents: 12
diff changeset
    26
					$(firstword \
hgs
parents: 12
diff changeset
    27
					$(wildcard $(SOURCEDIR)$/$(FILE).svg $(SOURCEDIR)$/$(FILE).bmp $(VECTORSOURCEDIR)$/$(FILE).svg) \
hgs
parents: 12
diff changeset
    28
					$(wildcard $(VECTORSOURCESUBDIR_NSS)$/$(FILE).svg $(VECTORSOURCESUBDIR_NOKIA)$/$(FILE).svg $(VECTORSOURCESUBDIR_OEM)$/$(FILE).svg) \
hgs
parents: 12
diff changeset
    29
					$(BITMAPSOURCEDIR)$/$(FILE).bmp) \
hgs
parents: 12
diff changeset
    30
					)
hgs
parents: 12
diff changeset
    31
					
hgs
parents: 12
diff changeset
    32
# Get a list of SVG files including VECTORSOURCESUBDIRs
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
SVGFILES:=$(filter %.svg,$(SOURCEPATHS))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
# BMP files are all the other files
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
BMPFILES:=$(filter-out $(SVGFILES),$(SOURCEPATHS))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
18
hgs
parents: 12
diff changeset
    38
# Filter VECTORSOURCESUBDIRs content out from SVGFILES
hgs
parents: 12
diff changeset
    39
SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_NSS)%,$(SVGFILES))
hgs
parents: 12
diff changeset
    40
SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_NOKIA)%,$(SVGFILES))
hgs
parents: 12
diff changeset
    41
SVGFILES:=$(filter-out $(VECTORSOURCESUBDIR_OEM)%,$(SVGFILES))
hgs
parents: 12
diff changeset
    42
hgs
parents: 12
diff changeset
    43
# Get SVG files from VECTORSOURCESUBDIRs
hgs
parents: 12
diff changeset
    44
SVGFILES_NSS:=$(foreach FILE, \
hgs
parents: 12
diff changeset
    45
					$(basename $(FILES)), \
hgs
parents: 12
diff changeset
    46
					$(wildcard $(VECTORSOURCESUBDIR_NSS)$/$(FILE).svg))
hgs
parents: 12
diff changeset
    47
hgs
parents: 12
diff changeset
    48
SVGFILES_NOKIA:=$(foreach FILE, \
hgs
parents: 12
diff changeset
    49
					$(basename $(FILES)), \
hgs
parents: 12
diff changeset
    50
					$(wildcard $(VECTORSOURCESUBDIR_NOKIA)$/$(FILE).svg))
hgs
parents: 12
diff changeset
    51
hgs
parents: 12
diff changeset
    52
SVGFILES_OEM:=$(foreach FILE, \
hgs
parents: 12
diff changeset
    53
					$(basename $(FILES)), \
hgs
parents: 12
diff changeset
    54
					$(wildcard $(VECTORSOURCESUBDIR_OEM)$/$(FILE).svg))
hgs
parents: 12
diff changeset
    55
hgs
parents: 12
diff changeset
    56
# Paths of SVGB files will be under the intermediate directory
hgs
parents: 12
diff changeset
    57
SVGBFILES:=$(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES)))) \
hgs
parents: 12
diff changeset
    58
		   $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_NSS)))) \
hgs
parents: 12
diff changeset
    59
		   $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_NOKIA)))) \
hgs
parents: 12
diff changeset
    60
		   $(addprefix $(VECTORINTERMEDIATEDIR)$/,$(notdir $(addsuffix b,$(SVGFILES_OEM))))
hgs
parents: 12
diff changeset
    61
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
# Resolve mask files. Mask files are assumed to locate in the same folder than the actual bmp-file.
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
MASKFILES:=$(foreach FILE, \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
                          $(BMPFILES), \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    65
                          $(FILE) $(foreach MASK, \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    66
                                            $(filter $(notdir $(basename $(FILE)))$(MASK_OPTION_1) $(notdir $(basename $(FILE)))$(MASK_OPTION_8),$(MASKFILES)), \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    67
                                            $(dir $(FILE))$(MASK).bmp) )
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    68
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
# Filter out the actual bmp-files:
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    70
MASKFILES:=$(filter-out $(BMPFILES), $(MASKFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    72
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
##########################################################################################
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    74
# Define copy rules
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    76
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    77
# If SOURCEDIR is defined, we need to create a rule for copying the vector files into the intermediate directory
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
ifneq ($(strip $(SOURCEDIR)),)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
18
hgs
parents: 12
diff changeset
    80
# Create list of files
hgs
parents: 12
diff changeset
    81
USERSVGFILES:=$(filter $(SOURCEDIR)%,$(SVGFILES))
hgs
parents: 12
diff changeset
    82
USERBMPFILES:=$(filter $(SOURCEDIR)%,$(BMPFILES))
hgs
parents: 12
diff changeset
    83
USERINTERMEDIATESVGFILES := $(subst $(SOURCEDIR), \
hgs
parents: 12
diff changeset
    84
									$(VECTORINTERMEDIATEDIR), \
hgs
parents: 12
diff changeset
    85
									$(USERSVGFILES) \
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
								)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    88
	# Now define the copy rule
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    89
ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    90
    $(USERINTERMEDIATESVGFILES) : $(VECTORINTERMEDIATEDIR)% : $(SOURCEDIR)%
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    91
	$(TOOLCOPY) $< $@
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
ifeq ($(OSTYPE),cygwin)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
	$(GNUCHMOD) a+rw "$@"
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
endif
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    95
endif
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
endif 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    97
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    98
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    99
# The same copy rule is needed for system files as well, first generate the lists
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   100
SYSTEMSVGFILES:=$(filter $(VECTORSOURCEDIR)%,$(SVGFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
SYSTEMINTERMEDIATESVGFILES := $(subst $(VECTORSOURCEDIR), \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   102
									$(VECTORINTERMEDIATEDIR), \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   103
									$(SYSTEMSVGFILES) \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
								)
18
hgs
parents: 12
diff changeset
   105
SYSTEMINTERMEDIATESVGFILES_NSS:=$(subst $(VECTORSOURCESUBDIR_NSS), \
hgs
parents: 12
diff changeset
   106
									$(VECTORINTERMEDIATEDIR), \
hgs
parents: 12
diff changeset
   107
									$(SVGFILES_NSS) \
hgs
parents: 12
diff changeset
   108
								)
hgs
parents: 12
diff changeset
   109
SYSTEMINTERMEDIATESVGFILES_NOKIA:=$(subst $(VECTORSOURCESUBDIR_NOKIA), \
hgs
parents: 12
diff changeset
   110
									$(VECTORINTERMEDIATEDIR), \
hgs
parents: 12
diff changeset
   111
									$(SVGFILES_NOKIA) \
hgs
parents: 12
diff changeset
   112
								)
hgs
parents: 12
diff changeset
   113
SYSTEMINTERMEDIATESVGFILES_OEM:=$(subst $(VECTORSOURCESUBDIR_OEM), \
hgs
parents: 12
diff changeset
   114
									$(VECTORINTERMEDIATEDIR), \
hgs
parents: 12
diff changeset
   115
									$(SVGFILES_OEM) \
hgs
parents: 12
diff changeset
   116
								)
hgs
parents: 12
diff changeset
   117
SYSTEMBMPFILES:=$(filter $(BITMAPSOURCEDIR)%,$(BMPFILES))
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   118
18
hgs
parents: 12
diff changeset
   119
# Copy SVG files in reverse order of priority to enabele overriding SVG files with lesser priority
hgs
parents: 12
diff changeset
   120
45
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   121
ifeq ($(INIT_CFG),$(PLATFORM)$(CFG))
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   122
define test_for_redefinition
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   123
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   124
STEP3_GUARD=TARGET_$(call sanitise,$(1))
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   125
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   126
ifeq ($$($$(STEP3_GUARD)),)
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   127
$$(STEP3_GUARD)=$(COMPONENT_META)
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   128
else
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   129
$$(warning warning: commands for $(1) redefined via $(COMPONENT_META) - originally via $$($$(STEP3_GUARD)))
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   130
endif
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   131
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   132
endef
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   133
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   134
MIF_INTERMEDIATES=$(SYSTEMINTERMEDIATESVGFILES_OEM) $(SYSTEMINTERMEDIATESVGFILES_NOKIA) $(SYSTEMINTERMEDIATESVGFILES_NSS) $(SYSTEMINTERMEDIATESVGFILES)
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   135
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   136
CODE_TO_TEST_FOR_REDEFINITION=$(foreach MIF_INTERMEDIATE,$(MIF_INTERMEDIATES),$(call test_for_redefinition,$(MIF_INTERMEDIATE)))
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   137
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   138
$(eval $(CODE_TO_TEST_FOR_REDEFINITION))
ed860f0ee3bf Added useful diagnostics that explain why raptor is redefining commands for a target (when processing things through the mifconv.flm).
Simon Howkins <simonh@symbian.org>
parents: 18
diff changeset
   139
18
hgs
parents: 12
diff changeset
   140
# Define the copy rules for VECTORSOURCESUBDIRs
hgs
parents: 12
diff changeset
   141
$(SYSTEMINTERMEDIATESVGFILES_OEM) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_OEM)% 
hgs
parents: 12
diff changeset
   142
	$(TOOLCOPY) $< $@	
hgs
parents: 12
diff changeset
   143
ifeq ($(OSTYPE),cygwin)
hgs
parents: 12
diff changeset
   144
	$(GNUCHMOD) a+rw "$@"
hgs
parents: 12
diff changeset
   145
endif
hgs
parents: 12
diff changeset
   146
hgs
parents: 12
diff changeset
   147
$(SYSTEMINTERMEDIATESVGFILES_NOKIA) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_NOKIA)% 
hgs
parents: 12
diff changeset
   148
	$(TOOLCOPY) $< $@	
hgs
parents: 12
diff changeset
   149
ifeq ($(OSTYPE),cygwin)
hgs
parents: 12
diff changeset
   150
	$(GNUCHMOD) a+rw "$@"
hgs
parents: 12
diff changeset
   151
endif
hgs
parents: 12
diff changeset
   152
hgs
parents: 12
diff changeset
   153
$(SYSTEMINTERMEDIATESVGFILES_NSS) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCESUBDIR_NSS)% 
hgs
parents: 12
diff changeset
   154
	$(TOOLCOPY) $< $@	
hgs
parents: 12
diff changeset
   155
ifeq ($(OSTYPE),cygwin)
hgs
parents: 12
diff changeset
   156
	$(GNUCHMOD) a+rw "$@"
hgs
parents: 12
diff changeset
   157
endif
hgs
parents: 12
diff changeset
   158
hgs
parents: 12
diff changeset
   159
# Define the copy rule for VECTORSOURCEDIR
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   160
$(SYSTEMINTERMEDIATESVGFILES) : $(VECTORINTERMEDIATEDIR)% : $(VECTORSOURCEDIR)% 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   161
	$(TOOLCOPY) $< $@	
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   162
ifeq ($(OSTYPE),cygwin)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   163
	$(GNUCHMOD) a+rw "$@"
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   164
endif
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   165
endif
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   166
18
hgs
parents: 12
diff changeset
   167
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   168
# Get full list of intermediate files
18
hgs
parents: 12
diff changeset
   169
VECTORINTERMEDIATESOURCES := $(SYSTEMINTERMEDIATESVGFILES) $(SYSTEMINTERMEDIATESVGFILES_NSS) $(SYSTEMINTERMEDIATESVGFILES_NOKIA) $(SYSTEMINTERMEDIATESVGFILES_OEM) $(USERINTERMEDIATESVGFILES)
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   170
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   171
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   172
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   173
# Debug prints for debugging purposes
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   174
#$(warning SOURCEPATHS $(SOURCEPATHS))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   175
#$(warning SVGFILES $(SVGFILES))
18
hgs
parents: 12
diff changeset
   176
#$(warning SVGFILES_NSS $(SVGFILES_NSS))
hgs
parents: 12
diff changeset
   177
#$(warning SVGFILES_NOKIA $(SVGFILES_NOKIA))
hgs
parents: 12
diff changeset
   178
#$(warning SVGFILES_OEM $(SVGFILES_OEM))
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   179
#$(warning SVGBFILES $(SVGBFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   180
#$(warning BMPFILES $(BMPFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   181
#$(warning USERSVGFILES $(USERSVGFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   182
#$(warning USERBMPFILES $(USERBMPFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   183
#$(warning USERINTERMEDIATESVGFILES $(USERINTERMEDIATESVGFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   184
#$(warning SYSTEMSVGFILES $(SYSTEMSVGFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   185
#$(warning SYSTEMBMPFILES $(SYSTEMBMPFILES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   186
#$(warning SYSTEMINTERMEDIATESVGFILES $(SYSTEMINTERMEDIATESVGFILES))
18
hgs
parents: 12
diff changeset
   187
#$(warning SYSTEMINTERMEDIATESVGFILES_NSS $(SYSTEMINTERMEDIATESVGFILES_NSS))
hgs
parents: 12
diff changeset
   188
#$(warning SYSTEMINTERMEDIATESVGFILES_NOKIA $(SYSTEMINTERMEDIATESVGFILES_NOKIA))
hgs
parents: 12
diff changeset
   189
#$(warning SYSTEMINTERMEDIATESVGFILES_OEM $(SYSTEMINTERMEDIATESVGFILES_OEM))
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   190
#$(warning VECTORINTERMEDIATESOURCES $(VECTORINTERMEDIATESOURCES))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   191
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   192
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   193
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   194
##########################################################################################
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   195
# Rules for creating directories
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   196
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   197
# Please note that this implementation assumes that Mifconv core takes care of creating
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   198
# directories for files which it generates
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   199
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   200
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   201
# Check if the intermediate directory exists - if not, create it
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   202
ifeq ($(wildcard $(VECTORINTERMEDIATEDIR)$/),) 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   203
	__DUMMY_MKDIR := $(shell $(TOOLMKDIR) $(VECTORINTERMEDIATEDIR)) 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   204
endif
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   205
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   206
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   207
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   208
##########################################################################################
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   209
# Rule for calling SVGTBINENCODE ie SVG to SVGB conversion
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   210
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   211
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   212
%.svgb : %.svg
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   213
# If SVGENCODINGVERSION contains anything else but whitespace, provide it to svgtbinencode with -v option
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   214
	$(SVGTBINENCODE) $(addprefix -v ,$(SVGENCODINGVERSION)) $<
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   215
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   216
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   217
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   218
##########################################################################################
12
9b222d6b819d Revision: 201009
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   219
# MBM file name resolution. BMCONV is called by mifconv if -B is defined. Otherwise 
9b222d6b819d Revision: 201009
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   220
# mifconv uses puilt-in logic for BMP to MBM -conversion.
0
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   221
#
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   222
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   223
# Check if we have any bitmap sources available
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   224
ifneq ($(strip $(BMPFILES)),)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   225
    
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   226
    # The name of the bitmap file is decided from the miffile or header file depending which one is defined
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   227
    BITMAPFILE:=$(addsuffix .mbm,$(basename $(firstword $(TARGETFILE) $(HEADERFILE))))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   228
    #$(warning BITMAPFILE $(BITMAPFILE))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   229
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   230
# No bitmap sources, so the filename of the MBM file is empty 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   231
else
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   232
    BITMAPFILE:=
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   233
endif 
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   234
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   235
##########################################################################################
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   236
# This may require some explaining
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   237
# Line 5: Strip paths from SOURCEPATHS (the input files with paths)
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   238
# Line 3: For all .svg files in previous, change suffix to .svgb
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   239
# Line 2: From previous, list each item twice, once with VECTORINTERMEDIATEDIR path, and once without any path
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   240
#            Now we should have all the files in correct order in format:
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   241
#            file.bmp VECTORINTERMEDIATEDIR/file.bmp otherfile.svgb VECTORINTERMEDIATEDIR/otherfile.svgb ...
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   242
# Line 1: Use filter to select only one or either from the list above
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   243
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   244
MIFCONVFILES:=$(filter $(SVGBFILES) $(notdir $(BMPFILES)), \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   245
                 $(foreach FILE, \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   246
                                     $(patsubst %.svg, \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   247
                                     %.svgb,\
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   248
                                     $(notdir $(SOURCEPATHS)) \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   249
                  ) , \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   250
                  $(FILE) $(VECTORINTERMEDIATEDIR)$/$(FILE) \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   251
                  ) \
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   252
               )
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   253
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   254
MIFCONVOPTS:=$(foreach FILE,$(MIFCONVFILES),$(OPTION_$(notdir $(basename $(FILE)))) $(FILE))
f453ebb75370 Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   255