summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/symbian/def_files.prf
Commit message (Collapse)AuthorAgeFilesLines
* Fixed symbian/linux-armcc mkspec when configured with -qtlibinfix.axis2010-07-021-7/+11
| | | | | Task: QTBUG-11396 RevBy: Miikka Heikkinen
* Fixed several problems with the postlinker for Symbian (elf2e32).axis2010-06-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fixes were too complicated for a profile and so a perl script was introduced. These are the issues that were addressed: - Made sure that we link correctly in all cases where there is a mismatch between the DEF file and the ELF file. Specifically, these two cases: - If elf2e32 detects a symbols in the ELF file that is marked as absent in the DEF file, an ordinal mapping will not be generated in the dso file. This means that binaries linking to the library will not find the symbol, even though it exists in the code. Since this is completely useless behavior, this was fixed to include the symbol regardless. - If the DEF file contains a symbol that is not present in the ELF file, an ordinal mapping will be created in the dso file regardless, which means applications can link to a symbol that does not exist. This is even worse than point one, since it is not detected until runtime, when the dynamic link will fail. Fixed by leaving the symbol out of the dso file if it does not exist in the ELF file. Both fixes require rerunning elf2e32 to fix the symbol mappings that were broken in the first run, but it only happens if at least one symbol is broken in the way described above. Also, freezing the DEF files will "save" the symbols, so that it does not occur after that. Note that this does not remove the ability to get the postlinker to tell you about mismatches. By doing "QMAKE_ELF2E32_FLAGS -= --unfrozen", the symbol mismatches will be considered errors instead of warnings, and they can be caught that way. - Code that was previously in the profile was moved to the perl script: - Detecting that there are errors in the postlink and return nonzero. elf2e32 does not do this on its own (at least not when using Wine). - Only overwriting the old dso file if the new one is different. This saves build time, since binaries that depend on the library do not trigger relink if the dso has not changed. These two points simplify the code, and they will also help the porting to Windows, since the old shell script tricks would not have worked there. RevBy: Trust me
* Explicit EXPORTUNFROZEN will prevent default defBlock generationMiikka Heikkinen2010-06-101-1/+2
| | | | | | | If MMP_RULES contains EXPORTUNFROZEN, no DEFFILE statements should be generated to mmp files. Reviewed-by: Janne Koskinen
* Fixed def file usage for Qt plugins under the makefile build system.axis2010-06-041-1/+1
| | | | | | Previously it would not use the autogenerated def files. RevBy: Thomas Zander
* escape backslashesOswald Buddenhagen2010-05-261-1/+1
| | | | this makes windows-style path specs *ugly*. that's intentional. :-P
* Make the 'freeze' target work for linux/symbian.Thomas Zander2010-05-191-3/+3
| | | | | Users can type 'make freeze' to get the def files updated right in the git source tree
* Added Symbian def file support to Linux build system.axis2010-03-081-26/+69
| | | | | | | | | | | This also switches the official def file variable in qmake profiles to DEF_FILE. Support for freezing def files was also added, but needs more work and is therefore disabled for now. Task: QTBUG-7510 Task: QTBUG-8052
* Further bug fixes for enable/disables DEF files mechanism on SymbianIain2010-02-041-20/+28
| | | | | | | | | | | | | | | | | | | | Fix bug where all target types, including apps, plugins and static libraries were getting DEFFILE statements - now it's just libraries that get it. Fix bug where duplicate DEFFILE blocks were being added to projects that manually specified their own DEFFILE - this now tests for the qmake variable "defBlock" being set, and doesn't add additional DEFFILE statements if it is. NOTE: This means that adding DEFFILE statements to MMP_RULES manually should be done by creating a variable called defBlock, and adding that to the MMP_RULES (ie. MMP_RULES += defBlock) Fix bug in configure.exe, where using -nokia-developer for Windows builds would warn about Symbian DEF file usage (or lack thereof) Reviewed-by: Janne Koskinen Reviewed-by: Jason Barron
* Improve DEF file enable/disable mechanism on SymbianIain2010-01-221-0/+26
Provide configure flag to enable/disable the use of DEF files on Symbian. A useful side-effect was that it cleaned up how we control DEF files from qbase.pri and in WebKit. -nokia-developer still disables DEF files, as it triggers the autotest exports, which are not frozen into the DEF files. Disabling DEF files means that there is no BC with previously released versions of Qt, so this should only be used for development purposes. .pro files can specify custom locations for DEF files by setting defFilePath. Task-number: QTBUG-6556 Reviewed-by: Jason Barron