Changeset 142930


Ignore:
Timestamp:
Nov 28, 2015, 5:51:32 PM (3 years ago)
Author:
mcalhoun@…
Message:

qt5-creator-mac and subports:

  • rename qt5-creator-mac -> qt5-creator
  • rename qt5-creator-mac-docs -> qt5-creator-docs
  • discontinue qt5-creator-mac-examples since it installed examples from qbs build system and not Qt Creator
  • fix dependencies of new qt5-creator (#49825)
  • install files to allow Qt Creator to find Qt from MacPorts (qtversion.xml and profiles.xml)
  • remove delete commands that do not do anything
Location:
trunk/dports/devel
Files:
2 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/dports/devel/qt5-creator-mac/Portfile

    r137792 r142930  
    55
    66name                qt5-creator-mac
     7version             3.4.1
     8revision            1
     9categories          devel aqua
     10license             LGPL-2.1
    711
    8 if { ${subport} eq "${name}-docs" || ${subport} eq "${name}-examples" } {
    9     universal_variant no
    10     supported_archs   noarch
     12if { ${subport} eq ${name} } {
     13    replaced_by     qt5-creator
     14} elseif { ${subport} eq "${name}-docs"  } {
     15    replaced_by     qt5-creator-docs
     16} elseif { ${subport} eq "${name}-examples"  } {
     17    # this port installed examples from qbs build system not Qt Creator
    1118}
    12 PortGroup           qmake5 1.0
     19PortGroup           obsolete 1.0
    1320
    14 version             3.4.1
    15 categories          devel aqua
    16 platforms           darwin
    17 license             LGPL-2.1
    18 maintainers         mcalhoun openmaintainer
    19 description         Cross-platform integrated development environment (IDE) tailored to the needs of Qt developers.
    20 long_description    Qt Creator is a cross-platform integrated development environment (IDE) tailored to the needs of Qt developers.
    21 
    22 homepage            http://qt-project.org/wiki/Category:Tools::QtCreator
    23 distname            qt-creator-opensource-src-${version}
    24 master_sites        https://download.qt-project.org/official_releases/qtcreator/[join [lrange [split ${version} .] 0 1] .]/${version}/
    25 
    26 checksums           rmd160  e4fc59e156514e6c29697c414c655efdc410e337 \
    27                     sha256  029e22307e79c4fb3a34be854dedddaa56476c6c6374c312125b9302bcbc0fd9
    28 
    29 if { ${subport} eq ${name}  } {
    30     depends_lib-append     port:botan
    31     configure.args-append  "USE_SYSTEM_BOTAN=1"
    32        
    33     if { ![variant_isset universal] } {
    34         destroot {
    35             # make install attempts to install command line tools into /bin, etc.
    36             xinstall -m 755 -d ${destroot}${qt_apps_dir}
    37             copy "${worksrcpath}/bin/Qt Creator.app" "${destroot}${qt_apps_dir}"
    38         }
    39     } else {
    40         # We should really just override destroot, but the muniversal Portgroup would override our override.
    41         destroot.cmd "true"
    42         merger-post-destroot {
    43             foreach arch ${universal_archs_to_use} {
    44                 xinstall -m 755 -d ${destroot}-${arch}${qt_apps_dir}
    45                 copy "${worksrcpath}-${arch}/bin/Qt Creator.app" "${destroot}-${arch}${qt_apps_dir}"
    46             }
    47         }
    48     }
    49 }
    50 
    51 subport ${name}-docs {
    52     depends_lib-append port:${name} port:qt5-mac-sqlite3-plugin
    53     build.target       docs
    54    
    55     destroot {
    56         delete "${worksrcpath}/bin/Qt Creator.app/Contents/Info.plist"
    57         delete "${worksrcpath}/bin/Qt Creator.app/Contents/MacOS/qml2puppet.app/Contents/Info.plist"
    58         delete "${worksrcpath}/bin/Qt Creator.app/Contents/MacOS/qmlpuppet.app/Contents/Info.plist"
    59         delete "${worksrcpath}/bin/Qt Creator.app/Contents/Resources/qml/qmldump/Info.plist"
    60        
    61         xinstall -m 755 -d ${destroot}${qt_apps_dir}
    62         copy "${worksrcpath}/bin/Qt Creator.app" "${destroot}${qt_apps_dir}"
    63        
    64         xinstall -m 755 -d ${destroot}${qt_docs_dir}
    65         copy ${worksrcpath}/doc/html ${worksrcpath}/doc/html-dev ${destroot}${qt_docs_dir}
    66     }
    67 }
    68 
    69 subport ${name}-examples {
    70     depends_lib-append port:${name}
    71     build           {}
    72     destroot.dir    ${worksrcpath}/src/shared/qbs
    73     destroot.target -f Makefile.static INSTALL_ROOT=${destroot}${prefix} install_examples
    74 }
    75 
    76 livecheck.type      regex
    77 livecheck.url       http://www.qt.io/download-open-source/
    78 livecheck.regex     qt-creator-opensource-src-(\[a-z0-9.\]+)${extract.suffix}"
     21subport ${name}-docs { }
     22subport ${name}-examples { }
  • trunk/dports/devel/qt5-creator/Portfile

    r137792 r142930  
    44PortSystem          1.0
    55
    6 name                qt5-creator-mac
     6name                qt5-creator
    77
    8 if { ${subport} eq "${name}-docs" || ${subport} eq "${name}-examples" } {
     8if { ${subport} eq "${name}-docs" } {
    99    universal_variant no
    1010    supported_archs   noarch
     11    set qt5_qmake_request_no_debug 1
    1112}
    1213PortGroup           qmake5 1.0
     
    2829
    2930if { ${subport} eq ${name}  } {
     31    depends_lib-append          \
     32        port:qt5-qtscript       \
     33        port:qt5-qtdeclarative  \
     34        port:qt5-qttools        \
     35        port:qt5-qtmacextras
     36   
    3037    depends_lib-append     port:botan
    3138    configure.args-append  "USE_SYSTEM_BOTAN=1"
     
    4754        }
    4855    }
     56
     57    # put following in post-destroot so it works with universal
     58    post-destroot {
     59        # sdktool is a tool located in "Qt Creator.app/Contents/Resources"
     60        #
     61        # two necessary files that sdktool creates are:
     62        #    "${qt_apps_dir}/Qt Creator.app/Contents/Resources/QtProject/qtcreator/qtversion.xml"
     63        #    "${qt_apps_dir}/Qt Creator.app/Contents/Resources/QtProject/qtcreator/profiles.xml"
     64        #
     65        # from the installer.dat file, it seems the following are run by the binary installer of Qt Creator version 5.5.1
     66        #    sdktool addQt --id qt.55.clang_64 --name "Qt %{Qt:Version} clang 64bit" --qmake qmakeBinary --type Qt4ProjectManager.QtVersion.Desktop
     67        #    sdktool addKit --id qt.55.clang_64_kit --name "Desktop Qt %{Qt:Version} clang 64bit" --devicetype Desktop --qt qt.55.clang_64 --toolchain x86-macos-generic-mach_o-64bit
     68        # modify for our purposes
     69        #
     70        # for unknownd reason, using system instead of exec results in "QWidget: Cannot create a QWidget without QApplication"
     71        set sdktool ${destroot}${qt_apps_dir}/Qt\ Creator.app/Contents/Resources/sdktool
     72
     73        exec                                             \
     74            "${sdktool}"                                 \
     75            addQt                                        \
     76            --id    qt.5.macports                        \
     77            --name  "Qt %{Qt:Version} from MacPorts"     \
     78            --qmake "${qt_qmake_cmd}"                    \
     79            --type  Qt4ProjectManager.QtVersion.Desktop
     80
     81        if { [variant_isset universal] } {
     82            foreach arch ${universal_archs_to_use} {
     83                if { ${arch} eq "i386" } {
     84                    set toolchain_bit      32
     85                    set qt_qmake_spec_arch ${qt_qmake_spec_32}
     86                } else {
     87                    set toolchain_bit      64
     88                    set qt_qmake_spec_arch ${qt_qmake_spec_64}
     89                }
     90
     91                exec                                                               \
     92                    "${sdktool}"                                                   \
     93                    addKit                                                         \
     94                    --id         qt.5.macports_${arch}_kit                         \
     95                    --name       "Desktop Qt %{Qt:Version} from MacPorts ${arch}"  \
     96                    --devicetype Desktop                                           \
     97                    --qt         qt.5.macports                                     \
     98                    --toolchain  x86-macos-generic-mach_o-${toolchain_bit}bit      \
     99                    --mkspec     ${qt_qmake_spec_arch}
     100            }
     101        } else {
     102            if { ${build_arch} eq "i386" } {
     103                set toolchain_bit 32
     104            } else {
     105                set toolchain_bit 64
     106            }
     107
     108            exec                                                                     \
     109                "${sdktool}"                                                         \
     110                addKit                                                               \
     111                --id         qt.5.macports_${build_arch}_kit                         \
     112                --name       "Desktop Qt %{Qt:Version} from MacPorts ${build_arch}"  \
     113                --devicetype Desktop                                                 \
     114                --qt         qt.5.macports                                           \
     115                --toolchain  x86-macos-generic-mach_o-${toolchain_bit}bit            \
     116                --mkspec     ${qt_qmake_spec}
     117
     118        }
     119
     120        # N.B. that at some point in the future, QtCreator.ini may need to be created
     121        #    to include more search locations for documentation and examples
     122    }
    49123}
    50124
    51125subport ${name}-docs {
    52     depends_lib-append port:${name} port:qt5-mac-sqlite3-plugin
     126    depends_build-append port:qt5-sqlite-plugin
     127    depends_run-append   port:${name}
    53128    build.target       docs
    54129   
    55130    destroot {
    56         delete "${worksrcpath}/bin/Qt Creator.app/Contents/Info.plist"
    57         delete "${worksrcpath}/bin/Qt Creator.app/Contents/MacOS/qml2puppet.app/Contents/Info.plist"
    58         delete "${worksrcpath}/bin/Qt Creator.app/Contents/MacOS/qmlpuppet.app/Contents/Info.plist"
    59         delete "${worksrcpath}/bin/Qt Creator.app/Contents/Resources/qml/qmldump/Info.plist"
    60        
    61131        xinstall -m 755 -d ${destroot}${qt_apps_dir}
    62132        copy "${worksrcpath}/bin/Qt Creator.app" "${destroot}${qt_apps_dir}"
     
    67137}
    68138
    69 subport ${name}-examples {
    70     depends_lib-append port:${name}
    71     build           {}
    72     destroot.dir    ${worksrcpath}/src/shared/qbs
    73     destroot.target -f Makefile.static INSTALL_ROOT=${destroot}${prefix} install_examples
    74 }
    75 
    76139livecheck.type      regex
    77140livecheck.url       http://www.qt.io/download-open-source/
Note: See TracChangeset for help on using the changeset viewer.