imgtools/imaker/src/imaker_odp.mk
changeset 1 be27ed110b50
child 584 56dd7656a965
equal deleted inserted replaced
0:044383f39525 1:be27ed110b50
       
     1 #
       
     2 # Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 # All rights reserved.
       
     4 # This component and the accompanying materials are made available
       
     5 # under the terms of the License "Symbian Foundation License v1.0"
       
     6 # which accompanies this distribution, and is available
       
     7 # at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
       
     8 #
       
     9 # Initial Contributors:
       
    10 # Nokia Corporation - initial contribution.
       
    11 #
       
    12 # Contributors:
       
    13 #
       
    14 # Description: iMaker On-Demand Paging configuration
       
    15 #
       
    16 
       
    17 
       
    18 
       
    19 USE_PAGING = 0
       
    20 
       
    21 USE_PAGEDROM  = $(if $(filter rom code code:%,$(call lcase,$(USE_PAGING))),1,0)
       
    22 USE_PAGEDCODE = $(call _getcodedp)
       
    23 
       
    24 ODP_CONFDIR  = $(E32ROM)/configpaging
       
    25 ODP_PAGEFILE = configpaging.cfg
       
    26 ODP_CODECOMP = bytepair
       
    27 
       
    28 #             Min    Max    Young/Old   NAND page read  NAND page read
       
    29 #             live   live   page ratio  delay           CPU overhead
       
    30 #             pages  pages              (microseconds)  (microseconds)
       
    31 ODP_ROMCONF = 1024   2048     3           0               0
       
    32 
       
    33 # Section for Rombuild phase on all Demand Paging builds
       
    34 #
       
    35 define ODP_ROMINFO
       
    36   $(call iif,$(USE_PAGEDROM),
       
    37     #define PAGED_ROM
       
    38     ROMBUILD_OPTION -geninc
       
    39     demandpagingconfig $(strip $(ODP_ROMCONF))
       
    40     pagingoverride defaultpaged
       
    41     pagedrom
       
    42     compress
       
    43   )
       
    44   $(if $(filter 1,$(USE_PAGEDCODE)),
       
    45     #define PAGED_CODE
       
    46     pagingpolicy defaultpaged
       
    47   )
       
    48   $(if $(CORE_PAGEFILE),$(call iif,$(USE_PAGEDROM)$(filter 1,$(USE_PAGEDCODE)),
       
    49     externaltool=configpaging:$(CORE_PAGEFILE))
       
    50   )
       
    51 endef
       
    52 
       
    53 # Section for Rofsbuild phase on Code DP enabled builds
       
    54 #
       
    55 define ODP_CODEINFO
       
    56   $(if $(filter $1,$(USE_PAGEDCODE)),
       
    57     #define PAGED_CODE
       
    58     $(if $(ROFS$1_PAGEFILE),
       
    59       externaltool=configpaging:$(ROFS$1_PAGEFILE))
       
    60     pagingoverride defaultpaged
       
    61   )
       
    62 endef
       
    63 
       
    64 
       
    65 ###############################################################################
       
    66 # Internal stuff
       
    67 
       
    68 _getcodedp = $(or $(strip\
       
    69   $(if $(filter code code:,$(eval __i_paging := $(call lcase,$(call sstrip,$(USE_PAGING))))$(__i_paging)),\
       
    70     $(foreach rofs,1 2 3 4 5 6,$(call iif,$(USE_ROFS$(rofs)),$(rofs))),\
       
    71     $(if $(filter code:%,$(__i_paging)),\
       
    72       $(foreach rofs,1 2 3 4 5 6,$(findstring $(rofs),$(__i_paging)))))),0)
       
    73 
       
    74 
       
    75 # END OF IMAKER_ODP.MK