parent
3e71d5722b
commit
901dfa8d93
@ -0,0 +1,283 @@
|
||||
Author: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Tue, 19 May 2015 02:38:40 +0100
|
||||
Description: Delay creation of symlinks to prevent arbitrary file writes (CVE-2015-1038)
|
||||
Bug: http://sourceforge.net/p/p7zip/bugs/147/
|
||||
Bug-Debian: https://bugs.debian.org/774660
|
||||
|
||||
Alexander Cherepanov discovered that 7zip is susceptible to a
|
||||
directory traversal vulnerability. While extracting an archive, it
|
||||
will extract symlinks and then follow them if they are referenced in
|
||||
further entries. This can be exploited by a rogue archive to write
|
||||
files outside the current directory.
|
||||
|
||||
We have to create placeholder files (which we already do) and delay
|
||||
creating symlinks until the end of extraction.
|
||||
|
||||
Due to the possibility of anti-items (deletions) in the archive, it is
|
||||
possible for placeholders to be deleted and replaced before we create
|
||||
the symlinks. It's not clear that this can be used for mischief, but
|
||||
GNU tar guards against similar problems by checking that the placeholder
|
||||
still exists and is the same inode. XXX It also checks 'birth time' but
|
||||
this isn't portable. We can probably get away with comparing ctime
|
||||
since we don't support hard links.
|
||||
|
||||
--- a/CPP/7zip/UI/Agent/Agent.cpp
|
||||
+++ b/CPP/7zip/UI/Agent/Agent.cpp
|
||||
@@ -1215,7 +1215,7 @@ STDMETHODIMP CAgentFolder::Extract(const
|
||||
HRESULT result = _agentSpec->GetArchive()->Extract(&realIndices.Front(),
|
||||
realIndices.Size(), testMode, extractCallback);
|
||||
if (result == S_OK)
|
||||
- result = extractCallbackSpec->SetDirsTimes();
|
||||
+ result = extractCallbackSpec->SetFinalAttribs();
|
||||
return result;
|
||||
COM_TRY_END
|
||||
}
|
||||
--- a/CPP/7zip/UI/Client7z/Client7z.cpp
|
||||
+++ b/CPP/7zip/UI/Client7z/Client7z.cpp
|
||||
@@ -222,8 +222,11 @@ private:
|
||||
COutFileStream *_outFileStreamSpec;
|
||||
CMyComPtr<ISequentialOutStream> _outFileStream;
|
||||
|
||||
+ CObjectVector<NWindows::NFile::NDir::CDelayedSymLink> _delayedSymLinks;
|
||||
+
|
||||
public:
|
||||
void Init(IInArchive *archiveHandler, const FString &directoryPath);
|
||||
+ HRESULT SetFinalAttribs();
|
||||
|
||||
UInt64 NumErrors;
|
||||
bool PasswordIsDefined;
|
||||
@@ -441,11 +444,23 @@ STDMETHODIMP CArchiveExtractCallback::Se
|
||||
}
|
||||
_outFileStream.Release();
|
||||
if (_extractMode && _processedFileInfo.AttribDefined)
|
||||
- SetFileAttrib(_diskFilePath, _processedFileInfo.Attrib);
|
||||
+ SetFileAttrib(_diskFilePath, _processedFileInfo.Attrib, &_delayedSymLinks);
|
||||
PrintNewLine();
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
+HRESULT CArchiveExtractCallback::SetFinalAttribs()
|
||||
+{
|
||||
+ HRESULT result = S_OK;
|
||||
+
|
||||
+ for (int i = 0; i != _delayedSymLinks.Size(); ++i)
|
||||
+ if (!_delayedSymLinks[i].Create())
|
||||
+ result = E_FAIL;
|
||||
+
|
||||
+ _delayedSymLinks.Clear();
|
||||
+
|
||||
+ return result;
|
||||
+}
|
||||
|
||||
STDMETHODIMP CArchiveExtractCallback::CryptoGetTextPassword(BSTR *password)
|
||||
{
|
||||
@@ -912,6 +927,8 @@ int MY_CDECL main(int numArgs, const cha
|
||||
// extractCallbackSpec->PasswordIsDefined = true;
|
||||
// extractCallbackSpec->Password = L"1";
|
||||
HRESULT result = archive->Extract(NULL, (UInt32)(Int32)(-1), false, extractCallback);
|
||||
+ if (result == S_OK)
|
||||
+ result = extractCallbackSpec->SetFinalAttribs();
|
||||
if (result != S_OK)
|
||||
{
|
||||
PrintError("Extract Error");
|
||||
--- a/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp
|
||||
+++ b/CPP/7zip/UI/Common/ArchiveExtractCallback.cpp
|
||||
@@ -1083,7 +1083,7 @@ STDMETHODIMP CArchiveExtractCallback::Se
|
||||
NumFiles++;
|
||||
|
||||
if (_extractMode && _fi.AttribDefined)
|
||||
- SetFileAttrib(_diskFilePath, _fi.Attrib);
|
||||
+ SetFileAttrib(_diskFilePath, _fi.Attrib, &_delayedSymLinks);
|
||||
RINOK(_extractCallback2->SetOperationResult(operationResult, _encrypted));
|
||||
return S_OK;
|
||||
COM_TRY_END
|
||||
@@ -1149,8 +1149,9 @@ static int GetNumSlashes(const FChar *s)
|
||||
}
|
||||
}
|
||||
|
||||
-HRESULT CArchiveExtractCallback::SetDirsTimes()
|
||||
+HRESULT CArchiveExtractCallback::SetFinalAttribs()
|
||||
{
|
||||
+ HRESULT result = S_OK;
|
||||
CRecordVector<CExtrRefSortPair> pairs;
|
||||
pairs.ClearAndSetSize(_extractedFolderPaths.Size());
|
||||
unsigned i;
|
||||
@@ -1187,5 +1188,12 @@ HRESULT CArchiveExtractCallback::SetDirs
|
||||
(WriteATime && ATimeDefined) ? &ATime : NULL,
|
||||
(WriteMTime && MTimeDefined) ? &MTime : (_arc->MTimeDefined ? &_arc->MTime : NULL));
|
||||
}
|
||||
- return S_OK;
|
||||
+
|
||||
+ for (int i = 0; i != _delayedSymLinks.Size(); ++i)
|
||||
+ if (!_delayedSymLinks[i].Create())
|
||||
+ result = E_FAIL;
|
||||
+
|
||||
+ _delayedSymLinks.Clear();
|
||||
+
|
||||
+ return result;
|
||||
}
|
||||
--- a/CPP/7zip/UI/Common/ArchiveExtractCallback.h
|
||||
+++ b/CPP/7zip/UI/Common/ArchiveExtractCallback.h
|
||||
@@ -6,6 +6,8 @@
|
||||
#include "../../../Common/MyCom.h"
|
||||
#include "../../../Common/Wildcard.h"
|
||||
|
||||
+#include "../../../Windows/FileDir.h"
|
||||
+
|
||||
#include "../../IPassword.h"
|
||||
|
||||
#include "../../Common/FileStreams.h"
|
||||
@@ -213,6 +215,8 @@ class CArchiveExtractCallback:
|
||||
bool _saclEnabled;
|
||||
#endif
|
||||
|
||||
+ CObjectVector<NWindows::NFile::NDir::CDelayedSymLink> _delayedSymLinks;
|
||||
+
|
||||
void CreateComplexDirectory(const UStringVector &dirPathParts, FString &fullPath);
|
||||
HRESULT GetTime(int index, PROPID propID, FILETIME &filetime, bool &filetimeIsDefined);
|
||||
HRESULT GetUnpackSize();
|
||||
@@ -293,7 +297,7 @@ public:
|
||||
_baseParentFolder = indexInArc;
|
||||
}
|
||||
|
||||
- HRESULT SetDirsTimes();
|
||||
+ HRESULT SetFinalAttribs();
|
||||
};
|
||||
|
||||
#endif
|
||||
--- a/CPP/7zip/UI/Common/Extract.cpp
|
||||
+++ b/CPP/7zip/UI/Common/Extract.cpp
|
||||
@@ -170,7 +170,7 @@ static HRESULT DecompressArchive(
|
||||
else
|
||||
result = archive->Extract(&realIndices.Front(), realIndices.Size(), testMode, ecs);
|
||||
if (result == S_OK && !options.StdInMode)
|
||||
- result = ecs->SetDirsTimes();
|
||||
+ result = ecs->SetFinalAttribs();
|
||||
return callback->ExtractResult(result);
|
||||
}
|
||||
|
||||
--- a/CPP/Windows/FileDir.cpp
|
||||
+++ b/CPP/Windows/FileDir.cpp
|
||||
@@ -343,7 +343,8 @@ static int convert_to_symlink(const char
|
||||
return -1;
|
||||
}
|
||||
|
||||
-bool SetFileAttrib(CFSTR fileName, DWORD fileAttributes)
|
||||
+bool SetFileAttrib(CFSTR fileName, DWORD fileAttributes,
|
||||
+ CObjectVector<CDelayedSymLink> *delayedSymLinks)
|
||||
{
|
||||
if (!fileName) {
|
||||
SetLastError(ERROR_PATH_NOT_FOUND);
|
||||
@@ -375,7 +376,9 @@ bool SetFileAttrib(CFSTR fileName, DWORD
|
||||
stat_info.st_mode = fileAttributes >> 16;
|
||||
#ifdef ENV_HAVE_LSTAT
|
||||
if (S_ISLNK(stat_info.st_mode)) {
|
||||
- if ( convert_to_symlink(name) != 0) {
|
||||
+ if (delayedSymLinks)
|
||||
+ delayedSymLinks->Add(CDelayedSymLink(name));
|
||||
+ else if ( convert_to_symlink(name) != 0) {
|
||||
TRACEN((printf("SetFileAttrib(%s,%d) : false-3\n",(const char *)name,fileAttributes)))
|
||||
return false;
|
||||
}
|
||||
@@ -885,6 +888,43 @@ bool CTempDir::Remove()
|
||||
return !_mustBeDeleted;
|
||||
}
|
||||
|
||||
+#ifdef ENV_UNIX
|
||||
+
|
||||
+CDelayedSymLink::CDelayedSymLink(const char * source)
|
||||
+ : _source(source)
|
||||
+{
|
||||
+ struct stat st;
|
||||
+
|
||||
+ if (lstat(_source, &st) == 0) {
|
||||
+ _dev = st.st_dev;
|
||||
+ _ino = st.st_ino;
|
||||
+ } else {
|
||||
+ _dev = 0;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+bool CDelayedSymLink::Create()
|
||||
+{
|
||||
+ struct stat st;
|
||||
+
|
||||
+ if (_dev == 0) {
|
||||
+ errno = EPERM;
|
||||
+ return false;
|
||||
+ }
|
||||
+ if (lstat(_source, &st) != 0)
|
||||
+ return false;
|
||||
+ if (_dev != st.st_dev || _ino != st.st_ino) {
|
||||
+ // Placeholder file has been overwritten or moved by another
|
||||
+ // symbolic link creation
|
||||
+ errno = EPERM;
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ return convert_to_symlink(_source) == 0;
|
||||
+}
|
||||
+
|
||||
+#endif // ENV_UNIX
|
||||
+
|
||||
}}}
|
||||
|
||||
|
||||
--- a/CPP/Windows/FileDir.h
|
||||
+++ b/CPP/Windows/FileDir.h
|
||||
@@ -4,6 +4,7 @@
|
||||
#define __WINDOWS_FILE_DIR_H
|
||||
|
||||
#include "../Common/MyString.h"
|
||||
+#include "../Common/MyVector.h"
|
||||
|
||||
#include "FileIO.h"
|
||||
|
||||
@@ -11,11 +12,14 @@ namespace NWindows {
|
||||
namespace NFile {
|
||||
namespace NDir {
|
||||
|
||||
+class CDelayedSymLink;
|
||||
+
|
||||
bool GetWindowsDir(FString &path);
|
||||
bool GetSystemDir(FString &path);
|
||||
|
||||
bool SetDirTime(CFSTR path, const FILETIME *cTime, const FILETIME *aTime, const FILETIME *mTime);
|
||||
-bool SetFileAttrib(CFSTR path, DWORD attrib);
|
||||
+bool SetFileAttrib(CFSTR path, DWORD attrib,
|
||||
+ CObjectVector<CDelayedSymLink> *delayedSymLinks = 0);
|
||||
bool MyMoveFile(CFSTR existFileName, CFSTR newFileName);
|
||||
|
||||
#ifndef UNDER_CE
|
||||
@@ -69,6 +73,31 @@ public:
|
||||
bool Remove();
|
||||
};
|
||||
|
||||
+// Symbolic links must be created last so that they can't be used to
|
||||
+// create or overwrite files above the extraction directory.
|
||||
+class CDelayedSymLink
|
||||
+{
|
||||
+#ifdef ENV_UNIX
|
||||
+ // Where the symlink should be created. The target is specified in
|
||||
+ // the placeholder file.
|
||||
+ AString _source;
|
||||
+
|
||||
+ // Device and inode of the placeholder file. Before creating the
|
||||
+ // symlink, we must check that these haven't been changed by creation
|
||||
+ // of another symlink.
|
||||
+ dev_t _dev;
|
||||
+ ino_t _ino;
|
||||
+
|
||||
+public:
|
||||
+ explicit CDelayedSymLink(const char * source);
|
||||
+ bool Create();
|
||||
+#else // !ENV_UNIX
|
||||
+public:
|
||||
+ CDelayedSymLink(const char * source) {}
|
||||
+ bool Create() { return true; }
|
||||
+#endif // ENV_UNIX
|
||||
+};
|
||||
+
|
||||
#if !defined(UNDER_CE)
|
||||
class CCurrentDirRestorer
|
||||
{
|
@ -1 +1,2 @@
|
||||
DIST duply_1.9.1.tgz 35883 SHA256 e5f11c5a31a55de24cc5101a6429ea3eac14c0d3f0d6dec344b687089845efc5 SHA512 8f1e1cfc505d4fcaa0701c3953b86c70bcc02aa89b4f783d5aae8999eb6d33f9f9994f406347c5345350047f8a6b1a4893ef8fc03399ff5d433f2ec3bf87d93f WHIRLPOOL 9abddc6e61b796671b24083c2b07c39f5f8fc99bb3dbf2e0e522fc650652a1bf525c09dde6b842fbb3435fdd59678180fb5ebb19827bb97481969cc93aa80dfd
|
||||
DIST duply_1.9.2.tgz 36222 SHA256 2bfc0964ebc0bae5752e0b4a12eb8fb6f78a27739f32c9acb4ac81947506c5ab SHA512 9ef5e22f43a6854e413ed1c2b88b10d0ae75cff7b2bcd927d20a588234555e9b7eff25d094f688f9d4f8510eba6bc20f7635c0de9ab9b402966075595922333e WHIRLPOOL 6a3e79c87e0b28386f0ed6fd8eb7973659477ad278e80e292a3e6cea944fd512baffc9a455e148faeadb687a46a8e274ce86668c29f30244b5b63f1f850a9c00
|
||||
|
@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-backup/duply/duply-1.9.2.ebuild,v 1.1 2015/06/22 07:22:52 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit readme.gentoo
|
||||
|
||||
DESCRIPTION="A shell frontend for duplicity"
|
||||
HOMEPAGE="http://duply.net"
|
||||
SRC_URI="mirror://sourceforge/ftplicity/${PN}_${PV}.tgz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="app-text/txt2man"
|
||||
RDEPEND="app-backup/duplicity"
|
||||
|
||||
S=${WORKDIR}/${PN}_${PV}
|
||||
|
||||
src_install() {
|
||||
dobin ${PN}
|
||||
./${PN} txt2man > ${PN}.1 || die
|
||||
doman ${PN}.1
|
||||
readme.gentoo_create_doc
|
||||
}
|
@ -1,6 +1 @@
|
||||
DIST task-2.1.2.tar.gz 4639841 SHA256 cf5171b54b6d2d2dcd9c559f437cf8a2cb3836c7631edf96a16efbf8b4383e36 SHA512 b9c802503b5580f6c1b965cdee1e39386e818027adba69699071d28dca12c27b37963bb9586b17a764c3430d3405a55febae176b6ef087798660020f2f683b86 WHIRLPOOL cba5aeb279021cb98b9c23c417182f7f2ebd9a05468bd283d10703f2b177c36f9e7c71c2466d4ebaadfa4b9524bd86c202e93be45fa172037c0d1b5e0d51c20a
|
||||
DIST task-2.2.0.tar.gz 1190905 SHA256 39e25dd285e6bc8474337a5868cb2ec55675978fa1f08c802e6da58b4181ee14 SHA512 16ff1ccd037d62fc99ea0a31647714d3ccf8a90948b67d845d55e08e4bf49bb6a7f69f7464f485093abeff0672f17dc5f6d4efd96d2e447316975d185082f862 WHIRLPOOL c790c59a8867249ede33d51a85d33987a51f1031db225267fdac4e50e6f8ac3f94abc8ef80577648a783aa85d4b1297e7e8be55103750e46bb521d1282c8555e
|
||||
DIST task-2.3.0.tar.gz 1238592 SHA256 2b9a289109e691e305b84631622299853134cf195d4c9af962759b640176ac73 SHA512 9a17ec79735800edb6b5b4c6eede6ef62e8374a80a4f566b967e8ee45883e0d3533d4c3643a858f12adf6b9021fb8c9d54cae7620ca4749cf4237f0235e1d483 WHIRLPOOL a160a0df5d6ab27ee6fa608964ea38c950f786519737578406248812b8e13f5dcf03045ecb7d9437b824b1aa76d2124396d381397729270f17796d00ef0aee18
|
||||
DIST task-2.4.0.tar.gz 841000 SHA256 6fa595f5b0fdf6ee8031da39e8d009771bda135f265d5f7b59df8046ffd9119e SHA512 d5542f0cc832b488ae29893b8cdca0ae4a8789a21681e1952474019830c9959a47d6f74cbd6660cc308d290782e0eec64fde65d6b767a5343ce6bb9146724dad WHIRLPOOL 9660df08e4b4bb64b74dfe55d6f8bc39d38f60d3b2459a74f148b20d47bb44c08b2bae4b45c5efa7c3bdf8857627184c77789aa6dfb07b8efa8d5472b51943d1
|
||||
DIST task-2.4.1.tar.gz 860973 SHA256 d90e48c64639957b02f6e9a33cddd5411169003ca3b1f9351d0fcf3c3597c2e2 SHA512 942e6ccc28094dd542a68f446255bef7e447ba75475a0ecc49f0ad63e37732c52b6598d60d46b76cfa48a6dc0ce9fc4bcb10452ec609a70f4b29ea8726d08c0a WHIRLPOOL 4ad68b9e137b786b9ea534bb78eb371422527947035efa6268a36261dc4486690f7815c77917ba9181c8d5ab25d2580ee03c4e205669d324c830bc2ef2fcd11d
|
||||
DIST task-2.4.4.tar.gz 2352265 SHA256 7ff406414e0be480f91981831507ac255297aab33d8246f98dbfd2b1b2df8e3b SHA512 23565dc21bb5a05af5fe44235756ac5ecbd3b7cd94b2edc2ed0b0bd4efc5a12739cc8e3474174878595188ba726428b865dee3a79f0ad2550d5a0bc25415b103 WHIRLPOOL f071926d77a228289e2fb6a9e5c53e9db9e2d278879bf6249b04b0e7f7afe5f4195f9ea3fb42ac4aac318d0f53eda378ac24c73321d99a83c0f22295ad1dcaf4
|
||||
|
@ -1,27 +0,0 @@
|
||||
--- task-1.9.4/CMakeLists.txt.orig
|
||||
+++ task-1.9.4/CMakeLists.txt
|
||||
@@ -30,14 +30,16 @@
|
||||
set (PACKAGE_VERSION "${VERSION}")
|
||||
set (PACKAGE_STRING "${PACKAGE} ${VERSION}")
|
||||
|
||||
-message ("-- Looking for Lua51")
|
||||
-find_package (Lua51)
|
||||
-if (LUA51_FOUND)
|
||||
- message ("-- Found Lua51: ${LUA_LIBRARIES}")
|
||||
- set (HAVE_LIBLUA true)
|
||||
- set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${LUA_INCLUDE_DIR})
|
||||
- set (TASK_LIBRARIES ${TASK_LIBRARIES} ${LUA_LIBRARIES})
|
||||
-endif (LUA51_FOUND)
|
||||
+if( ENABLE_LUA )
|
||||
+ message ("-- Looking for Lua51")
|
||||
+ find_package (Lua51)
|
||||
+ if (LUA51_FOUND)
|
||||
+ message ("-- Found Lua51: ${LUA_LIBRARIES}")
|
||||
+ set (HAVE_LIBLUA true)
|
||||
+ set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${LUA_INCLUDE_DIR})
|
||||
+ set (TASK_LIBRARIES ${TASK_LIBRARIES} ${LUA_LIBRARIES})
|
||||
+ endif (LUA51_FOUND)
|
||||
+endif (ENABLE_LUA )
|
||||
|
||||
message ("-- Looking for pthread")
|
||||
find_path (PTHREAD_INCLUDE_DIR pthread.h)
|
@ -1,30 +0,0 @@
|
||||
Install non-documentation files in the correct directory
|
||||
|
||||
--- task-2.0.0.beta4.orig/CMakeLists.txt
|
||||
+++ task-2.0.0.beta4/CMakeLists.txt
|
||||
@@ -9,6 +9,7 @@
|
||||
SET (TASK_MAN1DIR share/man/man1 CACHE STRING "Installation directory for man pages, section 1")
|
||||
SET (TASK_MAN5DIR share/man/man5 CACHE STRING "Installation directory for man pages, section 5")
|
||||
SET (TASK_DOCDIR share/doc/task CACHE STRING "Installation directory for doc files")
|
||||
+SET (TASK_RCDIR share/task CACHE STRING "Installation directory for rc files")
|
||||
SET (TASK_BINDIR bin CACHE STRING "Installation directory for the binary")
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
--- task-2.0.0.beta4.orig/doc/CMakeLists.txt
|
||||
+++ task-2.0.0.beta4/doc/CMakeLists.txt
|
||||
@@ -11,6 +11,6 @@
|
||||
FILES_MATCHING PATTERN "*.1")
|
||||
install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/man/ DESTINATION ${TASK_MAN5DIR}
|
||||
FILES_MATCHING PATTERN "*.5")
|
||||
-install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc DESTINATION ${TASK_DOCDIR})
|
||||
+install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc DESTINATION ${TASK_RCDIR})
|
||||
|
||||
install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/ref/task-ref.pdf DESTINATION ${TASK_DOCDIR})
|
||||
--- task-2.0.0.beta4.orig/i18n/CMakeLists.txt
|
||||
+++ task-2.0.0.beta4/i18n/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
-install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${TASK_DOCDIR}/i18n
|
||||
+install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${TASK_RCDIR}/i18n
|
||||
FILES_MATCHING REGEX "tips.*"
|
||||
PATTERN "CMakeFiles" EXCLUDE)
|
@ -1,34 +0,0 @@
|
||||
--- task-2.3.0/CMakeLists.txt
|
||||
+++ task-2.3.0/CMakeLists.txt
|
||||
@@ -9,6 +9,8 @@
|
||||
project (task)
|
||||
set (PROJECT_VERSION "2.3.0")
|
||||
|
||||
+OPTION(USE_GNUTLS "Build gnutls support." ON)
|
||||
+
|
||||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
set (LINUX true)
|
||||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
@@ -59,13 +61,15 @@
|
||||
set (PACKAGE_VERSION "${VERSION}")
|
||||
set (PACKAGE_STRING "${PACKAGE} ${VERSION}")
|
||||
|
||||
-message ("-- Looking for GnuTLS")
|
||||
-find_package (GnuTLS)
|
||||
-if (GNUTLS_FOUND)
|
||||
- set (HAVE_LIBGNUTLS true)
|
||||
- set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR})
|
||||
- set (TASK_LIBRARIES ${TASK_LIBRARIES} ${GNUTLS_LIBRARIES})
|
||||
-endif (GNUTLS_FOUND)
|
||||
+if (USE_GNUTLS)
|
||||
+ message ("-- Looking for GnuTLS")
|
||||
+ find_package (GnuTLS)
|
||||
+ if (GNUTLS_FOUND)
|
||||
+ set (HAVE_LIBGNUTLS true)
|
||||
+ set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR})
|
||||
+ set (TASK_LIBRARIES ${TASK_LIBRARIES} ${GNUTLS_LIBRARIES})
|
||||
+ endif (GNUTLS_FOUND)
|
||||
+endif (USE_GNUTLS)
|
||||
|
||||
#message ("-- Looking for pthread")
|
||||
#find_path (PTHREAD_INCLUDE_DIR pthread.h)
|
@ -1,26 +0,0 @@
|
||||
From 0e291e8b022b058f1db6112f5437b7a01e563a2e Mon Sep 17 00:00:00 2001
|
||||
From: Elias Probst <mail@eliasprobst.eu>
|
||||
Date: Thu, 23 Jan 2014 00:04:46 +0100
|
||||
Subject: [PATCH] Fixed the usage of TASK_RCDIR which was introduced by #1473.
|
||||
Until now, the content of doc/rc was still installed to TASK_DOCDIR instead
|
||||
of TASK_RCDIR.
|
||||
|
||||
---
|
||||
doc/CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
|
||||
index 99a1a2f..ce5d13f 100644
|
||||
--- a/doc/CMakeLists.txt
|
||||
+++ b/doc/CMakeLists.txt
|
||||
@@ -11,6 +11,6 @@ install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/man/ DESTINATION ${TASK_MAN1DIR
|
||||
FILES_MATCHING PATTERN "*.1")
|
||||
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/man/ DESTINATION ${TASK_MAN5DIR}
|
||||
FILES_MATCHING PATTERN "*.5")
|
||||
-install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc DESTINATION ${TASK_DOCDIR})
|
||||
+install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/rc/ DESTINATION ${TASK_RCDIR})
|
||||
|
||||
install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/ref/task-ref.pdf DESTINATION ${TASK_DOCDIR})
|
||||
--
|
||||
1.8.3.2
|
||||
|
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.1.2.ebuild,v 1.4 2014/11/28 17:16:35 radhermit Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="lua vim-syntax zsh-completion"
|
||||
|
||||
DEPEND="lua? ( dev-lang/lua )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
# Use the correct directory locations
|
||||
sed -i -e "s:/usr/local/share/doc/task/rc:/usr/share/task/rc:" \
|
||||
doc/man/taskrc.5.in doc/man/task-tutorial.5.in doc/man/task-color.5.in || die
|
||||
sed -i -e "s:/usr/local/bin:/usr/bin:" doc/man/task-faq.5.in scripts/add-ons/* || die
|
||||
|
||||
# Don't automatically install scripts
|
||||
sed -i -e '/scripts/d' CMakeLists.txt || die
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-2.0.0_beta4-rcdir.patch
|
||||
epatch "${FILESDIR}"/${PN}-1.9.4-lua-automagic.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
$(cmake-utils_use_enable lua LUA)
|
||||
-DTASK_DOCDIR=/usr/share/doc/${PF}
|
||||
)
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use lua ; then
|
||||
insinto /usr/share/${PN}/extensions
|
||||
doins scripts/extensions/*
|
||||
fi
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,56 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.2.0.ebuild,v 1.4 2014/11/28 17:16:35 radhermit Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
|
||||
IUSE="vim-syntax zsh-completion"
|
||||
|
||||
src_prepare() {
|
||||
# use the correct directory locations
|
||||
sed -i -e "s:/usr/local/share/doc/task/rc:${EPREFIX}/usr/share/task/rc:" \
|
||||
doc/man/taskrc.5.in doc/man/task-tutorial.5.in doc/man/task-color.5.in || die
|
||||
sed -i -e "s:/usr/local/bin:${EPREFIX}/usr/bin:" \
|
||||
doc/man/task-faq.5.in scripts/add-ons/* || die
|
||||
|
||||
# don't automatically install scripts
|
||||
sed -i -e '/scripts/d' CMakeLists.txt || die
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-2.0.0_beta4-rcdir.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
-DTASK_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,62 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.3.0-r1.ebuild,v 1.2 2015/06/11 15:08:04 ago Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm ~x86 ~x64-macos"
|
||||
IUSE="gnutls vim-syntax zsh-completion"
|
||||
|
||||
DEPEND="gnutls? ( net-libs/gnutls )
|
||||
sys-libs/readline
|
||||
elibc_glibc? ( sys-apps/util-linux )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
# use the correct directory locations
|
||||
sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" \
|
||||
scripts/add-ons/* || die
|
||||
|
||||
# don't automatically install scripts
|
||||
sed -i '/scripts/d' CMakeLists.txt || die
|
||||
|
||||
epatch "${FILESDIR}"/${P}-issue-1473-rcdir-fix.patch
|
||||
epatch "${FILESDIR}"/${P}-gnutls-automagic.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
$(cmake-utils_use_use gnutls GNUTLS)
|
||||
-DTASK_DOCDIR=share/doc/${PF}
|
||||
-DTASK_RCDIR=share/${PN}/rc
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.3.0.ebuild,v 1.2 2014/11/28 17:16:35 radhermit Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
|
||||
IUSE="vim-syntax zsh-completion"
|
||||
|
||||
DEPEND="net-libs/gnutls
|
||||
sys-libs/readline
|
||||
elibc_glibc? ( sys-apps/util-linux )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
# use the correct directory locations
|
||||
sed -i -e "s:/usr/local/bin:${EPREFIX}/usr/bin:" \
|
||||
scripts/add-ons/* || die
|
||||
|
||||
# don't automatically install scripts
|
||||
sed -i -e '/scripts/d' CMakeLists.txt || die
|
||||
|
||||
epatch "${FILESDIR}"/${P}-issue-1473-rcdir-fix.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
-DTASK_DOCDIR=share/doc/${PF}
|
||||
-DTASK_RCDIR=share/${PN}/rc
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.4.0.ebuild,v 1.1 2015/02/11 01:30:47 radhermit Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
|
||||
IUSE="gnutls vim-syntax zsh-completion"
|
||||
|
||||
DEPEND="sys-libs/readline
|
||||
gnutls? ( net-libs/gnutls )
|
||||
elibc_glibc? ( sys-apps/util-linux )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
# use the correct directory locations
|
||||
sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" \
|
||||
scripts/add-ons/* || die
|
||||
|
||||
# don't automatically install scripts
|
||||
sed -i '/scripts/d' CMakeLists.txt || die
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-2.3.0-gnutls-automagic.patch
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
$(cmake-utils_use_use gnutls GNUTLS)
|
||||
-DTASK_DOCDIR=share/doc/${PF}
|
||||
-DTASK_RCDIR=share/${PN}/rc
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,59 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/task/task-2.4.1.ebuild,v 1.1 2015/02/20 03:42:48 radhermit Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils cmake-utils bash-completion-r1
|
||||
|
||||
DESCRIPTION="Taskwarrior is a command-line todo list manager"
|
||||
HOMEPAGE="http://taskwarrior.org/"
|
||||
SRC_URI="http://taskwarrior.org/download/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
|
||||
IUSE="gnutls vim-syntax zsh-completion"
|
||||
|
||||
DEPEND="sys-libs/readline
|
||||
gnutls? ( net-libs/gnutls )
|
||||
elibc_glibc? ( sys-apps/util-linux )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
# use the correct directory locations
|
||||
sed -i "s:/usr/local/bin:${EPREFIX}/usr/bin:" \
|
||||
scripts/add-ons/* || die
|
||||
|
||||
# don't automatically install scripts
|
||||
sed -i '/scripts/d' CMakeLists.txt || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mycmakeargs=(
|
||||
$(cmake-utils_use_use gnutls GNUTLS)
|
||||
-DTASK_DOCDIR=share/doc/${PF}
|
||||
-DTASK_RCDIR=share/${PN}/rc
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
|
||||
newbashcomp scripts/bash/task.sh task
|
||||
|
||||
if use vim-syntax ; then
|
||||
rm scripts/vim/README
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r scripts/vim/*
|
||||
fi
|
||||
|
||||
if use zsh-completion ; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins scripts/zsh/*
|
||||
fi
|
||||
|
||||
exeinto /usr/share/${PN}/scripts
|
||||
doexe scripts/add-ons/*
|
||||
}
|
@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/ant-eclipse-ecj/ant-eclipse-ecj-3.7.1.ebuild,v 1.5 2012/03/12 15:14:12 ranger Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit java-pkg-2
|
||||
|
||||
DMF="R-${PV}-201109091335"
|
||||
S="${WORKDIR}"
|
||||
|
||||
DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
|
||||
HOMEPAGE="http://www.eclipse.org/"
|
||||
SRC_URI="http://download.eclipse.org/eclipse/downloads/drops/${DMF/.0}/ecjsrc-${PV}.jar"
|
||||
|
||||
LICENSE="EPL-1.0"
|
||||
KEYWORDS="amd64 ppc ppc64 x86 ~x86-fbsd"
|
||||
SLOT="3.7"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=virtual/jre-1.4
|
||||
~dev-java/eclipse-ecj-${PV}
|
||||
>=dev-java/ant-core-1.7"
|
||||
DEPEND="${RDEPEND}
|
||||
app-arch/unzip
|
||||
>=virtual/jdk-1.4"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
mkdir -p src/org/eclipse/jdt/{core,internal}
|
||||
cp org/eclipse/jdt/core/JDTCompilerAdapter.java \
|
||||
src/org/eclipse/jdt/core || die
|
||||
cp -r org/eclipse/jdt/internal/antadapter \
|
||||
src/org/eclipse/jdt/internal || die
|
||||
rm -fr about* org
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd src
|
||||
java-pkg_filter-compiler jikes
|
||||
ejavac -classpath "$(java-pkg_getjars ant-core,eclipse-ecj-${SLOT})" \
|
||||
$(find org/ -name '*.java') || die "ejavac failed!"
|
||||
find org/ -name '*.class' -o -name '*.properties' | \
|
||||
xargs jar cf "${S}/${PN}.jar" || die "jar failed!"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_dojar ${PN}.jar
|
||||
insinto /usr/share/java-config-2/compiler
|
||||
doins "${FILESDIR}/ecj-${SLOT}"
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
DIST ACE+TAO+CIAO-5.7.2.tar.bz2 49824451 SHA256 5290e378c9417892e7e57eef06e74affeb6a93ba3e7c67e24e02e72c282ea37a SHA512 798707aaa04b253f4b1241cd3263a87bdf7188437f858aac910a6fbf54bcf27c41f827fe81cea68b813ac068bd7a04f63e7f4eb948432d9240c4979fdf7f0ce1 WHIRLPOOL 23214425fd1d2a13622b1f21ec16fde84eb76a22305a6393642cdb4ea3d6d58481b59323a64ac91bed7ff672d5b5e8b6fe389ed9620ce898a00bf6332370d38e
|
||||
DIST ACE+TAO-5.7.2.tar.bz2 26111373 SHA256 95d9bfe506bfe55e489863413d83f214d2f6948a836449ed4dce6cf8c7d05d1d SHA512 9c25bc3773dd92d943bf67595470a485be1d7ebe893ddf20ec55a77d66080cf755e0c5cdc77a8f53d49d1f2ae4ec03cdbc7ac0dc68e179467b8ce7ad3abb5387 WHIRLPOOL 02b575fc831e988164be3667f1c8b34ef7bd6c5fe131884d4443058a70ca68f975391e5b7efc56235e4d4b598879941fd6737a7a1d0448b837a512ee7269630e
|
||||
DIST ACE-5.5+TAO-1.5.tar.bz2 19518497 SHA256 48bac6620ceda1801cdaa9751a6b0b01be960fd34607897fb823adfe5114797d SHA512 aef4d6c5eb7db3d4cbe844e2a8960b3f7ed062d968b38ebfe12b2a0b46f87c320939967497c5d65c0a01b6b813a8c9b790c12f9eb6cf3448d26c90f5bf0d2cd0 WHIRLPOOL d8c95d1558d0b5aa74397dffe899cd58a3294e8b3f28e1c644d8a32a26ee88cd7571bc2d6b84c1c2c7ef9607d2b9fc395438f28d6bab6642ea4d1ea830e5addf
|
||||
DIST ACE-5.5.tar.bz2 7595626 SHA256 174f665d96edd8af2b38123e0c94039f8f429ecee99d9cb761afde1a082f5ddd SHA512 185b7ce00e8299f52930d37e9ee1eebb010f0009bbddb979e1ee45656878da534ca03d513a48558c7ce8bfd2186f87fffc69e7f18a679460579c0a50317dd596 WHIRLPOOL 40663a69639b773f2b2ffb517f29f782426c7397c78823365659a1d14dc7734942c973f57c0aa8f1d1aee8f4a4a679306b80146dfa849c11b6eec4826f2d636e
|
||||
DIST ACE-5.7.2.tar.bz2 9724175 SHA256 e358281a93cbc932351030675fb7956875f996e0dc42cf1f499a2d5bd018e0ad SHA512 7f5d77ea9ab1f03ad615cf6b01cb75b0484c5e828790609b8492463153a34c62d974000c0f3952dfdab143cad3c0aa6e2ddc7ea089989b6e9b9797bc6430d38b WHIRLPOOL e57db857a3ca1411fe3bcf166b7aee059d8e07e752cdd919e9ca7a1766bea7562027752326a24937719da432323569f302360849d3976bd44f05f0bfb1ce0946
|
||||
|
@ -1,69 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/ace/ace-5.5-r1.ebuild,v 1.13 2013/02/24 13:25:23 ulm Exp $
|
||||
|
||||
inherit eutils multilib toolchain-funcs
|
||||
|
||||
S="${WORKDIR}/ACE_wrappers"
|
||||
DESCRIPTION="The Adaptive Communications Environment"
|
||||
SRC_URI="!tao? ( http://deuce.doc.wustl.edu/old_distribution/ACE-${PV}.tar.bz2 )
|
||||
tao? ( http://deuce.doc.wustl.edu/old_distribution/ACE-${PV}+TAO-1.5.tar.bz2 )"
|
||||
|
||||
HOMEPAGE="http://www.cs.wustl.edu/~schmidt/ACE.html"
|
||||
|
||||
LICENSE="ACE BSD BSD-4 BSD-2 tao? ( sun-iiop RSA )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc x86"
|
||||
IUSE="X ipv6 tao"
|
||||
|
||||
DEPEND="dev-libs/openssl"
|
||||
|
||||
RDEPEND="${DEPEND}
|
||||
X? ( x11-libs/libXt x11-libs/libXaw )"
|
||||
|
||||
DEPEND="${DEPEND}
|
||||
X? ( x11-proto/xproto )"
|
||||
|
||||
src_compile() {
|
||||
export ACE_ROOT="${S}"
|
||||
mkdir build
|
||||
cd build
|
||||
|
||||
export ace_cv_new_throws_bad_alloc_exception="yes"
|
||||
|
||||
ECONF_SOURCE=${S}
|
||||
econf --enable-lib-all $(use_with X) $(use_enable ipv6) $(use_with tao) || \
|
||||
die "econf died"
|
||||
# --with-qos needs ACE_HAS_RAPI
|
||||
emake static_libs=1 || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${S}"/build
|
||||
make ACE_ROOT="${S}" check || die "self test failed"
|
||||
#einfo "src_test currently stalls after Process_Mutex_Test"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd build
|
||||
make ACE_ROOT="${S}" DESTDIR="${D}" install || die "failed to install"
|
||||
sed -i -e "^#define PACKAGE_.*//g" /usr/include/ace/config.h
|
||||
# punt gperf stuff
|
||||
rm -rf "${D}"/usr/bin/gperf "${D}"/usr/share
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# This is required, as anything trying to compile against ACE will have
|
||||
# problems with conflicting OS.h files if this is not done.
|
||||
|
||||
local CC_MACHINE=`gcc -dumpmachine`
|
||||
local CC_VERSION=`gcc -dumpversion`
|
||||
if [ -d "/usr/$(get_libdir)/gcc-lib/${CC_MACHINE}/${CC_VERSION}/include/ace" ]; then
|
||||
ewarn "moving /usr/$(get_libdir)/gcc-lib/${CC_MACHINE}/$(gcc-fullversion)/include/ace to"
|
||||
ewarn "ace.old"
|
||||
ewarn "This is required, as anything trying to compile against ACE will"
|
||||
ewarn "have problems with conflicting OS.h files if this is not done."
|
||||
mv "/usr/$(get_libdir)/gcc-lib/${CC_MACHINE}/${CC_VERSION}/include/ace" \
|
||||
"/usr/$(get_libdir)/gcc-lib/${CC_MACHINE}/${CC_VERSION}/include/ace.old"
|
||||
fi
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST cyrus-sasl-2.1.23-ntlm_impl-spnego.patch.gz 7462 SHA256 9514a7436b11184cfd7e8a9ccd3590ce9f89cf2dc272ffbbdeeab16f9ae4fe6f SHA512 a0a00d78019a5bce1456aebb7a8f9c740f9c0f8340916e977249f1b766f503e8e33ab81cbc6e0cdafe4a8c806e5631395431107ff578f75cb89fc9cca1a57fca WHIRLPOOL aac154414f6ae4aa7db9e4eed8dc698c16a0aefdb2b7fe3aa34be5d24aa1b07d04f8f6aa0300f8365911d10e5552b6b978757f951a75af958745b8a5f547ea9f
|
||||
DIST cyrus-sasl-2.1.23.tar.gz 1613642 SHA256 20efcc4040cbab6e89a636a07dcf5720ee07b5c62359a4e7bf2500ef6020b136 SHA512 bf72db55fefe9eccfe4a12caf1160efc80aba98f8acc2743af360fda96659a3ee1fc3a5af6104b3dfc8fc4571f4e98526b9719a6cdf0948980cf76a9cb1a2b0e WHIRLPOOL 36e0b85228105186160ac8f8751137a067bca0cf6e219dda527808cb04ae597273c97b9d8cd3c1e3b900787a70ad67e5395127ab5107ef0e8ac0100b04612673
|
||||
DIST cyrus-sasl-2.1.26.tar.gz 5220231 SHA256 8fbc5136512b59bb793657f36fadda6359cae3b08f01fd16b3d406f1345b7bc3 SHA512 78819cb9bb38bea4537d6770d309deeeef09ff44a67526177609d3e1257ff4334d2b5e5131d5a1e4dea7430d8db1918ea9d171f0dee38b5e8337f4b72ed068f0 WHIRLPOOL bcba17705d5d7ef9a03802d6a0c3a887bba0473605a3a48d2672aeac187193f2488f28ab01bdf659d7a68b94b4c74e36428ca4b5be840fbed2968f1592534b33
|
||||
|
@ -1,252 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/cyrus-sasl/cyrus-sasl-2.1.23-r7.ebuild,v 1.16 2015/03/21 21:07:10 jlec Exp $
|
||||
|
||||
EAPI=2
|
||||
|
||||
inherit eutils flag-o-matic multilib autotools pam java-pkg-opt-2 db-use
|
||||
|
||||
ntlm_patch="${P}-ntlm_impl-spnego.patch.gz"
|
||||
SASLAUTHD_CONF_VER="2.1.21"
|
||||
|
||||
DESCRIPTION="The Cyrus SASL (Simple Authentication and Security Layer)"
|
||||
HOMEPAGE="http://asg.web.cmu.edu/sasl/"
|
||||
SRC_URI="ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/${P}.tar.gz
|
||||
ntlm_unsupported_patch? ( mirror://gentoo/${ntlm_patch} )"
|
||||
|
||||
LICENSE="BSD-with-attribution"
|
||||
SLOT="2"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="authdaemond berkdb crypt gdbm kerberos openldap mysql ntlm_unsupported_patch pam postgres sample srp ssl urandom"
|
||||
|
||||
DEPEND="authdaemond? ( || ( >=net-mail/courier-imap-3.0.7 >=mail-mta/courier-0.46 ) )
|
||||
berkdb? ( >=sys-libs/db-3.2 )
|
||||
gdbm? ( >=sys-libs/gdbm-1.8.0 )
|
||||
kerberos? ( virtual/krb5 )
|
||||
openldap? ( >=net-nds/openldap-2.0.25 )
|
||||
mysql? ( virtual/mysql )
|
||||
ntlm_unsupported_patch? ( >=net-fs/samba-3.0.9 )
|
||||
pam? ( virtual/pam )
|
||||
postgres? ( dev-db/postgresql )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6d )
|
||||
java? ( >=virtual/jdk-1.4 )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
pkg_setup() {
|
||||
if use gdbm && use berkdb ; then
|
||||
echo
|
||||
elog "You have both 'gdbm' and 'berkdb' USE flags enabled."
|
||||
elog "gdbm will be selected."
|
||||
echo
|
||||
fi
|
||||
java-pkg-opt-2_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Fix default port name for rimap auth mechanism.
|
||||
sed -e '/define DEFAULT_REMOTE_SERVICE/s:imap:imap2:' \
|
||||
-i saslauthd/auth_rimap.c || die "sed failed"
|
||||
|
||||
# UNSUPPORTED ntlm patch #81342
|
||||
use ntlm_unsupported_patch && epatch "${DISTDIR}/${ntlm_patch}"
|
||||
epatch "${FILESDIR}"/${PN}-2.1.17-pgsql-include.patch
|
||||
use crypt && epatch "${FILESDIR}"/${PN}-2.1.19-checkpw.c.patch #45181
|
||||
epatch "${FILESDIR}"/${PN}-2.1.22-as-needed.patch
|
||||
epatch "${FILESDIR}/${PN}-2.1.21-keytab.patch"
|
||||
epatch "${FILESDIR}"/${PN}-2.1.22-crypt.patch #152544
|
||||
epatch "${FILESDIR}"/${PN}-2.1.22-qa.patch
|
||||
epatch "${FILESDIR}/${PN}-2.1.22-gcc44.patch" #248738
|
||||
epatch "${FILESDIR}"/${P}-authd-fix.patch
|
||||
epatch "${FILESDIR}"/${P}+db-5.0.patch
|
||||
epatch "${FILESDIR}/${PN}-0001_versioned_symbols.patch"
|
||||
epatch "${FILESDIR}/${PN}-0002_testsuite.patch"
|
||||
epatch "${FILESDIR}/${PN}-0006_library_mutexes.patch"
|
||||
epatch "${FILESDIR}/${PN}-0008_one_time_sasl_set_alloc.patch"
|
||||
epatch "${FILESDIR}/${PN}-0010_maintainer_mode.patch"
|
||||
epatch "${FILESDIR}/${PN}-0011_saslauthd_ac_prog_libtool.patch"
|
||||
epatch "${FILESDIR}/${PN}-0012_xopen_crypt_prototype.patch"
|
||||
epatch "${FILESDIR}/${PN}-0014_avoid_pic_overwrite.patch"
|
||||
epatch "${FILESDIR}/${PN}-0016_pid_file_lock_creation_mask.patch"
|
||||
epatch "${FILESDIR}/${PN}-0026_drop_krb5support_dependency.patch"
|
||||
epatch "${FILESDIR}"/${P}-rimap-loop.patch #381427
|
||||
epatch "${FILESDIR}"/${P}-gss_c_nt_hostbased_service.patch #389349
|
||||
epatch "${FILESDIR}"/${P}-CVE-2013-4122.patch
|
||||
|
||||
sed -i -e '/for dbname in/s:db-4.* db:'$(db_libname)':' \
|
||||
"${S}"/cmulocal/berkdb.m4
|
||||
|
||||
# Upstream doesn't even honor their own configure options... grumble
|
||||
sed -i '/^sasldir =/s:=.*:= $(plugindir):' \
|
||||
"${S}"/plugins/Makefile.{am,in} || die "sed failed"
|
||||
|
||||
# make sure to use common plugin ldflags
|
||||
sed -i '/_la_LDFLAGS = /s:=:= $(AM_LDFLAGS) :' plugins/Makefile.am || die
|
||||
|
||||
# Recreate configure.
|
||||
rm -f "${S}/config/libtool.m4" || die "rm libtool.m4 failed"
|
||||
AT_M4DIR="${S}/cmulocal ${S}/config" eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Fix QA issues.
|
||||
append-flags -fno-strict-aliasing
|
||||
append-cppflags -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D_BSD_SOURCE -DLDAP_DEPRECATED
|
||||
|
||||
# Java support.
|
||||
use java && export JAVAC="${JAVAC} ${JAVACFLAGS}"
|
||||
|
||||
local myconf
|
||||
|
||||
# Add authdaemond support (bug #56523).
|
||||
if use authdaemond ; then
|
||||
myconf="${myconf} --with-authdaemond=/var/lib/courier/authdaemon/socket"
|
||||
fi
|
||||
|
||||
# Fix for bug #59634.
|
||||
if ! use ssl ; then
|
||||
myconf="${myconf} --without-des"
|
||||
fi
|
||||
|
||||
if use mysql || use postgres ; then
|
||||
myconf="${myconf} --enable-sql"
|
||||
else
|
||||
myconf="${myconf} --disable-sql"
|
||||
fi
|
||||
|
||||
# Default to GDBM if both 'gdbm' and 'berkdb' are present.
|
||||
if use gdbm ; then
|
||||
einfo "Building with GNU DB as database backend for your SASLdb"
|
||||
myconf="${myconf} --with-dblib=gdbm"
|
||||
elif use berkdb ; then
|
||||
einfo "Building with BerkeleyDB as database backend for your SASLdb"
|
||||
myconf="${myconf} --with-dblib=berkeley --with-bdb-incdir=$(db_includedir)"
|
||||
else
|
||||
einfo "Building without SASLdb support"
|
||||
myconf="${myconf} --with-dblib=none"
|
||||
fi
|
||||
|
||||
# Use /dev/urandom instead of /dev/random (bug #46038).
|
||||
use urandom && myconf="${myconf} --with-devrandom=/dev/urandom"
|
||||
|
||||
econf \
|
||||
--enable-login \
|
||||
--enable-ntlm \
|
||||
--enable-auth-sasldb \
|
||||
--disable-krb4 \
|
||||
--disable-otp \
|
||||
--without-sqlite \
|
||||
--with-saslauthd=/var/lib/sasl2 \
|
||||
--with-pwcheck=/var/lib/sasl2 \
|
||||
--with-configdir=/etc/sasl2 \
|
||||
--with-plugindir=/usr/$(get_libdir)/sasl2 \
|
||||
--with-dbpath=/etc/sasl2/sasldb2 \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with pam) \
|
||||
$(use_with openldap ldap) \
|
||||
$(use_enable openldap ldapdb) \
|
||||
$(use_enable sample) \
|
||||
$(use_enable kerberos gssapi) \
|
||||
$(use_enable java) \
|
||||
$(use_with java javahome ${JAVA_HOME}) \
|
||||
$(use_with mysql) \
|
||||
$(use_with postgres pgsql) \
|
||||
$(use_enable srp) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# We force -j1 for bug #110066.
|
||||
emake -j1 || die "emake failed"
|
||||
|
||||
# Default location for java classes breaks OpenOffice (bug #60769).
|
||||
# Thanks to axxo@gentoo.org for the solution.
|
||||
cd "${S}"
|
||||
if use java ; then
|
||||
jar -cvf ${PN}.jar -C java $(find java -name "*.class")
|
||||
fi
|
||||
|
||||
# Add testsaslauthd (bug #58768).
|
||||
cd "${S}/saslauthd"
|
||||
emake testsaslauthd || die "emake testsaslauthd failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
keepdir /var/lib/sasl2 /etc/sasl2
|
||||
|
||||
# Install everything necessary so users can build sample
|
||||
# client/server (bug #64733).
|
||||
if use sample ; then
|
||||
insinto /usr/share/${PN}-2/examples
|
||||
doins aclocal.m4 config.h config.status configure.in
|
||||
dosym /usr/include/sasl /usr/share/${PN}-2/examples/include
|
||||
exeinto /usr/share/${PN}-2/examples
|
||||
doexe libtool
|
||||
insinto /usr/share/${PN}-2/examples/sample
|
||||
doins sample/*.{c,h} sample/*Makefile*
|
||||
insinto /usr/share/${PN}-2/examples/sample/.deps
|
||||
doins sample/.deps/*
|
||||
dodir /usr/share/${PN}-2/examples/lib
|
||||
dosym /usr/$(get_libdir)/libsasl2.la /usr/share/${PN}-2/examples/lib/libsasl2.la
|
||||
dodir /usr/share/${PN}-2/examples/lib/.libs
|
||||
dosym /usr/$(get_libdir)/libsasl2.so /usr/share/${PN}-2/examples/lib/.libs/libsasl2.so
|
||||
fi
|
||||
|
||||
# Default location for java classes breaks OpenOffice (bug #60769).
|
||||
if use java ; then
|
||||
java-pkg_dojar ${PN}.jar
|
||||
java-pkg_regso "${D}/usr/$(get_libdir)/libjavasasl.so"
|
||||
# hackish, don't wanna dig through makefile
|
||||
rm -Rf "${D}/usr/$(get_libdir)/java"
|
||||
docinto "java"
|
||||
dodoc "${S}/java/README" "${FILESDIR}/java.README.gentoo" "${S}"/java/doc/*
|
||||
dodir "/usr/share/doc/${PF}/java/Test"
|
||||
insinto "/usr/share/doc/${PF}/java/Test"
|
||||
doins "${S}"/java/Test/*.java || die "Failed to copy java files to /usr/share/doc/${PF}/java/Test"
|
||||
fi
|
||||
|
||||
docinto ""
|
||||
dodoc AUTHORS ChangeLog NEWS README doc/TODO doc/*.txt
|
||||
newdoc pwcheck/README README.pwcheck
|
||||
dohtml doc/*.html
|
||||
|
||||
docinto "saslauthd"
|
||||
dodoc saslauthd/{AUTHORS,ChangeLog,LDAP_SASLAUTHD,NEWS,README}
|
||||
|
||||
newpamd "${FILESDIR}/saslauthd.pam-include" saslauthd || die "Failed to install saslauthd to /etc/pam.d"
|
||||
|
||||
newinitd "${FILESDIR}/pwcheck.rc6" pwcheck || die "Failed to install pwcheck to /etc/init.d"
|
||||
|
||||
newinitd "${FILESDIR}/saslauthd2.rc6" saslauthd || die "Failed to install saslauthd to /etc/init.d"
|
||||
newconfd "${FILESDIR}/saslauthd-${SASLAUTHD_CONF_VER}.conf" saslauthd || die "Failed to install saslauthd to /etc/conf.d"
|
||||
|
||||
newsbin "${S}/saslauthd/testsaslauthd" testsaslauthd || die "Failed to install testsaslauthd"
|
||||
}
|
||||
|
||||
pkg_postinst () {
|
||||
# Generate an empty sasldb2 with correct permissions.
|
||||
if ( use berkdb || use gdbm ) && [[ ! -f "${ROOT}/etc/sasl2/sasldb2" ]] ; then
|
||||
einfo "Generating an empty sasldb2 with correct permissions ..."
|
||||
echo "p" | "${ROOT}/usr/sbin/saslpasswd2" -f "${ROOT}/etc/sasl2/sasldb2" -p login \
|
||||
|| die "Failed to generate sasldb2"
|
||||
"${ROOT}/usr/sbin/saslpasswd2" -f "${ROOT}/etc/sasl2/sasldb2" -d login \
|
||||
|| die "Failed to delete temp user"
|
||||
chown root:mail "${ROOT}/etc/sasl2/sasldb2" \
|
||||
|| die "Failed to chown ${ROOT}/etc/sasl2/sasldb2"
|
||||
chmod 0640 "${ROOT}/etc/sasl2/sasldb2" \
|
||||
|| die "Failed to chmod ${ROOT}/etc/sasl2/sasldb2"
|
||||
fi
|
||||
|
||||
if use sample ; then
|
||||
elog "You have chosen to install sources for the example client and server."
|
||||
elog "To build these, please type:"
|
||||
elog "\tcd /usr/share/${PN}-2/examples/sample && make"
|
||||
fi
|
||||
|
||||
if use authdaemond ; then
|
||||
elog "You need to add a user running a service using Courier's"
|
||||
elog "authdaemon to the 'mail' group. For example, do:"
|
||||
elog " gpasswd -a postfix mail"
|
||||
elog "to add the 'postfix' user to the 'mail' group."
|
||||
fi
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libnfc/libnfc-1.2.1.ebuild,v 1.1 2009/08/16 14:18:29 ikelos Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
DESCRIPTION="Near Field Communications (NFC) library"
|
||||
HOMEPAGE="http://www.libnfc.org/"
|
||||
SRC_URI="http://${PN}.googlecode.com/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~x86 ~amd64"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="sys-apps/pcsc-lite
|
||||
virtual/libusb:0"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" || die "Failed to install."
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libnfc/libnfc-1.3.4.ebuild,v 1.2 2011/03/20 18:11:44 ssuominen Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="Near Field Communications (NFC) library"
|
||||
HOMEPAGE="http://www.libnfc.org/"
|
||||
SRC_URI="http://${PN}.googlecode.com/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~x86 ~amd64"
|
||||
IUSE="doc"
|
||||
|
||||
CDEPEND="sys-apps/pcsc-lite
|
||||
virtual/libusb:0"
|
||||
DEPEND="${CDEPEND}
|
||||
doc? ( app-doc/doxygen )"
|
||||
RDEPEND="${CDEPEND}"
|
||||
|
||||
src_compile() {
|
||||
emake || die "Failed to compile."
|
||||
use doc && doxygen
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" || die "Failed to install properly."
|
||||
use doc && dohtml "${S}"/doc/html/*
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libsigsegv/libsigsegv-2.8.ebuild,v 1.7 2012/04/13 18:56:07 ulm Exp $
|
||||
|
||||
EAPI=2
|
||||
|
||||
DESCRIPTION="library for handling page faults in user mode"
|
||||
HOMEPAGE="http://libsigsegv.sourceforge.net/"
|
||||
SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
src_configure () {
|
||||
econf --enable-shared || die "Configure phase failed"
|
||||
}
|
||||
|
||||
src_test () {
|
||||
env - make -j1 check || die "Tests failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
dodoc AUTHORS ChangeLog* NEWS PORTING README
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/libsigsegv/libsigsegv-2.9.ebuild,v 1.2 2012/04/13 18:56:07 ulm Exp $
|
||||
|
||||
EAPI=2
|
||||
|
||||
DESCRIPTION="library for handling page faults in user mode"
|
||||
HOMEPAGE="http://libsigsegv.sourceforge.net/"
|
||||
SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
src_configure () {
|
||||
econf --enable-shared || die "Configure phase failed"
|
||||
}
|
||||
|
||||
src_test () {
|
||||
if [[ ${FEATURES} = *sandbox* ]]
|
||||
then
|
||||
ewarn "It is known that the stackoverflow"
|
||||
ewarn "tests will fail with sandbox enabled."
|
||||
fi
|
||||
emake check || die "Tests failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
dodoc AUTHORS ChangeLog* NEWS PORTING README
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
--- rapidxml_print.hpp.orig 2015-06-21 15:46:43.330070116 +0200
|
||||
+++ rapidxml_print.hpp 2015-06-21 15:50:58.745053512 +0200
|
||||
@@ -102,6 +102,20 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Internal printing operations
|
||||
|
||||
+ // =====================================
|
||||
+ // fix for clang for this bug in gcc and others: http://sourceforge.net/p/rapidxml/bugs/16/
|
||||
+
|
||||
+ template<class OutIt, class Ch> inline OutIt print_children(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_element_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_data_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_cdata_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_declaration_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_comment_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_doctype_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+ template<class OutIt, class Ch> inline OutIt print_pi_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);
|
||||
+
|
||||
+ // =====================================
|
||||
+
|
||||
// Print node
|
||||
template<class OutIt, class Ch>
|
||||
inline OutIt print_node(OutIt out, const xml_node<Ch> *node, int flags, int indent)
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/rapidxml/rapidxml-1.13-r1.ebuild,v 1.1 2015/06/22 07:52:17 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils
|
||||
|
||||
DESCRIPTION="Fast XML parser"
|
||||
HOMEPAGE="http://rapidxml.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/rapidxml/rapidxml-${PV}.zip"
|
||||
|
||||
LICENSE="Boost-1.0 MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-clang.patch
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/include/rapidxml
|
||||
doins *.hpp
|
||||
docinto html
|
||||
dodoc manual.html
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
--- yaz-3.0.26/configure.ac
|
||||
+++ yaz-3.0.26/configure.ac
|
||||
@@ -349,14 +349,14 @@
|
||||
|
||||
dnl
|
||||
dnl
|
||||
-AC_CHECK_ICU([3.6],[
|
||||
- if test "$xml_enabled" = "true"; then
|
||||
- ICU_CPPFLAGS="$ICU_CPPFLAGS -D YAZ_HAVE_ICU=1"
|
||||
- else
|
||||
- ICU_CPPFLAGS=""
|
||||
- AC_MSG_WARN([ICU support disabled because XML support is unavailable])
|
||||
- fi
|
||||
-])
|
||||
+dnl ------ ICU
|
||||
+AC_ARG_ENABLE(icu, [ --enable-icu enable ICU support],[enable_icu=$enableval],[enable_icu=no])
|
||||
+if test "$enable_icu" = "yes"; then
|
||||
+ AC_CHECK_ICU([3.6],[
|
||||
+ ICU_CPPFLAGS="$ICU_CPPFLAGS -D YAZ_HAVE_ICU=1"],[
|
||||
+ AC_MSG_ERROR([For ICU support please install libicu36-dev or similar])
|
||||
+ ])
|
||||
+fi
|
||||
dnl
|
||||
dnl ------ Memory debugging
|
||||
AC_ARG_ENABLE(memdebug, [ --enable-memdebug enable memory debugging],[enable_memdebug=$enableval],[enable_memdebug=none])
|
@ -1,54 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/yaz/yaz-3.0.26.ebuild,v 1.10 2012/05/04 18:35:44 jdhore Exp $
|
||||
|
||||
inherit eutils autotools
|
||||
|
||||
DESCRIPTION="C/C++ programmer's toolkit supporting the development of Z39.50v3 clients and servers"
|
||||
HOMEPAGE="http://www.indexdata.dk/yaz"
|
||||
SRC_URI="http://ftp.indexdata.dk/pub/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86"
|
||||
IUSE="debug icu tcpd ziffy"
|
||||
|
||||
RDEPEND="dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/openssl
|
||||
icu? ( dev-libs/icu )
|
||||
tcpd? ( sys-apps/tcp-wrappers )
|
||||
ziffy? ( net-libs/libpcap )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
dev-lang/tcl"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
epatch "${FILESDIR}"/${P}-icu-automagic.patch
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
econf \
|
||||
--enable-static \
|
||||
--enable-shared \
|
||||
$(use_enable debug memdebug) \
|
||||
$(use_enable icu) \
|
||||
$(use_enable tcpd tcpd /usr)
|
||||
|
||||
emake || die "emake failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local docdir="/usr/share/doc/${PF}"
|
||||
emake DESTDIR="${D}" docdir="${docdir}" install || die "install failed"
|
||||
|
||||
dodir ${docdir}/html
|
||||
mv -f "${D}"/${docdir}/*.{html,png} "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
mv -f "${D}"/usr/share/doc/${PN}/common "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
rm -rf "${D}"/usr/share/doc/${PN}
|
||||
|
||||
dodoc ChangeLog NEWS README TODO
|
||||
}
|
@ -1,54 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/yaz/yaz-3.0.36.ebuild,v 1.2 2012/05/04 18:35:44 jdhore Exp $
|
||||
|
||||
inherit eutils autotools
|
||||
|
||||
DESCRIPTION="C/C++ programmer's toolkit supporting the development of Z39.50v3 clients and servers"
|
||||
HOMEPAGE="http://www.indexdata.dk/yaz"
|
||||
SRC_URI="http://ftp.indexdata.dk/pub/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
|
||||
IUSE="debug icu tcpd ziffy"
|
||||
|
||||
RDEPEND="dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/openssl
|
||||
icu? ( dev-libs/icu )
|
||||
tcpd? ( sys-apps/tcp-wrappers )
|
||||
ziffy? ( net-libs/libpcap )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
dev-lang/tcl"
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
cd "${S}"
|
||||
epatch "${FILESDIR}"/${PN}-3.0.26-icu-automagic.patch
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
econf \
|
||||
--enable-static \
|
||||
--enable-shared \
|
||||
$(use_enable debug memdebug) \
|
||||
$(use_enable icu) \
|
||||
$(use_enable tcpd tcpd /usr)
|
||||
|
||||
emake || die "emake failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local docdir="/usr/share/doc/${PF}"
|
||||
emake DESTDIR="${D}" docdir="${docdir}" install || die "install failed"
|
||||
|
||||
dodir ${docdir}/html
|
||||
mv -f "${D}"/${docdir}/*.{html,png} "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
mv -f "${D}"/usr/share/doc/${PN}/common "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
rm -rf "${D}"/usr/share/doc/${PN}
|
||||
|
||||
dodoc ChangeLog NEWS README TODO
|
||||
}
|
@ -1,56 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/yaz/yaz-3.0.47.ebuild,v 1.4 2015/03/25 13:25:20 jlec Exp $
|
||||
|
||||
EAPI=2
|
||||
inherit eutils autotools
|
||||
|
||||
DESCRIPTION="C/C++ programmer's toolkit supporting the development of Z39.50v3 clients and servers"
|
||||
HOMEPAGE="http://www.indexdata.dk/yaz"
|
||||
SRC_URI="http://ftp.indexdata.dk/pub/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
|
||||
IUSE="debug icu tcpd ziffy"
|
||||
|
||||
RDEPEND="dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/openssl
|
||||
icu? ( dev-libs/icu )
|
||||
tcpd? ( sys-apps/tcp-wrappers )
|
||||
ziffy? ( net-libs/libpcap )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
dev-lang/tcl:0
|
||||
>=sys-devel/libtool-2"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-3.0.47-icu-automagic.patch
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--enable-static \
|
||||
--enable-shared \
|
||||
$(use_enable debug memdebug) \
|
||||
$(use_enable icu) \
|
||||
$(use_enable tcpd tcpd /usr)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake || die "emake failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local docdir="/usr/share/doc/${PF}"
|
||||
emake DESTDIR="${D}" docdir="${docdir}" install || die "install failed"
|
||||
|
||||
dodir ${docdir}/html
|
||||
mv -f "${D}"/${docdir}/*.{html,png} "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
mv -f "${D}"/usr/share/doc/${PN}/common "${D}"/${docdir}/html/ || die "Failed to move HTML docs"
|
||||
rm -rf "${D}"/usr/share/doc/${PN}
|
||||
|
||||
dodoc ChangeLog NEWS README
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST backports.lzma-0.0.2.tar.gz 31795 SHA256 a0966deeb2533e96ea84dc0fb7948aa23421c7f061197133b62665a52dfa64e6 SHA512 bf9c79dbb2b661765aa61510c60ddeff57e301ff333a1b5c327b35aa5ae39392a7c753d4be83e576348e5d64c1bc09cfe8a308dba93d8ec186e4a35c6f8843ea WHIRLPOOL 3f5aa12627fd00901b6fc1c4f1461502ee65f975b411e334d9c1f0b87d564e134c4e101e633c8f57e74bdcc132262aab3a88aa0dad620cc36a1c209ec806af19
|
||||
DIST backports.lzma-0.0.3.tar.gz 33848 SHA256 bac58aec8d39ac3d22250840fb24830d0e4a0ef05ad8f3f09172dc0cc80cdbca SHA512 a653b61d1e45de73ac13845127fecd97e84872c453be9e090ba2d6d2ff6187817ab980e36c1961f0a66bb9a660bb716fc7679b5317a4ff41db42156024847f45 WHIRLPOOL 33eb3c8b1c9aa8d4beabdc52247cea4b0ad2913989a2b508f71073a7a6b8dd9b6260339233f78d8e8f28476c48242076b3a95b427155f0605336e17b79e0d9ee
|
||||
|
@ -1,34 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/backports-lzma/backports-lzma-0.0.2-r1.ebuild,v 1.3 2015/04/08 08:04:53 mgorny Exp $
|
||||
|
||||
EAPI=5
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_PN=${PN/-/.}
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="Backport of Python 3.3's lzma module for XZ/LZMA compressed files"
|
||||
HOMEPAGE="https://github.com/peterjc/backports.lzma/ http://pypi.python.org/pypi/backports.lzma/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
RDEPEND="app-arch/xz-utils
|
||||
dev-python/backports[${PYTHON_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
# main namespace provided by dev-python/backports
|
||||
rm backports/__init__.py || die
|
||||
}
|
||||
|
||||
python_test() {
|
||||
"${PYTHON}" test/test_lzma.py || die "tests failed with ${EPYTHON}"
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST django-debug-toolbar-1.3.2.tar.gz 316106 SHA256 3cb9128c17a672864b0daa16065c9d80ff910cbc3b344a3e5d82eb0fb30a185c SHA512 d1428f1f729a190ddbf3a260bc428d7a78421519be60c7f07ad3e7f3498414d4ac0ec64d5772fcf89d6521f83bd9226fae104c43b4f0ad4deaf7cfb427d24b1c WHIRLPOOL f088dc6c4fb766a9e38b2f736a66126bdb75bd3cd7762c8ba06650b401639a644831e848012bd001cbd8ffdaad6b823303765f5f44d8bc79688f2d9b7da4592d
|
||||
DIST django-debug-toolbar-1.3.tar.gz 534973 SHA256 b56579c41e084e72077d7742cca9d8a697e1872b9513a12b464e57684b80d1b1 SHA512 91747d03bfaa35337be4a8901779fae988fa3bcf74f88e45d8cc5a3d793124e6fbd42fb6909d1c7ad171de9294672f20101e82b381cd0917a528e7c1a6cb8442 WHIRLPOOL 51924df8d9a6622f58a9b4849b27ee35ea79a3a77ed621f79681a174f70446ca0c3b010ce74a92a196fc89b37bce27211fb8a431fe6dfabde14b336cbbef11a5
|
||||
|
@ -0,0 +1,53 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/django-debug-toolbar/django-debug-toolbar-1.3.2.ebuild,v 1.1 2015/06/22 09:19:20 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A configurable set of panels that display debug information"
|
||||
HOMEPAGE="
|
||||
http://pypi.python.org/pypi/django-debug-toolbar/
|
||||
https://github.com/django-debug-toolbar/django-debug-toolbar/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="BSD"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc examples"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/django-1.4.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/python-sqlparse-0.1.10[${PYTHON_USEDEP}]
|
||||
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
python_prepare_all() {
|
||||
# Prevent non essential d'loading by intersphinx
|
||||
sed -e 's:intersphinx_mapping:_&:' -i docs/conf.py || die
|
||||
|
||||
# This prevents distutils from installing 'tests' package, rm magic no more needed
|
||||
sed -e "/find_packages/s:'tests':'tests.\*', 'tests':" -i setup.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
use doc && emake -C docs html
|
||||
}
|
||||
|
||||
python_test() {
|
||||
emake test
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
use doc && local HTML_DOCS=( docs/_build/html/. )
|
||||
use examples && local EXAMPLES=( example/. )
|
||||
distutils-r1_python_install_all
|
||||
}
|
@ -1,4 +1,2 @@
|
||||
DIST ipython-2.2.0.tar.gz 11912007 SHA256 b7ca77ba54a02f032055b73f5f62b01431f818ae00f63716b78f881c2b2564e2 SHA512 4953bf5e9d6d5c6ad538d07d62b5b100fd86a37f6b861238501581c0059bd4655345ca05cf395e79709c38ce4cb9c6293f5d11ac0252a618ad8272b161140d13 WHIRLPOOL a5e433a3a840b65fd0644f023cc9e93862e48a906e4e9d1596ebbd24290d486be580dca017ef1586da980b6792dcd7ed9aab4af81421bbf083d885927db6fcc8
|
||||
DIST ipython-2.4.1.tar.gz 11896092 SHA256 6d350b5c2d3e925b0ff6167658812d720b891e476238d924504e2f7f483e9217 SHA512 a9cffc08ba10c47b0371b05664e55eee0562a30ef0d4bbafae79e52e5b9727906c45840c0918122c06c5672ac65e6eb381399f103e1a836aca003eda81b2acde WHIRLPOOL 08fa111b1f3c2a1ba055cd8e84c3a0eaa2efccd7509e1c752506bebe255d139f54182bd7ab194cce71091b85cc9492afbfd6337dcd5eb5a44353a6d9cf301472
|
||||
DIST ipython-3.0.0.tar.gz 10867678 SHA256 86070141110101b6b55e6dc31a40461c437d391a5337a6e5e349357dc18bfbb4 SHA512 47d515416e49590a8a5099d542a1f89a62b4eb6cf481bd29e702d37f87f974b480ea0b808135cae97f7d56bb429399ce190aa7bd03df8bac374dc13f6ec6ef49 WHIRLPOOL 305e766dcc31a0a76035d1532003d21f4d7b659299d0e6bbb896ae56d17fa6050c82e8fdfd7717748fb7ebb0691462f10211c13e419388abe060d407a4e5ced2
|
||||
DIST ipython-3.1.0.tar.gz 10915828 SHA256 532092d3f06f82b1d8d1e5c37097eae19fcf025f8f6a4b670dd49c3c338d5624 SHA512 9b67d41c8bfaf855b9c8df29334f8bebd124d94ae6eb56cae8d90c31010825a99ad3136f7fd60f5adef77f88017daadd706f6bf9e7b7875aba2321b25670aa96 WHIRLPOOL 5857b8173990a7e3e62990a9c0b57c5c8bdbc0d3269692eddb4e8592d49a30f97ebc078d57dd9e78e439fdbbd592d64d806208b8cfc525145e29bd861c720802
|
||||
DIST ipython-3.2.0.tar.gz 10883925 SHA256 8e64b441e16298c08025b826126b2d7bc5c1776d2d2f071672166f615f327887 SHA512 d298f8ce09f7bd98bf11156c0f34816ce846dc3e6a511d354f0905300af99e15f5be46547766207f1121bd11850456a20262626a8a22be1ffc756eb84f5a982c WHIRLPOOL 482d1c22199aff6bbb9ea23f12fd50e0c8f221bbf43f1779e1739e6d637e7a6f9edd8d4b60263cc3292746f2833a28d72e6282755b046668c96882002dd73134
|
||||
|
@ -0,0 +1,35 @@
|
||||
From 5d6ce3671318c8d32bab770ece841590bbec358d Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Bussonnier <bussonniermatthias@gmail.com>
|
||||
Date: Fri, 17 Apr 2015 13:08:32 -0700
|
||||
Subject: [PATCH] Set secure cookie by default if login handler is hit.
|
||||
|
||||
backport of https://github.com/jupyter/jupyter_notebook/pull/22 b8e99bc
|
||||
|
||||
> There is few chances that logged-in people do not use https connexion,
|
||||
> but I guess it can happened if the server is ran in front of a proxy
|
||||
> that does the https termination, so leave it configurable.
|
||||
>
|
||||
> closes ipython/ipython#8325
|
||||
---
|
||||
IPython/html/auth/login.py | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/IPython/html/auth/login.py b/IPython/html/auth/login.py
|
||||
index 1ad4673..1a340c8 100644
|
||||
--- a/IPython/html/auth/login.py
|
||||
+++ b/IPython/html/auth/login.py
|
||||
@@ -46,7 +46,13 @@ class LoginHandler(IPythonHandler):
|
||||
pwd = self.get_argument('password', default=u'')
|
||||
if self.login_available:
|
||||
if passwd_check(self.password, pwd):
|
||||
- self.set_secure_cookie(self.cookie_name, str(uuid.uuid4()))
|
||||
+ # tornado <4.2 have a bug that consider secure==True as soon as
|
||||
+ # 'secure' kwarg is passed to set_secure_cookie
|
||||
+ if self.settings.get('secure_cookie', self.request.protocol == 'https'):
|
||||
+ kwargs = {'secure':True}
|
||||
+ else:
|
||||
+ kwargs = {}
|
||||
+ self.set_secure_cookie(self.cookie_name, str(uuid.uuid4()), **kwargs)
|
||||
else:
|
||||
self._render(message={'error': 'Invalid password'})
|
||||
return
|
@ -1,154 +0,0 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/ipython/ipython-3.0.0.ebuild,v 1.5 2015/05/20 04:03:28 jer Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} )
|
||||
PYTHON_REQ_USE='readline,sqlite'
|
||||
|
||||
inherit distutils-r1 eutils virtualx
|
||||
|
||||
DESCRIPTION="Advanced interactive shell for Python"
|
||||
HOMEPAGE="http://ipython.org/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
|
||||
IUSE="doc examples matplotlib mongodb notebook nbconvert octave qt4 +smp test wxwidgets"
|
||||
|
||||
REQUIRED_USE="test? ( doc matplotlib mongodb notebook nbconvert octave qt4 wxwidgets )"
|
||||
|
||||
PY2_USEDEP=$(python_gen_usedep python2_7)
|
||||
CDEPEND="
|
||||
dev-python/decorator[${PYTHON_USEDEP}]
|
||||
dev-python/pexpect[${PYTHON_USEDEP}]
|
||||
dev-python/pyparsing[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
dev-python/simplegeneric[${PYTHON_USEDEP}]
|
||||
matplotlib? ( dev-python/matplotlib[${PYTHON_USEDEP}] )
|
||||
mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
|
||||
octave? ( dev-python/oct2py[${PYTHON_USEDEP}] )
|
||||
smp? ( >=dev-python/pyzmq-13[${PYTHON_USEDEP}] )
|
||||
wxwidgets? ( $(python_gen_cond_dep 'dev-python/wxpython:*[${PYTHON_USEDEP}]' python2_7) )"
|
||||
RDEPEND="${CDEPEND}
|
||||
notebook? (
|
||||
dev-libs/mathjax
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
||||
>=dev-python/mistune-0.5[${PYTHON_USEDEP}]
|
||||
dev-python/pygments[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyzmq-2.1.11[${PYTHON_USEDEP}]
|
||||
>=dev-python/terminado-0.3.3[${PYTHON_USEDEP}]
|
||||
>=www-servers/tornado-3.1[${PYTHON_USEDEP}]
|
||||
)
|
||||
nbconvert? (
|
||||
|| ( >=net-libs/nodejs-0.9.12 >=app-text/pandoc-1.12.1 )
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
||||
>=dev-python/mistune-0.5[${PYTHON_USEDEP}]
|
||||
dev-python/pygments[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
)
|
||||
qt4? (
|
||||
|| (
|
||||
dev-python/PyQt4[${PYTHON_USEDEP}]
|
||||
dev-python/pyside[${PYTHON_USEDEP}]
|
||||
)
|
||||
dev-python/pygments[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyzmq-13[${PYTHON_USEDEP}] )"
|
||||
DEPEND="${CDEPEND}
|
||||
test? (
|
||||
app-text/dvipng
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/mock[${PY2_USEDEP}]
|
||||
>=dev-python/nose-0.10.1[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
>=www-servers/tornado-4.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
doc? (
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep 'dev-python/fabric[${PYTHON_USEDEP}]' python2_7)
|
||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
||||
dev-python/matplotlib[${PYTHON_USEDEP}]
|
||||
>=dev-python/nose-0.10.1[${PYTHON_USEDEP}]
|
||||
dev-python/numpydoc[${PYTHON_USEDEP}]
|
||||
dev-python/pymongo[${PYTHON_USEDEP}]
|
||||
dev-python/rpy[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinx-1.1[${PYTHON_USEDEP}]
|
||||
>=www-servers/tornado-4.0[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/2.1.0-substitute-files.patch
|
||||
)
|
||||
|
||||
DISTUTILS_IN_SOURCE_BUILD=1
|
||||
|
||||
python_prepare_all() {
|
||||
# Remove out of date insource files
|
||||
rm IPython/extensions/rmagic.py || die
|
||||
|
||||
# Prevent un-needed download during build
|
||||
if use doc; then
|
||||
sed -e "/^ 'sphinx.ext.intersphinx',/d" -i docs/source/conf.py || die
|
||||
fi
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_compile_all() {
|
||||
use doc && emake -C docs html_noapi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# virtualx has trouble with parallel runs.
|
||||
local DISTUTILS_NO_PARALLEL_BUILD=1
|
||||
distutils-r1_src_test
|
||||
}
|
||||
|
||||
python_test() {
|
||||
distutils_install_for_testing
|
||||
local fail
|
||||
run_tests() {
|
||||
pushd ${TEST_DIR} > /dev/null
|
||||
"${PYTHON}" -m IPython.testing.iptestcontroller --all || fail=1
|
||||
popd > /dev/null
|
||||
}
|
||||
VIRTUALX_COMMAND=run_tests virtualmake
|
||||
[[ ${fail} ]] && die "Tests fail with ${EPYTHON}"
|
||||
}
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
ln -snf "${EPREFIX}"/usr/share/mathjax \
|
||||
"${D}$(python_get_sitedir)"/IPython/html/static/mathjax || die
|
||||
|
||||
# Create ipythonX.Y symlinks.
|
||||
# TODO:
|
||||
# 1. do we want them for pypy? No. pypy has no numpy
|
||||
# 2. handle it in the eclass instead (use _python_ln_rel).
|
||||
# With pypy not an option the dosym becomes unconditional
|
||||
dosym ../lib/python-exec/${EPYTHON}/ipython \
|
||||
/usr/bin/ipython${EPYTHON#python}
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
use doc && local HTML_DOCS=( docs/build/html/. )
|
||||
use examples && local EXAMPLES=( examples/. )
|
||||
distutils-r1_python_install_all
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "sympyprinting" dev-python/sympy
|
||||
optfeature "cythonmagic" dev-python/cython
|
||||
if use nbconvert; then
|
||||
if ! has_version app-text/pandoc ; then
|
||||
einfo "Node.js will be used to convert notebooks to other formats"
|
||||
einfo "like HTML. Support for that is still experimental. If you"
|
||||
einfo "encounter any problems, please use app-text/pandoc instead."
|
||||
fi
|
||||
fi
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST Markups-0.2.4.tar.gz 8827 SHA256 0aab138698035e699fad1c88bebb3fa5e90a1876bc7d8fefb3491513fe13f16b SHA512 369eda02474f723d694bc0518324afde9f5baef02719448abb420a77d58cf1543939e6d38aa1db531d4214dc4cd4c47b29d79fa7a23b33b4ae74b45ad2ec52c7 WHIRLPOOL 1118723f5b9725b68d052e2496ccee414782bd6cceaedc49f9c2918c4055145fb95d49cf962c46eb669ab7a3a8659b86ed54fa5b99f6ac91266cebc4ecf01b10
|
||||
DIST Markups-0.6.1.tar.gz 19116 SHA256 1f3d6f7b85ac9ddcb936b8b2b6fa15a42ddc9dfc22a075d83d9160b5d59f6d84 SHA512 f1354af48aadb43459e8f0c2013d283c4f6170f608c4ca4a2dd21e77c6fc2383bd6a1631efc9a8878c4a0ba59249528222ba01d1a38ed3f02c6890d42c6afdb9 WHIRLPOOL 2db23d6cb9a282eb461a6ff49b21d1e1a57b6bc970739413efe4bbffdff6bc55d076db4546f0ff458c9cd8b66c389daa21e9cad7341d614109891c9a2b46acc2
|
||||
DIST Markups-0.6.3.tar.gz 19285 SHA256 e3ff5de2be018240c526e017972b37181cb3d5dfb7c96ad14eae6639140f58ef SHA512 61b3921595628f577d335c9eb7e405435c1547a6d5d06396e4181a0f3ac0bce8f5a72b5c51568ceeec96c86524ec4baa1cbcb807f545a630a87d807b9e12c97b WHIRLPOOL 9aad9486e57831fbca7124cb06dc84fd69df3036d7f08e8168b9969e83b58a32250cb82c90b70344f60d30c03fb3c7171f698fb8ba6ea23f5c296bb6d8b80ba2
|
||||
|
@ -0,0 +1,38 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/markups/markups-0.6.3.ebuild,v 1.1 2015/06/22 10:04:15 jlec Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_PN="Markups"
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="A wrapper around various text markups"
|
||||
HOMEPAGE="http://pypi.python.org/pypi/Markups"
|
||||
SRC_URI="mirror://pypi/M/${MY_PN}/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
DEPEND="dev-python/markdown[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
python_test() {
|
||||
pushd tests > /dev/null
|
||||
for test in test_*.py ; do
|
||||
local testName="$(echo ${test} | sed 's/test_\(.*\).py/\1/g')"
|
||||
if [[ ${testName} == "web" ]]; then
|
||||
$(python_is_python3) || continue
|
||||
fi
|
||||
einfo "Running test '${testName}' with '${EPYTHON}'."
|
||||
${EPYTHON} ${test} || die "Test '${testName}' with '${EPYTHON}' failed."
|
||||
done
|
||||
popd tests > /dev/null
|
||||
}
|
@ -0,0 +1,536 @@
|
||||
diff --git a/CHANGES.rst b/CHANGES.rst
|
||||
index eb204dd..3eb99a7 100644
|
||||
--- a/CHANGES.rst
|
||||
+++ b/CHANGES.rst
|
||||
@@ -3,6 +3,14 @@ Changelog
|
||||
|
||||
Here is the full history of mistune.
|
||||
|
||||
+Version 0.7
|
||||
+~~~~~~~~~~~
|
||||
+
|
||||
+Release date not decided.
|
||||
+
|
||||
+* Fix the breaking change in version 0.6 with options: **parse_inline_html** and **parse_block_html**
|
||||
+
|
||||
+
|
||||
Version 0.6
|
||||
~~~~~~~~~~~
|
||||
|
||||
diff --git a/README.rst b/README.rst
|
||||
index 894833b..f6cb5f9 100644
|
||||
--- a/README.rst
|
||||
+++ b/README.rst
|
||||
@@ -38,12 +38,6 @@ Installing mistune with pip::
|
||||
|
||||
$ pip install mistune
|
||||
|
||||
-If pip is not available, try easy_install::
|
||||
-
|
||||
- $ easy_install mistune
|
||||
-
|
||||
-Cython Feature
|
||||
-~~~~~~~~~~~~~~
|
||||
|
||||
Mistune can be faster, if you compile with cython::
|
||||
|
||||
@@ -59,10 +53,49 @@ A simple API that render a markdown formatted text:
|
||||
|
||||
import mistune
|
||||
|
||||
- mistune.markdown('I am using **markdown**')
|
||||
- # output: <p>I am using <strong>markdown</strong></p>
|
||||
+ mistune.markdown('I am using **mistune markdown parser**')
|
||||
+ # output: <p>I am using <strong>mistune markdown parser</strong></p>
|
||||
+
|
||||
+If you care about performance, it is better to re-use the Markdown instance:
|
||||
+
|
||||
+.. code:: python
|
||||
+
|
||||
+ import mistune
|
||||
+
|
||||
+ markdown = mistune.Markdown()
|
||||
+ markdown('I am using **mistune markdown parser**')
|
||||
+
|
||||
+Mistune has enabled all features by default. You don't have to configure
|
||||
+anything. But there are options for you to change the parser behaviors.
|
||||
+
|
||||
+
|
||||
+Options
|
||||
+-------
|
||||
+
|
||||
+Here is a list of all options that will affect the rendering results,
|
||||
+configure them with ``mistune.Renderer``:
|
||||
+
|
||||
+.. code:: python
|
||||
+
|
||||
+ renderer = mistune.Renderer(escape=True, hard_wrap=True)
|
||||
+ # use this renderer instance
|
||||
+ markdown = mistune.Markdown(renderer=renderer)
|
||||
+ markdown(text)
|
||||
+
|
||||
+* **escape**: if set to *True*, all raw html tags will be escaped.
|
||||
+* **hard_wrap**: if set to *True*, it will has GFM line breaks feature.
|
||||
+* **use_xhtml**: if set to *True*, all tags will be in xhtml, for example: ``<hr />``.
|
||||
+* **parse_html**: parse text in block and inline level html.
|
||||
+* **parse_block_html**: parse text only in block level html.
|
||||
+* **parse_inline_html**: parse text only in inline level html.
|
||||
+
|
||||
+When using the default renderer, you can use one of the following shortcuts::
|
||||
+
|
||||
+ mistune.markdown(text, escape=True, hard_wrap=True)
|
||||
+
|
||||
+ markdown = mistune.Markdown(escape=True, hard_wrap=True)
|
||||
+ markdown(text)
|
||||
|
||||
-Mistune has all features by default. You don't have to configure anything.
|
||||
|
||||
Renderer
|
||||
--------
|
||||
@@ -79,7 +112,7 @@ Here is an example of code highlighting:
|
||||
from pygments.lexers import get_lexer_by_name
|
||||
from pygments.formatters import HtmlFormatter
|
||||
|
||||
- class MyRenderer(mistune.Renderer):
|
||||
+ class HighlightRenderer(mistune.Renderer):
|
||||
def block_code(self, code, lang):
|
||||
if not lang:
|
||||
return '\n<pre><code>%s</code></pre>\n' % \
|
||||
@@ -88,9 +121,9 @@ Here is an example of code highlighting:
|
||||
formatter = HtmlFormatter()
|
||||
return highlight(code, lexer, formatter)
|
||||
|
||||
- renderer = MyRenderer()
|
||||
- md = mistune.Markdown(renderer=renderer)
|
||||
- print(md.render('Some Markdown text.'))
|
||||
+ renderer = HighlightRenderer()
|
||||
+ markdown = mistune.Markdown(renderer=renderer)
|
||||
+ print(markdown('Some code text.'))
|
||||
|
||||
|
||||
Block Level
|
||||
@@ -127,34 +160,18 @@ Here is a list of span level renderer API::
|
||||
linebreak()
|
||||
newline()
|
||||
link(link, title, content)
|
||||
- tag(html)
|
||||
strikethrough(text)
|
||||
text(text)
|
||||
+ inline_html(text)
|
||||
|
||||
+Footnotes
|
||||
+~~~~~~~~~
|
||||
|
||||
-Options
|
||||
--------
|
||||
-
|
||||
-Here is a list of all options that will affect the rendering results:
|
||||
-
|
||||
-.. code:: python
|
||||
-
|
||||
- renderer = mistune.Renderer(escape=True)
|
||||
- md = mistune.Markdown(renderer=renderer)
|
||||
- md.render(text)
|
||||
-
|
||||
-* **escape**: if set to *True*, all raw html tags will be escaped.
|
||||
-* **hard_wrap**: if set to *True*, it will has GFM line breaks feature.
|
||||
-* **use_xhtml**: if set to *True*, all tags will be in xhtml, for example: ``<hr />``.
|
||||
-* **parse_html**: parse text in block level html.
|
||||
-
|
||||
-When using the default renderer, you can use one of the following shorthands::
|
||||
-
|
||||
- mistune.markdown(text, escape=True)
|
||||
-
|
||||
- md = mistune.Markdown(escape=True)
|
||||
- md.render(text)
|
||||
+Here is a list of renderers related to footnotes::
|
||||
|
||||
+ footnote_ref(key, index)
|
||||
+ footnote_item(key, text)
|
||||
+ footnotes(text)
|
||||
|
||||
Lexers
|
||||
------
|
||||
@@ -172,33 +189,23 @@ It is an inline grammar, which requires custom ``InlineGrammar`` and
|
||||
import copy
|
||||
from mistune import Renderer, InlineGrammar, InlineLexer
|
||||
|
||||
- class MyRenderer(Renderer):
|
||||
+ class WikiLinkRenderer(Renderer):
|
||||
def wiki_link(self, alt, link):
|
||||
return '<a href="%s">%s</a>' % (link, alt)
|
||||
|
||||
+ class WikiLinkInlineLexer(InlineLexer):
|
||||
+ def enable_wiki_link(self):
|
||||
+ # add wiki_link rules
|
||||
+ self.rules.wiki_link = re.compile(
|
||||
+ r'\[\[' # [[
|
||||
+ r'([\s\S]+?\|[\s\S]+?)' # Page 2|Page 2
|
||||
+ r'\]\](?!\])' # ]]
|
||||
+ )
|
||||
|
||||
- class MyInlineGrammar(InlineGrammar):
|
||||
- # it would take a while for creating the right regex
|
||||
- wiki_link = re.compile(
|
||||
- r'\[\[' # [[
|
||||
- r'([\s\S]+?\|[\s\S]+?)' # Page 2|Page 2
|
||||
- r'\]\](?!\])' # ]]
|
||||
- )
|
||||
-
|
||||
-
|
||||
- class MyInlineLexer(InlineLexer):
|
||||
- default_rules = copy.copy(InlineLexer.default_rules)
|
||||
-
|
||||
- # Add wiki_link parser to default rules
|
||||
- # you can insert it any place you like
|
||||
- default_rules.insert(3, 'wiki_link')
|
||||
-
|
||||
- def __init__(self, renderer, rules=None, **kwargs):
|
||||
- if rules is None:
|
||||
- # use the inline grammar
|
||||
- rules = MyInlineGrammar()
|
||||
-
|
||||
- super(MyInlineLexer, self).__init__(renderer, rules, **kwargs)
|
||||
+ # Add wiki_link parser to default rules
|
||||
+ # you can insert it some place you like
|
||||
+ # but place matters, maybe 3 is not good
|
||||
+ self.default_rules.insert(3, 'wiki_link')
|
||||
|
||||
def output_wiki_link(self, m):
|
||||
text = m.group(1)
|
||||
@@ -211,8 +218,10 @@ You should pass the inline lexer to ``Markdown`` parser:
|
||||
|
||||
.. code:: python
|
||||
|
||||
- renderer = MyRenderer()
|
||||
- inline = MyInlineLexer(renderer)
|
||||
+ renderer = WikiLinkRenderer()
|
||||
+ inline = WikiLinkInlineLexer(renderer)
|
||||
+ # enable the feature
|
||||
+ inline.enable_wiki_link()
|
||||
markdown = Markdown(renderer, inline=inline)
|
||||
markdown('[[Link Text|Wiki Link]]')
|
||||
|
||||
@@ -220,12 +229,21 @@ It is the same with block level lexer. It would take a while to understand
|
||||
the whole mechanism. But you won't do the trick a lot.
|
||||
|
||||
|
||||
-Contribution
|
||||
-------------
|
||||
+Contribution & Extensions
|
||||
+-------------------------
|
||||
|
||||
Mistune itself doesn't accept any extension. It will always be a simple one
|
||||
file script.
|
||||
|
||||
If you want to add features, you can head over to `mistune-contrib`_.
|
||||
|
||||
+Here are some extensions already in `mistune-contrib`_:
|
||||
+
|
||||
+* Math/MathJax features
|
||||
+* Highlight Code Renderer
|
||||
+* TOC table of content features
|
||||
+* MultiMarkdown Metadata parser
|
||||
+
|
||||
+Get inspired with the contrib repository.
|
||||
+
|
||||
.. _`mistune-contrib`: https://github.com/lepture/mistune-contrib
|
||||
diff --git a/mistune.py b/mistune.py
|
||||
index 316f86d..86d215e 100644
|
||||
--- a/mistune.py
|
||||
+++ b/mistune.py
|
||||
@@ -476,6 +476,11 @@ class InlineLexer(object):
|
||||
'double_emphasis', 'emphasis', 'code',
|
||||
'linebreak', 'strikethrough', 'text',
|
||||
]
|
||||
+ inline_html_rules = [
|
||||
+ 'escape', 'autolink', 'url', 'link', 'reflink',
|
||||
+ 'nolink', 'double_emphasis', 'emphasis', 'code',
|
||||
+ 'linebreak', 'strikethrough', 'text',
|
||||
+ ]
|
||||
|
||||
def __init__(self, renderer, rules=None, **kwargs):
|
||||
self.renderer = renderer
|
||||
@@ -491,6 +496,10 @@ class InlineLexer(object):
|
||||
self._in_link = False
|
||||
self._in_footnote = False
|
||||
|
||||
+ kwargs.update(self.renderer.options)
|
||||
+ _to_parse = kwargs.get('parse_html') or kwargs.get('parse_inline_html')
|
||||
+ self._parse_inline_html = _to_parse
|
||||
+
|
||||
def __call__(self, text):
|
||||
return self.output(text)
|
||||
|
||||
@@ -553,7 +562,15 @@ class InlineLexer(object):
|
||||
return self.renderer.autolink(link, False)
|
||||
|
||||
def output_inline_html(self, m):
|
||||
- return self.renderer.inline_html(m.group(0))
|
||||
+ text = m.group(0)
|
||||
+ if self._parse_inline_html:
|
||||
+ if m.group(1) == 'a':
|
||||
+ self._in_link = True
|
||||
+ text = self.output(text, rules=self.inline_html_rules)
|
||||
+ self._in_link = False
|
||||
+ else:
|
||||
+ text = self.output(text, rules=self.inline_html_rules)
|
||||
+ return self.renderer.inline_html(text)
|
||||
|
||||
def output_footnote(self, m):
|
||||
key = _keyify(m.group(1))
|
||||
@@ -909,6 +926,10 @@ class Markdown(object):
|
||||
self.footnotes = []
|
||||
self.tokens = []
|
||||
|
||||
+ # detect if it should parse text in block html
|
||||
+ _to_parse = kwargs.get('parse_html') or kwargs.get('parse_block_html')
|
||||
+ self._parse_block_html = _to_parse
|
||||
+
|
||||
def __call__(self, text):
|
||||
return self.parse(text)
|
||||
|
||||
@@ -1072,7 +1093,7 @@ class Markdown(object):
|
||||
|
||||
def output_block_html(self):
|
||||
text = self.token['text']
|
||||
- if self.options.get('parse_html') and not self.token.get('pre'):
|
||||
+ if self._parse_block_html and not self.token.get('pre'):
|
||||
text = self.inline(text)
|
||||
return self.renderer.block_html(text)
|
||||
|
||||
diff --git a/tests/test_cases.py b/tests/test_cases.py
|
||||
index 933fa4c..3853a67 100644
|
||||
--- a/tests/test_cases.py
|
||||
+++ b/tests/test_cases.py
|
||||
@@ -99,12 +99,36 @@ def test_use_xhtml():
|
||||
assert '<img src="bar" alt="foo" title="title" />' in ret
|
||||
|
||||
|
||||
-def test_block_html():
|
||||
+def test_parse_html():
|
||||
ret = mistune.markdown('<div>**foo**</div>')
|
||||
assert '<strong>' not in ret
|
||||
ret = mistune.markdown('<div>**foo**</div>', parse_html=True)
|
||||
assert '<strong>' in ret
|
||||
|
||||
+ ret = mistune.markdown('<span>**foo**</span>')
|
||||
+ assert '<strong>' not in ret
|
||||
+ ret = mistune.markdown('<span>**foo**</span>', parse_html=True)
|
||||
+ assert '<strong>' in ret
|
||||
+
|
||||
+ ret = mistune.markdown('<span>http://example.com</span>', parse_html=True)
|
||||
+ assert 'href' in ret
|
||||
+ ret = mistune.markdown('<a>http://example.com</a>', parse_html=True)
|
||||
+ assert 'href' not in ret
|
||||
+
|
||||
+
|
||||
+def test_parse_inline_html():
|
||||
+ ret = mistune.markdown('<div>**foo**</div>', parse_inline_html=True)
|
||||
+ assert '<strong>' not in ret
|
||||
+ ret = mistune.markdown('<span>**foo**</span>', parse_inline_html=True)
|
||||
+ assert '<strong>' in ret
|
||||
+
|
||||
+
|
||||
+def test_parse_block_html():
|
||||
+ ret = mistune.markdown('<div>**foo**</div>', parse_block_html=True)
|
||||
+ assert '<strong>' in ret
|
||||
+ ret = mistune.markdown('<span>**foo**</span>', parse_block_html=True)
|
||||
+ assert '<strong>' not in ret
|
||||
+
|
||||
|
||||
def test_trigger_more_cases():
|
||||
markdown = mistune.Markdown(
|
||||
@@ -114,79 +138,3 @@ def test_trigger_more_cases():
|
||||
)
|
||||
ret = markdown.render('foo[^foo]\n\n[^foo]: foo\n\n[^foo]: bar\n')
|
||||
assert 'bar' not in ret
|
||||
-
|
||||
-
|
||||
-def test_custom_lexer():
|
||||
- import copy
|
||||
-
|
||||
- class MyInlineGrammar(mistune.InlineGrammar):
|
||||
- # it would take a while for creating the right regex
|
||||
- wiki_link = re.compile(
|
||||
- r'\[\[' # [[
|
||||
- r'([\s\S]+?\|[\s\S]+?)' # Page 2|Page 2
|
||||
- r'\]\](?!\])' # ]]
|
||||
- )
|
||||
-
|
||||
- class MyInlineLexer(mistune.InlineLexer):
|
||||
- default_rules = copy.copy(mistune.InlineLexer.default_rules)
|
||||
- default_rules.insert(3, 'wiki_link')
|
||||
-
|
||||
- def __init__(self, renderer, rules=None, **kwargs):
|
||||
- if rules is None:
|
||||
- rules = MyInlineGrammar()
|
||||
-
|
||||
- super(MyInlineLexer, self).__init__(renderer, rules, **kwargs)
|
||||
-
|
||||
- def output_wiki_link(self, m):
|
||||
- text = m.group(1)
|
||||
- alt, link = text.split('|')
|
||||
- return '<a href="%s">%s</a>' % (link, alt)
|
||||
-
|
||||
- markdown = mistune.Markdown(inline=MyInlineLexer)
|
||||
- ret = markdown('[[Link Text|Wiki Link]]')
|
||||
- assert '<a href' in ret
|
||||
-
|
||||
-
|
||||
-def test_token_tree():
|
||||
- """Tests a Renderer that returns a list from the placeholder method."""
|
||||
-
|
||||
- class CustomRenderer(mistune.Renderer):
|
||||
- def placeholder(self):
|
||||
- return []
|
||||
-
|
||||
- def __getattribute__(self, name):
|
||||
- """Saves the arguments to each Markdown handling method."""
|
||||
- found = CustomRenderer.__dict__.get(name)
|
||||
- if found:
|
||||
- return object.__getattribute__(self, name)
|
||||
-
|
||||
- def fake_method(*args, **kwargs):
|
||||
- return [(name, args, kwargs)]
|
||||
- return fake_method
|
||||
-
|
||||
- with open(os.path.join(root, 'fixtures', 'data', 'tree.md')) as f:
|
||||
- content = f.read()
|
||||
-
|
||||
- expected = [
|
||||
- ('header', ([('text', ('Title here',), {})], 2, 'Title here'), {}),
|
||||
- ('paragraph', ([('text', ('Some text.',), {})],), {}),
|
||||
- ('paragraph',
|
||||
- ([('text', ('In two paragraphs. And then a list.',), {})],),
|
||||
- {}),
|
||||
- ('list',
|
||||
- ([('list_item', ([('text', ('foo',), {})],), {}),
|
||||
- ('list_item',
|
||||
- ([('text', ('bar',), {}),
|
||||
- ('list',
|
||||
- ([('list_item', ([('text', ('meep',), {})],), {}),
|
||||
- ('list_item', ([('text', ('stuff',), {})],), {})],
|
||||
- True),
|
||||
- {})],),
|
||||
- {})],
|
||||
- False),
|
||||
- {})
|
||||
- ]
|
||||
-
|
||||
- processor = mistune.Markdown(renderer=CustomRenderer())
|
||||
- found = processor.render(content)
|
||||
- assert expected == found, "Expected:\n%r\n\nFound:\n%r" % (expected, found)
|
||||
diff --git a/tests/test_subclassing.py b/tests/test_subclassing.py
|
||||
index 2cebfc0..f0df225 100644
|
||||
--- a/tests/test_subclassing.py
|
||||
+++ b/tests/test_subclassing.py
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
import os
|
||||
import re
|
||||
+import copy
|
||||
import mistune
|
||||
|
||||
root = os.path.dirname(__file__)
|
||||
@@ -73,7 +74,7 @@ class MarkdownWithMath(mistune.Markdown):
|
||||
)
|
||||
|
||||
|
||||
-class CustomRenderer(mistune.Renderer):
|
||||
+class MathRenderer(mistune.Renderer):
|
||||
def block_math(self, text):
|
||||
return '$$%s$$' % text
|
||||
|
||||
@@ -92,7 +93,7 @@ def assert_data(filename):
|
||||
else:
|
||||
text = filename
|
||||
|
||||
- rv = MarkdownWithMath(renderer=CustomRenderer()).render(text)
|
||||
+ rv = MarkdownWithMath(renderer=MathRenderer()).render(text)
|
||||
assert text in rv
|
||||
|
||||
|
||||
@@ -109,3 +110,82 @@ def test_markdown2html_math():
|
||||
def test_math_paragraph():
|
||||
# https://github.com/ipython/ipython/issues/6724
|
||||
assert_data('math-paragraph.md')
|
||||
+
|
||||
+
|
||||
+class WikiInlineGrammar(mistune.InlineGrammar):
|
||||
+ # it would take a while for creating the right regex
|
||||
+ wiki_link = re.compile(
|
||||
+ r'\[\[' # [[
|
||||
+ r'([\s\S]+?\|[\s\S]+?)' # Page 2|Page 2
|
||||
+ r'\]\](?!\])' # ]]
|
||||
+ )
|
||||
+
|
||||
+
|
||||
+class WikiInlineLexer(mistune.InlineLexer):
|
||||
+ default_rules = copy.copy(mistune.InlineLexer.default_rules)
|
||||
+ default_rules.insert(3, 'wiki_link')
|
||||
+
|
||||
+ def __init__(self, renderer, rules=None, **kwargs):
|
||||
+ if rules is None:
|
||||
+ rules = WikiInlineGrammar()
|
||||
+
|
||||
+ super(WikiInlineLexer, self).__init__(renderer, rules, **kwargs)
|
||||
+
|
||||
+ def output_wiki_link(self, m):
|
||||
+ text = m.group(1)
|
||||
+ alt, link = text.split('|')
|
||||
+ return '<a href="%s">%s</a>' % (link, alt)
|
||||
+
|
||||
+
|
||||
+def test_custom_lexer():
|
||||
+ markdown = mistune.Markdown(inline=WikiInlineLexer)
|
||||
+ ret = markdown('[[Link Text|Wiki Link]]')
|
||||
+ assert '<a href' in ret
|
||||
+
|
||||
+
|
||||
+class TokenTreeRenderer(mistune.Renderer):
|
||||
+ # options is required
|
||||
+ options = {}
|
||||
+
|
||||
+ def placeholder(self):
|
||||
+ return []
|
||||
+
|
||||
+ def __getattribute__(self, name):
|
||||
+ """Saves the arguments to each Markdown handling method."""
|
||||
+ found = TokenTreeRenderer.__dict__.get(name)
|
||||
+ if found is not None:
|
||||
+ return object.__getattribute__(self, name)
|
||||
+
|
||||
+ def fake_method(*args, **kwargs):
|
||||
+ return [(name, args, kwargs)]
|
||||
+ return fake_method
|
||||
+
|
||||
+
|
||||
+def test_token_tree():
|
||||
+ """Tests a Renderer that returns a list from the placeholder method."""
|
||||
+ with open(os.path.join(root, 'fixtures', 'data', 'tree.md')) as f:
|
||||
+ content = f.read()
|
||||
+
|
||||
+ expected = [
|
||||
+ ('header', ([('text', ('Title here',), {})], 2, 'Title here'), {}),
|
||||
+ ('paragraph', ([('text', ('Some text.',), {})],), {}),
|
||||
+ ('paragraph',
|
||||
+ ([('text', ('In two paragraphs. And then a list.',), {})],),
|
||||
+ {}),
|
||||
+ ('list',
|
||||
+ ([('list_item', ([('text', ('foo',), {})],), {}),
|
||||
+ ('list_item',
|
||||
+ ([('text', ('bar',), {}),
|
||||
+ ('list',
|
||||
+ ([('list_item', ([('text', ('meep',), {})],), {}),
|
||||
+ ('list_item', ([('text', ('stuff',), {})],), {})],
|
||||
+ True),
|
||||
+ {})],),
|
||||
+ {})],
|
||||
+ False),
|
||||
+ {})
|
||||
+ ]
|
||||
+
|
||||
+ processor = mistune.Markdown(renderer=TokenTreeRenderer())
|
||||
+ found = processor.render(content)
|
||||
+ assert expected == found, "Expected:\n%r\n\nFound:\n%r" % (expected, found)
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/mistune/mistune-0.6-r1.ebuild,v 1.1 2015/06/22 08:24:26 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} pypy pypy3 )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="The fastest markdown parser in pure Python"
|
||||
HOMEPAGE="https://pypi.python.org/pypi/mistune https://github.com/lepture/mistune"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="BSD"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND=""
|
||||
DEPEND="${RDEPEND}
|
||||
dev-python/cython[$(python_gen_usedep 'python*')]
|
||||
test? ( dev-python/nose[${PYTHON_USEDEP}] )
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-inline-html.patch )
|
||||
|
||||
python_test() {
|
||||
nosetests || die
|
||||
}
|
@ -0,0 +1,67 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/pbr/pbr-1.2.0.ebuild,v 1.1 2015/06/22 10:03:03 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Inject some useful and sensible default behaviors into setuptools"
|
||||
HOMEPAGE="https://github.com/openstack-dev/pbr"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="test"
|
||||
|
||||
DEPEND="
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
>=dev-python/coverage-3.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/fixtures-0.3.14[${PYTHON_USEDEP}]
|
||||
>=dev-python/mock-1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
|
||||
>=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
|
||||
!~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
|
||||
<dev-python/sphinx-1.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
|
||||
>=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/testtools-0.9.36[${PYTHON_USEDEP}]
|
||||
!~dev-python/testtools-1.2.0[${PYTHON_USEDEP}]
|
||||
dev-python/virtualenv[${PYTHON_USEDEP}]
|
||||
)"
|
||||
RDEPEND="dev-python/pip[${PYTHON_USEDEP}]"
|
||||
|
||||
# Requ'd for testsuite
|
||||
DISTUTILS_IN_SOURCE_BUILD=1
|
||||
|
||||
# This normally actually belongs here.
|
||||
python_prepare_all() {
|
||||
# This test passes when run within the source and doesn't represent a failure, but rather
|
||||
# a gentoo sandbox constraint
|
||||
# Rm tests that rely upon the package being already installed and fail
|
||||
sed -e s':test_console_script_develop:_&:' \
|
||||
-e s':test_console_script_install:_&:' \
|
||||
-e s':test_sdist_extra_files:_&:' \
|
||||
-e s':test_command_hooks:_&:' \
|
||||
-e s':test_sdist_git_extra_files:_&:' \
|
||||
-i pbr/tests/test_core.py || die
|
||||
sed -e s':test_command_hooks:_&:' \
|
||||
-e s':test_global_setup_hooks:_&:' \
|
||||
-i pbr/tests/test_hooks.py || die
|
||||
einfo "rogue tests disabled"
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
# Note; removed tests pass once package is emerged,
|
||||
# it's the suite's design that breaks form, not the tests' intended purpose
|
||||
testr init || die
|
||||
testr run || die "Testsuite failed under ${EPYTHON}"
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST prompt_toolkit-0.37.tar.gz 113415 SHA256 680f0abab097619e013c75f4fc234f7734ee888a483d9492e326ecd7883c6859 SHA512 872596db85de5a53170033b6ed1a1dd3246044c2a886df0bee642d94353480d2406c6f9f340fb33bd8cef37cd960b1ced88c73d743f5bbce2783f9d95e8c17ad WHIRLPOOL 8993ec2e815d962cc584e3bda24d26989dfd4a8c1e4749f098d4e96a731b587327f8c36c938ff6c1aa0b67cfeb767c8c1af045684829e5ac2bcbf5ba062aecb3
|
||||
DIST prompt_toolkit-0.38.tar.gz 117066 SHA256 6cee2959747580a1f93e3e14ef2826f1d89845d19e5bc32f374c23988e2d5e66 SHA512 6d3bf3da038220eb872aa537d9c469daada969940790745e538e1d215ad50855ef9ceab30992ee7ecb7c43d618d121226dff2a6b720f6ea393239cd34f4a9fea WHIRLPOOL 58a1c3020aecdeb5e6e20404bd4bb736216cdfe0e7c92a443c2ab03c645a3b1a94d529fe1b065a1f0b2610a324f44d46eafe00fc0dda71fd3ab53cddc19ab377
|
||||
DIST prompt_toolkit-0.39.tar.gz 117227 SHA256 8b924453f9a79789608ce72190cf519ccdd7d9e79d7ddf910d2784861f748680 SHA512 85b6a20ddea5a2ac09d8df0b29e96b77f702d1610d0683dfaea5c2dc79e2e4e97fd77bd2b9c306f875d5f888ee08e8dcb3734a56e12bd993448a619507367aa8 WHIRLPOOL d33f861fe0f34e53608e41c94ece5a56988ebcb1dc4ac10a42eb60d66c1de75cf63c0f0ac6604e8395b2ad100487b365ec1c1e1ac09c308bfb81614544c05ee3
|
||||
DIST prompt_toolkit-0.41.tar.gz 119741 SHA256 2aebfa79d78aced3b7fc78a90fb2937db6329d604cc49c4ab248af6d80d21f69 SHA512 1ecb1cd8ae9c26f8f7780150e857a179cb77f6ec6f32da5a319e0324b032ae1ec9ee21f0e059f0a4e46f315b9694214eab883a1ef4446f2334821231907219d8 WHIRLPOOL 37a9d07fabe957327ecf0fe6fa2f82b0ddc99429d38775259d5d7f9249fb740c757e6ccfb4afe40f4700dc4034bfce0ba8cbeda18477ca762513b44afa542a14
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/prompt_toolkit/prompt_toolkit-0.41.ebuild,v 1.1 2015/06/22 09:51:39 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=(python2_7 python3_{3,4} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Building powerful interactive command lines in Python"
|
||||
HOMEPAGE="https://pypi.python.org/pypi/prompt_toolkit/ https://github.com/jonathanslenders/python-prompt-toolkit"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="BSD"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
dev-python/pygments[${PYTHON_USEDEP}]
|
||||
>=dev-python/six-1.8.0[${PYTHON_USEDEP}]
|
||||
dev-python/wcwidth[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
# not contained in tarball
|
||||
RESTRICT="test"
|
||||
|
||||
python_test() {
|
||||
"${PYTHON}" "${S}"/tests/run_tests.py || die
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST ptpython-0.10.tar.gz 20693 SHA256 d4229b8c48e8e0dcb596a3e4983fb00443aa565a7a9c0fdb2d8457424e7309e1 SHA512 7576b541de1ca69e247f15343bbc06a83683ed47fc4a955da95b3afed73b4dcb512988df802750d6620236b46f6bb24eab1d9ff5288606bfa52c05c577091bb6 WHIRLPOOL 486bca6fa38a4352a3071af095adc4d002cd4d8ef6c80d5092789885535514b6d13659cd1792cfd0167b651316d8340e2ce59db167e0182e35cb128872a7482e
|
||||
DIST ptpython-0.11.tar.gz 21759 SHA256 50b66e6544f50b156cbad8afa299df11e39c288dabd618f5b22ebee7776ccab2 SHA512 4762235eedba1e149cb7e2b8bf84c8d4de1281bb2b571484bdc82951da691d84faa0ad90fa82104e2adfc4074f4c21aaffb06edab148be5341086e4dfb2fbd72 WHIRLPOOL 41eab5ff26562596bd2d71bc3608d07b9d6b290914878d0b1c743782e64cd071fa7945211dbf77b117f906220f74b2a3ecc999e97bcdd06f5b68b5a5f843f630
|
||||
DIST ptpython-0.12.tar.gz 21761 SHA256 a6e1f0499c428f37bb5227408dc5534bda2bb6d154cd5964ab94cf398f62c71e SHA512 9a418b80257cf9c2828b9484f415c597e0f81acfa583292f0b63199d8f6d0a4191739ec4f9ff34b7258909d849aa81af4fac026372262999c48b3e0cfb014682 WHIRLPOOL 402c4bb24364ff26aa6b9de05f847dc319e17014c4822bbcbc5d99241844556e382875e498a66f75d1ffd23ccd353a431419fa6589877c2c46bb07304c809a13
|
||||
DIST ptpython-0.15.tar.gz 26567 SHA256 6aa11f0393ce34b6e5376263b6a07c910032267b0c3d12e0c913a510882d4a40 SHA512 b77824c20fde7046ddd9c10cf818aa7454ad9c4b116b1c48da7a214dbeb2634193eaaba6a6aa757b82e6003f01fa31bef739fb8a063856caaf647942bea36a78 WHIRLPOOL 535ff8e4679ff2ceae24f8278aae8e31cb1feebc478ca6c13f82b367a425948d7b44afde52b560925e9cdca87d016772bbfc3dffe170ec9c25c35c8768ff7c40
|
||||
|
@ -0,0 +1,31 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/ptpython/ptpython-0.15.ebuild,v 1.1 2015/06/22 09:52:26 jlec Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 python3_{3,4} )
|
||||
|
||||
inherit distutils-r1 eutils
|
||||
|
||||
DESCRIPTION="Python REPL build on top of prompt_toolkit"
|
||||
HOMEPAGE="https://pypi.python.org/pypi/ptpython/ https://github.com/jonathanslenders/ptpython"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="BSD"
|
||||
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/prompt_toolkit-0.41[${PYTHON_USEDEP}]
|
||||
>=dev-python/jedi-0.9.0[${PYTHON_USEDEP}]
|
||||
dev-python/docopt[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "ipython enhanced version" dev-python/ipython
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST pyasn1-0.1.6.tar.gz 67230 SHA256 a7c51782cea4d823454915ad46a580fe53b9adfe6514560d4b9cb590e002be35 SHA512 8be7438589aa187f6eaedc11426abb7b97ef13212453ff2113ff1a9e307cc7dc2843a3fb3e33dd0d2b445d472935c630e5ab69414aaa378bdd89e1c09a013a03 WHIRLPOOL 5f7debc7bab9259c554897877210f90c27b1b4f3383628424c864b761e889438ce20c3e9e1766f5991ca1824226e813c526f8a9ea6cfd554c313ebff2c01f917
|
||||
DIST pyasn1-0.1.7.tar.gz 68120 SHA256 e4f81d53c533f6bd9526b047f047f7b101c24ab17339c1a7ad8f98b25c101eab SHA512 af2ac05fb7e18b25bd125f92bd7c8389a00c18018c1ff48d94c196f5ab41b09c8991d2e326d492cfaed755b06cd4c75d88719b4a390bdab6d84fe3c8791620af WHIRLPOOL 902b80616cecbf3549417c95ec09c060c6a038f95bd71ce2f9a5c0cd1e4cfd4e9157252abedec3002588eaba5a3cecd7100138c952a5e8f8b7e245b4f82d5c7c
|
||||
DIST pyasn1-0.1.8.tar.gz 75676 SHA256 5d33be7ca0ec5997d76d29ea4c33b65c00c0231407fff975199d7f40530b8347 SHA512 0a0b9b8018ae80a0e0d84ea3a4f217951bf42dce909a354c97890d4b4fc4f49b19d9d0757103ac9002c17c6c622c8e8d66e1f8242b8545a7da455ef3583acdfa WHIRLPOOL db46e06ef9a6b5858c07f1c154657f998b509c457395b4f2e6286ea90e1b16346e24d92a8d666b5db4216e35129f2d6be13c2fc11aae2d9936163bff3b1400eb
|
||||
|
@ -0,0 +1,59 @@
|
||||
From 6c2c1057d2780c079218fe988d1d5243eefec159 Mon Sep 17 00:00:00 2001
|
||||
From: Konstantin Lopuhin <kostia.lopuhin@gmail.com>
|
||||
Date: Wed, 18 Jun 2014 12:43:04 +0400
|
||||
Subject: [PATCH] fix parsing of bad dimensions
|
||||
|
||||
---
|
||||
xlrd/xlsx.py | 24 ++++++++++++++++++------
|
||||
1 file changed, 18 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/xlrd/xlsx.py b/xlrd/xlsx.py
|
||||
index 53fbb89..763df0c 100644
|
||||
--- a/xlrd/xlsx.py
|
||||
+++ b/xlrd/xlsx.py
|
||||
@@ -73,7 +73,8 @@ def augment_keys(adict, uri):
|
||||
_UPPERCASE_1_REL_INDEX[_x] = 0
|
||||
del _x
|
||||
|
||||
-def cell_name_to_rowx_colx(cell_name, letter_value=_UPPERCASE_1_REL_INDEX):
|
||||
+def cell_name_to_rowx_colx(cell_name, letter_value=_UPPERCASE_1_REL_INDEX,
|
||||
+ allow_no_col=False):
|
||||
# Extract column index from cell name
|
||||
# A<row number> => 0, Z =>25, AA => 26, XFD => 16383
|
||||
colx = 0
|
||||
@@ -85,9 +86,18 @@ def cell_name_to_rowx_colx(cell_name, letter_value=_UPPERCASE_1_REL_INDEX):
|
||||
if lv:
|
||||
colx = colx * 26 + lv
|
||||
else: # start of row number; can't be '0'
|
||||
- colx = colx - 1
|
||||
- assert 0 <= colx < X12_MAX_COLS
|
||||
- break
|
||||
+ if charx == 0:
|
||||
+ # there was no col marker
|
||||
+ if allow_no_col:
|
||||
+ colx = None
|
||||
+ break
|
||||
+ else:
|
||||
+ raise Exception(
|
||||
+ 'Missing col in cell name %r', cell_name)
|
||||
+ else:
|
||||
+ colx = colx - 1
|
||||
+ assert 0 <= colx < X12_MAX_COLS
|
||||
+ break
|
||||
except KeyError:
|
||||
raise Exception('Unexpected character %r in cell name %r' % (c, cell_name))
|
||||
rowx = int(cell_name[charx:]) - 1
|
||||
@@ -562,9 +572,11 @@ def do_dimension(self, elem):
|
||||
if ref:
|
||||
# print >> self.logfile, "dimension: ref=%r" % ref
|
||||
last_cell_ref = ref.split(':')[-1] # example: "Z99"
|
||||
- rowx, colx = cell_name_to_rowx_colx(last_cell_ref)
|
||||
+ rowx, colx = cell_name_to_rowx_colx(
|
||||
+ last_cell_ref, allow_no_col=True)
|
||||
self.sheet._dimnrows = rowx + 1
|
||||
- self.sheet._dimncols = colx + 1
|
||||
+ if colx is not None:
|
||||
+ self.sheet._dimncols = colx + 1
|
||||
|
||||
def do_merge_cell(self, elem):
|
||||
# The ref attribute should be a cell range like "B1:D5".
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/xlrd/xlrd-0.9.3-r1.ebuild,v 1.1 2015/06/22 12:56:52 jlec Exp $
|
||||
|
||||
EAPI="5"
|
||||
PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Library for developers to extract data from Microsoft Excel (tm) spreadsheet files"
|
||||
HOMEPAGE="http://www.python-excel.org/
|
||||
https://github.com/python-excel/xlrd/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~ppc-aix ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
|
||||
|
||||
PATCHES=( "${FILESDIR}"/${P}-column.patch )
|
||||
|
||||
python_prepare_all() {
|
||||
# Remove this if examples get reintroduced
|
||||
sed -i -e "s/test_names_demo/_&/" tests/test_open_workbook.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
"${PYTHON}" -m unittest discover || die "Test failed with ${EPYTHON}"
|
||||
}
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-ruby/sprockets/sprockets-3.2.0.ebuild,v 1.1 2015/06/22 05:37:34 graaff Exp $
|
||||
|
||||
EAPI=5
|
||||
USE_RUBY="ruby19 ruby20 ruby21"
|
||||
|
||||
RUBY_FAKEGEM_TASK_DOC=""
|
||||
RUBY_FAKEGEM_EXTRADOC="README.md"
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="sprockets.gemspec"
|
||||
|
||||
inherit ruby-fakegem versionator
|
||||
|
||||
DESCRIPTION="Ruby library for compiling and serving web assets"
|
||||
HOMEPAGE="https://github.com/rails/sprockets"
|
||||
SRC_URI="https://github.com/rails/sprockets/archive/v${PV}.tar.gz -> ${P}-git.tgz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="$(get_version_component_range 1)"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
IUSE=""
|
||||
|
||||
ruby_add_rdepend "
|
||||
=dev-ruby/rack-1*:*
|
||||
!!<dev-ruby/sprockets-2.12.3-r1:2"
|
||||
|
||||
ruby_add_bdepend "test? (
|
||||
dev-ruby/json
|
||||
dev-ruby/rack-test
|
||||
=dev-ruby/coffee-script-2*
|
||||
=dev-ruby/execjs-2*
|
||||
=dev-ruby/sass-3* >=dev-ruby/sass-3.1
|
||||
dev-ruby/uglifier
|
||||
)"
|
||||
|
||||
all_ruby_prepare() {
|
||||
# Avoid tests for template types that we currently don't package:
|
||||
# eco and ejs.
|
||||
sed -i -e '/eco templates/,/end/ s:^:#:' \
|
||||
-e '/ejs templates/,/end/ s:^:#:' test/test_environment.rb || die
|
||||
sed -i -e '/.ejs/ s:^:#:' test/test_asset.rb || die
|
||||
rm -f test/test_require.rb test/test_{closure,eco,ejs,yui}_{compressor,processor}.rb || die
|
||||
}
|
||||
|
||||
each_ruby_prepare() {
|
||||
sed -i -e "s:ruby:${RUBY}:" test/test_sprocketize.rb || die
|
||||
}
|
||||
|
||||
each_ruby_test() {
|
||||
# Make sure we have completely separate copies. Hardlinks won't work
|
||||
# for this test suite.
|
||||
cp -R test test-new || die
|
||||
rm -rf test || die
|
||||
mv test-new test || die
|
||||
|
||||
each_fakegem_test
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-ruby/tins/tins-1.5.4.ebuild,v 1.1 2015/06/22 09:38:02 mrueg Exp $
|
||||
|
||||
EAPI=5
|
||||
# Ruby 1.9 fails tests
|
||||
USE_RUBY="ruby20 ruby21 ruby22"
|
||||
|
||||
RUBY_FAKEGEM_RECIPE_TEST="none"
|
||||
|
||||
RUBY_FAKEGEM_TASK_DOC=""
|
||||
RUBY_FAKEGEM_EXTRADOC="README.md"
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="All the stuff that isn't good enough for a real library"
|
||||
HOMEPAGE="https://github.com/flori/tins"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
|
||||
|
||||
each_ruby_test() {
|
||||
ruby-ng_testrb-2 -Ilib tests/*_test.rb
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
exp_clib.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/exp_clib.c b/exp_clib.c
|
||||
index 172c05e..c86dda4 100644
|
||||
--- a/exp_clib.c
|
||||
+++ b/exp_clib.c
|
||||
@@ -1476,8 +1476,8 @@ expDiagLogU(str)
|
||||
char *str;
|
||||
{
|
||||
if (exp_is_debugging) {
|
||||
- fprintf(stderr,str);
|
||||
- if (exp_logfile) fprintf(exp_logfile,str);
|
||||
+ fprintf(stderr,"%s", str);
|
||||
+ if (exp_logfile) fprintf(exp_logfile,"%s", str);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,139 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-util/coccinelle/coccinelle-1.0.1.ebuild,v 1.1 2015/06/22 08:02:35 aballier Exp $
|
||||
|
||||
EAPI="5"
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit multilib eutils python-single-r1 bash-completion-r1 elisp-common autotools
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
DESCRIPTION="Program matching and transformation engine"
|
||||
HOMEPAGE="http://coccinelle.lip6.fr/"
|
||||
SRC_URI="http://coccinelle.lip6.fr/distrib/${MY_P}.tgz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="doc emacs ocaml +ocamlopt pcre python test vim-syntax"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
# ocaml enables ocaml scripting (uses findlib)
|
||||
CDEPEND=">=dev-lang/ocaml-3.12:=[ocamlopt?]
|
||||
dev-ml/sexplib:=[ocamlopt?]
|
||||
dev-ml/menhir:=[ocamlopt?]
|
||||
|| ( dev-ml/camlp4:=[ocamlopt?] <dev-lang/ocaml-4.02.0 )
|
||||
dev-ml/parmap:=[ocamlopt?]
|
||||
emacs? ( virtual/emacs )
|
||||
ocaml? ( dev-ml/findlib:= )
|
||||
pcre? ( dev-ml/pcre-ocaml:=[ocamlopt?] )
|
||||
python? ( ${PYTHON_DEPS} )"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
|
||||
|
||||
# dev-texlive/texlive-fontsextra contains 'ifsym.sty'
|
||||
DEPEND="${CDEPEND}
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
virtual/latex-base
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-fontsextra
|
||||
)"
|
||||
|
||||
REQUIRED_USE="test? ( ocaml python )"
|
||||
|
||||
DOCS=( authors.txt bugs.txt changes.txt credits.txt readme.txt )
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
SITEFILE=50coccinelle-gentoo.el
|
||||
|
||||
pkg_setup() {
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use python ; then
|
||||
# fix python install location
|
||||
sed -e "s:\$(SHAREDIR)/python:$(python_get_sitedir):" \
|
||||
-e "s:PYTHON_TARGET:PYTHON_INSTALL_TARGET:" \
|
||||
-i Makefile || die
|
||||
fi
|
||||
|
||||
sed -i "s:^SHAREDIR=.*:SHAREDIR=/usr/$(get_libdir)/ocaml/${PN}/:" scripts/spatch.sh.in || die
|
||||
|
||||
# This is regenerated by menhir, bundled version does not build with latest
|
||||
# one...
|
||||
rm -f parsing_cocci/parser_cocci_menhir.ml
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-1.0.0_rc16-findtool.patch
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_enable python) \
|
||||
$(use_enable ocaml) \
|
||||
$(use_enable pcre) \
|
||||
$(use_enable pcre pcre-syntax)
|
||||
|
||||
sed -e "s:^LIBDIR=.*:LIBDIR=/usr/$(get_libdir)/ocaml/stublibs/:" \
|
||||
-e "s:^SHAREDIR=.*:SHAREDIR=/usr/$(get_libdir)/ocaml/${PN}/:" \
|
||||
-i Makefile.config || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake depend
|
||||
emake
|
||||
|
||||
use ocamlopt && emake opt
|
||||
|
||||
if use doc ; then
|
||||
VARTEXFONTS="${T}"/fonts emake docs
|
||||
fi
|
||||
|
||||
if use emacs ; then
|
||||
elisp-compile editors/emacs/cocci.el || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
source env.sh # needed for built in-place python plugin
|
||||
./spatch standard.h -parse_c -dir tests/ || die
|
||||
yes | ./spatch -iso_file standard.iso -macro_file_builtins standard.h -testall || die
|
||||
if use ocamlopt ; then
|
||||
./spatch.opt -iso_file standard.iso -macro_file_builtins standard.h -testall || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
use doc && dodoc docs/manual/*.pdf
|
||||
newbashcomp scripts/spatch.bash_completion spatch
|
||||
|
||||
if use emacs ; then
|
||||
elisp-install ${PN} editors/emacs/*
|
||||
elisp-site-file-install "${FILESDIR}"/${SITEFILE}
|
||||
fi
|
||||
|
||||
if use vim-syntax ; then
|
||||
newdoc editors/vim/README README-vim
|
||||
rm editors/vim/README || die
|
||||
insinto /usr/share/vim/vimfiles
|
||||
doins -r editors/vim/*
|
||||
fi
|
||||
|
||||
use python && python_optimize
|
||||
|
||||
export STRIP_MASK='*/coccinelle/spatch'
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use emacs && elisp-site-regen
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use emacs && elisp-site-regen
|
||||
}
|
@ -1,16 +1,16 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/kde-apps/kdeadmin-meta/kdeadmin-meta-4.14.3.ebuild,v 1.1 2015/06/04 18:44:39 kensington Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/kde-apps/kdeadmin-meta/kdeadmin-meta-4.14.3.ebuild,v 1.2 2015/06/22 12:58:26 johu Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit kde4-meta-pkg
|
||||
|
||||
DESCRIPTION="KDE administration tools - merge this to pull in all kdeadmin-derived packages"
|
||||
KEYWORDS="amd64 ~arm ppc ppc64 x86 ~amd64-linux ~x86-linux"
|
||||
IUSE=""
|
||||
IUSE="+cron"
|
||||
|
||||
RDEPEND="
|
||||
$(add_kdeapps_dep kcron)
|
||||
$(add_kdeapps_dep ksystemlog)
|
||||
$(add_kdeapps_dep kuser)
|
||||
cron? ( $(add_kdeapps_dep kcron) )
|
||||
"
|
||||
|
@ -0,0 +1,152 @@
|
||||
commit 33a17ba0104cd94f2e33a3ac007b300553cdb417
|
||||
Author: Valentin Rusu <kde@rusu.info>
|
||||
Date: Mon Feb 16 22:44:07 2015 +0100
|
||||
|
||||
Fix for the random wallet open failure when updating
|
||||
|
||||
The problem seems to be caused by the use of BackendPersistHandler
|
||||
singleton when the user has several wallets on his system and not
|
||||
all of them have been updated to the new schema.
|
||||
|
||||
BUG: 343718
|
||||
|
||||
diff --git a/kwalletd/backend/backendpersisthandler.cpp b/kwalletd/backend/backendpersisthandler.cpp
|
||||
index 5c321c9..b7f63f8 100644
|
||||
--- a/kwalletd/backend/backendpersisthandler.cpp
|
||||
+++ b/kwalletd/backend/backendpersisthandler.cpp
|
||||
@@ -140,25 +140,14 @@ static int getRandomBlock(QByteArray& randBlock) {
|
||||
#endif
|
||||
}
|
||||
|
||||
-
|
||||
-
|
||||
-static BlowfishPersistHandler *blowfishHandler =0;
|
||||
-#ifdef HAVE_QGPGME
|
||||
-static GpgPersistHandler *gpgHandler =0;
|
||||
-#endif // HAVE_QGPGME
|
||||
-
|
||||
BackendPersistHandler *BackendPersistHandler::getPersistHandler(BackendCipherType cipherType)
|
||||
{
|
||||
switch (cipherType){
|
||||
case BACKEND_CIPHER_BLOWFISH:
|
||||
- if (0 == blowfishHandler)
|
||||
- blowfishHandler = new BlowfishPersistHandler;
|
||||
- return blowfishHandler;
|
||||
+ return new BlowfishPersistHandler;
|
||||
#ifdef HAVE_QGPGME
|
||||
case BACKEND_CIPHER_GPG:
|
||||
- if (0 == gpgHandler)
|
||||
- gpgHandler = new GpgPersistHandler;
|
||||
- return gpgHandler;
|
||||
+ return new GpgPersistHandler;
|
||||
#endif // HAVE_QGPGME
|
||||
default:
|
||||
Q_ASSERT(0);
|
||||
@@ -170,21 +159,16 @@ BackendPersistHandler *BackendPersistHandler::getPersistHandler(char magicBuf[12
|
||||
{
|
||||
if ((magicBuf[2] == KWALLET_CIPHER_BLOWFISH_ECB || magicBuf[2] == KWALLET_CIPHER_BLOWFISH_CBC) &&
|
||||
(magicBuf[3] == KWALLET_HASH_SHA1 || magicBuf[3] == KWALLET_HASH_PBKDF2_SHA512)) {
|
||||
- if (0 == blowfishHandler) {
|
||||
- bool useECBforReading = magicBuf[2] == KWALLET_CIPHER_BLOWFISH_ECB;
|
||||
- if (useECBforReading) {
|
||||
- qDebug() << "this wallet uses ECB encryption. It'll be converted to CBC on next save.";
|
||||
- }
|
||||
- blowfishHandler = new BlowfishPersistHandler(useECBforReading);
|
||||
+ bool useECBforReading = magicBuf[2] == KWALLET_CIPHER_BLOWFISH_ECB;
|
||||
+ if (useECBforReading) {
|
||||
+ qDebug() << "this wallet uses ECB encryption. It'll be converted to CBC on next save.";
|
||||
}
|
||||
- return blowfishHandler;
|
||||
+ return new BlowfishPersistHandler(useECBforReading);
|
||||
}
|
||||
#ifdef HAVE_QGPGME
|
||||
if (magicBuf[2] == KWALLET_CIPHER_GPG &&
|
||||
magicBuf[3] == 0) {
|
||||
- if (0 == gpgHandler)
|
||||
- gpgHandler = new GpgPersistHandler;
|
||||
- return gpgHandler;
|
||||
+ return new GpgPersistHandler;
|
||||
}
|
||||
#endif // HAVE_QGPGME
|
||||
return 0; // unknown cipher or hash
|
||||
diff --git a/kwalletd/backend/kwalletbackend.cc b/kwalletd/backend/kwalletbackend.cc
|
||||
index 7d439e3..9240103 100644
|
||||
--- a/kwalletd/backend/kwalletbackend.cc
|
||||
+++ b/kwalletd/backend/kwalletbackend.cc
|
||||
@@ -266,7 +266,7 @@ int Backend::open(const QByteArray& password, WId w) {
|
||||
if (_open) {
|
||||
return -255; // already open
|
||||
}
|
||||
-
|
||||
+
|
||||
setPassword(password);
|
||||
return openInternal(w);
|
||||
}
|
||||
@@ -287,20 +287,20 @@ int Backend::openPreHashed(const QByteArray &passwordHash)
|
||||
if (_open) {
|
||||
return -255; // already open
|
||||
}
|
||||
-
|
||||
+
|
||||
// check the password hash for correct size (currently fixed)
|
||||
if (passwordHash.size() != 20 && passwordHash.size() != 40 &&
|
||||
passwordHash.size() != 56) {
|
||||
return -42; // unsupported encryption scheme
|
||||
}
|
||||
-
|
||||
+
|
||||
_passhash = passwordHash;
|
||||
_newPassHash = passwordHash;
|
||||
_useNewHash = true;//Only new hash is supported
|
||||
|
||||
return openInternal();
|
||||
}
|
||||
-
|
||||
+
|
||||
int Backend::openInternal(WId w)
|
||||
{
|
||||
// No wallet existed. Let's create it.
|
||||
@@ -350,7 +350,9 @@ int Backend::openInternal(WId w)
|
||||
if (0 == phandler){
|
||||
return 42; // unknown cipher or hash
|
||||
}
|
||||
- return phandler->read(this, db, w);
|
||||
+ int result = phandler->read(this, db, w);
|
||||
+ delete phandler;
|
||||
+ return result;
|
||||
}
|
||||
|
||||
void Backend::swapToNewHash()
|
||||
@@ -427,6 +429,7 @@ int Backend::sync(WId w) {
|
||||
notification->setText( i18n("Failed to sync wallet <b>%1</b> to disk. Error codes are:\nRC <b>%2</b>\nSF <b>%3</b>. Please file a BUG report using this information to bugs.kde.org").arg(_name).arg(rc).arg(sf.errorString()) );
|
||||
notification->sendEvent();
|
||||
}
|
||||
+ delete phandler;
|
||||
return rc;
|
||||
}
|
||||
|
||||
@@ -439,7 +442,7 @@ int Backend::close(bool save) {
|
||||
return rc;
|
||||
}
|
||||
}
|
||||
-
|
||||
+
|
||||
// do the actual close
|
||||
for (FolderMap::ConstIterator i = _entries.constBegin(); i != _entries.constEnd(); ++i) {
|
||||
for (EntryMap::ConstIterator j = i.value().constBegin(); j != i.value().constEnd(); ++j) {
|
||||
@@ -447,13 +450,13 @@ int Backend::close(bool save) {
|
||||
}
|
||||
}
|
||||
_entries.clear();
|
||||
-
|
||||
+
|
||||
// empty the password hash
|
||||
_passhash.fill(0);
|
||||
_newPassHash.fill(0);
|
||||
|
||||
_open = false;
|
||||
-
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
@ -0,0 +1,37 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/kde-apps/kwalletd/kwalletd-4.14.3-r2.ebuild,v 1.1 2015/06/22 14:55:08 johu Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
KMNAME="kde-runtime"
|
||||
inherit kde4-meta
|
||||
|
||||
DESCRIPTION="KDE Password Server"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
|
||||
IUSE="debug gpg"
|
||||
|
||||
DEPEND="
|
||||
gpg? (
|
||||
app-crypt/gpgme
|
||||
$(add_kdebase_dep kdepimlibs)
|
||||
)
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
RESTRICT="test"
|
||||
# testpamopen crashes with a buffer overflow (__fortify_fail)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-CVE-2013-7252.patch"
|
||||
"${FILESDIR}/${P}-fix-random-open.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
$(cmake-utils_use_find_package gpg Gpgme)
|
||||
$(cmake-utils_use_find_package gpg QGpgme)
|
||||
)
|
||||
|
||||
kde4-base_src_configure
|
||||
}
|
@ -1,4 +1,2 @@
|
||||
DIST lxpanel-0.5.12.tar.gz 2048801 SHA256 11cfe76f6241bbac556e57a6efc079b6e10dceea76a8bdaf4c749afdb81d15ab SHA512 ef491671d241c87039c402a7d7668f1108aec861a6b421ccdae3549ab576db1f79007b15787153445df4cef0cc86f1f0ddd35d14481d06de884df2bcdfa1d1bc WHIRLPOOL ce149c5f2167bdf1cf94bc04bae4a4b26334dcc8cdd39bbb12174effc34625dc32806f584806e9f2ff8ba65c51c4d137fc9ad1dd19748776c5b55c7333bea88d
|
||||
DIST lxpanel-0.6.1.tar.gz 2094946 SHA256 a16a21b2186218c70ed98dc7875c54d6bb12ae7271825ff5060feb8d2a4e86cb SHA512 a0a67cad6899c286d69bc2b10b41bc277217b0452fea4e4be3bb8d68f524c6f4b878594961ad3acd187e90b3e96ff0aa0c97018c7bd5b198df64761c8378daa3 WHIRLPOOL 4ce95825f4cd647e4abeb3852192a1373a42a68cd30d50bde5bd810a48bf574b371d763a3d3a6c91d4a4c945eeec668ec56b42c6c8db5c26a3721eb21193725b
|
||||
DIST lxpanel-0.7.0.tar.xz 1479456 SHA256 bd010d13b1627335f45be1755f7f260dc439c2cfbce942bc36705fa2cffd0b53 SHA512 396147a24e852dd7288f99281116c797df4dbb1912925a6b4403ffe74bb8e3d821f7cd96965bedb2db9aff2d1ca3ae89be6e5712df04353a69a9cca5b03589aa WHIRLPOOL a5e4394e198b29bffa834b789bf34332e617837f0ebea0ea29bf595100c43aeb7d0a7698bbedb739dc058433462e1df661b41537f49904b77a4e7663360e45af
|
||||
DIST lxpanel-0.8.1.tar.xz 1485612 SHA256 c657eb049a0f59e7b2d1ad6cb621c272833b765705c19089e48b3c248351b1e0 SHA512 cebad5e9399618adcc47ad0f2542bd57ce6cd707d65e9f1f67e2a435607e91e948c14102eb5534bb8d60a964277ef98658ec8d7a0109121a4b4f6067b385e39d WHIRLPOOL 8f721f6d81a89f35a2a44e33e0faaca2a1e956d1b826a11f85e3586721238c92a299336c35dcd876d3e98a26691255d9d8118828d5dbd124fd5ffc9367d23629
|
||||
|
@ -1,13 +0,0 @@
|
||||
Index: lxpanel-0.5.9/configure.ac
|
||||
===================================================================
|
||||
--- lxpanel-0.5.9.orig/configure.ac
|
||||
+++ lxpanel-0.5.9/configure.ac
|
||||
@@ -79,7 +79,7 @@ PKG_CHECK_MODULES(X11, [$pkg_modules])
|
||||
AC_SUBST(X11_LIBS)
|
||||
|
||||
pkg_modules="libwnck-1.0"
|
||||
-PKG_CHECK_MODULES(WNCK, [$pkg_modules])
|
||||
+PKG_CHECK_MODULES(WNCK, [$pkg_modules], [:], [:])
|
||||
AC_SUBST(WNCK_CFLAGS)
|
||||
AC_SUBST(WNCK_LIBS)
|
||||
|
@ -1,66 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/lxde-base/lxpanel/lxpanel-0.5.12.ebuild,v 1.7 2013/03/26 18:13:57 ago Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit autotools eutils
|
||||
|
||||
DESCRIPTION="Lightweight X11 desktop panel for LXDE"
|
||||
HOMEPAGE="http://lxde.org/"
|
||||
SRC_URI="mirror://sourceforge/lxde/LXPanel%20%28desktop%20panel%29/LXPanel%20${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha amd64 arm ppc x86 ~x86-interix ~amd64-linux ~arm-linux ~x86-linux"
|
||||
SLOT="0"
|
||||
IUSE="+alsa wifi"
|
||||
RESTRICT="test" # bug 249598
|
||||
|
||||
RDEPEND="x11-libs/gtk+:2
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXpm
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/libX11
|
||||
lxde-base/lxmenu-data
|
||||
lxde-base/menu-cache
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
wifi? ( net-wireless/wireless-tools )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
sys-devel/gettext"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-0.5.9-sandbox.patch
|
||||
#bug #415595
|
||||
epatch "${FILESDIR}"/${PN}-0.5.9-libwnck-check.patch
|
||||
#bug #420583
|
||||
sed -i "s:-Werror::" configure.ac || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local plugins="netstatus,volume,cpu deskno,batt, \
|
||||
kbled,xkb,thermal,cpufreq,monitors"
|
||||
# wnckpager disabled per bug #415519
|
||||
use wifi && plugins+=",netstat"
|
||||
use alsa && plugins+=",volumealsa"
|
||||
[[ ${CHOST} == *-interix* ]] && plugins=deskno,kbled,xkb
|
||||
|
||||
econf $(use_enable alsa) --with-x --with-plugins="${plugins}"
|
||||
# the gtk+ dep already pulls in libX11, so we might as well hardcode with-x
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" install
|
||||
dodoc AUTHORS ChangeLog README
|
||||
|
||||
# Get rid of the .la files.
|
||||
find "${D}" -name '*.la' -delete
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "If you have problems with broken icons shown in the main panel,"
|
||||
elog "you will have to configure panel settings via its menu."
|
||||
elog "This will not be an issue with first time installations."
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/lxde-base/lxpanel/lxpanel-0.6.1.ebuild,v 1.1 2013/09/18 19:09:38 hwoarang Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit autotools eutils readme.gentoo
|
||||
|
||||
DESCRIPTION="Lightweight X11 desktop panel for LXDE"
|
||||
HOMEPAGE="http://lxde.org/"
|
||||
SRC_URI="mirror://sourceforge/lxde/LXPanel%20%28desktop%20panel%29/LXPanel%20${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~x86 ~x86-interix ~amd64-linux ~arm-linux ~x86-linux"
|
||||
SLOT="0"
|
||||
IUSE="+alsa wifi"
|
||||
RESTRICT="test" # bug 249598
|
||||
|
||||
RDEPEND="x11-libs/gtk+:2
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXpm
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/libX11
|
||||
lxde-base/lxmenu-data
|
||||
lxde-base/menu-cache
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
wifi? ( net-wireless/wireless-tools )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
sys-devel/gettext"
|
||||
|
||||
DOC_CONTENTS="If you have problems with broken icons shown in the main panel,
|
||||
you will have to configure panel settings via its menu.
|
||||
This will not be an issue with first time installations."
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-0.5.9-sandbox.patch
|
||||
#bug #415595
|
||||
epatch "${FILESDIR}"/${PN}-0.5.9-libwnck-check.patch
|
||||
#bug #420583
|
||||
sed -i "s:-Werror::" configure.ac || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local plugins="netstatus,volume,cpu,deskno,batt, \
|
||||
kbled,xkb,thermal,cpufreq,monitors"
|
||||
|
||||
# wnckpager disabled per bug #415519
|
||||
use wifi && plugins+=",netstat"
|
||||
use alsa && plugins+=",volumealsa"
|
||||
[[ ${CHOST} == *-interix* ]] && plugins=deskno,kbled,xkb
|
||||
|
||||
econf $(use_enable alsa) --with-x --with-plugins="${plugins}"
|
||||
# the gtk+ dep already pulls in libX11, so we might as well hardcode with-x
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" install
|
||||
dodoc AUTHORS ChangeLog README
|
||||
|
||||
# Get rid of the .la files.
|
||||
find "${D}" -name '*.la' -delete
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/lxde-base/lxpanel/lxpanel-0.7.0.ebuild,v 1.1 2014/09/06 09:03:42 hwoarang Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit autotools eutils readme.gentoo versionator
|
||||
|
||||
MAJOR_VER="$(get_version_component_range 1-2)"
|
||||
|
||||
DESCRIPTION="Lightweight X11 desktop panel for LXDE"
|
||||
HOMEPAGE="http://lxde.org/"
|
||||
SRC_URI="mirror://sourceforge/lxde/LXPanel%20%28desktop%20panel%29/LXPanel%20${MAJOR_VER}.x/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~x86 ~x86-interix ~amd64-linux ~arm-linux ~x86-linux"
|
||||
SLOT="0"
|
||||
IUSE="+alsa wifi"
|
||||
RESTRICT="test" # bug 249598
|
||||
|
||||
RDEPEND="x11-libs/gtk+:2
|
||||
x11-libs/libwnck:1
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXpm
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/libX11
|
||||
lxde-base/lxmenu-data
|
||||
lxde-base/menu-cache
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
wifi? ( net-wireless/wireless-tools )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
sys-devel/gettext"
|
||||
|
||||
DOC_CONTENTS="If you have problems with broken icons shown in the main panel,
|
||||
you will have to configure panel settings via its menu.
|
||||
This will not be an issue with first time installations."
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-0.5.9-sandbox.patch
|
||||
#bug #415595
|
||||
sed -i "s:-Werror::" configure.ac || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local plugins="netstatus,volume,cpu,deskno,batt, \
|
||||
kbled,xkb,thermal,cpufreq,monitors"
|
||||
|
||||
use wifi && plugins+=",netstat"
|
||||
use alsa && plugins+=",volumealsa"
|
||||
[[ ${CHOST} == *-interix* ]] && plugins=deskno,kbled,xkb
|
||||
|
||||
econf $(use_enable alsa) --with-x --with-plugins="${plugins}"
|
||||
# the gtk+ dep already pulls in libX11, so we might as well hardcode with-x
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" install
|
||||
dodoc AUTHORS ChangeLog README
|
||||
|
||||
# Get rid of the .la files.
|
||||
find "${D}" -name '*.la' -delete
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
DIST exim-4.84.tar.bz2 1761790 SHA256 78ea22be87fb6df880e7fd482f3bec9ef6ceca0c9dedd50f8a26cae0b38b9e9c SHA512 3cd41af6d57e5f0377fc93367753eae6cb6bf835803e8608c44e1da5acefce1ed8886f4fe7536950de072bfed6e927afe1536c1e6466cf3121dd352b69a68039 WHIRLPOOL 9e840aa6afa0db68455b4ab458706eedd7ea57b084999c9e85eaaec0530ed93958731d934ff1d7830d9b5cd086e36cb56dc8a2f78dad85bdba9ae6573510e840
|
||||
DIST exim-4.85.tar.bz2 1784150 SHA256 13211f2bbc5400d095a9b4be075eb1347e0d98676fdfe4be8a3b4d56281daaa4 SHA512 2c5846528ee98e4aff5dbabe49dfa5ba6753fa64154b9671a7849db8a17773917fe13bcb9e5f732c43d7479debfadd8012b8650823eb12504a6b1b28be456161 WHIRLPOOL 4057cd745f12ff62e956838406544060d3d2d7383027959f3c1ca12eff43bddb9be63e284767245b271e53bef92596c1241f5e90e9ed611d02e95b7a30adc7c8
|
||||
DIST exim-4.86_RC1.tar.bz2 1810243 SHA256 19898fdd1cf379dfb0de543cb1f894771e91c0d76ea6703465c13fe78305c161 SHA512 4bc4d81405795b9ad9873922334972ac94d041efdb6cee2e1a2b5b8ab46984beb5a9f8bf7edd07ff83a3b3cfd423b52a070fba861ae61112e822e9e3509ee6a5 WHIRLPOOL f97ab30d21ec045e48c90bb9879cf900723ea26becd33456ffdb0c66ef9c64382d75c63200d50355525d64dbb603f3af45fc518fa27958213de7d59a051aab8d
|
||||
DIST exim-4.86_RC2.tar.bz2 1806368 SHA256 740cb3e706466876904120dbeb2efe8967eff3b2ead77f8690e43b2a35589833 SHA512 5d798300383086f5f59c82cd677b90e3c4d519a16f034edbd8f893198a2c5412a33d833e9ab6c9661d0e5c3178c5cec0a7e637603ca64f1a5d227017c9636144 WHIRLPOOL c3cbea59bb8576e9b3c07f350a008f0f2bd532ebced60df00b39c1238dab15bec3b23c4ae59b1dc91c46b5327292c5f4085ec87a186ddef08250268e5334db88
|
||||
DIST exim-4.86_RC3.tar.bz2 1798798 SHA256 b81f9c4c862fbdbf8318af6294e034f6b2281b40a1561bcbc30704f19c3246df SHA512 2fc1d6aabd9b4e4acbe06016561ff5d408fad25d01019caf990fee5d16e74708d01ee14d47cc7ffe3b895532cff0137ecc4ec6a59e073f3c312b50d75c84b3c2 WHIRLPOOL fe3829a4d37c5f41a34e656a09b6a0b413c74c394ac0ddabf2a8365a847055f7f276c08137883eb894b19d3a4a029ab4488ec77c22cede4186b6424d41a24237
|
||||
DIST exim-html-4.84.tar.bz2 465281 SHA256 7ee7e9015b853915604b7806be93d56e9ba1fb915b63f0d6828c47f2228fd45b SHA512 7de8513476b6abcdfd36b0121a2a9d6decf1ccf94ef51b8363e544066cc05670e6f2b4d03d5fbc49071b1431183dfd9badde5cbcc65f51d55ec6b25ebcb070b9 WHIRLPOOL 88c376fd399e17b2bc06d2d0fad19f8c6485807118a81e0c200f6c39defe7155fa920489481a8b82e629951766ce0222b85956f387d22d22549303bd3dff7f82
|
||||
DIST exim-html-4.85.tar.bz2 467069 SHA256 fd91946369626e74842a0799b93d0d9e4a201fe640af84e1b5349fe6ff204167 SHA512 8214576300827f79c0880e2d2163f71d7f1b3fe2aff714b591a011e48816965de5a773c3509137b085fec3d4d2128931f8398768c24dad6c92b7df27cbcafe74 WHIRLPOOL a7edffd7124c4920708616d3e59c0db5159dee5f7e4fd62ce29fdba769d39781a3826d4e3e39cdc97669941bb9a5c977defe280feb73cbe159b23df4cb6fe95f
|
||||
DIST exim-html-4.86_RC1.tar.bz2 465548 SHA256 b1754699e054d445fd0ee32d44d21333084fb1aab528e8c654dd7c65cb4dd827 SHA512 6a2b7a7389399aa4e421f7318b2338650c0ffd47f98a0b1cee2761fbda2386cdedf3bbfd0286f286914271ac1ab2b6df4e14fd8720a25908c949f6eadc6ed044 WHIRLPOOL 70707bea8f283da83dd875df62c158ba714eb245ca2b8773df0b86b4fa72cea03211999aef7eae2c48c673507566d39c85897aad4c0819d08a2c8cc0c7fb2667
|
||||
DIST exim-html-4.86_RC2.tar.bz2 470179 SHA256 ba338c36e1b3ad5c5add87c00886fa5d3aa192b3b8891146c72c5d3e09d26411 SHA512 dec24e991f40e921e4cf4ae299a25fe20a325f1dea182089bcb53c72ec25e61e9bc5547900eea2aa04ba983c0ded1397bb3355bb8c8fa06271674a98828edaa0 WHIRLPOOL ccfe9d934d924ad1ad1fa20981263ff97e48ede312a646eb7330e568a9fc5024c498ff0a0daf6690eb1296e6a8bc414d871c2ff1b62bea062cf7143febbc0b20
|
||||
DIST exim-html-4.86_RC3.tar.bz2 474210 SHA256 40749bf00b18354e422d087e18a939e0046880aa6ddd815ab2b4203254b2eb82 SHA512 ab2e17f7ffa729b1f54a49ae47ba027f60bb978b0925457e596c6b9db04540b7d9bafc310c99444a02a7889b0a6bb296a43778f64e878f92b4e7e3aa1b07baf8 WHIRLPOOL 58d6324837dbc07d2422e027001db39cb0371d03fda4fd6ce4b1729d8bf8ae4a663a74d6d5f2eade45dc3add34d914917162f70b7bc93e976dd106a0b7df9721
|
||||
DIST system_filter.exim.gz 3075 SHA256 3a3471b486a09e0a0153f7b520e1eaf26d21b97d73ea8348bdc593c00eb1e437 SHA512 cb358d3ce2499a0bb5920d962a06f2af8486e55ec90c8c928bd8e3aefb279aa57f5f960d5adfcef68bd94110b405eaa144e9629cfe6014a529c79c544600bbf3 WHIRLPOOL ce68d9c18b24eca3ef97ea810964cc1ada5f85b795a7c432ad39b5788188a16419101c92fb52b418738d760e1d658f7a41485e5561079a667d84d276c71be5a4
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/exim-4.86_rc1.ebuild,v 1.1 2015/06/08 07:35:28 grobian Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/mail-mta/exim/exim-4.86_rc3.ebuild,v 1.1 2015/06/22 10:51:45 grobian Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
@ -0,0 +1,372 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ffmpeg-2.2.16.ebuild,v 1.1 2015/06/22 08:15:39 aballier Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
# Subslot: libavutil major.libavcodec major.libavformat major
|
||||
# Since FFmpeg ships several libraries, subslot is kind of limited here.
|
||||
# Most consumers will use those three libraries, if a "less used" library
|
||||
# changes its soname, consumers will have to be rebuilt the old way
|
||||
# (preserve-libs).
|
||||
# If, for example, a package does not link to libavformat and only libavformat
|
||||
# changes its ABI then this package will be rebuilt needlessly. Hence, such a
|
||||
# package is free _not_ to := depend on FFmpeg but I would strongly encourage
|
||||
# doing so since such a case is unlikely.
|
||||
FFMPEG_SUBSLOT=52.55.55
|
||||
|
||||
SCM=""
|
||||
if [ "${PV#9999}" != "${PV}" ] ; then
|
||||
SCM="git-2"
|
||||
EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git"
|
||||
fi
|
||||
|
||||
inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
|
||||
|
||||
DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
|
||||
HOMEPAGE="http://ffmpeg.org/"
|
||||
if [ "${PV#9999}" != "${PV}" ] ; then
|
||||
SRC_URI=""
|
||||
elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
|
||||
SRC_URI="mirror://gentoo/${P}.tar.bz2"
|
||||
else # Release
|
||||
SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
|
||||
fi
|
||||
FFMPEG_REVISION="${PV#*_p}"
|
||||
|
||||
LICENSE="GPL-2 amr? ( GPL-3 ) encode? ( aac? ( GPL-3 ) )"
|
||||
SLOT="0/${FFMPEG_SUBSLOT}"
|
||||
if [ "${PV#9999}" = "${PV}" ] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
|
||||
fi
|
||||
IUSE="
|
||||
aac aacplus alsa amr amrenc bluray +bzip2 cdio celt
|
||||
cpudetection debug doc +encode examples faac fdk flite fontconfig frei0r
|
||||
gme gnutls gsm +hardcoded-tables +iconv iec61883 ieee1394 jack jpeg2k
|
||||
ladspa libass libcaca libsoxr libv4l modplug mp3 +network openal opengl
|
||||
openssl opus oss pic pulseaudio quvi rtmp schroedinger sdl speex ssh
|
||||
static-libs test theora threads truetype twolame v4l vaapi vdpau vorbis vpx
|
||||
wavpack webp X x264 x265 xvid +zlib zvbi
|
||||
"
|
||||
|
||||
ARM_CPU_FEATURES="armv5te armv6 armv6t2 neon armvfp:vfp"
|
||||
MIPS_CPU_FEATURES="mips32r2 mipsdspr1 mipsdspr2 mipsfpu"
|
||||
PPC_CPU_FEATURES="altivec"
|
||||
X86_CPU_FEATURES=( 3dnow:amd3dnow 3dnowext:amd3dnowext avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 )
|
||||
|
||||
# String for CPU features in the useflag[:configure_option] form
|
||||
# if :configure_option isn't set, it will use 'useflag' as configure option
|
||||
CPU_FEATURES="
|
||||
${ARM_CPU_FEATURES}
|
||||
${MIPS_CPU_FEATURES}
|
||||
${PPC_CPU_FEATURES}
|
||||
${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}
|
||||
"
|
||||
|
||||
for i in ${CPU_FEATURES}; do
|
||||
IUSE="${IUSE} ${i%:*}"
|
||||
done
|
||||
|
||||
FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart trasher"
|
||||
|
||||
for i in ${FFTOOLS}; do
|
||||
IUSE="${IUSE} +fftools_$i"
|
||||
done
|
||||
|
||||
RDEPEND="
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
|
||||
amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
|
||||
bluray? ( >=media-libs/libbluray-0.3.0-r1[${MULTILIB_USEDEP}] )
|
||||
bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
|
||||
cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
|
||||
celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
|
||||
encode? (
|
||||
aac? ( >=media-libs/vo-aacenc-0.1.3[${MULTILIB_USEDEP}] )
|
||||
aacplus? ( >=media-libs/libaacplus-2.0.2-r1[${MULTILIB_USEDEP}] )
|
||||
amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
|
||||
faac? ( >=media-libs/faac-1.28-r3[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
|
||||
theora? (
|
||||
>=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
|
||||
>=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
|
||||
wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
|
||||
webp? ( >=media-libs/libwebp-0.3.0[${MULTILIB_USEDEP}] )
|
||||
x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
|
||||
x265? ( >=media-libs/x265-0.8:=[${MULTILIB_USEDEP}] )
|
||||
xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
fdk? ( >=media-libs/fdk-aac-0.1.3[${MULTILIB_USEDEP}] )
|
||||
flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
|
||||
frei0r? ( media-plugins/frei0r-plugins )
|
||||
gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
|
||||
gnutls? ( >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}] )
|
||||
gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
|
||||
iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
|
||||
iec61883? (
|
||||
>=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
|
||||
)
|
||||
ieee1394? (
|
||||
>=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
|
||||
)
|
||||
jack? ( >=media-sound/jack-audio-connection-kit-0.121.3-r1[${MULTILIB_USEDEP}] )
|
||||
jpeg2k? ( >=media-libs/openjpeg-1.5.0:0[${MULTILIB_USEDEP}] )
|
||||
libass? ( >=media-libs/libass-0.10.2[${MULTILIB_USEDEP}] )
|
||||
libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
|
||||
libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
|
||||
libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
|
||||
modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
|
||||
openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
|
||||
opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
|
||||
openssl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
|
||||
opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
|
||||
quvi? ( media-libs/libquvi:0.4 )
|
||||
rtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
|
||||
sdl? ( >=media-libs/libsdl-1.2.15-r4[sound,video,${MULTILIB_USEDEP}] )
|
||||
schroedinger? ( >=media-libs/schroedinger-1.0.11-r1[${MULTILIB_USEDEP}] )
|
||||
speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
|
||||
ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
|
||||
truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
|
||||
vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
|
||||
vorbis? (
|
||||
>=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
|
||||
>=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
vpx? ( >=media-libs/libvpx-1.2.0_pre20130625[${MULTILIB_USEDEP}] )
|
||||
X? (
|
||||
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
|
||||
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
|
||||
>=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
|
||||
>=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
|
||||
)
|
||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
||||
zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
|
||||
!media-video/qt-faststart
|
||||
!media-libs/libpostproc
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-devel/make-3.81
|
||||
doc? ( app-text/texi2html )
|
||||
fontconfig? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
gnutls? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
ieee1394? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
|
||||
libv4l? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
cpu_flags_x86_mmx? ( >=dev-lang/yasm-1.2 )
|
||||
rtmp? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
schroedinger? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
test? ( net-misc/wget sys-devel/bc )
|
||||
truetype? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
v4l? ( sys-kernel/linux-headers )
|
||||
"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
|
||||
|
||||
REQUIRED_USE="
|
||||
libv4l? ( v4l )
|
||||
fftools_cws2fws? ( zlib )
|
||||
test? ( encode )"
|
||||
# faac is license-incompatible with ffmpeg
|
||||
RESTRICT="encode? ( faac? ( bindist ) aacplus? ( bindist ) ) openssl? ( bindist )"
|
||||
|
||||
S=${WORKDIR}/${P/_/-}
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libavutil/avconfig.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
|
||||
export revision=git-N-${FFMPEG_REVISION}
|
||||
fi
|
||||
epatch "${FILESDIR}/ladspadl.patch"
|
||||
epatch_user
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=( ${EXTRA_FFMPEG_CONF} )
|
||||
|
||||
# options to use as use_enable in the foo[:bar] form.
|
||||
# This will feed configure with $(use_enable foo bar)
|
||||
# or $(use_enable foo foo) if no :bar is set.
|
||||
local ffuse=(
|
||||
bzip2:bzlib cpudetection:runtime-cpudetect debug doc
|
||||
gnutls hardcoded-tables iconv network openssl sdl:ffplay vaapi
|
||||
vdpau zlib
|
||||
)
|
||||
use openssl && myconf+=( --enable-nonfree )
|
||||
|
||||
# Encoders
|
||||
if use encode
|
||||
then
|
||||
ffuse+=( aac:libvo-aacenc amrenc:libvo-amrwbenc mp3:libmp3lame )
|
||||
for i in aacplus faac theora twolame wavpack webp x264 x265 xvid; do
|
||||
ffuse+=( ${i}:lib${i} )
|
||||
done
|
||||
|
||||
# Licensing.
|
||||
if use aac || use amrenc ; then
|
||||
myconf+=( --enable-version3 )
|
||||
fi
|
||||
if use aacplus || use faac ; then
|
||||
myconf+=( --enable-nonfree )
|
||||
fi
|
||||
else
|
||||
myconf+=( --disable-encoders )
|
||||
fi
|
||||
|
||||
# libavdevice options
|
||||
ffuse+=( cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal opengl )
|
||||
|
||||
# Indevs
|
||||
use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
|
||||
for i in alsa oss jack ; do
|
||||
use ${i} || myconf+=( --disable-indev=${i} )
|
||||
done
|
||||
ffuse+=( libv4l:libv4l2 pulseaudio:libpulse X:x11grab )
|
||||
|
||||
# Outdevs
|
||||
for i in alsa oss sdl ; do
|
||||
use ${i} || myconf+=( --disable-outdev=${i} )
|
||||
done
|
||||
|
||||
# libavfilter options
|
||||
ffuse+=( flite:libflite frei0r fontconfig ladspa libass truetype:libfreetype )
|
||||
|
||||
# libswresample options
|
||||
ffuse+=( libsoxr )
|
||||
|
||||
# Threads; we only support pthread for now but ffmpeg supports more
|
||||
ffuse+=( threads:pthreads )
|
||||
|
||||
# Decoders
|
||||
ffuse+=( amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac jpeg2k:libopenjpeg )
|
||||
use amr && myconf+=( --enable-version3 )
|
||||
for i in bluray celt gme gsm modplug opus quvi rtmp ssh schroedinger speex vorbis vpx zvbi; do
|
||||
ffuse+=( ${i}:lib${i} )
|
||||
done
|
||||
use fdk && myconf+=( --enable-nonfree )
|
||||
|
||||
for i in "${ffuse[@]}" ; do
|
||||
myconf+=( $(use_enable ${i%:*} ${i#*:}) )
|
||||
done
|
||||
|
||||
# (temporarily) disable non-multilib deps
|
||||
if ! multilib_is_native_abi; then
|
||||
for i in frei0r libquvi; do
|
||||
myconf+=( --disable-${i} )
|
||||
done
|
||||
fi
|
||||
|
||||
# CPU features
|
||||
for i in ${CPU_FEATURES}; do
|
||||
use ${i%:*} || myconf+=( --disable-${i#*:} )
|
||||
done
|
||||
if use pic ; then
|
||||
myconf+=( --enable-pic )
|
||||
# disable asm code if PIC is required
|
||||
# as the provided asm decidedly is not PIC for x86.
|
||||
[[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
|
||||
fi
|
||||
[[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
|
||||
|
||||
# Try to get cpu type based on CFLAGS.
|
||||
# Bug #172723
|
||||
# We need to do this so that features of that CPU will be better used
|
||||
# If they contain an unknown CPU it will not hurt since ffmpeg's configure
|
||||
# will just ignore it.
|
||||
for i in $(get-flag mcpu) $(get-flag mtune) $(get-flag march) ; do
|
||||
[[ ${i} = native ]] && i="host" # bug #273421
|
||||
myconf+=( --cpu=${i} )
|
||||
break
|
||||
done
|
||||
|
||||
# Mandatory configuration
|
||||
myconf=(
|
||||
--enable-gpl
|
||||
--enable-postproc
|
||||
--enable-avfilter
|
||||
--enable-avresample
|
||||
--disable-stripping
|
||||
"${myconf[@]}"
|
||||
)
|
||||
|
||||
# cross compile support
|
||||
if tc-is-cross-compiler ; then
|
||||
myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- )
|
||||
case ${CHOST} in
|
||||
*freebsd*)
|
||||
myconf+=( --target-os=freebsd )
|
||||
;;
|
||||
mingw32*)
|
||||
myconf+=( --target-os=mingw32 )
|
||||
;;
|
||||
*linux*)
|
||||
myconf+=( --target-os=linux )
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
set -- "${S}/configure" \
|
||||
--prefix="${EPREFIX}/usr" \
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--shlibdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--mandir="${EPREFIX}/usr/share/man" \
|
||||
--enable-shared \
|
||||
--cc="$(tc-getCC)" \
|
||||
--cxx="$(tc-getCXX)" \
|
||||
--ar="$(tc-getAR)" \
|
||||
--optflags=" " \
|
||||
$(use_enable static-libs static) \
|
||||
"${myconf[@]}"
|
||||
echo "${@}"
|
||||
"${@}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake V=1
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
for i in ${FFTOOLS} ; do
|
||||
if use fftools_${i} ; then
|
||||
emake V=1 tools/${i}
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake V=1 DESTDIR="${D}" install install-man
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
for i in ${FFTOOLS} ; do
|
||||
if use fftools_${i} ; then
|
||||
dobin tools/${i}
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
dodoc Changelog README CREDITS doc/*.txt doc/APIchanges doc/RELEASE_NOTES
|
||||
use doc && dohtml -r doc/*
|
||||
if use examples ; then
|
||||
dodoc -r doc/examples
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
LD_LIBRARY_PATH="${BUILD_DIR}/libpostproc:${BUILD_DIR}/libswscale:${BUILD_DIR}/libswresample:${BUILD_DIR}/libavcodec:${BUILD_DIR}/libavdevice:${BUILD_DIR}/libavfilter:${BUILD_DIR}/libavformat:${BUILD_DIR}/libavutil:${BUILD_DIR}/libavresample" \
|
||||
emake V=1 fate
|
||||
}
|
@ -0,0 +1,450 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ffmpeg-2.7.1.ebuild,v 1.1 2015/06/22 08:08:04 aballier Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
# Subslot: libavutil major.libavcodec major.libavformat major
|
||||
# Since FFmpeg ships several libraries, subslot is kind of limited here.
|
||||
# Most consumers will use those three libraries, if a "less used" library
|
||||
# changes its soname, consumers will have to be rebuilt the old way
|
||||
# (preserve-libs).
|
||||
# If, for example, a package does not link to libavformat and only libavformat
|
||||
# changes its ABI then this package will be rebuilt needlessly. Hence, such a
|
||||
# package is free _not_ to := depend on FFmpeg but I would strongly encourage
|
||||
# doing so since such a case is unlikely.
|
||||
FFMPEG_SUBSLOT=54.56.56
|
||||
|
||||
SCM=""
|
||||
if [ "${PV#9999}" != "${PV}" ] ; then
|
||||
SCM="git-2"
|
||||
EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git"
|
||||
fi
|
||||
|
||||
inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
|
||||
|
||||
DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
|
||||
HOMEPAGE="http://ffmpeg.org/"
|
||||
if [ "${PV#9999}" != "${PV}" ] ; then
|
||||
SRC_URI=""
|
||||
elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
|
||||
SRC_URI="mirror://gentoo/${P}.tar.bz2"
|
||||
else # Release
|
||||
SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
|
||||
fi
|
||||
FFMPEG_REVISION="${PV#*_p}"
|
||||
|
||||
SLOT="0/${FFMPEG_SUBSLOT}"
|
||||
LICENSE="
|
||||
!gpl? ( LGPL-2.1 )
|
||||
gpl? ( GPL-2 )
|
||||
amr? (
|
||||
gpl? ( GPL-3 )
|
||||
!gpl? ( LGPL-3 )
|
||||
)
|
||||
encode? (
|
||||
aac? (
|
||||
gpl? ( GPL-3 )
|
||||
!gpl? ( LGPL-3 )
|
||||
)
|
||||
amrenc? (
|
||||
gpl? ( GPL-3 )
|
||||
!gpl? ( LGPL-3 )
|
||||
)
|
||||
)
|
||||
samba? ( GPL-3 )
|
||||
"
|
||||
if [ "${PV#9999}" = "${PV}" ] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
# Options to use as use_enable in the foo[:bar] form.
|
||||
# This will feed configure with $(use_enable foo bar)
|
||||
# or $(use_enable foo foo) if no :bar is set.
|
||||
# foo is added to IUSE.
|
||||
FFMPEG_FLAG_MAP=(
|
||||
+bzip2:bzlib cpudetection:runtime-cpudetect debug doc gnutls +gpl
|
||||
+hardcoded-tables +iconv lzma +network openssl +postproc
|
||||
samba:libsmbclient sdl:ffplay vaapi vdpau X:xlib xcb:libxcb
|
||||
xcb:libxcb-shm xcb:libxcb-xfixes +zlib
|
||||
# libavdevice options
|
||||
cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal
|
||||
opengl
|
||||
# indevs
|
||||
libv4l:libv4l2 pulseaudio:libpulse
|
||||
# decoders
|
||||
amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac
|
||||
jpeg2k:libopenjpeg bluray:libbluray celt:libcelt gme:libgme gsm:libgsm
|
||||
modplug:libmodplug opus:libopus quvi:libquvi rtmp:librtmp ssh:libssh
|
||||
schroedinger:libschroedinger speex:libspeex vorbis:libvorbis vpx:libvpx
|
||||
zvbi:libzvbi
|
||||
# libavfilter options
|
||||
bs2b:libbs2b flite:libflite frei0r fribidi:libfribidi fontconfig ladspa
|
||||
libass truetype:libfreetype
|
||||
# libswresample options
|
||||
libsoxr
|
||||
# Threads; we only support pthread for now but ffmpeg supports more
|
||||
+threads:pthreads
|
||||
)
|
||||
|
||||
# Same as above but for encoders, i.e. they do something only with USE=encode.
|
||||
FFMPEG_ENCODER_FLAG_MAP=(
|
||||
aac:libvo-aacenc amrenc:libvo-amrwbenc mp3:libmp3lame
|
||||
aacplus:libaacplus faac:libfaac theora:libtheora twolame:libtwolame
|
||||
wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid
|
||||
)
|
||||
|
||||
IUSE="
|
||||
alsa +encode examples jack oss pic static-libs test v4l
|
||||
${FFMPEG_FLAG_MAP[@]%:*}
|
||||
${FFMPEG_ENCODER_FLAG_MAP[@]%:*}
|
||||
"
|
||||
|
||||
# Strings for CPU features in the useflag[:configure_option] form
|
||||
# if :configure_option isn't set, it will use 'useflag' as configure option
|
||||
ARM_CPU_FEATURES=( armv5te armv6 armv6t2 neon armvfp:vfp )
|
||||
MIPS_CPU_FEATURES=( mipsdspr1 mipsdspr2 mipsfpu )
|
||||
PPC_CPU_FEATURES=( altivec )
|
||||
X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
|
||||
X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
|
||||
X86_CPU_REQUIRED_USE="
|
||||
cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
|
||||
cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
|
||||
cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
|
||||
cpu_flags_x86_xop? ( cpu_flags_x86_avx )
|
||||
cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
|
||||
cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
|
||||
cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
|
||||
cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
|
||||
cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
|
||||
cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
|
||||
cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
|
||||
cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
|
||||
cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
|
||||
cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
|
||||
"
|
||||
|
||||
IUSE="${IUSE}
|
||||
${ARM_CPU_FEATURES[@]%:*}
|
||||
${MIPS_CPU_FEATURES[@]%:*}
|
||||
${PPC_CPU_FEATURES[@]%:*}
|
||||
${X86_CPU_FEATURES[@]%:*}
|
||||
"
|
||||
|
||||
CPU_REQUIRED_USE="
|
||||
${X86_CPU_REQUIRED_USE}
|
||||
"
|
||||
|
||||
# "$(tc-arch):XXX" form where XXX_CPU_FEATURES are the cpu features that apply to
|
||||
# $(tc-arch).
|
||||
CPU_FEATURES_MAP="
|
||||
arm:ARM
|
||||
arm64:ARM
|
||||
mips:MIPS
|
||||
ppc:PPC
|
||||
ppc64:PPC
|
||||
x86:X86
|
||||
amd64:X86
|
||||
"
|
||||
|
||||
FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart trasher )
|
||||
IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}"
|
||||
|
||||
RDEPEND="
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
|
||||
amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
|
||||
bluray? ( >=media-libs/libbluray-0.3.0-r1[${MULTILIB_USEDEP}] )
|
||||
bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] )
|
||||
bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
|
||||
cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
|
||||
celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
|
||||
encode? (
|
||||
aac? ( >=media-libs/vo-aacenc-0.1.3[${MULTILIB_USEDEP}] )
|
||||
aacplus? ( >=media-libs/libaacplus-2.0.2-r1[${MULTILIB_USEDEP}] )
|
||||
amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
|
||||
faac? ( >=media-libs/faac-1.28-r3[${MULTILIB_USEDEP}] )
|
||||
mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
|
||||
theora? (
|
||||
>=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
|
||||
>=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
|
||||
wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
|
||||
webp? ( >=media-libs/libwebp-0.3.0[${MULTILIB_USEDEP}] )
|
||||
x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
|
||||
x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] )
|
||||
xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] )
|
||||
flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
|
||||
frei0r? ( media-plugins/frei0r-plugins )
|
||||
fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] )
|
||||
gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
|
||||
gnutls? ( >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}] )
|
||||
gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
|
||||
iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
|
||||
iec61883? (
|
||||
>=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
|
||||
)
|
||||
ieee1394? (
|
||||
>=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
|
||||
)
|
||||
jack? ( >=media-sound/jack-audio-connection-kit-0.121.3-r1[${MULTILIB_USEDEP}] )
|
||||
jpeg2k? ( >=media-libs/openjpeg-1.5.0:0[${MULTILIB_USEDEP}] )
|
||||
libass? ( >=media-libs/libass-0.10.2[${MULTILIB_USEDEP}] )
|
||||
libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
|
||||
libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
|
||||
libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
|
||||
lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
|
||||
modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
|
||||
openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
|
||||
opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
|
||||
openssl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] )
|
||||
opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
|
||||
quvi? ( media-libs/libquvi:0.4[${MULTILIB_USEDEP}] )
|
||||
rtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
|
||||
samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
|
||||
schroedinger? ( >=media-libs/schroedinger-1.0.11-r1[${MULTILIB_USEDEP}] )
|
||||
sdl? ( >=media-libs/libsdl-1.2.15-r4[sound,video,${MULTILIB_USEDEP}] )
|
||||
speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
|
||||
ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
|
||||
truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
|
||||
vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
|
||||
vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
|
||||
vorbis? (
|
||||
>=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
|
||||
>=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
vpx? ( >=media-libs/libvpx-1.2.0_pre20130625[${MULTILIB_USEDEP}] )
|
||||
X? (
|
||||
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
|
||||
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
|
||||
!xcb? ( >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}] )
|
||||
>=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
|
||||
)
|
||||
xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] )
|
||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
||||
zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
|
||||
!media-video/qt-faststart
|
||||
postproc? ( !media-libs/libpostproc )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
>=sys-devel/make-3.81
|
||||
doc? ( app-text/texi2html )
|
||||
fontconfig? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
gnutls? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
ieee1394? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
|
||||
libv4l? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
cpu_flags_x86_mmx? ( >=dev-lang/yasm-1.2 )
|
||||
rtmp? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
schroedinger? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
test? ( net-misc/wget sys-devel/bc )
|
||||
truetype? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] )
|
||||
v4l? ( sys-kernel/linux-headers )
|
||||
"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20140508-r3
|
||||
!app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )"
|
||||
|
||||
# Code requiring FFmpeg to be built under gpl license
|
||||
GPL_REQUIRED_USE="
|
||||
postproc? ( gpl )
|
||||
frei0r? ( gpl )
|
||||
cdio? ( gpl )
|
||||
samba? ( gpl )
|
||||
zvbi? ( gpl )
|
||||
encode? (
|
||||
x264? ( gpl )
|
||||
x265? ( gpl )
|
||||
xvid? ( gpl )
|
||||
X? ( !xcb? ( gpl ) )
|
||||
)
|
||||
"
|
||||
REQUIRED_USE="
|
||||
libv4l? ( v4l )
|
||||
fftools_cws2fws? ( zlib )
|
||||
test? ( encode )
|
||||
${GPL_REQUIRED_USE}
|
||||
${CPU_REQUIRED_USE}"
|
||||
RESTRICT="
|
||||
encode? ( faac? ( bindist ) aacplus? ( bindist ) )
|
||||
gpl? ( openssl? ( bindist ) fdk? ( bindist ) )
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${P/_/-}
|
||||
|
||||
MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/libavutil/avconfig.h
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
|
||||
export revision=git-N-${FFMPEG_REVISION}
|
||||
fi
|
||||
epatch_user
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myconf=( ${EXTRA_FFMPEG_CONF} )
|
||||
|
||||
local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
|
||||
use openssl && use gpl && myconf+=( --enable-nonfree )
|
||||
use samba && myconf+=( --enable-version3 )
|
||||
|
||||
# Encoders
|
||||
if use encode ; then
|
||||
ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" )
|
||||
|
||||
# Licensing.
|
||||
if use aac || use amrenc ; then
|
||||
myconf+=( --enable-version3 )
|
||||
fi
|
||||
if use aacplus || use faac ; then
|
||||
myconf+=( --enable-nonfree )
|
||||
fi
|
||||
else
|
||||
myconf+=( --disable-encoders )
|
||||
fi
|
||||
|
||||
# Indevs
|
||||
use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
|
||||
for i in alsa oss jack ; do
|
||||
use ${i} || myconf+=( --disable-indev=${i} )
|
||||
done
|
||||
use xcb || ffuse+=( X:x11grab )
|
||||
|
||||
# Outdevs
|
||||
for i in alsa oss sdl ; do
|
||||
use ${i} || myconf+=( --disable-outdev=${i} )
|
||||
done
|
||||
|
||||
# Decoders
|
||||
use amr && myconf+=( --enable-version3 )
|
||||
use fdk && use gpl && myconf+=( --enable-nonfree )
|
||||
|
||||
for i in "${ffuse[@]#+}" ; do
|
||||
myconf+=( $(use_enable ${i%:*} ${i#*:}) )
|
||||
done
|
||||
|
||||
# (temporarily) disable non-multilib deps
|
||||
if ! multilib_is_native_abi; then
|
||||
for i in frei0r ; do
|
||||
myconf+=( --disable-${i} )
|
||||
done
|
||||
fi
|
||||
|
||||
# CPU features
|
||||
for i in ${CPU_FEATURES_MAP} ; do
|
||||
if [ "$(tc-arch)" = "${i%:*}" ] ; then
|
||||
local var="${i#*:}_CPU_FEATURES[@]"
|
||||
for j in ${!var} ; do
|
||||
use ${j%:*} || myconf+=( --disable-${j#*:} )
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
if use pic ; then
|
||||
myconf+=( --enable-pic )
|
||||
# disable asm code if PIC is required
|
||||
# as the provided asm decidedly is not PIC for x86.
|
||||
[[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
|
||||
fi
|
||||
[[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
|
||||
|
||||
# Try to get cpu type based on CFLAGS.
|
||||
# Bug #172723
|
||||
# We need to do this so that features of that CPU will be better used
|
||||
# If they contain an unknown CPU it will not hurt since ffmpeg's configure
|
||||
# will just ignore it.
|
||||
for i in $(get-flag mcpu) $(get-flag mtune) $(get-flag march) ; do
|
||||
[[ ${i} = native ]] && i="host" # bug #273421
|
||||
myconf+=( --cpu=${i} )
|
||||
break
|
||||
done
|
||||
|
||||
# Mandatory configuration
|
||||
myconf=(
|
||||
--enable-avfilter
|
||||
--enable-avresample
|
||||
--disable-stripping
|
||||
"${myconf[@]}"
|
||||
)
|
||||
|
||||
# cross compile support
|
||||
if tc-is-cross-compiler ; then
|
||||
myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- )
|
||||
case ${CHOST} in
|
||||
*freebsd*)
|
||||
myconf+=( --target-os=freebsd )
|
||||
;;
|
||||
mingw32*)
|
||||
myconf+=( --target-os=mingw32 )
|
||||
;;
|
||||
*linux*)
|
||||
myconf+=( --target-os=linux )
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
set -- "${S}/configure" \
|
||||
--prefix="${EPREFIX}/usr" \
|
||||
--libdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--shlibdir="${EPREFIX}/usr/$(get_libdir)" \
|
||||
--mandir="${EPREFIX}/usr/share/man" \
|
||||
--enable-shared \
|
||||
--cc="$(tc-getCC)" \
|
||||
--cxx="$(tc-getCXX)" \
|
||||
--ar="$(tc-getAR)" \
|
||||
--optflags=" " \
|
||||
$(use_enable static-libs static) \
|
||||
"${myconf[@]}"
|
||||
echo "${@}"
|
||||
"${@}" || die
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake V=1
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
for i in "${FFTOOLS[@]}" ; do
|
||||
if use fftools_${i} ; then
|
||||
emake V=1 tools/${i}
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake V=1 DESTDIR="${D}" install install-man
|
||||
|
||||
if multilib_is_native_abi; then
|
||||
for i in "${FFTOOLS[@]}" ; do
|
||||
if use fftools_${i} ; then
|
||||
dobin tools/${i}
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges
|
||||
[ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES"
|
||||
use doc && dohtml -r doc/*
|
||||
if use examples ; then
|
||||
dodoc -r doc/examples
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
LD_LIBRARY_PATH="${BUILD_DIR}/libpostproc:${BUILD_DIR}/libswscale:${BUILD_DIR}/libswresample:${BUILD_DIR}/libavcodec:${BUILD_DIR}/libavdevice:${BUILD_DIR}/libavfilter:${BUILD_DIR}/libavformat:${BUILD_DIR}/libavutil:${BUILD_DIR}/libavresample" \
|
||||
emake V=1 fate
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue