Merge pull request #105 from ertugerata/master

golang, docker in main iproute2 v.bump
This commit is contained in:
Ertuğrul Erata
2015-07-20 22:00:21 +03:00
28 changed files with 1273 additions and 1 deletions
+29
View File
@@ -0,0 +1,29 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
def setup():
shelltools.system("./autogen.sh")
autotools.configure()
def build():
autotools.make("CC=%s" % get.CC())
#autotools.make("V=1 CC=%s CFLAGS=\"%s\"" % (get.CC(), get.CFLAGS()))
#autotools.make("V=1 CC=%s CFLAGS=\"%s\" btrfs-select-super" % (get.CC(), get.CFLAGS()))
def install():
autotools.rawInstall("prefix=/usr DESTDIR=%s" % get.installDIR())
pisitools.remove("/usr/lib/*.a")
pisitools.insinto("/usr/bin", "bcp", "btrfs-bcp")
pisitools.insinto("/usr/bin", "show-blocks", "btrfs-show-blocks")
pisitools.dodoc("COPYING")
+105
View File
@@ -0,0 +1,105 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>btrfs-progs</Name>
<Homepage>http://btrfs.wiki.kernel.org</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>Userspace utilities for btrfs</Summary>
<Description>btrfs-progs package provides all the userspace programs needed to create, check, modify and correct any inconsistencies in the btrfs filesystem.</Description>
<Archive sha1sum="8081d1324f6afca6fdbb51badce23252fa045954" type="tarxz">http://source.pisilinux.org/1.0/btrfs-progs-v4.1.2.tar.xz</Archive>
<BuildDependencies>
<Dependency>xmlto</Dependency>
<Dependency>asciidoc</Dependency>
<Dependency>lzo-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>libutil-linux-devel</Dependency>
<Dependency>util-linux</Dependency>
<Dependency>libxslt</Dependency>
<Dependency>e2fsprogs-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>btrfs-progs</Name>
<RuntimeDependencies>
<Dependency>lzo</Dependency>
<Dependency>zlib</Dependency>
<Dependency>libutil-linux</Dependency>
<Dependency>e2fsprogs</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>btrfs-progs-devel</Name>
<Summary>Development files for btrfs-progs</Summary>
<RuntimeDependencies>
<Dependency release="current">btrfs-progs</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
</Files>
</Package>
<History>
<Update release="7">
<Date>2015-07-20</Date>
<Version>4.1.2</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="6">
<Date>2015-04-23</Date>
<Version>3.19.1</Version>
<Comment>Version bump, fix deps</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="5">
<Date>2014-12-23</Date>
<Version>3.17.3</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="4">
<Date>2014-05-30</Date>
<Version>3.14.2</Version>
<Comment>Version bump.</Comment>
<Name>Vedat Demir</Name>
<Email>vedat@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2014-01-19</Date>
<Version>3.12</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2014-01-19</Date>
<Version>0.19.20121005</Version>
<Comment>Rebuild</Comment>
<Name>Stefan Gronewold(groni)</Name>
<Email>groni@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-11-13</Date>
<Version>0.19.20121005</Version>
<Comment>First release</Comment>
<Name>Osman Erkan</Name>
<Email>osman.erkan@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>btrfs-progs</Name>
<Summary xml:lang="tr">btrfs dosya sistemi araçları</Summary>
<Description xml:lang="tr">btrfs-progs, btrfs dosya sistemleri yaratmak, denetlemek; bu dosya sistemlerindeki hataları düzeltmek ve çeşitli değişiklikler yapmak için gereken araçları içerir.</Description>
</Source>
</PISI>
+3
View File
@@ -0,0 +1,3 @@
<PISI>
<Name>hardware.disk</Name>
</PISI>
@@ -0,0 +1,18 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt
from pisi.actionsapi import autotools
from pisi.actionsapi import get
def setup():
autotools.autoreconf()
autotools.configure("--prefix=/usr")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
@@ -0,0 +1,41 @@
<PISI>
<Source>
<Name>thin-provisioning-tools</Name>
<Homepage>http://github.com/jthornber/thin-provisioning-tools"</Homepage>
<Packager>
<Name>Ali Algul</Name>
<Email>alialgul@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<Summary>A suite of tools for thin provisioning on Linux</Summary>
<Description>A suite of tools for thin provisioning on Linux</Description>
<BuildDependencies>
<Dependency>libaio-devel</Dependency>
<Dependency>boost-devel</Dependency>
<Dependency>expat-devel</Dependency>
<Dependency>libgcc</Dependency>
</BuildDependencies>
<Archive sha1sum="10fdc8bd9880716e1759b0defd57a7340283a7df" type="targz">https://codeload.github.com/jthornber/thin-provisioning-tools/tar.gz/v0.5.3</Archive>
</Source>
<Package>
<Name>thin-provisioning-tools</Name>
<RuntimeDependencies>
<Dependency>expat</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>libaio</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/sbin/</Path>
<Path fileType="man">/usr/share/man/man8/</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2015-07-20</Date>
<Version>0.5.3</Version>
<Comment>First Build</Comment>
<Name>Ali Algul</Name>
<Email>alialgul@pisilinux.org</Email>
</Update>
</History>
</PISI>
+3
View File
@@ -0,0 +1,3 @@
<PISI>
<Name>hardware.virtualization</Name>
</PISI>
+39
View File
@@ -0,0 +1,39 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import pisitools
from pisi.actionsapi import autotools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
shelltools.export("AUTO_GOPATH", "1")
shelltools.export("DOCKER_GITCOMMIT", "0baf609") #DOCKER_GITCOMMIT="0baf609"
shelltools.export("GOPATH", "%s" % get.workDIR())
shelltools.export("CGO_CFLAGS", "-I/usr/include")
shelltools.export("CGO_LDFLAGS", "-L/usr/lib")
shelltools.export("DOCKER_BUILDTAGS","exclude_graphdriver_aufs")
shelltools.export("DOCKER_INITPATH", "/usr/libexec/docker/dockerinit")
NoStrip=["/"]
def build():
shelltools.system("./hack/make.sh dynbinary")
def install():
pisitools.dobin("bundles/1.7.0/dynbinary/docker")
pisitools.dobin("bundles/1.7.0/dynbinary/docker-1.7.0")
pisitools.doexe("bundles/1.7.0/dynbinary/dockerinit", "/usr/libexec/docker")
pisitools.doexe("bundles/1.7.0/dynbinary/dockerinit-1.7.0", "/usr/libexec/docker")
# insert udev rules
pisitools.insinto("/etc/udev/rules.d", "contrib/udev/*.rules")
#insert contrib in docs
pisitools.insinto("/usr/share/doc/docker", "contrib")
pisitools.dodoc("VERSION", "LICENSE", "README.md", "AUTHORS", "CONTRIBUTING.md", "CHANGELOG.md", "NOTICE")
@@ -0,0 +1,24 @@
#!/usr/bin/python
import os, re
OUR_ID = 154
OUR_NAME = "docker"
OUR_DESC = "docker"
logfile = "/var/log/docker.log"
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
try:
os.system ("usr/sbin/groupadd -g %d %s" % (OUR_ID, OUR_NAME))
os.system("/bin/touch %s" % logfile)
os.system("/bin/chown root:docker %s" % logfile)
os.system("chmod 0644 %s" % logfile)
except:
pass
def preRemove():
try:
os.system ("groupdel %s" % OUR_NAME)
except:
pass
@@ -0,0 +1,31 @@
from comar.service import *
import os
serviceType = "local"
serviceDefault = "off"
serviceDesc = _({"en": "Docker Management Service",
"tr": "Docker Yönetim Hizmeti"})
serviceConf = "docker"
pidfile = "/var/run/docker.pid"
logfile = "/var/log/docker.log"
@synchronized
def start():
os.environ["PATH"] = "/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/sbin:/usr/local/bin"
os.system("/sbin/modprobe -va bridge nf_nat br_netfilter")
startService(command="/usr/bin/docker",
args="-d %s" % (config.get("DOCKER_OPTS", "")),
chuid="root:docker",
pidfile="/var/run/docker.pid",
donotify=True)
@synchronized
def stop():
stopService(command="/usr/bin/docker",
pidfile="/var/run/docker.pid",
donotify=True)
def status():
return isServiceRunning(pidfile)
+54
View File
@@ -0,0 +1,54 @@
#!/bin/sh
# Copyright 2011 Canonical, Inc
# 2014 Tianon Gravi
# Author: Serge Hallyn <serge.hallyn@canonical.com>
# Tianon Gravi <admwiggin@gmail.com>
set -e
# for simplicity this script provides no flexibility
# if cgroup is mounted by fstab, don't run
# don't get too smart - bail on any uncommented entry with 'cgroup' in it
if grep -v '^#' /etc/fstab | grep -q cgroup; then
echo 'cgroups mounted from fstab, not mounting /sys/fs/cgroup'
exit 0
fi
# kernel provides cgroups?
if [ ! -e /proc/cgroups ]; then
exit 0
fi
# if we don't even have the directory we need, something else must be wrong
if [ ! -d /sys/fs/cgroup ]; then
exit 0
fi
# mount /sys/fs/cgroup if not already done
if ! mountpoint -q /sys/fs/cgroup; then
mount -t tmpfs -o uid=0,gid=0,mode=0755 cgroup /sys/fs/cgroup
fi
cd /sys/fs/cgroup
# get/mount list of enabled cgroup controllers
for sys in $(awk '!/^#/ { if ($4 == 1) print $1 }' /proc/cgroups); do
mkdir -p $sys
if ! mountpoint -q $sys; then
if ! mount -n -t cgroup -o $sys cgroup $sys; then
rmdir $sys || true
fi
fi
done
# example /proc/cgroups:
# #subsys_name hierarchy num_cgroups enabled
# cpuset 2 3 1
# cpu 3 3 1
# cpuacct 4 3 1
# memory 5 3 0
# devices 6 3 1
# freezer 7 3 1
# blkio 8 3 1
exit 0
+31
View File
@@ -0,0 +1,31 @@
#!/bin/sh
# Copyright 2011 Canonical, Inc
# 2014 Tianon Gravi
# Author: Serge Hallyn <serge.hallyn@canonical.com>
# Tianon Gravi <admwiggin@gmail.com>
set -e
# we don't care to move tasks around gratuitously - just umount the cgroups
# if we don't even have the directory we need, something else must be wrong
if [ ! -d /sys/fs/cgroup ]; then
exit 0
fi
# if /sys/fs/cgroup is not mounted, we don't bother
if ! mountpoint -q /sys/fs/cgroup; then
exit 0
fi
cd /sys/fs/cgroup
for sys in *; do
if mountpoint -q $sys; then
umount $sys
fi
if [ -d $sys ]; then
rmdir $sys || true
fi
done
exit 0
@@ -0,0 +1,13 @@
# /etc/conf.d/docker: config file for /etc/init.d/docker
# where the docker daemon output gets piped
DOCKER_LOGFILE="/var/log/docker.log"
# where docker's pid get stored
DOCKER_PIDFILE="/var/run/docker.pid"
# where the docker daemon itself is run from
DOCKER_BINARY="/usr/bin/docker"
# any other random options you want to pass to docker
DOCKER_OPTS=""
+87
View File
@@ -0,0 +1,87 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>docker</Name>
<Homepage>http://docker.io</Homepage>
<Packager>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Packager>
<License>Apache</License>
<IsA>app:console</IsA>
<Summary>Pack, ship and run any application as a lightweight container</Summary>
<Description>An open platform for distributed applications for developers and sysadmins</Description>
<!--fix sha1sum-->
<Archive sha1sum="e638f39c6081de7b0903ed09096300bdbb1d5aa0" type="targz">https://github.com/docker/docker/archive/v1.7.0.tar.gz</Archive>
<BuildDependencies>
<Dependency>git</Dependency>
<Dependency>golang</Dependency>
<Dependency>btrfs-progs-devel</Dependency>
<Dependency>device-mapper-devel</Dependency>
<Dependency>sqlite-devel</Dependency>
</BuildDependencies>
<Patches>
</Patches>
</Source>
<Package>
<Name>docker</Name>
<RuntimeDependencies>
<Dependency>git</Dependency>
<Dependency>golang</Dependency>
<Dependency>sqlite</Dependency>
<Dependency>device-mapper</Dependency>
<Dependency>btrfs-progs</Dependency>
<Dependency>bridge-utils</Dependency>
<Dependency>iproute2</Dependency>
<Dependency>iptables</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="config">/etc</Path>
<Path fileType="executable">/usr/bin/</Path>
<Path fileType="library">/usr/libexec/docker</Path>
<Path fileType="data">/usr/share/</Path>
</Files>
<AdditionalFiles>
<AdditionalFile owner="root" permission="0644" target="/usr/share/doc/docker/contrib/cgroupfs-mount">cgroupfs-mount</AdditionalFile>
<AdditionalFile owner="root" permission="0655" target="/usr/share/doc/docker/contrib/cgroupfs-umount">cgroupfs-umount</AdditionalFile>
<AdditionalFile owner="root" permission="0644" target="/etc/conf.d/docker">docker.confd</AdditionalFile>
</AdditionalFiles>
<Provides>
<COMAR script="service.py">System.Service</COMAR>
<COMAR script="package.py">System.Package</COMAR>
</Provides>
</Package>
<History>
<Update release="4">
<Date>2015-06-24</Date>
<Version>1.7.0</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="3">
<Date>2015-05-17</Date>
<Version>1.6.2</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="2">
<Date>2015-05-09</Date>
<Version>1.6.1</Version>
<Comment>Version bump.http://seclists.org/fulldisclosure/2015/May/28 </Comment>
<Type package="docker">security</Type>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="1">
<Date>2015-04-17</Date>
<Version>1.6.0</Version>
<Comment>First Release.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>docker</Name>
<Summary xml:lang="tr">Herhangi bir uygulamayı paketleyip çalıştırmak için hafif kontenyer</Summary>
<Description xml:lang="tr">Geliştirici ve Sistem Yöneticileri için açık ve dağıtık platform</Description>
</Source>
</PISI>
+10 -1
View File
@@ -12,11 +12,12 @@
<IsA>app:console</IsA>
<Summary>Kernel routing and traffic control utilities</Summary>
<Description>Iproute2 is a collection of utilites for controlling TCP/IP networking and traffic control in Linux.</Description>
<Archive sha1sum="d24385ae619966d1bd71e146322d6035d60aaa1a" type="tarxz">https://www.kernel.org/pub/linux/utils/net/iproute2/iproute2-4.0.0.tar.xz</Archive>
<Archive sha1sum="750c17e720b43041c23fed7b8cf0118c0e841036" type="tarxz">https://www.kernel.org/pub/linux/utils/net/iproute2/iproute2-4.1.1.tar.xz</Archive>
<BuildDependencies>
<Dependency>iptables-devel</Dependency>
<Dependency>linux-atm-devel</Dependency>
<Dependency>db-devel</Dependency>
<Dependency>elfutils</Dependency>
</BuildDependencies>
</Source>
@@ -26,6 +27,7 @@
<Dependency>linux-atm</Dependency>
<Dependency>iptables</Dependency>
<Dependency>db</Dependency>
<Dependency>elfutils</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="config">/etc</Path>
@@ -40,6 +42,13 @@
</Package>
<History>
<Update release="4">
<Date>2015-07-20</Date>
<Version>4.1.1</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="3">
<Date>2015-04-13</Date>
<Version>4.0.0</Version>
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import pisitools
from pisi.actionsapi import autotools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
shelltools.export("GOROOT", "%s/go-go1.4.2" % get.workDIR())
shelltools.export("GOBIN", "$GOROOT/bin")
shelltools.export("GOPATH", "%s" % get.workDIR())
shelltools.export("GOROOT_FINAL", "/usr/lib/go")
shelltools.export("GOOS","linux")
shelltools.export("GOARCH","amd64")
NoStrip=["/"]
def build():
shelltools.cd("src")
shelltools.system("bash make.bash")
shelltools.cd("%s/go-go1.4.2" % get.workDIR())
shelltools.system("$GOROOT/bin/go get -d golang.org/x/tools/cmd/godoc")
shelltools.system("$GOROOT/bin/go build -o $GOPATH/godoc golang.org/x/tools/cmd/godoc")
for tool in ["cover", "vet", "callgraph"]:
shelltools.system("$GOROOT/bin/go get -d golang.org/x/tools/cmd/%s" % tool)
shelltools.system("$GOROOT/bin/go build -o $GOROOT/pkg/tool/$GOOS\_$GOARCH/%s golang.org/x/tools/cmd/%s" % (tool, tool))
def install():
shelltools.cd("%s/go-go1.4.2" % get.workDIR())
pisitools.dobin("bin/*")
pisitools.dodir("/usr/lib/go")
pisitools.insinto("/usr/lib/go", "doc")
pisitools.insinto("/usr/lib/go", "include")
pisitools.insinto("/usr/lib/go", "lib")
pisitools.insinto("/usr/lib/go", "pkg")
pisitools.insinto("/usr/lib/go", "src")
pisitools.dodoc("VERSION", "LICENSE", "PATENTS", "README", "AUTHORS", "CONTRIBUTORS")
+1
View File
@@ -0,0 +1 @@
export GOROOT=/usr/lib/go
+66
View File
@@ -0,0 +1,66 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>go</Name>
<Homepage>http://golang.org</Homepage>
<Packager>
<Name>Aydın Demirel</Name>
<Email>aydin.demirel@pisilinux.org</Email>
</Packager>
<License>BSD</License>
<IsA>app:console</IsA>
<Summary>Compiler and tools for the Go programming language from Google</Summary>
<Description>Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.</Description>
<Archive sha1sum="7fad08fc0c884aa68f13d3cd82d3ad2aa1872368" type="targz">https://github.com/golang/go/archive/go1.4.2.tar.gz</Archive>
<BuildDependencies>
<Dependency>perl</Dependency>
<Dependency>gawk</Dependency>
<Dependency>mercurial</Dependency>
<Dependency>glibc-32bit</Dependency>
<Dependency>git</Dependency>
</BuildDependencies>
<Patches>
</Patches>
</Source>
<Package>
<Name>golang</Name>
<RuntimeDependencies>
<Dependency>glibc-32bit</Dependency>
<Dependency>git</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin/</Path>
<Path fileType="library">/usr/lib/</Path>
<Path fileType="config">/etc</Path>
<Path fileType="data">/usr/share/</Path>
</Files>
<AdditionalFiles>
<AdditionalFile owner="root" permission="0644" target="/etc/profile.d/go.sh">go.sh</AdditionalFile>
</AdditionalFiles>
</Package>
<History>
<Update release="3">
<Date>2015-04-17</Date>
<Version>1.4.2</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="2">
<Date>2014-12-24</Date>
<Version>1.3.3</Version>
<Comment>Version bump, remove unneded depse</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="1">
<Date>2014-09-27</Date>
<Version>1.3.2</Version>
<Comment>First release</Comment>
<Name>Aydın Demirel</Name>
<Email>aydin.demirel@pisilinux.org</Email>
</Update>
</History>
</PISI>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>go</Name>
<Summary xml:lang="tr">Google'dan Go programlama dili için araçlar ve derleyici</Summary>
<Description xml:lang="tr">Go basit, güvenilir ve verimli yazılım inşa etmek için onu kolay yapan açık kaynaklı bir programlama dilidir.</Description>
</Source>
</PISI>
+33
View File
@@ -0,0 +1,33 @@
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
from pisi.actionsapi import shelltools
def setup():
shelltools.system("./bootstrap.sh --with-toolset=gcc --with-icu --with-python=/usr/bin/python2.7 --prefix=%s/usr" % get.installDIR())
#shelltools.echo("project-config.jam","using mpi ;")
#shelltools.echo("project-config.jam","--without-mpi ;")
def build():
shelltools.system("./b2 \
variant=release \
debug-symbols=off \
threading=multi \
runtime-link=shared \
link=shared,static \
toolset=gcc \
python=2.7 \
cflags=-fno-strict-aliasing \
--layout=system")
def install():
pisitools.dobin("b2")
pisitools.dobin("bjam")
shelltools.copytree("tools/boostbook/xsl", "%s/usr/share/boostbook/xsl" % get.installDIR())
shelltools.copytree("tools/boostbook/dtd", "%s/usr/share/boostbook" % get.installDIR())
shelltools.system("./b2 install threading=multi link=shared")
@@ -0,0 +1,29 @@
From 06ccdfee76fe487a141b95848d1c866890f15d88 Mon Sep 17 00:00:00 2001
From: Evangelos Foutras <evangelos@foutrelis.com>
Date: Thu, 6 Nov 2014 09:19:26 +0200
Subject: [PATCH] Add missing include to signals2/trackable.hpp
boost::weak_ptr started being used in commit a0bf2d1 (Disconnect slots
associated with signals2::trackable immediately) but the matching header
wasn't included.
https://svn.boost.org/trac/boost/ticket/10100#comment:7
---
include/boost/signals2/trackable.hpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/boost/signals2/trackable.hpp b/include/boost/signals2/trackable.hpp
index dba001d..64e8489 100644
--- a/include/boost/signals2/trackable.hpp
+++ b/include/boost/signals2/trackable.hpp
@@ -18,6 +18,7 @@
#include <boost/assert.hpp>
#include <boost/shared_ptr.hpp>
+#include <boost/weak_ptr.hpp>
namespace boost {
namespace signals2 {
--
2.1.3
@@ -0,0 +1,354 @@
From 150c4e94e3f6aadc84f551accdb49b6658bfb539 Mon Sep 17 00:00:00 2001
From: K-ballo <k@fusionfenix.com>
Date: Wed, 29 Apr 2015 13:11:41 -0300
Subject: [PATCH] Fix for bind<void>(mf) ambiguous resolution error
---
include/boost/bind/bind.hpp | 2 ++
include/boost/bind/bind_mf_cc.hpp | 54 ++++++++++++++++++++++++++-------------
test/bind_void_mf_test.cpp | 27 ++++++++++++++++++++
3 files changed, 65 insertions(+), 18 deletions(-)
diff --git a/include/boost/bind/bind.hpp b/include/boost/bind/bind.hpp
index 924d055..fd05131 100644
--- a/include/boost/bind/bind.hpp
+++ b/include/boost/bind/bind.hpp
@@ -29,6 +29,8 @@
#include <boost/bind/arg.hpp>
#include <boost/detail/workaround.hpp>
#include <boost/visit_each.hpp>
+#include <boost/core/enable_if.hpp>
+#include <boost/core/is_same.hpp>
// Borland-specific bug, visit_each() silently fails to produce code
diff --git a/include/boost/bind/bind_mf_cc.hpp b/include/boost/bind/bind_mf_cc.hpp
index 9c3d290..e149384 100644
--- a/include/boost/bind/bind_mf_cc.hpp
+++ b/include/boost/bind/bind_mf_cc.hpp
@@ -36,8 +36,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class A1>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf0)<R, T>, typename _bi::list_av_1<A1>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (), A1 a1)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (), A1 a1)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf0)<R, T> F;
typedef typename _bi::list_av_1<A1>::type list_type;
@@ -46,8 +47,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class A1>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf0)<R, T>, typename _bi::list_av_1<A1>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) () const, A1 a1)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) () const, A1 a1)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf0)<R, T> F;
typedef typename _bi::list_av_1<A1>::type list_type;
@@ -81,8 +83,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1,
class A1, class A2>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf1)<R, T, B1>, typename _bi::list_av_2<A1, A2>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1), A1 a1, A2 a2)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1), A1 a1, A2 a2)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf1)<R, T, B1> F;
typedef typename _bi::list_av_2<A1, A2>::type list_type;
@@ -92,8 +95,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1,
class A1, class A2>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf1)<R, T, B1>, typename _bi::list_av_2<A1, A2>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1) const, A1 a1, A2 a2)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1) const, A1 a1, A2 a2)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf1)<R, T, B1> F;
typedef typename _bi::list_av_2<A1, A2>::type list_type;
@@ -127,8 +131,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2,
class A1, class A2, class A3>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf2)<R, T, B1, B2>, typename _bi::list_av_3<A1, A2, A3>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2), A1 a1, A2 a2, A3 a3)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2), A1 a1, A2 a2, A3 a3)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf2)<R, T, B1, B2> F;
typedef typename _bi::list_av_3<A1, A2, A3>::type list_type;
@@ -138,8 +143,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2,
class A1, class A2, class A3>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf2)<R, T, B1, B2>, typename _bi::list_av_3<A1, A2, A3>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2) const, A1 a1, A2 a2, A3 a3)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2) const, A1 a1, A2 a2, A3 a3)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf2)<R, T, B1, B2> F;
typedef typename _bi::list_av_3<A1, A2, A3>::type list_type;
@@ -173,8 +179,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3,
class A1, class A2, class A3, class A4>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf3)<R, T, B1, B2, B3>, typename _bi::list_av_4<A1, A2, A3, A4>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3), A1 a1, A2 a2, A3 a3, A4 a4)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3), A1 a1, A2 a2, A3 a3, A4 a4)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf3)<R, T, B1, B2, B3> F;
typedef typename _bi::list_av_4<A1, A2, A3, A4>::type list_type;
@@ -184,8 +191,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3,
class A1, class A2, class A3, class A4>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf3)<R, T, B1, B2, B3>, typename _bi::list_av_4<A1, A2, A3, A4>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3) const, A1 a1, A2 a2, A3 a3, A4 a4)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3) const, A1 a1, A2 a2, A3 a3, A4 a4)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf3)<R, T, B1, B2, B3> F;
typedef typename _bi::list_av_4<A1, A2, A3, A4>::type list_type;
@@ -219,8 +227,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4,
class A1, class A2, class A3, class A4, class A5>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf4)<R, T, B1, B2, B3, B4>, typename _bi::list_av_5<A1, A2, A3, A4, A5>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf4)<R, T, B1, B2, B3, B4> F;
typedef typename _bi::list_av_5<A1, A2, A3, A4, A5>::type list_type;
@@ -230,8 +239,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4,
class A1, class A2, class A3, class A4, class A5>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf4)<R, T, B1, B2, B3, B4>, typename _bi::list_av_5<A1, A2, A3, A4, A5>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf4)<R, T, B1, B2, B3, B4> F;
typedef typename _bi::list_av_5<A1, A2, A3, A4, A5>::type list_type;
@@ -265,8 +275,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5,
class A1, class A2, class A3, class A4, class A5, class A6>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf5)<R, T, B1, B2, B3, B4, B5>, typename _bi::list_av_6<A1, A2, A3, A4, A5, A6>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf5)<R, T, B1, B2, B3, B4, B5> F;
typedef typename _bi::list_av_6<A1, A2, A3, A4, A5, A6>::type list_type;
@@ -276,8 +287,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5,
class A1, class A2, class A3, class A4, class A5, class A6>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf5)<R, T, B1, B2, B3, B4, B5>, typename _bi::list_av_6<A1, A2, A3, A4, A5, A6>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf5)<R, T, B1, B2, B3, B4, B5> F;
typedef typename _bi::list_av_6<A1, A2, A3, A4, A5, A6>::type list_type;
@@ -311,8 +323,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6,
class A1, class A2, class A3, class A4, class A5, class A6, class A7>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf6)<R, T, B1, B2, B3, B4, B5, B6>, typename _bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf6)<R, T, B1, B2, B3, B4, B5, B6> F;
typedef typename _bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type list_type;
@@ -322,8 +335,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6,
class A1, class A2, class A3, class A4, class A5, class A6, class A7>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf6)<R, T, B1, B2, B3, B4, B5, B6>, typename _bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf6)<R, T, B1, B2, B3, B4, B5, B6> F;
typedef typename _bi::list_av_7<A1, A2, A3, A4, A5, A6, A7>::type list_type;
@@ -357,8 +371,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6, class B7,
class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf7)<R, T, B1, B2, B3, B4, B5, B6, B7>, typename _bi::list_av_8<A1, A2, A3, A4, A5, A6, A7, A8>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf7)<R, T, B1, B2, B3, B4, B5, B6, B7> F;
typedef typename _bi::list_av_8<A1, A2, A3, A4, A5, A6, A7, A8>::type list_type;
@@ -368,8 +383,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6, class B7,
class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf7)<R, T, B1, B2, B3, B4, B5, B6, B7>, typename _bi::list_av_8<A1, A2, A3, A4, A5, A6, A7, A8>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf7)<R, T, B1, B2, B3, B4, B5, B6, B7> F;
typedef typename _bi::list_av_8<A1, A2, A3, A4, A5, A6, A7, A8>::type list_type;
@@ -403,8 +419,9 @@ template<class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6, class B7, class B8,
class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(mf8)<R, T, B1, B2, B3, B4, B5, B6, B7, B8>, typename _bi::list_av_9<A1, A2, A3, A4, A5, A6, A7, A8, A9>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7, B8), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7, B8), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
{
typedef _mfi::BOOST_BIND_MF_NAME(mf8)<R, T, B1, B2, B3, B4, B5, B6, B7, B8> F;
typedef typename _bi::list_av_9<A1, A2, A3, A4, A5, A6, A7, A8, A9>::type list_type;
@@ -414,8 +431,9 @@ template<class Rt2, class R, class T,
template<class Rt2, class R, class T,
class B1, class B2, class B3, class B4, class B5, class B6, class B7, class B8,
class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9>
+ typename boost::enable_if_c<!boost::core::is_same<Rt2, R>::value,
_bi::bind_t<Rt2, _mfi::BOOST_BIND_MF_NAME(cmf8)<R, T, B1, B2, B3, B4, B5, B6, B7, B8>, typename _bi::list_av_9<A1, A2, A3, A4, A5, A6, A7, A8, A9>::type>
- BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7, B8) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
+ >::type BOOST_BIND(R (BOOST_BIND_MF_CC T::*f) (B1, B2, B3, B4, B5, B6, B7, B8) const, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9)
{
typedef _mfi::BOOST_BIND_MF_NAME(cmf8)<R, T, B1, B2, B3, B4, B5, B6, B7, B8> F;
typedef typename _bi::list_av_9<A1, A2, A3, A4, A5, A6, A7, A8, A9>::type list_type;
diff --git a/boost/libs/bind/test/bind_void_mf_test.cpp b/boost/libs/bind/test/bind_void_mf_test.cpp
index 62c2dcd..e66a9c8 100644
--- a/boost/libs/bind/test/bind_void_mf_test.cpp
+++ b/boost/libs/bind/test/bind_void_mf_test.cpp
@@ -47,30 +47,39 @@ struct X
int f0() { f1(17); return 0; }
int g0() const { g1(17); return 0; }
+ void h0() { h1(17); }
int f1(int a1) { hash = (hash * 17041 + a1) % 32768; return 0; }
int g1(int a1) const { hash = (hash * 17041 + a1 * 2) % 32768; return 0; }
+ void h1(int a1) { hash = (hash * 17041 + a1 * 2) % 32768; }
int f2(int a1, int a2) { f1(a1); f1(a2); return 0; }
int g2(int a1, int a2) const { g1(a1); g1(a2); return 0; }
+ void h2(int a1, int a2) { h1(a1); h1(a2); }
int f3(int a1, int a2, int a3) { f2(a1, a2); f1(a3); return 0; }
int g3(int a1, int a2, int a3) const { g2(a1, a2); g1(a3); return 0; }
+ void h3(int a1, int a2, int a3) { h2(a1, a2); h1(a3); }
int f4(int a1, int a2, int a3, int a4) { f3(a1, a2, a3); f1(a4); return 0; }
int g4(int a1, int a2, int a3, int a4) const { g3(a1, a2, a3); g1(a4); return 0; }
+ void h4(int a1, int a2, int a3, int a4) { h3(a1, a2, a3); h1(a4); }
int f5(int a1, int a2, int a3, int a4, int a5) { f4(a1, a2, a3, a4); f1(a5); return 0; }
int g5(int a1, int a2, int a3, int a4, int a5) const { g4(a1, a2, a3, a4); g1(a5); return 0; }
+ void h5(int a1, int a2, int a3, int a4, int a5) { h4(a1, a2, a3, a4); h1(a5); }
int f6(int a1, int a2, int a3, int a4, int a5, int a6) { f5(a1, a2, a3, a4, a5); f1(a6); return 0; }
int g6(int a1, int a2, int a3, int a4, int a5, int a6) const { g5(a1, a2, a3, a4, a5); g1(a6); return 0; }
+ void h6(int a1, int a2, int a3, int a4, int a5, int a6) { h5(a1, a2, a3, a4, a5); h1(a6); }
int f7(int a1, int a2, int a3, int a4, int a5, int a6, int a7) { f6(a1, a2, a3, a4, a5, a6); f1(a7); return 0; }
int g7(int a1, int a2, int a3, int a4, int a5, int a6, int a7) const { g6(a1, a2, a3, a4, a5, a6); g1(a7); return 0; }
+ void h7(int a1, int a2, int a3, int a4, int a5, int a6, int a7) { h6(a1, a2, a3, a4, a5, a6); h1(a7); }
int f8(int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8) { f7(a1, a2, a3, a4, a5, a6, a7); f1(a8); return 0; }
int g8(int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8) const { g7(a1, a2, a3, a4, a5, a6, a7); g1(a8); return 0; }
+ void h8(int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8) { h7(a1, a2, a3, a4, a5, a6, a7); h1(a8); }
};
void member_function_test()
@@ -88,6 +97,8 @@ void member_function_test()
bind<void>(&X::g0, x)();
bind<void>(&X::g0, ref(x))();
+ bind<void>(&X::h0, x)();
+
// 1
bind<void>(&X::f1, &x, 1)();
@@ -97,6 +108,8 @@ void member_function_test()
bind<void>(&X::g1, x, 1)();
bind<void>(&X::g1, ref(x), 1)();
+ bind<void>(&X::h1, x, 1)();
+
// 2
bind<void>(&X::f2, &x, 1, 2)();
@@ -106,6 +119,8 @@ void member_function_test()
bind<void>(&X::g2, x, 1, 2)();
bind<void>(&X::g2, ref(x), 1, 2)();
+ bind<void>(&X::h2, x, 1, 2)();
+
// 3
bind<void>(&X::f3, &x, 1, 2, 3)();
@@ -115,6 +130,8 @@ void member_function_test()
bind<void>(&X::g3, x, 1, 2, 3)();
bind<void>(&X::g3, ref(x), 1, 2, 3)();
+ bind<void>(&X::h3, x, 1, 2, 3)();
+
// 4
bind<void>(&X::f4, &x, 1, 2, 3, 4)();
@@ -124,6 +141,8 @@ void member_function_test()
bind<void>(&X::g4, x, 1, 2, 3, 4)();
bind<void>(&X::g4, ref(x), 1, 2, 3, 4)();
+ bind<void>(&X::h4, x, 1, 2, 3, 4)();
+
// 5
bind<void>(&X::f5, &x, 1, 2, 3, 4, 5)();
@@ -133,6 +152,8 @@ void member_function_test()
bind<void>(&X::g5, x, 1, 2, 3, 4, 5)();
bind<void>(&X::g5, ref(x), 1, 2, 3, 4, 5)();
+ bind<void>(&X::h5, x, 1, 2, 3, 4, 5)();
+
// 6
bind<void>(&X::f6, &x, 1, 2, 3, 4, 5, 6)();
@@ -142,6 +163,8 @@ void member_function_test()
bind<void>(&X::g6, x, 1, 2, 3, 4, 5, 6)();
bind<void>(&X::g6, ref(x), 1, 2, 3, 4, 5, 6)();
+ bind<void>(&X::h6, x, 1, 2, 3, 4, 5, 6)();
+
// 7
bind<void>(&X::f7, &x, 1, 2, 3, 4, 5, 6, 7)();
@@ -151,6 +174,8 @@ void member_function_test()
bind<void>(&X::g7, x, 1, 2, 3, 4, 5, 6, 7)();
bind<void>(&X::g7, ref(x), 1, 2, 3, 4, 5, 6, 7)();
+ bind<void>(&X::h7, x, 1, 2, 3, 4, 5, 6, 7)();
+
// 8
bind<void>(&X::f8, &x, 1, 2, 3, 4, 5, 6, 7, 8)();
@@ -160,6 +185,8 @@ void member_function_test()
bind<void>(&X::g8, x, 1, 2, 3, 4, 5, 6, 7, 8)();
bind<void>(&X::g8, ref(x), 1, 2, 3, 4, 5, 6, 7, 8)();
+ bind<void>(&X::h8, x, 1, 2, 3, 4, 5, 6, 7, 8)();
+
BOOST_TEST( x.hash == 23558 );
}
--
2.4.1
+112
View File
@@ -0,0 +1,112 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>boost</Name>
<Homepage>http://boost.org</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<PartOf>programming.language</PartOf>
<IsA>library</IsA>
<Summary>Peer-reviewed portable C++ source libraries</Summary>
<Description>Boost provides free portable peer-reviewed C++ libraries. The emphasis is on portable libraries which work well with the C++ Standard Library.</Description>
<Archive sha1sum="2fc96c1651ac6fe9859b678b165bd78dc211e881" type="tarbz2">mirrors://sourceforge/boost/boost_1_58_0.tar.bz2</Archive>
<BuildDependencies>
<Dependency>icu4c-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>python-devel</Dependency>
<Dependency>bzip2</Dependency>
<!-- libsxlt is needed for xsltproc -->
<Dependency>libxslt</Dependency>
<!--Dependency>openmpi-devel</Dependency-->
</BuildDependencies>
<Patches>
<Patch>boost-1.58.0-Fix-for-bind-void-mf-ambiguous-resolution-error.patch</Patch>
</Patches>
</Source>
<Package>
<Name>boost</Name>
<RuntimeDependencies>
<Dependency>icu4c</Dependency>
<Dependency>zlib</Dependency>
<Dependency>bzip2</Dependency>
<Dependency>libgcc</Dependency>
<!--Dependency>openmpi</Dependency-->
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="data">/usr/share/boostbook</Path>
</Files>
</Package>
<Package>
<Name>boost-devel</Name>
<IsA>data:doc</IsA>
<Summary>Headers and library documentation for boost</Summary>
<RuntimeDependencies>
<Dependency release="current">boost</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="doc">/usr/share/doc/*/html</Path>
</Files>
</Package>
<History>
<Update release="7">
<Date>2015-07-20</Date>
<Version>1.58.0</Version>
<Comment>Version bump, openmpi disabled. </Comment>
<Name>Ali Algul</Name>
<Email>alialgul@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-12-19</Date>
<Version>1.57.0</Version>
<Comment>Version bump.</Comment>
<Name>Ergün Salman Aydemir</Name>
<Email>poyraz76@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-05-19</Date>
<Version>1.55.0</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-11-07</Date>
<Version>1.54.0</Version>
<Comment>Version bump</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-10-14</Date>
<Version>1.53.0</Version>
<Comment>Rebuild for icu4c</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-03-04</Date>
<Version>1.53.0</Version>
<Comment>Version bump</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-11-14</Date>
<Version>1.52.0</Version>
<Comment>First release</Comment>
<Name>Osman Erkan</Name>
<Email>osman.erkan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>boost</Name>
<Summary xml:lang="tr">Açık kaynak kodlu ve taşınabilir C++ kaynak kitaplıkları</Summary>
<Description xml:lang="tr">Boost, kaynak kodları gözden geçirilmiş C++ kitaplıklarını içerir.</Description>
<Description xml:lang="fr">Boost propose des librairies C++ gratuites, portables et relues en comité. L'accent est porté sur les librairies portables qui fonctionnent bien avec la Librairie Standard C++.</Description>
</Source>
<Package>
<Name>boost-devel</Name>
<Summary xml:lang="tr">boost için başlık dosyaları ve kitaplık belgeleri</Summary>
</Package>
</PISI>
+23
View File
@@ -0,0 +1,23 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import pisitools
from pisi.actionsapi import pythonmodules
def setup():
pythonmodules.compile()
def install():
pythonmodules.install()
pisitools.dodir("/etc/bash_completion.d")
pisitools.insinto("/etc/bash_completion.d", "contrib/bash_completion", "mercurial")
pisitools.doman("doc/*.1")
pisitools.doman("doc/*.5")
pisitools.dohtml("doc/*.html")
#pisitools.dodoc("doc/*.txt")
+72
View File
@@ -0,0 +1,72 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>mercurial</Name>
<Homepage>http://www.selenic.com/mercurial</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>A distributed SCM tool</Summary>
<Description>A fast, lightweight Source Control Management system designed for efficient handling of very large distributed projects.</Description>
<Archive sha1sum="999d5db4961e2c745f17df44d7ae64dce2d8425b" type="targz">http://mercurial.selenic.com/release/mercurial-3.3.3.tar.gz</Archive>
<BuildDependencies>
<Dependency>python-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>mercurial</Name>
<RuntimeDependencies>
<Dependency>python</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="data">/etc/bash_completion.d</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="5">
<Date>2015-04-04</Date>
<Version>3.3.3</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2015-01-10</Date>
<Version>3.2.4</Version>
<Comment>Version bump.</Comment>
<Name>Ertuğrul Erata</Name>
<Email>ertugrulerata@gmail.com</Email>
</Update>
<Update release="3">
<Date>2014-03-07</Date>
<Version>2.9.1</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2014-02-01</Date>
<Version>2.8</Version>
<Comment>Ver. bump</Comment>
<Name>Kamil Atlı</Name>
<Email>suvarice@gmail.com</Email>
</Update>
<Update release="1">
<Date>2012-10-06</Date>
<Version>2.3.1</Version>
<Comment>First release</Comment>
<Name>Osman Erkan</Name>
<Email>osman.erkan@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,10 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>mercurial</Name>
<Summary xml:lang="tr">Dağıtık bir kaynak kod yönetim aracı</Summary>
<Description xml:lang="tr">Çok büyük dağıtık projelerin verimli bir şekilde idare edilmesi amacıyla geliştirilmiş hızlı, hafif bir kaynak kod kontrol yönetimi sistemi</Description>
<Description xml:lang="fr">Système de gestion de code source, rapide et léger conçu pour gérer de manière efficace les projets distribués de très grande taille.</Description>
<Description xml:lang="es">Un sistema rápido y liviano de administración de fuentes (Source Control Management) diseñado para manejo eficaz de proyectos muy largos y distribuidos.</Description>
</Source>
</PISI>