parent
5b7cbddf25
commit
f3cce43064
@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=System Logger Daemon
|
||||
Names=syslog.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/metalog
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
Alias=syslog.service
|
@ -1,4 +1,3 @@
|
||||
DIST zile-2.3.24.tar.gz 953962 SHA256 218bb2af414c6a168101656631a5b2da92f20a965895e1006658cc658b0b7e89 SHA512 8361f42436ae9ca150f09d830096b7a3fb0089d58bffe5ad7538b5ec5cd4e0e50085213e938db1a95e2922db845d1d2f36841a65fe1b9b72f60cd930dd8f09b9 WHIRLPOOL 37aae22305abdc2c2b86c8f6b43dcb7621464213ac375ec2fde767d99f79ddba08216c392c5500a71175f30762fe57e786f94305ff03947e413d5291cfafa934
|
||||
DIST zile-2.4.7.tar.gz 1254385 SHA256 8cf532fe48b5ca09e2cf67abf7abe33642eb7af4e7cd8bd1eb90137d96c467aa SHA512 eba58cd1c5eee6e4cf7e17aa56fc3682ac14d68eab6e72591fe0a1dd582b1d217717f6b31206fb70fbda8628251e5daded95c1bb688bcff6eb8dc6984ecd75d6 WHIRLPOOL fac86881b596ce753f3e073e630e57d52346bdaee1a2a27fec36053860944dc8b95e91d8a2c6f4afb809244bbfb7cdec60820aaad4fdbe59bdac4341874c9f1c
|
||||
DIST zile-2.4.8.tar.gz 1184855 SHA256 b793f4e064e3cdcac2f72a42b168c5cc0da6f7d078b8aac458b7d3cbacf7bc49 SHA512 53740400cf80ccd2106919688cfb7d60e6779e7666f555ea7ef3e4fe07620c13aafaa86a5ac766a288493012a46e5dff0b7640847a6b24206eb913668d34b491 WHIRLPOOL dd3d5ff7bcba89faf6c2545cc833d0e6592e87de0956063f479b92055dd1aca05252579fb140a02e8df4d88e00261bc0b88f6285eea5eae096660cd01c132afc
|
||||
DIST zile-2.4.9.tar.gz 1192776 SHA256 c71959c7aca02ac66be526ecccbc7954fb0ea7591ed3c13311a95e8f040b0049 SHA512 5660ef4d1b3bb87386111d64e2b4bed1c1ab99c893016378fc42312af28105f81a8a86f7926694c6440488cd0eef029a2e8c965414a123473a004bf349b1d6c6 WHIRLPOOL 6138b37d528e470b10369fd9f9aedd08be73811b5c1628df8123e8ba05c7d74898eb6f7a6a51599143d854a0b8e54d27f79069288446357d460b654b278c4793
|
||||
|
@ -1,38 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/zile/zile-2.4.8.ebuild,v 1.3 2012/11/02 07:48:34 ulm Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Zile is a small Emacs clone"
|
||||
HOMEPAGE="http://www.gnu.org/software/zile/"
|
||||
SRC_URI="mirror://gnu/zile/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
|
||||
IUSE="acl test"
|
||||
|
||||
RDEPEND="dev-libs/boehm-gc
|
||||
sys-libs/ncurses
|
||||
acl? ( virtual/acl )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( dev-lang/perl )"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--docdir="${EPREFIX}"/usr/share/doc/${PF} \
|
||||
--disable-silent-rules \
|
||||
$(use_enable acl)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
# AUTHORS, FAQ, and NEWS are installed by the build system
|
||||
dodoc README THANKS
|
||||
|
||||
# Zile should never install charset.alias (even on non-glibc arches)
|
||||
rm -f "${ED}"/usr/lib/charset.alias
|
||||
}
|
@ -0,0 +1,73 @@
|
||||
diff --git a/tools/ocaml/libs/xb/partial.ml b/tools/ocaml/libs/xb/partial.ml
|
||||
index 3558889..d4d1c7b 100644
|
||||
--- a/tools/ocaml/libs/xb/partial.ml
|
||||
+++ b/tools/ocaml/libs/xb/partial.ml
|
||||
@@ -27,8 +27,15 @@ external header_size: unit -> int = "stub_header_size"
|
||||
external header_of_string_internal: string -> int * int * int * int
|
||||
= "stub_header_of_string"
|
||||
|
||||
+let xenstore_payload_max = 4096 (* xen/include/public/io/xs_wire.h *)
|
||||
+
|
||||
let of_string s =
|
||||
let tid, rid, opint, dlen = header_of_string_internal s in
|
||||
+ (* A packet which is bigger than xenstore_payload_max is illegal.
|
||||
+ This will leave the guest connection is a bad state and will
|
||||
+ be hard to recover from without restarting the connection
|
||||
+ (ie rebooting the guest) *)
|
||||
+ let dlen = min xenstore_payload_max dlen in
|
||||
{
|
||||
tid = tid;
|
||||
rid = rid;
|
||||
@@ -38,6 +45,7 @@ let of_string s =
|
||||
}
|
||||
|
||||
let append pkt s sz =
|
||||
+ if pkt.len > 4096 then failwith "Buffer.add: cannot grow buffer";
|
||||
Buffer.add_string pkt.buf (String.sub s 0 sz)
|
||||
|
||||
let to_complete pkt =
|
||||
diff --git a/tools/ocaml/libs/xb/xs_ring_stubs.c b/tools/ocaml/libs/xb/xs_ring_stubs.c
|
||||
index 00414c5..4888ac5 100644
|
||||
--- a/tools/ocaml/libs/xb/xs_ring_stubs.c
|
||||
+++ b/tools/ocaml/libs/xb/xs_ring_stubs.c
|
||||
@@ -39,21 +39,23 @@ static int xs_ring_read(struct mmap_interface *interface,
|
||||
char *buffer, int len)
|
||||
{
|
||||
struct xenstore_domain_interface *intf = interface->addr;
|
||||
- XENSTORE_RING_IDX cons, prod;
|
||||
+ XENSTORE_RING_IDX cons, prod; /* offsets only */
|
||||
int to_read;
|
||||
|
||||
- cons = intf->req_cons;
|
||||
- prod = intf->req_prod;
|
||||
+ cons = *(volatile uint32*)&intf->req_cons;
|
||||
+ prod = *(volatile uint32*)&intf->req_prod;
|
||||
xen_mb();
|
||||
+ cons = MASK_XENSTORE_IDX(cons);
|
||||
+ prod = MASK_XENSTORE_IDX(prod);
|
||||
if (prod == cons)
|
||||
return 0;
|
||||
- if (MASK_XENSTORE_IDX(prod) > MASK_XENSTORE_IDX(cons))
|
||||
+ if (prod > cons)
|
||||
to_read = prod - cons;
|
||||
else
|
||||
- to_read = XENSTORE_RING_SIZE - MASK_XENSTORE_IDX(cons);
|
||||
+ to_read = XENSTORE_RING_SIZE - cons;
|
||||
if (to_read < len)
|
||||
len = to_read;
|
||||
- memcpy(buffer, intf->req + MASK_XENSTORE_IDX(cons), len);
|
||||
+ memcpy(buffer, intf->req + cons, len);
|
||||
xen_mb();
|
||||
intf->req_cons += len;
|
||||
return len;
|
||||
@@ -66,8 +68,8 @@ static int xs_ring_write(struct mmap_interface *interface,
|
||||
XENSTORE_RING_IDX cons, prod;
|
||||
int can_write;
|
||||
|
||||
- cons = intf->rsp_cons;
|
||||
- prod = intf->rsp_prod;
|
||||
+ cons = *(volatile uint32*)&intf->rsp_cons;
|
||||
+ prod = *(volatile uint32*)&intf->rsp_prod;
|
||||
xen_mb();
|
||||
if ( (prod - cons) >= XENSTORE_RING_SIZE )
|
||||
return 0;
|
@ -0,0 +1,293 @@
|
||||
x86: fix various issues with handling guest IRQs
|
||||
|
||||
- properly revoke IRQ access in map_domain_pirq() error path
|
||||
- don't permit replacing an in use IRQ
|
||||
- don't accept inputs in the GSI range for MAP_PIRQ_TYPE_MSI
|
||||
- track IRQ access permission in host IRQ terms, not guest IRQ ones
|
||||
(and with that, also disallow Dom0 access to IRQ0)
|
||||
|
||||
This is CVE-2013-1919 / XSA-46.
|
||||
|
||||
Signed-off-by: Jan Beulich <jbeulich@suse.com>
|
||||
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
|
||||
|
||||
--- a/tools/libxl/libxl_create.c
|
||||
+++ b/tools/libxl/libxl_create.c
|
||||
@@ -968,14 +968,16 @@ static void domcreate_launch_dm(libxl__e
|
||||
}
|
||||
|
||||
for (i = 0; i < d_config->b_info.num_irqs; i++) {
|
||||
- uint32_t irq = d_config->b_info.irqs[i];
|
||||
+ int irq = d_config->b_info.irqs[i];
|
||||
|
||||
- LOG(DEBUG, "dom%d irq %"PRIx32, domid, irq);
|
||||
+ LOG(DEBUG, "dom%d irq %d", domid, irq);
|
||||
|
||||
- ret = xc_domain_irq_permission(CTX->xch, domid, irq, 1);
|
||||
+ ret = irq >= 0 ? xc_physdev_map_pirq(CTX->xch, domid, irq, &irq)
|
||||
+ : -EOVERFLOW;
|
||||
+ if (!ret)
|
||||
+ ret = xc_domain_irq_permission(CTX->xch, domid, irq, 1);
|
||||
if ( ret<0 ){
|
||||
- LOGE(ERROR,
|
||||
- "failed give dom%d access to irq %"PRId32, domid, irq);
|
||||
+ LOGE(ERROR, "failed give dom%d access to irq %d", domid, irq);
|
||||
ret = ERROR_FAIL;
|
||||
}
|
||||
}
|
||||
--- a/tools/python/xen/xend/server/irqif.py
|
||||
+++ b/tools/python/xen/xend/server/irqif.py
|
||||
@@ -73,6 +73,12 @@ class IRQController(DevController):
|
||||
|
||||
pirq = get_param('irq')
|
||||
|
||||
+ rc = xc.physdev_map_pirq(domid = self.getDomid(),
|
||||
+ index = pirq,
|
||||
+ pirq = pirq)
|
||||
+ if rc < 0:
|
||||
+ raise VmError('irq: Failed to map irq %x' % (pirq))
|
||||
+
|
||||
rc = xc.domain_irq_permission(domid = self.getDomid(),
|
||||
pirq = pirq,
|
||||
allow_access = True)
|
||||
@@ -81,12 +87,6 @@ class IRQController(DevController):
|
||||
#todo non-fatal
|
||||
raise VmError(
|
||||
'irq: Failed to configure irq: %d' % (pirq))
|
||||
- rc = xc.physdev_map_pirq(domid = self.getDomid(),
|
||||
- index = pirq,
|
||||
- pirq = pirq)
|
||||
- if rc < 0:
|
||||
- raise VmError(
|
||||
- 'irq: Failed to map irq %x' % (pirq))
|
||||
back = dict([(k, config[k]) for k in self.valid_cfg if k in config])
|
||||
return (self.allocateDeviceID(), back, {})
|
||||
|
||||
--- a/xen/arch/x86/domain_build.c
|
||||
+++ b/xen/arch/x86/domain_build.c
|
||||
@@ -1219,7 +1219,7 @@ int __init construct_dom0(
|
||||
/* DOM0 is permitted full I/O capabilities. */
|
||||
rc |= ioports_permit_access(dom0, 0, 0xFFFF);
|
||||
rc |= iomem_permit_access(dom0, 0UL, ~0UL);
|
||||
- rc |= irqs_permit_access(dom0, 0, d->nr_pirqs - 1);
|
||||
+ rc |= irqs_permit_access(dom0, 1, nr_irqs_gsi - 1);
|
||||
|
||||
/*
|
||||
* Modify I/O port access permissions.
|
||||
--- a/xen/arch/x86/domctl.c
|
||||
+++ b/xen/arch/x86/domctl.c
|
||||
@@ -772,9 +772,13 @@ long arch_do_domctl(
|
||||
goto bind_out;
|
||||
|
||||
ret = -EPERM;
|
||||
- if ( !IS_PRIV(current->domain) &&
|
||||
- !irq_access_permitted(current->domain, bind->machine_irq) )
|
||||
- goto bind_out;
|
||||
+ if ( !IS_PRIV(current->domain) )
|
||||
+ {
|
||||
+ int irq = domain_pirq_to_irq(d, bind->machine_irq);
|
||||
+
|
||||
+ if ( irq <= 0 || !irq_access_permitted(current->domain, irq) )
|
||||
+ goto bind_out;
|
||||
+ }
|
||||
|
||||
ret = -ESRCH;
|
||||
if ( iommu_enabled )
|
||||
@@ -803,9 +807,13 @@ long arch_do_domctl(
|
||||
bind = &(domctl->u.bind_pt_irq);
|
||||
|
||||
ret = -EPERM;
|
||||
- if ( !IS_PRIV(current->domain) &&
|
||||
- !irq_access_permitted(current->domain, bind->machine_irq) )
|
||||
- goto unbind_out;
|
||||
+ if ( !IS_PRIV(current->domain) )
|
||||
+ {
|
||||
+ int irq = domain_pirq_to_irq(d, bind->machine_irq);
|
||||
+
|
||||
+ if ( irq <= 0 || !irq_access_permitted(current->domain, irq) )
|
||||
+ goto unbind_out;
|
||||
+ }
|
||||
|
||||
if ( iommu_enabled )
|
||||
{
|
||||
--- a/xen/arch/x86/irq.c
|
||||
+++ b/xen/arch/x86/irq.c
|
||||
@@ -184,6 +184,14 @@ int create_irq(int node)
|
||||
desc->arch.used = IRQ_UNUSED;
|
||||
irq = ret;
|
||||
}
|
||||
+ else if ( dom0 )
|
||||
+ {
|
||||
+ ret = irq_permit_access(dom0, irq);
|
||||
+ if ( ret )
|
||||
+ printk(XENLOG_G_ERR
|
||||
+ "Could not grant Dom0 access to IRQ%d (error %d)\n",
|
||||
+ irq, ret);
|
||||
+ }
|
||||
|
||||
return irq;
|
||||
}
|
||||
@@ -280,6 +288,17 @@ void clear_irq_vector(int irq)
|
||||
void destroy_irq(unsigned int irq)
|
||||
{
|
||||
BUG_ON(!MSI_IRQ(irq));
|
||||
+
|
||||
+ if ( dom0 )
|
||||
+ {
|
||||
+ int err = irq_deny_access(dom0, irq);
|
||||
+
|
||||
+ if ( err )
|
||||
+ printk(XENLOG_G_ERR
|
||||
+ "Could not revoke Dom0 access to IRQ%u (error %d)\n",
|
||||
+ irq, err);
|
||||
+ }
|
||||
+
|
||||
dynamic_irq_cleanup(irq);
|
||||
clear_irq_vector(irq);
|
||||
}
|
||||
@@ -1858,7 +1877,7 @@ int map_domain_pirq(
|
||||
|
||||
if ( !IS_PRIV(current->domain) &&
|
||||
!(IS_PRIV_FOR(current->domain, d) &&
|
||||
- irq_access_permitted(current->domain, pirq)))
|
||||
+ irq_access_permitted(current->domain, irq)))
|
||||
return -EPERM;
|
||||
|
||||
if ( pirq < 0 || pirq >= d->nr_pirqs || irq < 0 || irq >= nr_irqs )
|
||||
@@ -1887,17 +1906,18 @@ int map_domain_pirq(
|
||||
return ret;
|
||||
}
|
||||
|
||||
- ret = irq_permit_access(d, pirq);
|
||||
+ ret = irq_permit_access(d, irq);
|
||||
if ( ret )
|
||||
{
|
||||
- dprintk(XENLOG_G_ERR, "dom%d: could not permit access to irq %d\n",
|
||||
- d->domain_id, pirq);
|
||||
+ printk(XENLOG_G_ERR
|
||||
+ "dom%d: could not permit access to IRQ%d (pirq %d)\n",
|
||||
+ d->domain_id, irq, pirq);
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = prepare_domain_irq_pirq(d, irq, pirq, &info);
|
||||
if ( ret )
|
||||
- return ret;
|
||||
+ goto revoke;
|
||||
|
||||
desc = irq_to_desc(irq);
|
||||
|
||||
@@ -1921,8 +1941,14 @@ int map_domain_pirq(
|
||||
spin_lock_irqsave(&desc->lock, flags);
|
||||
|
||||
if ( desc->handler != &no_irq_type )
|
||||
+ {
|
||||
+ spin_unlock_irqrestore(&desc->lock, flags);
|
||||
dprintk(XENLOG_G_ERR, "dom%d: irq %d in use\n",
|
||||
d->domain_id, irq);
|
||||
+ pci_disable_msi(msi_desc);
|
||||
+ ret = -EBUSY;
|
||||
+ goto done;
|
||||
+ }
|
||||
setup_msi_handler(desc, msi_desc);
|
||||
|
||||
if ( opt_irq_vector_map == OPT_IRQ_VECTOR_MAP_PERDEV
|
||||
@@ -1951,7 +1977,14 @@ int map_domain_pirq(
|
||||
|
||||
done:
|
||||
if ( ret )
|
||||
+ {
|
||||
cleanup_domain_irq_pirq(d, irq, info);
|
||||
+ revoke:
|
||||
+ if ( irq_deny_access(d, irq) )
|
||||
+ printk(XENLOG_G_ERR
|
||||
+ "dom%d: could not revoke access to IRQ%d (pirq %d)\n",
|
||||
+ d->domain_id, irq, pirq);
|
||||
+ }
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -2017,10 +2050,11 @@ int unmap_domain_pirq(struct domain *d,
|
||||
if ( !forced_unbind )
|
||||
cleanup_domain_irq_pirq(d, irq, info);
|
||||
|
||||
- ret = irq_deny_access(d, pirq);
|
||||
+ ret = irq_deny_access(d, irq);
|
||||
if ( ret )
|
||||
- dprintk(XENLOG_G_ERR, "dom%d: could not deny access to irq %d\n",
|
||||
- d->domain_id, pirq);
|
||||
+ printk(XENLOG_G_ERR
|
||||
+ "dom%d: could not deny access to IRQ%d (pirq %d)\n",
|
||||
+ d->domain_id, irq, pirq);
|
||||
|
||||
done:
|
||||
return ret;
|
||||
--- a/xen/arch/x86/physdev.c
|
||||
+++ b/xen/arch/x86/physdev.c
|
||||
@@ -147,7 +147,7 @@ int physdev_map_pirq(domid_t domid, int
|
||||
if ( irq == -1 )
|
||||
irq = create_irq(NUMA_NO_NODE);
|
||||
|
||||
- if ( irq < 0 || irq >= nr_irqs )
|
||||
+ if ( irq < nr_irqs_gsi || irq >= nr_irqs )
|
||||
{
|
||||
dprintk(XENLOG_G_ERR, "dom%d: can't create irq for msi!\n",
|
||||
d->domain_id);
|
||||
--- a/xen/common/domctl.c
|
||||
+++ b/xen/common/domctl.c
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <xen/paging.h>
|
||||
#include <xen/hypercall.h>
|
||||
#include <asm/current.h>
|
||||
+#include <asm/irq.h>
|
||||
#include <asm/page.h>
|
||||
#include <public/domctl.h>
|
||||
#include <xsm/xsm.h>
|
||||
@@ -897,9 +898,9 @@ long do_domctl(XEN_GUEST_HANDLE(xen_domc
|
||||
else if ( xsm_irq_permission(d, pirq, allow) )
|
||||
ret = -EPERM;
|
||||
else if ( allow )
|
||||
- ret = irq_permit_access(d, pirq);
|
||||
+ ret = pirq_permit_access(d, pirq);
|
||||
else
|
||||
- ret = irq_deny_access(d, pirq);
|
||||
+ ret = pirq_deny_access(d, pirq);
|
||||
|
||||
rcu_unlock_domain(d);
|
||||
}
|
||||
--- a/xen/common/event_channel.c
|
||||
+++ b/xen/common/event_channel.c
|
||||
@@ -369,7 +369,7 @@ static long evtchn_bind_pirq(evtchn_bind
|
||||
if ( (pirq < 0) || (pirq >= d->nr_pirqs) )
|
||||
return -EINVAL;
|
||||
|
||||
- if ( !is_hvm_domain(d) && !irq_access_permitted(d, pirq) )
|
||||
+ if ( !is_hvm_domain(d) && !pirq_access_permitted(d, pirq) )
|
||||
return -EPERM;
|
||||
|
||||
spin_lock(&d->event_lock);
|
||||
--- a/xen/include/xen/iocap.h
|
||||
+++ b/xen/include/xen/iocap.h
|
||||
@@ -28,4 +28,22 @@
|
||||
#define irq_access_permitted(d, i) \
|
||||
rangeset_contains_singleton((d)->irq_caps, i)
|
||||
|
||||
+#define pirq_permit_access(d, i) ({ \
|
||||
+ struct domain *d__ = (d); \
|
||||
+ int i__ = domain_pirq_to_irq(d__, i); \
|
||||
+ i__ > 0 ? rangeset_add_singleton(d__->irq_caps, i__)\
|
||||
+ : -EINVAL; \
|
||||
+})
|
||||
+#define pirq_deny_access(d, i) ({ \
|
||||
+ struct domain *d__ = (d); \
|
||||
+ int i__ = domain_pirq_to_irq(d__, i); \
|
||||
+ i__ > 0 ? rangeset_remove_singleton(d__->irq_caps, i__)\
|
||||
+ : -EINVAL; \
|
||||
+})
|
||||
+#define pirq_access_permitted(d, i) ({ \
|
||||
+ struct domain *d__ = (d); \
|
||||
+ rangeset_contains_singleton(d__->irq_caps, \
|
||||
+ domain_pirq_to_irq(d__, i));\
|
||||
+})
|
||||
+
|
||||
#endif /* __XEN_IOCAP_H__ */
|
@ -0,0 +1,114 @@
|
||||
Add -f FMT / --format FMT arg to qemu-nbd
|
||||
|
||||
From: "Daniel P. Berrange" <berrange@redhat.com>
|
||||
|
||||
Currently the qemu-nbd program will auto-detect the format of
|
||||
any disk it is given. This behaviour is known to be insecure.
|
||||
For example, if qemu-nbd initially exposes a 'raw' file to an
|
||||
unprivileged app, and that app runs
|
||||
|
||||
'qemu-img create -f qcow2 -o backing_file=/etc/shadow /dev/nbd0'
|
||||
|
||||
then the next time the app is started, the qemu-nbd will now
|
||||
detect it as a 'qcow2' file and expose /etc/shadow to the
|
||||
unprivileged app.
|
||||
|
||||
The only way to avoid this is to explicitly tell qemu-nbd what
|
||||
disk format to use on the command line, completely disabling
|
||||
auto-detection. This patch adds a '-f' / '--format' arg for
|
||||
this purpose, mirroring what is already available via qemu-img
|
||||
and qemu commands.
|
||||
|
||||
qemu-nbd --format raw -p 9000 evil.img
|
||||
|
||||
will now always use raw, regardless of what format 'evil.img'
|
||||
looks like it contains
|
||||
|
||||
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
||||
[Use errx, not err. - Paolo]
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
|
||||
|
||||
[ This is a security issue, CVE-2013-1922 / XSA-48. ]
|
||||
|
||||
diff --git a/qemu-nbd.c b/qemu-nbd.c
|
||||
index 291cba2..8fbe2cf 100644
|
||||
--- a/tools/qemu-xen/qemu-nbd.c
|
||||
+++ b/tools/qemu-xen/qemu-nbd.c
|
||||
@@ -247,6 +247,7 @@ out:
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
BlockDriverState *bs;
|
||||
+ BlockDriver *drv;
|
||||
off_t dev_offset = 0;
|
||||
off_t offset = 0;
|
||||
uint32_t nbdflags = 0;
|
||||
@@ -256,7 +257,7 @@ int main(int argc, char **argv)
|
||||
struct sockaddr_in addr;
|
||||
socklen_t addr_len = sizeof(addr);
|
||||
off_t fd_size;
|
||||
- const char *sopt = "hVb:o:p:rsnP:c:dvk:e:t";
|
||||
+ const char *sopt = "hVb:o:p:rsnP:c:dvk:e:f:t";
|
||||
struct option lopt[] = {
|
||||
{ "help", 0, NULL, 'h' },
|
||||
{ "version", 0, NULL, 'V' },
|
||||
@@ -271,6 +272,7 @@ int main(int argc, char **argv)
|
||||
{ "snapshot", 0, NULL, 's' },
|
||||
{ "nocache", 0, NULL, 'n' },
|
||||
{ "shared", 1, NULL, 'e' },
|
||||
+ { "format", 1, NULL, 'f' },
|
||||
{ "persistent", 0, NULL, 't' },
|
||||
{ "verbose", 0, NULL, 'v' },
|
||||
{ NULL, 0, NULL, 0 }
|
||||
@@ -292,6 +294,7 @@ int main(int argc, char **argv)
|
||||
int max_fd;
|
||||
int persistent = 0;
|
||||
pthread_t client_thread;
|
||||
+ const char *fmt = NULL;
|
||||
|
||||
/* The client thread uses SIGTERM to interrupt the server. A signal
|
||||
* handler ensures that "qemu-nbd -v -c" exits with a nice status code.
|
||||
@@ -368,6 +371,9 @@ int main(int argc, char **argv)
|
||||
errx(EXIT_FAILURE, "Shared device number must be greater than 0\n");
|
||||
}
|
||||
break;
|
||||
+ case 'f':
|
||||
+ fmt = optarg;
|
||||
+ break;
|
||||
case 't':
|
||||
persistent = 1;
|
||||
break;
|
||||
@@ -478,9 +484,19 @@ int main(int argc, char **argv)
|
||||
bdrv_init();
|
||||
atexit(bdrv_close_all);
|
||||
|
||||
+ if (fmt) {
|
||||
+ drv = bdrv_find_format(fmt);
|
||||
+ if (!drv) {
|
||||
+ errx(EXIT_FAILURE, "Unknown file format '%s'", fmt);
|
||||
+ }
|
||||
+ } else {
|
||||
+ drv = NULL;
|
||||
+ }
|
||||
+
|
||||
bs = bdrv_new("hda");
|
||||
srcpath = argv[optind];
|
||||
- if ((ret = bdrv_open(bs, srcpath, flags, NULL)) < 0) {
|
||||
+ ret = bdrv_open(bs, srcpath, flags, drv);
|
||||
+ if (ret < 0) {
|
||||
errno = -ret;
|
||||
err(EXIT_FAILURE, "Failed to bdrv_open '%s'", argv[optind]);
|
||||
}
|
||||
diff --git a/qemu-nbd.texi b/qemu-nbd.texi
|
||||
index 44996cc..f56c68e 100644
|
||||
--- a/tools/qemu-xen/qemu-nbd.texi
|
||||
+++ b/tools/qemu-xen/qemu-nbd.texi
|
||||
@@ -36,6 +36,8 @@ Export Qemu disk image using NBD protocol.
|
||||
disconnect the specified device
|
||||
@item -e, --shared=@var{num}
|
||||
device can be shared by @var{num} clients (default @samp{1})
|
||||
+@item -f, --format=@var{fmt}
|
||||
+ force block driver for format @var{fmt} instead of auto-detecting
|
||||
@item -t, --persistent
|
||||
don't exit on the last connection
|
||||
@item -v, --verbose
|
@ -0,0 +1,50 @@
|
||||
VT-d: don't permit SVT_NO_VERIFY entries for known device types
|
||||
|
||||
Only in cases where we don't know what to do we should leave the IRTE
|
||||
blank (suppressing all validation), but we should always log a warning
|
||||
in those cases (as being insecure).
|
||||
|
||||
This is CVE-2013-1952 / XSA-49.
|
||||
|
||||
Signed-off-by: Jan Beulich <jbeulich@suse.com>
|
||||
Acked-by: "Zhang, Xiantao" <xiantao.zhang@intel.com>
|
||||
|
||||
--- a/xen/drivers/passthrough/vtd/intremap.c
|
||||
+++ b/xen/drivers/passthrough/vtd/intremap.c
|
||||
@@ -440,16 +440,15 @@ static void set_msi_source_id(struct pci
|
||||
type = pdev_type(seg, bus, devfn);
|
||||
switch ( type )
|
||||
{
|
||||
+ case DEV_TYPE_PCIe_ENDPOINT:
|
||||
case DEV_TYPE_PCIe_BRIDGE:
|
||||
case DEV_TYPE_PCIe2PCI_BRIDGE:
|
||||
- case DEV_TYPE_LEGACY_PCI_BRIDGE:
|
||||
- break;
|
||||
-
|
||||
- case DEV_TYPE_PCIe_ENDPOINT:
|
||||
set_ire_sid(ire, SVT_VERIFY_SID_SQ, SQ_ALL_16, PCI_BDF2(bus, devfn));
|
||||
break;
|
||||
|
||||
case DEV_TYPE_PCI:
|
||||
+ case DEV_TYPE_LEGACY_PCI_BRIDGE:
|
||||
+ /* case DEV_TYPE_PCI2PCIe_BRIDGE: */
|
||||
ret = find_upstream_bridge(seg, &bus, &devfn, &secbus);
|
||||
if ( ret == 0 ) /* integrated PCI device */
|
||||
{
|
||||
@@ -461,10 +460,15 @@ static void set_msi_source_id(struct pci
|
||||
if ( pdev_type(seg, bus, devfn) == DEV_TYPE_PCIe2PCI_BRIDGE )
|
||||
set_ire_sid(ire, SVT_VERIFY_BUS, SQ_ALL_16,
|
||||
(bus << 8) | pdev->bus);
|
||||
- else if ( pdev_type(seg, bus, devfn) == DEV_TYPE_LEGACY_PCI_BRIDGE )
|
||||
+ else
|
||||
set_ire_sid(ire, SVT_VERIFY_SID_SQ, SQ_ALL_16,
|
||||
PCI_BDF2(bus, devfn));
|
||||
}
|
||||
+ else
|
||||
+ dprintk(XENLOG_WARNING VTDPREFIX,
|
||||
+ "d%d: no upstream bridge for %04x:%02x:%02x.%u\n",
|
||||
+ pdev->domain->domain_id,
|
||||
+ seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn));
|
||||
break;
|
||||
|
||||
default:
|
@ -0,0 +1,41 @@
|
||||
diff -ur xen-4.2.1.orig/xen/drivers/passthrough/vtd/intremap.c xen-4.2.1/xen/drivers/passthrough/vtd/intremap.c
|
||||
--- xen/drivers/passthrough/vtd/intremap.c 2012-12-17 23:01:55.000000000 +0800
|
||||
+++ xen/drivers/passthrough/vtd/intremap.c 2013-05-15 23:09:06.704546506 +0800
|
||||
@@ -440,16 +440,17 @@
|
||||
type = pdev_type(seg, bus, devfn);
|
||||
switch ( type )
|
||||
{
|
||||
+ case DEV_TYPE_PCIe_ENDPOINT:
|
||||
case DEV_TYPE_PCIe_BRIDGE:
|
||||
case DEV_TYPE_PCIe2PCI_BRIDGE:
|
||||
- case DEV_TYPE_LEGACY_PCI_BRIDGE:
|
||||
- break;
|
||||
|
||||
- case DEV_TYPE_PCIe_ENDPOINT:
|
||||
set_ire_sid(ire, SVT_VERIFY_SID_SQ, SQ_ALL_16, PCI_BDF2(bus, devfn));
|
||||
break;
|
||||
|
||||
case DEV_TYPE_PCI:
|
||||
+ case DEV_TYPE_LEGACY_PCI_BRIDGE:
|
||||
+ /* case DEV_TYPE_PCI2PCIe_BRIDGE: */
|
||||
+
|
||||
ret = find_upstream_bridge(seg, &bus, &devfn, &secbus);
|
||||
if ( ret == 0 ) /* integrated PCI device */
|
||||
{
|
||||
@@ -461,10 +462,15 @@
|
||||
if ( pdev_type(seg, bus, devfn) == DEV_TYPE_PCIe2PCI_BRIDGE )
|
||||
set_ire_sid(ire, SVT_VERIFY_BUS, SQ_ALL_16,
|
||||
(bus << 8) | pdev->bus);
|
||||
- else if ( pdev_type(seg, bus, devfn) == DEV_TYPE_LEGACY_PCI_BRIDGE )
|
||||
+ else
|
||||
set_ire_sid(ire, SVT_VERIFY_BUS, SQ_ALL_16,
|
||||
PCI_BDF2(bus, devfn));
|
||||
}
|
||||
+ else
|
||||
+ dprintk(XENLOG_WARNING VTDPREFIX,
|
||||
+ "d%d: no upstream bridge for %04x:%02x:%02x.%u\n",
|
||||
+ pdev->domain->domain_id,
|
||||
+ seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn));
|
||||
break;
|
||||
|
||||
default:
|
@ -0,0 +1,136 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-pvgrub/xen-pvgrub-4.2.1-r2.ebuild,v 1.1 2013/05/20 14:15:45 idella4 Exp $
|
||||
|
||||
EAPI=4
|
||||
PYTHON_DEPEND="2:2.6"
|
||||
|
||||
inherit flag-o-matic eutils multilib python toolchain-funcs
|
||||
|
||||
XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
|
||||
LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
|
||||
GRUB_URL=mirror://gnu-alpha/grub
|
||||
SRC_URI="
|
||||
http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
|
||||
$GRUB_URL/grub-0.97.tar.gz
|
||||
$XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
|
||||
$LIBPCI_URL/pciutils-2.2.9.tar.bz2
|
||||
$XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
|
||||
$XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz"
|
||||
|
||||
S="${WORKDIR}/xen-${PV}"
|
||||
|
||||
DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
|
||||
HOMEPAGE="http://xen.org/"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="custom-cflags"
|
||||
|
||||
DEPEND="sys-devel/gettext"
|
||||
|
||||
RDEPEND=">=app-emulation/xen-4.2.1"
|
||||
|
||||
pkg_setup() {
|
||||
python_set_active_version 2
|
||||
python_pkg_setup
|
||||
}
|
||||
|
||||
retar-externals() {
|
||||
# Purely to unclutter src_prepare
|
||||
local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz zlib-1.2.3.tar.gz"
|
||||
|
||||
# epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
|
||||
sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
|
||||
-i "${WORKDIR}"/zlib-1.2.3/configure
|
||||
sed -e 's:^AR=ar rc:AR=ar:' \
|
||||
-e s':$(AR) $@:$(AR) rc $@:' \
|
||||
-i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
|
||||
einfo "zlib Makefile edited"
|
||||
|
||||
cd "${WORKDIR}"
|
||||
tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
|
||||
tar czp grub-0.97 -f grub-0.97.tar.gz
|
||||
tar czp lwip -f lwip-1.3.0.tar.gz
|
||||
tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
|
||||
mv $set "${S}"/stubdom/
|
||||
einfo "tarballs moved to source"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
# try and remove all the default custom-cflags
|
||||
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} \;
|
||||
fi
|
||||
|
||||
# Patch the unmergeable newlib, fix most of the leftover gcc QA issues
|
||||
cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
|
||||
|
||||
# Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
|
||||
epatch "${FILESDIR}"/${P/-pvgrub/}-externals.patch
|
||||
|
||||
# Drop .config and Fix gcc-4.6
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4-fix_dotconfig-gcc.patch
|
||||
|
||||
# fix jobserver in Makefile
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4.2.0-jserver.patch
|
||||
|
||||
#Sec patch
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4-CVE-2012-6075-XSA-41.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-0215-XSA-38.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-1919-XSA-46.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-1922-XSA-48.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-1952-XSA_49.patch
|
||||
|
||||
#Substitute for internal downloading. pciutils copied only due to the only .bz2
|
||||
cp $DISTDIR/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
|
||||
retar-externals || die "re-tar procedure failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use custom-cflags || unset CFLAGS
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
|
||||
|
||||
if use x86; then
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
|
||||
elif use amd64; then
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
|
||||
if use multilib; then
|
||||
multilib_toolchain_setup x86
|
||||
emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use x86; then
|
||||
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
|
||||
fi
|
||||
if use amd64; then
|
||||
emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
|
||||
if use multilib; then
|
||||
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the unoffical wiki page:"
|
||||
elog " http://www.gentoo.org/doc/en/xen-guide.xml"
|
||||
elog " http://en.gentoo-wiki.com/wiki/Xen/"
|
||||
}
|
@ -0,0 +1,134 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-pvgrub/xen-pvgrub-4.2.2.ebuild,v 1.1 2013/05/20 14:15:45 idella4 Exp $
|
||||
|
||||
EAPI=4
|
||||
PYTHON_DEPEND="2:2.6"
|
||||
|
||||
inherit flag-o-matic eutils multilib python toolchain-funcs
|
||||
|
||||
XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
|
||||
LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
|
||||
GRUB_URL=mirror://gnu-alpha/grub
|
||||
SRC_URI="
|
||||
http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
|
||||
$GRUB_URL/grub-0.97.tar.gz
|
||||
$XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
|
||||
$LIBPCI_URL/pciutils-2.2.9.tar.bz2
|
||||
$XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
|
||||
$XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz"
|
||||
|
||||
S="${WORKDIR}/xen-${PV}"
|
||||
|
||||
DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
|
||||
HOMEPAGE="http://xen.org/"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="custom-cflags"
|
||||
|
||||
DEPEND="sys-devel/gettext"
|
||||
|
||||
RDEPEND=">=app-emulation/xen-4.2.1"
|
||||
|
||||
pkg_setup() {
|
||||
python_set_active_version 2
|
||||
python_pkg_setup
|
||||
}
|
||||
|
||||
retar-externals() {
|
||||
# Purely to unclutter src_prepare
|
||||
local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz zlib-1.2.3.tar.gz"
|
||||
|
||||
# epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
|
||||
sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
|
||||
-i "${WORKDIR}"/zlib-1.2.3/configure
|
||||
sed -e 's:^AR=ar rc:AR=ar:' \
|
||||
-e s':$(AR) $@:$(AR) rc $@:' \
|
||||
-i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
|
||||
einfo "zlib Makefile edited"
|
||||
|
||||
cd "${WORKDIR}"
|
||||
tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
|
||||
tar czp grub-0.97 -f grub-0.97.tar.gz
|
||||
tar czp lwip -f lwip-1.3.0.tar.gz
|
||||
tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
|
||||
mv $set "${S}"/stubdom/
|
||||
einfo "tarballs moved to source"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# if the user *really* wants to use their own custom-cflags, let them
|
||||
if use custom-cflags; then
|
||||
einfo "User wants their own CFLAGS - removing defaults"
|
||||
# try and remove all the default custom-cflags
|
||||
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
|
||||
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
|
||||
-i {} \;
|
||||
fi
|
||||
|
||||
# Patch the unmergeable newlib, fix most of the leftover gcc QA issues
|
||||
cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
|
||||
|
||||
# Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4.2.1-externals.patch
|
||||
|
||||
# Drop .config and Fix gcc-4.6
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4-fix_dotconfig-gcc.patch
|
||||
|
||||
# fix jobserver in Makefile
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4.2.0-jserver.patch
|
||||
|
||||
#Sec patch
|
||||
epatch "${FILESDIR}"/${PN/-pvgrub/}-4-CVE-2012-6075-XSA-41.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-1922-XSA-48.patch \
|
||||
"${FILESDIR}"/xen-4-CVE-2013-1952-XSA-49.patch
|
||||
|
||||
#Substitute for internal downloading. pciutils copied only due to the only .bz2
|
||||
cp $DISTDIR/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
|
||||
retar-externals || die "re-tar procedure failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use custom-cflags || unset CFLAGS
|
||||
if test-flag-CC -fno-strict-overflow; then
|
||||
append-flags -fno-strict-overflow
|
||||
fi
|
||||
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
|
||||
|
||||
if use x86; then
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
|
||||
elif use amd64; then
|
||||
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
|
||||
if use multilib; then
|
||||
multilib_toolchain_setup x86
|
||||
emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
|
||||
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use x86; then
|
||||
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
|
||||
fi
|
||||
if use amd64; then
|
||||
emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
|
||||
if use multilib; then
|
||||
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Official Xen Guide and the unoffical wiki page:"
|
||||
elog " http://www.gentoo.org/doc/en/xen-guide.xml"
|
||||
elog " http://en.gentoo-wiki.com/wiki/Xen/"
|
||||
}
|
@ -1,4 +1,2 @@
|
||||
DIST nut-18.5.tar.gz 1331213 SHA256 45c959fe2839a41726fde647b78175c45d4f0d9fb59dc8da1e828103b7fd5507 SHA512 d598532247611556cc4d8fb5d70bcbfc6978f8b1176a9c5a1ccf05df71fa50bac81045ff39c6ddb0344023fa128def12635c21da9b87876278159912a7eeab45 WHIRLPOOL 0c196a3afa40ae1cb31e987f4627d818ccc94166ea816930567ff7d728d862d8a372701747d8b197424aa61b653c866cc5878f7ac8a34b8a9bdcda8d28023cd9
|
||||
DIST nut-18.7.tar.gz 1337114 SHA256 0bd35bbb5daab52d0a0270ac1955651cfbfd2f053e171f98cf5fb5bac1a9cdfb SHA512 cdcbe69eb5e6bb53e32a2e00773d88a3dba2b38b966b337e9b95da29e4682cd6b71b401e58070e6f9e4b9573a01c0663a01af86737fe1b0dbd87a8a1ca7c1b49 WHIRLPOOL ff53d764c3d096c701b1f78d438c7c6de217f2082b53601e5ce2ce3a258b0ac2f36d3ede501f2a73f1aa3b3e758b3584583ccce04f9d46ebc1f179369ceb8437
|
||||
DIST nut-18.8.tar.gz 1337141 SHA256 1bd8d8ecd49318552399b467c550805784cca0c78eeee73b8c285c66ed79f182 SHA512 a6bcfb5c4550d6c9b3129e96fd21f46137130d79861b81d766eaaf6b2bc29cb7819bc9af5557476c2ec301dbcd16dbd102c5d14ac13300b79dc649991839765a WHIRLPOOL f21a793bec8d26ff4865e8297a8b7f53027f87aee60bec2a03d2c1e8b64f3e2ec38fdd1dc4a75ca558f9cc887168bf5f7d6771e8f455ddcad629b6d4ab54ba27
|
||||
DIST nut-18.9.tar.gz 1338133 SHA256 e0b5f5552ae2c0b9075163f33069d165de2d5cb686357055eef81955054ebc6f SHA512 396c5a09008313a3314b2c52eeca29b96f84593d2695dacd3b6ae7ac1f3d0a860a93f09fdbc519a24e86f7c886e4aacdaf22f657c19dbb70699aac59519df5a6 WHIRLPOOL 765303be1fea49a06069ace93292cddd4f9c2107d00e82f8071c6eeb31119388a1fc953f00554af5edabc0d7e0f5a6deba0f6d07e592d3a9d44797cc2344cdc7
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -28,7 +28,7 @@
|
||||
all: nut
|
||||
|
||||
nut: $(OBJS)
|
||||
- $(CC) $(OPT) -o $(EXECUTABLE) $(OBJS) $(LIBS)
|
||||
+ $(CC) $(OPT) $(LDFLAGS) -o $(EXECUTABLE) $(OBJS) $(LIBS)
|
||||
|
||||
deps:
|
||||
makedepend -Y. *.c >/dev/null 2>&1
|
@ -1,20 +0,0 @@
|
||||
--- nut-18.7/fltk/Makefile
|
||||
+++ nut-18.7/fltk/Makefile
|
||||
@@ -5,7 +5,7 @@
|
||||
NUTDIR := \".nutdb\"
|
||||
FOODDIR := \"$(libdir)\"
|
||||
EXECUTABLE := Nut
|
||||
-LIBS := `fltk-config --libs`
|
||||
+LIBS := `fltk-config --ldflags`
|
||||
|
||||
OS := $(shell uname -s)
|
||||
ifeq ($(OS),HP-UX)
|
||||
@@ -31,7 +31,7 @@
|
||||
OBJS := ../anameal.o ../db.o ../food.o ../meal.o ../options.o ../prtmenu.o ../ranking.o ../recmeal.o ../trendy.o ../util.o $(patsubst %.cc,%.o,$(SOURCE))
|
||||
|
||||
nut: $(OBJS)
|
||||
- $(CXX) $(OPT) $(LDFLAGS) `fltk-config --ldflags` -o $(EXECUTABLE) $(OBJS) $(LIBS)
|
||||
+ $(CXX) $(OPT) $(LDFLAGS) -o $(EXECUTABLE) $(OBJS) $(LIBS)
|
||||
|
||||
deps:
|
||||
makedepend -Y.. ../anameal.c ../db.c ../food.c ../meal.c ../options.c ../prtmenu.c ../recmeal.c ../util.c *.cc >/dev/null 2>&1
|
@ -1,30 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/nut/nut-18.5.ebuild,v 1.4 2013/02/10 17:14:02 ago Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="Record what you eat and analyze your nutrient levels"
|
||||
HOMEPAGE="http://nut.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 ~arm ppc x86"
|
||||
IUSE=""
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-17.12-makefile.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)" OPT="${CFLAGS}" FOODDIR=\\\"/usr/share/nut\\\"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/nut
|
||||
doins raw.data/*
|
||||
dobin nut
|
||||
doman nut.1
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/nut/nut-18.7.ebuild,v 1.1 2013/04/09 04:35:05 radhermit Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="Record what you eat and analyze your nutrient levels"
|
||||
HOMEPAGE="http://nut.sourceforge.net/"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~x86"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-fltk-linking.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" OPT="${CFLAGS}" FOODDIR=\\\"/usr/share/nut\\\"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/nut
|
||||
doins raw.data/*
|
||||
dobin nut
|
||||
doman nut.1
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST subsurface-3.0.2.tar.gz 984274 SHA256 41dbb3ca00313019d53b259973f18c6e4cc62b9a9a1a8c5cd5e0d5b911be65c2 SHA512 607d71bd74b2bb9c6ca544de43d2e60ab5468482681f4f4df0e82555a5a6a7b5211ba3ad6463cfaac87b1566dd3cc76b8592d08bd56a8774b67d4eea6bba70bc WHIRLPOOL 536aebd2f23677813f7fb840123b8cdc79519e168bb88c2ff5ec82e2f0150535341a6c9c652954512786a1c292d21f948f6a74d8fcd78125a378043236179cfe
|
||||
DIST subsurface-3.1.tar.gz 1126173 SHA256 94283ffbacc84c7ef09fd6b9d11a15e178a9fcf64b439cd390fd1dca544c0735 SHA512 718b17436cf6360646a6e91b54c5e6423fa80f89ee86f2222d6e68982e29ae154101933ce3341f5ee4129e161537029091ecf0383777348bb5a5fbd6e76a0bf9 WHIRLPOOL 4ec3dcb973ef276bf499a653a718b66fa092e550a1a580c0045e968c14749ad0fbd8335ea505f8b367ed6d145762d257ecc7192d59f1f593dee5fc35de3d64c8
|
||||
|
@ -0,0 +1,110 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/subsurface/subsurface-3.1.ebuild,v 1.1 2013/05/20 14:24:57 tomwij Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="git://subsurface.hohndel.org/subsurface.git"
|
||||
GIT_ECLASS="git-2"
|
||||
LIBDC_V="0.4.0"
|
||||
else
|
||||
SRC_URI="http://subsurface.hohndel.org/downloads/Subsurface-${PV}.tgz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
LIBDC_V="0.4.0"
|
||||
S="${WORKDIR}/${P/s/S}"
|
||||
fi
|
||||
|
||||
inherit eutils gnome2-utils ${GIT_ECLASS}
|
||||
|
||||
LINGUAS="bg bg_BG br ca ca_ES da_DK de de_CH de_DE dk ee es es_ES et_EE fi fi_FI fr fr_FR gsw hr
|
||||
hr_HR it it_IT nb nb_NO nl nl_NL nn no pl pl_PL pt pt_BR pt_PT ru ru_RU sk sk_SK sv sv_SE"
|
||||
|
||||
DESCRIPTION="An open source dive log program"
|
||||
HOMEPAGE="http://subsurface.hohndel.org"
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="doc usb"
|
||||
for LINGUA in ${LINGUAS}; do
|
||||
IUSE+=" linguas_${LINGUA}"
|
||||
done
|
||||
|
||||
RDEPEND="dev-libs/glib:2
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/libzip
|
||||
gnome-base/gconf:2
|
||||
sci-geosciences/osm-gps-map
|
||||
net-libs/libsoup:2.4
|
||||
sys-libs/glibc
|
||||
virtual/libusb
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/pango
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-libs/libdivecomputer-${LIBDC_V}[static-libs,usb?]
|
||||
virtual/pkgconfig
|
||||
doc? ( app-text/asciidoc )
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
git-2_src_unpack
|
||||
else
|
||||
unpack ${A}
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Don't hardcode gcc.
|
||||
sed -i 's|CC\=gcc||' Makefile || die "Failed to fix gcc hardcode issues."
|
||||
|
||||
# Don't hardcode CFLAGS.
|
||||
sed -i 's|CFLAGS\=.*||' Makefile || die "Failed to fix hardcoded CFLAGS."
|
||||
|
||||
# Don't call gtk_update_icon_cache.
|
||||
sed -i -e "s|\$(gtk_update_icon_cache)|:|" Makefile || die "Failed to disable gtk_update_icon_cache call."
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)"
|
||||
|
||||
if use doc; then
|
||||
cd "Documentation" && emake user-manual.xhtml
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" CC="$(tc-getCC)" install
|
||||
|
||||
# Remove unwanted linguas
|
||||
local del
|
||||
for LANG in $(ls "${D}/usr/share/locale"); do
|
||||
del=1
|
||||
for LINGUA in ${LINGUAS}; do
|
||||
if [[ ${LANG/.UTF-8/} == ${LINGUA} ]]; then
|
||||
if use linguas_${LINGUA}; then
|
||||
del=0
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [[ ${del} == 1 ]]; then
|
||||
rm -r "${D}/usr/share/locale/${LANG}" || die "Removing language ${LANG} failed."
|
||||
fi
|
||||
done
|
||||
|
||||
if use doc; then
|
||||
dohtml -r "${S}/Documentation/"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Uptime record tracking daemon
|
||||
Documentation=man:uptimed(8) man:uprecords(1)
|
||||
|
||||
[Service]
|
||||
ExecStartPre=/usr/sbin/uptimed -b
|
||||
ExecStart=/usr/sbin/uptimed -f
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@ -1,2 +1 @@
|
||||
DIST wcd-5.2.1-src.tar.gz 166927 SHA256 4fb66cd06d8f0b7ecee37c321a8ae052ab46ddd7d880e4524f63918af6e0a38e SHA512 717d1af34e61f8ffc5e1a7ffb26050524e5ccae392d6f3e3ff9cea3ffea3b82e35b35fe7f1dc1164bfef4339f42bc0a30477f1e75d019b20d484ffd70e5cf85a WHIRLPOOL 27af6199f36a9d6910537dc3a263effa126a88dc7f66f038000b1c6cf3d5887d6c52d46dc0dd93644050a3927ba5fdf84fdaa199e0b1c687ce751d13b76fe1db
|
||||
DIST wcd-5.2.3-src.tar.gz 178065 SHA256 8ae26c536b6e094268b1e640a0e8f014974d996310f5c628bc7291134ae81edf SHA512 f32eb1d289bf9c229297ec3fd6256dc713541fdcb4296ddaaf070793a027bff360b60e5e0d777e9f25ebc51b2cb8771baf473055ee859565be2c465ab9b71aad WHIRLPOOL 5f5afc37f16e3e04cee56bf29b7102b7cc27117e9fd01d835cbf5e6c6a622ee9aae73bf031603de2984c79ac9a47a7996c11fa605fd86cc89d90e2f95a7f7f50
|
||||
|
@ -1,42 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/wcd/wcd-5.2.1-r1.ebuild,v 1.3 2013/02/03 15:16:20 jdhore Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="Wherever Change Directory"
|
||||
HOMEPAGE="http://www.xs4all.nl/~waterlan/#WCD_ANCHOR"
|
||||
SRC_URI="http://www.xs4all.nl/~waterlan/${P}-src.tar.gz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="amd64 ~arm x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="nls unicode"
|
||||
|
||||
CDEPEND="sys-libs/ncurses[unicode?]"
|
||||
DEPEND="${CDEPEND}
|
||||
app-text/ghostscript-gpl"
|
||||
RDEPEND="${CDEPEND}"
|
||||
|
||||
S="${WORKDIR}"/${P}/src
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-gentoo.patch
|
||||
tc-export CC
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local mycompile="LFS=1"
|
||||
use nls || mycompile="${mycompile} ENABLE_NLS="
|
||||
use unicode && mycompile="${mycompile} UCS=1"
|
||||
emake \
|
||||
${mycompile}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local DOCS="../README.txt"
|
||||
default
|
||||
emake DESTDIR="${D}" DOTWCD=1 install-profile sysconfdir="/etc"
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST when-1.1.30.tar.gz 46846 SHA256 374a6ce94547bc7024a7bedf01545c10ebd62f7c1ddfd2c45099b3bed237b466 SHA512 acb6db7986beceb796e09254293c84bef2d1809005c7b4fca4d52f68dafb0619a91445ba6c4824571bbbcb59bfb8acc7a1c97660e927c95bc8d23e8bda5f4400 WHIRLPOOL 84fa75d43c93db6ffd66e9bdca1a2eb614f1271b0110300bfb253d91a9ae692102e8c1398841981d3a0eaa157a04254cade2989a867a312d7ba12f40e0111089
|
||||
DIST when-1.1.31.tar.gz 47113 SHA256 5b76a660bc234e53d19a1ba6024364394ee57e8b843acc5e43d73be091a8e49b SHA512 55a8a5bc22e04f3ea830de76ac3cc1ef3e4d1a2c496b6138f8aab90c86fb4dec20478723e6351463a834dde1d10d937715f3c0df874da4f6192bd90ea9674690 WHIRLPOOL e843d4baed349027ada660f539453ad599a0ade43b2125cd8f1a70e18ad62f36c2fae1a5141e0c294ece7c5b1e7213b55adef343a9ea425b77a8ed2412b9e87c
|
||||
|
@ -1,39 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-misc/when/when-1.1.30.ebuild,v 1.5 2013/01/22 17:30:00 ago Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Extremely simple personal calendar program aimed at the Unix geek who wants something minimalistic"
|
||||
HOMEPAGE="http://www.lightandmatter.com/when/when.html"
|
||||
SRC_URI="http://www.lightandmatter.com/when/when.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Artistic"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc x86 ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-lang/perl"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S="${WORKDIR}"/when_dist
|
||||
|
||||
src_prepare() {
|
||||
# Fix path for tests
|
||||
sed -i 's,^ when, ./when,' Makefile || die 'sed failed'
|
||||
}
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_test() {
|
||||
# The when command requires these files, or attempts to run setup function.
|
||||
mkdir "${HOME}"/.when || die 'mkdir failed'
|
||||
touch "${HOME}"/.when/{calendar,preferences} || die 'touch failed'
|
||||
emake test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin ${PN}
|
||||
doman ${PN}.1
|
||||
dodoc README
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST planner-0.14.6.tar.xz 3392796 SHA256 130d29e6d6b8c1994017deba2acca05a4bf83ba1e169635ec8c5c7878abe0696 SHA512 a96a730c84580d32f02ada599ccc630e0fcd330e0306c60d828a7d6e08bbebf8ac400b0bfe8846ab055135e289f7112872b29fa006d7a21e31cbf5db0a79c91a WHIRLPOOL c82d575086bb8247c8d4052660328228f190398e9e4d857980559a6111df6218399a9ea94c342da26126b03986757ba5553fe261e657cf8c5e09756483c2e4b1
|
||||
DIST planner-0.14.6_p20130520.tar.xz 4200624 SHA256 06b94c7145bbf1f61b6b4ddb847cd2db79f322ee6f89637340ece139eedf8569 SHA512 d658b68c96742340a06a9e96d7910f70fb296cb7a19cc335afdcbec01b36326b1574522155cf19fec012363e1e4d4120c35e1319c699613833be2eb0fa999024 WHIRLPOOL f44941557e2b9af7ab3bebbac59e4d53ac60af7943e5ad03edb249a19ecadc37cfe6530e8295420c84f13b2b2f962a8d9c58bb2345eb4701abfa3dd462f209db
|
||||
|
@ -0,0 +1,68 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-office/planner/planner-0.14.6_p20130520.ebuild,v 1.2 2013/05/20 11:14:29 eva Exp $
|
||||
|
||||
EAPI="5"
|
||||
GCONF_DEBUG="no"
|
||||
GNOME2_LA_PUNT="yes"
|
||||
PYTHON_COMPAT=( python2_{6,7} )
|
||||
|
||||
inherit gnome2 python-single-r1
|
||||
|
||||
DESCRIPTION="Project manager for Gnome"
|
||||
HOMEPAGE="http://live.gnome.org/Planner/"
|
||||
SRC_URI="http://dev.gentoo.org/~eva/distfiles/${PN}/${P}.tar.xz"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86"
|
||||
IUSE="eds examples python"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.6:2
|
||||
>=x11-libs/gtk+-2.14:2
|
||||
>=gnome-base/libgnomecanvas-2.10
|
||||
>=gnome-base/libgnomeui-2.10
|
||||
>=gnome-base/libglade-2.4:2.0
|
||||
>=gnome-base/gconf-2.6:2
|
||||
>=dev-libs/libxml2-2.6.27:2
|
||||
>=dev-libs/libxslt-1.1.23
|
||||
python? (
|
||||
${PYTHON_DEPS}
|
||||
>=dev-python/pygtk-2.6:2[${PYTHON_USEDEP}] )
|
||||
eds? (
|
||||
>=gnome-extra/evolution-data-server-3.6
|
||||
>=mail-client/evolution-3.6 )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
app-text/scrollkeeper
|
||||
dev-util/gtk-doc-am
|
||||
>=dev-util/intltool-0.35.5
|
||||
gnome-base/gnome-common
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${PN}-0.14.6"
|
||||
|
||||
src_configure() {
|
||||
# FIXME: disable eds backend for now, it fails, upstream bug #654005
|
||||
gnome2_src_configure \
|
||||
$(use_enable python) \
|
||||
$(use_enable python python-plugin) \
|
||||
$(use_enable eds) \
|
||||
--disable-eds-backend \
|
||||
--with-database=no \
|
||||
--disable-update-mimedb
|
||||
#$(use_enable eds eds-backend)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
DOCS="AUTHORS COPYING ChangeLog NEWS README"
|
||||
gnome2_src_install \
|
||||
sqldocdir="\$(datadir)/doc/${PF}" \
|
||||
sampledir="\$(datadir)/doc/${PF}/examples"
|
||||
|
||||
if ! use examples; then
|
||||
rm -rf "${D}/usr/share/doc/${PF}/examples"
|
||||
fi
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST gocr-0.49.tar.gz 392386 SHA256 cc29931d50b3be11608dc79d1c7d8a20919dbe6313b1ba5dc88ecf99cffd171a SHA512 4559ab2cb05d67212da1857a9e7280abea0b4a172454d5145f04f7d23237d065c7b17ea110123ebbea5d62e589c507e73957e1b15e856b19f9bfc5efbecf467c WHIRLPOOL b62b991d63846b7a1f953b0251a7821bb7c9728633197d4e05e3f9276988d9db62f61e8242948abc5089b2f71f33d9480a8c79e4b4d12cbb4d53a39b73ed6806
|
||||
DIST gocr-0.50.tar.gz 419209 SHA256 bc261244f887419cba6d962ec1ad58eefd77176885093c4a43061e7fd565f5b5 SHA512 36392516711d43f8561147684b6f4e22a450bc87f1cb30ceaab4a1821ac583ff5a3d25b3bbf1637f01bfb55366b45cc7d5086d1f29f006d615bb658d0e5faab9 WHIRLPOOL d15b08eda68a27259c22c4f50d05e6d2bda7d1ad42c486279fa34a94b915ce52328f8fa6202cdf93bade2023d85be86d9e5fdab5aaaff9a63d6a6f5ab63f3189
|
||||
|
@ -0,0 +1,46 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-text/gocr/gocr-0.50.ebuild,v 1.1 2013/05/20 14:13:13 aballier Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="An OCR (Optical Character Recognition) reader"
|
||||
HOMEPAGE="http://jocr.sourceforge.net"
|
||||
SRC_URI="http://www-e.uni-magdeburg.de/jschulen/ocr/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="doc scanner tk"
|
||||
|
||||
DEPEND=">=media-libs/netpbm-9.12
|
||||
doc? ( >=media-gfx/transfig-3.2 app-text/ghostscript-gpl )
|
||||
tk? ( dev-lang/tk )"
|
||||
RDEPEND="${DEPEND}
|
||||
tk? (
|
||||
media-gfx/xli
|
||||
scanner? ( media-gfx/xsane )
|
||||
)"
|
||||
|
||||
src_compile() {
|
||||
local mymakes="src man"
|
||||
|
||||
use doc && mymakes="${mymakes} doc examples"
|
||||
|
||||
emake ${mymakes}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" prefix="${EPREFIX}/usr" exec_prefix="${EPREFIX}/usr" install
|
||||
dodoc AUTHORS BUGS CREDITS HISTORY RE* TODO
|
||||
|
||||
# remove the tk frontend if tk is not selected
|
||||
use tk || rm "${ED}"/usr/bin/gocr.tcl
|
||||
# and install the documentation and examples
|
||||
if use doc ; then
|
||||
dodoc doc/gocr.html doc/examples.txt doc/unicode.txt
|
||||
insinto /usr/share/doc/${PF}/examples
|
||||
doins "${S}"/examples/*.{fig,tex,pcx}
|
||||
docompress -x /usr/share/doc/${PF}/examples
|
||||
fi
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST MicroJSON-0.2.0.tar.bz2 4681 SHA256 9cb90f1b529475a39894584a79abfe7c1274261f2d1d789cf87425f98ca43766 SHA512 926a41b2f2abe36116864f3d063c4f047f8e18d772b56bf47ecb6b2e5907f72cf85e7b49f253e62813d2df74b2d575bd4a7b267dca367623678f17f95fb23560 WHIRLPOOL c9cedf289c306eb4017f04c2f3c6bb2bd6e74fc3634c77d6d8a3cca232e88e2459e3779f2cbc75e4a63447545d1729c969bde7e736e146779b736ee825f06666
|
||||
DIST MicroJSON-0.2.1.tar.bz2 5309 SHA256 bc20ec1336fdc0bcd0ee14bfb2224bf067eed25bd817b2c08ee6369081f47df2 SHA512 90b571aa87bd5625f9b94db77e453168b0f1ff38eaef04403d979cf8ca65c875f47a6b8632ff6441226ddef26fd47459c3ca036bc2eb9e3b79aba21880f28c88 WHIRLPOOL 15768c232d11ee2a6f4eca71a6de046e2f989a8241b965a96e0d2761370ee82c0189e4edc1d58aee8fb70cb151e3dca6f3391d6688d15d43ecb422661b4e3f78
|
||||
DIST MicroJSON-0.3.0.tar.bz2 5558 SHA256 562b1a016eab711c9017e3ede5a16fdaedd87a89fd6464a6259b7ac378493ddb SHA512 cf02e44531ee512397128b7893861af9f8bf330aed5cb97fdb0915341f62a0570b32653eb361081f37a055ba959ca58c30fefa05b96373c96b0eb485b96720de WHIRLPOOL 7403354de6ede792fd57f6a78c588c8d357f00c466b442076a04d765c048680824020d8a1877a28d0194f45d1fbd86e15c47f7da88e9e583d1f2888311d00344
|
||||
DIST MicroJSON-0.3.1.tar.bz2 5585 SHA256 5eeca2a13081f5a9c1796786cd0d5a449879067b62214d308c75fb1b1e24fed7 SHA512 de4a7e0268898704872e4bff81c3dc4083702f497e7a8772773bfb1930448f692ede29684741eb6b5bfeff7bb918577a14e79652e6b5e513965a81a69b5b6991 WHIRLPOOL b504e3371fbc90dd3fdfba65a558d96331aeb586372ea72236d43fbf1e50915752fa8f75a3038289d1b5b11c1c544a784baee44ef9a75c4014c6cf0407126345
|
||||
|
@ -0,0 +1,19 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/MicroJSON/MicroJSON-0.3.1.ebuild,v 1.1 2013/05/20 14:34:36 tomwij Exp $
|
||||
|
||||
EAPI="5"
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
DESCRIPTION="Small and simple to use JSON generation and parsing library."
|
||||
HOMEPAGE="http://grigory.info/${PN}.About.html"
|
||||
SRC_URI="http://grigory.info/distfiles/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
SLOT="0"
|
||||
|
||||
RDEPEND=">=dev-libs/UTF8Strings-1.12.0"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
@ -1,2 +1 @@
|
||||
DIST ecore-1.7.5.tar.bz2 3458107 SHA256 4bbaba2153db0c356d13c45adfbcc90c7118abd112d0817581417e708d6a9222 SHA512 84e8af7709d33669b2be66afdc4b76a720e1f3972bd25f959092ac703e351909a41b42ad7b7393a328fd0a692e63eafd871c19fdb991335629b233e14c735363 WHIRLPOOL 99f4b85f4a24257bb8401fec3b5c26f82ffa56f4c5c7c662386e8a6f61311f2beece45a39a3341665d028378796f72e964da1d8a58e8bb71df4ae810e941773b
|
||||
DIST ecore-1.7.6.tar.bz2 3460987 SHA256 f60800de7b2f264f1b0122a07f6c6f098fd1c3a61987bb890a3ca7d6e24d32a9 SHA512 1b795dea26b7ca810fca557bfae093deaa214453311da9622d08aa28956097f2b3424722f70f0656ae02553f8da42e951b71e442b637dc0910eb6672ad769830 WHIRLPOOL 4b4cf0576d7fba04874edf1f618a9998fd71abd4a081ab06d060b449c1bc1993b34da0f38f9e0addca34e23fac2cfee5ab8bea559d978edd0b8c12f3e5483734
|
||||
DIST ecore-1.7.7.tar.bz2 3460946 SHA256 0c45795771120f4e73a404fb5217fc6909f97ee82e7e8a4bdaccec9581ac9b9e SHA512 e5ebde56dbc70f0900f28f659add28940657d750295f0ab421c34ed104b60c8931e2ae3021a48cea7ec8f386106e9185925334e8b68514705ba5a7994fd8013e WHIRLPOOL 4f9b75cfe98d19cc0f0a322e443f787ba95d7f673d2fbe3f7cd90dccf403de6621d0a3afa0d94e64ce15a66744544784da9c5926c02c7f1e3555df9ab9f91d1d
|
||||
|
@ -1,232 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/ecore/ecore-1.7.6.ebuild,v 1.2 2013/04/24 08:26:01 ago Exp $
|
||||
|
||||
EAPI=2
|
||||
|
||||
#virtualx is required for tests, which are currently broken
|
||||
#inherit virtualx
|
||||
inherit enlightenment eutils
|
||||
|
||||
DESCRIPTION="Enlightenment's core event abstraction layer and OS abstraction layer"
|
||||
SRC_URI="http://download.enlightenment.org/releases/${P}.tar.bz2"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
KEYWORDS="~amd64 ~arm ~ppc ~x86"
|
||||
IUSE="ares curl directfb +evas examples fbcon gles glib gnutls +inotify ipv6 opengl sdl ssl static-libs +threads tslib wayland +X xcb xinerama xprint xscreensaver"
|
||||
|
||||
RDEPEND=">=dev-libs/eina-1.7.6
|
||||
ares? ( net-dns/c-ares )
|
||||
glib? ( dev-libs/glib )
|
||||
curl? ( net-misc/curl )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
!gnutls? ( ssl? ( dev-libs/openssl ) )
|
||||
evas? (
|
||||
>=media-libs/evas-1.7.6[directfb?,fbcon?,opengl?,X?,xcb?]
|
||||
opengl? ( virtual/opengl )
|
||||
wayland? (
|
||||
>=media-libs/evas-1.7.6[directfb?,fbcon?,gles?,opengl?,wayland?,X?,xcb?]
|
||||
)
|
||||
)
|
||||
directfb? ( >=dev-libs/DirectFB-0.9.16 )
|
||||
tslib? ( x11-libs/tslib )
|
||||
sdl? ( media-libs/libsdl )
|
||||
wayland? ( dev-libs/wayland )
|
||||
X? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcomposite
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXi
|
||||
x11-libs/libXrender
|
||||
x11-libs/libXtst
|
||||
xinerama? ( x11-libs/libXinerama x11-libs/libXrandr )
|
||||
xprint? ( x11-libs/libXp )
|
||||
xscreensaver? ( x11-libs/libXScrnSaver )
|
||||
)
|
||||
!X? ( xcb? ( x11-libs/xcb-util ) )"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
#tests depend on temp data from eina WORKDIR
|
||||
RESTRICT=test
|
||||
|
||||
#src_prepare() {
|
||||
# sed -i "s:1.7.5:1.7.4:g" configure.ac
|
||||
# eautoreconf
|
||||
#}
|
||||
|
||||
src_configure() {
|
||||
local SSL_FLAGS="" EVAS_FLAGS="" X_FLAGS=""
|
||||
|
||||
if use gnutls; then
|
||||
if use ssl; then
|
||||
einfo "You have enabled both 'ssl' and 'gnutls', so we will use"
|
||||
einfo "gnutls and not openssl for ecore-con support"
|
||||
fi
|
||||
SSL_FLAGS="
|
||||
--disable-openssl
|
||||
--enable-gnutls
|
||||
"
|
||||
elif use ssl; then
|
||||
SSL_FLAGS="
|
||||
--enable-openssl
|
||||
--disable-gnutls
|
||||
"
|
||||
else
|
||||
SSL_FLAGS="
|
||||
--disable-openssl
|
||||
--disable-gnutls
|
||||
"
|
||||
fi
|
||||
|
||||
local x_or_xcb=""
|
||||
if use X; then
|
||||
x_or_xcb="X"
|
||||
elif use xcb; then
|
||||
x_or_xcb="xcb"
|
||||
fi
|
||||
|
||||
if use evas; then
|
||||
|
||||
if use opengl && [[ -z "$x_or_xcb" ]]; then
|
||||
ewarn "Ecore/Evas usage of OpenGL requires X11."
|
||||
ewarn "Compile dev-libs/ecore with USE=X or xcb."
|
||||
ewarn "Compiling without opengl support."
|
||||
EVAS_FLAGS+="
|
||||
--disable-ecore-evas-software-x11
|
||||
--disable-ecore-evas-software-16-x11
|
||||
"
|
||||
else
|
||||
EVAS_FLAGS+="
|
||||
--enable-ecore-evas-software-x11
|
||||
--enable-ecore-evas-software-16-x11
|
||||
"
|
||||
fi
|
||||
EVAS_FLAGS+="
|
||||
$(use_enable directfb ecore-evas-directfb)
|
||||
$(use_enable fbcon ecore-evas-fb)
|
||||
$(use_enable opengl ecore-evas-opengl-x11)
|
||||
"
|
||||
if use wayland ; then
|
||||
EVAS_FLAGS+="
|
||||
--enable-ecore-evas-wayland-shm
|
||||
"
|
||||
if use gles ; then
|
||||
EVAS_FLAGS+="
|
||||
--enable-ecore-evas-wayland-egl
|
||||
"
|
||||
else
|
||||
EVAS_FLAGS+="
|
||||
--enable-ecore-evas-wayland-egl
|
||||
"
|
||||
fi
|
||||
else
|
||||
EVAS_FLAGS+="
|
||||
--disable-ecore-evas-wayland-egl
|
||||
--disable-ecore-evas-wayland-shm
|
||||
"
|
||||
fi
|
||||
else
|
||||
EVAS_FLAGS+="
|
||||
--disable-ecore-evas-directfb
|
||||
--disable-ecore-evas-fb
|
||||
--disable-ecore-evas-software-x11
|
||||
--disable-ecore-evas-software-16-x11
|
||||
--disable-ecore-evas-opengl-x11
|
||||
--disable-ecore-evas-wayland-egl
|
||||
--disable-ecore-evas-wayland-shm
|
||||
"
|
||||
if use opengl; then
|
||||
ewarn "Ecore usage of OpenGL is dependent on media-libs/evas."
|
||||
ewarn "Compile dev-libs/ecore with USE=evas."
|
||||
fi
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
if use xcb; then
|
||||
ewarn "You have enabled both 'X' and 'xcb', so we will use"
|
||||
ewarn "X as it's considered the most stable for ecore-x"
|
||||
fi
|
||||
X_FLAGS="
|
||||
--enable-ecore-x
|
||||
--disable-ecore-x-xcb
|
||||
"
|
||||
|
||||
elif use xcb; then
|
||||
X_FLAGS="
|
||||
--enable-ecore-x
|
||||
--enable-ecore-x-xcb
|
||||
"
|
||||
else
|
||||
X_FLAGS="
|
||||
--disable-ecore-x
|
||||
--disable-ecore-x-xcb
|
||||
"
|
||||
fi
|
||||
|
||||
if [[ ! -z "$x_or_xcb" ]]; then
|
||||
X_FLAGS+="
|
||||
$(use_enable xinerama ecore-x-xinerama)
|
||||
$(use_enable xprint ecore-x-xprint)
|
||||
$(use_enable xscreensaver ecore-x-screensaver)
|
||||
"
|
||||
else
|
||||
X_FLAGS+="
|
||||
--disable-ecore-x-xinerama
|
||||
--disable-ecore-x-xprint
|
||||
--disable-ecore-x-screensaver
|
||||
"
|
||||
fi
|
||||
|
||||
if use tslib && ! use fbcon; then
|
||||
ewarn "Ecore just uses tslib for framebuffer input."
|
||||
ewarn "Compile dev-libs/ecore with USE=fbcon."
|
||||
fi
|
||||
|
||||
MY_ECONF="
|
||||
--enable-ecore-con
|
||||
--enable-ecore-ipc
|
||||
--enable-ecore-file
|
||||
--enable-ecore-imf
|
||||
--enable-ecore-input
|
||||
--disable-ecore-win32
|
||||
--disable-ecore-wince
|
||||
--disable-ecore-evas-software-gdi
|
||||
--disable-ecore-evas-software-ddraw
|
||||
--disable-ecore-evas-direct3d
|
||||
--disable-ecore-evas-opengl-glew
|
||||
--disable-ecore-evas-software-16-ddraw
|
||||
--disable-ecore-evas-software-16-wince
|
||||
--disable-ecore_imf_scim
|
||||
$(use_enable ares cares)
|
||||
$(use_enable curl)
|
||||
$(use_enable directfb ecore-directfb)
|
||||
$(use_enable doc)
|
||||
$(use_enable examples build-examples)
|
||||
$(use_enable examples install-examples)
|
||||
$(use_enable evas ecore-evas)
|
||||
$(use_enable evas ecore-input-evas)
|
||||
$(use_enable evas ecore-imf-evas)
|
||||
$(use_enable evas ecore-evas-software-buffer)
|
||||
$(use_enable fbcon ecore-fb)
|
||||
$(use_enable glib)
|
||||
$(use_enable inotify)
|
||||
$(use_enable ipv6)
|
||||
$(use_enable sdl ecore-sdl)
|
||||
$(use_enable test tests)
|
||||
$(use_enable threads posix-threads)
|
||||
$(use_enable tslib)
|
||||
$(use_enable wayland ecore-wayland)
|
||||
$(use_enable X xim)
|
||||
${SSL_FLAGS}
|
||||
${EVAS_FLAGS}
|
||||
${X_FLAGS}
|
||||
"
|
||||
enlightenment_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
Xemake check
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
--- a/geoip.pc.in
|
||||
+++ b/geoip.pc.in
|
||||
@@ -1,4 +1,5 @@
|
||||
prefix=@prefix@
|
||||
+exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
datadir=@datarootdir@
|
@ -0,0 +1,72 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-libs/geoip/geoip-1.5.0-r1.ebuild,v 1.1 2013/05/20 15:26:33 jer Exp $
|
||||
|
||||
EAPI=5
|
||||
inherit eutils
|
||||
|
||||
MY_P="${P/geoip/GeoIP}"
|
||||
GEOLITE_URI="http://geolite.maxmind.com/download/geoip/database/"
|
||||
|
||||
DESCRIPTION="easily lookup countries by IP addresses, even when Reverse DNS entries don't exist"
|
||||
HOMEPAGE="http://www.maxmind.com/app/ip-location"
|
||||
SRC_URI="
|
||||
http://www.maxmind.com/download/geoip/api/c/${MY_P}.tar.gz
|
||||
${GEOLITE_URI}asnum/GeoIPASNum.dat.gz
|
||||
city? ( ${GEOLITE_URI}GeoLiteCity.dat.gz )
|
||||
ipv6? (
|
||||
${GEOLITE_URI}GeoIPv6.dat.gz
|
||||
city? ( ${GEOLITE_URI}GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz )
|
||||
)
|
||||
"
|
||||
|
||||
# GPL-2 for md5.c - part of libGeoIPUpdate, MaxMind for GeoLite Country db
|
||||
LICENSE="LGPL-2.1 GPL-2 MaxMind2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~x86-macos"
|
||||
IUSE="city ipv6 perl-geoipupdate static-libs"
|
||||
|
||||
DEPEND="sys-libs/zlib"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
perl-geoipupdate? (
|
||||
dev-perl/PerlIO-gzip
|
||||
dev-perl/libwww-perl
|
||||
)
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-pkgconfig.patch
|
||||
sed -e "s:usr local share GeoIP:usr share GeoIP:" \
|
||||
-e "s:usr local etc:etc:" \
|
||||
-i apps/geoipupdate-pureperl.pl || die
|
||||
sed -e 's|yahoo.com|98.139.183.24|g' \
|
||||
-i test/country_test_name.txt test/region_test.txt || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf $(use_enable static-libs static)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
use perl-geoipupdate && dobin apps/geoipupdate-pureperl.pl
|
||||
dodoc AUTHORS ChangeLog README TODO conf/GeoIP.conf.default
|
||||
rm "${ED}/etc/GeoIP.conf.default"
|
||||
if ! use static-libs; then
|
||||
rm -f "${ED}"/usr/lib*/lib*.la
|
||||
fi
|
||||
|
||||
insinto /usr/share/GeoIP
|
||||
doins "${WORKDIR}/GeoIPASNum.dat"
|
||||
use city && newins "${WORKDIR}"/GeoLiteCity.dat GeoIPCity.dat
|
||||
|
||||
if use ipv6; then
|
||||
doins "${WORKDIR}/GeoIPv6.dat"
|
||||
use city && newins "${WORKDIR}"/GeoLiteCityv6.dat GeoIPCityv6.dat
|
||||
fi
|
||||
|
||||
newsbin "${FILESDIR}/geoipupdate-r2.sh" geoipupdate.sh
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue