Compare commits

..

No commits in common. "master" and "master" have entirely different histories.

151 changed files with 1520 additions and 4990 deletions

View File

@ -1,81 +0,0 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
# Purpose: an exlib dealing with installation of GOG games
# Maintainer: Julian Ospald <hasufell@posteo.de>
# Exports: pkg_nofetch, pkg_setup, src_unpack
# Side-effects: - adds build dependencies
# - sets $WORK, $DOWNLOADS, $LICENSES, $RESTRICT and $HOMEPAGE
#
# Usage
# exparams: - installer: the shell script installer (required)
# - unzip: whether to unzip and add unzip dependency (default: true)
# - install_dir: installation dir (default: /opt/${PN})
# variables: - GOG_SH: set to exparam installer
# - GOG_INSTALL_DIR: set to exparam install_dir, use this in src_install
myexparam installer=
myexparam -b unzip=true
myexparam install_dir=/opt/${PN}
exparam -v GOG_SH installer
exparam -v GOG_INSTALL_DIR install_dir
if [[ -z $(exparam installer) ]]; then
die "installer needs to be set!"
fi
if [[ "$GOG_INSTALL_DIR" != /* ]]; then
die "${GOG_INSTALL_DIR} must be absolute!"
fi
export_exlib_phases pkg_nofetch pkg_setup src_unpack
HOMEPAGE="https://www.gog.com"
DOWNLOADS="manual: ${GOG_SH}"
LICENCES="all-rights-reserved GOG-EULA"
RESTRICT="fetch"
if exparam -b unzip ; then
DEPENDENCIES+="
build:
virtual/unzip
"
fi
WORK="${WORKBASE}/data/noarch"
# Exported 'pkg_nofetch'.
#
# Arguments: none
# Side-effects: prints einfo
gog_pkg_nofetch() {
einfo
einfo "Please buy & download \"${GOG_SH}\""
einfo "from:"
einfo " ${HOMEPAGE}"
einfo "and move/link it to \"${FETCHEDDIR}\""
einfo
}
# Exported 'pkg_setup'.
#
# Arguments: none
# Side-effects: makes sure /opt is allowed to be installed into
gog_pkg_setup() {
exdirectory --allow "$(dirname "${GOG_INSTALL_DIR}")"
}
# Exported 'src_unpack'.
#
# Arguments: none
# Side-effects: unpacks the data
gog_src_unpack() {
if exparam -b unzip ; then
unzip -qo "${FETCHEDDIR}/${GOG_SH}"
[[ $? -le 1 ]] || die "unpacking ${GOG_SH} failed!"
fi
}

View File

@ -1,140 +0,0 @@
-----BEGIN PGP SIGNED MESSAGE-----
ooooo ooo ooooooooo. ooooooo ooooo
`888' `8' `888 `Y88. `8888 d8'
888 8 888 .d88' Y888..8P
888 8 888ooo88P' `8888'
888 8 888 .8PY888.
`88. .8' 888 d8' `888b
`YbodP' o888o o888o o88888o
The Ultimate Packer for eXecutables
Copyright (c) 1996-2000 Markus Oberhumer & Laszlo Molnar
http://wildsau.idv.uni-linz.ac.at/mfx/upx.html
http://www.nexus.hu/upx
http://upx.tsx.org
PLEASE CAREFULLY READ THIS LICENSE AGREEMENT, ESPECIALLY IF YOU PLAN
TO MODIFY THE UPX SOURCE CODE OR USE A MODIFIED UPX VERSION.
ABSTRACT
========
UPX and UCL are copyrighted software distributed under the terms
of the GNU General Public License (hereinafter the "GPL").
The stub which is imbedded in each UPX compressed program is part
of UPX and UCL, and contains code that is under our copyright. The
terms of the GNU General Public License still apply as compressing
a program is a special form of linking with our stub.
As a special exception we grant the free usage of UPX for all
executables, including commercial programs.
See below for details and restrictions.
COPYRIGHT
=========
UPX and UCL are copyrighted software. All rights remain with the authors.
UPX is Copyright (C) 1996-2000 Markus Franz Xaver Johannes Oberhumer
UPX is Copyright (C) 1996-2000 Laszlo Molnar
UCL is Copyright (C) 1996-2000 Markus Franz Xaver Johannes Oberhumer
GNU GENERAL PUBLIC LICENSE
==========================
UPX and the UCL library are free software; you can redistribute them
and/or modify them under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
UPX and UCL are distributed in the hope that they will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; see the file COPYING.
SPECIAL EXCEPTION FOR COMPRESSED EXECUTABLES
============================================
The stub which is imbedded in each UPX compressed program is part
of UPX and UCL, and contains code that is under our copyright. The
terms of the GNU General Public License still apply as compressing
a program is a special form of linking with our stub.
Hereby Markus F.X.J. Oberhumer and Laszlo Molnar grant you special
permission to freely use and distribute all UPX compressed programs
(including commercial ones), subject to the following restrictions:
1. You must compress your program with a completely unmodified UPX
version; either with our precompiled version, or (at your option)
with a self compiled version of the unmodified UPX sources as
distributed by us.
2. This also implies that the UPX stub must be completely unmodfied, i.e.
the stub imbedded in your compressed program must be byte-identical
to the stub that is produced by the official unmodified UPX version.
3. The decompressor and any other code from the stub must exclusively get
used by the unmodified UPX stub for decompressing your program at
program startup. No portion of the stub may get read, copied,
called or otherwise get used or accessed by your program.
ANNOTATIONS
===========
- You can use a modified UPX version or modified UPX stub only for
programs that are compatible with the GNU General Public License.
- We grant you special permission to freely use and distribute all UPX
compressed programs. But any modification of the UPX stub (such as,
but not limited to, removing our copyright string or making your
program non-decompressible) will immediately revoke your right to
use and distribute a UPX compressed program.
- UPX is not a software protection tool; by requiring that you use
the unmodified UPX version for your proprietary programs we
make sure that any user can decompress your program. This protects
both you and your users as nobody can hide malicious code -
any program that cannot be decompressed is highly suspicious
by definition.
- You can integrate all or part of UPX and UCL into projects that
are compatible with the GNU GPL, but obviously you cannot grant
any special exceptions beyond the GPL for our code in your project.
- We want to actively support manufacturers of virus scanners and
similar security software. Please contact us if you would like to
incorporate parts of UPX or UCL into such a product.
Markus F.X.J. Oberhumer Laszlo Molnar
markus.oberhumer@jk.uni-linz.ac.at ml1050@cdata.tvnet.hu
Linz, Austria, 25 Feb 2000
-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: noconv
iQCVAwUBOLaLS210fyLu8beJAQFYVAP/ShzENWKLTvedLCjZbDcwaBEHfUVcrGMI
wE7frMkbWT2zmkdv9hW90WmjMhOBu7yhUplvN8BKOtLiolEnZmLCYu8AGCwr5wBf
dfLoClxnzfTtgQv5axF1awp4RwCUH3hf4cDrOVqmAsWXKPHtm4hx96jF6L4oHhjx
OO03+ojZdO8=
=CS52
-----END PGP SIGNATURE-----

View File

@ -5,7 +5,6 @@ app-crypt
app-diagram
app-editors
app-ergonomics
app-misc
app-office
dev-cpp
dev-db
@ -15,7 +14,6 @@ dev-haskell
dev-java
dev-lang
dev-libs
dev-lua
dev-ocaml
dev-perl
dev-python
@ -56,7 +54,6 @@ virtual
voip
www-apps
www-servers
x11-apps
x11-misc
x11-themes
xfce-extra

View File

@ -3,6 +3,7 @@
dev-lang/fsharp[~scm]
dev-lang/fstar[~scm]
dev-python/pytype[~scm]
dev-util/universal-ctags[~scm]
games-emulation/gambatte[~scm]
games-engines/OpenJK[~scm]
games-engines/flare[~scm]
@ -10,7 +11,6 @@
games-rpg/flare[~scm]
games-rpg/valyriatear[~scm]
games-strategy/freesynd[~scm]
games-strategy/s25rttr[~scm]
media-gfx/pinta[~scm]
media-sound/pnmixer-rs[~scm]
media-sound/pnmixer[~scm]
@ -18,16 +18,12 @@
net-im/gajim-omemo[~scm]
net-im/lurch[~scm]
net-im/pidgin-opensteamworks[~scm]
net-im/purple-xmpp-http-upload[~scm]
net-misc/remmina[~scm]
net-misc/trickle[~scm]
sys-apps/fd[~scm]
sys-apps/lenovo-throttling-fix[~scm]
sys-apps/lsd[~scm]
x11-apps/terminator[~scm]
x11-misc/cbatticon[~scm]
x11-misc/fsearch[~scm]
x11-misc/polybar[~scm]
x11-wm/i3[~scm]
) [[
*author = [ Julian Ospald <hasufell@posteo.de> ]

View File

@ -0,0 +1,34 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require cmake [ api=2 ]
SUMMARY="A system information and benchmark tool for Linux systems"
HOMEPAGE="http://hardinfo.org/"
DOWNLOADS="https://dev.gentoo.org/~hasufell/distfiles/${PNV}.tar.xz"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
dev-libs/glib:2
gnome-desktop/libsoup
x11-libs/gdk-pixbuf
x11-libs/gtk+:2
x11-libs/pango
"
REMOTE_IDS="github:lpereira/${PN}"
src_prepare() {
edo sed -i \
-e '/PREFIX/s:@CMAKE_INSTALL_PREFIX@/share:@CMAKE_INSTALL_DATAROOTDIR@:' \
"${CMAKE_SOURCE}"/config.h.cmake
cmake_src_prepare
}

View File

@ -1,41 +0,0 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
# Snapshot until release work in progress: https://github.com/lpereira/hardinfo/issues/530
GITHUB_REVISION=f6a4f52868c2404f3ad58ef04e513ffe5fa090c7
require github [ user=lpereira ]
require cmake
require gtk-icon-cache
SUMMARY="A system information and benchmark tool for Linux systems"
HOMEPAGE="http://hardinfo.org/"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
sys-devel/gettext
virtual/pkg-config
build+run:
core/json-glib
dev-libs/glib:2
gnome-desktop/libsoup
x11-libs/cairo
x11-libs/gdk-pixbuf
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/pango
suggestion:
app-benchmarks/sysbench [[ description = [ additional cpu/memory benchmarks ] ]]
sys-apps/fwupd [[ description = [ read firmware details ] ]]
sys-apps/udisks [[ description = [ read nvme storage information ] ]]
x11-dri/mesa-demos [[ description = [ show GLX info ] ]]
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DHARDINFO_GTK3:BOOL=TRUE
)

View File

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
require openrc-service [ openrc_confd_files=[ "${FILES}"/openrc/confd ] ]
require setup-py [ import=setuptools test=pytest ]
require setup-py [ import=setuptools blacklist="3" ]
require pypi
SUMMARY="A system for controlling process state under UNIX"
@ -14,9 +14,10 @@ PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/meld3[python_abis:*(-)?]
test:
dev-python/pexpect[python_abis:*(-)?]
python_abis:2.7? ( dev-python/mock[python_abis:2.7] )
dev-python/mock[python_abis:*(-)?]
"
RESTRICT="test" # sydbox violations

View File

@ -1,33 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="Ultimate Packer for eXecutables (free version using UCL compression and not NRV)"
HOMEPAGE="http://upx.github.io/"
DOWNLOADS="https://github.com/upx/upx/releases/download/v${PV}/${PNV}-src.tar.xz"
LICENCES="GPL-2 UPX-exception"
SLOT="0"
PLATFORMS="~amd64"
MYOPTIONS=""
DEPENDENCIES="
build:
dev-lang/perl
build+run:
dev-libs/ucl
sys-libs/zlib
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}/${PNV}-src
src_compile() {
emake CXXFLAGS_WERROR="" all
}
src_install() {
newbin src/upx.out upx
dodoc BUGS NEWS PROJECTS README* THANKS doc/*.txt doc/upx.html
doman doc/upx.1
}

View File

@ -1,32 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user='mattn' tag="v${PV}" ]
SUMMARY="General purpose Language Server"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
dev-lang/go
"
BUGS_TO="hasufell@posteo.de"
src_compile() {
export GOPATH="${WORK}"/.gopath
export GOBIN="${WORK}"/.bin
esandbox disable_net
edo go get ./...
edo go build
esandbox enable_net
}
src_install() {
newbin efm-langserver-${PV} efm-langserver
emagicdocs
}

View File

@ -1,55 +0,0 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require qmake [ slot=5 ]
require github [ user="gottcode" ]
require gtk-icon-cache freedesktop-desktop
SUMMARY="Fullscreen and distraction-free word processor"
DESCRIPTION="
FocusWriter is a simple, distraction-free writing environment. It utilizes a hide-away interface that you access by moving your mouse to the edges of the screen, allowing the program to have a familiar look and feel to it while still getting out of the way so that you can immerse yourself in your work. Its available for Linux, Windows, and Mac OS X, and has been translated into many different languages.
"
HOMEPAGE="https://gottcode.org/${PN}/ ${HOMEPAGE}"
DOWNLOADS="https://gottcode.org/${PN}/${PNV}-src.tar.bz2"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
app-spell/hunspell:=
sys-libs/zlib
x11-libs/qtbase:5
x11-libs/qtmultimedia:5
"
BUGS_TO="hasufell@posteo.de"
UPSTREAM_CHANGELOG="https://github.com/gottcode/${PN}/blob/master/ChangeLog"
DEFAULT_SRC_INSTALL_PARAMS=(
INSTALL_ROOT="${IMAGE}"
)
src_configure() {
EQMAKE_PARAMS=(
PREFIX=/usr
BINDIR=/usr/$(exhost --target)/bin
)
qmake_src_configure
}
pkg_postinst() {
gtk-icon-cache_pkg_postinst
freedesktop-desktop_pkg_postinst
}
pkg_postrm() {
gtk-icon-cache_pkg_postrm
freedesktop-desktop_pkg_postrm
}

View File

@ -1,50 +0,0 @@
Upstream: yes
Reason: https://github.com/daa84/neovim-gtk/issues/208
From c1dbe9b9549383b22807a2de9c76094ca9204f51 Mon Sep 17 00:00:00 2001
From: daa <daa@localhost.localdomain>
Date: Tue, 26 Nov 2019 19:25:42 +0300
Subject: [PATCH] Try to fix render issues due to changes in pango_1.44 (#208)
---
src/render/context.rs | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/src/render/context.rs b/src/render/context.rs
index 8168296..0c19437 100644
--- a/src/render/context.rs
+++ b/src/render/context.rs
@@ -111,21 +111,19 @@ pub struct CellMetrics {
impl CellMetrics {
fn new(font_metrics: &pango::FontMetrics, line_space: i32) -> Self {
+ let ascent = (f64::from(font_metrics.get_ascent()) / f64::from(pango::SCALE)).ceil();
+ let descent = (f64::from(font_metrics.get_descent()) / f64::from(pango::SCALE)).ceil();
+ let underline_position = (f64::from(font_metrics.get_underline_position()) / f64::from(pango::SCALE)).ceil();
CellMetrics {
pango_ascent: font_metrics.get_ascent(),
pango_descent: font_metrics.get_descent(),
pango_char_width: font_metrics.get_approximate_digit_width(),
- ascent: f64::from(font_metrics.get_ascent()) / f64::from(pango::SCALE),
- line_height: f64::from(font_metrics.get_ascent() + font_metrics.get_descent())
- / f64::from(pango::SCALE)
- + f64::from(line_space),
- char_width: f64::from(font_metrics.get_approximate_digit_width())
- / f64::from(pango::SCALE),
- underline_position: f64::from(
- font_metrics.get_ascent() - font_metrics.get_underline_position(),
- ) / f64::from(pango::SCALE),
- underline_thickness: f64::from(font_metrics.get_underline_thickness())
- / f64::from(pango::SCALE),
+ ascent,
+ line_height: ascent + descent + f64::from(line_space),
+ char_width: (f64::from(font_metrics.get_approximate_digit_width())
+ / f64::from(pango::SCALE)).ceil(),
+ underline_position: ascent - underline_position,
+ underline_thickness: f64::from(font_metrics.get_underline_thickness()) / f64::from(pango::SCALE),
}
}
--
2.30.0

View File

@ -11,13 +11,16 @@ DEPENDENCIES="
app-editors/neovim
dev-libs/glib:2
x11-libs/cairo
x11-libs/gtk+:3[>=3.22.0]
x11-libs/gtk+:3[>=3.10.0]
x11-libs/pango
run:
gnome-desktop/gsettings-desktop-schemas
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/Try-to-fix-render-issues-due-to-changes-in-pango_1.4.patch
)
src_install() {
ecargo_install
insinto /usr/share/applications
doins desktop/*.desktop
insinto /usr/share/icons/hicolor/128x128/apps
doins desktop/nvim-gtk.png
}

View File

@ -15,11 +15,24 @@ DEPENDENCIES="
x11-libs/cairo
x11-libs/gtk+:3[>=3.22.0]
x11-libs/pango[>=1.38]
run:
gnome-desktop/gsettings-desktop-schemas
"
src_unpack() {
cargo_src_unpack
}
src_install() {
ecargo_install
insinto /usr/share/nvim-gtk
doins -r runtime
insinto /usr/share/applications
doins desktop/*.desktop
insinto /usr/share/icons/hicolor/48x48/apps
doins desktop/org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/scalable/apps
doins desktop/org.daa.NeovimGtk.svg
}

View File

@ -11,26 +11,11 @@ HOMEPAGE="https://github.com/daa84/neovim-gtk ${HOMEPAGE}"
LICENCES="GPL-3.0"
MYOPTIONS=""
src_install() {
ecargo_install
BUGS_TO="hasufell@posteo.de"
insinto /usr/share/nvim-gtk
doins -r runtime
insinto /usr/share/applications
doins desktop/*.desktop
local s
for s in 48 128; do
insinto /usr/share/icons/hicolor/${s}x${s}/apps
newins desktop/org.daa.NeovimGtk_${s}.png org.daa.NeovimGtk.png
done
insinto /usr/share/icons/hicolor/scalable/apps
newins desktop/org.daa.NeovimGtk.svg org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/symbolic/apps
newins desktop/org.daa.NeovimGtk-symbolic.svg org.daa.NeovimGtk.png
src_prepare() {
default
export PREFIX=/usr
}
pkg_postinst() {

View File

@ -21,7 +21,6 @@ SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
gconf [[ description = [ compile with Gnome gconf2 support ] ]]
gnome [[ description = [ Add support for gnome panel ] ]]
pulseaudio
xfce4-panel [[ description = [ Add support for XFCE panel ] ]]
@ -36,26 +35,21 @@ DEPENDENCIES="
virtual/pkg-config
x11-proto/xorgproto
build+run:
dev-cpp/cairomm:1.0
dev-cpp/libsigc++:2
dev-libs/atk
dev-libs/glib:2
gnome-bindings/atkmm:1.6
gnome-bindings/glibmm:2.4
gnome-bindings/gtkmm:3
gnome-bindings/pangomm:1.4
gnome-desktop/gobject-introspection:=
media-libs/gstreamer:1.0[gobject-introspection]
media-plugins/gst-plugins-base:1.0[gobject-introspection]
media-plugins/gst-plugins-good:1.0
x11-libs/cairo
x11-libs/gdk-pixbuf:2.0
x11-libs/gtk+:3[gobject-introspection]
x11-libs/libSM
x11-libs/libX11
x11-libs/libXScrnSaver
x11-libs/libXmu
x11-libs/libXt
x11-libs/libXtst
x11-libs/pango:0
gconf? ( gnome-platform/GConf:2 )
gnome? ( gnome-base/gnome-shell )
pulseaudio? ( media-sound/pulseaudio )
xfce4-panel? (
@ -71,6 +65,7 @@ DEFAULT_SRC_CONFIGURE_PARAMS=(
--disable-distribution
--enable-exercises
--disable-experimental
--disable-gnome2
--disable-static
--disable-xml
--disable-indicator
@ -82,7 +77,6 @@ DEFAULT_SRC_CONFIGURE_PARAMS=(
)
DEFAULT_SRC_CONFIGURE_OPTION_ENABLES=(
'gconf gconf'
'gnome gnome3'
'pulseaudio pulse'
'xfce4-panel xfce'

View File

@ -1,23 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user=rabite0 tag="v${PV}" ]
require cargo [ channel=nightly ]
SUMMARY="Ranger-like file browser written in rust"
LICENCES="WTFPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-libs/glib:2
media-libs/gstreamer
media-libs/libsixel
media-plugins/gst-plugins-base
"
BUGS_TO="hasufell@posteo.de"

View File

@ -1,20 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user=phiresky ] cargo
SUMMARY="rga: ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc."
LICENCES="AGPL-3"
SLOT="0"
PLATFORMS="~amd64"
DEPENDENCIES="
run:
dev-rust/ripgrep
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}/ripgrep_all-${PV}

View File

@ -1,23 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="Haskell tldr client with support for viewing tldr pages"
HOMEPAGE="https://github.com/psibi/tldr-hs"
DOWNLOADS="https://github.com/psibi/tldr-hs/releases/download/v${PV}/tldr-linux-v${PV}.tar.gz"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="~amd64"
MYOPTIONS=""
DEPENDENCIES="
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}
src_install() {
newbin tldr tldr-hs
}

View File

@ -1,7 +1,7 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require autotools [ supported_autoconf=[ 2.7 ] supported_automake=[ 1.16 ] ]
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
require github [ user="olafvdspek" tag="${PNV}" ]
SUMMARY="A simple but powerful template language for C++"

View File

@ -20,7 +20,7 @@ DEPENDENCIES="
build:
dev-libs/boost
build+run:
dev-db/mysql
virtual/mysql
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
"

View File

@ -26,7 +26,6 @@ DEPENDENCIES="
dev-cpp/ctemplate
dev-cpp/libsigc++:2
dev-db/libiodbc
dev-db/mysql
dev-db/mysql-connector-c++[>=${PV}]
dev-db/vsqlite++
dev-java/antlr:4
@ -48,6 +47,7 @@ DEPENDENCIES="
gnome-platform/libglade:2
net-libs/libssh
sci-libs/gdal
virtual/mysql
x11-dri/mesa
x11-libs/cairo
x11-libs/gdk-pixbuf:2.0

View File

@ -1,15 +0,0 @@
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql-init-scripts/files/logrotate.mysql,v 1.1 2007/01/12 16:54:20 chtekk Exp $
/var/log/mysql/mysql.err /var/log/mysql/mysql.log /var/log/mysql/mysqld.err {
monthly
create 660 mysql mysql
notifempty
size 5M
sharedscripts
missingok
postrotate
/usr/bin/kill -HUP `cat /run/mysqld/mysqld.pid`
endscript
}

View File

@ -1,28 +0,0 @@
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

View File

@ -1,79 +0,0 @@
--- a/cmake/ssl.cmake
+++ b/cmake/ssl.cmake
@@ -186,7 +186,8 @@ MACRO (MYSQL_CHECK_SSL)
OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}"
)
ENDIF()
- IF("${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" VERSION_GREATER "1.1.0")
+ CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION)
+ IF(HAVE_TLS1_3_VERSION)
ADD_DEFINITIONS(-DHAVE_TLSv13)
SET(HAVE_TLSv13 1)
IF(SOLARIS)
@@ -196,7 +197,7 @@ MACRO (MYSQL_CHECK_SSL)
IF(OPENSSL_INCLUDE_DIR AND
OPENSSL_LIBRARY AND
CRYPTO_LIBRARY AND
- OPENSSL_MAJOR_VERSION STREQUAL "1"
+ OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1"
)
SET(OPENSSL_FOUND TRUE)
ELSE()
--- a/sql/auth/sha2_password_common.cc
+++ b/sql/auth/sha2_password_common.cc
@@ -116,7 +116,8 @@ bool SHA256_digest::retrieve_digest(unsigned char *digest,
DBUG_RETURN(true);
}
m_ok= EVP_DigestFinal_ex(md_context, m_digest, NULL);
-#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L
+#if defined(HAVE_WOLFSSL) || OPENSSL_VERSION_NUMBER < 0x10100000L || \
+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x02090000fL)
EVP_MD_CTX_cleanup(md_context);
#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */
EVP_MD_CTX_reset(md_context);
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -3419,7 +3419,7 @@ int warn_self_signed_ca()
static int init_ssl()
{
#ifdef HAVE_OPENSSL
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
CRYPTO_malloc_init();
#else /* OPENSSL_VERSION_NUMBER < 0x10100000L */
OPENSSL_malloc_init();
--- a/vio/viosslfactories.c
+++ b/vio/viosslfactories.c
@@ -123,21 +123,19 @@ static DH *get_dh2048(void)
DH *dh;
if ((dh=DH_new()))
{
- BIGNUM *p= BN_bin2bn(dh2048_p, sizeof(dh2048_p), NULL);
- BIGNUM *g= BN_bin2bn(dh2048_g, sizeof(dh2048_g), NULL);
- if (!p || !g
-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
- || !DH_set0_pqg(dh, p, NULL, g)
-#endif /* OPENSSL_VERSION_NUMBER >= 0x10100000L */
- ) {
- /* DH_free() will free 'p' and 'g' at once. */
+ BIGNUM *p = BN_bin2bn(dh2048_p,sizeof(dh2048_p), NULL);
+ BIGNUM *g = BN_bin2bn(dh2048_g,sizeof(dh2048_g), NULL);
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ dh->p=p;
+ dh->g=g;
+ if (! dh->p || ! dh->g)
+#else
+ if (!DH_set0_pqg(dh, p, NULL, g))
+#endif
+ {
DH_free(dh);
- return NULL;
+ dh = NULL;
}
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
- dh->p= p;
- dh->g= g;
-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */
}
return(dh);
}

View File

@ -1,296 +0,0 @@
# Copyright 2008, 2009, 2010 Ingmar Vanhassel <ingmar@exherbo.org>
# Copyright 2011-2019 Timo Gurr <tgurr@exherbo.org>
# Distributed under the terms of the GNU General Public License v2
require cmake systemd-service
MYSQL_MAJOR_VERSION=$(ever range 1-2)
# In order to provide a stable code base, MySQL depends on a specific version of Boost.
# Currently only Boost.Geometry headers are used and boost is just required at build time.
BOOST_PV=1.59.0
# Miraculously works for MySQL >= 5.1 till at least 5.6
SPHINX_PV="2.2.9"
SUMMARY="A relational database management system (RDBMS)"
HOMEPAGE="https://www.mysql.com/"
DOWNLOADS="
mirror://mysql/Downloads/MySQL-$(ever range 1-2)/${PNV}.tar.gz
mirror://sourceforge/boost/boost_${BOOST_PV//./_}.tar.bz2
https://downloads.mysql.com/archives/${PN}-$(ever range 1-2)/${PNV}.tar.gz
sphinx? ( http://sphinxsearch.com/files/sphinx-${SPHINX_PV}-release.tar.gz )
"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_CHANGELOG="
https://dev.mysql.com/doc/relnotes/mysql/${MYSQL_MAJOR_VERSION}/en/news-$(ever replace_all '-').html [[ lang = [ en ] ]]
"
UPSTREAM_DOCUMENTATION="
https://dev.mysql.com/doc/refman/${MYSQL_MAJOR_VERSION}/en/index.html [[ lang = [ en ] ]]
https://dev.mysql.com/doc/refman/${MYSQL_MAJOR_VERSION}/en/postinstallation.html [[ lang = [ en ] note = [ Postinstallation documentation ] ]]
https://dev.mysql.com/doc/refman/${MYSQL_MAJOR_VERSION}/en/upgrading-downgrading.html [[ lang = [ en ] note = [ Upgrading or downgrading documentation ] ]]
"
UPSTREAM_RELEASE_NOTES="
https://dev.mysql.com/doc/relnotes/mysql/${MYSQL_MAJOR_VERSION}/en/ [[ lang = [ en ] ]]
"
LICENCES="GPL-2" # with-exceptions
SLOT="0"
MYOPTIONS="
debug
embedded-server [[ description = [ The embedded MySQL server library (DEPRECATED and slated for removal) ] ]]
memcached [[ description = [ Enable using memcached for InnoDb tables (don't know it? Don't enable it.) ] ]]
sphinx [[ description = [ Add the Sphinx Search Engine with fulltext search support (external engine) ] ]]
systemd
tcpd
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
"
PLATFORMS="~amd64 ~x86"
DEPENDENCIES="
build:
virtual/pkg-config
systemd? ( sys-apps/systemd )
build+run:
group/${PN}
user/${PN}
app-admin/eclectic[>=2.0.18] [[ note = [ Split ld-*.path, @TARGET@ substitution ] ]]
app-arch/lz4
dev-libs/libaio
dev-libs/libedit
dev-libs/protobuf:=[>=2.6.1]
sys-libs/zlib[>=1.2.11]
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
tcpd? ( sys-apps/tcp-wrappers )
!dev-db/mariadb [[
description = [ MariaDB is a drop-in replacement for MySQL with same binary names ]
resolution = manual
]]
!dev-db/Percona-Server [[
description = [ Percona-Server is a drop-in replacement for MySQL with same binary names ]
resolution = manual
]]
recommendation:
memcached? ( net/memcached [[ description = [ The option provides the bundled memcached but you might want to use a stand-alone memcached as well ] ]] )
suggestion:
app-admin/logrotate [[ description = [ Use logrotate for rotating logs ] ]]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/mysql-5.7.29-fix-libressl-support.patch
)
# event_comment
# >= 5.6 needs libevent[>=1.4.12&<2.0] but
# a) we only have 2.0.22 at the time of writing
# b) lots of other stuff needs >=2.0
#
# Options:
#
# 1. Add libevent 1.4.x, imlement the dep as [>=1.4.12&<2.0] and watch the fun
# 2. Us the bundled libevent for MySQL to ensure it's always the right version.
# 3. Add libevent 1.4.x as SLOT=1.4, slot 2.0.x as SLOT=2.0, dep on the 1.4 slot here.
#
# I prefer 3., of course, but I went with 2. for now to be on the safe side.
#
# dev-libs/libevent[>=1.4.12]
pkg_pretend() {
# Sanity check when upgrading to a different x.y version of mysql
if [[ -z ${MYSQL_MAJOR_UPGRADE} ]] && has_version ${CATEGORY}/${PN} && \
! has_version ${CATEGORY}/${PN}[=${MYSQL_MAJOR_VERSION}*] ; then
ewarn "To install a different major version of MySQL, you have to dump/reload your database."
ewarn "When you've done this, please set 'MYSQL_MAJOR_UPGRADE=YesPlease', to continue the upgrade."
ewarn "For more information visit:"
ewarn "http://dev.mysql.com/doc/refman/${MYSQL_MAJOR_VERSION}/en/upgrading.html"
ewarn "http://dev.mysql.com/doc/refman/${MYSQL_MAJOR_VERSION}/en/downgrading.html"
die "Dump your databases before doing a major version upgrade of MySQL."
fi
if [[ -f "${ROOT}"/etc/tmpfiles.d/${PN}.conf ]] ; then
ewarn "The configuration file /etc/tmpfiles.d/${PN}.conf has been moved to"
ewarn "/usr/$(exhost --target)/lib/tmpfiles.d/${PN}.conf and can be safely removed after upgrade"
ewarn "if you did not make any changes to it."
fi
}
src_prepare() {
cmake_src_prepare
# https://bugs.mysql.com/bug.php?id=72353 (only relevant when using system libevent)
edo sed \
-e "s:\(LIBEVENT_LIBRAR\)IES:\1Y:" \
-i "${WORKBASE}"/${PNV}/cmake/libevent.cmake
# don't link statically against crypto libs
edo sed \
-e '/REVERSE CMAKE_FIND_LIBRARY_SUFFIXES/d' \
-i "${CMAKE_SOURCE}"/cmake/ssl.cmake
# disable the automagic LDAP SASL Authentication Plugin (client-side)
# if added it requires cyrus-sasl -DWITH_SASL:STRING=system and openldap and -DWITH_AUTHENTICATION_LDAP:BOOL=TRUE
edo sed \
-e '/ADD_SUBDIRECTORY(authentication_ldap)/d' \
-i "${CMAKE_SOURCE}"/libmysql/CMakeLists.txt
edo rm -rf "${WORKBASE}"/${PNV}/libmysql/authentication_ldap
option sphinx && edo ln -s "${WORKBASE}"/sphinx-${SPHINX_PV}-release/mysqlse "${WORKBASE}"/${PNV}/storage/sphinx
}
src_configure() {
local cmakeargs=(
-DBOOST_INCLUDE_DIR:PATH="${WORKBASE}"/boost_${BOOST_PV//./_}
-DBUILD_CONFIG:STRING=mysql_release
# The default layout STANDALONE breaks all the scripts.
-DINSTALL_LAYOUT:STRING="RPM"
-DCMAKE_DISABLE_FIND_PACKAGE_Git:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX:PATH=/usr
-DCOMPILATION_COMMENT:STRING="Exherbo"
-DDEFAULT_CHARSET:STRING=utf8
-DDEFAULT_COLLATION:STRING=utf8_general_ci
-DFEATURE_SET:STRING=community
-DINSTALL_BINDIR:PATH=$(exhost --target)/bin
-DINSTALL_DOCDIR:PATH=share/doc/${PNVR}
-DINSTALL_DOCREADMEDIR:PATH=share/doc/${PNVR}
-DINSTALL_INCLUDEDIR:PATH=$(exhost --target)/include/mysql
-DINSTALL_INFODIR:PATH=share/mysql/info
-DINSTALL_LIBDIR:PATH=$(exhost --target)/lib/mysql
-DINSTALL_MANDIR:PATH=share/man
-DINSTALL_MYSQLSHAREDIR:PATH=share/mysql
# Empty value to not install the mysql-test directory
-DINSTALL_MYSQLTESTDIR:STRING=
-DINSTALL_PLUGINDIR:PATH=$(exhost --target)/lib/mysql/plugin
-DINSTALL_SBINDIR:PATH=$(exhost --target)/bin
-DINSTALL_SCRIPTDIR:PATH=$(exhost --target)/bin
-DINSTALL_SHAREDIR:PATH=share
-DINSTALL_SUPPORTFILESDIR:PATH=share/mysql
-DMYSQL_DATADIR:PATH=/var/lib/mysql
-DMYSQL_UNIX_ADDR:PATH=/run/mysqld/mysqld.sock
-DREPRODUCIBLE_BUILD:BOOL=FALSE
-DSYSCONFDIR:PATH=/etc/mysql
-DENABLE_DTRACE:BOOL=FALSE
-DENABLE_GCOV:BOOL=FALSE
-DENABLE_GPROF:BOOL=FALSE
-DENABLED_LOCAL_INFILE:BOOL=TRUE
-DENABLED_PROFILING:BOOL=TRUE
-DWITH_ASAN:BOOL=FALSE
-DWITH_ASAN_SCOPE:BOOL=FALSE
-DWITH_BOOST:PATH="${WORKBASE}"/boost_${BOOST_PV//./_}
-DWITH_CLIENT_PROTOCOL_TRACING:BOOL=FALSE
# Curl is only used with yassl
-DWITH_CURL:BOOL=FALSE
-DWITH_EDITLINE:STRING=system
-DWITH_EXTRA_CHARSETS:STRING=all
# Search for event_comment in this exlib for the reason for using bundled
-DWITH_LIBEVENT:STRING=bundled
-DWITH_LZ4:STRING=system
-DWITH_MSAN:BOOL=FALSE
-DWITH_NUMA:BOOL=FALSE
-DWITH_PROTOBUF:STRING=system
-DWITH_RAPID:BOOL=FALSE
-DWITH_SSL:STRING=/usr/$(exhost --target)
-DWITH_TEST_TRACE_PLUGIN:BOOL=FALSE
-DWITH_UBSAN:BOOL=FALSE
-DWITH_UNIT_TESTS:BOOL=TRUE
-DWITH_VALGRIND:BOOL=FALSE
-DWITH_ZLIB:STRING=system
# Default ENGINES for MySQL 5.6 community build (currently == xlarge) minus embedded
-DWITH_ARCHIVE_STORAGE_ENGINE:BOOL=TRUE
-DWITH_BLACKHOLE_STORAGE_ENGINE:BOOL=TRUE
-DWITH_FEDERATED_STORAGE_ENGINE:BOOL=TRUE
-DWITH_INNOBASE_STORAGE_ENGINE:BOOL=TRUE
)
if option debug ; then
cmakeargs+=(
-DCMAKE_BUILD_TYPE:STRING=Debug
)
else
cmakeargs+=(
-DCMAKE_BUILD_TYPE:STRING=Release
)
fi
if option memcached ; then
cmakeargs+=(
# Unfortunately, the InnoDb/memcached interface needs libevent 1.4.x
# as bundled with MySQL or trying to use memcached WILL make MySQL
# segfault immediately.
# (Keeping this comment even though the bundled lib is used anyway in
# order to remember *why* I changed it.)
-DWITH_LIBEVENT:STRING=bundled
-DWITH_INNODB_MEMCACHED:BOOL=TRUE
)
fi
if option sphinx ; then
cmakeargs+=(
-DWITH_SPHINX_STORAGE_ENGINE:BOOL=TRUE
)
fi
if option systemd ; then
cmakeargs+=(
-DWITH_SYSTEMD:BOOL=TRUE
-DSYSTEMD_PID_DIR:PATH=/run/mysqld
-DSYSTEMD_SERVICES_DIR:PATH=${SYSTEMDSYSTEMUNITDIR}
-DSYSTEMD_TMPFILES_DIR:PATH=/usr/$(exhost --target)/lib/tmpfiles.d
)
else
cmakeargs+=(
-DWITH_SYSTEMD:BOOL=FALSE
)
fi
ecmake \
"${cmakeargs[@]}" \
$(cmake_with debug DEBUG)\
$(cmake_with embedded-server EMBEDDED_SERVER)\
$(cmake_with tcpd LIBWRAP)
}
src_install() {
cmake_src_install
# Remove empty directories
edo rmdir "${IMAGE}"/usr/share/mysql/info
! option debug && edo rmdir "${IMAGE}"/usr/$(exhost --target)/lib/mysql/plugin/debug
keepdir /etc/mysql
insinto /etc/mysql
newins "${FILES}"/mysql-$(ever range 1-2)-my.cnf my.cnf
hereenvd 46mysql <<EOF
LDPATH=/usr/@TARGET@/lib/mysql
EOF
insinto /etc/logrotate.d
newins "${FILES}"/logrotate.mysql mysql
keepdir /var/lib/mysql-files
edo chown mysql:mysql "${IMAGE}"/var/lib/mysql-files
edo chmod 0750 "${IMAGE}"/var/lib/mysql-files
}
pkg_postinst() {
if option sphinx ; then
elog "In order to finalise your installation of the Sphinx Search Engine, you must install"
elog "it in MySQL using the following command as an administrative user:"
elog ""
elog "mysql> INSTALL PLUGIN SPHINX SONAME 'ha_sphinx.so';"
elog ""
fi
if option memcached ; then
elog "In order to finalise your installation of the memcached plugin, you must install"
elog "it in MySQL using the following command as an administrative user:"
elog ""
elog "mysql> install plugin daemon_memcached soname "libmemcached.so";"
elog ""
fi
}

View File

@ -0,0 +1,80 @@
# Copyright 2013-2014 Thomas Witt
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PN="OpenSceneGraph"
MY_PNV=${MY_PN}-${PV}
require github [ user=openscenegraph project=${MY_PN} tag=${MY_PNV} ]
require cmake [ api=2 ]
SUMMARY="High performance 3D graphics toolkit"
DESCRIPTION="
The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application
developers in fields such as visual simulation, games, virtual reality, scientific visualization
and modelling. Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, OSX,
GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems. The OpenSceneGraph is now well
established as the world leading scene graph technology, used widely in the vis-sim, space,
scientific, oil-gas, games and virtual reality industries.
"
HOMEPAGE+=" http://${PN}.org"
LICENCES="wxWinLL-3 LGPL-2.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ffmpeg libav ) [[ number-selected = exactly-one ]]
( providers: ijg-jpeg jpeg-turbo ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/unzip
build+run:
app-text/poppler[cairo]
dev-libs/glib:2
media-libs/freetype:2
media-libs/giflib:=
media-libs/gstreamer:1.0
media-libs/ilmbase
media-libs/jasper
media-libs/libpng:=
media-libs/openexr
media-libs/SDL:0
media-libs/tiff
media-plugins/gst-plugins-base:1.0
net-misc/curl
sys-libs/zlib
x11-dri/mesa
x11-libs/cairo
x11-libs/libX11
x11-libs/libXrandr
providers:ffmpeg? ( media/ffmpeg )
providers:ijg-jpeg? ( media-libs/jpeg:= )
providers:jpeg-turbo? ( media-libs/libjpeg-turbo )
providers:libav? ( media/libav )
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DCMAKE_DISABLE_FIND_PACKAGE_Asio=1
-DCMAKE_DISABLE_FIND_PACKAGE_Inventor=1
-DCMAKE_DISABLE_FIND_PACKAGE_COLLADA=1
-DCMAKE_DISABLE_FIND_PACKAGE_FBX=
-DCMAKE_DISABLE_FIND_PACKAGE_Xine=1
-DCMAKE_DISABLE_FIND_PACKAGE_OpenVRML=1
-DCMAKE_DISABLE_FIND_PACKAGE_Performer=1
-DCMAKE_DISABLE_FIND_PACKAGE_GDAL=1
-DCMAKE_DISABLE_FIND_PACKAGE_LibVNCServer=1
-DCMAKE_DISABLE_FIND_PACKAGE_OurDCMTK=1
-DCMAKE_DISABLE_FIND_PACKAGE_RSVG=1
-DCMAKE_DISABLE_FIND_PACKAGE_NVTT=1
-DCMAKE_DISABLE_FIND_PACKAGE_LIBLAS=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua51=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua52=1
-DCMAKE_DISABLE_FIND_PACKAGE_SDL2=1
-DOSG_USE_LOCAL_LUA_SOURCE=OFF
-DOPENGL_PROFILE=GL2
-DDYNAMIC_OPENSCENEGRAPH=ON
-DLIB_POSTFIX=""
)

View File

@ -0,0 +1,168 @@
From fbdfac84763ce525e7d243eefbb23c013db93e32 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Tue, 24 May 2016 18:06:54 +0200
Subject: [PATCH] Use GNUInstallDirs
This will probably not make it upstream since they try to
be windows compatible.
---
CMake/ConfigureBuild.cmake | 2 +-
CMake/Utils/MyGUIConfigTargets.cmake | 40 +++++++++++++-------------
CMakeLists.txt | 1 +
MyGUIEngine/CMakeLists.txt | 2 +-
Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt | 2 +-
5 files changed, 24 insertions(+), 23 deletions(-)
diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake
index 9c6aad9..b655848 100644
--- a/CMake/ConfigureBuild.cmake
+++ b/CMake/ConfigureBuild.cmake
@@ -47,7 +47,7 @@ if (UNIX)
else ()
configure_file(${MYGUI_TEMPLATES_DIR}/MYGUI.pc.in ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc @ONLY)
endif ()
- install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION lib/pkgconfig)
+ install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
# configure additional packages
diff --git a/CMake/Utils/MyGUIConfigTargets.cmake b/CMake/Utils/MyGUIConfigTargets.cmake
index d48d2a3..61b80a5 100644
--- a/CMake/Utils/MyGUIConfigTargets.cmake
+++ b/CMake/Utils/MyGUIConfigTargets.cmake
@@ -60,27 +60,27 @@ endfunction(mygui_create_vcproj_userfile)
# install targets according to current build type
function(mygui_install_target TARGETNAME SUFFIX)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None ""
- LIBRARY DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
- ARCHIVE DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None ""
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Release None ""
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_RELWDBG_PATH}" CONFIGURATIONS RelWithDebInfo
- LIBRARY DESTINATION "lib${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
- ARCHIVE DESTINATION "lib${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}" CONFIGURATIONS RelWithDebInfo
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS RelWithDebInfo
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_MINSIZE_PATH}" CONFIGURATIONS MinSizeRel
- LIBRARY DESTINATION "lib${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
- ARCHIVE DESTINATION "lib${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_MINSIZE_PATH}" CONFIGURATIONS MinSizeRel
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS MinSizeRel
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_DEBUG_PATH}" CONFIGURATIONS Debug
- LIBRARY DESTINATION "lib${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
- ARCHIVE DESTINATION "lib${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}" CONFIGURATIONS Debug
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Debug
)
endfunction(mygui_install_target)
@@ -364,11 +364,11 @@ function(mygui_install_app PROJECTNAME)
if (MYGUI_INSTALL_PDB)
# install debug pdb files
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_DEBUG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_RELWDBG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
endif ()
@@ -400,7 +400,7 @@ function(mygui_plugin PROJECTNAME)
set_target_properties(${PROJECTNAME} PROPERTIES PREFIX "")
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/MYGUI
)
endfunction(mygui_plugin)
@@ -431,20 +431,20 @@ function(mygui_config_lib PROJECTNAME)
# install debug pdb files
if (MYGUI_STATIC)
install(FILES ${MYGUI_BINARY_DIR}/lib${MYGUI_LIB_DEBUG_PATH}/${PROJECTNAME}Static_d.pdb
- DESTINATION lib${MYGUI_LIB_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/lib${MYGUI_LIB_RELWDBG_PATH}/${PROJECTNAME}Static.pdb
- DESTINATION lib${MYGUI_LIB_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
else ()
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_DEBUG_PATH}/${PROJECTNAME}_d.pdb
- DESTINATION bin${MYGUI_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_RELWDBG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
endif ()
@@ -459,7 +459,7 @@ function(mygui_config_sample PROJECTNAME)
# set install RPATH for Unix systems
if (UNIX AND MYGUI_FULL_RPATH)
set_property(TARGET ${PROJECTNAME} APPEND PROPERTY
- INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/lib)
+ INSTALL_RPATH ${CMAKE_INSTALL_LIBDIR})
set_property(TARGET ${PROJECTNAME} PROPERTY INSTALL_RPATH_USE_LINK_PATH TRUE)
endif ()
endfunction(mygui_config_sample)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9fc5694..0cddafa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,6 +17,7 @@ set(CMAKE_MODULE_PATH
"${MYGUI_SOURCE_DIR}/CMake/Utils"
"${MYGUI_SOURCE_DIR}/CMake/Packages"
)
+include(GNUInstallDirs)
include(CMakeDependentOption)
include(MacroLogFeature)
include(MyGUIConfigTargets)
diff --git a/MyGUIEngine/CMakeLists.txt b/MyGUIEngine/CMakeLists.txt
index c5eab54..839ff43 100644
--- a/MyGUIEngine/CMakeLists.txt
+++ b/MyGUIEngine/CMakeLists.txt
@@ -64,5 +64,5 @@ endif ()
# install MyGUIEngine headers
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/MYGUI"
)
diff --git a/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt b/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
index 169ad05..4bd7cd1 100644
--- a/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
+++ b/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
@@ -30,7 +30,7 @@ link_directories(${OPENGL_LIB_DIR} ${PNG_LIBRARY})
# installation rules
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/MYGUI
)
mygui_install_target(${PROJECTNAME} "")
--
2.8.3

View File

@ -0,0 +1,21 @@
From: Julian Ospald <hasufell@gentoo.org>
Date: Fri Jun 15 10:42:42 UTC 2012
Subject: build system
Upstream: no
fix underlinking
--- MyGUIEngine/CMakeLists.txt
+++ MyGUIEngine/CMakeLists.txt
@@ -48,7 +48,10 @@
if (MYGUI_USE_FREETYPE)
target_link_libraries(${PROJECTNAME}
${FREETYPE_LIBRARIES}
- )
+ dl)
+else()
+ target_link_libraries(${PROJECTNAME}
+ dl)
endif()
# platform specific dependencies

View File

@ -0,0 +1,61 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PNV=MyGUI${PV}
WORK="${WORKBASE}/${PN}-${MY_PNV}"
require cmake [ api=2 ]
require github [ user=MyGUI tag=${MY_PNV} ]
SUMMARY="A library for creating GUIs for games"
HOMEPAGE="http://mygui.info/"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
media-libs/freetype:2
media-libs/glew
x11-dri/mesa
"
DEFAULT_SRC_PREPARE_PATCHES=(
-p0 "${FILES}"/${PNV}-underlinking.patch
-p1 "${FILES}"/${PNV}-Use-GNUInstallDirs.patch
)
CMAKE_SRC_CONFIGURE_PARAMS=(
-DCMAKE_INSTALL_BINDIR="/usr$(exhost --target)/bin"
-DCMAKE_INSTALL_INCLUDEDIR="/usr/$(exhost --target)/include"
-DCMAKE_INSTALL_LIBDIR="/usr/$(exhost --target)/lib"
-DCMAKE_INSTALL_PREFIX="/usr"
-DMYGUI_BUILD_DEMOS=OFF
-DMYGUI_BUILD_DOCS=OFF
-DMYGUI_BUILD_PLUGINS=ON
-DMYGUI_BUILD_TOOLS=OFF
-DCMAKE_BUILD_TYPE=Release
-DMYGUI_BUILD_WRAPPER=OFF
-DMYGUI_INSTALL_DOCS=OFF
-DMYGUI_INSTALL_MEDIA=ON
-DMYGUI_INSTALL_SAMPLES=OFF
-DMYGUI_INSTALL_TOOLS=OFF
-DMYGUI_RENDERSYSTEM=4
-DMYGUI_STATIC=OFF
-DMYGUI_USE_FREETYPE=ON
-DMYGUI_USE_SYSTEM_GLEW=ON
)
src_install() {
cmake_src_install
# test media not needed at runtime
edo rm -r "${IMAGE}"/usr/share/MYGUI/Media/UnitTests
# wrapper not available for linux, remove related media
edo rm -r "${IMAGE}"/usr/share/MYGUI/Media/Wrapper
}

View File

@ -12,13 +12,12 @@ MYOPTIONS=""
DEPENDENCIES="
run:
virtual/GHC
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
!dev-haskell/cabal-install [[
description = [ Both install the same binary ]
resolution = uninstall-blocked-after
]]
recommendation:
virtual/GHC
"
BUGS_TO="hasufell@posteo.de"

View File

@ -1,31 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="cabal-install is the command line interface to Cabal and hackage"
HOMEPAGE="https://www.haskell.org/cabal/"
DOWNLOADS="https://downloads.haskell.org/~cabal/cabal-install-${PV}/cabal-install-${PV}-x86_64-unknown-linux.tar.xz"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
!dev-haskell/cabal-install [[
description = [ Both install the same binary ]
resolution = uninstall-blocked-after
]]
recommendation:
virtual/GHC
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}
src_install() {
dobin cabal
}

View File

@ -1,31 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="cabal-install is the command line interface to Cabal and hackage"
HOMEPAGE="https://www.haskell.org/cabal/"
DOWNLOADS="https://downloads.haskell.org/~cabal/cabal-install-${PV}/cabal-install-${PV}-x86_64-unknown-linux.tar.xz"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
!dev-haskell/cabal-install [[
description = [ Both install the same binary ]
resolution = uninstall-blocked-after
]]
recommendation:
virtual/GHC
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}
src_install() {
dobin cabal
}

View File

@ -1,31 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="cabal-install is the command line interface to Cabal and hackage"
HOMEPAGE="https://www.haskell.org/cabal/"
DOWNLOADS="https://downloads.haskell.org/~cabal/cabal-install-${PV}/cabal-install-${PV}-x86_64-unknown-linux.tar.xz"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
!dev-haskell/cabal-install [[
description = [ Both install the same binary ]
resolution = uninstall-blocked-after
]]
recommendation:
virtual/GHC
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}
src_install() {
dobin cabal
}

View File

@ -1,35 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
SUMMARY="Painless installation of GHC toolchain"
HOMEPAGE="https://www.haskell.org/ghcup/ https://gitlab.haskell.org/haskell/ghcup-hs"
DOWNLOADS="
platform:amd64? ( https://downloads.haskell.org/~ghcup/${PV}/x86_64-linux-ghcup-${PV} )
platform:x86? ( https://downloads.haskell.org/~ghcup/${PV}/i386-linux-ghcup-${PV} )
"
LICENCES="LGPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
platform: amd64 x86
"
DEPENDENCIES="
recommendation:
net-misc/curl [[ description = [ GHCup uses curl by default for downloads ] ]]
suggestion:
net-misc/wget [[ description = [ GHCup can use wget instead of curl ] ]]
"
BUGS_TO="hasufell@posteo.de"
WORK=${WORKBASE}
src_unpack() {
edo cp "${FETCHEDDIR}/${ARCHIVES}" ghcup
}
src_install() {
dobin ghcup
}

View File

@ -17,6 +17,7 @@ MYOPTIONS=""
DEPENDENCIES="
run:
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
virtual/GHC
"
BUGS_TO="hasufell@posteo.de"

View File

@ -1,180 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
unpack ghc-${PV}-x86_64-fedora27-linux.tar.xz
edo mv "${WORK}" "${WORK}-pre"
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
# prepare pre-built ghc
edo pushd "${WORK}-pre"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=( --with-ghc=${TEMP}/ghc-pre/bin/ghc )
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,180 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
unpack ghc-${PV}-x86_64-fedora27-linux.tar.xz
edo mv "${WORK}" "${WORK}-pre"
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
# prepare pre-built ghc
edo pushd "${WORK}-pre"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=( --with-ghc=${TEMP}/ghc-pre/bin/ghc )
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,180 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
unpack ghc-${PV}-x86_64-fedora27-linux.tar.xz
edo mv "${WORK}" "${WORK}-pre"
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
# prepare pre-built ghc
edo pushd "${WORK}-pre"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=( --with-ghc=${TEMP}/ghc-pre/bin/ghc )
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,184 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
BOOTSTRAP_PV="8.6.5"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
https://downloads.haskell.org/~ghc/${BOOTSTRAP_PV}/ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PNV}-no-alex.patch
)
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
unpack ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz
edo mv ghc-${BOOTSTRAP_PV} "bootstrap-ghc"
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
# prepare pre-built ghc
edo pushd "${WORKBASE}/bootstrap-ghc"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
GHC=${TEMP}/ghc-pre/bin/ghc econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,180 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
BOOTSTRAP_PV="8.6.5"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
https://downloads.haskell.org/~ghc/${BOOTSTRAP_PV}/ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
unpack ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz
edo mv ghc-${BOOTSTRAP_PV} "bootstrap-ghc"
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
# prepare pre-built ghc
edo pushd "${WORKBASE}/bootstrap-ghc"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
GHC=${TEMP}/ghc-pre/bin/ghc econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,188 +0,0 @@
# Copyright 2008 Santiago M. Mola
# Copyright 2008, 2009, 2010, 2011 Ingmar Vanhassel
# Copyright 2011 Markus Rothe
# Distributed under the terms of the GNU General Public License v2
# Based in part upon 'ghc-6.8.2.ebuild' from Gentoo, which is:
# Copyright 1999-2008 Gentoo Foundation
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
MY_PN="ghc"
MY_PNV="${MY_PN}-${PV}"
MY_PNVR="${MY_PN}-${PVR}"
BOOTSTRAP_PV="8.6.5"
require bash-completion flag-o-matic alternatives
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="The Glorious Glasgow Haskell Compilation System (non-haskell packages version)"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell.
"
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-src.tar.xz
https://downloads.haskell.org/~ghc/${PV}/${MY_PNV}-testsuite.tar.xz
bootstrap? ( https://downloads.haskell.org/~ghc/${BOOTSTRAP_PV}/ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz )
"
PLATFORMS="-* ~amd64"
BUGS_TO=""
REMOTE_IDS="freecode:${MY_PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${MY_PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
LICENCES="BSD-3"
SLOT="${PV}"
MYOPTIONS="
bootstrap [[ description = [ Use official bindist for bootstrapping ] ]]
doc
llvm [[ description = [ Code generation using LLVM ] ]]
"
# `make test` takes really long, so disable it. It also succeeds (i.e. returned value is zero) in
# case of unexpected failures. There are always unexpected failures.
# If you really want to run the tests, then enable expensive tests in order to run `make fulltest`,
# which runs the same tests as `make test`, but includes more test cases per test.
RESTRICT="test"
DEPENDENCIES="
build:
dev-python/Sphinx
!bootstrap? (
dev-lang/GHC:${BOOTSTRAP_PV}
)
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp:=[>=5]
dev-libs/libffi
llvm? ( dev-lang/llvm[>=2.7] )
!dev-lang/ghc [[ resolution = uninstall-blocked-before ]]
!dev-lang/ghc-bin [[ resolution = uninstall-blocked-before ]]
"
WORK=${WORKBASE}/${MY_PNV}
src_unpack() {
if option bootstrap ; then
unpack ghc-${BOOTSTRAP_PV}-x86_64-fedora27-linux.tar.xz
edo mv ghc-${BOOTSTRAP_PV} "bootstrap-ghc"
fi
unpack ${MY_PNV}-src.tar.xz
unpack ${MY_PNV}-testsuite.tar.xz
}
src_prepare() {
if option bootstrap ; then
# prepare pre-built ghc
edo pushd "${WORKBASE}/bootstrap-ghc"
edo ./configure \
--prefix="${TEMP}/ghc-pre" \
--target=$(exhost --target)
emake install
edo popd
fi
autotools_src_prepare
}
src_configure() {
# Initialize build.mk
echo '# Exherbo changes' > mk/build.mk
cat <<EOF >> mk/build.mk
# Put docs into the right place
docdir = /usr/share/doc/${MY_PNVR}
htmldir = /usr/share/doc/${MY_PNVR}/html
EOF
if option doc; then
echo "BUILD_SPHINX_HTML=YES" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=YES" >> mk/build.mk
else
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
echo "HADDOCK_DOCS=NO" >> mk/build.mk
fi
export PATH="${WORKBASE}/usr/bin:${PATH}"
if option llvm; then
echo "GhcWithLlvmCodeGen=YES" >> mk/build.mk
else
echo "GhcWithLlvmCodeGen=NO" >> mk/build.mk
fi
GHC_SRC_CONFIGURE_OPTIONS+=(
--with-system-libffi
--with-ffi-includes=$(${PKG_CONFIG} --variable includedir libffi)
)
# host and build cause compilation (at least for 7.6.1) to fail, as they're intended for
# cross-compilation.
GHC=ghc-${BOOTSTRAP_PV} econf \
AR=${AR} \
CC=${CC} \
--target=$(exhost --target) \
"${GHC_SRC_CONFIGURE_OPTIONS[@]}"
# don't strip anything. Very useful when stage2 SIGSEGVs on you
echo "STRIP_CMD = :" >> mk/build.mk
}
src_install() {
default
# libraries/ is a partial dupe of the html/ dir hierarchy, but
# containing only LICENSE files
edo rm -rf "${IMAGE}"/usr/share/doc/${MY_PNVR}/{LICENSE,libraries}
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg $(optionq doc && echo "haddock") runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
$(optionq doc && echo "/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}}") \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
if [[ -d ${IMAGE}/usr/share/man ]]; then
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
fi
}
src_test_expensive() {
emake fulltest
}

View File

@ -1,33 +0,0 @@
https://github.com/gentoo-haskell/gentoo-haskell/issues/959
From 144abba394c6a23eb877fbde727111a5e75b9d47 Mon Sep 17 00:00:00 2001
From: Ben Gamari <ben@smart-cactus.org>
Date: Wed, 18 Sep 2019 23:50:20 -0400
Subject: [PATCH] configure: Don't depend upon alex in source dist build
This fixes #16860 by verifying that the generated sources don't already
exist before asserting that the `alex` executable was found. This
replicates the logic already used for `happy` in the case of `alex`.
---
aclocal.m4 | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -984,8 +984,11 @@ else
fi;
changequote([, ])dnl
])
-FP_COMPARE_VERSIONS([$fptools_cv_alex_version],[-lt],[3.1.7],
- [AC_MSG_ERROR([Alex version 3.1.7 or later is required to compile GHC.])])[]
+if test ! -f compiler/parser/Lexer.hs
+then
+ FP_COMPARE_VERSIONS([$fptools_cv_alex_version],[-lt],[3.1.7],
+ [AC_MSG_ERROR([Alex version 3.1.7 or later is required to compile GHC.])])[]
+fi
AlexVersion=$fptools_cv_alex_version;
AC_SUBST(AlexVersion)
])
--
2.23.0

View File

@ -1,62 +0,0 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="evhub" tag="v${PV}" ]
require pypi setup-py [ import=setuptools ]
SUMMARY="Simple, elegant, Pythonic functional programming"
DESCRIPTION="
Coconut is a functional programming language that compiles to Python. Since all
valid Python is valid Coconut, using Coconut will only extend and enhance what
you're already capable of in Python.
Why use Coconut? Coconut is built to be fundamentally useful. Coconut enhances
the repertoire of Python programmers to include the tools of modern functional
programming, in such a way that those tools are easy to use and immensely
powerful; that is, Coconut does to functional programming what Python did to
imperative programming. And Coconut code runs the same on any Python version,
making the Python 2/3 split a thing of the past.
"
HOMEPAGE="http://coconut-lang.org/ ${HOMEPAGE}"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
RESTRICT="test" # missing deps
# python setup.py egg_info
# cat coconut.egg-info/requires.txt
# we ignore upper bounds of:
# * cPyparsing
# * mypy
# * prompt_toolkit[python_abis:2.7]
DEPENDENCIES="
build+run:
dev-python/Pygments[>=2.3.1][python_abis:*(-)?]
dev-python/prompt_toolkit[>=1.0][python_abis:*(-)?]
dev-python/cPyparsing[>=2.4.5.0.1.1][python_abis:*(-)?]
python_abis:2.7? (
dev-python/futures[>=3.3][python_abis:2.7]
dev-python/prompt_toolkit[>=1.0][python_abis:*(-)?]
)
suggestion:
dev-python/mypy[>=0.540] [[ description = [ coconut can run mypy on the compiled python code ] ]]
dev-python/psutil[>=5] [[ description = [ improves use of the --jobs flag ] ]]
dev-python/watchdog[>=0.9] [[ description = [ enables use of the --watch flag ] ]]
python_abis:2.7? (
dev-python/trollius[>=2.2] [[ description = [ enables use of the asyncio library on Python 2 versions by making use of trollius ] ]]
)
"
BUGS_TO="hasufell@posteo.de"
prepare_one_multibuild() {
python_prepare_one_multibuild
# https://github.com/evhub/coconut/issues/527
edo iconv -c -f utf-8 -t ascii README.rst > "${TEMP}"/README.rst
edo $(exhost --tool-prefix)strings "${TEMP}"/README.rst > README.rst
}

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -20,10 +20,6 @@ DEPENDENCIES="
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -1,96 +0,0 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion alternatives
SUMMARY="The Glorious Glasgow Haskell Compilation System"
DESCRIPTION="
GHC is a state-of-the-art, open source, compiler and interactive environment for the functional
language Haskell."
HOMEPAGE="https://www.haskell.org/ghc/"
DOWNLOADS="https://downloads.haskell.org/~ghc/${PV}/ghc-${PV}-x86_64-fedora27-linux.tar.xz"
LICENCES="BSD-3"
SLOT="${PV}"
PLATFORMS="-* ~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-lang/perl:*[>=5.6.1]
dev-libs/gmp[>=6.1] [[ note = [ depends on libgmp.so.10 ] ]]
sys-libs/ncurses[>=6.1-r2] [[ note = [ Only these include libtinfo.so symlinks ] ]]
!dev-lang/GHC [[
description = [ different provider ]
resolution = uninstall-blocked-after
]]
!dev-lang/ghc [[
description = [ Both install the same binaries/libs and alternatives ]
resolution = uninstall-blocked-before
]]
suggestion:
dev-haskell/cabal-install-bin [[ description = [ the cabal binary for installing packages ] ]]
dev-lang/llvm[>=2.7] [[ description = [ LLVM can be used for code generation and linking ] ]]
"
BUGS_TO="hasufell@posteo.de"
REMOTE_IDS="freecode:${PN}"
UPSTREAM_RELEASE_NOTES="http://www.haskell.org/${PN}/docs/${PV}/html/users_guide/release-${PV//./-}.html"
RESTRICT="test"
WORK=${WORKBASE}/ghc-${PV}
src_configure() {
econf \
--target=$(exhost --target)
}
src_compile() {
:
}
src_install() {
default
# bashcomp
dobashcompletion "${FILES}/ghc-bash-completion"
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/share/bash-completion/completions/ghc-bin{,-${SLOT}}
# some scripts are not versioned, move
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hp2ps,hp2ps-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hpc,hpc-${SLOT}}
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{hsc2hs,hsc2hs-${SLOT}}
# remove unversioned symlinks, we create alternatives later
local ghc_bin
for ghc_bin in ghc ghci ghc-pkg haddock runghc runhaskell ; do
edo rm "${IMAGE}"/usr/$(exhost --target)/bin/${ghc_bin}
done
unset ghc_bin
# create alternatives for scripts/binaries
alternatives_for ghc ${SLOT} ${SLOT} \
/usr/$(exhost --target)/bin/ghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghci{,-${SLOT}} \
/usr/$(exhost --target)/bin/ghc-pkg{,-${SLOT}} \
/usr/$(exhost --target)/bin/haddock{,-ghc-${SLOT}} \
/usr/$(exhost --target)/bin/hp2ps{,-${SLOT}} \
/usr/$(exhost --target)/bin/hpc{,-${SLOT}} \
/usr/$(exhost --target)/bin/hsc2hs{,-${SLOT}} \
/usr/$(exhost --target)/bin/runghc{,-${SLOT}} \
/usr/$(exhost --target)/bin/runhaskell /usr/$(exhost --target)/bin/runghc-${SLOT}
# alternatives for manpages
local file alternatives=()
for file in "${IMAGE}"/usr/share/man/*/*; do
alternatives+=(
${file#${IMAGE}}
${file#${IMAGE}}-${SLOT}
)
done
alternatives_for \
ghc ${SLOT} ${SLOT} \
"${alternatives[@]}"
}

View File

@ -0,0 +1,94 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user=ARMmbed tag=mbedtls-${PV} ]
WORK="${WORKBASE}/${PNV}" # because github.exlib is broken
require cmake [ api=2 ]
SUMMARY="Cryptographic library for embedded systems"
HOMEPAGE="https://tls.mbed.org/"
DOWNLOADS="https://tls.mbed.org/download/${PNV}-gpl.tgz"
LICENCES="|| ( Apache-2.0 GPL-2 )"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
doc
havege [[ description = [ Enable the HAVEGE random generator,
not suitable for virtualized environments! ] ]]
threads [[ description = [ Enables the threading abstraction layer
via pthread. This is used if you do intend
to use contexts between threads. ] ]]
x86_cpu_features:
sse2
"
DEPENDENCIES="
build:
doc? (
app-doc/doxygen[>=1.8.4]
media-gfx/graphviz
)
build+run:
sys-libs/zlib
test:
dev-lang/perl:*
dev-lang/python[>=3]
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DENABLE_PROGRAMS=OFF
-DUSE_SHARED_MBEDTLS_LIBRARY=ON
-DINSTALL_MBEDTLS_HEADERS=ON
-DLIB_INSTALL_DIR="/usr/$(exhost --target)/lib"
-DUSE_STATIC_MBEDTLS_LIBRARY=OFF
-DENABLE_ZLIB_SUPPORT=ON
)
CMAKE_SRC_CONFIGURE_TESTS=(
'-DENABLE_TESTING=ON'
)
enable_mbedtls_option() {
local myopt="$@"
# check that config.h syntax is the same at version bump
edo sed -i \
-e "s://#define ${myopt}:#define ${myopt}:" \
"${CMAKE_SOURCE}"/include/mbedtls/config.h
}
src_prepare() {
option x86_cpu_features:sse2 && enable_mbedtls_option MBEDTLS_HAVE_SSE2
enable_mbedtls_option MBEDTLS_ZLIB_SUPPORT
option havege && enable_mbedtls_option MBEDTLS_HAVEGE_C
option threads && enable_mbedtls_option MBEDTLS_THREADING_C
option threads && enable_mbedtls_option MBEDTLS_THREADING_PTHREAD
enable_mbedtls_option MBEDTLS_MD4_C
cmake_src_prepare
}
src_compile() {
default
if option doc ; then
emake apidoc
fi
}
src_test() {
LD_LIBRARY_PATH="${ECMAKE_BUILD_DIR}/library" \
emake test
}
src_install() {
cmake_src_install
if option doc ; then
docinto html
dodoc -r "${CMAKE_SOURCE}"/apidoc/*
fi
}

View File

@ -1,134 +0,0 @@
From: Nathan Phillip Brink <binki@gentoo.org>
Subject: Respect CCASFLAGS (which often defaults to CFLAGS). Fixes
compilation for portage-multilib users.
diff -r c090ed619e90 configure.ac
--- a/configure.ac Sun Jun 26 16:00:09 2011 -0400
+++ b/configure.ac Sun Jun 26 20:52:01 2011 -0400
@@ -47,14 +47,12 @@
AC_CANONICAL_TARGET
AM_MAINTAINER_MODE
-if test -z "$ac_abs_top_srcdir"; then
- _AC_SRCPATHS(.)
-fi
if test -r .Conf.settings1; then
. ./.Conf.settings1
fi
AC_PROG_CC
+AM_PROG_AS
AC_PROG_CPP
mfx_PROG_CPPFLAGS
AC_C_CONST
@@ -84,13 +82,13 @@
if test "X$enable_asm" != Xno; then
mfx_compile_S='${CC-cc} -c conftest.S 1>&AS_MESSAGE_LOG_FD'
cat > conftest.S <<EOF
-#include "$ac_abs_top_srcdir/asm/i386/src_gas/crc_asm.S"
+#include "$srcdir/asm/i386/src_gas/crc_asm.S"
EOF
enable_asm=no
if AC_TRY_EVAL(mfx_compile_S); then
if AC_TRY_COMMAND([test -s conftest.$ac_objext]); then
enable_asm=yes
- UCL_ASM_VPATH=":$ac_abs_top_srcdir/asm/i386/src_gas"
+ UCL_ASM_VPATH=":\$(top_srcdir)/asm/i386/src_gas"
fi
fi
if test "X$enable_asm" = Xno; then
@@ -160,11 +158,6 @@
AC_SUBST(UCL_CFLAGS)
AC_SUBST(UCL_EXTRA_CFLAGS)
-configure_CPPFLAGS=$CPPFLAGS
-configure_CFLAGS=$CFLAGS
-AC_SUBST(configure_CPPFLAGS)
-AC_SUBST(configure_CFLAGS)
-
AC_CONFIG_FILES([Makefile examples/Makefile include/Makefile include/ucl/Makefile src/Makefile])
AC_OUTPUT
diff -r c090ed619e90 src/Makefile.am
--- a/src/Makefile.am Sun Jun 26 16:00:09 2011 -0400
+++ b/src/Makefile.am Sun Jun 26 20:52:01 2011 -0400
@@ -4,11 +4,10 @@
#
VPATH = @srcdir@@UCL_ASM_VPATH@
-SUFFIXES = .S
INCLUDES = -I$(top_srcdir)/include -I$(top_srcdir)
-CPPFLAGS = $(UCL_CPPFLAGS) $(configure_CPPFLAGS) $(UCL_EXTRA_CPPFLAGS)
-CFLAGS = $(UCL_CFLAGS) $(configure_CFLAGS) $(UCL_EXTRA_CFLAGS)
+AM_CPPFLAGS = $(UCL_CPPFLAGS) $(UCL_EXTRA_CPPFLAGS)
+AM_CFLAGS = $(UCL_CFLAGS) $(UCL_EXTRA_CFLAGS)
lib_LTLIBRARIES = libucl.la
@@ -16,51 +15,37 @@
libucl_la_SOURCES = \
alloc.c \
+ getbit.h \
n2b_99.c n2b_d.c n2b_ds.c n2b_to.c \
n2d_99.c n2d_d.c n2d_ds.c n2d_to.c \
n2e_99.c n2e_d.c n2e_ds.c n2e_to.c \
+ ucl_conf.h \
ucl_crc.c \
ucl_init.c \
- ucl_ptr.c \
+ ucl_ptr.c ucl_ptr.h \
ucl_str.c \
ucl_util.c
EXTRA_DIST = \
- getbit.h \
n2_99.ch \
- ucl_conf.h \
ucl_dll.ch \
ucl_mchw.ch \
- ucl_ptr.h \
ucl_swd.ch
-libucl_la_LIBADD = $(UCL_ASM_OBJECTS)
-libucl_la_DEPENDENCIES = $(libucl_la_LIBADD)
-
-
# /***********************************************************************
# // assembler support
# ************************************************************************/
if UCL_USE_ASM
-
-UCL_ASM_OBJECTS = \
- cpuid.lo crc_asm.lo crcs_asm.lo rdtsc.lo rdtsca.lo \
- n2b_d_f1.lo n2b_d_f2.lo n2b_d_f3.lo n2b_d_f4.lo n2b_d_f5.lo n2b_d_f6.lo \
- n2b_d_n1.lo n2b_d_n2.lo n2b_d_n3.lo n2b_d_n4.lo n2b_d_n5.lo n2b_d_n6.lo \
- n2b_d_s1.lo n2b_d_s2.lo n2b_d_s3.lo n2b_d_s4.lo n2b_d_s5.lo n2b_d_s6.lo \
- n2d_d_f1.lo n2d_d_f2.lo n2d_d_f3.lo n2d_d_f4.lo n2d_d_f5.lo n2d_d_f6.lo \
- n2d_d_n1.lo n2d_d_n2.lo n2d_d_n3.lo n2d_d_n4.lo n2d_d_n5.lo n2d_d_n6.lo \
- n2d_d_s1.lo n2d_d_s2.lo n2d_d_s3.lo n2d_d_s4.lo n2d_d_s5.lo n2d_d_s6.lo \
- n2e_d_f1.lo n2e_d_f2.lo n2e_d_f3.lo n2e_d_f4.lo n2e_d_f5.lo n2e_d_f6.lo \
- n2e_d_n1.lo n2e_d_n2.lo n2e_d_n3.lo n2e_d_n4.lo n2e_d_n5.lo n2e_d_n6.lo \
- n2e_d_s1.lo n2e_d_s2.lo n2e_d_s3.lo n2e_d_s4.lo n2e_d_s5.lo n2e_d_s6.lo
-
-.S.o:
- $(CC) -c $<
-
-.S.lo:
- $(LIBTOOL) --mode=compile $(CC) -c $<
-
+libucl_la_SOURCES += \
+ cpuid.S crc_asm.S crcs_asm.S rdtsc.S rdtsca.S \
+ n2b_d_f1.S n2b_d_f2.S n2b_d_f3.S n2b_d_f4.S n2b_d_f5.S n2b_d_f6.S \
+ n2b_d_n1.S n2b_d_n2.S n2b_d_n3.S n2b_d_n4.S n2b_d_n5.S n2b_d_n6.S \
+ n2b_d_s1.S n2b_d_s2.S n2b_d_s3.S n2b_d_s4.S n2b_d_s5.S n2b_d_s6.S \
+ n2d_d_f1.S n2d_d_f2.S n2d_d_f3.S n2d_d_f4.S n2d_d_f5.S n2d_d_f6.S \
+ n2d_d_n1.S n2d_d_n2.S n2d_d_n3.S n2d_d_n4.S n2d_d_n5.S n2d_d_n6.S \
+ n2d_d_s1.S n2d_d_s2.S n2d_d_s3.S n2d_d_s4.S n2d_d_s5.S n2d_d_s6.S \
+ n2e_d_f1.S n2e_d_f2.S n2e_d_f3.S n2e_d_f4.S n2e_d_f5.S n2e_d_f6.S \
+ n2e_d_n1.S n2e_d_n2.S n2e_d_n3.S n2e_d_n4.S n2e_d_n5.S n2e_d_n6.S \
+ n2e_d_s1.S n2e_d_s2.S n2e_d_s3.S n2e_d_s4.S n2e_d_s5.S n2e_d_s6.S
endif
-

View File

@ -1,173 +0,0 @@
port ucl to the x32 ABI
https://bugs.gentoo.org/426334
--- a/acc/acc_arch.h
+++ b/acc/acc_arch.h
@@ -19,6 +19,7 @@
* ACC_ARCH_UNKNOWN [default]
* ACC_ARCH_ALPHA
* ACC_ARCH_AMD64 aka x86-64 or ia32e
+ * ACC_ARCH_X32 aka x86-32
* ACC_ARCH_C166
* ACC_ARCH_IA16 Intel Architecture (8088, 8086, 80186, 80286)
* ACC_ARCH_IA32 Intel Architecture (80386+)
@@ -42,8 +43,13 @@
# define ACC_ARCH_IA16 1
# define ACC_INFO_ARCH "ia16"
#elif defined(__amd64__) || defined(__x86_64__) || defined(_M_AMD64)
+# ifdef __ILP32__
+# define ACC_ARCH_X32 1
+# define ACC_INFO_ARCH "x32"
+# else
# define ACC_ARCH_AMD64 1
# define ACC_INFO_ARCH "amd64"
+# endif
#elif (UINT_MAX <= ACC_0xffffL) && defined(__AVR__)
# define ACC_ARCH_AVR 1
# define ACC_INFO_ARCH "avr"
@@ -92,7 +98,7 @@
#endif
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA16 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA16 || ACC_ARCH_IA32 || ACC_ARCH_X32)
# define ACC_ENDIAN_LITTLE_ENDIAN 1
# define ACC_INFO_ENDIAN "little-endian"
#elif (ACC_ARCH_M68K)
--- a/acc/acc_chk.ch
+++ b/acc/acc_chk.ch
@@ -407,7 +407,7 @@
#if (ACC_ARCH_IA16)
ACCCHK_ASSERT(sizeof(size_t) == 2)
ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
-#elif (ACC_ARCH_IA32 || ACC_ARCH_M68K)
+#elif (ACC_ARCH_IA32 || ACC_ARCH_M68K || ACC_ARCH_X32)
ACCCHK_ASSERT(sizeof(size_t) == 4)
ACCCHK_ASSERT(sizeof(ptrdiff_t) == 4)
ACCCHK_ASSERT(sizeof(acc_intptr_t) == sizeof(void *))
--- a/acc/acc_lib.h
+++ b/acc/acc_lib.h
@@ -423,13 +423,13 @@ ACCLIB_EXTERN(void, acc_set_le64) (acc_hvoid_p, acc_uint64l_t);
#endif
/* inline versions */
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
# define ACC_GET_LE16(p) (* (const unsigned short *) (p))
# define ACC_GET_LE32(p) (* (const acc_uint32e_t *) (p))
# define ACC_SET_LE16(p,v) (* (unsigned short *) (p) = (unsigned short) (v))
# define ACC_SET_LE32(p,v) (* (acc_uint32e_t *) (p) = (acc_uint32e_t) (v))
#endif
-#if (ACC_ARCH_AMD64)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_X32)
# define ACC_GET_LE64(p) (* (const acc_uint64l_t *) (p))
# define ACC_SET_LE64(p,v) (* (acc_uint64l_t *) (p) = (acc_uint64l_t) (v))
#endif
--- a/acc/acclib/bele.ch
+++ b/acc/acclib/bele.ch
@@ -71,7 +71,7 @@ ACCLIB_PUBLIC(void, acc_set_be32) (acc_hvoid_p p, acc_uint32l_t v)
ACCLIB_PUBLIC(unsigned, acc_get_le16) (const acc_hvoid_p p)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
return (* (const unsigned short *) (p));
#else
const acc_hbyte_p b = (const acc_hbyte_p) p;
@@ -87,7 +87,7 @@ ACCLIB_PUBLIC(acc_uint32l_t, acc_get_le24) (const acc_hvoid_p p)
ACCLIB_PUBLIC(acc_uint32l_t, acc_get_le32) (const acc_hvoid_p p)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
return (* (const acc_uint32e_t *) (p));
#else
const acc_hbyte_p b = (const acc_hbyte_p) p;
@@ -102,7 +102,7 @@ ACCLIB_PUBLIC(acc_uint32l_t, acc_get_le32) (const acc_hvoid_p p)
ACCLIB_PUBLIC(void, acc_set_le16) (acc_hvoid_p p, unsigned v)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
(* (unsigned short *) (p) = (unsigned short) (v));
#else
acc_hbyte_p b = (acc_hbyte_p) p;
@@ -121,7 +121,7 @@ ACCLIB_PUBLIC(void, acc_set_le24) (acc_hvoid_p p, acc_uint32l_t v)
ACCLIB_PUBLIC(void, acc_set_le32) (acc_hvoid_p p, acc_uint32l_t v)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
(* (acc_uint32e_t *) (p) = (acc_uint32e_t) (v));
#else
acc_hbyte_p b = (acc_hbyte_p) p;
@@ -191,7 +191,7 @@ ACCLIB_PUBLIC(void, acc_set_be64) (acc_hvoid_p p, acc_uint64l_t v)
ACCLIB_PUBLIC(acc_uint64l_t, acc_get_le64) (const acc_hvoid_p p)
{
-#if (ACC_ARCH_AMD64)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_X32)
return (* (const acc_uint64l_t *) (p));
#elif (ACC_ARCH_IA32)
const acc_uint32e_t* b = (const acc_uint32e_t*) p;
@@ -211,7 +211,7 @@ ACCLIB_PUBLIC(acc_uint64l_t, acc_get_le64) (const acc_hvoid_p p)
ACCLIB_PUBLIC(void, acc_set_le64) (acc_hvoid_p p, acc_uint64l_t v)
{
-#if (ACC_ARCH_AMD64)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_X32)
(* (acc_uint64l_t *) (p)) = v;
#elif (ACC_ARCH_IA32)
(((acc_uint32e_t *)(p))[0] = (acc_uint32e_t) (v >> 0));
--- a/acc/acclib/perfctr.ch
+++ b/acc/acclib/perfctr.ch
@@ -63,7 +63,7 @@ ACCLIB_PUBLIC(int, acc_perfctr_open) (acc_perfctr_handle_p h)
break; /* no working TSC available */
case PERFCTR_X86_AMD_K7:
#endif
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
case PERFCTR_X86_AMD_K8:
case PERFCTR_X86_AMD_K8C:
cc->tsc_on = 1; cc->nractrs = 2;
--- a/acc/acclib/rdtsc.ch
+++ b/acc/acclib/rdtsc.ch
@@ -21,7 +21,7 @@
#if defined(acc_int32e_t)
-#if ((ACC_ARCH_AMD64 || ACC_ARCH_IA32) && ACC_CC_GNUC)
+#if ((ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32) && ACC_CC_GNUC)
# if (ACC_CC_GNUC >= 0x020000ul)
# define __ACCLIB_RDTSC_REGS : : "r" (t) : "cc", "memory", "eax", "edx"
# else
@@ -38,7 +38,7 @@
ACCLIB_PUBLIC(int, acc_tsc_read) (acc_uint32e_t* t)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32) && defined(__ACCLIB_RDTSC_REGS)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32) && defined(__ACCLIB_RDTSC_REGS)
__asm__ __volatile__(
"clc \n" ".byte 0x0f, 0x31\n"
"movl %%eax,(%0)\n" "movl %%edx,4(%0)\n"
@@ -73,7 +73,7 @@ ACCLIB_PUBLIC(int, acc_tsc_read) (acc_uint32e_t* t)
ACCLIB_PUBLIC(int, acc_tsc_read_add) (acc_uint32e_t* t)
{
-#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32) && defined(__ACCLIB_RDTSC_REGS)
+#if (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32) && defined(__ACCLIB_RDTSC_REGS)
__asm__ __volatile__(
"clc \n" ".byte 0x0f, 0x31\n"
"addl %%eax,(%0)\n" "adcl $0,%%edx\n" "addl %%edx,4(%0)\n"
--- a/src/ucl_conf.h
+++ b/src/ucl_conf.h
@@ -172,7 +172,7 @@
#undef UA_SET2
#undef UA_GET4
#undef UA_SET4
-#if 1 && (ACC_ARCH_AMD64 || ACC_ARCH_IA32)
+#if 1 && (ACC_ARCH_AMD64 || ACC_ARCH_IA32 || ACC_ARCH_X32)
# define UA_GET2(p) (* (const ucl_ushortp) (p))
# define UA_SET2(p) (* (ucl_ushortp) (p))
# define UA_GET4(p) (* (const acc_uint32e_t *) (p))

View File

@ -1,35 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.16 ] ]
SUMMARY="The UCL Compression Library"
HOMEPAGE="http://www.oberhumer.com/opensource/ucl/"
DOWNLOADS="http://www.oberhumer.com/opensource/ucl/download/${PNV}.tar.gz"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64"
MYOPTIONS=""
DEPENDENCIES="
"
BUGS_TO="hasufell@posteo.de"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PNV}-CFLAGS.patch
"${FILES}"/${PNV}-x32.patch
)
src_prepare() {
edo sed -n -e '/^AC_DEFUN.*mfx_/,/^])#$/p' aclocal.m4 > acinclude.m4
edo sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac
autotools_src_prepare
}
src_configure() {
econf --enable-shared CFLAGS="${CFLAGS} -std=c90"
}

View File

@ -1,35 +0,0 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PV=${PV/_p/-}
WORK=${WORKBASE}/${PN}-${MY_PV}
require cmake [ api=2 ]
SUMMARY="Bare libuv bindings for lua"
HOMEPAGE="https://github.com/luvit/luv"
DOWNLOADS="https://github.com/luvit/luv/releases/download/${MY_PV}/luv-${MY_PV}.tar.gz"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
dev-lang/LuaJIT
dev-libs/libuv
"
BUGS_TO="hasufell@posteo"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DBUILD_MODULE=OFF
-DBUILD_SHARED_LIBS=ON
-DLUA_BUILD_TYPE=System
-DWITH_LUA_ENGINE="LuaJIT"
-DWITH_SHARED_LIBUV=ON
)

View File

@ -1,35 +0,0 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PV=${PV/_p/-}
WORK=${WORKBASE}/${PN}-${MY_PV}
require cmake [ api=2 ]
SUMMARY="Bare libuv bindings for lua"
HOMEPAGE="https://github.com/luvit/luv"
DOWNLOADS="https://github.com/luvit/luv/releases/download/${MY_PV}/luv-${MY_PV}.tar.gz"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
dev-lang/LuaJIT
dev-libs/libuv
"
BUGS_TO="hasufell@posteo"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DBUILD_MODULE=OFF
-DBUILD_SHARED_LIBS=ON
-DLUA_BUILD_TYPE=System
-DWITH_LUA_ENGINE="LuaJIT"
-DWITH_SHARED_LIBUV=ON
)

View File

@ -1,12 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require pypi setup-py [ import=setuptools ]
SUMMARY="Cython implementation of PyParsing created for use in Coconut and Undebt"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""

View File

@ -1,23 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PNV="${PN}-${PV/_p/.post}"
require setup-py [ import=setuptools work="${MY_PNV}" ]
require pypi
SUMMARY="Easily include Font Awesome icons in your python scripts"
LICENCES="Apache-2.0 OFL-1.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
prepare_one_multibuild() {
edo sed -i \
-e '/pypandoc/d' \
setup.py
setup-py_prepare_one_multibuild
}

View File

@ -23,29 +23,36 @@ MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-python/typed-ast[>=1.4.0&<1.5.0][python_abis:*(-)?]
dev-python/mypy_extensions[>=0.4.3&<0.5.0][python_abis:*(-)?]
dev-python/typing-extensions[>=3.7.4][python_abis:*(-)?]
dev-python/typed-ast[>=1.1.0&<1.2.0][python_abis:*(-)?]
dev-python/mypy_extensions[>=0.4.0&<0.5.0][python_abis:*(-)?]
python_abis:3.4? (
dev-python/typing[>=3.5.3][python_abis:3.4]
)
test:
dev-python/attrs[>=18.0][python_abis:*(-)?]
dev-python/flake8[>=3.7][python_abis:*(-)?]
dev-python/lxml[>=4.2.4][python_abis:*(-)?]
dev-python/psutil[>=4.0][python_abis:*(-)?]
dev-python/py[>=1.5.2][python_abis:*(-)?]
dev-python/pytest[>=4.4][python_abis:*(-)?]
dev-python/pytest[>=3.0][python_abis:*(-)?]
dev-python/pytest-cov[>=2.4.0][python_abis:*(-)?]
dev-python/pytest-xdist[>=1.22][python_abis:*(-)?]
dev-python/pytest-xdist[>=1.18][python_abis:*(-)?]
dev-python/virtualenv[python_abis:*(-)?]
suggestion:
dev-python/psutil[>=4.0][python_abis:*(-)?] [[
dev-python/psutil[>=5.4.0&<5.5.0][python_abis:*(-)?] [[
description = [ Show memory stats in 'dmypy status -v' ] ]]
"
BUGS_TO="hasufell@posteo.de"
# Require unpackaged: flake8-bugbear, flake8-pyi, pytest 4.4+
# Require upstream release with https://github.com/python/mypy/pull/5191 included
# Require unpackaged: flake8-bugbear, flake8-pyi
RESTRICT="test"
prepare_one_multibuild() {
edo sed -i \
-e "/target = /s|lib|$(exhost --target)/lib|" \
setup.py
setup-py_prepare_one_multibuild
}
test_one_multibuild() {
PYTHONPATH="${PWD}" edo ${PYTHON} -B runtests.py -x lint
}

View File

@ -7,9 +7,11 @@ SUMMARY="Experimental type system extensions for programs checked with the mypy
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
PLATFORMS="~amd64"
MYOPTIONS=""
DEPENDENCIES="
build+run:
python_abis:3.4? ( dev-python/typing[>=3.5.3][python_abis:3.4] )
"

View File

@ -7,7 +7,7 @@ SUMMARY="OAuth 2.0 client library"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~armv7 ~armv8 ~x86"
PLATFORMS="~amd64 ~armv7 ~x86"
MYOPTIONS=""
DEPENDENCIES="

View File

@ -1,7 +0,0 @@
# Copyright 2012-2016 Wulf C. Krueger <philantrop@exherbo.org>
# Distributed under the terms of the GNU General Public License v2
require psutil
PLATFORMS="~amd64 ~x86"

View File

@ -1,24 +0,0 @@
# Copyright 2012-2016 Wulf C. Krueger <philantrop@exherbo.org>
# Distributed under the terms of the GNU General Public License v2
require pypi setup-py [ import=setuptools test=nose blacklist="none" ]
SUMMARY="Cross-platform lib for process and system monitoring in Python"
BUGS_TO="philantrop@exherbo.org"
LICENCES="BSD-3"
SLOT="0"
MYOPTIONS=""
# The tests are broken; they try to mess with mount points, devices & other funny
# stuff. (last checked: 5.0.0)
RESTRICT="test"
DEPENDENCIES="
build+run:
python_abis:2.7? (
dev-python/enum34[python_abis:2.7]
)
"

View File

@ -1,25 +0,0 @@
Upstream: Yes
From 08c503bdd1e128118e45fa50be256e27415bbd41 Mon Sep 17 00:00:00 2001
From: Adrian Georgescu <ag@ag-projects.com>
Date: Sat, 1 Jan 2022 15:19:37 +0000
Subject: [PATCH] collections.MutableMapping was deprecated since Python 3.3
---
application/python/weakref.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/application/python/weakref.py b/application/python/weakref.py
index a785a7e..38fd664 100644
--- a/application/python/weakref.py
+++ b/application/python/weakref.py
@@ -1,7 +1,8 @@
import weakref
-from collections import MutableMapping, deque
+from collections.abc import MutableMapping
+from collections import deque
from copy import deepcopy
from threading import local

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-application" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="Basic building blocks for python applications"
HOMEPAGE="http://ag-projects.com/"
@ -15,7 +14,4 @@ MYOPTIONS=""
DEPENDENCIES="
dev-python/zopeinterface[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/08c503bdd1e128118e45fa50be256e27415bbd41.patch
)

View File

@ -0,0 +1,15 @@
From: Julian Ospald <hasufell@gentoo.org>
Date: Tue Sep 8 01:22:40 UTC 2015
Subject: fix compatibility with libressl
Upstream: not yet
--- a/eventlib/green/socket.py
+++ b/eventlib/green/socket.py
@@ -89,7 +89,6 @@
else:
# some constants the SSL module exports but not in __all__
from eventlib.green.ssl import (RAND_add,
- RAND_egd,
RAND_status,
SSL_ERROR_ZERO_RETURN,
SSL_ERROR_WANT_READ,

View File

@ -1,11 +1,11 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-eventlib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require setup-py [ import=distutils blacklist="3" ]
SUMMARY="Coroutine-based networking library"
HOMEPAGE="http://sipsimpleclient.org"
DOWNLOADS="http://download.ag-projects.com/SipClient/${PNV}.tar.gz"
LICENCES="MIT"
SLOT="0"
@ -16,6 +16,8 @@ MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/greenlet[python_abis:*(-)?]
net-twisted/Twisted[python_abis:*(-)?]
net-twisted/TwistedCore[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=( "${FILES}/${PNV}-libressl.patch" )

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-gnutls" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="High level object oriented wrapper around libgnutls"
HOMEPAGE="http://ag-projects.com/"

View File

@ -0,0 +1,23 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="3" ]
SUMMARY="Client library for MSRP protocol and its relay extension"
HOMEPAGE="http://sipsimpleclient.org"
DOWNLOADS="http://download.ag-projects.com/MSRP/${PNV}.tar.gz"
LICENCES="LGPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/python-application[python_abis:*(-)?]
dev-python/python-eventlib[python_abis:*(-)?]
dev-python/python-gnutls[>=3.0.0][python_abis:*(-)?]
net-twisted/TwistedCore[python_abis:*(-)?]
net-twisted/TwistedNames[python_abis:*(-)?]
"

View File

@ -1,22 +0,0 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-msrplib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
SUMMARY="Client library for MSRP protocol and its relay extension"
HOMEPAGE="http://sipsimpleclient.org"
LICENCES="LGPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-eventlib[>=0.3.0][python_abis:*(-)?]
dev-python/python-gnutls[>=3.1.8][python_abis:*(-)?]
net-twisted/Twisted[python_abis:*(-)?]
"

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-otr" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="Off-The-Record Messaging protocol implementation for Python"
HOMEPAGE="https://github.com/AGProjects/python-otr"
@ -14,9 +13,10 @@ MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-python/cryptography[>=1.6][python_abis:*(-)?]
dev-python/cryptography[python_abis:*(-)?]
dev-python/enum34[python_abis:*(-)?]
dev-python/gmpy2[python_abis:*(-)?]
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-application[python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
net-libs/libotr
"

View File

@ -0,0 +1,45 @@
From f786808a36deab01f301905ecdae27e6e17ce197 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:46:34 +0100
Subject: [PATCH 1/2] Build fix on Linux
Upstream: submitted, https://github.com/AGProjects/python-sipsimple/pull/1
---
setup_pjsip.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index 4760e64..a43533d 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -157,6 +157,7 @@ def configure_pjsip(self):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)
From b80cf7ee9d4c32b4e068eb74492f31ccab1296b2 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:55:29 +0100
Subject: [PATCH 2/2] Build fix on Linux
---
setup_pjsip.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index a43533d..5f1b27b 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -157,7 +157,7 @@ def configure_pjsip(self):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
- os.system("chmod +x "+ self.build_dir +"/*configure")
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)

View File

@ -0,0 +1,30 @@
Upstream: https://github.com/AGProjects/python-sipsimple/pull/3
From f96d1e8637f817dc76188742d2e0e1b7b2776581 Mon Sep 17 00:00:00 2001
From: Benjamin Lamowski <benjamin@lamowski.net>
Date: Tue, 22 May 2018 10:11:06 -0400
Subject: [PATCH] pjsip: fix compilation error with FFmpeg 2.8.14
---
deps/pjsip/pjmedia/src/pjmedia-codec/ffmpeg_vid_codecs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/deps/pjsip/pjmedia/src/pjmedia-codec/ffmpeg_vid_codecs.c b/deps/pjsip/pjmedia/src/pjmedia-codec/ffmpeg_vid_codecs.c
index cf859408..097479f6 100644
--- a/deps/pjsip/pjmedia/src/pjmedia-codec/ffmpeg_vid_codecs.c
+++ b/deps/pjsip/pjmedia/src/pjmedia-codec/ffmpeg_vid_codecs.c
@@ -1684,12 +1684,12 @@ static pj_status_t ffmpeg_codec_decode_whole(pjmedia_vid_codec *codec,
avpacket.size = (int)input->size;
/* ffmpeg warns:
- * - input buffer padding, at least FF_INPUT_BUFFER_PADDING_SIZE
+ * - input buffer padding, at least AV_INPUT_BUFFER_PADDING_SIZE
* - null terminated
* Normally, encoded buffer is allocated more than needed, so lets just
* bzero the input buffer end/pad, hope it will be just fine.
*/
- pj_bzero(avpacket.data+avpacket.size, FF_INPUT_BUFFER_PADDING_SIZE);
+ pj_bzero(avpacket.data+avpacket.size, AV_INPUT_BUFFER_PADDING_SIZE);
output->bit_info = 0;
output->timestamp = input->timestamp;

View File

@ -0,0 +1,173 @@
Upstream: https://trac.pjsip.org/repos/changeset/5405/pjproject/trunk/pjmedia/src/pjmedia-codec/openh264.cpp
Reason: Support for OpenH264 v1.6.0 codec
Index: deps/pjsip/pjmedia/src/pjmedia-codec/openh264.cpp
===================================================================
--- deps/pjsip/pjmedia/src/pjmedia-codec/openh264.cpp (revision 5045)
+++ deps/pjsip/pjmedia/src/pjmedia-codec/openh264.cpp (revision 5405)
@@ -164,6 +164,6 @@
struct SLayerPEncCtx
{
- pj_int32_t iDLayerQp;
- SSliceConfig sSliceCfg;
+ pj_int32_t iDLayerQp;
+ SSliceArgument sSliceArgument;
};
@@ -471,16 +471,17 @@
/* Init encoder parameters */
- pj_bzero(&eprm, sizeof(eprm));
- eprm.iInputCsp = videoFormatI420;
+ oh264_data->enc->GetDefaultParams (&eprm);
+ eprm.iComplexityMode = MEDIUM_COMPLEXITY;
eprm.sSpatialLayers[0].uiProfileIdc = PRO_BASELINE;
eprm.iPicWidth = param->enc_fmt.det.vid.size.w;
+ eprm.iUsageType = CAMERA_VIDEO_REAL_TIME;
eprm.iPicHeight = param->enc_fmt.det.vid.size.h;
eprm.fMaxFrameRate = (param->enc_fmt.det.vid.fps.num *
1.0f /
param->enc_fmt.det.vid.fps.denum);
- eprm.uiFrameToBeCoded = (unsigned int) -1;
eprm.iTemporalLayerNum = 1;
eprm.uiIntraPeriod = 0; /* I-Frame interval in frames */
- eprm.bEnableSpsPpsIdAddition = (oh264_data->whole? false : true);
+ eprm.eSpsPpsIdStrategy = (oh264_data->whole ? CONSTANT_ID :
+ INCREASING_ID);
eprm.bEnableFrameCroppingFlag = true;
eprm.iLoopFilterDisableIdc = 0;
@@ -505,16 +506,17 @@
pj_bzero(&elayer_ctx, sizeof (SLayerPEncCtx));
elayer_ctx.iDLayerQp = 24;
- elayer_ctx.sSliceCfg.uiSliceMode = (oh264_data->whole ?
- SM_SINGLE_SLICE : SM_DYN_SLICE);
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceSizeConstraint = param->enc_mtu;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceNum = 1;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[0] = 960;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[1] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[2] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[3] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[4] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[5] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[6] = 0;
- elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[7] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMode = (oh264_data->whole ?
+ SM_SINGLE_SLICE :
+ SM_SIZELIMITED_SLICE);
+ elayer_ctx.sSliceArgument.uiSliceSizeConstraint = param->enc_mtu;
+ elayer_ctx.sSliceArgument.uiSliceNum = 1;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[0] = 960;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[1] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[2] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[3] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[4] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[5] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[6] = 0;
+ elayer_ctx.sSliceArgument.uiSliceMbNum[7] = 0;
elayer->iVideoWidth = eprm.iPicWidth;
@@ -524,12 +526,12 @@
elayer->iSpatialBitrate = eprm.iTargetBitrate;
elayer->iDLayerQp = elayer_ctx.iDLayerQp;
- elayer->sSliceCfg.uiSliceMode = elayer_ctx.sSliceCfg.uiSliceMode;
-
- memcpy( &elayer->sSliceCfg,
- &elayer_ctx.sSliceCfg,
- sizeof (SSliceConfig));
- memcpy( &elayer->sSliceCfg.sSliceArgument.uiSliceMbNum[0],
- &elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum[0],
- sizeof (elayer_ctx.sSliceCfg.sSliceArgument.uiSliceMbNum));
+ elayer->sSliceArgument.uiSliceMode = elayer_ctx.sSliceArgument.uiSliceMode;
+
+ memcpy ( &elayer->sSliceArgument,
+ &elayer_ctx.sSliceArgument,
+ sizeof (SSliceArgument));
+ memcpy ( &elayer->sSliceArgument.uiSliceMbNum[0],
+ &elayer_ctx.sSliceArgument.uiSliceMbNum[0],
+ sizeof (elayer_ctx.sSliceArgument.uiSliceMbNum));
/* Init input picture */
@@ -553,11 +555,18 @@
}
+ int videoFormat = videoFormatI420;
+ rc = oh264_data->enc->SetOption (ENCODER_OPTION_DATAFORMAT, &videoFormat);
+ if (rc != cmResultSuccess) {
+ PJ_LOG(4,(THIS_FILE, "SVC encoder SetOption videoFormatI420 failed, "
+ "rc=%d", rc));
+ return PJMEDIA_CODEC_EFAILED;
+ }
+
/*
* Decoder
*/
sDecParam.sVideoProperty.size = sizeof (sDecParam.sVideoProperty);
- sDecParam.iOutputColorFormat = videoFormatI420;
sDecParam.uiTargetDqLayer = (pj_uint8_t) - 1;
- sDecParam.uiEcActiveFlag = 1;
+ sDecParam.eEcActiveIdc = ERROR_CON_SLICE_COPY;
sDecParam.sVideoProperty.eVideoBsType = VIDEO_BITSTREAM_DEFAULT;
@@ -575,12 +584,4 @@
PJ_LOG(4,(THIS_FILE, "Decoder initialization failed, rc=%d", rc));
return PJMEDIA_CODEC_EFAILED;
- }
-
- pj_int32_t color_fmt = videoFormatI420;
- rc = oh264_data->dec->SetOption (DECODER_OPTION_DATAFORMAT, &color_fmt);
- if (rc) {
- PJ_LOG(4,(THIS_FILE,
- "Warning: SetOption(DECODER_OPTION_DATAFORMAT) failed, rc=%d",
- rc));
}
@@ -662,5 +663,5 @@
}
- if (oh264_data->bsi.eOutputFrameType == videoFrameTypeSkip) {
+ if (oh264_data->bsi.eFrameType == videoFrameTypeSkip) {
output->size = 0;
output->type = PJMEDIA_FRAME_TYPE_NONE;
@@ -682,11 +683,11 @@
/* Find which layer with biggest payload */
oh264_data->ilayer = 0;
- payload_size = oh264_data->bsi.sLayerInfo[0].iNalLengthInByte[0];
+ payload_size = oh264_data->bsi.sLayerInfo[0].pNalLengthInByte[0];
for (i=0; i < (unsigned)oh264_data->bsi.iLayerNum; ++i) {
unsigned j;
pLayerBsInfo = &oh264_data->bsi.sLayerInfo[i];
for (j=0; j < (unsigned)pLayerBsInfo->iNalCount; ++j) {
- if (pLayerBsInfo->iNalLengthInByte[j] > (int)payload_size) {
- payload_size = pLayerBsInfo->iNalLengthInByte[j];
+ if (pLayerBsInfo->pNalLengthInByte[j] > (int)payload_size) {
+ payload_size = pLayerBsInfo->pNalLengthInByte[j];
oh264_data->ilayer = i;
}
@@ -704,5 +705,5 @@
payload_size = 0;
for (int inal = pLayerBsInfo->iNalCount - 1; inal >= 0; --inal) {
- payload_size += pLayerBsInfo->iNalLengthInByte[inal];
+ payload_size += pLayerBsInfo->pNalLengthInByte[inal];
}
@@ -761,5 +762,5 @@
output->size = payload_len;
- if (oh264_data->bsi.eOutputFrameType == videoFrameTypeIDR) {
+ if (oh264_data->bsi.eFrameType == videoFrameTypeIDR) {
output->bit_info |= PJMEDIA_VID_FRM_KEYFRAME;
}
@@ -783,5 +784,5 @@
oh264_data->enc_frame_size = 0;
for (int inal = pLayerBsInfo->iNalCount - 1; inal >= 0; --inal) {
- oh264_data->enc_frame_size += pLayerBsInfo->iNalLengthInByte[inal];
+ oh264_data->enc_frame_size += pLayerBsInfo->pNalLengthInByte[inal];
}
@@ -810,5 +811,5 @@
output->size = payload_len;
- if (oh264_data->bsi.eOutputFrameType == videoFrameTypeIDR) {
+ if (oh264_data->bsi.eFrameType == videoFrameTypeIDR) {
output->bit_info |= PJMEDIA_VID_FRM_KEYFRAME;
}

View File

@ -1,22 +0,0 @@
From f786808a36deab01f301905ecdae27e6e17ce197 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:46:34 +0100
Subject: [PATCH 1/2] Build fix on Linux
Upstream: submitted, https://github.com/AGProjects/python-sipsimple/pull/1
---
setup_pjsip.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index 7dd6c13ff..82e7bd1ca 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -160,6 +160,7 @@ class PJSIP_build_ext(build_ext):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)

View File

@ -0,0 +1,61 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" tag="release-${PV}" ]
require setup-py [ import=distutils blacklist="3" work="${PN}-release-${PV}" ]
SUMMARY="SIP SIMPLE client SDK is a Software Development Kit"
HOMEPAGE="http://sipsimpleclient.org ${HOMEPAGE}"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
( providers: ffmpeg libav ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
dev-python/Cython[python_abis:*(-)?]
virtual/pkg-config
build+run:
dev-db/sqlite:3
dev-python/python-application[>=2.0.0][python_abis:*(-)?]
media-libs/libvpx
media-libs/v4l-utils
sys-apps/util-linux
sys-sound/alsa-lib
providers:ffmpeg? ( media/ffmpeg[h264] )
providers:libav? ( media/libav[h264] )
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
run:
dev-python/dnspython[python_abis:*(-)?]
dev-python/greenlet[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-cjson[python_abis:*(-)?]
dev-python/python-dateutil[python_abis:*(-)?]
dev-python/python-eventlib[python_abis:*(-)?]
dev-python/python-gnutls[python_abis:*(-)?]
dev-python/python-msrplib[>=0.19.0][python_abis:*(-)?]
dev-python/python-otr[>=1.2.0][python_abis:*(-)?]
dev-python/python-xcaplib[python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
media-libs/x264[-10bit]
net-twisted/TwistedCore[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PNV}-fix-build.patch
"${FILES}"/${PNV}-pjmedia-ffmpeg-fix.patch
-p0 "${FILES}"/${PNV}-pjmedia-openh264-1.6.patch
)
src_compile() {
# breaks horribly with 'ld'
export LD=${CC}
setup-py_src_compile
}

View File

@ -1,98 +0,0 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-sipsimple" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
SUMMARY="SIP SIMPLE client SDK is a Software Development Kit"
HOMEPAGE="http://sipsimpleclient.org ${HOMEPAGE}"
ZRTPCPP_SHA="6b3cd8e6783642292bad0c21e3e5e5ce45ff3e03"
DOWNLOADS+="
https://github.com/pjsip/pjproject/archive/2.10.tar.gz
https://github.com/wernerd/ZRTPCPP/archive/${ZRTPCPP_SHA}.tar.gz -> ZRTPCPP-${ZRTPCPP_SHA}.tar.gz
"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
dev-python/Cython[python_abis:*(-)?]
virtual/pkg-config
build+run:
dev-db/sqlite:3
dev-libs/icu:=
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
media/ffmpeg[h264]
media-libs/libvpx
media-libs/v4l-utils
sys-apps/util-linux
sys-sound/alsa-lib
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
run:
dev-python/dnspython[python_abis:*(-)?]
dev-python/gevent[python_abis:*(-)?]
dev-python/greenlet[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-dateutil[python_abis:*(-)?]
dev-python/python-eventlib[>=0.3.0][python_abis:*(-)?]
dev-python/python-gnutls[>=3.1.8][python_abis:*(-)?]
dev-python/python-msrplib[>=0.21.0][python_abis:*(-)?]
dev-python/python-otr[>=2.0.1][python_abis:*(-)?]
dev-python/python-xcaplib[>=2.0.0][python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
media-libs/x264[-10bit]
net-twisted/Twisted[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PN}-fix-build.patch
)
src_prepare() {
setup-py_src_prepare
# MOst of this is straight from get_dependencies.sh but that
# wants to download the dependencies directly so we can't use it
edo mkdir "${WORK}"/deps/pjsip
edo mv "${WORKBASE}"/pjproject*/* "${WORK}"/deps/pjsip/
edo pushd "${WORK}"/deps/
# Copy wrapper from old version to third_party/zsrtp/
edo mkdir ./pjsip/third_party/zsrtp
cp -r zsrtp/include ./pjsip/third_party/zsrtp/
cp -r zsrtp/srtp ./pjsip/third_party/zsrtp/
cp -r zsrtp/build ./pjsip/third_party/build/zsrtp
# Copy new version to third_party/zsrtp/
mkdir ./pjsip/third_party/zsrtp/zrtp
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/bnlib ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/common ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/cryptcommon ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/srtp ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/zrtp ./pjsip/third_party/zsrtp/zrtp/
cp "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/COPYING ./pjsip/third_party/zsrtp/zrtp/
cp "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/README.md ./pjsip/third_party/zsrtp/zrtp/
for p in patches/*.patch; do
expatch -p0 "${p}"
done
edo popd
}
src_compile() {
# breaks horribly with 'ld'
export LD=${CC}
setup-py_src_compile
}

View File

@ -1,11 +1,11 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-xcaplib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="3" ]
SUMMARY="Python library for managing XML documents on XCAP server"
HOMEPAGE="http://sipsimpleclient.org"
DOWNLOADS="http://download.ag-projects.com/XCAP/${PNV}.tar.gz"
LICENCES="GPL-2"
SLOT="0"
@ -14,8 +14,7 @@ MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/gevent[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-application[python_abis:*(-)?]
"

View File

@ -0,0 +1,18 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require pypi setup-py [ import=setuptools ]
SUMMARY="Pure-Python RSA implementation"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~armv7 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-python/pyasn1[python_abis:*(-)?]
"

View File

@ -1,12 +1,9 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PN="typed_ast"
MY_PNV="${MY_PN}-${PV}"
require github [ user="python" project="${MY_PN}" ]
require pypi [ pnv="${MY_PNV}" ]
require setup-py [ import=setuptools blacklist=2 work="${MY_PNV}" ]
require github [ user="python" project="typed_ast" ]
require pypi
require setup-py [ import=setuptools blacklist=2 ]
SUMMARY="A fork of Python 2 and 3 ast modules with type comment support"
DESCRIPTION="
@ -15,6 +12,7 @@ typed_ast is a Python 3 package that provides a Python 2.7 and Python 3 parser s
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
BUGS_TO="hasufell@posteo.de"

View File

@ -0,0 +1,19 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="python" project="typed_ast" ]
require pypi
require setup-py [ import=setuptools blacklist=2 ]
SUMMARY="A fork of Python 2 and 3 ast modules with type comment support"
DESCRIPTION="
typed_ast is a Python 3 package that provides a Python 2.7 and Python 3 parser similar to the standard ast library. Unlike ast, the parsers in typed_ast include PEP 484 type comments and are independent of the version of Python under which they are run. The typed_ast parsers produce the standard Python AST (plus type comments), and are both fast and correct, as they are based on the CPython 2.7 and 3.6 parser
"
LICENCES="Apache-2.0"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
BUGS_TO="hasufell@posteo.de"

View File

@ -1,7 +0,0 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require typed-ast
PLATFORMS="~amd64 ~x86"

View File

@ -0,0 +1,15 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="jquast" ]
require pypi setup-py [ import=setuptools test=pytest ]
SUMMARY="Measures number of Terminal column cells of wide-character codes"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
BUGS_TO="hasufell@posteo.de"

View File

@ -1,19 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require cargo [ channel=stable ]
require github [ user=MitMaro tag="${PV}" ]
SUMMARY="Native cross platform full feature terminal based sequence editor for git interactive rebase"
HOMEPAGE="https://crates.io/crates/git-interactive-rebase-tool ${HOMEPAGE}"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
"
BUGS_TO="hasufell@posteo.de"

View File

@ -5,7 +5,7 @@ require python [ blacklist=3 has_bin=true has_lib=true multibuild=false ]
require github [ user="vslavik" release="v${PV}" suffix=tar.gz ]
SUMMARY="Bakefile makefiles generator"
HOMEPAGE="https://bakefile.org/"
HOMEPAGE="http://bakefile.org/"
LICENCES="MIT"
SLOT="0"

View File

@ -1,52 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require bash-completion zsh-completion
require github [ user='cli' pn='cli' tag="v${PV}" ]
SUMMARY="Github CLI"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64"
MYOPTIONS=""
DEPENDENCIES="
build:
dev-lang/go
run:
dev-scm/git
"
BUGS_TO="hasufell@posteo.de"
src_compile() {
export GOPATH="${WORK}"/.gopath
export GOBIN="${WORK}"/.bin
export GH_VERSION="v${PV}"
unset LDFLAGS
esandbox disable_net
emake
emake manpages
edo go run ./cmd/gh completion -s bash > gh.bash-completion
edo go run ./cmd/gh completion -s zsh > _gh
esandbox enable_net
}
src_install() {
dobin bin/gh
emagicdocs
doman share/man/man?/gh*.?
dobashcompletion gh.bash-completion gh
dozshcompletion _gh
}
src_test() {
esandbox disable_net
default
esandbox enable_net
}

View File

@ -1,21 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require cargo [ channel=stable ]
require github [ user="extrawurst" tag="v${PV}" ]
SUMMARY="Blazing fast terminal-ui for git written in rust"
HOMEPAGE="https://crates.io/crates/gitui ${HOMEPAGE}"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-scm/libgit2
"
BUGS_TO="hasufell@posteo.de"

View File

@ -1,19 +0,0 @@
# Copyright 2020 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require cargo [ channel=stable ]
require github [ user="dan-t" tag="v${PV}" ]
SUMMARY="Create ctags/etags for a cargo project"
HOMEPAGE="https://crates.io/crates/rusty-tags ${HOMEPAGE}"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
"
BUGS_TO="hasufell@posteo.de"

View File

@ -0,0 +1,48 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require alternatives github [ user='universal-ctags' pn='ctags' ]
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
SUMMARY="Universal ctags"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="json xml yaml"
DEPENDENCIES="
build+run:
json? ( dev-libs/jansson )
xml? ( dev-libs/libxml2:2.0 )
yaml? ( dev-libs/libyaml )
build:
dev-python/docutils
virtual/pkg-config
"
DEFAULT_SRC_CONFIGURE_OPTION_ENABLES=(
'json'
'xml'
'yaml'
)
src_prepare() {
# autogen.sh usually runs this
edo ./misc/dist-test-cases > makefiles/test-cases.mak
autotools_src_prepare
}
src_install() {
default
# alternatives collision
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{ctags,universal-ctags}
edo mv "${IMAGE}"/usr/share/man/man1/{ctags,universal-ctags}.1
alternatives_for ctags universal-ctags 500 \
/usr/$(exhost --target)/bin/ctags universal-ctags \
/usr/share/man/man1/ctags.1 universal-ctags.1
}

View File

@ -0,0 +1,63 @@
# Copyright 2014-2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require gtk-icon-cache
require github [ user=OpenMW tag=${PNV} ]
require cmake [ api=2 ]
SUMMARY="An open source reimplementation of TES III: Morrowind"
HOMEPAGE="http://openmw.org/"
LICENCES="GPL-3 MIT bitstream-font OFL-1.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ffmpeg libav ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
app-arch/unshield
dev-games/OpenSceneGraph[>=3.3.4]
dev-games/mygui[>=3.2.1]
dev-libs/boost
dev-libs/tinyxml
media-libs/SDL:2[X]
media-libs/freetype:2
media-libs/openal
sci-physics/bullet[>=2.86]
x11-libs/qtbase:5
providers:ffmpeg? ( media/ffmpeg )
providers:libav? ( media/libav )
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DBINDIR="/usr/$(exhost --target)/bin"
-DBUILD_BSATOOL=ON
-DBUILD_DOCS=OFF
-DBUILD_ESMTOOL=ON
-DBUILD_LAUNCHER=ON
-DBUILD_NIFTEST=OFF
-DBUILD_OPENCS=ON
-DBUILD_OPENMW=ON
-DBUILD_UNITTESTS=OFF
-DBUILD_WITH_CODE_COVERAGE=OFF
-DBUILD_WIZARD=ON
-DCMAKE_INSTALL_PREFIX=/usr
-DDATADIR="/usr/share/${PN}"
-DDESIRED_QT_VERSION=5
-DGLOBAL_CONFIG_PATH="/etc"
-DICONDIR="/usr/share/icons/hicolor/256x256/apps"
-DLIBDIR="/usr/$(exhost --target)/lib"
-DMORROWIND_DATA_FILES="/usr/share/${PN}/data"
-DOPENMW_RESOURCE_FILES="/usr/share/${PN}/resources"
-DUSE_SYSTEM_TINYXML=ON
)
src_install() {
default
keepdir /usr/share/openmw/data
}

View File

@ -0,0 +1,100 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require desktop-utils
SUMMARY="Faster Than Light: A spaceship simulation real-time roguelike-like game"
HP="http://www.ftlgame.com"
GOG_HP="https://www.gog.com/game/faster_than_light"
HOMEPAGE="${HP} ${GOG_HP}"
FTL_SH="gog_ftl_advanced_edition_2.0.0.2.sh"
FTL_TAR="FTL.${PV}.tar.gz"
DOWNLOADS="
gog? ( manual: ${FTL_SH} )
!gog? ( manual: ${FTL_TAR} )
"
LICENCES="all-rights-reserved Boost-1.0 free-noncomm MIT FTL LGPL-2.1 ZLIB libpng"
SLOT="0"
PLATFORMS="-* ~amd64 ~x86"
MYOPTIONS="
gog [[ description = [ Use the gog advanced edition version ] ]]
( platform: amd64 x86 )
"
RESTRICT="fetch"
DEPENDENCIES="
run:
media-libs/DevIL
media-libs/SDL:0[X]
media-libs/freetype:2
sys-libs/zlib
x11-dri/mesa
build:
virtual/unzip
"
WORK="${WORKBASE}"
pkg_nofetch() {
local hp=${HP}
optionq gog && hp=${GOG_HP}
local file=${FTL_TAR}
optionq gog && file=${FTL_SH}
einfo "Please buy & download ${file} from:"
einfo " ${hp}"
einfo "and move it to ${FETCHEDDIR}"
einfo
}
pkg_setup() {
exdirectory --allow /opt
}
src_unpack() {
if optionq gog ; then
unzip -qo "${FETCHEDDIR}/${FTL_SH}"
[[ $? -le 1 ]] || die "unpacking ${FTL_SH} failed!"
else
default
fi
}
src_install() {
local dir=/opt/${PN}
local arch=$(option platform:amd64 "amd64" "x86")
local datadir=${WORKBASE}/${PN}/data
optionq gog && datadir=${WORKBASE}/data/noarch/game/data
local htmldir=${WORKBASE}/${PN}
optionq gog && htmldir=${WORKBASE}/data/noarch/docs
insinto "${dir}"
doins -r "${datadir}"/resources
exeinto "${dir}"/bin
doexe "${datadir}"/${arch}/bin/${PN}
exeinto "${dir}"/lib
doexe "${datadir}"/${arch}/lib/*.so*
herebin ${PN} << EOF
#!/bin/sh
cd "/opt/FTL"
if [ "\${LD_LIBRARY_PATH+set}" = "set" ] ; then
export LD_LIBRARY_PATH="\${LD_LIBRARY_PATH}:/opt/FTL/lib"
else
export LD_LIBRARY_PATH="/opt/FTL/lib"
fi
exec /opt/FTL/bin/FTL "\$@"
EOF
install_desktop_entry "Name=Faster Than Light" \
"Icon=/usr/share/pixmaps/FTL.bmp"
insinto /usr/share/pixmaps
newins "${datadir}"/resources/exe_icon.bmp FTL.bmp
insinto /usr/share/doc/${PNVR}/html
doins "${htmldir}"/${PN}_README.html
}

View File

@ -7,7 +7,7 @@ SUMMARY="Faster Than Light: A spaceship simulation real-time roguelike-like game
HP="http://www.ftlgame.com"
GOG_HP="https://www.gog.com/game/faster_than_light"
HOMEPAGE="${HP} ${GOG_HP}"
FTL_SH="ftl_advanced_edition_1_6_12_2_35269.sh"
FTL_SH="ftl_advanced_edition_en_1_6_3_17917.sh"
DOWNLOADS="manual: ${FTL_SH}"
LICENCES="all-rights-reserved Boost-1.0 free-noncomm MIT FTL LGPL-2.1 ZLIB libpng"

View File

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
require github [ user=clintbellanger project=flare-game tag=v${PV} pn=flare-game ]
require cmake [ api=2 ] desktop-utils gtk-icon-cache
require cmake desktop-utils gtk-icon-cache
SUMMARY="Free/Libre Action Roleplaying game"
@ -15,7 +15,7 @@ DEPENDENCIES="
games-engines/flare[~${PV}]
"
CMAKE_SOURCE=${WORKBASE}/${PN}-game-${PV}
WORK=${WORKBASE}/${PN}-game-${PV}
CMAKE_SRC_CONFIGURE_PARAMS=(
-DBINDIR="/usr/$(exhost --target)/bin"
@ -31,5 +31,7 @@ exec flare --game=flare-game "\$@"
EOF
install_desktop_entry "Name=Flare (game)" "Exec=flare-game"
dodoc README
}

View File

@ -3,7 +3,7 @@
SCM_CHECKOUT_TO=flare-game
require github [ user=clintbellanger project=flare-game pn=flare-game ]
require cmake [ api=2 ] desktop-utils gtk-icon-cache
require cmake desktop-utils gtk-icon-cache
SUMMARY="Free/Libre Action Roleplaying game"
@ -30,5 +30,7 @@ exec flare --game=flare-game "\$@"
EOF
install_desktop_entry "Name=Flare (game)" "Exec=flare-game"
dodoc README
}

View File

@ -1,46 +0,0 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require gog [ installer="stardew_valley_1_4_5_433754439_36068.sh" ]
require desktop-utils
SUMMARY="Stardew Valley is a farming simulation role-playing video game"
HOMEPAGE="https://www.gog.com/game/stardew_valley"
SLOT="0"
PLATFORMS="-* ~amd64 ~x86"
MYOPTIONS="
( platform: amd64 x86 )
"
DEPENDENCIES="
run:
media-libs/fontconfig
media-libs/freetype
x11-apps/xterm
x11-dri/mesa
"
src_install() {
local arch=$(option platform:amd64 "x86_64" "x86")
local noarch=$(option platform:amd64 "x86" "x86_64")
local nolib=$(option platform:amd64 "lib" "lib64")
herebin ${PN} <<EOF
#!/bin/sh
cd "${GOG_INSTALL_DIR}/game"
export TERM=xterm
exec "./StardewValley.bin.${arch}" "\$@"
EOF
install_desktop_entry "Name=Stardew Valley"
edo rm "${WORK}/game/StardewValley.bin.${noarch}"
edo rm -r "${WORK}/game/${nolib}"
insinto "${GOG_INSTALL_DIR}"
doins -r "${WORK}/game"
edo chmod +x "${IMAGE%/}${GOG_INSTALL_DIR}/game/StardewValley.bin.${arch}"
edo ln -sf mcs.bin.${arch} "${IMAGE%/}${GOG_INSTALL_DIR}"/game/mcs
}

View File

@ -1,66 +0,0 @@
Upstream: yes, cherrry-picked from master
Reason: Fix build with boost[>=1.69.0] which removed the signals lib
From 72a634ef6262dc1401298adb28000d1c89442482 Mon Sep 17 00:00:00 2001
From: geoffthemedio <geoffthemedio@gmail.com>
Date: Fri, 26 Oct 2018 09:06:46 +0200
Subject: [PATCH] Remove all references to signals library from CMakeLists.txt
---
CMakeLists.txt | 5 -----
GG/CMakeLists.txt | 2 +-
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 927c8c165..8d3832049 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -205,7 +205,6 @@ find_package(Boost ${MINIMUM_BOOST_VERSION}
log_setup
regex
serialization
- signals
system
thread
REQUIRED)
@@ -357,7 +356,6 @@ target_link_libraries(freeorioncommon
${Boost_LOG_SETUP_LIBRARY}
${Boost_REGEX_LIBRARY}
${Boost_SERIALIZATION_LIBRARY}
- ${Boost_SIGNALS_LIBRARY}
${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
${ZLIB_LIBRARIES}
@@ -668,8 +666,6 @@ if(APPLE)
${CMAKE_COMMAND} -E copy_if_different "${Boost_PYTHON_LIBRARY}" "$<TARGET_FILE_DIR:freeorion>/../SharedSupport"
COMMAND
${CMAKE_COMMAND} -E copy_if_different "${Boost_SERIALIZATION_LIBRARY}" "$<TARGET_FILE_DIR:freeorion>/../SharedSupport"
- COMMAND
- ${CMAKE_COMMAND} -E copy_if_different "${Boost_SIGNALS_LIBRARY}" "$<TARGET_FILE_DIR:freeorion>/../SharedSupport"
COMMAND
${CMAKE_COMMAND} -E copy_if_different "${Boost_SYSTEM_LIBRARY}" "$<TARGET_FILE_DIR:freeorion>/../SharedSupport"
COMMAND
@@ -769,7 +765,6 @@ if(WIN32)
boost_python-vc90-mt-1_44.dll
boost_regex-vc90-mt-1_44.dll
boost_serialization-vc90-mt-1_44.dll
- boost_signals-vc90-mt-1_44.dll
boost_system-vc90-mt-1_44.dll
boost_thread-vc90-mt-1_44.dll
glew32.dll
diff --git a/GG/CMakeLists.txt b/GG/CMakeLists.txt
index 1e5f29d93..238cc44d0 100644
--- a/GG/CMakeLists.txt
+++ b/GG/CMakeLists.txt
@@ -91,7 +91,7 @@ if(NOT USE_STATIC_LIBS)
endif()
set(Boost_USE_STATIC_LIBS ${USE_STATIC_LIBS})
-find_package(Boost ${MINIMUM_BOOST_VERSION} COMPONENTS date_time filesystem regex signals system thread log REQUIRED)
+find_package(Boost ${MINIMUM_BOOST_VERSION} COMPONENTS date_time filesystem regex system thread log REQUIRED)
find_package(OpenGL REQUIRED)
find_package(GLEW REQUIRED)
--
2.20.1

View File

@ -46,10 +46,6 @@ DEPENDENCIES="
BUGS_TO="hasufell@posteo.de"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PN}-Remove-all-references-to-signals-library-from-CMakeL.patch
)
CMAKE_SRC_CONFIGURE_PARAMS=(
-DRELEASE_COMPILE_FLAGS=""
-DCMAKE_SKIP_RPATH=ON

Some files were not shown because too many files have changed in this diff Show More