parent
6162b5b053
commit
3ab935ee6f
Binary file not shown.
Binary file not shown.
@ -1,8 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>lordvan@gentoo.org</email>
|
||||
<name>Thomas Raschbacher</name>
|
||||
</maintainer>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
||||
|
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
@ -0,0 +1,8 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-group
|
||||
|
||||
ACCT_GROUP_ID=347
|
Binary file not shown.
@ -1,8 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>lordvan@gentoo.org</email>
|
||||
<name>Thomas Raschbacher</name>
|
||||
</maintainer>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
||||
|
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
@ -0,0 +1,12 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit acct-user
|
||||
|
||||
ACCT_USER_ID=347
|
||||
ACCT_USER_GROUPS=( "${PN}" )
|
||||
ACCT_USER_HOME=/var/lib/${PN}
|
||||
|
||||
acct-user_add_deps
|
Binary file not shown.
@ -1,54 +0,0 @@
|
||||
From 921bd53103c2b543e95c9e6b863702db3ff54d0c Mon Sep 17 00:00:00 2001
|
||||
From: Jill R <4121322+jillr@users.noreply.github.com>
|
||||
Date: Fri, 2 Oct 2020 11:37:37 -0700
|
||||
Subject: [PATCH] aws_ssm: Namespace S3 buckets and delete transferred files
|
||||
(#237)
|
||||
|
||||
Files transferred to instances via the SSM connection plugin should use
|
||||
folders within the bucket that are namespaced per-host, to prevent collisions.
|
||||
Files should also be deleted from buckets when they are no longer required.
|
||||
|
||||
Fixes: #221
|
||||
Fixes: #222
|
||||
|
||||
Based on work by abeluck
|
||||
|
||||
changelog
|
||||
---
|
||||
ansible_collections/community/aws/changelogs/fragments/221_222_ssm_bucket_operations.yaml | 2 ++
|
||||
ansible_collections/community/aws/plugins/connection/aws_ssm.py | 6 +++++-
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
create mode 100644 ansible_collections/community/aws/changelogs/fragments/221_222_ssm_bucket_operations.yaml
|
||||
|
||||
diff --git a/ansible_collections/community/aws/changelogs/fragments/221_222_ssm_bucket_operations.yaml b/ansible_collections/community/aws/changelogs/fragments/221_222_ssm_bucket_operations.yaml
|
||||
new file mode 100644
|
||||
index 00000000..247d5e36
|
||||
--- /dev/null
|
||||
+++ b/ansible_collections/community/aws/changelogs/fragments/221_222_ssm_bucket_operations.yaml
|
||||
@@ -0,0 +1,2 @@
|
||||
+bugfixes:
|
||||
+ - aws_ssm connection plugin - namespace file uploads to S3 into unique folders per host, to prevent name collisions. Also deletes files from S3 to ensure temp files are not left behind. (https://github.com/ansible-collections/community.aws/issues/221, https://github.com/ansible-collections/community.aws/issues/222)
|
||||
diff --git a/ansible_collections/community/aws/plugins/connection/aws_ssm.py b/ansible_collections/community/aws/plugins/connection/aws_ssm.py
|
||||
index 7f7d6926..94289eee 100644
|
||||
--- a/ansible_collections/community/aws/plugins/connection/aws_ssm.py
|
||||
+++ b/ansible_collections/community/aws/plugins/connection/aws_ssm.py
|
||||
@@ -522,7 +522,8 @@ def _get_boto_client(self, service, region_name=None):
|
||||
def _file_transport_command(self, in_path, out_path, ssm_action):
|
||||
''' transfer a file from using an intermediate S3 bucket '''
|
||||
|
||||
- s3_path = out_path.replace('\\', '/')
|
||||
+ path_unescaped = "{0}/{1}".format(self.instance_id, out_path)
|
||||
+ s3_path = path_unescaped.replace('\\', '/')
|
||||
bucket_url = 's3://%s/%s' % (self.get_option('bucket_name'), s3_path)
|
||||
|
||||
if self.is_windows:
|
||||
@@ -546,6 +547,9 @@ def _file_transport_command(self, in_path, out_path, ssm_action):
|
||||
client.upload_fileobj(data, self.get_option('bucket_name'), s3_path)
|
||||
(returncode, stdout, stderr) = self.exec_command(get_command, in_data=None, sudoable=False)
|
||||
|
||||
+ # Remove the files from the bucket after they've been transferred
|
||||
+ client.delete_object(Bucket=self.get_option('bucket_name'), Key=s3_path)
|
||||
+
|
||||
# Check the return code
|
||||
if returncode == 0:
|
||||
return (returncode, stdout, stderr)
|
@ -0,0 +1,242 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit go-module
|
||||
|
||||
EGO_SUM=(
|
||||
"filippo.io/age v1.0.0-beta4"
|
||||
"filippo.io/age v1.0.0-beta4/go.mod"
|
||||
"github.com/BurntSushi/toml v0.3.1"
|
||||
"github.com/BurntSushi/toml v0.3.1/go.mod"
|
||||
"github.com/atotto/clipboard v0.1.2"
|
||||
"github.com/atotto/clipboard v0.1.2/go.mod"
|
||||
"github.com/blang/semver v0.0.0-20190414182527-1a9109f8c4a1"
|
||||
"github.com/blang/semver v0.0.0-20190414182527-1a9109f8c4a1/go.mod"
|
||||
"github.com/caspr-io/yamlpath v0.0.0-20200722075116-502e8d113a9b"
|
||||
"github.com/caspr-io/yamlpath v0.0.0-20200722075116-502e8d113a9b/go.mod"
|
||||
"github.com/cenkalti/backoff v2.2.1+incompatible"
|
||||
"github.com/cenkalti/backoff v2.2.1+incompatible/go.mod"
|
||||
"github.com/cheggaaa/pb v1.0.29/go.mod"
|
||||
"github.com/chzyer/logex v1.1.10"
|
||||
"github.com/chzyer/logex v1.1.10/go.mod"
|
||||
"github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e"
|
||||
"github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod"
|
||||
"github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1"
|
||||
"github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod"
|
||||
"github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d"
|
||||
"github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod"
|
||||
"github.com/cpuguy83/go-md2man/v2 v2.0.0"
|
||||
"github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod"
|
||||
"github.com/creack/pty v1.1.9/go.mod"
|
||||
"github.com/davecgh/go-spew v1.1.0/go.mod"
|
||||
"github.com/davecgh/go-spew v1.1.1"
|
||||
"github.com/davecgh/go-spew v1.1.1/go.mod"
|
||||
"github.com/dominikschulz/github-releases v0.0.3"
|
||||
"github.com/dominikschulz/github-releases v0.0.3/go.mod"
|
||||
"github.com/dustin/go-humanize v1.0.0/go.mod"
|
||||
"github.com/fatih/color v1.9.0"
|
||||
"github.com/fatih/color v1.9.0/go.mod"
|
||||
"github.com/godbus/dbus v0.0.0-20190623212516-8a1682060722"
|
||||
"github.com/godbus/dbus v0.0.0-20190623212516-8a1682060722/go.mod"
|
||||
"github.com/gokyle/twofactor v1.0.1"
|
||||
"github.com/gokyle/twofactor v1.0.1/go.mod"
|
||||
"github.com/google/go-cmp v0.3.0"
|
||||
"github.com/google/go-cmp v0.3.0/go.mod"
|
||||
"github.com/google/go-cmp v0.5.2"
|
||||
"github.com/google/go-cmp v0.5.2/go.mod"
|
||||
"github.com/google/go-github v17.0.0+incompatible"
|
||||
"github.com/google/go-github v17.0.0+incompatible/go.mod"
|
||||
"github.com/google/go-querystring v1.0.0"
|
||||
"github.com/google/go-querystring v1.0.0/go.mod"
|
||||
"github.com/google/gofuzz v1.0.0/go.mod"
|
||||
"github.com/google/uuid v1.1.1"
|
||||
"github.com/google/uuid v1.1.1/go.mod"
|
||||
"github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1"
|
||||
"github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod"
|
||||
"github.com/hashicorp/errwrap v1.0.0"
|
||||
"github.com/hashicorp/errwrap v1.0.0/go.mod"
|
||||
"github.com/hashicorp/go-multierror v1.1.0"
|
||||
"github.com/hashicorp/go-multierror v1.1.0/go.mod"
|
||||
"github.com/hashicorp/golang-lru v0.5.4"
|
||||
"github.com/hashicorp/golang-lru v0.5.4/go.mod"
|
||||
"github.com/jsimonetti/pwscheme v0.0.0-20160922125227-76804708ecad"
|
||||
"github.com/jsimonetti/pwscheme v0.0.0-20160922125227-76804708ecad/go.mod"
|
||||
"github.com/json-iterator/go v1.1.10"
|
||||
"github.com/json-iterator/go v1.1.10/go.mod"
|
||||
"github.com/jtolds/gls v4.20.0+incompatible"
|
||||
"github.com/jtolds/gls v4.20.0+incompatible/go.mod"
|
||||
"github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51"
|
||||
"github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod"
|
||||
"github.com/klauspost/cpuid v1.2.3"
|
||||
"github.com/klauspost/cpuid v1.2.3/go.mod"
|
||||
"github.com/klauspost/cpuid v1.3.1"
|
||||
"github.com/klauspost/cpuid v1.3.1/go.mod"
|
||||
"github.com/kr/pretty v0.1.0/go.mod"
|
||||
"github.com/kr/pty v1.1.1/go.mod"
|
||||
"github.com/kr/text v0.1.0"
|
||||
"github.com/kr/text v0.1.0/go.mod"
|
||||
"github.com/kr/text v0.2.0"
|
||||
"github.com/kr/text v0.2.0/go.mod"
|
||||
"github.com/martinhoefling/goxkcdpwgen v0.0.0-20190331205820-7dc3d102eca3"
|
||||
"github.com/martinhoefling/goxkcdpwgen v0.0.0-20190331205820-7dc3d102eca3/go.mod"
|
||||
"github.com/mattn/go-colorable v0.1.4"
|
||||
"github.com/mattn/go-colorable v0.1.4/go.mod"
|
||||
"github.com/mattn/go-colorable v0.1.7"
|
||||
"github.com/mattn/go-colorable v0.1.7/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.8"
|
||||
"github.com/mattn/go-isatty v0.0.8/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.11"
|
||||
"github.com/mattn/go-isatty v0.0.11/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.12"
|
||||
"github.com/mattn/go-isatty v0.0.12/go.mod"
|
||||
"github.com/mattn/go-runewidth v0.0.4/go.mod"
|
||||
"github.com/minio/md5-simd v1.1.0"
|
||||
"github.com/minio/md5-simd v1.1.0/go.mod"
|
||||
"github.com/minio/minio-go/v7 v7.0.7"
|
||||
"github.com/minio/minio-go/v7 v7.0.7/go.mod"
|
||||
"github.com/minio/sha256-simd v0.1.1"
|
||||
"github.com/minio/sha256-simd v0.1.1/go.mod"
|
||||
"github.com/minio/sio v0.2.1/go.mod"
|
||||
"github.com/mitchellh/go-homedir v1.1.0"
|
||||
"github.com/mitchellh/go-homedir v1.1.0/go.mod"
|
||||
"github.com/mitchellh/go-ps v1.0.0"
|
||||
"github.com/mitchellh/go-ps v1.0.0/go.mod"
|
||||
"github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421"
|
||||
"github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod"
|
||||
"github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd"
|
||||
"github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod"
|
||||
"github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742"
|
||||
"github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod"
|
||||
"github.com/modern-go/reflect2 v1.0.1"
|
||||
"github.com/modern-go/reflect2 v1.0.1/go.mod"
|
||||
"github.com/muesli/crunchy v0.4.0"
|
||||
"github.com/muesli/crunchy v0.4.0/go.mod"
|
||||
"github.com/nbutton23/zxcvbn-go v0.0.0-20180912185939-ae427f1e4c1d"
|
||||
"github.com/nbutton23/zxcvbn-go v0.0.0-20180912185939-ae427f1e4c1d/go.mod"
|
||||
"github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e"
|
||||
"github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod"
|
||||
"github.com/pkg/errors v0.8.1/go.mod"
|
||||
"github.com/pkg/errors v0.9.1"
|
||||
"github.com/pkg/errors v0.9.1/go.mod"
|
||||
"github.com/pmezard/go-difflib v1.0.0"
|
||||
"github.com/pmezard/go-difflib v1.0.0/go.mod"
|
||||
"github.com/rs/xid v1.2.1"
|
||||
"github.com/rs/xid v1.2.1/go.mod"
|
||||
"github.com/russross/blackfriday/v2 v2.0.1"
|
||||
"github.com/russross/blackfriday/v2 v2.0.1/go.mod"
|
||||
"github.com/schollz/closestmatch v0.0.0-20190308193919-1fbe626be92e"
|
||||
"github.com/schollz/closestmatch v0.0.0-20190308193919-1fbe626be92e/go.mod"
|
||||
"github.com/sergi/go-diff v1.1.0"
|
||||
"github.com/sergi/go-diff v1.1.0/go.mod"
|
||||
"github.com/shurcooL/sanitized_anchor_name v1.0.0"
|
||||
"github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod"
|
||||
"github.com/sirupsen/logrus v1.7.0/go.mod"
|
||||
"github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e"
|
||||
"github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e/go.mod"
|
||||
"github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d"
|
||||
"github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod"
|
||||
"github.com/smartystreets/assertions v1.0.0"
|
||||
"github.com/smartystreets/assertions v1.0.0/go.mod"
|
||||
"github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a"
|
||||
"github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod"
|
||||
"github.com/smartystreets/goconvey v1.6.4"
|
||||
"github.com/smartystreets/goconvey v1.6.4/go.mod"
|
||||
"github.com/spf13/pflag v1.0.3/go.mod"
|
||||
"github.com/stretchr/objx v0.1.0/go.mod"
|
||||
"github.com/stretchr/testify v1.2.2/go.mod"
|
||||
"github.com/stretchr/testify v1.3.0/go.mod"
|
||||
"github.com/stretchr/testify v1.4.0/go.mod"
|
||||
"github.com/stretchr/testify v1.6.1"
|
||||
"github.com/stretchr/testify v1.6.1/go.mod"
|
||||
"github.com/urfave/cli/v2 v2.2.0"
|
||||
"github.com/urfave/cli/v2 v2.2.0/go.mod"
|
||||
"github.com/xrash/smetrics v0.0.0-20170218160415-a3153f7040e9"
|
||||
"github.com/xrash/smetrics v0.0.0-20170218160415-a3153f7040e9/go.mod"
|
||||
"github.com/xrash/smetrics v0.0.0-20200730060457-89a2a8a1fb0b"
|
||||
"github.com/xrash/smetrics v0.0.0-20200730060457-89a2a8a1fb0b/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20190513172903-22d7a77e9e5f/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20200930160638-afb6bcd081ae"
|
||||
"golang.org/x/crypto v0.0.0-20200930160638-afb6bcd081ae/go.mod"
|
||||
"golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod"
|
||||
"golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod"
|
||||
"golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod"
|
||||
"golang.org/x/net v0.0.0-20201021035429-f5854403a974"
|
||||
"golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod"
|
||||
"golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f"
|
||||
"golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20201024232916-9f70ab9862d5"
|
||||
"golang.org/x/sys v0.0.0-20201024232916-9f70ab9862d5/go.mod"
|
||||
"golang.org/x/text v0.3.0"
|
||||
"golang.org/x/text v0.3.0/go.mod"
|
||||
"golang.org/x/text v0.3.3"
|
||||
"golang.org/x/text v0.3.3/go.mod"
|
||||
"golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod"
|
||||
"golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod"
|
||||
"golang.org/x/tools v0.0.0-20190624222133-a101b041ded4"
|
||||
"golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod"
|
||||
"golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543"
|
||||
"golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod"
|
||||
"golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1"
|
||||
"golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod"
|
||||
"gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod"
|
||||
"gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod"
|
||||
"gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod"
|
||||
"gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f"
|
||||
"gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod"
|
||||
"gopkg.in/ini.v1 v1.57.0/go.mod"
|
||||
"gopkg.in/ini.v1 v1.60.1"
|
||||
"gopkg.in/ini.v1 v1.60.1/go.mod"
|
||||
"gopkg.in/yaml.v2 v2.2.2"
|
||||
"gopkg.in/yaml.v2 v2.2.2/go.mod"
|
||||
"gopkg.in/yaml.v2 v2.2.4/go.mod"
|
||||
"gopkg.in/yaml.v2 v2.2.8/go.mod"
|
||||
"gopkg.in/yaml.v2 v2.3.0"
|
||||
"gopkg.in/yaml.v2 v2.3.0/go.mod"
|
||||
"gopkg.in/yaml.v3 v3.0.0-20200121175148-a6ecf24a6d71/go.mod"
|
||||
"gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod"
|
||||
"gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776"
|
||||
"gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod"
|
||||
"gotest.tools v2.2.0+incompatible"
|
||||
"gotest.tools v2.2.0+incompatible/go.mod"
|
||||
"gotest.tools/v3 v3.0.2"
|
||||
"gotest.tools/v3 v3.0.2/go.mod"
|
||||
"rsc.io/qr v0.2.0"
|
||||
"rsc.io/qr v0.2.0/go.mod"
|
||||
)
|
||||
|
||||
go-module_set_globals
|
||||
|
||||
DESCRIPTION="a simple but powerful password manager for the terminal"
|
||||
HOMEPAGE="https://www.gopass.pw/"
|
||||
SRC_URI="https://github.com/gopasspw/gopass/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
${EGO_SUM_SRC_URI}"
|
||||
|
||||
LICENSE="MIT Apache-2.0 BSD MPL-2.0 BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||
|
||||
DEPEND=">=dev-lang/go-1.11"
|
||||
RDEPEND="
|
||||
dev-vcs/git
|
||||
>=app-crypt/gnupg-2
|
||||
"
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${ED}/usr"
|
||||
einstalldocs
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,48 @@
|
||||
https://bugs.gentoo.org/707256
|
||||
--- a/tpm/tpm_emulator_extern.h
|
||||
+++ b/tpm/tpm_emulator_extern.h
|
||||
@@ -29,7 +29,7 @@ enum {
|
||||
TPM_LOG_ERROR
|
||||
};
|
||||
|
||||
-void (*tpm_log)(int priority, const char *fmt, ...);
|
||||
+extern void (*tpm_log)(int priority, const char *fmt, ...);
|
||||
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
#define __BFILE__ ((strrchr(__FILE__, '\\') ? : __FILE__ - 1) + 1)
|
||||
@@ -44,27 +44,27 @@ void (*tpm_log)(int priority, const char *fmt, ...);
|
||||
#define error(fmt, ...) tpm_log(TPM_LOG_ERROR, "%s:%d: Error: " fmt "\n", \
|
||||
__BFILE__, __LINE__, ## __VA_ARGS__)
|
||||
/* initialization */
|
||||
-int (*tpm_extern_init)(void);
|
||||
-void (*tpm_extern_release)(void);
|
||||
+extern int (*tpm_extern_init)(void);
|
||||
+extern void (*tpm_extern_release)(void);
|
||||
|
||||
/* memory allocation */
|
||||
|
||||
-void* (*tpm_malloc)(size_t size);
|
||||
+extern void* (*tpm_malloc)(size_t size);
|
||||
|
||||
-void (*tpm_free)(/*const*/ void *ptr);
|
||||
+extern void (*tpm_free)(/*const*/ void *ptr);
|
||||
|
||||
/* random numbers */
|
||||
|
||||
-void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
|
||||
+extern void (*tpm_get_extern_random_bytes)(void *buf, size_t nbytes);
|
||||
|
||||
/* usec since last call */
|
||||
|
||||
-uint64_t (*tpm_get_ticks)(void);
|
||||
+extern uint64_t (*tpm_get_ticks)(void);
|
||||
|
||||
/* file handling */
|
||||
|
||||
-int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
|
||||
-int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
|
||||
+extern int (*tpm_write_to_storage)(uint8_t *data, size_t data_length);
|
||||
+extern int (*tpm_read_from_storage)(uint8_t **data, size_t *data_length);
|
||||
|
||||
#endif /* _TPM_EMULATOR_EXTERN_H_ */
|
||||
|
@ -0,0 +1,26 @@
|
||||
https://bugs.gentoo.org/726492
|
||||
--- a/tddl/CMakeLists.txt
|
||||
+++ b/tddl/CMakeLists.txt
|
||||
@@ -5,21 +5,18 @@
|
||||
|
||||
set(tddl-tpm-emulator_SRCS "tddl.c" "tddl-tpm-emulator.h")
|
||||
add_library(tddl-tpm-emulator SHARED ${tddl-tpm-emulator_SRCS})
|
||||
-add_library(tddl-tpm-emulator_static STATIC ${tddl-tpm-emulator_SRCS})
|
||||
if(UNIX)
|
||||
set_target_properties(tddl-tpm-emulator PROPERTIES SOVERSION "1.2"
|
||||
VERSION "1.2.${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}")
|
||||
- set_target_properties(tddl-tpm-emulator_static PROPERTIES OUTPUT_NAME tddl-tpm-emulator)
|
||||
elseif(WIN32)
|
||||
set_target_properties(tddl-tpm-emulator PROPERTIES OUTPUT_NAME ifxtpm)
|
||||
set_target_properties(tddl-tpm-emulator PROPERTIES PREFIX "")
|
||||
endif()
|
||||
|
||||
install(TARGETS tddl-tpm-emulator DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
-install(TARGETS tddl-tpm-emulator_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
install(FILES "tddl-tpm-emulator.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_executable(test_tddl test_tddl.c)
|
||||
-target_link_libraries(test_tddl tddl-tpm-emulator_static)
|
||||
+target_link_libraries(test_tddl tddl-tpm-emulator)
|
||||
|
@ -1,26 +0,0 @@
|
||||
From a1ac2ee0c6592e6f730458c03a2abd1532c66046 Mon Sep 17 00:00:00 2001
|
||||
From: Salah Coronya <salah.coronya@gmail.com>
|
||||
Date: Sun, 12 Jan 2020 19:17:48 -0600
|
||||
Subject: [PATCH] lib/tpm2_openssl.c: Fix build for libressl
|
||||
|
||||
Signed-off-by: Salah Coronya <salah.coronya@gmail.com>
|
||||
---
|
||||
lib/tpm2_openssl.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/tpm2_openssl.c b/lib/tpm2_openssl.c
|
||||
index 505dd7a0..fd3861d9 100644
|
||||
--- a/lib/tpm2_openssl.c
|
||||
+++ b/lib/tpm2_openssl.c
|
||||
@@ -14,7 +14,7 @@
|
||||
#include "tpm2_openssl.h"
|
||||
|
||||
/* compatibility function for OpenSSL versions < 1.1.0 */
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
static int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) {
|
||||
int r;
|
||||
int topad;
|
||||
--
|
||||
2.24.1
|
||||
|
@ -0,0 +1,26 @@
|
||||
diff --git a/lib/tpm2_identity_util.c b/lib/tpm2_identity_util.c
|
||||
index a3b0e387..9519ca7b 100644
|
||||
--- a/lib/tpm2_identity_util.c
|
||||
+++ b/lib/tpm2_identity_util.c
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
// Identity-related functionality that the TPM normally does, but using OpenSSL
|
||||
|
||||
-#if defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if 0
|
||||
static int RSA_padding_add_PKCS1_OAEP_mgf1(unsigned char *to, int tlen,
|
||||
const unsigned char *from, int flen, const unsigned char *param, int plen,
|
||||
const EVP_MD *md, const EVP_MD *mgf1md) {
|
||||
diff --git a/lib/tpm2_openssl.c b/lib/tpm2_openssl.c
|
||||
index 6d29c0d4..bd375ce3 100644
|
||||
--- a/lib/tpm2_openssl.c
|
||||
+++ b/lib/tpm2_openssl.c
|
||||
@@ -14,7 +14,7 @@
|
||||
#include "tpm2_openssl.h"
|
||||
|
||||
/* compatibility function for OpenSSL versions < 1.1.0 */
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
static int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) {
|
||||
int r;
|
||||
int topad;
|
@ -0,0 +1,39 @@
|
||||
diff --git a/lib/tpm2_identity_util.c b/lib/tpm2_identity_util.c
|
||||
index a3b0e387..9519ca7b 100644
|
||||
--- a/lib/tpm2_identity_util.c
|
||||
+++ b/lib/tpm2_identity_util.c
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
// Identity-related functionality that the TPM normally does, but using OpenSSL
|
||||
|
||||
-#if defined(LIBRESSL_VERSION_NUMBER)
|
||||
+#if 0
|
||||
static int RSA_padding_add_PKCS1_OAEP_mgf1(unsigned char *to, int tlen,
|
||||
const unsigned char *from, int flen, const unsigned char *param, int plen,
|
||||
const EVP_MD *md, const EVP_MD *mgf1md) {
|
||||
diff --git a/lib/tpm2_openssl.c b/lib/tpm2_openssl.c
|
||||
index e769d6df..54f124c9 100644
|
||||
--- a/lib/tpm2_openssl.c
|
||||
+++ b/lib/tpm2_openssl.c
|
||||
@@ -15,7 +15,7 @@
|
||||
#include "tpm2_systemdeps.h"
|
||||
|
||||
/* compatibility function for OpenSSL versions < 1.1.0 */
|
||||
-#if OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
static int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) {
|
||||
int r;
|
||||
int topad;
|
||||
diff --git a/lib/tpm2_openssl.h b/lib/tpm2_openssl.h
|
||||
index 46c8f9c0..71206309 100644
|
||||
--- a/lib/tpm2_openssl.h
|
||||
+++ b/lib/tpm2_openssl.h
|
||||
@@ -17,7 +17,7 @@
|
||||
#define LIB_TPM2_OPENSSL_OPENSSL_PRE11
|
||||
#endif
|
||||
|
||||
-#if OPENSSL_VERSION_NUMBER >= 0x10101000L
|
||||
+#if (OPENSSL_VERSION_NUMBER >= 0x10101000L) && !defined(LIBRESSL_VERSION_NUMBER)
|
||||
#define EC_POINT_set_affine_coordinates_tss(group, tpm_pub_key, bn_x, bn_y, dmy) \
|
||||
EC_POINT_set_affine_coordinates(group, tpm_pub_key, bn_x, bn_y, dmy)
|
||||
|
Binary file not shown.
@ -1,4 +1,2 @@
|
||||
DIST diveintopython-2-pdf.zip 782047 BLAKE2B aecb0dab23fc9737a22e032628e23eecdec1c56b330d7ba884acc97e63bc4f4b9ff5dc53ad89f588ef7e1d15991f1aa11cf70c479864a6b8e3b959287c299dbc SHA512 24857e22b587878e22b8347bb53ca60697b3940ea2d2f9ea7fe5eabc5d8d2b3d580b278379436f4282f515a25a285f3f558f461daa9edaae6f565c246154978c
|
||||
DIST diveintopython-2.zip 865555 BLAKE2B 55c541c3c77f3b0c4942212f4a15925571d1eb5974af4330f9edd610ba0037a9042442d2c1283d05e893888b2e2bb3da8cfe17c62a699fe8cb6e2682cbe0cd35 SHA512 9c57a9e228d30186b1e6fc10a47d4fa69704fd83ea68bba030d7909ad8df2b9cfeee942caf359b1dd1fd8f9459fee58ea8ddb3813759b17f06b93b3ccf4ca296
|
||||
DIST diveintopython-3-pdf.tar.gz 2235256 BLAKE2B 2617ae5fc8e7a61402a56aa43c094412bdf9b3350901980d4d0e33179f7e1ae9100e4d3ca8201e18a473c17205a7ee6a8efab55cfd230249f1eb07b671f90c96 SHA512 ecca7ba1540a48eb41b5bfd7ca878962939b9ec47eac6100f13d75eb24c6cae20177110877d34e6d1de47bed6883f9a25b379ced5c03b8c220103774a00a54b4
|
||||
DIST diveintopython-3.tar.gz 9958889 BLAKE2B 5c0b9764b6bb5f51af05142446750e9831fa6edb53336c47b398bf604c349e6c5c002c8f19f390d4929c94e2c19c5f0bb18a71ddb4b8b85d3701ee5feb35a4a4 SHA512 19a8498e4d91fc2ea2c899400336696732dae73da48faf55de43507e41e72a68c6ac25cea0acfdf3ca783344cd12c41326190ac9bbaf7ebdc113833e8bfea3a4
|
||||
|
@ -1,31 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
MY_PV="5.4"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="'Dive Into Python' by Mark Pilgrim - Python 2"
|
||||
HOMEPAGE="http://www.diveintopython.net/"
|
||||
SRC_URI="
|
||||
http://www.diveintopython.net/download/${PN}-html-${MY_PV}.zip -> ${P}.zip
|
||||
pdf? ( http://www.diveintopython.net/download/${PN}-pdf-${MY_PV}.zip -> ${P}-pdf.zip )
|
||||
"
|
||||
|
||||
LICENSE="FDL-1.1"
|
||||
SLOT="2"
|
||||
KEYWORDS="amd64 ppc ppc64 x86"
|
||||
IUSE="pdf"
|
||||
|
||||
DEPEND="app-arch/unzip"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_install() {
|
||||
insinto "/usr/share/doc/${PN}-${SLOT}"
|
||||
use pdf && dodoc "${PN}.pdf"
|
||||
doins -r html/*
|
||||
insinto "/usr/share/doc/${PN}-${SLOT}"/examples
|
||||
doins -r py
|
||||
}
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST moe-1.10.tar.lz 84050 BLAKE2B 2e49aba27cdd603fbc9a4eb0fef5e086a527087d72f30f68beb4e3389de0ccdd85fec5bf753b3187d64cd6549ac5738c89e94c543c141f88896c580e7c33ad42 SHA512 3908d7906aa7dcb8bd4a5d340fe94b06fc91814098c20e8939906c2b0e03e1a8a3c95847b5f8111a5d9f37636a2fafa52f9105e0e8fa0ad8b16c2f9e9dede748
|
||||
DIST moe-1.11.tar.lz 89532 BLAKE2B 8479c8bb0504e614b4ad87e47ae89d1f0eb23141ff71ef3e46eb316424dfe87150f2d9474e1dbd3510fa9b1da517bd6afe47b2cd36f1aa70630b371f0f6bec3a SHA512 147f3500909739371290fc2f703ef5fab286d2ca385f6808ee3e0cb1cbae2ed58a0b5046d30ad5d24215dc28d77f0bba4efacb144c116209d89d023e731e8a39
|
||||
DIST moe-1.9.tar.lz 82046 BLAKE2B 9144dfc4ce17bc04f3ad9aa9ec271f173df6c581705e5d922a346f94c086a97af9429478c016d7081c1fd38787055666504f04d25a8b9f5c1020dc147aaafdb0 SHA512 277700e4a796e1a7aee42de55ba4599a350a612f95a1a2eca5078d85f6f9a7db190fb5611eb2f286c98580af847a2934bf38a4bce10176db4c5cddc2d257f929
|
||||
|
@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit toolchain-funcs unpacker
|
||||
|
||||
DESCRIPTION="A powerful and user-friendly console text editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/moe/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.lz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/ncurses:0=
|
||||
"
|
||||
DEPEND="
|
||||
$(unpacker_src_uri_depends)
|
||||
${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
tc-export CXX PKG_CONFIG
|
||||
sed -i \
|
||||
-e "/^CXXFLAGS=/d" \
|
||||
-e "/^LDFLAGS=/d" \
|
||||
-e "/^CXX=/d" \
|
||||
configure || die "sed on configure failed"
|
||||
|
||||
eapply_user
|
||||
|
||||
eapply "${FILESDIR}/${PN}-1.6-tinfo.patch"
|
||||
}
|
Binary file not shown.
@ -1,3 +1,2 @@
|
||||
DIST crun-0.14.1.tar.gz 1341891 BLAKE2B c20d5001161e298050ddca859fa78487fe3f8577ef0b06eb5515056f19ba4f981debeb684148de49111a0370b9bafb7f6454d65f7ecf087862c697a162c9b377 SHA512 420f1713653cbd17df83b2a63d163aaa41baf78115b093877a2241305e10b2ceeaf08ea6700658eca894729ff8a20cbc66f868d18d27fba3fbedf1a9993b122e
|
||||
DIST crun-0.15.tar.gz 1364861 BLAKE2B 7078e71229bae4bc663398891b21344abc3189c78a11e4feeae3236e1df4a2c5160cf26f2cc243d4c0898a642a779603d473d2c22ca2b67123c6ac4654fce4d7 SHA512 f9a9e94b6a9c5cff01fe93b1c3d5876a0794e6288b802cf579556e11411ca5d6e63cae3859aaa4df4bb600e2d27aa131872a93a92784b9b48f7885411d86f325
|
||||
DIST libcrun.lds 257 BLAKE2B 00e7cdf3162ea0b7231dbb9037b192bcf5ffa83316e1aa60268560bc9fe8302be351c405861f9dfc06620ea64561a9226f58b7133039c0af1299dc4088b98272 SHA512 0e9b836c79ee4ad7ff33c592eca8ff41f38aed588f2f5a2416bed82efa819cd4c61ad65a2dfd11a37838a19d950688b1d5adb3b75841963dbb589536e8a867f7
|
||||
DIST crun-0.16.tar.gz 1370194 BLAKE2B c2a2450518226421b43d93597b38da80ca330cb3d8d9c259f323d49561e93dc3d003a25599eb8e918888dd824037c53bd0a07624c3154fa3778cc6dad37ac04b SHA512 f5a0d19c037af55478ee5f83b63d74277c8640f715b81a8233d3f1acd4cdfdad491e5c1f5beda04d0d7aa16693e9a004b0bde71343b082aa514ae76e5907d029
|
||||
|
@ -1 +1,2 @@
|
||||
DIST VBoxGuestAdditions_6.1.16.iso 60987392 BLAKE2B d4452f43c72ab8c49633f717f7a49257e14a8c6c7b60c6d61ee65ae5e4bcce00c30e19ba78d6f28fb85dfbc95ca6139aec2c7069e5afecae145dffc6ff38793a SHA512 e7606fba6e7490318b7dbadff52578040e4370bbe81fa67e6653e798176eb929ed37e363792647ab3c6626ee9e32af40f63167521997af7b446c25173ff60280
|
||||
DIST VBoxGuestAdditions_6.1.18.iso 61157376 BLAKE2B e022cfbc70fa45889c1db7592f30814faf88d7614c30ebd3fccd0127732d7fec51423904a160797ac199315dcbe4791f025e2dc4754141bfef0862b11510626c SHA512 07be8be75feb2d7d9bfc984ce34b955339d391580192817c2eb216b7577576a003dde310cc09f18c6b6bcf2e30ad548e1ee8bde0af420e4d1d43a3486861cf19
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_PN=VBoxGuestAdditions
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=${MY_PN}_${MY_PV}
|
||||
|
||||
DESCRIPTION="CD image containing guest additions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
RESTRICT="mirror"
|
||||
|
||||
RDEPEND="!app-emulation/virtualbox-bin
|
||||
!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
return 0
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN/-additions}
|
||||
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.16-140961.tar.gz 11145670 BLAKE2B 86e620ebaea9803b9bf633990a39d9e2828fbe70cdc98cbb6ba98accc374e0ea2300a7135cae0f0ec8d13184ccc8e0ff075ca1f81132ed97206f14c20adeb3bc SHA512 89b9c709da1c4b8268c4c1849e074f4d8dc76a36663b401c9ea63f02422bec50e2b77056289144bb161b1dd226b78687379d6ab86281112a71561c1777f525fb
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.18-142142.tar.gz 11157510 BLAKE2B d9ee20abac79ed5de03c39d1e6af3a5f18c5416149e9e64ebe9dfc4a937bd72b6590a2daaccc820e3ee6c6efcfd0c1c8e29bf3844cbbb929f13052415e16f2bb SHA512 3686b1c5dbdc5b28c172b4885c30ca9a444bc10dc7984df14a17e1dcc571456b06e80ad38e1409de8692c483c56f397162a53bd3dc6956d9ca91875fda0bda4e
|
||||
|
@ -0,0 +1,43 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit multilib
|
||||
|
||||
MAIN_PV="$(ver_cut 1-3)"
|
||||
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
|
||||
MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
|
||||
DEP_PV="${MY_PV}"
|
||||
MY_PV="${MY_PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
else
|
||||
MY_PV="${MAIN_PV}"
|
||||
DEP_PV="${MAIN_PV}"
|
||||
fi
|
||||
VBOX_BUILD_ID="$(ver_cut 4)"
|
||||
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
|
||||
|
||||
DESCRIPTION="PUEL extensions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="PUEL"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
RDEPEND="=app-emulation/virtualbox-${DEP_PV}*"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST VirtualBox-6.1.16.tar.bz2 165470821 BLAKE2B 13376322d0ce2ea3ed826c61816ff19c8ce1f022f6cb1f1b0c291d72354cbe574a01589a6dcc39de10080ba32d5961ca980e75fe11c7401736bf8f7e5443d166 SHA512 4373eb35934f894e419e1441f6368e646e4a84b963a0ecf1e5c71bbf0231de0b0e52f4c4377b8cd2d956bc7a11346a9da2285988bf1e4c743971c413c6529421
|
||||
DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
|
||||
DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123
|
||||
|
@ -0,0 +1,221 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod systemd toolchain-funcs
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P="${MY_PN}-${MY_PV}"
|
||||
[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
|
||||
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.1.12-patches-01.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="X"
|
||||
|
||||
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
|
||||
RDEPEND="
|
||||
acct-group/vboxguest
|
||||
acct-group/vboxsf
|
||||
acct-user/vboxguest
|
||||
X? ( x11-apps/xrandr
|
||||
x11-apps/xrefresh
|
||||
x11-libs/libXmu
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
x11-libs/libXext
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE )
|
||||
sys-apps/dbus
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/pam
|
||||
sys-power/iasl
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
PDEPEND="
|
||||
X? ( x11-drivers/xf86-video-vboxvideo )
|
||||
"
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
|
||||
S="${WORKDIR}/${MY_PN}-${DIR_PV:-${PV}}"
|
||||
VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
|
||||
|
||||
pkg_setup() {
|
||||
export DISTCC_DISABLE=1 #674256
|
||||
MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
|
||||
vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
|
||||
use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
|
||||
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
rm -r kBuild/bin tools || die
|
||||
|
||||
# Provide kernel sources
|
||||
pushd src/VBox/Additions &>/dev/null || die
|
||||
ebegin "Extracting guest kernel module sources"
|
||||
kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null || die
|
||||
eend
|
||||
popd &>/dev/null || die
|
||||
|
||||
# PaX fixes (see bug #298988)
|
||||
pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
|
||||
eapply "${FILESDIR}"/vboxguest-6.0.6-log-use-c99.patch
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
|
||||
|
||||
# Remove pointless GCC version check
|
||||
sed -e '/^check_gcc$/d' -i configure || die
|
||||
|
||||
eapply "${WORKDIR}/patches"
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# build the user-space tools, warnings are harmless
|
||||
local cmd=(
|
||||
./configure
|
||||
--nofatal
|
||||
--disable-xpcom
|
||||
--disable-sdl-ttf
|
||||
--disable-pulse
|
||||
--disable-alsa
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
--target-arch=${ARCH}
|
||||
--with-linux="${KV_OUT_DIR}"
|
||||
--build-headless
|
||||
)
|
||||
echo "${cmd[@]}"
|
||||
"${cmd[@]}" || die "configure failed"
|
||||
source ./env.sh
|
||||
export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
MAKE="kmk" emake \
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo \
|
||||
TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
|
||||
TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
|
||||
TOOL_YASM_AS=yasm \
|
||||
VBOX_ONLY_ADDITIONS=1 \
|
||||
KBUILD_VERBOSE=2
|
||||
|
||||
# Now creating the kernel modules. We must do this _after_
|
||||
# we compiled the user-space tools as we need two of the
|
||||
# automatically generated header files. (>=3.2.0)
|
||||
linux-mod_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
|
||||
cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
|
||||
|
||||
insinto /sbin
|
||||
newins mount.vboxsf mount.vboxsf
|
||||
fperms 4755 /sbin/mount.vboxsf
|
||||
|
||||
newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
|
||||
|
||||
insinto /usr/sbin/
|
||||
newins VBoxService vboxguest-service
|
||||
fperms 0755 /usr/sbin/vboxguest-service
|
||||
|
||||
insinto /usr/bin
|
||||
doins VBoxControl
|
||||
fperms 0755 /usr/bin/VBoxControl
|
||||
|
||||
# VBoxClient user service and xrandr wrapper
|
||||
if use X ; then
|
||||
doins VBoxClient
|
||||
fperms 0755 /usr/bin/VBoxClient
|
||||
|
||||
pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
|
||||
|| die
|
||||
newins 98vboxadd-xclient VBoxClient-all
|
||||
fperms 0755 /usr/bin/VBoxClient-all
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
# udev rule for vboxdrv
|
||||
local udev_rules_dir="/lib/udev/rules.d"
|
||||
dodir ${udev_rules_dir}
|
||||
echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
|
||||
# VBoxClient autostart file
|
||||
insinto /etc/xdg/autostart
|
||||
doins "${FILESDIR}"/vboxclient.desktop
|
||||
|
||||
# sample xorg.conf
|
||||
dodoc "${FILESDIR}"/xorg.conf.vbox
|
||||
docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
if ! use X ; then
|
||||
elog "use flag X is off, enable it to install the"
|
||||
elog "X Window System video driver."
|
||||
fi
|
||||
elog ""
|
||||
elog "Please add users to the \"vboxguest\" group so they can"
|
||||
elog "benefit from seamless mode, auto-resize and clipboard."
|
||||
elog ""
|
||||
elog "The vboxsf group has been added to make automount services work."
|
||||
elog "These services are part of the shared folders support."
|
||||
elog ""
|
||||
elog "Please add:"
|
||||
elog "/etc/init.d/${PN}"
|
||||
elog "to the default runlevel in order to start"
|
||||
elog "needed services."
|
||||
elog "To use the VirtualBox X driver, use the following"
|
||||
elog "file as your /etc/X11/xorg.conf:"
|
||||
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
|
||||
elog ""
|
||||
elog "Also make sure you use the Mesa library for OpenGL:"
|
||||
elog " eselect opengl set xorg-x11"
|
||||
elog ""
|
||||
elog "An autostart .desktop file has been installed to start"
|
||||
elog "VBoxClient in desktop sessions."
|
||||
elog ""
|
||||
elog "You can mount shared folders with:"
|
||||
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
|
||||
elog ""
|
||||
elog "Warning:"
|
||||
elog "this ebuild is only needed if you are running gentoo"
|
||||
elog "inside a VirtualBox Virtual Machine, you don't need"
|
||||
elog "it to run VirtualBox itself."
|
||||
elog ""
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST vbox-kernel-module-src-6.1.16.tar.xz 671736 BLAKE2B 8b2153874ee7a63f88679a5372215e89def49622caa7679a5c2410423eaf23ced18ece79d638fc96db40fac88857db7568dd72dd8e05371b14add3553d61d3a7 SHA512 c51dfad5f9578ad43e2fbdd35a70659640030108006f89d362bc25dead99eb3b39a78d403633b3813f62f5b510eff22d826a2750b9c88f5fcb1cde6531295bff
|
||||
DIST vbox-kernel-module-src-6.1.18.tar.xz 672004 BLAKE2B 7199ba2a5020e5ab51d82735df16aee78ece74db232733b932c380f90dffd589a72613120bbd5c580381ab6f6308abb8d12f69855b9c0a8345bfb8587d022019 SHA512 49b54898b2701774fdeec0cd99dd51a1dd71ffd9be38e125fde73f0c64a697138d13bddbb0ed0e9582d354fa0394608084effb68bd35b266c87f6e3b44c6f342
|
||||
|
@ -0,0 +1,55 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from virtualbox-bin
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod toolchain-funcs
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="pax_kernel"
|
||||
|
||||
RDEPEND="!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
|
||||
MODULESD_VBOXDRV_ENABLED="yes"
|
||||
MODULESD_VBOXNETADP_ENABLED="no"
|
||||
MODULESD_VBOXNETFLT_ENABLED="no"
|
||||
|
||||
pkg_setup() {
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use pax_kernel && kernel_is -ge 3 0 0 ; then
|
||||
eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Remove vboxpci.ko from current running kernel
|
||||
find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
|
||||
linux-mod_pkg_postinst
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST VirtualBox-6.1.16.tar.bz2 165470821 BLAKE2B 13376322d0ce2ea3ed826c61816ff19c8ce1f022f6cb1f1b0c291d72354cbe574a01589a6dcc39de10080ba32d5961ca980e75fe11c7401736bf8f7e5443d166 SHA512 4373eb35934f894e419e1441f6368e646e4a84b963a0ecf1e5c71bbf0231de0b0e52f4c4377b8cd2d956bc7a11346a9da2285988bf1e4c743971c413c6529421
|
||||
DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
|
||||
DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123
|
||||
|
@ -0,0 +1,512 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=${MY_PN}-${MY_PV}
|
||||
[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
|
||||
|
||||
DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
|
||||
|
||||
LICENSE="GPL-2 dtrace? ( CDDL )"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
|
||||
|
||||
CDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
!app-emulation/virtualbox-bin
|
||||
acct-group/vboxusers
|
||||
~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
|
||||
dev-libs/libIDL
|
||||
>=dev-libs/libxslt-1.1.19
|
||||
net-misc/curl
|
||||
dev-libs/libxml2
|
||||
media-libs/libpng:0=
|
||||
media-libs/libvpx:0=
|
||||
sys-libs/zlib:=
|
||||
!headless? (
|
||||
media-libs/libsdl:0[X,video]
|
||||
x11-libs/libX11
|
||||
x11-libs/libxcb:=
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
opengl? ( media-libs/libglvnd[X] )
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
opengl? ( dev-qt/qtopengl:5 )
|
||||
x11-libs/libXinerama
|
||||
)
|
||||
)
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
lvm? ( sys-fs/lvm2 )
|
||||
opus? ( media-libs/opus )
|
||||
udev? ( >=virtual/udev-171 )
|
||||
vnc? ( >=net-libs/libvncserver-0.9.9 )
|
||||
"
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
!headless? (
|
||||
x11-libs/libXinerama
|
||||
opengl? ( virtual/opengl )
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
pax_kernel? ( sys-apps/elfix )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
qt5? ( dev-qt/linguist-tools:5 )
|
||||
vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
|
||||
"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/libcap
|
||||
sys-power/iasl
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-text/docbook-sgml-dtd:4.4
|
||||
dev-texlive/texlive-basic
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexrecommended
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
dev-texlive/texlive-fontsextra
|
||||
)
|
||||
java? ( >=virtual/jdk-1.6 )
|
||||
"
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
java? ( >=virtual/jre-1.6 )
|
||||
"
|
||||
|
||||
QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
|
||||
usr/lib/virtualbox/VBoxSDL.so
|
||||
usr/lib/virtualbox/VBoxSharedFolders.so
|
||||
usr/lib/virtualbox/VBoxDD2.so
|
||||
usr/lib/virtualbox/VBoxOGLrenderspu.so
|
||||
usr/lib/virtualbox/VBoxPython.so
|
||||
usr/lib/virtualbox/VBoxDD.so
|
||||
usr/lib/virtualbox/VBoxDDU.so
|
||||
usr/lib/virtualbox/VBoxREM64.so
|
||||
usr/lib/virtualbox/VBoxSharedClipboard.so
|
||||
usr/lib/virtualbox/VBoxHeadless.so
|
||||
usr/lib/virtualbox/VBoxRT.so
|
||||
usr/lib/virtualbox/VBoxREM.so
|
||||
usr/lib/virtualbox/VBoxSettings.so
|
||||
usr/lib/virtualbox/VBoxKeyboard.so
|
||||
usr/lib/virtualbox/VBoxSharedCrOpenGL.so
|
||||
usr/lib/virtualbox/VBoxVMM.so
|
||||
usr/lib/virtualbox/VirtualBox.so
|
||||
usr/lib/virtualbox/VBoxOGLhosterrorspu.so
|
||||
usr/lib/virtualbox/components/VBoxC.so
|
||||
usr/lib/virtualbox/components/VBoxSVCM.so
|
||||
usr/lib/virtualbox/components/VBoxDDU.so
|
||||
usr/lib/virtualbox/components/VBoxRT.so
|
||||
usr/lib/virtualbox/components/VBoxREM.so
|
||||
usr/lib/virtualbox/components/VBoxVMM.so
|
||||
usr/lib/virtualbox/VBoxREM32.so
|
||||
usr/lib/virtualbox/VBoxPython2_7.so
|
||||
usr/lib/virtualbox/VBoxXPCOMC.so
|
||||
usr/lib/virtualbox/VBoxOGLhostcrutil.so
|
||||
usr/lib/virtualbox/VBoxNetDHCP.so
|
||||
usr/lib/virtualbox/VBoxNetNAT.so"
|
||||
|
||||
S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
|
||||
|
||||
REQUIRED_USE="
|
||||
java? ( sdk )
|
||||
python? ( sdk )
|
||||
vboxwebsrv? ( java )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
pkg_pretend() {
|
||||
if ! use headless && ! use qt5 ; then
|
||||
einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
|
||||
elif use headless && use qt5 ; then
|
||||
einfo "You selected USE=\"headless qt5\", defaulting to"
|
||||
einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
|
||||
fi
|
||||
|
||||
if ! use opengl ; then
|
||||
einfo "No USE=\"opengl\" selected, this build will lack"
|
||||
einfo "the OpenGL feature."
|
||||
fi
|
||||
if ! use python ; then
|
||||
einfo "You have disabled the \"python\" USE flag. This will only"
|
||||
einfo "disable the python bindings being installed."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
tc-ld-disable-gold #bug 488176
|
||||
tc-export CC CXX LD AR RANLIB
|
||||
export HOST_CC="$(tc-getBUILD_CC)"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
rm -r kBuild/bin tools || die
|
||||
|
||||
# Replace pointless GCC version check with something less stupid.
|
||||
# This is needed for the qt5 version check.
|
||||
sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
|
||||
-i configure || die
|
||||
|
||||
# Disable things unused or split into separate ebuilds
|
||||
sed -e "s@MY_LIBDIR@$(get_libdir)@" \
|
||||
"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
|
||||
|
||||
# Respect LDFLAGS
|
||||
sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
|
||||
-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
|
||||
|
||||
# Do not use hard-coded ld (related to bug #488176)
|
||||
sed -e '/QUIET)ld /s@ld @$(LD) @' \
|
||||
-i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
|
||||
|
||||
# Use PAM only when pam USE flag is enbaled (bug #376531)
|
||||
if ! use pam ; then
|
||||
elog "Disabling PAM removes the possibility to use the VRDP features."
|
||||
sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
|
||||
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
|
||||
src/VBox/HostServices/Makefile.kmk || die
|
||||
fi
|
||||
|
||||
# add correct java path
|
||||
if use java ; then
|
||||
sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
|
||||
-i "${S}"/Config.kmk || die
|
||||
java-pkg-opt-2_src_prepare
|
||||
fi
|
||||
|
||||
# Only add nopie patch when we're on hardened
|
||||
if gcc-specs-pie ; then
|
||||
eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
|
||||
fi
|
||||
|
||||
# Only add paxmark patch when we're on pax_kernel
|
||||
if use pax_kernel ; then
|
||||
eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
|
||||
fi
|
||||
|
||||
eapply "${WORKDIR}/patches"
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
doecho() {
|
||||
echo "$@"
|
||||
"$@" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
--disable-dbus
|
||||
--disable-kmods
|
||||
$(usex alsa '' --disable-alsa)
|
||||
$(usex debug --build-debug '')
|
||||
$(usex doc '' --disable-docs)
|
||||
$(usex java '' --disable-java)
|
||||
$(usex lvm '' --disable-devmapper)
|
||||
$(usex opus '' --disable-libopus)
|
||||
$(usex pulseaudio '' --disable-pulse)
|
||||
$(usex python '' --disable-python)
|
||||
$(usex vboxwebsrv --enable-webservice '')
|
||||
$(usex vnc --enable-vnc '')
|
||||
)
|
||||
if ! use headless ; then
|
||||
myconf+=(
|
||||
$(usex opengl '' --disable-opengl)
|
||||
$(usex qt5 '' --disable-qt)
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--build-headless
|
||||
--disable-opengl
|
||||
)
|
||||
fi
|
||||
if use amd64 && ! has_multilib_profile ; then
|
||||
myconf+=( --disable-vmmraw )
|
||||
fi
|
||||
# not an autoconf script
|
||||
doecho ./configure ${myconf[@]}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
source ./env.sh || die
|
||||
|
||||
# Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
|
||||
MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
|
||||
MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
|
||||
MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
|
||||
MAKE="kmk" emake \
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo \
|
||||
TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
|
||||
TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
|
||||
TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
|
||||
VBOX_WITH_VBOXIMGMOUNT=1 \
|
||||
all
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
|
||||
|
||||
local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
|
||||
|
||||
vbox_inst() {
|
||||
local binary="${1}"
|
||||
local perms="${2:-0750}"
|
||||
local path="${3:-${vbox_inst_path}}"
|
||||
|
||||
[[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
|
||||
[[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
|
||||
|
||||
insinto ${path}
|
||||
doins ${binary}
|
||||
fowners root:vboxusers ${path}/${binary}
|
||||
fperms ${perms} ${path}/${binary}
|
||||
}
|
||||
|
||||
# Create configuration files
|
||||
insinto /etc/vbox
|
||||
newins "${FILESDIR}/${PN}-4-config" vbox.cfg
|
||||
|
||||
# Set the correct libdir
|
||||
sed \
|
||||
-e "s@MY_LIBDIR@$(get_libdir)@" \
|
||||
-i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
|
||||
|
||||
# Install the wrapper script
|
||||
exeinto ${vbox_inst_path}
|
||||
newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
|
||||
fowners root:vboxusers ${vbox_inst_path}/VBox
|
||||
fperms 0750 ${vbox_inst_path}/VBox
|
||||
|
||||
# Install binaries and libraries
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r components
|
||||
|
||||
for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; do
|
||||
vbox_inst ${each}
|
||||
done
|
||||
|
||||
# These binaries need to be suid root.
|
||||
for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
|
||||
vbox_inst ${each} 4750
|
||||
done
|
||||
|
||||
# Install EFI Firmware files (bug #320757)
|
||||
for each in VBoxEFI{32,64}.fd ; do
|
||||
vbox_inst ${each} 0644
|
||||
done
|
||||
|
||||
# VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
|
||||
# VBoxXPCOMIPCD (bug #524202)
|
||||
for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
# Symlink binaries to the shipped wrapper
|
||||
for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
|
||||
dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
|
||||
|
||||
if use pam ; then
|
||||
# VRDPAuth only works with this (bug #351949)
|
||||
dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
|
||||
fi
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
if ! use headless ; then
|
||||
vbox_inst rdesktop-vrdp
|
||||
vbox_inst VBoxSDL 4750
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
|
||||
|
||||
for each in vboxsdl VBoxSDL ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
if use qt5 ; then
|
||||
vbox_inst VirtualBox
|
||||
vbox_inst VirtualBoxVM 4750
|
||||
for each in VirtualBox{,VM} ; do
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
if use opengl ; then
|
||||
vbox_inst VBoxTestOGL
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
|
||||
fi
|
||||
|
||||
for each in virtualbox{,vm} VirtualBox{,VM} ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r nls
|
||||
doins -r UnattendedTemplates
|
||||
|
||||
domenu ${PN}.desktop
|
||||
fi
|
||||
|
||||
pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
|
||||
for size in 16 32 48 64 128 ; do
|
||||
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
|
||||
done
|
||||
newicon ${PN}-48px.png ${PN}.png
|
||||
doicon -s scalable ${PN}.svg
|
||||
popd &>/dev/null || die
|
||||
pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
|
||||
for size in 16 24 32 48 64 72 96 128 256 512 ; do
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="${PN}-${ico}-${size}px.png"
|
||||
if [[ -f "${icofile}" ]] ; then
|
||||
newicon -s ${size} ${icofile} ${PN}-${ico}.png
|
||||
fi
|
||||
done
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
if use lvm ; then
|
||||
vbox_inst VBoxVolInfo 4750
|
||||
dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
|
||||
fi
|
||||
|
||||
if use sdk ; then
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r sdk
|
||||
|
||||
if use java ; then
|
||||
java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
|
||||
java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use udev ; then
|
||||
# New way of handling USB device nodes for VBox (bug #356215)
|
||||
local udevdir="$(get_udevdir)"
|
||||
insinto ${udevdir}
|
||||
doins VBoxCreateUSBNode.sh
|
||||
fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
|
||||
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
|
||||
insinto ${udevdir}/rules.d
|
||||
sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
|
||||
> "${T}"/10-virtualbox.rules || die
|
||||
doins "${T}"/10-virtualbox.rules
|
||||
fi
|
||||
|
||||
if use vboxwebsrv ; then
|
||||
vbox_inst vboxwebsrv
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
# Remove dead symlinks (bug #715338)
|
||||
find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
|
||||
|
||||
# Fix version string in extensions or else they don't get accepted
|
||||
# by the virtualbox host process (see bug #438930)
|
||||
find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
|
||||
| xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
|
||||
|| die
|
||||
|
||||
local extensions_dir="${vbox_inst_path}/ExtensionPacks"
|
||||
|
||||
if use vnc ; then
|
||||
insinto ${extensions_dir}
|
||||
doins -r ExtensionPacks/VNC
|
||||
fi
|
||||
|
||||
if use dtrace ; then
|
||||
insinto ${extensions_dir}
|
||||
doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
|
||||
fi
|
||||
|
||||
if use doc ; then
|
||||
dodoc UserManual.pdf
|
||||
fi
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if use udev ; then
|
||||
udevadm control --reload-rules \
|
||||
&& udevadm trigger --subsystem-match=usb
|
||||
fi
|
||||
|
||||
tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
|
||||
|
||||
if ! use headless && use qt5 ; then
|
||||
elog "To launch VirtualBox just type: \"virtualbox\"."
|
||||
fi
|
||||
elog "You must be in the vboxusers group to use VirtualBox."
|
||||
elog ""
|
||||
elog "The latest user manual is available for download at:"
|
||||
elog "http://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
|
||||
elog ""
|
||||
elog "For advanced networking setups you should emerge:"
|
||||
elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
|
||||
elog ""
|
||||
elog "Starting with version 4.0.0, ${PN} has USB-1 support."
|
||||
elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
|
||||
elog " app-emulation/virtualbox-extpack-oracle"
|
||||
elog "package."
|
||||
elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
|
||||
elog "the \"extension\" USE flag. For installation of the guest additions ISO"
|
||||
elog "image, please emerge"
|
||||
elog " app-emulation/virtualbox-additions"
|
||||
elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
|
||||
elog " app-emulation/virtualbox-extpack-oracle"
|
||||
if ! use udev ; then
|
||||
elog ""
|
||||
elog "WARNING!"
|
||||
elog "Without USE=udev, USB devices will likely not work in ${PN}."
|
||||
elif [[ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ]] ; then
|
||||
elog ""
|
||||
elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
|
||||
elog "or else USB in ${PN} won't work."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST tmux-xpanes-4.1.1.tar.gz 62564 BLAKE2B 195221c5f069048ab42a57a00c4c8b79f0c2acf1b0cdd7096e553c9a5ed0b3e3b3e9dfacb8f2eb141861b34ef52ad0a675fb501e314d7e4bfe4a41ff4bfd9f35 SHA512 789e19136faa939670cf8e91e7e7979fae8e536aeffdad7d39e1861e279214985d40807dc07afcd8b28cc4de140a944c9b2f5fe051a6b53e12b7903baefcb251
|
||||
DIST tmux-xpanes-4.1.2.tar.gz 63337 BLAKE2B 1ddc0c0422eec64697aea7eb97c8bbbbd4005f4c470d5d0bf1fae4eab01d8ced50503180f76d0ed5aa9d29e854b54aab8f8216ac945e6c1c2e4b4833c5661ceb SHA512 b18445940052a6af848286b901bfd81abfbdf83356cd1b39ac592e1509c9d63b81440978a8c2632672bfb7a2429a7fcc57b7c55c91a00d751b43aa9f368a5c57
|
||||
|
@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="tmux-based terminal divider"
|
||||
HOMEPAGE="https://github.com/greymd/tmux-xpanes"
|
||||
SRC_URI="https://github.com/greymd/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="zsh-completion"
|
||||
|
||||
RDEPEND="
|
||||
app-misc/tmux
|
||||
dev-lang/perl
|
||||
dev-libs/openssl:0=
|
||||
zsh-completion? ( app-shells/zsh )"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
RESTRICT="test"
|
||||
|
||||
DOCS=( CONTRIBUTING.md LICENSE README.md )
|
||||
|
||||
src_install() {
|
||||
dobin bin/*
|
||||
doman man/*.1
|
||||
einstalldocs
|
||||
if use zsh-completion; then
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins completion/zsh/*
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,9 +0,0 @@
|
||||
diff -uNr smstools3.ORIG/scripts/hex2bin smstools3/scripts/hex2bin
|
||||
--- smstools3.ORIG/scripts/hex2bin 2017-09-11 14:11:48.040928533 +0100
|
||||
+++ smstools3/scripts/hex2bin 2017-09-11 14:12:00.925927820 +0100
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/gawk -f
|
||||
+#!/usr/bin/gawk -f
|
||||
|
||||
# This script reads a hex-dump and converts it to a binary file.
|
||||
# The hex-dump must contain one or more hexadecimal numbers separated
|
@ -1,74 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit systemd toolchain-funcs user eutils
|
||||
|
||||
DESCRIPTION="Send and receive short messages through GSM modems"
|
||||
HOMEPAGE="http://smstools3.kekekasvi.com/"
|
||||
SRC_URI="http://smstools3.kekekasvi.com/packages/smstools3-${PV}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ppc ~x86"
|
||||
IUSE="stats"
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND="sys-process/procps
|
||||
stats? ( >=dev-libs/mm-1.4.0 )"
|
||||
|
||||
PATCHES="${FILESDIR}/${PV}-gawk-location.patch"
|
||||
S="${WORKDIR}/${PN}3"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup sms
|
||||
enewuser smsd -1 -1 /var/spool/sms sms
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
if use stats; then
|
||||
sed -i -e "s:CFLAGS += -D NOSTATS:#CFLAGS += -D NOSTATS:" \
|
||||
"${S}/src/Makefile" || die
|
||||
fi
|
||||
echo "CFLAGS += ${CFLAGS}" >> src/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cd src || die
|
||||
emake \
|
||||
CC="$(tc-getCC)" \
|
||||
LFLAGS="${LDFLAGS}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin src/smsd
|
||||
cd scripts || die
|
||||
dobin sendsms sms2html sms2unicode unicode2sms
|
||||
dobin hex2bin hex2dec email2sms
|
||||
dodoc mysmsd smsevent smsresend sms2xml sql_demo \
|
||||
smstest.php checkhandler-utf-8 eventhandler-utf-8 \
|
||||
forwardsms regular_run
|
||||
cd .. || die
|
||||
|
||||
keepdir /var/spool/sms/incoming
|
||||
keepdir /var/spool/sms/outgoing
|
||||
keepdir /var/spool/sms/checked
|
||||
fowners -R smsd:sms /var/spool/sms
|
||||
fperms g+s /var/spool/sms/incoming
|
||||
|
||||
newinitd "${FILESDIR}"/smsd.initd4 smsd
|
||||
insopts -o smsd -g sms -m0644
|
||||
insinto /etc
|
||||
newins examples/smsd.conf.easy smsd.conf
|
||||
dohtml -r doc
|
||||
|
||||
systemd_dounit "${FILESDIR}"/smsd.service
|
||||
systemd_newtmpfilesd "${FILESDIR}"/smsd.tmpfiles smsd.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
touch "${ROOT}"/var/log/smsd.log || die
|
||||
chown -f smsd:sms "${ROOT}"/var/log/smsd.log
|
||||
}
|
Binary file not shown.
@ -0,0 +1,13 @@
|
||||
This fixes build with sys-devel/slibtool
|
||||
|
||||
--- a/lib/Makefile.am
|
||||
+++ b/lib/Makefile.am
|
||||
@@ -178,7 +178,7 @@ libdia_la_SOURCES = \
|
||||
# render.h \
|
||||
# render.c
|
||||
|
||||
-libdia_la_LDFLAGS = -avoid-version --export-dynamic
|
||||
+libdia_la_LDFLAGS = -avoid-version -export-dynamic
|
||||
libdia_la_LIBADD = $(GTK_LIBS)
|
||||
|
||||
AM_CPPFLAGS = \
|
Binary file not shown.
@ -0,0 +1,42 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
DESCRIPTION="An application built on Xapian, consisting of indexers and a CGI search frontend"
|
||||
SRC_URI="http://www.oligarchy.co.uk/xapian/${PV}/xapian-omega-${PV}.tar.xz"
|
||||
HOMEPAGE="https://xapian.org/"
|
||||
S="${WORKDIR}/xapian-omega-${PV}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-libs/xapian:0/30
|
||||
dev-lang/perl
|
||||
dev-libs/libpcre
|
||||
sys-libs/zlib"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
# Protect /etc/omega.conf
|
||||
echo "CONFIG_PROTECT=\"/etc/omega.conf\"" > "${T}"/20xapian-omega
|
||||
doenvd "${T}"/20xapian-omega
|
||||
dodoc AUTHORS ChangeLog INSTALL NEWS README TODO
|
||||
|
||||
# Directory containing Xapian databases:
|
||||
keepdir /var/lib/omega/data
|
||||
|
||||
# Directory containing OmegaScript templates:
|
||||
keepdir /var/lib/omega/templates
|
||||
mv "${S}"/templates/* "${D}"/var/lib/omega/templates || die
|
||||
|
||||
# Directory to write Omega logs to:
|
||||
keepdir /var/log/omega
|
||||
|
||||
# Directory containing any cdb files for the $lookup OmegaScript command:
|
||||
keepdir /var/lib/omega/cdb
|
||||
}
|
Binary file not shown.
@ -1,8 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>lordvan@gentoo.org</email>
|
||||
<name>Thomas Raschbacher</name>
|
||||
</maintainer>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -0,0 +1,18 @@
|
||||
DIST github.com-davecgh-go-spew-v1.1.0.tar.gz 42337 BLAKE2B 691ee430beca602ea686aa065b23af5e00356e866cbca2b014bf0c8f4cc965a2318e6a39232772098e250d61d5bd6707afb769fdf4223c81a8249cad267d1971 SHA512 20c9f0550a2d5030265dde8ad3ed009ce5c6490d010f184ad3f656b8fe5eb6e5c6abc9594408240aa731c0977afd9739d293490e6164cc0ce156652611b05b39
|
||||
DIST github.com-davecgh-go-spew-v1.1.1.tar.gz 42152 BLAKE2B 3c6689b3d2861fbc4a70b8ab25b790d132865e4ec34062fd80005fc7d62c1b4cd77df534c27a2d8b1c42c63f8a551fc7d98e3649bf902d176fd965e933faf6be SHA512 b00621d2f11c4cc858e69fda3e6975f910deb375c4f2305a45b230e2d9be73f183db5d2ce4f5e30a14b27e11e79380233ee68fceeef0d855c64fca966e68111e
|
||||
DIST github.com-golang-crypto-df01cb2cc480.tar.gz 1678929 BLAKE2B 1f803bbce58260aa5d57d63841999b33cfe27866bf762dfb10510b1f7e9448afa83afc7861786dd83416cfce3ed820cff8c6be5ec15c1cce6caea9656014891a SHA512 d2ccc27b8a239a8bd48af49763d6a2123d95c2db6ae0d818802c5d70c66d7ec39e4294e282ed9dc3874e48126bc26f4997dc85626cd9a51739a1854c37ac58b5
|
||||
DIST github.com-golang-net-afa5a82059c6.tar.gz 978660 BLAKE2B 35d7f0a63ebb3f00c77236ff886c485caf792cbfda70378814e3250e500df7192aadd2258a4c3a3151956f3ea2f7695cf5fb7225fdbe5ed2564b18130a70f066 SHA512 4e0a9aa0e1cc612b9f662a5cd1106e1daba65cadef345b3221b9210ed5251727f2cce3126ac7cbaf9105b2929e04a3938da2402a49e767d5b00f8ccac7826e2a
|
||||
DIST github.com-golang-sys-e8e3143a4f4a.tar.gz 1353192 BLAKE2B f6506d74ca44953839468a81ce40c4b3a686f5361819cd9218858d61235d44bc8c4fa9d62f2873aa39fc15c6946b2fc097f8d41d88a66be9684e30114a5debc0 SHA512 2cd3f41a05e749c868f4cf81aba68876a23ac89e73f91e19bb084e40aac6c5df8d900502362a43f0832740a89ae8f0003df09d8b933edb5fb6da5e8092c6b75e
|
||||
DIST github.com-golang-text-f4905fbd45b6.tar.gz 6595858 BLAKE2B 8209515bae60d8b465881678fb2bd65fa84683001c2d97ea872f33f3a12ccd6fcc063c6a2e085f9e0e10d702f6e0ad327524b840b1ace749244d48e95495db95 SHA512 fba082d8f80250fa058cd144bd9eabd3ea3ef0d3d53d231e288e9cc218b2e6d95e5e170381f01a1c5c0220cdd406dbe4e21a5aaceda8e3fd54f28e3e086603b1
|
||||
DIST github.com-golang-tools-aa740d480789.tar.gz 2081304 BLAKE2B 735b69e0a0ff9db74e1d0ce528a29141f4adf5f15433e578e043f2fcabc309425248f956a753efbda864c988729fafce66c54657492f6e7a117d8ea673ae2b55 SHA512 bd83fa44078ee3d9d889d8e3d9ac92ee1165fef6cb999f33b8cbd8e43ef04404d2aaa9d0989a23df621f74325833f85e29e876b72faed26116acf792be47a00d
|
||||
DIST github.com-gopherjs-gopherjs-bd77b112433e.tar.gz 221699 BLAKE2B 99714586d93fd3d85c6baf65eef7411a9e8e70d3f57a06381c165f2b013c97a1cdd2d7b733faec79b7f3c29f3ee493c6b7f73df2bd067a452e58a60c3db2ea5d SHA512 d468dbac7a993322d4602689d0407af25c44691853d3845b2edbd291200fe74babc3e7a8b811390f6e2a3ce4ca6a8bafa668be20ffc6322b64ec95e6a2416cc3
|
||||
DIST github.com-konsorten-go-windows-terminal-sequences-v1.0.1.tar.gz 1909 BLAKE2B edc8dc8f9a9c27d724b98614c2d937f5fed94977c1590f542cb1c8724478a63bba61cd6569fc7daed1e870bc59fc5ca0f5acd501f58e7c93e5c69517c9ca80ac SHA512 8c781a4c17df20623b8ab5af9757fedf6fae9362c10f195eaaeb821a0520ab9407de30607fb085a38a04915eb180bb8d5c4940f91db4fca7ce1cf69a8276bbe7
|
||||
DIST github.com-konsorten-go-windows-terminal-sequences-v1.0.2.tar.gz 1987 BLAKE2B 7dfa1ce4e84b4a6c49676b58d76071b0e82c0cd65cb066ea82bb424740278a34efa53f76d165e3c93a76724115700b7265bb9f73b9ae1907e71fcd97c29663c5 SHA512 25d32f73ca5c7f6fe12037d4ff406264093a36508100fb647864dbe465fc81a7f534beaf4fd9f8b17d299bb1e992d0d37511e92b7e39c8d4ba4176877a20225a
|
||||
DIST github.com-pmezard-go-difflib-v1.0.0.tar.gz 11398 BLAKE2B 8f317c172d615e07c92337dd814c07c772347de3fe81b952bbc4fd1a643d495cfb6ec5b694a531f2745e1601eca2d4977ea2c1202ac7fb1e3cdba31e90c4ea34 SHA512 283927de73a3d0405bbca8b5b0c24137dde2f1063539c6ce4437331ed99e732175b2a384e5a70cb9a87cc74da94f5347e2a9785fbf3e46ec2431dc5071c3f045
|
||||
DIST github.com-sirupsen-logrus-v1.4.1.tar.gz 40811 BLAKE2B cde067ff74800153f555e3f9f00021d4cd9d11adadfa6df6b3da0cf86cc7a8cf7137e5d8e12adc7fdfd45022e9dc0c309a6e23ec4b50d9b9cfc37d73038e21b9 SHA512 7e8e215abb0a7909602378caf8ad746b73f3097b56d2ffd81fc7fb4c9a6b68dd8be25ad452cb19b02d7129e0abbb1e29aca51d91a9421ecdec711abcb97da268
|
||||
DIST github.com-stretchr-objx-v0.1.0.tar.gz 109451 BLAKE2B 4283e5260eac80654b310c02660973644f2f8a4520e8ff4f58d34c0be34938ab7da2a56a807d0661f66c322555277e10f43a2d4cefdc282fcc54fe97a9ebbff4 SHA512 206d0c5cb6b4879d3eafeacfae6d0bd9e6f2372eb3e48d62fc57e4f6b0680253b70326ee1d68d55024a1b8c6ffa8a0007eaff91dd3a75ff7096ac8b885889bf9
|
||||
DIST github.com-stretchr-objx-v0.1.1.tar.gz 75768 BLAKE2B a394114d3d4d7d1a7fabd3f4b4e0a1722df8f1332685d1fdfff9662a7077ac43f5d6e5cd5f360fc47a9ca0852a81574f050e41a089ef40052c14311dc4fc3e90 SHA512 1db9240a7f4c1f34788418abe60bf566823d4881f5224eae9ba6cbf31e65177ef9f5f94b42fca2151bd0111a69b42f1fa6d5ec317955a32463199d4bd6d86b75
|
||||
DIST github.com-stretchr-objx-v0.2.0.tar.gz 79981 BLAKE2B 142269aa50602af8a00dd5f9acb0c85d3287c3d1fbfd953675c6023e597dad88462560ad02d3d20671fa1f3c89fdf66e46a94015e5c492287fb4973beb84d2c8 SHA512 d2b9b907c33b52e6ae5ef58280b3e8b2aa03bb7fe055275850cbe95ed4c62663867abe6ad7a5790ee10ecfab9c0cc7cbcefea1d3971454c02fb198c792402b36
|
||||
DIST github.com-stretchr-testify-v1.2.2.tar.gz 101698 BLAKE2B 8280ff92a5005f9862ebfb80c6904b61105315189b6f56f087ba891dba47eaa5789a055e63c602b355c6c0c6ad68eefe3c26de9f1fac7a6dc44f9715bbbd86f8 SHA512 d925fe6c118f212868967cf1985aa70ca460bf4e3486d58be689e05ff6368485b42cc9a4ae1d5ce40eed38be45678b11d399a26000ce35d6e5ad218fc7d022ed
|
||||
DIST github.com-stretchr-testify-v1.3.0.tar.gz 102859 BLAKE2B 0b590484005372f6c1a8c591c6439d1072c53299db1508495c02712b187623552196421321c5e64aedc0fba6acdbd68db53ddbc8e5d6a78fd783e6f7344783b1 SHA512 29dc8389f0efba9caeb2d2d5704878c93f3b00c21e6ad2712bac52bbc09c460d9028aecbfd5430f200a15fd0e8c8d0157e084b72463d82ceecc5459d93d4d896
|
||||
DIST qt-0_pre20200904.tar.gz 125636107 BLAKE2B 1b9878e5f48a46b0d53610741c58356197c00897f1ea815376638008b6931a8f5a608b52cc45df40c4274e78edc8ebafba568a65740c4851c980935ef3986d77 SHA512 0e5ffa3662e92331dc0438bda09127eed186180570046c919ff5a33ed9ad3124a51279bbbe08fafe685f3fd5b0c61dc94ae217e2699a8ebcb24f4cd796c85b1a
|
@ -0,0 +1,75 @@
|
||||
We cannot generate bindings for Nfc or RemoteObjects because they
|
||||
haven't been packaged for Gentoo yet. On the other hand, the modules:
|
||||
Script, ScriptTools and XmlPatterns have long since been deprecated.
|
||||
|
||||
--- a/src/github.com/therecipe/qt/internal/binding/parser/helper.go
|
||||
+++ b/src/github.com/therecipe/qt/internal/binding/parser/helper.go
|
||||
@@ -191,10 +191,8 @@
|
||||
"AndroidExtras": {"Core"},
|
||||
"Gui": {"Widgets", "Core"}, //Widgets
|
||||
"Network": {"Core"},
|
||||
- "Xml": {"XmlPatterns", "Core"}, //XmlPatterns
|
||||
+ "Xml": {"Core"}, //XmlPatterns
|
||||
"DBus": {"Core"},
|
||||
- "Nfc": {"Core"},
|
||||
- "Script": {"Core"},
|
||||
"Sensors": {"Core"},
|
||||
"Positioning": {"Core"},
|
||||
"Widgets": {"Gui", "Core"},
|
||||
@@ -202,7 +200,6 @@
|
||||
"MacExtras": {"Gui", "Core"},
|
||||
"Qml": {"Network", "Core"},
|
||||
"WebSockets": {"Network", "Core"},
|
||||
- "XmlPatterns": {"Network", "Core"},
|
||||
"Bluetooth": {"Core"},
|
||||
"WebChannel": {"Network", "Qml", "Core"}, //Network (needed for static linking ios)
|
||||
"Svg": {"Widgets", "Gui", "Core"},
|
||||
@@ -210,7 +207,6 @@
|
||||
"Quick": {"QuickWidgets", "Widgets", "Network", "Qml", "Gui", "Core"}, //QuickWidgets, Widgets, Network (needed for static linking ios)
|
||||
"Help": {"Sql", "Network", "Widgets", "Gui", "Core"}, //Sql + CLucene + Network (needed for static linking ios)
|
||||
"Location": {"Positioning", "Quick", "Gui", "Core"},
|
||||
- "ScriptTools": {"Script", "Widgets", "Core"}, //Script, Widgets
|
||||
"UiTools": {"Widgets", "Gui", "Core"},
|
||||
"X11Extras": {"Gui", "Core"},
|
||||
"WinExtras": {"Widgets", "Gui", "Core"},
|
||||
@@ -237,7 +233,6 @@
|
||||
"WebView": {"Core"},
|
||||
|
||||
"NetworkAuth": {"Network", "Gui", "Core"},
|
||||
- "RemoteObjects": {"Network", "Core"},
|
||||
|
||||
"WebKit": {"WebKitWidgets", "Multimedia", "Positioning", "Widgets", "Sql", "Network", "Gui", "Sensors", "Core"},
|
||||
|
||||
@@ -389,8 +384,6 @@
|
||||
"Network",
|
||||
"Xml",
|
||||
"DBus",
|
||||
- "Nfc",
|
||||
- "Script", //depreached (planned) in 5.6
|
||||
"Sensors",
|
||||
"Positioning",
|
||||
"Widgets",
|
||||
@@ -398,7 +391,6 @@
|
||||
"MacExtras",
|
||||
"Qml",
|
||||
"WebSockets",
|
||||
- "XmlPatterns",
|
||||
"Bluetooth",
|
||||
"WebChannel",
|
||||
"Svg",
|
||||
@@ -406,7 +398,6 @@
|
||||
"Quick",
|
||||
"Help",
|
||||
"Location",
|
||||
- "ScriptTools", //depreached (planned) in 5.6
|
||||
"UiTools",
|
||||
//"X11Extras", //TODO:
|
||||
"WinExtras",
|
||||
@@ -433,7 +424,6 @@
|
||||
"WebView",
|
||||
|
||||
//"NetworkAuth", //TODO:
|
||||
- "RemoteObjects",
|
||||
|
||||
"WebKit",
|
||||
|
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>marecki@gentoo.org</email>
|
||||
<name>Marek Szuba</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,120 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
EGO_PN="github.com/therecipe/qt"
|
||||
EGO_VENDOR=(
|
||||
"github.com/davecgh/go-spew v1.1.0"
|
||||
"github.com/davecgh/go-spew v1.1.1"
|
||||
"github.com/gopherjs/gopherjs bd77b112433e"
|
||||
"github.com/konsorten/go-windows-terminal-sequences v1.0.1"
|
||||
"github.com/konsorten/go-windows-terminal-sequences v1.0.2"
|
||||
"github.com/pmezard/go-difflib v1.0.0"
|
||||
"github.com/sirupsen/logrus v1.4.1"
|
||||
"github.com/stretchr/objx v0.1.0"
|
||||
"github.com/stretchr/objx v0.1.1"
|
||||
"github.com/stretchr/objx v0.2.0"
|
||||
"github.com/stretchr/testify v1.2.2"
|
||||
"github.com/stretchr/testify v1.3.0"
|
||||
"golang.org/x/crypto df01cb2cc480 github.com/golang/crypto"
|
||||
"golang.org/x/net afa5a82059c6 github.com/golang/net"
|
||||
"golang.org/x/sys e8e3143a4f4a github.com/golang/sys"
|
||||
"golang.org/x/sys e8e3143a4f4a github.com/golang/sys"
|
||||
"golang.org/x/text f4905fbd45b6 github.com/golang/text"
|
||||
"golang.org/x/tools aa740d480789 github.com/golang/tools"
|
||||
)
|
||||
|
||||
inherit golang-vcs-snapshot xdg-utils
|
||||
|
||||
EGIT_COMMIT="c0c124a5770d357908f16fa57e0aa0ec6ccd3f91"
|
||||
|
||||
DESCRIPTION="Qt5 Go bindings"
|
||||
HOMEPAGE="https://github.com/therecipe/qt/"
|
||||
SRC_URI="https://github.com/therecipe/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
|
||||
${EGO_VENDOR_URI}"
|
||||
|
||||
LICENSE="LGPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
# As of 2021-01-20 the test 'widgets/textedit' calls methods which do not exist, at least in qt-5.15.
|
||||
# TODO: figure out how to disable this test.
|
||||
RESTRICT="test"
|
||||
|
||||
# We need qt-docs[html] because binding generation depends on core .index files
|
||||
# installed by this USE flag.
|
||||
RDEPEND="dev-qt/designer:5=
|
||||
dev-qt/qt-docs:5=[html]
|
||||
dev-qt/qtbluetooth:5=
|
||||
dev-qt/qtcharts:5=
|
||||
dev-qt/qtdatavis3d:5=
|
||||
dev-qt/qtdbus:5=
|
||||
dev-qt/qtgamepad:5=
|
||||
dev-qt/qthelp:5=
|
||||
dev-qt/qtlocation:5=
|
||||
dev-qt/qtmultimedia:5=[widgets]
|
||||
dev-qt/qtpositioning:5=
|
||||
dev-qt/qtquickcontrols2:5=
|
||||
dev-qt/qtscxml:5=
|
||||
dev-qt/qtsensors:5=
|
||||
dev-qt/qtserialbus:5=
|
||||
dev-qt/qtserialport:5=
|
||||
dev-qt/qtspeech:5=
|
||||
dev-qt/qtsql:5=
|
||||
dev-qt/qtsvg:5=
|
||||
dev-qt/qtvirtualkeyboard:5=
|
||||
dev-qt/qtwebchannel:5=
|
||||
dev-qt/qtwebengine:5=
|
||||
dev-qt/qtwebsockets:5=
|
||||
dev-qt/qtwebview:5=
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0_pre20200904-disable_modules.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
xdg_environment_reset
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
export GOPATH="${WORKDIR}"/${P}
|
||||
export QT_PKG_CONFIG=true
|
||||
export QT_DOC_DIR="${EPREFIX}/usr/share/qt5-doc"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Not a typo, all that gets installed here is the bootstrap for generating
|
||||
# and building actual bindings
|
||||
go install -v -work -x -tags=no_env ${EGO_PN}/cmd/... || die
|
||||
|
||||
"${GOPATH}"/bin/qtsetup -failfast -test=false || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
"${GOPATH}"/bin/qtsetup -failfast test || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# Just in case
|
||||
unset GOPATH
|
||||
|
||||
rm -rf src/${EGO_PN}/vendor
|
||||
rm -rf src/${EGO_PN}/.git*
|
||||
find src/${EGO_PN}/internal/examples -type d -name deploy -exec rm -rf {} \;
|
||||
find src/${EGO_PN} -name '*.c' -exec rm -f {} \;
|
||||
find src/${EGO_PN} -name '*.h' -exec rm -f {} \;
|
||||
|
||||
insinto $(dirname "$(get_golibdir)/src/${EGO_PN%/*}")
|
||||
doins -r src/${EGO_PN%/*}
|
||||
|
||||
insinto $(dirname "$(get_golibdir)/pkg/$(go env GOOS)_$(go env GOARCH)/${EGO_PN%/*}")
|
||||
doins -r pkg/$(go env GOOS)_$(go env GOARCH)/${EGO_PN%/*}
|
||||
|
||||
# Not sure if we still need qtsetup - but just in case, install all binaries
|
||||
exeinto "$(get_golibdir)"/bin
|
||||
doexe bin/*
|
||||
}
|
Binary file not shown.
@ -1,40 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
JAVA_PKG_IUSE="doc source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
DATE="201505241946"
|
||||
|
||||
DESCRIPTION="Java Code Coverage library."
|
||||
HOMEPAGE="https://eclemma.org/jacoco/"
|
||||
SRC_URI="
|
||||
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.report/${PV}.${DATE}/org.${PN}.report-${PV}.${DATE}-sources.jar -> ${P}-report.jar
|
||||
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.agent/${PV}.${DATE}/org.${PN}.agent-${PV}.${DATE}-sources.jar -> ${P}-agent.jar
|
||||
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.core/${PV}.${DATE}/org.${PN}.core-${PV}.${DATE}-sources.jar -> ${P}-core.jar
|
||||
https://repo1.maven.org/maven2/org/${PN}/org.${PN}.ant/${PV}.${DATE}/org.${PN}.ant-${PV}.${DATE}-sources.jar -> ${P}-ant.jar"
|
||||
LICENSE="EPL-1.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc64 x86"
|
||||
IUSE=""
|
||||
|
||||
CDEPEND="
|
||||
dev-java/ant-core:0
|
||||
dev-java/asm:4"
|
||||
|
||||
RDEPEND="
|
||||
${CDEPEND}
|
||||
>=virtual/jre-1.6"
|
||||
|
||||
DEPEND="
|
||||
${CDEPEND}
|
||||
app-arch/unzip
|
||||
>=virtual/jdk-1.6"
|
||||
|
||||
JAVA_GENTOO_CLASSPATH="
|
||||
asm-4
|
||||
ant-core
|
||||
"
|
Binary file not shown.
@ -0,0 +1,347 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
|
||||
|
||||
MY_P="Python-${PV}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-2.7.18-r6"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
|
||||
IUSE="-berkdb bluetooth build elibc_uclibc examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl +threads tk +wide-unicode wininst +xml"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
dev-libs/libffi:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
berkdb? ( || (
|
||||
sys-libs/db:5.3
|
||||
sys-libs/db:5.1
|
||||
sys-libs/db:4.8
|
||||
sys-libs/db:4.7
|
||||
sys-libs/db:4.6
|
||||
sys-libs/db:4.5
|
||||
sys-libs/db:4.4
|
||||
sys-libs/db:4.3
|
||||
sys-libs/db:4.2
|
||||
) )
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
virtual/pkgconfig
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+="
|
||||
!build? ( app-misc/mime-types )
|
||||
!<=dev-lang/python-exec-2.4.6-r1"
|
||||
|
||||
pkg_setup() {
|
||||
if use berkdb; then
|
||||
ewarn "'bsddb' module is out-of-date and no longer maintained inside"
|
||||
ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally"
|
||||
ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module"
|
||||
ewarn "is provided by dev-python/bsddb3."
|
||||
else
|
||||
if has_version "=${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"; then
|
||||
ewarn "You are migrating from =${CATEGORY}/${PN}-${PV%%.*}*[berkdb]"
|
||||
ewarn "to =${CATEGORY}/${PN}-${PV%%.*}*[-berkdb]."
|
||||
ewarn "You might need to migrate your databases."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
Lib/distutils/command/install.py \
|
||||
Lib/distutils/sysconfig.py \
|
||||
Lib/site.py \
|
||||
Lib/sysconfig.py \
|
||||
Lib/test/test_site.py \
|
||||
Makefile.pre.in \
|
||||
Modules/Setup.dist \
|
||||
Modules/getpath.c \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# dbm module can be linked against berkdb or gdbm.
|
||||
# Defaults to gdbm when both are enabled, #204343.
|
||||
local disable
|
||||
use berkdb || use gdbm || disable+=" dbm"
|
||||
use berkdb || disable+=" _bsddb"
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
# Force some tests that try to poke fs paths.
|
||||
export ac_cv_file__dev_ptc=no
|
||||
export ac_cv_file__dev_ptmx=yes
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python2.X/config/Makefile.
|
||||
tc-export CXX
|
||||
# The configure script fails to use pkg-config correctly.
|
||||
# http://bugs.python.org/issue15506
|
||||
export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG)
|
||||
|
||||
# Set LDFLAGS so we link modules with -lpython2.7 correctly.
|
||||
# Needed on FreeBSD unless Python 2.7 is already installed.
|
||||
# Please query BSD team before removing this!
|
||||
append-ldflags "-L."
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
if use berkdb; then
|
||||
dbmliborder+="${dbmliborder:+:}bdb"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# The check is broken on clang, and gives false positive:
|
||||
# https://bugs.gentoo.org/596798
|
||||
# (upstream dropped this flag in 3.2a4 anyway)
|
||||
ac_cv_opt_olimit_ok=no
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--with-fpectl
|
||||
--enable-shared
|
||||
$(use_enable ipv6)
|
||||
$(use_with threads)
|
||||
$(use wide-unicode && echo "--enable-unicode=ucs4" || echo "--enable-unicode=ucs2")
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
--without-ensurepip
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
|
||||
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
|
||||
# Avoid invoking pgen for cross-compiles.
|
||||
touch Include/graminit.h Python/graminit.c
|
||||
|
||||
emake
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="distutils gdb"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
|
||||
# Daylight saving time problem
|
||||
# https://bugs.python.org/issue22067
|
||||
# https://bugs.gentoo.org/610628
|
||||
local -x TZ=UTC
|
||||
|
||||
# Rerun failed tests in verbose mode (regrtest -w).
|
||||
emake test EXTRATESTOPTS="-w" < /dev/tty
|
||||
local result="$?"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
mv "${ED}/usr/bin/2to3" "${ED}/usr/bin/2to3-${PYVER}" || die
|
||||
mv "${ED}/usr/bin/pydoc" "${ED}/usr/bin/pydoc${PYVER}" || die
|
||||
mv "${ED}/usr/bin/idle" "${ED}/usr/bin/idle${PYVER}" || die
|
||||
rm "${ED}/usr/bin/smtpd.py" || die
|
||||
|
||||
use berkdb || rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,lib-tk} || die
|
||||
use elibc_uclibc && rm -fr "${libdir}/"{bsddb/test,test}
|
||||
|
||||
use threads || rm -r "${libdir}/multiprocessing" || die
|
||||
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python
|
||||
ln -s "../../../bin/python${PYVER}" \
|
||||
"${scriptdir}/python" || die
|
||||
# python-config
|
||||
ln -s "../../../bin/python${PYVER}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc, pyvenv
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
|
||||
# python2* is no longer wrapped, so just symlink it
|
||||
local pymajor=${PYVER%.*}
|
||||
dosym "python${PYVER}" "/usr/bin/python${pymajor}"
|
||||
dosym "python${PYVER}-config" "/usr/bin/python${pymajor}-config"
|
||||
}
|
@ -0,0 +1,331 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools flag-o-matic multiprocessing pax-utils \
|
||||
python-utils-r1 toolchain-funcs
|
||||
|
||||
MY_P="Python-${PV}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${PV}-r2"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}/${PYVER}m"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 sparc ~x86"
|
||||
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test +threads tk wininst +xml"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
dev-libs/libffi:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
virtual/pkgconfig
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
Lib/distutils/command/install.py \
|
||||
Lib/distutils/sysconfig.py \
|
||||
Lib/site.py \
|
||||
Lib/sysconfig.py \
|
||||
Lib/test/test_site.py \
|
||||
Makefile.pre.in \
|
||||
Modules/Setup.dist \
|
||||
Modules/getpath.c \
|
||||
configure.ac \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
# force correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
tc-export CXX
|
||||
|
||||
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||
# Please query BSD team before removing this!
|
||||
append-ldflags "-L."
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--with-fpectl
|
||||
--enable-shared
|
||||
$(use_enable ipv6)
|
||||
$(use_with threads)
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
|
||||
if use threads && grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="gdb faulthandler"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
|
||||
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local result=$?
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/$(get_libdir)/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/$(get_libdir)/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
# Remove static library
|
||||
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
|
||||
|
||||
sed \
|
||||
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
|
||||
use threads || rm -r "${libdir}/multiprocessing" || die
|
||||
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" \
|
||||
"${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc, pyvenv
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
ln -s "../../../bin/pyvenv-${PYVER}" \
|
||||
"${scriptdir}/pyvenv" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
@ -0,0 +1,317 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools flag-o-matic multiprocessing pax-utils \
|
||||
python-utils-r1 toolchain-funcs
|
||||
|
||||
MY_P="Python-${PV}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${PV}-r2"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="https://www.python.org/"
|
||||
SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}/${PYVER}m"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
|
||||
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
dev-libs/libffi:=
|
||||
sys-apps/util-linux:=
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libcrypt:=
|
||||
virtual/libintl
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? ( >=sys-libs/readline-4.1:= )
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? (
|
||||
!libressl? ( dev-libs/openssl:= )
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
)
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
xml? ( >=dev-libs/expat-2.1:= )"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
virtual/pkgconfig
|
||||
!sys-devel/gcc[libffi(-)]"
|
||||
RDEPEND+=" !build? ( app-misc/mime-types )"
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat, libffi and zlib are not used.
|
||||
rm -fr Modules/expat || die
|
||||
rm -fr Modules/_ctypes/libffi* || die
|
||||
rm -fr Modules/zlib || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
|
||||
setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
|
||||
|
||||
# force correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local disable
|
||||
# disable automagic bluetooth headers detection
|
||||
use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
|
||||
use gdbm || disable+=" gdbm"
|
||||
use ncurses || disable+=" _curses _curses_panel"
|
||||
use readline || disable+=" readline"
|
||||
use sqlite || disable+=" _sqlite3"
|
||||
use ssl || export PYTHON_DISABLE_SSL="1"
|
||||
use tk || disable+=" _tkinter"
|
||||
use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
|
||||
export PYTHON_DISABLE_MODULES="${disable}"
|
||||
|
||||
if ! use xml; then
|
||||
ewarn "You have configured Python without XML support."
|
||||
ewarn "This is NOT a recommended configuration as you"
|
||||
ewarn "may face problems parsing any XML documents."
|
||||
fi
|
||||
|
||||
if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
|
||||
einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
|
||||
fi
|
||||
|
||||
if [[ "$(gcc-major-version)" -ge 4 ]]; then
|
||||
append-flags -fwrapv
|
||||
fi
|
||||
|
||||
filter-flags -malign-double
|
||||
|
||||
# https://bugs.gentoo.org/show_bug.cgi?id=50309
|
||||
if is-flagq -O3; then
|
||||
is-flagq -fstack-protector-all && replace-flags -O3 -O2
|
||||
use hardened && replace-flags -O3 -O2
|
||||
fi
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
tc-export CXX
|
||||
|
||||
# Set LDFLAGS so we link modules with -lpython3.2 correctly.
|
||||
# Needed on FreeBSD unless Python 3.2 is already installed.
|
||||
# Please query BSD team before removing this!
|
||||
append-ldflags "-L."
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
|
||||
local dbmliborder
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
$(use_enable ipv6)
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--with-system-expat
|
||||
--with-system-ffi
|
||||
)
|
||||
|
||||
OPT="" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# Skip failing tests.
|
||||
local skipped_tests="gdb"
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${S}"/Lib/test/test_${test}.py "${T}"
|
||||
done
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
|
||||
local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
|
||||
|
||||
emake test EXTRATESTOPTS="-u-network -j${jobs}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local result=$?
|
||||
|
||||
for test in ${skipped_tests}; do
|
||||
mv "${T}/test_${test}.py" "${S}"/Lib/test
|
||||
done
|
||||
|
||||
elog "The following tests have been skipped:"
|
||||
for test in ${skipped_tests}; do
|
||||
elog "test_${test}.py"
|
||||
done
|
||||
|
||||
elog "If you would like to run them, you may:"
|
||||
elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
|
||||
elog "and run the tests separately."
|
||||
|
||||
if [[ ${result} -ne 0 ]]; then
|
||||
die "emake test failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
emake DESTDIR="${D}" altinstall
|
||||
|
||||
# Remove static library
|
||||
rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
|
||||
|
||||
sed \
|
||||
-e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
|
||||
-e "s/\(PY_LDFLAGS=\).*/\1/" \
|
||||
-i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax_kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
|
||||
use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
|
||||
|
||||
use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
|
||||
emake --no-print-directory -s -f - 2>/dev/null)
|
||||
newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
local -x EPYTHON=python${PYVER}
|
||||
# if not using a cross-compiler, use the fresh binary
|
||||
if ! tc-is-cross-compiler; then
|
||||
local -x PYTHON=./python
|
||||
local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
|
||||
else
|
||||
local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
|
||||
fi
|
||||
|
||||
echo "EPYTHON='${EPYTHON}'" > epython.py || die
|
||||
python_domodule epython.py
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" \
|
||||
"${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" \
|
||||
"${scriptdir}/python-config" || die
|
||||
# 2to3, pydoc, pyvenv
|
||||
ln -s "../../../bin/2to3-${PYVER}" \
|
||||
"${scriptdir}/2to3" || die
|
||||
ln -s "../../../bin/pydoc${PYVER}" \
|
||||
"${scriptdir}/pydoc" || die
|
||||
ln -s "../../../bin/pyvenv-${PYVER}" \
|
||||
"${scriptdir}/pyvenv" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" \
|
||||
"${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -0,0 +1,43 @@
|
||||
From 0d3d1f2655901776b2fc3e911eb78478412f789a Mon Sep 17 00:00:00 2001
|
||||
From: Lyberta <lyberta@lyberta.net>
|
||||
Date: Sat, 7 Oct 2017 19:26:40 +0300
|
||||
Subject: [PATCH] Fixed version-info.
|
||||
|
||||
---
|
||||
Makefile.am | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index d21887d..07338eb 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -5,7 +5,7 @@ blind_id_SOURCES = main.c
|
||||
blind_id_LDADD = libd0_blind_id.la
|
||||
|
||||
lib_LTLIBRARIES = libd0_blind_id.la
|
||||
-# versioninfo:
|
||||
+# version-info:
|
||||
# - compatible interface change: c:r:a -> c+1:0:a+1
|
||||
# - incompatible interface change: c:r:a -> c+1:0:0
|
||||
# - internal change: c:r:a -> c:r+1:a
|
||||
@@ -29,7 +29,7 @@ libd0_blind_id_la_SOURCES += d0_bignum-gmp.c
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
-libd0_blind_id_la_LDFLAGS = -versioninfo 7:1:7
|
||||
+libd0_blind_id_la_LDFLAGS = -version-info 7:1:7
|
||||
libd0_blind_id_la_CFLAGS = -fvisibility=hidden -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement
|
||||
library_includedir = $(includedir)/d0_blind_id
|
||||
library_include_HEADERS = d0_blind_id.h d0.h
|
||||
@@ -40,7 +40,7 @@ if ENABLE_RIJNDAEL
|
||||
lib_LTLIBRARIES += libd0_rijndael.la
|
||||
libd0_rijndael_la_SOURCES = d0_rijndael.c \
|
||||
d0_rijndael.h
|
||||
-libd0_rijndael_la_LDFLAGS = -versioninfo 0:0:0
|
||||
+libd0_rijndael_la_LDFLAGS = -version-info 0:0:0
|
||||
libd0_rijndael_la_CFLAGS = -fvisibility=hidden -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement
|
||||
library_include_HEADERS += d0_rijndael.h
|
||||
pkgconfig_HEADERS += d0_rijndael.pc
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,2 +1,3 @@
|
||||
DIST libgcrypt-1.8.6.tar.bz2 2997781 BLAKE2B 90ecacae75633dfff248b9c07a72126aaa4a5c285141f89c42237326ae3bfb99c937eef05d87b466c3d8f5cf022725ccee5c0dbc74d4eb57523a8a2892864b65 SHA512 28a26f665b7e327b79815849ee6e84ab384ee9105d81d4d06e4feeea07d986f940cbbb9faaae8712068cace45b4110a62965a93201da0e1ad008b65808b2b29b
|
||||
DIST libgcrypt-1.8.7.tar.bz2 2985660 BLAKE2B cb2132b826f3f3af240e6c9ac5fd992808aa17ce64144d17452591a5b1e402564af82c021b58f5fd620ebeb5894ac9654835f6d8376ec05ee41fc02189dd6825 SHA512 6309d17624d8029848990d225d5924886c951cef691266c8e010fbbb7f678972cee70cbb91d370ad0bcdc8c8761402a090c2c853c9427ec79293624a59da5060
|
||||
DIST libgcrypt-1.9.0.tar.bz2 3183699 BLAKE2B 6969d8dc8e3b5f0a1816c007b78bbf2e2a6f50f8f4505535294d87de6eb54dc4f0e3d0bbe95bab43feb070538a2956801f28d745a233880e769e24fb9061e02f SHA512 cdfb812f387e4bac598fe5701eafb284ee326cce6b20fce08b92262e371e0d95a1ab529dfa3232255869e27787c102aa817f7a70bd5fbbf8d490025a01e40429
|
||||
|
@ -0,0 +1,77 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools flag-o-matic multilib-minimal toolchain-funcs
|
||||
|
||||
DESCRIPTION="General purpose crypto library based on the code used in GnuPG"
|
||||
HOMEPAGE="http://www.gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2.1 MIT"
|
||||
SLOT="0/20" # subslot = soname major version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc o-flag-munging static-libs"
|
||||
|
||||
RDEPEND=">=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}]"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( virtual/texi2dvi )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.6.1-uscore.patch
|
||||
"${FILESDIR}"/${PN}-multilib-syspath.patch
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/libgcrypt-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if [[ ${CHOST} == *86*-solaris* ]] ; then
|
||||
# ASM code uses GNU ELF syntax, divide in particular, we need to
|
||||
# allow this via ASFLAGS, since we don't have a flag-o-matic
|
||||
# function for that, we'll have to abuse cflags for this
|
||||
append-cflags -Wa,--divide
|
||||
fi
|
||||
local myeconfargs=(
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
--enable-noexecstack
|
||||
# required for sys-power/suspend[crypt], bug 751568
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable o-flag-munging O-flag-munging)
|
||||
|
||||
# disabled due to various applications requiring privileges
|
||||
# after libgcrypt drops them (bug #468616)
|
||||
--without-capabilities
|
||||
|
||||
# http://trac.videolan.org/vlc/ticket/620
|
||||
# causes bus-errors on sparc64-solaris
|
||||
$([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm")
|
||||
$([[ ${CHOST} == sparcv9-*-solaris* ]] && echo "--disable-asm")
|
||||
|
||||
GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
)
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
default
|
||||
find "${D}" -type f -name '*.la' -delete || die
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
DIST xapian-core-1.2.25.tar.xz 3253292 BLAKE2B a130e26188c949d0433d017e8d13e7ecf6241a232d00125699ba8ed63eab9cb1651e02182fcc152f960f4e122709958632779daaaf5760fe50953a3b5b07a243 SHA512 a15b5d9b5770337519f671732f53f0642b31f08206824500d589ba309c9e91a05a30353d66ebf70a4c1cb1824b44e1c7b7630e799de3b15d645cf951a6017bfe
|
||||
DIST xapian-core-1.4.14.tar.xz 2970624 BLAKE2B 5bfa5ab36ad4626fcc9a214427f88bdf55e60166939db3a65d3118b426b0ec6754efc10dbcf32456e033292eba3b29f7500679f69a49df15d40c4111322249ed SHA512 c08c9abe87e08491566b7cfa8cda9e2a80e4959a647428b6d82bce7af1c967b4cb463607ffb8976372a980c163923ced36117a66e0b5a1f35659393def3d371b
|
||||
DIST xapian-core-1.4.15.tar.xz 2988752 BLAKE2B d68d69cdc55c1b62a746620fc90f028819813bb98c0ad0cc130c399a4dd62231b920d24363b61e58d002f65a79a117598455779028de1b26b7a808367f5f2de4 SHA512 f28209acae12a42a345382668f7f7da7a2ce5a08362d0e2af63c9f94cb2adca95366499a7afa0bd9008fbfcca4fd1f2c9221e594fc2a2c740f5899e9f03ecad3
|
||||
DIST xapian-core-1.4.16.tar.xz 3041132 BLAKE2B 2c009bcdec05542ceae9354e47e8ff9b971ec87d04caf8058711fd6952135620c353f2feabcd869313f55194409944bc7374ce69d626f948461963a7790c3953 SHA512 3d319ab672485e840019ee28b54b1c59bbd535c1802874f58593fb999681c19bff3e776dc19ab5d5bd97734bf01f1408f36ae49e21ca9706ca187db49f8a18a6
|
||||
DIST xapian-core-1.4.17.tar.xz 2997700 BLAKE2B 882bc28c9a55731212a5c3ac6da3ad2082e3345cb473eb2c09b80fdd05e700bb31cff6c9a0524b27da015b14655c30548e92a457b48af43279bfd3564cf3c3fa SHA512 3eaf45d31eb9318e292fa052b32b1d9e1035651bdd3c366a0134f4b39d03d987083c19426a3d4b10f60078190fc3388f05b332cba958263bab1abf236c7a3ca7
|
||||
DIST xapian-core-1.4.18.tar.xz 2984508 BLAKE2B e5d680578e0a4605a8e99470921fba29cdd3d137d017608b8bf571951726055d2a1d49e9649829f0df92af3d27d0565f90baaca5a4eb5c67cb368f5d1e592d28 SHA512 ba6240054c0d2f92b9f1059aa934cdf35388ee7c7e05f4ef6f9856bdaed8ad821095a348ed9a892afdf18c3c0ad20e163028ad0ed3a9934bd69b861e814678ef
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue