Alexandru Croitor 3652f77aa3 Provisioning: Set macOS locale to "en_US.UTF-8"
The 419f42903154489e2dace8d1eba183036275448b commit in qtbase
introduced a regression where the tst_fusion test in qtqtuickcontrols2
hits a deadlock while trying to print a warning about a non-UTF-8
locale.

The warning is due to the fact that the agent executed in Coin's VM
does not have an explicit locale set, and thus it defaults to "C".
There is no explicit locale set in any .bashrc (or similar files),
and neither in any launchd configuration (because the agent is
executed at macOS startup via launchd).

The deadlock is due to trying to acquire the same lock twice while
trying to write output to stdout.

The test only deadlocks on CMake configurations, and not qmake
configurations, because Coin has a hardcoded instruction to set the
locale to UTF-8 when running qmake tests.

Until the deadlock situation is addressed in another change, the issue
can be fixed by setting the macOS configuration locale to UTF-8
explicitly, by assigning the LANG environment variable
into ~/.bashrc at provisioning time, like we do with other environment
variables like PATH.

Fixes: COIN-578
Change-Id: Ib6a5849a6868c1776dd425aeb8b5e7d6faa8cde0
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2020-05-07 21:52:16 +02:00
2016-06-28 15:58:12 +00:00
2016-06-28 15:58:12 +00:00
2016-06-28 15:58:12 +00:00
2016-06-28 15:58:12 +00:00
2019-12-18 09:55:55 +01:00
2017-05-25 21:34:29 +00:00
2012-09-05 14:33:37 +02:00
2015-02-25 03:23:07 +00:00

HOW TO BUILD QT5
================


 Synopsis
 ========

   System requirements
   ------------------

    - Perl 5.8 or later
    - Python 2.7 or later
    - C++ compiler supporting the C++11 standard

     For other platform specific requirements,
     please see section "Setting up your machine" on:
     http://wiki.qt.io/Get_The_Source

   Licensing:
   ----------

    Opensource users:

        <license>        = -opensource

    Commercial users:

        <license>        = -commercial

   Linux, Mac:
   -----------

     cd <path>/<source_package>
     ./configure -prefix $PWD/qtbase <license> -nomake tests
     make -j 4

   Windows:
   --------

     Open a command prompt.
     Ensure that the following tools can be found in the path:
     * Supported compiler (Visual Studio 2012 or later,
        MinGW-builds gcc 4.9 or later)
     * Perl version 5.12 or later   [http://www.activestate.com/activeperl/]
     * Python version 2.7 or later  [http://www.activestate.com/activepython/]
     * Ruby version 1.9.3 or later  [http://rubyinstaller.org/]

     cd <path>\<source_package>
     configure -prefix %CD%\qtbase <license> -nomake tests
     nmake // jom // mingw32-make

     To accelerate the bootstrap of qmake with MSVC, it may be useful to pass
     "-make-tool jom" on the configure command line. If you do not use jom,
     adding "/MP" to the CL environment variable is a good idea.

 More details follow.

 Build!
 ======

 A typical `configure; make' build process is used.

 Some relevant configure options (see configure -help):

 -release              Compile and link Qt with debugging turned off.
 -debug                Compile and link Qt with debugging turned on.
 -nomake tests         Disable building of tests to speed up compilation
 -nomake examples      Disable building of examples to speed up compilation
 -confirm-license      Automatically acknowledge the LGPL 2.1 license.

 Example for a release build:
 (adjust the `-jN' parameter as appropriate for your system)

   ./configure -prefix $PWD/qtbase <license>
   make -j4

 Example for a developer build:
 (enables more autotests, builds debug version of libraries, ...)

   ./configure -developer-build <license>
   make -j4

 See output of `./configure -help' for documentation on various options to
 configure.

 The above examples will build whatever Qt5 modules have been enabled by
 default in the build system.

 It is possible to build selected modules with their dependencies by doing
 a `make module-<foo>'.  For example, to build only qtdeclarative,
 and the modules it depends on:

   ./configure -prefix $PWD/qtbase <license>
   make -j4 module-qtdeclarative

 This can save a lot of time if you are only interested in a subset of Qt5.


 Hints
 =====

 The submodule repository qtrepotools contains useful scripts for
 developers and release engineers. Consider adding qtrepotools/bin
 to your PATH environment variable to access them.

 The qt5_tool in qtrepotools has some more features which may be of interest.
 Try `qt5_tool --help'.


 Building Qt5 from git
 =====================
 See http://wiki.qt.io/Building_Qt_5_from_Git and README.git
 for more information.
 See http://wiki.qt.io/Qt_5 for the reference platforms.


 Documentation
 =============

 After configuring and compiling Qt, building the documentation is possible by running
 "make docs".

 After having built the documentation, you need to install it with the following
 command:

    make install_docs

 The documentation is installed in the path set to $QT_INSTALL_DOCS.
 Running "qmake -query" will list the value of QT_INSTALL_DOCS.

 Information about Qt 5's documentation is located in qtbase/doc/README
 or in the following page: http://wiki.qt.io/Qt5DocumentationProject

 Note: Building the documentation is only tested on desktop platforms.
Description
No description provided
Readme 19 MiB
Languages
Shell 59.2%
PowerShell 24.4%
CMake 14.4%
Perl 1.3%
Dockerfile 0.3%
Other 0.3%