perfopts/openvgu.mmp
author William Roberts <williamr@symbian.org>
Mon, 25 Oct 2010 17:26:54 +0100
changeset 80 3ab0df073c86
parent 73 59f45c8582d3
permissions -rw-r--r--
Add support for "slim", which is "stem" + removal of some exports and checking of import details For this to work, the static_dependencies.txt file needs to contain the augmented dependency information. To help with this, it can now consume a mixture of both rom_content.csv lines and static_dependencies.txt lines: the best way to update the information would be something like (edit rom_content.csv to add "slim" to XXX.dll) findstr /i "xxx.dll" rom_content.csv > slim.txt findstr /i "xxx.dll" static_dependencies.txt >> slim.txt perl ..\tools\static_dependencies.pl -u static_dependencies.txt slim.txt > new_dependencies.txt This will notice the "slim" marking for xxx.dll, and record the detailed import and export lists for xxx.dll and everything which links to it. The new information will look something like sys\bin\xxx.dll /epoc32/release/armv5/urel/stem_xxx.dll exports=1-98.100-102:euser[100039e5].dll sys\bin\yyy.dll /epoc32/release/armv5/urel/yyy.dll euser[100039e5].dll:xxx[102750c7].dll@2.4-5.77.104-106:scppnwdl.dll sys\bin\zzz.dll /epoc32/release/armv5/urel/zzz.dll euser[100039e5].dll:xxx[102750c7].dll@23.25.74-77:scppnwdl.dll Only executables for which there is a "slim" marking will have this level of detail. The filtering script now does the detailed cross-checking of imports to exports for "slim" executables. In this case, it will observe the stem_xxx.dll does not export ordinal 104, and so the filtering will include deleting sys\bin\yyy.dll (xxx.dll Missing ordinal 104) sys\bin\zzz.dll will be acceptable, because it only uses ordinals which are still present in stem_xxx.dll
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     1
/*
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     2
* Copyright (c) 2009 Symbian Foundation Ltd
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     3
* This component and the accompanying materials are made available
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     4
* under the terms of the License "Eclipse Public License v1.0"
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     5
* which accompanies this distribution, and is available
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     6
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     7
*
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     8
* Initial Contributors:
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
     9
* Symbian Foundation Ltd - initial contribution.
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    10
* 
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    11
* Contributors:
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    12
*
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    13
* Description:
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    14
* openvgu mmp file
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    15
*/
71
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    16
// Modified to build from /sf/incubator/stemkit to enable VFP optimisation
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    17
// builds against /sf/os/graphics/openvg/openvgrefimplementation/sfopenvg
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    18
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    19
#include <vg\openvguids.hrh> // For uids
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    20
71
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    21
target          stem_libopenvgu_sw.dll		// Destination filename
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    22
targettype      dll				// Binary build type
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    23
uid             KUidSharedDllUidValue KUidVGUDllUidValue		// File uids
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    24
CAPABILITY      CAP_GENERAL_DLL
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    25
vendorid        0x70000001
73
59f45c8582d3 Resolve ROM linking issues (via use of NOEXPORTLIBRARY in MMP files) and update rom content and static dependencies.
markw <markw@symbian.org>
parents: 72
diff changeset
    26
noexportlibrary
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    27
72
2cad7c5d7db8 Build OpenVG reference implementation for VFPv2.
markw <markw@symbian.org>
parents: 71
diff changeset
    28
armfpu vfpv2
2cad7c5d7db8 Build OpenVG reference implementation for VFPv2.
markw <markw@symbian.org>
parents: 71
diff changeset
    29
71
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    30
userinclude     /sf/os/graphics/openvg/openvgrefimplementation/sfopenvg/sfopenvg/include //for internal egl functions e.g. do_eglXXX
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    31
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    32
OS_LAYER_SYSTEMINCLUDE
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    33
SYSTEMINCLUDE  OS_LAYER_PUBLIC_EXPORT_PATH(vg) // EGL include files
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    34
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    35
macro __OPENVGHEADERS_USE_VG_1_1
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    36
71
20afbbdb50d8 Modify MMP files to build OpenVG ref. impl. from stemkit and add to bld.inf.
markw <markw@symbian.org>
parents: 70
diff changeset
    37
sourcepath      .		// Relative path to source files
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    38
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    39
source          vgu.cpp
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    40
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    41
library         euser.lib     		// Mandatory
73
59f45c8582d3 Resolve ROM linking issues (via use of NOEXPORTLIBRARY in MMP files) and update rom content and static dependencies.
markw <markw@symbian.org>
parents: 72
diff changeset
    42
library			sflibopenvgrefimpl.lib
70
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    43
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    44
#ifdef WINS
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    45
DEFFILE         \epoc32\include\def\win32\libopenvgu11.def	// WINS/WINSCW def file
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    46
#else
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    47
DEFFILE         \epoc32\include\def\eabi\libopenvgu11.def	// ARM def file
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    48
#endif // WINS
6b078b83b04a Add original MMP files to build the OpenVG reference implementation.
markw <markw@symbian.org>
parents:
diff changeset
    49