Join Now
Quality Rating:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)
Expertise Level:
  • Currently 0.0 / 5
(0.0 / 5 - 0 votes cast)

This page was last modified 10:01, 12 December 2007.

About extension makefiles

From Forum Nokia Wiki

About extension makefiles

Extension makefiles is specified by keyword makefile, nmakefile, and/or gnumakefile in prj_mmpfiles section of bld.inf file. Here is talking about extension makefile is specified by gnumakefile,which is used commonly. An extension makefile can complete different series work when different commands of abld tool run,which via provide different targets(makmake,freeze,library,clean,final,resource,bld,savespace,releasables).The MSDOS commands listed with the target will be executed when corresponding abld command called.These MSDOS command's works include generating hlp file,mif file and all kinds of files via SDK command tool,which is also called external command. And these files can be operated by internal command in extension makefile. There are some notes when creats extension makefile.

Target format

All targets must be provided in extension makefile because every targets will be called during abld running.And must be followed by a colon,espacially it has commands to be run.Or Multiple targets can be put on one line and end with a colon if no commands.Such as:


makmake:

	... 

bld:

	...


freeze library clean final resource savespace releasables:

Command line format

Every command lines after target must start with a separator which length equal 8 spaces.But it can't be instead of 8 spaces,or there must be errors in compiling extension makefile.The separator is inputted by clicking Tab key on keyboard of PC.

Path format

Because the abld tool is a Perl script in fact,so the macros defined in enviroment can be used in extension makefile.Such as:

$(EPOCROOT) get EPOCROOT path of default SDK


$(PLATFORM) get build platform type (WINS,WINSCW,THUMB,ARMI,GCCE,etc.)


$(CFG) get build program type (UDEB,UREL)

These can be used in conjunction to do different works base on different enviroment.such as:

ifeq (WINS,$(findstring WINS, $(PLATFORM)))


do things in WINS platform


else


do things in other platforms


endif

Commonly, what extension makefile uses is relative path,so the location of project directory is connected with it.But macros can also be used in path of MSDOS commands,which will make the project fits IDE has multiple SDKs.

For example: ${EPOCROOT}\Epoc32\$(PLATFORM)\c\system\help

This path will be auto-changed when SDK is switched or build platform type is altered.And no matter which SDK or type is selected,the path will always correct.So the project include this kind of extension makefile can be put at any location of SDK installed disk.But it isn't the only one condition,the paths in other files of project,such as pkg file,also affects the location of project directory.

Related Discussions
Thread Thread Starter Forum Replies Last Post
using cyrillic with phones valia General Browsing 1 2003-05-26 12:49
Viewing Thumbnail images of phone on the PC ddbhasin Mobile Java General 2 2007-10-19 10:58
build does nothing - carbide express toutpourricesite Carbide.c++ and CodeWarrior Tools 2 2006-12-19 15:50
Checking call? madsbjoern Python 7 2006-04-05 12:17
Were there any Nokia phones with CLDC 1.0 + floating point as an extension? gkulewski Mobile Java General 4 2005-11-21 10:33
 
Powered by MediaWiki
     
     RDF Facets:
     
     
     qfnZtypeQUqfnTypeZCommunityContentQ
     qfnZtypeQUqfnTypeZWebpageQ
     qfnZtypeQUqfnTypeZWikiContentQ
     qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX