summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO24
-rw-r--r--PKGBUILD20
-rw-r--r--cmake.patch60
-rw-r--r--cmake_boost.patch13
4 files changed, 106 insertions, 11 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8b1bc33e063f..f6505b46e759 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,26 +1,40 @@
pkgbase = e4rat
pkgdesc = Toolset to accelerate the boot process and application startups for systems with ext4 root partitions.
pkgver = 0.2.3
- pkgrel = 3
+ pkgrel = 4
url = http://e4rat.sourceforge.net/
arch = i686
arch = x86_64
license = GPL
- makedepends = audit
+ makedepends = git
+ makedepends = cmake>=2.6
makedepends = boost
- makedepends = cmake
- depends = e2fsprogs
- depends = boost-libs
+ makedepends = perl
+ makedepends = openmpi
+ depends = e2fsprogs>=1.41
+ depends = gettext>=0.18
+ depends = boost-libs>=1.41
+ depends = audit>=0.1.7
+ optdepends = bootchart2: A "startup" graphing tool
+ conflicts = ureadahead
+ conflicts = e4rat-preload-lite
+ conflicts = e4rat-preload-lite-git
+ conflicts = e4rat-lite
+ conflicts = e4rat-lite-git
options = !strip
backup = etc/e4rat.conf
source = http://downloads.sourceforge.net/project/e4rat/0.2.3/e4rat_0.2.3_src.tar.gz
source = logging.patch
source = sysmacros_h.patch
source = boost-fs3-v2.patch
+ source = cmake_boost.patch
+ source = cmake.patch
sha256sums = f6feda9618eff0f9442baf771b4776b634e5a2f39e678c10e4c7946b2c6a96a0
sha256sums = d54959ea7fb0629de51f6b530ee72082863756bbe0b0b5af0965aa5ad9ac9739
sha256sums = ea35d1f7f8b6c4be9f20cc6ffbe72446dbdb6b99df450f29855a1cf9cf79362a
sha256sums = 9a9786d6167e4a47d1733735745b0eadeabf487886405df9e6771a28f3a20965
+ sha256sums = 0978a893f73dbd16ef727b59f865cb9079dd3a357f43188308a1ea303177dd02
+ sha256sums = 626f5663c6d5690c119e2e21402ce352285d0771806cc7119ba6e4c785e6e3b1
pkgname = e4rat
diff --git a/PKGBUILD b/PKGBUILD
index 09b795e07b93..5cafccce6f9c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,30 +5,36 @@
pkgname=e4rat
pkgver=0.2.3
-pkgrel=3
+pkgrel=4
pkgdesc="Toolset to accelerate the boot process and application startups for systems with ext4 root partitions."
arch=('i686' 'x86_64')
url="http://e4rat.sourceforge.net/"
license=('GPL')
-depends=('e2fsprogs' 'boost-libs')
-makedepends=('audit' 'boost' 'cmake')
+depends=('e2fsprogs>=1.41' 'gettext>=0.18' 'boost-libs>=1.41' 'audit>=0.1.7')
+makedepends=('git' 'cmake>=2.6' 'boost' 'perl' 'openmpi')
+conflicts=('ureadahead' 'e4rat-preload-lite' 'e4rat-preload-lite-git' 'e4rat-lite' 'e4rat-lite-git')
+optdepends=('bootchart2: A "startup" graphing tool')
options=(!strip)
backup=(etc/e4rat.conf)
source=( "http://downloads.sourceforge.net/project/$pkgname/$pkgver/e4rat_${pkgver}_src.tar.gz" \
'logging.patch' \
'sysmacros_h.patch' \
- 'boost-fs3-v2.patch' )
+ 'boost-fs3-v2.patch'
+ 'cmake_boost.patch'
+ 'cmake.patch')
prepare () {
cd "$srcdir/$pkgname-$pkgver"
patch -p1 < "$srcdir/boost-fs3-v2.patch"
patch -p0 -i ../logging.patch
patch -p0 -i ../sysmacros_h.patch
+ patch -p1 -i ../cmake_boost.patch
+ patch -p0 -i ../cmake.patch
}
build() {
cd "$srcdir/$pkgname-$pkgver"
- cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_CORE_LIBRARY_STATIC=true .
+ cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_CORE_LIBRARY_STATIC=true -DCMAKE_INSTALL_PREFIX="/usr" .
make
}
@@ -42,4 +48,6 @@ package() {
sha256sums=('f6feda9618eff0f9442baf771b4776b634e5a2f39e678c10e4c7946b2c6a96a0'
'd54959ea7fb0629de51f6b530ee72082863756bbe0b0b5af0965aa5ad9ac9739'
'ea35d1f7f8b6c4be9f20cc6ffbe72446dbdb6b99df450f29855a1cf9cf79362a'
- '9a9786d6167e4a47d1733735745b0eadeabf487886405df9e6771a28f3a20965')
+ '9a9786d6167e4a47d1733735745b0eadeabf487886405df9e6771a28f3a20965'
+ '0978a893f73dbd16ef727b59f865cb9079dd3a357f43188308a1ea303177dd02'
+ '626f5663c6d5690c119e2e21402ce352285d0771806cc7119ba6e4c785e6e3b1')
diff --git a/cmake.patch b/cmake.patch
new file mode 100644
index 000000000000..2af849f832ca
--- /dev/null
+++ b/cmake.patch
@@ -0,0 +1,60 @@
+--- CMakeLists.txt
++++ CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.6)
++cmake_minimum_required(VERSION 2.9)
+
+ set(CMAKE_VERBOSE_MAKEFILE off)
+
+--- src/CMakeLists.txt
++++ src/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.6)
++cmake_minimum_required(VERSION 2.9)
+
+ set(CMAKE_VERBOSE_MAKEFILE off)
+
+--- doc/CMakeLists.txt
++++ doc/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.6)
++cmake_minimum_required(VERSION 2.9)
+
+ set(CMAKE_VERBOSE_MAKEFILE off)
+
+
+--- src/config.cc
++++ src/config.cc
+@@ -90,10 +90,10 @@
+ void Config::load()
+ {
+ try {
+- if(access("/etc/"PROGRAM_NAME".conf", F_OK))
++ if(access("/etc/" PROGRAM_NAME".conf", F_OK))
+ return;
+
+- read_info("/etc/"PROGRAM_NAME".conf", ptree);
++ read_info("/etc/" PROGRAM_NAME".conf", ptree);
+ #if 0
+ BOOST_FOREACH(boost::property_tree::ptree::value_type &v, ptree)
+ if(defaultProperty.find(v.first) == defaultProperty.not_found())
+--- src/defrag.cc
++++ src/defrag.cc
+@@ -56,7 +56,7 @@
+ std::string path;
+
+ path = (dir / PROGRAM_NAME"-XXXXXX").string();
+- strncpy(cpath, path.c_str(), PATH_MAX);
++ strncpy(cpath, path.c_str(), PATH_MAX - 1);
+
+ fd = mkostemp(cpath, O_RDWR |O_CREAT);
+ if(-1 == fd)
+@@ -450,7 +450,7 @@
+ */
+ char cfiletemplate[PATH_MAX];
+ std::string file_template = (device.getMountPoint() / PROGRAM_NAME"-XXXXXX").string();
+- strncpy(cfiletemplate, file_template.c_str(), PATH_MAX);
++ strncpy(cfiletemplate, file_template.c_str(), PATH_MAX - 1 );
+ int fd = mkostemp(cfiletemplate, O_RDWR |O_CREAT);
+ if(fd < 0)
+ throw std::runtime_error("Cannot create a temporary file");
diff --git a/cmake_boost.patch b/cmake_boost.patch
new file mode 100644
index 000000000000..4ddad6acf001
--- /dev/null
+++ b/cmake_boost.patch
@@ -0,0 +1,13 @@
+diff --git CMakeLists.txt CMakeLists.txt
+index 10969c2..dd28028 100644
+--- e4rat-lite/CMakeLists.txt
++++ e4rat-lite/CMakeLists.txt
+@@ -20,7 +20,7 @@ IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
+ ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
+
+ set(Boost_USE_STATIC_LIBS OFF)
+-set(Boost_USE_MULTITHREADED OFF)
++set(Boost_USE_MULTITHREADED ON)
+ find_package(Boost 1.41 COMPONENTS system filesystem regex REQUIRED)
+ set(${PROJECT_NAME}_LIBRARIES ${${PROJECT_NAME}_LIBRARIES}
+ ${Boost_LIBRARIES})