Changes between Version 2 and Version 3 of KDEProblems/KDEMacPortsCI/Status
- Timestamp:
- May 22, 2014, 11:25:44 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
KDEProblems/KDEMacPortsCI/Status
v2 v3 1 1 = Current status of setting up the CI system (still hanging on OSX up to now) = 2 2 3 This is what has to be done to get a KDE/CI system up and running on OSX (partially by also using MacPorts): 3 This page shall describe what has to be done to get a KDE/CI system up and running on OSX. Partially this is achieved by using a few port from MacPorts. 4 5 4 6 5 A) Start with fresh Mavericks install and make sure your disk has at least 20G free space left 7 == Start with fresh Mavericks install == 6 8 7 B) Install MacPorts 2.2.1 using the official PKG9 * make sure your disk has at least 20G free space left 8 10 9 C) Install ports for bash use: 11 12 13 == Install MacPorts == 14 15 * currently using the official PKG for MacPorts version 2.2.1 16 17 18 19 == bash and environment == 20 21 Install ports for MacPorts' bash 10 22 {{{ 11 23 $ sudo port install bash bash-completion 12 24 }}} 25 and set up the [https://projects.kde.org/projects/playground/sdk/macports-kde/repository/revisions/master/show/contrib/user-setup bash environment for MacPorts use] regarding search paths (PATH, MANPATH) 13 26 14 D) Set up [https://projects.kde.org/projects/playground/sdk/macports-kde/repository/revisions/master/show/contrib/user-setup bash environment for MacPorts use] regarding search paths (PATH, MANPATH)15 27 16 E) Install Xcode from AppStore (and agree actively to the developer license agreement)17 28 18 F) Install developer command line tools and install some of MacPorts' ports needed for later 29 == Apple developer tools == 30 31 Install 32 * Xcode from AppStore (and agree actively to the developer license agreement) 33 * developer command line tools 19 34 {{{ 20 35 $ xcode-select --install 36 }}} 37 38 39 40 == Tools already present on OSX == 41 42 Some tools are already installed on OSX due to Xcode (like git, svn, ssh, rsync, make, clang etc.) they don't need to be installed via MacPorts for now. 43 Should a more up-to-date version of any one of these be necessary for the CI system it could be added later. 44 45 46 47 == Some of more software supplied by MacPorts == 48 49 Install ports needed for the CI scripts: 50 {{{ 21 51 $ sudo port install py27-lxml bazaar mercurial wget automake autoconf 22 52 }}} 23 53 Installing bazaar brings the also needed port gnutar into the system! 24 54 25 G) Since some tools are already installed on OSX due to Xcode (like git, svn, ssh, rsync, make, clang etc.) they don't need to be installed via MacPorts for now26 55 27 H) Create some folders, clone and update KDE's CI system (assuming a user "kdeci" with its home directory "/Users/kdeci"): 56 57 == Basic setup of CI system == 58 59 Create some folders, clone and update KDE's CI system (assuming a user "kdeci" with its home directory "/Users/kdeci"): 28 60 {{{ 29 61 $ cd … … 35 67 $ ./update-setup.sh # Ignore 404 occurring due to error cloning ECMA262 by hg 36 68 }}} 37 69 The update shell script created a folder {{{~/scripts}}} in which subsequent commands will have to be executed. 38 70 39 I) Prepare environment for Qt5 build (set correct path to kde install directory in config/build/darwin-mavericks.cfg): 71 72 == 1st step: Qt5 build == 73 74 75 === Prepare environment for Qt5 build === 76 77 Install additional ports specific for Qt5, set correct path to KDE-install directory in config/build/darwin-mavericks.cfg: 40 78 {{{ 41 79 $ sudo port install dbus libmng libpng mysql55 pkgconfig sqlite2 tiff … … 56 94 }}} 57 95 58 J) Set up build environment: 96 97 98 === Set up build environment for Qt5 === 99 100 Make sure all libs can be found by adding search paths and avoid inclusion of MacPorts' glib2: 59 101 {{{ 60 102 $ cd ~/scripts; cat config/build/qt5/darwin-mavericks.cfg 61 103 [Build] 62 configureCommand=%(configureExecutable)s -release -system-zlib -system-libpng -system-libjpeg -system-sqlite -dbus -plugin-sql-mysql -nomake examples -confirm-license -opensource -prefix {instPrefix} -no-framework -v -I/opt/local/include -L/opt/local/lib 104 configureCommand=%(configureExecutable)s -release -system-zlib -system-libpng -system-libjpeg -system-sqlite -dbus -plugin-sql-mysql -nomake examples -confirm-license -opensource -prefix {instPrefix} -no-framework -v -I/opt/local/include -L/opt/local/lib -no-glib 63 105 }}} 64 106 Consider here the use of options "{{{-debug -separate-debug-info}}}" instead of "{{{-release}}}". 65 107 66 K) Include MySQL's binary path into PATH(assuming /opt/local as MacPort's prefix):108 Include MySQL's binary path into PATH e.g. in {{{.macports/profile}}} (assuming /opt/local as MacPort's prefix): 67 109 {{{ 68 110 export PATH=/opt/local/lib/mysql55/bin:$PATH 69 111 }}} 70 112 71 L)Set up SSH for rsync access to build host, then start building Qt5:113 Set up SSH for rsync access to build host, then start building Qt5: 72 114 {{{ 73 115 $ cat ~/.ssh/config … … 79 121 }}} 80 122 81 M) Proceed with installation of cmake (needs manual checkout of sources): 123 124 125 == Installation of cmake == 126 127 Cmake needs a manual checkout of its sources: 82 128 {{{ 83 129 $ python2.7 tools/prepare-environment.py --project cmake --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/cmake … … 88 134 }}} 89 135 90 N) Installation of other projects and KDE frameworks:91 136 92 The various frameworks have to be handled by replacing "PROJECT" with the framework's project name: 137 138 == Installation of other projects and KDE frameworks == 139 140 The various frameworks have to be handled by replacing "PROJECT" with the framework's project name: 93 141 {{{ 94 142 $ python2.7 tools/prepare-environment.py --project PROJECT --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/PROJECT … … 97 145 ... 98 146 }}} 99 147 which has been successfully done so far for: 100 148 {{{ 101 149 - extra-cmake-modules 102 150 }}} 103 151 104 152 Problems currently appear for: 105 153 {{{ 106 154 - polkit-qt-1 (still fails due to inability to find package Polkit - this is still Linux-specific and needs to be fixed for use on OSX):