summaryrefslogtreecommitdiff
path: root/sys-fs/shake
diff options
context:
space:
mode:
Diffstat (limited to 'sys-fs/shake')
-rw-r--r--sys-fs/shake/Manifest9
-rw-r--r--sys-fs/shake/files/shake-0.999-fix_stat_include.patch22
-rw-r--r--sys-fs/shake/files/shake-0.999-uclibc.patch49
-rw-r--r--sys-fs/shake/metadata.xml12
-rw-r--r--sys-fs/shake/shake-0.999.ebuild25
-rw-r--r--sys-fs/shake/shake-1.0.ebuild22
6 files changed, 139 insertions, 0 deletions
diff --git a/sys-fs/shake/Manifest b/sys-fs/shake/Manifest
new file mode 100644
index 000000000000..bfe13e47b406
--- /dev/null
+++ b/sys-fs/shake/Manifest
@@ -0,0 +1,9 @@
+AUX shake-0.999-fix_stat_include.patch 827 SHA256 5dbe88b8980f8663cf7cabf6bc4c99c4c8e8d7e0c918e61de14def93240bdde4 SHA512 92918957fe5af4024e0d4600fc601a8c8aae26edc5b353caea8879582c06908b42184f4d5bb7f388c071816ca1f70bdb4b9768b18e8ec3669481ca486b705fc8 WHIRLPOOL 825bb1430bb472ca3e7f9a3575bc7442e4b724598e0c989812fd3795f6507b93a376f5375e7412a4ce0d500f9037d548ad22fcf1195f61e0eaa283052b5fc21b
+AUX shake-0.999-uclibc.patch 1180 SHA256 fe8339ed47ae63db4d4c6092eb2037740ed1ecf661f3823ad972a569d4318827 SHA512 f37a4fbcc1ae932c0c8c9af090cb93481f3c6eb3de1994cc1585903e3ddaccf4c1c8a4e121b720119378fdd0f1d74235f197ba1a5c984aa416107bec6eb39a1e WHIRLPOOL ccfe5e93456a231b86ab89cdf44678959952d07ecb1e25f85cdf429e71d4b483de179e94dc102923d7f9482ce13164344a8b6ca7c23684dfb17dc1eba56a52d7
+DIST shake-0.999.tar.bz2 37225 SHA256 f030d5ba5d4d2d449249c49b253a71de8c342b9b2f5e1e7d3e7ba5277e3f5e91 SHA512 7dbd61cb35f771ffae6ec90bcdbf0cc467166661a78379191c7cf888d5f32ad27ea56da739f8f39344a209003747de2be1b57f2335ddc5641f55605c15c84b78 WHIRLPOOL 1d7354dac8aa3582048e8f8532ee308a792c041f15dc7b1e9e68b86b7cbfa66a72bbf9bbca481a3ac9738cb505d529eecd9aae135f2a64cfe5570ace59b862d8
+DIST shake-1.0.tar.gz 42885 SHA256 ac5a57bd8d55e197734852bf66318ecf39b4c5c298e43a259ba1d8a4b7a2ced3 SHA512 f73601ebf37ac934b2cfb5bcedd530e38bd6873615e80eae01c690bf935ed3924abb1d06fb31c46397b5804d47a36584ac5e11b4c7142b46e570ddbf3abe1775 WHIRLPOOL d3af2b55f7aa4103e4c9ba7f6fb4ac59b9a60992318d226238ed22048b09ce4fe4255494f189be280b76f100936d8cfde6a86ff8390039f6b9c03c2c9db9d2fa
+EBUILD shake-0.999.ebuild 539 SHA256 7d999bc513d57c4acc175f3764604da062dc04ffb6de579f53709ba8409ad7c1 SHA512 911a1ad7694b2579e8012799db50e4f33dba8471b615f7a3f5669b01faeb58a774b52e5ec40f74bc237e3ee4c00fac1aac284939cc09ff732b6f8854b1bfcee2 WHIRLPOOL 048f2bd6c7d1750772328c703bcd2051674534e1a3ef7c0843de2de694668580fd59b01276636714983c8a92066492733ce7a46f8b96c2c211fbfdfd07e9806b
+EBUILD shake-1.0.ebuild 505 SHA256 46e5686c2b34a1b7c22a2d90912f703513aa0a1db0640c5d3a7f2549514ba70a SHA512 b31358ce94fa4b3a04bb933c4d4d1aa4eb0045bf084ceb3f426da7dd6d0f800335b58ce14b2c8ee40d0497f06692b475fae66723c789670aa0e9974b10bec6d4 WHIRLPOOL 174094cbaab7bd22c24cc492508bf1d5a62f35e3e8be2d30bc22be2c3fd172fbad1938362ac200f2eb637a2c9466be8d0f1ac8cc8f0fba642ff1e4621bd31c99
+MISC ChangeLog 2397 SHA256 b8ba22de7999ed9e88f3221554a901164e4260c1d357b2b2f731180b310ebb19 SHA512 0a452104424b5bd26c5e4d57f08e4a93f07f60286aac8ea3425a8347704084d657ba17db9459092bf2082f213e8a9bed0205f504f7b15460f42c81c70d8920b4 WHIRLPOOL d9ec84ecacc1abd0d6c6a63ed73398d74b56535762059927941ae225dc0de50010dfe135144eede1fcbe7e7a4e8fd9d0092a6bd62cd50d49c1816e277411357f
+MISC ChangeLog-2015 2023 SHA256 7d7f1f340401975d68505aa1e34625bea3559e5f5866f9e9d9b67edc38a1adea SHA512 a6b537200a33247ff61ad5a7fc0c44f92131d5547ec660230b3e7701be904153cf5a3d285a6cf410fdd85c6938d06f58ecfc2ef8789126e26d38401fdf8ce0be WHIRLPOOL 95b5e5b2e1be23a7b441dc914e41f682df686525326c2c7b7e432a91c583049ad4ae0764bf1dba170da1d94a3547cd3c45189f127954c87d1735f75f198d827d
+MISC metadata.xml 452 SHA256 78824a07732e054d3bae8a30b0a73a4bf22315360e747c81066c9c45671d2af8 SHA512 95fab203ab540b445036639bcc24ae4f7d18cd51a4f1a693c14a69ba5c1b561c77ab1e0585f2baf389a3f660c19a8a06f6b0cd5d748a52fc72fd842df99b2a3e WHIRLPOOL 76c2389fb9cf1dc7719e47fbd9ccfb27099a665d03a9137ba55a4280bfe769d5851f84b36d6914c776631bc6dc1254e94a663d605e28fd483956b016d96d3c70
diff --git a/sys-fs/shake/files/shake-0.999-fix_stat_include.patch b/sys-fs/shake/files/shake-0.999-fix_stat_include.patch
new file mode 100644
index 000000000000..b55776397288
--- /dev/null
+++ b/sys-fs/shake/files/shake-0.999-fix_stat_include.patch
@@ -0,0 +1,22 @@
+diff -Naur shake-fs-0.999.orig/judge.c shake-fs-0.999/judge.c
+--- shake-fs-0.999.orig/judge.c 2013-01-21 13:21:17.171974754 +0100
++++ shake-fs-0.999/judge.c 2013-01-21 13:21:31.346958593 +0100
+@@ -26,7 +26,6 @@
+ #include <fcntl.h> // open()
+ #include <sys/types.h> // open(), umask()
+ #include <dirent.h> // scandir()
+-#include <sys/stat.h> // stat(), umask()
+ #include <unistd.h> // stat()
+ #include <stdio.h> // printf(), tmpfile()
+ #include <error.h> // error()
+diff -Naur shake-fs-0.999.orig/judge.h shake-fs-0.999/judge.h
+--- shake-fs-0.999.orig/judge.h 2013-01-21 13:21:17.171974754 +0100
++++ shake-fs-0.999/judge.h 2013-01-21 13:21:47.630940034 +0100
+@@ -22,6 +22,7 @@
+ #include <stdbool.h>
+ #include <fcntl.h>
+ #include <time.h>
++#include <sys/stat.h>
+ typedef unsigned int uint;
+ typedef long long int llint;
+
diff --git a/sys-fs/shake/files/shake-0.999-uclibc.patch b/sys-fs/shake/files/shake-0.999-uclibc.patch
new file mode 100644
index 000000000000..2c54df0b552c
--- /dev/null
+++ b/sys-fs/shake/files/shake-0.999-uclibc.patch
@@ -0,0 +1,49 @@
+--- shake-fs-0.999-orig/executive.c
++++ shake-fs-0.999/executive.c
+@@ -214,12 +214,21 @@ release (struct accused *a, struct law *
+ assert (a->fd >= 0);
+ /* Restores mtime */
+ {
++#ifdef __UCLIBC__
++ struct timespec tv[2];
++ tv[0].tv_sec = a->atime;
++ tv[0].tv_nsec = 0;
++ tv[1].tv_sec = a->mtime;
++ tv[1].tv_nsec = 0;
++ futimens (a->fd, tv);
++#else
+ struct timeval tv[2];
+ tv[0].tv_sec = a->atime;
+ tv[0].tv_usec = 0;
+ tv[1].tv_sec = a->mtime;
+ tv[1].tv_usec = 0;
+ futimes (a->fd, tv);
++#endif
+ }
+ if (has_been_unlocked (a, l))
+ error (0, 0, "%s: concurent accesses", a->name);
+--- shake-fs-0.999-orig/linux.h
++++ shake-fs-0.999/linux.h
+@@ -32,7 +32,6 @@
+ /* Called once, perform OS-specific tasks.
+ */
+ int os_specific_setup (const char *tempfile);
+-
+
+
+ /* Get a write lock on the file.
+@@ -54,12 +53,13 @@ int readlock_to_writelock (int fd);
+ /* Return true if fd is locked, else false
+ */
+ bool is_locked (int fd);
+-
+
+
++#ifndef __UCLIBC__
+ /* Declares the glibc function
+ */
+ int futimes (int fd, const struct timeval tv[2]);
++#endif
+
+ /* Set the shake_ptime field and ctime of the file to the actual date.
+ */
diff --git a/sys-fs/shake/metadata.xml b/sys-fs/shake/metadata.xml
new file mode 100644
index 000000000000..7e9e9a1984aa
--- /dev/null
+++ b/sys-fs/shake/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>voyageur@gentoo.org</email>
+ </maintainer>
+ <longdescription>Shake is a defragmenter that runs in userspace, without
+then need of patching the kernel and while the system is used </longdescription>
+ <upstream>
+ <remote-id type="github">unbrice/shake</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sys-fs/shake/shake-0.999.ebuild b/sys-fs/shake/shake-0.999.ebuild
new file mode 100644
index 000000000000..775e275db2b0
--- /dev/null
+++ b/sys-fs/shake/shake-0.999.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit cmake-utils eutils
+
+DESCRIPTION="defragmenter that runs in userspace while the system is used"
+HOMEPAGE="http://vleu.net/shake/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+RDEPEND="sys-apps/attr"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+
+S=${WORKDIR}/${PN}-fs-${PV}
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix_stat_include.patch
+ "${FILESDIR}"/${P}-uclibc.patch
+ )
diff --git a/sys-fs/shake/shake-1.0.ebuild b/sys-fs/shake/shake-1.0.ebuild
new file mode 100644
index 000000000000..512d8917b8e2
--- /dev/null
+++ b/sys-fs/shake/shake-1.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit cmake-utils
+
+DESCRIPTION="defragmenter that runs in userspace while the system is used"
+HOMEPAGE="http://vleu.net/shake/"
+SRC_URI="https://github.com/unbrice/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+RDEPEND="sys-apps/attr"
+DEPEND="${RDEPEND}
+ sys-apps/help2man"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.999-uclibc.patch
+ )