Changeset 137229


Ignore:
Timestamp:
Jun 7, 2015, 5:28:14 AM (5 years ago)
Author:
mcalhoun@…
Message:

qt5-mac:

  • update Version (5.3.2 -> 5.4.1, fixes #47582)
  • install qt5-mac in private directory (see #44193 for details)
  • prevent installation on unsupported OS versions (fixes #47581)
  • install links so that pkg-config files are correct (fixes #44204)
Location:
trunk/dports
Files:
2 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/dports/_resources/port1.0/group/qt5-1.0.tcl

    r134878 r137229  
    6666# standard install directory
    6767global qt_dir
    68 set qt_dir              ${prefix}
    69 
    70 # standard Qt documents directory
    71 global qt_docs_dir
    72 set qt_docs_dir         ${qt_dir}/share/doc/${qt_name}
    73 
    74 # standard Qt plugins directory
    75 global qt_plugins_dir
    76 set qt_plugins_dir      ${qt_dir}/share/${qt_name}/plugins
    77 
    78 # standard Qt mkspecs directory
    79 global qt_mkspecs_dir
    80 set qt_mkspecs_dir      ${qt_dir}/share/${qt_name}/mkspecs
    81 
    82 # standard Qt imports directory
    83 global qt_imports_dir
    84 set qt_imports_dir      ${qt_dir}/share/${qt_name}/imports
    85 
    86 # standard Qt qml directory
    87 global qt_qml_dir
    88 set qt_qml_dir          ${qt_dir}/share/${qt_name}/qml
     68set qt_dir               ${prefix}/libexec/qt5-mac
     69
     70# standard Qt non-.app executables directory
     71global qt_bins_dir
     72set qt_bins_dir         ${qt_dir}/bin
    8973
    9074# standard Qt includes directory
     
    9882# standard Qt libraries directory
    9983global qt_frameworks_dir
    100 set qt_frameworks_dir   ${qt_dir}/Library/Frameworks
    101 
    102 # standard Qt non-.app executables directory
    103 global qt_bins_dir
    104 set qt_bins_dir         ${qt_dir}/bin
    105 
    106 # standard Qt .app executables directory, if created
    107 global qt_apps_dir
    108 set qt_apps_dir         ${applications_dir}/Qt5
     84set qt_frameworks_dir   ${qt_libs_dir}
     85
     86global qt_archdata_dir
     87set qt_archdata_dir  ${qt_dir}
     88
     89# standard Qt plugins directory
     90global qt_plugins_dir
     91set qt_plugins_dir      ${qt_archdata_dir}/plugins
     92
     93# standard Qt imports directory
     94global qt_imports_dir
     95set qt_imports_dir      ${qt_archdata_dir}/imports
     96
     97# standard Qt qml directory
     98global qt_qml_dir
     99set qt_qml_dir          ${qt_archdata_dir}/qml
    109100
    110101# standard Qt data directory
    111102global qt_data_dir
    112 set qt_data_dir         ${qt_dir}/share/${qt_name}
     103set qt_data_dir         ${qt_dir}
     104
     105# standard Qt documents directory
     106global qt_docs_dir
     107set qt_docs_dir         ${qt_data_dir}/doc
    113108
    114109# standard Qt translations directory
    115110global qt_translations_dir
    116 set qt_translations_dir ${qt_dir}/share/${qt_name}/translations
     111set qt_translations_dir ${qt_data_dir}/translations
    117112
    118113# standard Qt sysconf directory
    119114global qt_sysconf_dir
    120 set qt_sysconf_dir      ${qt_dir}/etc/${qt_name}
     115set qt_sysconf_dir      ${qt_dir}/etc/xdg
    121116
    122117# standard Qt examples directory
    123118global qt_examples_dir
    124 set qt_examples_dir     ${qt_dir}/share/${qt_name}/examples
     119set qt_examples_dir     ${qt_dir}/examples
    125120
    126121# standard Qt tests directory
    127122global qt_tests_dir
    128 set qt_tests_dir        ${qt_dir}/share/${qt_name}/tests
     123set qt_tests_dir        ${qt_dir}/tests
     124
     125# data used by qmake
     126global qt_host_data_dir
     127set qt_host_data_dir    ${qt_dir}
    129128
    130129# standard Qt demos directory
    131 global qt_demos_dir
    132 set qt_demos_dir        ${qt_dir}/share/${qt_name}/demos
     130#global qt_demos_dir
     131#set qt_demos_dir        ${qt_dir}/share/${qt_name}/demos
     132
     133# standard Qt mkspecs directory
     134global qt_mkspecs_dir
     135set qt_mkspecs_dir      ${qt_dir}/mkspecs
     136
     137# standard Qt .app executables directory, if created?
     138#global qt_apps_dir
     139#set qt_apps_dir         ${qt_bins_dir}
    133140
    134141# standard CMake module directory for Qt-related files
    135 global qt_cmake_module_dir
    136 set qt_cmake_module_dir ${qt_libs_dir}/cmake
     142#global qt_cmake_module_dir
     143#set qt_cmake_module_dir ${qt_libs_dir}/cmake
    137144
    138145# standard qmake command location
     
    140147set qt_qmake_cmd        ${qt_dir}/bin/qmake
    141148
     149# standard moc command location
     150global qt_moc_cmd
     151set qt_moc_cmd          ${qt_dir}/bin/moc
     152
     153# standard uic command location
     154global qt_uic_cmd
     155set qt_uic_cmd          ${qt_dir}/bin/uic
     156
     157# standard lrelease command location
     158global qt_lrelease_cmd
     159set qt_lrelease_cmd     ${qt_dir}/bin/lrelease
     160
     161# standard PKGCONFIG path
     162global qt_pkg_config_dir
     163set qt_pkg_config_dir   ${qt_libs_dir}/pkgconfig
     164
    142165# standard qmake spec
    143 # configure script prefers clang (but "[a]dvertise[s] g++ as an alternative on Lion and below").
    144 # According to http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations,
    145 #    however, Snow Leopard is only tested on "GCC as provided by Apple"
    146 # Create a variant for Snow Leopard that uses "-platform macx-g++-32" or "-platform macx-g++"?
     166# other platforms required? (see http://doc.qt.io/qt-5/supported-platforms.html and http://doc.qt.io/QtSupportedPlatforms/index.html)
    147167global qt_qmake_spec
    148168global qt_qmake_spec_32
     
    162182    set qt_qmake_spec ""
    163183}
    164 
    165 # standard moc command location
    166 global qt_moc_cmd
    167 set qt_moc_cmd          ${qt_dir}/bin/moc
    168 
    169 # standard uic command location
    170 global qt_uic_cmd
    171 set qt_uic_cmd          ${qt_dir}/bin/uic
    172 
    173 # standard lrelease command location
    174 global qt_lrelease_cmd
    175 set qt_lrelease_cmd     ${qt_dir}/bin/lrelease
    176 
    177 # standard PKGCONFIG path
    178 global qt_pkg_config_dir
    179 set qt_pkg_config_dir   ${qt_libs_dir}/pkgconfig
    180 
    181 # data used by qmake
    182 global qt_host_data_dir
    183 set qt_host_data_dir    ${qt_dir}/share/${qt_name}
    184184
    185185# standard cmake info for Qt5
  • trunk/dports/aqua/qt5-mac/Portfile

    r136302 r137229  
    55
    66name                qt5-mac
    7 version             5.3.2
    8 revision            1
     7version             5.4.1
    98set branch          [join [lrange [split ${version} .] 0 1] .]
    109
     
    2423master_sites        http://download.qt-project.org/official_releases/qt/${branch}/${version}/single/
    2524
    26 checksums           rmd160  5cd61acc2fbfba2597a386a09d83710ed2fdf483 \
    27                     sha256  c8d3fd2ead30705c6673c5e4af6c6f3973346b4fb2bd6079c7be0943a5b0282d
    28 
    29 if { ${os.major} < 10 } {
     25checksums           rmd160  43dab9f974b09e5fdf32686ae125359fb01faa2f \
     26                    sha256  8768a96d73883ae01a11b9b0a23fb9387e84499670de0d47535afe35d0bfe67e
     27
     28if { ${os.major} < 11 } {
    3029    pre-fetch {
    31         ui_error "OS X prior to 10.7 (Lion) is not a Reference Configuration for Qt."
    32         ui_error "OS X prior to 10.6 (Snow Leopard) is not even tested."
    33         ui_error "See http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations"
     30        ui_error "OS X prior to 10.8 (Mountain Lion) is not a Reference Configuration for Qt."
     31        ui_error "OS X prior to 10.7 (Lion) is not even tested."
     32        ui_error "See http://doc.qt.io/qt-5/supported-platforms.html#reference-configurations"
    3433        return -code error "unsupported OS"
    35     }
    36 } elseif { ${os.major} == 10 } {
    37     pre-fetch {
    38         ui_warn "OS X prior to 10.7 (Lion) is not a Reference Configuration for Qt."
    39         if { [variant_isset universal] } {
    40             ui_warn "OS X 10.6 (Snow Leopard) is \"occasionally tested\" but ONLY in 32-bit mode."
    41             ui_warn "OS X 10.6 (Snow Leopard) is deprecated and scheduled for removal in Qt 5.4."
    42         } else {
    43             if { ${build_arch} eq "i386" } {
    44                 ui_warn "OS X 10.6 (Snow Leopard) is \"occasionally tested\"."
    45                 ui_warn "OS X 10.6 (Snow Leopard) is deprecated and scheduled for removal in Qt 5.4."
    46             } else {
    47                 ui_warn "OS X 10.6 (Snow Leopard) is \"occasionally tested\" but ONLY in 32-bit mode."
    48                 ui_warn "OS X 10.6 (Snow Leopard) is deprecated and scheduled for removal in Qt 5.4."
    49             }
    50         }
    51         ui_warn "See http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations"
    5234    }
    5335} elseif { ${os.major} > 14 } {
    5436    pre-fetch {
    5537        ui_warn "OS X subsequent to 10.10 (Yosemite) is not a Reference Configuration for Qt."
    56         ui_warn "See http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations"
     38        ui_warn "See http://doc.qt.io/qt-5/supported-platforms.html#reference-configurations"
    5739    }
    5840} else {
    59     # 11 <= ${os.major} <= 13
     41    # 11 <= ${os.major} <= 14
    6042    if { [variant_isset universal] } {
    6143        pre-fetch {
    6244            ui_warn "Multiple architectures is not a Reference Configuration for Qt."
    63             ui_warn "See http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations"
     45            ui_warn "See http://doc.qt.io/qt-5/supported-platforms.html#reference-configurations"
    6446        }
    6547    } else {
     
    6749            pre-fetch {
    6850                ui_warn "32-bit mode is not a Reference Configuration for Qt."
    69                 ui_warn "See http://qt-project.org/doc/qt-5/supported-platforms.html#reference-configurations"
     51                ui_warn "See http://doc.qt.io/qt-5/supported-platforms.html#reference-configurations"
    7052            }
    7153        }
     
    8769    conflicts           qt3 qt3-mac qt4-mac
    8870
    89     minimum_xcodeversions   {10 3.2}
    90 
    91     # See https://bugreports.qt-project.org/browse/QTBUG-34902
     71    minimum_xcodeversions   {11 4.1}
     72
     73    # See https://bugreports.qt.io/browse/QTBUG-34902
    9274    conflicts_build-append  qt4-mac
    9375
    9476    # Kuba states in https://trac.macports.org/ticket/44207#comment:7
    9577    #  "There's no reason to have parallel building disabled. Really."
    96     #use_parallel_build no
    97 
    98     # header file QtCore/private/qmachparser_p.h is included only if "defined(QT_BUILD_INTERNAL) && defined(Q_OF_MACH_O)"
    99     #     code from header is used only "ifdef Q_OF_MACH_O"
    100     #     the two must be consistent
    101     #     assume the header include code is correct
    102     patchfiles-append patch-tst_qpluginloader.diff
    103 
    104     # When testing, ensure that a universal object file is not inadvertently created.
    105     patchfiles-append patch-machtest.diff
    106 
    107     # On testing of 32-bit systems,
    108     #  Pre-patch: QCOMPARE(unsigned long const&, unsigned int const&
    109     # Post-patch: QCOMPARE(unsigned int  const&, unsigned int const&
    110     # Function template is only instantiated for same first and second arguments.
    111     patchfiles-append patch-tst_qarraydata.diff
    112 
    113     # see http://stackoverflow.com/questions/14506151/invalid-symbol-redefinition-in-inline-asm-on-llvm
    114     patchfiles-append patch-tst_benchlibcallgrind.diff
    115 
    116     # During testing, NSStringFromRect requires NSRect.
    117     patchfiles-append patch-tst_qaccessibilitymac_helpers.diff
     78    # TODO: Uncomment out for testing only. Be sure to comment out next line before commit.
     79    use_parallel_build no
     80
     81    # qtwebengine/src/core/gyp_run.pro buils an executable using g++
     82    # This causes an error if UsingTheRightCompiler (https://trac.macports.org/wiki/UsingTheRightCompiler)
     83    # Quick fix is to use full path to g++ (should use ${configure.cxx} instead?)
     84    # N.B. that the python executable is found from the configuration environment
     85    #patchfiles-append patch-ninja-compiler.diff
     86
     87    #needed? qtwebengine/src/3rdparty/chromium/build/gyp_helper.py
     88
     89    # qtwebengine/src/core/gyp_run.pro
     90    #    calls
     91    #   qtwebengine/tools/buildscripts/gyp_qtwebengine
     92    # gyp_qtwebengine insists on x64 and libcpp ?
     93
     94    # qtwebengine/src/3rdparty/ninja/bootstrap.py calls g++ (must set CXX)
     95
     96    if { [variant_isset tests] } {
     97        # header file QtCore/private/qmachparser_p.h is included only if "defined(QT_BUILD_INTERNAL) && defined(Q_OF_MACH_O)"
     98        #     code from header is used only "ifdef Q_OF_MACH_O"
     99        #     the two must be consistent
     100        #     assume the header include code is correct
     101        patchfiles-append patch-tst_qpluginloader.diff
     102
     103        # see http://stackoverflow.com/questions/14506151/invalid-symbol-redefinition-in-inline-asm-on-llvm
     104        patchfiles-append patch-tst_benchlibcallgrind.diff
     105
     106        # When testing, ensure that a universal object file is not inadvertently created.
     107        patchfiles-append patch-machtest.diff
     108
     109        # On testing of 32-bit systems,
     110        #  Pre-patch: QCOMPARE(unsigned long const&, unsigned int const&
     111        # Post-patch: QCOMPARE(unsigned int  const&, unsigned int const&
     112        # Function template is only instantiated for same first and second arguments.
     113        patchfiles-append patch-tst_qarraydata.diff
     114
     115        # During testing, NSStringFromRect requires NSRect.
     116        patchfiles-append patch-tst_qaccessibilitymac_helpers.diff
     117    }
    118118
    119119    # see #44934 (and #35067 for the qt4-mac version)
    120     patchfiles-append patch-shared.diff
    121 
    122     # see https://bugreports.qt-project.org/browse/QTBUG-41136
    123     patchfiles-append patch-avfmediaplayersession.diff
    124 
    125     # see https://bugreports.qt-project.org/browse/QTBUG-41367
    126     patchfiles-append patch-qmacstyle_mac.diff
     120    if { true } {
     121        set framework_list [split ${qt_frameworks_dir} '/']
     122        set qt_list        [split ${qt_dir} '/']
     123
     124        while {[llength ${qt_list}] && [llength ${framework_list}]} {
     125            set var_qt        [lindex $qt_list        0]
     126            set var_framework [lindex $framework_list 0]
     127
     128            if { ${var_qt} ne ${var_framework} } {
     129                break
     130            }
     131
     132            # remove first element from list
     133            set qt_list        [lreplace ${qt_list}        0 0]
     134            set framework_list [lreplace ${framework_list} 0 0]
     135        }
     136        set libreplace [string repeat ../ [llength ${qt_list}]][join ${framework_list} /]
     137        if { ${libreplace} ne "lib" } {
     138            patchfiles-append patch-shared.diff
     139            reinplace "s|__MACPORTS_FRAMWORK_DIR__|${libreplace}|g" ${worksrcpath}/qttools/src/macdeployqt/shared/shared.cpp
     140        }
     141    }
    127142
    128143    # --prefix is not recognized.
     
    132147    configure.universal_args-delete --disable-dependency-tracking
    133148
    134     if {${configure.sdkroot} ne ""} {
    135         configure.args-append \
    136             -sdk [string tolower [join [lrange [split [lindex [split ${configure.sdkroot} "/"] end] "."] 0 end-1] "."]]
    137     }
    138 
     149    # Installation options:
     150    #-extprefix     SYSROOT/PREFIX
     151    #-hostprefix    EXTPREFIX
     152    #-libexecdir    ARCHDATADIR/libexec
     153    #-hostbindir    HOSTPREFIX/bin
     154    #-hostlibdir    HOSTPREFIX/lib
    139155    configure.args-append                      \
    140156        -prefix         ${qt_dir}              \
    141         -docdir         ${qt_docs_dir}         \
     157        -bindir         ${qt_bins_dir}         \
    142158        -headerdir      ${qt_includes_dir}     \
     159        -libdir         ${qt_libs_dir}         \
     160        -archdatadir    ${qt_archdata_dir}     \
    143161        -plugindir      ${qt_plugins_dir}      \
    144162        -importdir      ${qt_imports_dir}      \
    145163        -qmldir         ${qt_qml_dir}          \
    146164        -datadir        ${qt_data_dir}         \
    147         -libdir         ${qt_frameworks_dir}   \
    148         -bindir         ${qt_bins_dir}         \
     165        -docdir         ${qt_docs_dir}         \
    149166        -translationdir ${qt_translations_dir} \
    150167        -sysconfdir     ${qt_sysconf_dir}      \
     
    158175        -opensource       \
    159176        -confirm-license  \
     177        -c++11            \
    160178        -shared           \
    161         -process
    162 
    163     # Third Party Libraries:
    164     configure.args-append \
    165         -no-mtdev         \
    166         -no-harfbuzz      \
    167         -openssl-linked   \
    168         -no-xinput2       \
    169         -no-xcb-xlib
    170 
    171     # configure options that don't show up in configure --help
    172     configure.args-append \
    173         -no-libudev       \
    174         -no-egl
    175 
    176     # Additional options:
    177     configure.args-append    \
    178         {-make libs}         \
    179         {-make tools}        \
    180         {-nomake examples}   \
    181         {-nomake tests}      \
    182         -verbose             \
    183         -no-optimized-qmake  \
    184         -nis                 \
    185         -cups                \
    186         -iconv               \
    187         -no-evdev            \
    188         -icu                 \
    189         -fontconfig          \
    190         -strip               \
    191         -no-pch              \
    192         -dbus-linked         \
    193         -no-xcb              \
    194         -glib                \
    195         -directfb            \
    196         -no-linuxfb          \
    197         -no-kms              \
    198         -no-system-proxies   \
    199         -framework
    200 
     179        -largefile        \
     180        -accessibility
     181   
    201182    foreach driver { db2 ibase mysql oci odbc psql sqlite sqlite2 tds } {
    202183        configure.args-append -no-sql-${driver}
    203184    }
     185
     186    configure.args-append \
     187        -qml-debug
    204188
    205189    if { ![variant_isset universal] } {
     
    210194    }
    211195
     196    configure.args-append \
     197        -force-pkg-config
     198
     199    # Third Party Libraries:
     200    configure.args-append   \
     201        -system-zlib        \
     202        -no-mtdev           \
     203        -no-journald        \
     204        -system-libpng      \
     205        -system-libjpeg     \
     206        -system-freetype    \
     207        -system-harfbuzz    \
     208        -openssl-linked     \
     209        -system-pcre        \
     210        --disable-xcb       \
     211        --disable-xkbcommon \
     212        -no-xinput2         \
     213        -no-xcb-xlib        \
     214        -glib               \
     215        -pulseaudio         \
     216        -no-alsa            \
     217        -no-gtkstyle
     218
     219    # Additional options:
     220    configure.args-append       \
     221        {-make libs}            \
     222        {-make tools}           \
     223        {-nomake examples}      \
     224        {-nomake tests}         \
     225        -gui                    \
     226        -widgets                \
     227        -rpath                  \
     228        -verbose                \
     229        -no-optimized-qmake     \
     230        -nis                    \
     231        -cups                   \
     232        -iconv                  \
     233        -no-evdev               \
     234        -icu                    \
     235        -fontconfig             \
     236        -strip                  \
     237        -no-pch                 \
     238        -dbus-linked            \
     239        -no-use-gold-linker     \
     240        -no-separate-debug-info \
     241        -no-xcb                 \
     242        -no-eglfs               \
     243        -no-directfb            \
     244        -no-linuxfb             \
     245        -no-kms                 \
     246        -no-system-proxies
     247   
     248    # MacOS/iOS options:
     249    configure.args-append    \
     250        -framework
     251
     252    if {${configure.sdkroot} ne ""} {
     253        configure.args-append \
     254            -sdk [string tolower [join [lrange [split [lindex [split ${configure.sdkroot} "/"] end] "."] 0 end-1] "."]]
     255    }
     256   
    212257    # configure options that don't show up in configure --help
    213258    configure.args-append \
     259        -no-libudev       \
     260        -no-egl           \
    214261        -no-openvg
    215262
     
    243290
    244291if { ${subport} eq ${name} } {
    245     # remove this when updating to the next version
    246     incr revision
    247 
    248292    depends_lib                              \
    249293        port:zlib                            \
     
    258302        port:icu                             \
    259303        port:pcre                            \
    260         port:libiconv
    261 
    262     # see https://bugreports.qt-project.org/browse/QTBUG-35514
     304        port:libiconv                        \
     305        port:harfbuzz                        \
     306        port:pulseaudio
     307
     308    # see https://bugreports.qt.io/browse/QTBUG-35514
    263309    build.target
    264310
     
    268314                set dir ${destroot}-${arch}
    269315
    270                 reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_frameworks_dir}/pkgconfig/Qt5WebKit.pc
    271 
    272                 foreach prlfl [glob ${dir}${qt_frameworks_dir}/*.framework/*.prl] {
     316                # Libs.private contains the value of ${worksrcpath}-${arch}, which prevents merging
     317                reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_libs_dir}/pkgconfig/Qt5WebKit.pc
     318
     319                foreach prlfl [glob ${dir}${qt_libs_dir}/*.framework/*.prl] {
    273320                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${prlfl}
    274321                }
    275322
    276                 foreach prlfl [glob ${dir}${qt_frameworks_dir}/*.prl] {
     323                foreach prlfl [glob ${dir}${qt_libs_dir}/*.prl] {
    277324                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${prlfl}
    278325                }
    279326
    280                 foreach prlfl [glob ${dir}${qt_frameworks_dir}/*.framework/*.prl] {
    281                     reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${prlfl}
     327                reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_mkspecs_dir}/modules/qt_lib_bootstrap_private.pri
     328                reinplace "s|macx-clang-32|macx-clang|g"              ${dir}${qt_libs_dir}/cmake/Qt5Core/Qt5CoreConfigExtrasMkspecDir.cmake
     329               
     330               
     331                if { [variant_isset examples] } {
     332                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     333                    reinplace -E "/\\w*-arch \\\\/d"                      ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     334                    reinplace -E "/\\w*${arch} \\\\/d"                    ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     335                    reinplace -E {s:-arch +[^ ]+::g}                      ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     336                    reinplace "s|macx-clang-32|macx-clang|g"              ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     337
     338                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/multimedia/spectrum/fftreal.framework/fftreal.prl
     339                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/multimedia/spectrum/spectrum.app/Contents/Frameworks/fftreal.framework/fftreal.prl
     340                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/sensors/grue/libgruesensor.prl
     341                    reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/declarative/tutorials/gettingStarted/parts/part5/filedialog/Makefile
     342                    if { [variant_isset debug] } {
     343                        reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_examples_dir}/widgets/tools/plugandpaint/plugins/libpnp_basictools_debug.prl
     344                    }
    282345                }
    283 
    284                 reinplace "s|${worksrcpath}-${arch}|${worksrcpath}|g" ${dir}${qt_mkspecs_dir}/modules/qt_lib_bootstrap_private.pri
    285 
    286                 reinplace \
    287                     "s|^set(_qt5_corelib_extra_includes \"\${_qt5Core_install_prefix}/share/qt5//mkspecs/macx-clang.*\")$|set(_qt5_corelib_extra_includes \"\${_qt5Core_install_prefix}/share/qt5//mkspecs/macx-clang-32\" \"\${_qt5Core_install_prefix}/share/qt5//mkspecs/macx-clang\")|" \
    288                     ${dir}${qt_frameworks_dir}/cmake/Qt5Core/Qt5CoreConfigExtrasMkspecDir.cmake
    289346            }
    290347        }
     
    302359
    303360    post-destroot {
    304 
    305361        # see #44204
    306         foreach f [glob -nocomplain -directory ${destroot}${qt_frameworks_dir}/pkgconfig *.pc] {
    307             set framework [file rootname [file tail ${f}]]
    308             set incname   [string map {Qt5 Qt} ${framework}]
    309             reinplace "s|-I\${includedir}/${incname}|-I\${includedir}|g" ${f}
    310             reinplace "s|includedir=\${prefix}/include|includedir=\${libdir}/${framework}/Headers|g" ${f}
    311         }
    312 
    313         # move items out of the Frameworks directory that are more appropriate to lib directory
    314         xinstall -m 775 -d ${destroot}${qt_cmake_module_dir}
    315         foreach d [glob -tails -nocomplain -directory ${destroot}${qt_frameworks_dir}/cmake *] {
    316             xinstall -m 775 -d ${destroot}${qt_cmake_module_dir}/${d}
    317             foreach f [glob -nocomplain -directory ${destroot}${qt_frameworks_dir}/cmake/${d} *.cmake] {
    318                 # ${qt_frameworks_dir} is  ${qt_dir}/Library/Frameworks while
    319                 # ${qt_libs_dir}       is  ${qt_dir}/lib
    320                 # unless modified, cmake files will point to a directory that is too high in the directory hierarchy
    321                 reinplace "s|/../../../../|/../../../|g" ${f}
    322                 file rename ${f} ${destroot}${qt_cmake_module_dir}/${d}/
     362        foreach f [glob -nocomplain -tails -directory ${destroot}${qt_libs_dir} *.framework] {
     363            set framework [file rootname ${f}]
     364
     365            set include_list   [split ${qt_includes_dir}   '/']
     366            set framework_list [split ${qt_libs_dir} '/']
     367
     368            while {[llength ${include_list}] && [llength ${framework_list}]} {
     369                set var_include   [lindex $include_list   0]
     370                set var_framework [lindex $framework_list 0]
     371
     372                if { ${var_include} ne ${var_framework} } {
     373                    break
     374                }
     375
     376                # remove first element from list
     377                set include_list   [lreplace ${include_list} 0 0]
     378                set framework_list [lreplace ${framework_list} 0 0]
    323379            }
    324         }
    325         xinstall -m 775 -d ${destroot}${qt_pkg_config_dir}
    326         foreach f [glob -nocomplain -directory ${destroot}${qt_frameworks_dir}/pkgconfig *.pc] {
    327             file rename ${f} ${destroot}${qt_pkg_config_dir}
    328         }
    329         xinstall -m 775 -d ${destroot}${qt_libs_dir}/
    330         foreach f [glob -nocomplain -directory ${destroot}${qt_frameworks_dir} *.{a,prl,la}] {
    331             file rename ${f} ${destroot}${qt_libs_dir}/
    332         }
    333 
    334         # move items out of the bin directory that are more appropriate to the Applications directory
    335         xinstall -m 775 -d ${destroot}${qt_apps_dir}
    336         foreach f [glob -nocomplain -directory ${destroot}${qt_bins_dir} *.app] {
    337             file rename ${f} ${destroot}${qt_apps_dir}/
    338         }
    339     }
    340 
    341     variant harfbuzz description {(experimental) Use HarfBuzz-NG to do text shaping} {
    342         depends_lib-append port:harfbuzz
    343         configure.args-replace \
    344             -no-harfbuzz       \
    345             -system-harfbuzz
     380
     381            ln -s [string repeat ../ [llength ${include_list}]][join ${framework_list} /]/${f}/Headers ${destroot}${qt_includes_dir}/${framework}
     382        }
    346383    }
    347384
     
    361398subport ${name}-docs {
    362399    depends_lib-append \
    363         path:${prefix}/bin/qdoc:${name} \
     400        path:${qt_bins_dir}/qdoc:${name} \
    364401        path:${qt_plugins_dir}/sqldrivers/libqsqlite.dylib:${name}-sqlite3-plugin
    365402
     
    371408    post-extract {
    372409        # For the most part, generated makefiles use ${prefix}/bin/qdoc.
    373         # There are a couple of places that look in ${worksrcpath}/qtbase/src/tools/qdoc/.
    374         ln -s ${prefix}/bin/qdoc ${worksrcpath}/qtbase/src/tools/qdoc/
    375         ln -s ${prefix}/bin/qdoc ${worksrcpath}/qtbase/bin
     410        ln -s ${qt_bins_dir}/qdoc ${worksrcpath}/qtbase/bin
    376411
    377412        # Similarly, location of qhelpgenerator is expected in ${worksrcpath}
    378413        xinstall -d -m 755 ${worksrcpath}/qttools/bin/
    379         ln -s ${prefix}/bin/qhelpgenerator ${worksrcpath}/qttools/bin/
     414        ln -s ${qt_bins_dir}/qhelpgenerator ${worksrcpath}/qttools/bin/
    380415
    381416        # Without this file, the makefile ${worksrcpath}/qtwebkit/Source/WebCore/Makefile.WebCore.Target
     
    387422}
    388423
    389 # See http://qt-project.org/doc/qt-5/sql-driver.html for info on building SQL Database Drivers
     424# See http://doc.qt.io/qt-5/sql-driver.html for info on building SQL Database Drivers
    390425
    391426subport ${name}-sqlite3-plugin {
  • trunk/dports/aqua/qt5-mac/files/patch-shared.diff

    r127528 r137229  
    1 --- .//qttools/src/macdeployqt/shared/shared.cpp.orig   2014-09-11 03:48:25.000000000 -0700
    2 +++ .//qttools/src/macdeployqt/shared/shared.cpp        2014-10-26 11:14:49.000000000 -0700
    3 @@ -168,7 +168,7 @@
     1--- qttools/src/macdeployqt/shared/shared.cpp.orig      2015-02-16 21:57:17.000000000 -0700
     2+++ qttools/src/macdeployqt/shared/shared.cpp   2015-05-31 10:36:56.000000000 -0700
     3@@ -196,7 +196,7 @@
    44                 state = DylibName;
    55                 continue;
    66             } else if (part < parts.count() && parts.at(part).endsWith(".framework")) {
    77-                info.installName += "/" + (qtPath + "lib/").simplified();
    8 +                info.installName += "/" + (qtPath + "Frameworks/").simplified();
     8+                info.installName += "/" + (qtPath + "__MACPORTS_FRAMWORK_DIR__/").simplified();
    99                 info.frameworkDirectory = info.installName;
    1010                 state = FrameworkName;
  • trunk/dports/aqua/qt5-mac/files/patch-tst_qpluginloader.diff

    r121554 r137229  
    1 x--- .//qtbase/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp.orig       2014-02-01 13:37:28.000000000 -0700
    2 +++ .//qtbase/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp     2014-04-19 10:57:51.000000000 -0700
    3 @@ -319,7 +319,7 @@
     1--- .//qtbase/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp.orig        2015-05-30 18:33:03.000000000 -0700
     2+++ .//qtbase/tests/auto/corelib/plugin/qpluginloader/tst_qpluginloader.cpp     2015-05-30 18:34:54.000000000 -0700
     3@@ -311,7 +311,7 @@
    44 
    55 void tst_QPluginLoader::loadMachO_data()
     
    1010 
    1111     QTest::newRow("/dev/null") << int(QMachOParser::NotSuitable);
    12 @@ -355,7 +355,7 @@
     12@@ -347,7 +347,7 @@
    1313 
    1414 void tst_QPluginLoader::loadMachO()
Note: See TracChangeset for help on using the changeset viewer.