Changes between Version 26 and Version 27 of KDEProblems/KDEMacPortsCI


Ignore:
Timestamp:
May 22, 2014, 9:25:09 PM (10 years ago)
Author:
mkae (Marko Käning)
Comment:

move status of setting up the CI system to https://trac.macports.org/wiki/KDEProblems/KDEMacPortsCI/Status

Legend:

Unmodified
Added
Removed
Modified
  • KDEProblems/KDEMacPortsCI

    v26 v27  
    4444
    4545
     46
    4647== Setting up the CI system (still hanging on OSX up to now) ==
    4748 
    48 This is what has to be done to get a KDE/CI system up and running on OSX (partially by also using MacPorts):
    49  
    50  A) Start with fresh Mavericks install and make sure your disk has at least 20G free space left
     49The current status of the setting up of a MacPorts/KDE CI system on OSX is documented on a [wiki:/KDEProblems/KDEMacPortsCI/Status dedicated page].
    5150
    52  B) Install MacPorts 2.2.1 using the official PKG
    5351
    54  C) Install ports for bash use:
    55 {{{
    56 $ sudo port install bash bash-completion
    57 }}}
    58 
    59  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)
    60 
    61  E) Install Xcode from AppStore (and agree actively to the developer license agreement)
    62 
    63  F) Install developer command line tools and install some of MacPorts' ports needed for later
    64 {{{
    65 $ xcode-select --install
    66 $ sudo port install py27-lxml bazaar mercurial wget automake autoconf
    67 }}}
    68  Installing bazaar brings the also needed port gnutar into the system!
    69 
    70  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 now
    71 
    72  H) Create some folders, clone and update KDE's CI system (assuming a user "kdeci" with its home directory "/Users/kdeci"):
    73 {{{
    74 $ cd
    75 $ mkdir -p WC/KDECI-build;
    76 $ cd WC
    77 $ git clone git://anongit.kde.org/websites/build-kde-org
    78 $ cd build-kde-org
    79 $ git checkout production
    80 $ ./update-setup.sh                    # Ignore 404 occurring due to error cloning ECMA262 by hg
    81 }}}
    82  The update shell script created a folder {{{~/scripts}}} in which subsequent commands will have to be executed.
    83 
    84  I) Prepare environment for Qt5 build (set correct path to kde install directory in config/build/darwin-mavericks.cfg):
    85 {{{
    86 $ sudo port install dbus libmng libpng mysql55 pkgconfig sqlite2 tiff
    87 $ sudo port uninstall cmake            # Remove MacPorts' cmake (which came into the system as build-dependency for mysql55)
    88 $ cd ~/scripts
    89 $ cat config/build/darwin-mavericks.cfg
    90 [DEFAULT]
    91 scriptsLocation=/Users/kdeci/scripts
    92 opSys=darwin
    93 architecture=mavericks
    94 compiler=clang
    95 
    96 [General]
    97 installPrefix=/opt/kde/install/%(opSys)s/%(architecture)s/%(compiler)s/
    98 $ python2.7 tools/prepare-environment.py --project qt5 --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/qt5
    99 ...
    100 $
    101 }}}
    102 
    103  J) Set up build environment:
    104 {{{
    105 $ cd ~/scripts; cat config/build/qt5/darwin-mavericks.cfg
    106 [Build]
    107 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
    108 }}}
    109  Consider here the use of options "{{{-debug -separate-debug-info}}}" instead of "{{{-release}}}".
    110 
    111  K) Include MySQL's binary path into PATH (assuming /opt/local as MacPort's prefix):
    112 {{{
    113 export PATH=/opt/local/lib/mysql55/bin:$PATH
    114 }}}
    115 
    116  L) Set up SSH for rsync access to build host, then start building Qt5:
    117 {{{
    118 $ cat ~/.ssh/config
    119 Host build.kde.org
    120    Port 2022
    121 $ ssh-keygen -C YOUR@EMAIL.ADDRESS       # <-- send your public SSH key to Ben Cooksley in order to get access to the build server
    122 $ python2.7 tools/perform-build.py --project qt5 --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/qt5
    123 ...
    124 }}}
    125 
    126  M) Proceed with installation of cmake (needs manual checkout of sources):
    127 {{{
    128 $ python2.7 tools/prepare-environment.py --project cmake --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/cmake
    129 ...
    130 $ git clone git://cmake.org/cmake.git ~/WC/KDECI-build/cmake
    131 $ python2.7 tools/perform-build.py --project cmake --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/cmake
    132 ...
    133 }}}
    134 
    135  N) Installation of KDE frameworks, starting with kauth:
    136 
    137  N.1) Framework kauth:
    138 {{{
    139 $ python2.7 tools/prepare-environment.py --project kauth --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/kauth
    140 ...
    141 $ python2.7 tools/perform-build.py --project kauth --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/kauth
    142 ...
    143 }}}
    144 
    145  N.2) Framework polkit-qt-1 (still fails due to inability to find package Polkit):
    146 {{{
    147 $ python2.7 tools/prepare-environment.py --project polkit-qt-1 --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/polkit-qt-1
    148 ...
    149 $ python2.7 tools/perform-build.py --project polkit-qt-1 --branchGroup kf5-qt5 --platform darwin-mavericks --sources ~/WC/KDECI-build/polkit-qt-1
    150 ...
    151 }}}
    15252
    15353== OSX virtualisation ==