Changeset 972


Ignore:
Timestamp:
Aug 12, 2011, 3:53:17 PM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

qmake: gnumake/os2: Make .sym generation part of main target rule.

Previously the .sym file was a separate rule depending on the target.
However, it actually needed not the target itself, but a map file generated
when generating the target. Since for EXE targets different builds
generate the EXE file under the same name but may not generate the
map file, the .sym generation could fail (e.g. if building the release after
the debug).

Note that under the new scheme there is a problem of the .sym file not
being generated at all in this case. But that's a different story since having
two distinct targets (release and debug) output to the same file is
confusing per se and there is no clean solution for that other than using
separate dirs for debug/release (which is always a good thing).

Location:
trunk/mkspecs/features/os2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/mkspecs/features/os2/exepack.prf

    r416 r972  
    44    build_pass|isEmpty(BUILDS) {
    55        CONFIG(release, debug|release) {
    6             !isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK += $$escape_expand(\n\t)
     6            !isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK += $$escape_expand(\\t)
    77            QMAKE_POST_LINK += $$QMAKE_EXEPACK $$QMAKE_EXEPACK_FLAGS $@ $$QMAKE_EXEPACK_POST_FLAGS
    88        }
  • trunk/mkspecs/features/os2/sym.prf

    r968 r972  
    33contains(TEMPLATE, ".*app")|dll {
    44    build_pass|isEmpty(BUILDS) {
    5         make_sym.target = $$QMAKE_SYM_FILE
    6         make_sym.depends = $(DESTDIR_TARGET)
    7         make_sym.commands = $$QMAKE_RUN_MAPSYM
     5       
     6       
     7       
    88        !contains(CONFIG, map) {
    99            QMAKE_LFLAGS += $$QMAKE_LFLAGS_MAP # from map.prf
    10             make_sym.commands = $${make_sym.commands}$$escape_expand(\\n\\t)\
    11                                 $(DEL_FILE) $$QMAKE_MAP_FILE
     10            QMAKE_POST_LINK += $$escape_expand(\\n\\t)$(DEL_FILE) $$QMAKE_MAP_FILE
    1211        }
    13         ALL_DEPS += $$make_sym.target
    14         QMAKE_CLEAN += $$make_sym.target
    15         QMAKE_EXTRA_TARGETS += make_sym
    16 
     12   
    1713        # also copy .sym file to DLLDESTDIR (as Win32MakefileGenerator does for .dll)
    1814        !isEmpty(DLLDESTDIR) {
    1915            for(d, DLLDESTDIR) {
    20                 make_sym.commands = $${make_sym.commands}$$escape_expand(\\n\\t)\
    21                                     -$(COPY_FILE) $$QMAKE_SYM_FILE $$fixpath_target($$d)
     16                QMAKE_POST_LINK += $$escape_expand(\\n\\t)-$(COPY_FILE) $$QMAKE_SYM_FILE $$fixpath_target($$d)
    2217            }
    2318        }
    24 
     19       
    2520        # also install .sym file to target.path
    2621        contains(INSTALLS, target):!contains(CONFIG, no_install_debuginfo) {
Note: See TracChangeset for help on using the changeset viewer.