summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2015-02-17 21:43:26 +0100
committer Eric Hameleers <alien@slackware.com>2015-02-17 21:43:26 +0100
commit2aaa9939eae8fd83a2860c4e54f7f6588d8bd38d (patch)
tree1528a2b55e80313697b4c61cf0dd587fabe8bb37
parenta301b781686178187827bb908127f03ce1fe773d (diff)
downloadktown-2aaa9939eae8fd83a2860c4e54f7f6588d8bd38d.tar.gz
ktown-2aaa9939eae8fd83a2860c4e54f7f6588d8bd38d.tar.xz
kdevelop: fix compilation due to our stripped-down kde-workspace.
-rw-r--r--README126
-rw-r--r--README.5_15.01215
-rw-r--r--kde/cmake/kdevelop19
3 files changed, 19 insertions, 341 deletions
diff --git a/README b/README
deleted file mode 100644
index 98fad21..0000000
--- a/README
+++ /dev/null
@@ -1,126 +0,0 @@
-KDE 5_1501
-==========
-
-This is KDE 5 for Slackware-current, composed of Frameworks 5.6.0, Plasma 5.2.0
-and Applications 14.12.1.
-
-Compared to Applications 14.12.0, the Applications 14.12.1 adds LTS releases of
-kdelibs, kdepimlibs, kdepim-runtime, kdepim and kde-workspace.
-I am not going to ship kde-workspace because its contents largely collide with
-the plasma-workspace and we want to have a Plasma Workspace.
-
-Plasma 5.2.0 has many improvements to the previous 5.1.2, and comes with
-several new packages (some of which I originally had in plasma-extra but have
-now found their rightful place): (lib)bluedevil, ksshaskpass, muon,
-sddm-kcm-module, kscreen2, polkit-framework, kde-gtk-config, kdecoration.
-And unfortunately, in order to be able to compile KWin, I had to add wayland
-to the "deps/" for this release of Plasma.
-I will not ship a 'muon' package since that is only meaningful on debian and
-derivatives like ubuntu.
-
-Note that there is still a lot of KDE 4 stuff in here, which is necessary to
-support all the Applications that have not yet been ported to KDE Frameworks 5.
-The Applications 15.04 (march 2015) release should offer a lot more KF5 ports.
-
-
-CURRENT RUNTIME ISSUES:
-=======================
-
-These are issues I ran into while testing on my Virtual machine. Not tested yet
-if they occur on real hardware.
-
-- plasmashell crashes a lot, with error message "the x11 connection broke:
- unsupported extension used (code 2)". I can reliably reproduce this by
- moving the mouse into any window icon in the task bar (probably because
- KWin wants to show something of the window contents).
- Symptom: the desktop disappears and leaves a black screen. If you happen to
- have a konsole window open, you can type "plasmashell" to get the desktop
- back and watch the errors when it crashes again.
-
-
-COMPILING IT ALL:
-=================
-
-Preliminary build procedure:
-----------------------------
-
-- (crude) get rid of Slackware's KDE:
- # removepkg /var/log/packages/*-4.10.5-*
- # removepkg libkscreen
- # removepkg kscreen
-- build all the deps using "updates.SlackBuild" script in the "deps/" directory
- - note that extra-cmake-modules is required here as well as when building the
- frameworks, so I just copied it from frameworks to deps.
- - I removed akonadi-qt5 from the built deps because it won't be used until
- there is a kdepimlibs-framework, and currently it causes kdepimlibs-4.14
- to pick up Qt5 dependencies making its build fail
-- logoff/login to activate Qt5 profile script.
-- build all the KDE 4 stuff in the "kde/" directory, using "./KDE.SlackBuild kde libs kdebase:nepomuk-core kdepimlibs kdebase kdebindings kdepim extragear"
-- check that everything built correctly
-- build the remaining KDE 5 stuff in the "kde/" directory, using "./KDE.SlackBui
-ld frameworks plasma plasma-extra applications"
-- check that everything built correctly
-- remove kde-workspace and re-install plasma-workspace (kde-workspace is only
- used to build kdeartwork)
-- (optionally) build kdei
-- If you want to use SDDM as your graphical login manager, use the following
- patch to /etc/rc.d/rc.4:
-
-# -------- 8< --------------------------------------
---- /etc/rc.d/rc.4.orig 2015-01-23 13:26:43.273394439 +0100
-+++ /etc/rc.d/rc.4 2015-01-23 10:01:12.189036253 +0100
-@@ -28,6 +28,8 @@
- # Not there? OK, try to use KDE's kdm session manager:
- if [ -x /opt/kde/bin/kdm ]; then
- exec /opt/kde/bin/kdm -nodaemon
-+elif [ -x /usr/bin/sddm ]; then
-+ exec /usr/bin/sddm
- elif [ -x /usr/bin/kdm ]; then
- exec /usr/bin/kdm -nodaemon
- fi
-# -------- 8< --------------------------------------
-
-
-
-BUILD LOG FOR PLASMA:
-=====================
-
-DONE: Need to recompile everything making sure that Qt4 is not picked up by accident, or else set "export QT_QPA_PLATFORM_PLUGIN_PATH=path/to/qt/plugins" to get rid of the start-time error:
- Failed to load platform plugin "xcb". Available platforms are:
- linuxfb minimal offscreen xcb
- Aborted
- >> The fix was to rebuild the qt5 package, not all of the rest :-)
-SKIP: change "qtpaths" to "qtpaths-qt5" in /usr/bin/startkde
- (not needed for Slackware, because /etc/profile.d/qt5.sh expands $PATH)
-SKIP: change "qdbus" to "qdbus-qt5" in /usr/bin/startkde
- (not needed for Slackware, because /etc/profile.d/qt5.sh expands $PATH)
-SKIP: rename /usr/bin/startkde to /usr/bin/startkde5 because it clashes with the script from kde-workspace. Also update the plasma*desktop scripts to call startkde5 instead of startkde.
- (I removed kde-workspace instead, we do not need that anyway)
-DONE: Remove kde5-plasma*.desktop because plasma-workspace now includes its own plasma.desktop
-
-
-BUILD LOG FOR PLASMA-EXTRA:
-===========================
-
-DONE: sddm-qt5 (no longer adds an /etc/sddm.conf so we need to generate one in its doinst.sh)
-
-
-BUILD LOG FOR APPLICATIONS:
-===========================
-
-DONE: kdoctools (needs a fix for its CMake search for path to "/usr/share/xml/docbook/xml-dtd-4.5/docbookx.dtd", which causes a build error in kde-dev-scripts later on)
-DONE: kde-dev-scripts (needs a fixed "/usr/share/kf5/kdoctools/customization/dtd/kdex.dtd" in kdoctools)
-SKIP: libkface (needs opencv, so this will get skipped due to my reservations with it)
-DONE: kdeartwork (missed kde-workspace, will be fixed in the next iteration)
-DONE: kdewebdev (seems like tidy added the KDE.SlackBuild parameter to the path of its header file)
-DONE: kalgebra (needs patch to link properly to ncurses)
-DONE: kanagram (needed libkeduvocdocument, was missing due to build order issue)
-DONE: khangman (needed libkeduvocdocument, was missing due to build order issue)
-DONE: parley (needed libkeduvocdocument, was missing due to build order issue)
-DONE: okular (needed libkscreen removed)
-DONE: kalgebra (needed a refreshed curses patch)
-DONE: step (needed an update of eigen2 to compile successfully)
-
-==============================================================================
- Eric Hameleers / alien at slackware dot com / 27-jan-2015
-
diff --git a/README.5_15.01 b/README.5_15.01
deleted file mode 100644
index 6a90849..0000000
--- a/README.5_15.01
+++ /dev/null
@@ -1,215 +0,0 @@
-KDE5
-====
-
-This is KDE 5_15.01 for Slackware, consisting of the KDE Frameworks 5.6.0,
-Plasma 5.2.0 and Applications 14.12.1.
-This is meant only to be installed on top of Slackware -current and it will
-*replace* any version of KDE 4 you migh thave installed!
-
-Plasma 5 is the next generation of KDE's desktop workspace.
-Plasma 5 improves support for high-DPI displays and comes with a "converged
-shell", i.e. one Plasma codebase for different target devices. Plasma 5 uses
-a new fully hardware-accelerated OpenGL(ES) graphics stack. Plasma 5 is built
-using Qt 5 and Frameworks 5.
-And with the Breeze themed artwork and its own Oxygen font, this desktop looks
-clean and modern.
-
-Further points of interest:
-- Lots of packages in the 'deps' department which are completely new to
- Slackware. Since KDE 5 is built on Qt5 (KDE 4 had Qt4 as its base) you'll
- find many Qt5 related packages. Also, in ordet for Qt4 and GTK based
- applications to dock into the Plasma 5 system tray, more dependencies were
- needed. So, apart from updates to regular Slackware packages, these are the
- new ones:
- LibRaw, OpenAL, akonadi-qt5, eigen3, gst1-plugins-base, gst1-plugins-good,
- gstreamer1, json-glib, libappindicator, libdbusmenu-gtk, libdbusmenu-qt5,
- libepoxy, libfakekey, libindicator, orc, polkit-qt5-1, qca-qt5, qt-gstreamer,
- qt-gstreamer1, qt5, sni-qt, wayland and xapian-core.
-- Note for users of multilib Slackware64 and also using Skype: you will have to
- grab the 32-bit version of sni-qt and run 'convertpkg-compat32' on it,
- or else Skype won't be able to dock its icon in the systray.
-- A bit sneakily, I built phonon-vlc for you. You will also need a VLC package
- to be able to use this package though.
-- I added the latest Calligra 2.8.7 office suite.
-- Even though I compile a 'kde-workspace' package as part of the whole set,
- I do not ship that package. It conflicts with the new plasma-workspace
- package.
-- Several source tarballs in Plasma 5.2.0 have not been compiled to Slackware
- packages: libbluedevil and bluedevil (they need BlueZ 5 which is not part of
- Slackware), muon (a debian/ubuntu package manager), libkface (needs opencv
- which I was not willing to add as a dependency).
-- One dependency which you'll probably find curious, is wayland. It is required
- in order to *compile* KWin's X11 driver, but it is apparently not needed at
- *runtime*. Nevertheless, I left the package in, just in case you want or need
- to recompile kwin.
-- Graphical login: KDM has been replaced with SDDM.
- If you want to see the new graphical session (login) manager SDDM in action,
- add the following lines to the Slackware file "/etc/rc.d/rc.4" right after
- the line: echo "Starting up X11 session manager..."
-
-# --- 8< --------------------------------------
-if [ -x /usr/bin/sddm ]; then
- exec /usr/bin/sddm
-fi
-# --- 8< --------------------------------------
-
-... and then switch to runlevel 4 by typing (at the root prompt):
-
- # init 4
-
-Select "Plasma" from the SDDM session dropdown.
-Alternatively, if you prefer good old runlevel 3, you can type (at your own
-user account's command prompt):
-
- $ xwmconfig
-
-... and select "xinitrc.plasma" as your default window manager for X.
-Then run:
-
- $ startx
-
-NOTE:
-Also explained in more detail below, upgrading to this KDE 5 is non-trivial.
-You will have to remove old KDE packages manually. If you do not have KDE
-installed at all, you will have to *install* some of Slackware's own KDE
-packages manually.
-
-NOTE:
-If you decide to install these packages on top of a fresh installation of
- Slackware-current and have excluded all packages in the 'KDE' package series
- during installation, you will be missing several add-on packages, some of
- these are essential to the proper functioning of KDE!
- If you excluded the complete Slackware-current 'KDE' series, then you
- will have to install the following essential Slackware-current packages
- at a a minimum:
- * bluedevil
- * polkit-kde-agent-1
- * polkit-kde-kcmodules-1
- And optionally install these as well:
- * amarok
- * kaudiocreator
- * kdevelop-pg-qt
- * kplayer
- * ktorrent
- * libktorrent
-
--------------------------------------------------------------------------------
-Building it all from source:
--------------------------------------------------------------------------------
-
-Sources and scripts are separated from the packages in my 'ktown' repository.
-If you want the sources for KDE 5, run the following command to download them:
-
- # rsync -av rsync://alien.slackbook.org/alien/ktown/source/5 .
-
-There are a lot of 'dependencies' for KDE 5 which you'll have to compile and
-install before attempting to compile KDE 5. Compiling and installing these
-dependencies on Slackware-current is as easy as:
- # cd 5/deps
- # ./updates.SlackBuild
- # cd -
-
-Be prepared to wait a *long* time since this will recompile Qt4 and compile a
-new Qt5 package among others. The finished package will be stored in /tmp .
-Then if you want to compile the KDE packages on your computer, run:
- # cd 5/kde
- # ./KDE.SlackBuild
-
-Wait a long time, and you will find the new packages in /tmp/kde-build .
-Note that these packages will already have been installed by KDE.SlackBuild !
-
-But if all you want is the packages I created, then you can skip all of that.
-
--------------------------------------------------------------------------------
-Install pre-compiled packages:
--------------------------------------------------------------------------------
-
-In order to install or upgrade KDE 5, follow these steps:
-
-Make sure you are not running KDE or even X ! If you are running an X session,
-log out first, and if you are in runlevel 4 (graphical login) you first have to
-go back to runlevel 3 (console) by typing "init 3".
-
-If you still have a KDE 4 installed, it must be removed first. No clean
-upgrade path can be provided! Do as follows:
-
-If you have Slackware's default KDE 4.10.5 installed:
- # removepkg /var/log/packages/*-4.10.5-*
- # removepkg libkscreen
- # removepkg kscreen
- # removepkg kde-workspace
-If you have my 'ktown' set of KDE 4.14.3 installed:
- # removepkg /var/log/packages/*-4.14.3-*alien
- # removepkg libkscreen
- # removepkg kscreen
- # removepkg kde-workspace
- # removepkg libmm-qt
- # removepkg plasma-nm
- # removepkg kdeconnect-kde
-If you have my 'ktown_preview' set of KDE 5.0.2 installed as well:
- # removepkg /var/log/packages/*-5.0.2-*alien
- # removepkg /var/log/packages/*-5.2.0-*alien
- # removepkg kscreen2 libkscreen2 libmm-qt5 libnm-qt5 oxygen-fonts sddm
-
-Then proceed with installing KDE 5 as outlined below.
-
-To make it easy for you, here is a one-line command that downloads the whole
-'5' directory (excluding the sources), with 32-bit and 64-bit packages
-(and be careful of the 'dot' at the end of that command, it is part of the
-commandline !!):
-
- # rsync -av rsync://alien.slackbook.org/alien/ktown/current/5 .
-
-Or else, if you want to download packages for just one of the two supported
-architectures, you would run one of the following commands instead (note that
-there is a dot at the end of these commands!).
-
-If you want only the 64-bit packages:
- # rsync -av --exclude=x86 rsync://alien.slackbook.org/alien/ktown/current/5 .
-If you want only the 32-bit packages:
- # rsync -av --exclude=x86_64 rsync://alien.slackbook.org/alien/ktown/current/5 .
-
-Assuming you just downloaded the bits you want from the directory tree
-"5", you must now change your current directory to where you found this
-README (which is the directory called '5'). If you used one of the
-above "rsync" commands then you can simply do:
-
- # cd 5
-
-From within this directory, you run the following commands as root (note that
-some of the old KDE package names are obsoleted now, they have been split up,
-renamed or integrated and that is the reason for the 'removepkg' lines):
-
- On Slackware 32-bit:
- # upgradepkg --reinstall --install-new x86/deps/*.t?z
- # upgradepkg --reinstall --install-new x86/kde/*/*.t?z
-
- On Slackware 64-bit:
- # upgradepkg --reinstall --install-new x86_64/deps/*.t?z
- # upgradepkg --reinstall --install-new x86_64/kde/*/*.t?z
-
- If you already have one or more non-english language packs installed:
-
- On Slackware 32-bit:
- # upgradepkg x86/kdei/*.t?z
-
- On Slackware 64-bit:
- # upgradepkg x86_64/kdei/*.t?z
-
- If you want to have a non-english language pack installed but none is
- currently installed, substitute your country code instead of the 'XX'
- in the next command:
- # upgradepkg --install-new x86_64/kdei/kde-l10n-XX-*.t?z
-
- Check if any ".new" configuration files have been left behind by
- the upgradepkg commands. Compare them to their originals and decide
- if you need to use them.
- # find /etc/ -name "*.new"
- A graphical (ncurses) tool for processing these "*.new" files is slackpkg:
- # slackpkg new-config
-
-Then reboot your system.
-
-==============================================================================
- Eric Hameleers / alien at slackware dot com / 28-jan-2015
-
diff --git a/kde/cmake/kdevelop b/kde/cmake/kdevelop
new file mode 100644
index 0000000..d8e7e64
--- /dev/null
+++ b/kde/cmake/kdevelop
@@ -0,0 +1,19 @@
+mkdir build
+cd build
+ cmake \
+ $KDE_OPT_ARGS \
+ -DKDE_PLATFORM_FEATURE_DISABLE_DEPRECATED=TRUE \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DSYSCONF_INSTALL_DIR=/etc/kde \
+ -DLIB_INSTALL_DIR=/usr/lib$LIBDIRSUFFIX \
+ -DLIBEXEC_INSTALL_DIR=/usr/lib$LIBDIRSUFFIX \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DWITH_KDE4Workspace=OFF \
+ ..
+