create core package

This commit is contained in:
aydemir
2015-02-24 11:18:35 +02:00
parent 0e4b743b82
commit 70b25d0f95
1098 changed files with 169545 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
# Fixup version
shelltools.echo(".version", get.srcVERSION().split("_")[0])
# Disable emacs scripts
shelltools.export("EMACS", "no")
autotools.configure()
def build():
autotools.make()
# takes too long, do it by hand
#def check():
# autotools.make("check")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
# binutils installs this infopage
pisitools.remove("/usr/share/info/standards.info")
pisitools.dodoc("AUTHORS", "BUGS", "ChangeLog*", "NEWS", "README")
+68
View File
@@ -0,0 +1,68 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>autoconf</Name>
<Homepage>http://www.gnu.org/software/autoconf/autoconf.html</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv3</License>
<IsA>app:console</IsA>
<Summary>Used to create autoconfiguration files</Summary>
<Description>Used to create autoconfiguration files, Autoconf is an extensible package of m4 macros that produce shell scripts to automatically configure software source code packages.</Description>
<Archive sha1sum="e891c3193029775e83e0534ac0ee0c4c711f6d23" type="tarxz">mirrors://gnu/autoconf/autoconf-2.69.tar.xz</Archive>
<BuildDependencies>
<Dependency>texinfo</Dependency>
<Dependency>m4</Dependency>
<Dependency>perl</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>autoconf</Name>
<RuntimeDependencies>
<Dependency>texinfo</Dependency>
<Dependency>m4</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="data">/usr/share/autoconf</Path>
</Files>
</Package>
<History>
<Update release="4">
<Date>2014-11-30</Date>
<Version>2.69</Version>
<Comment>Rebuild.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2014-05-11</Date>
<Version>2.69</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-08-27</Date>
<Version>2.69</Version>
<Comment>Clean autoconf.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-07-14</Date>
<Version>2.69</Version>
<Comment>First release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>autoconf</Name>
</Source>
<Source>
<Name>autoconf</Name>
<Summary xml:lang="es">Usado para crear archivos de autoconfiguración</Summary>
<Summary xml:lang="tr">Otomatik yapılandırma dosyaları yaratmakta kullanılan bir araç</Summary>
<Description xml:lang="tr">Yazılım kaynak kodlarını otomatik yapılandırmak için kabuk betikleri hazırlayan m4 makrolarının bir paketidir.</Description>
<Description xml:lang="fr">Utilisé pour créer des fichiers d'autoconfiguration. Autoconf est un paquet extensible de macros m4 pour produire les scripts pour l'interpréteur de commande servant à configurer automatiquement les paquets de code source de logiciels.</Description>
</Source>
</PISI>
+25
View File
@@ -0,0 +1,25 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
autotools.autoreconf("-vfi")
autotools.configure("--disable-static")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.domove("usr/share/pkgconfig/", "/usr/lib/")
pisitools.dodoc("AUTHORS", "ChangeLog", "COPYING", "NEWS", "README", "THANKS", "TODO", "VERSION")
+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>autogen</Name>
<Homepage>http://www.gnu.org/software/autogen</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv3</License>
<IsA>app:console</IsA>
<Summary>The automated text and program generation tool</Summary>
<Description>autogen is a tool designed to simplify the creation and maintenance of programs that contain large amounts of repetitious text.</Description>
<Archive sha1sum="3d5aa8d99742e92098bb438c684bee5e978a8dd7" type="tarxz">ftp://ftp.gnu.org/gnu/autogen/rel5.18.4/autogen-5.18.4.tar.xz</Archive>
<BuildDependencies>
<Dependency>guile-devel</Dependency>
<Dependency>libxml2-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>autogen</Name>
<RuntimeDependencies>
<Dependency>guile</Dependency>
<Dependency>libxml2</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="data">/usr/share/autogen</Path>
</Files>
</Package>
<Package>
<Name>autogen-devel</Name>
<Summary>Development files for autogen</Summary>
<RuntimeDependencies>
<Dependency release="current">autogen</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="man">/usr/share/man/man3</Path>
<Path fileType="executable">/usr/bin/autoopts-config</Path>
<Path fileType="man">/usr/share/man/man1/autoopts-config.1</Path>
</Files>
</Package>
<History>
<Update release="7">
<Date>2014-11-23</Date>
<Version>5.18.4</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-05-24</Date>
<Version>5.18</Version>
<Comment>Rebuild for gcc.</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-05-11</Date>
<Version>5.18</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>5.18</Version>
<Comment>Clean autogen.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-22</Date>
<Version>5.18</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-17</Date>
<Version>5.17.1</Version>
<Comment>New release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-10-04</Date>
<Version>5.16.2</Version>
<Comment>First release</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>autogen</Name>
<Summary xml:lang="tr">Otomatik metin ve program üretme aracı</Summary>
<Summary xml:lang="es">Herramienta para simplificar creación y mantenimiento de programas que contienen muchos textos repetitivos</Summary>
<Description xml:lang="tr">autogen büyük miktarda tekrarlı metin içeren uygulamaların otomatik üretilmesini sağlayan bir araçtır.</Description>
</Source>
<Package>
<Name>autogen-devel</Name>
<Summary xml:lang="tr">autogen için geliştirme dosyaları</Summary>
</Package>
</PISI>
+31
View File
@@ -0,0 +1,31 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
#ver = "1.14"
def setup():
#autotools.autoreconf("-fi")
autotools.configure()
def build():
autotools.make()
#def check():
# autotools.make("check")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
# Use gnuconfig files
# for config in ["config.guess","config.sub"]:
# pisitools.remove("/usr/share/automake-%s/%s" % (ver, config))
# pisitools.dosym("/usr/share/gnuconfig/%s" % config, "/usr/share/automake-%s/%s" % (ver, config))
pisitools.dodoc("NEWS", "README", "THANKS","AUTHORS", "ChangeLog*")
+99
View File
@@ -0,0 +1,99 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>automake</Name>
<Homepage>http://www.gnu.org/software/automake/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2+</License>
<IsA>app:console</IsA>
<Summary>A tool for automatically generating Makefile.in files compliant with the GNU Coding Standards</Summary>
<Description>Automake is a tool for automatically generating Makefile.in files compliant with the GNU Coding Standards.</Description>
<Archive sha1sum="c279b35ca6c410809dac8ade143b805fb48b7655" type="tarxz">mirrors://gnu/automake/automake-1.15.tar.xz</Archive>
<BuildDependencies>
<Dependency>perl</Dependency>
<Dependency>autoconf</Dependency>
<Dependency>gnuconfig</Dependency>
<Dependency>patch</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>automake</Name>
<RuntimeDependencies>
<Dependency>perl</Dependency>
<Dependency>autoconf</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="data">/usr/share/automake-*</Path>
<Path fileType="data">/usr/share/aclocal-*</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2015-01-28</Date>
<Version>1.15</Version>
<Comment>Version bump.</Comment>
<Name>Hakan Yıldız</Name>
<Email>hknyldz93@gmail.com</Email>
</Update>
<Update release="7">
<Date>2014-11-30</Date>
<Version>1.14</Version>
<Comment>Rebuild.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-05-11</Date>
<Version>1.14.1</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-03-30</Date>
<Version>1.14.1</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>1.14</Version>
<Comment>Clean automake.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-22</Date>
<Version>1.14</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>1.13.1</Version>
<Comment>Version bump</Comment>
<Name>Ertan Güven</Name>
<Email>ertan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-08-13</Date>
<Version>1.12.2</Version>
<Comment>First release</Comment>
<Name>Ramazan Utku</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>automake</Name>
<Summary xml:lang="tr">Makefile.am yapılandırma dosyalarından Makefile.in dosyası üreten program</Summary>
<Description xml:lang="tr">Makefile.am yapılandırma dosyalarından GNU kodlama standartlarına uygun Makefile.in dosyası üreten program. Bununla birlikte Autoconf paketini de yüklemelisiniz.</Description>
<Description xml:lang="fr">Automake est un outil de génération automatique de Makefiles compatibles avec les standards de Codage GNU. Vous aurez également besoin d'installer le paquet GNU AutoConf</Description>
</Source>
</PISI>
+83
View File
@@ -0,0 +1,83 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
# linker = "gold"
linker = "ld"
multilib = "--enable-multilib" if get.ARCH() == "x86_64" else ""
# WorkDir = "binutils-2.20.51"
def setup():
# Build binutils with LD_SYMBOLIC_FUNCTIONS=1 and reduce PLT relocations in libfd.so by 84%.
#shelltools.export("LD_SYMBOLIC_FUNCTIONS", "1")
shelltools.system('sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure')
autotools.configure('--enable-shared \
--build=%s \
--enable-threads \
--enable-ld=default \
--enable-gold \
--enable-plugins \
--with-pkgversion="Pisi Linux" \
--with-bugurl=http://bugs.pisilinux.org/ \
%s \
--with-pic \
--disable-nls \
--disable-werror' % (get.HOST(), multilib))
#--enable-targets="i386-linux" \
def build():
autotools.make("configure-host")
autotools.make()
# check fails because of LD_LIBRARY_PATH
#def check():
# autotools.make("check -j1")
def install():
autotools.rawInstall("DESTDIR=%s tooldir=/usr" % get.installDIR())
# Rebuild libbfd.a and libiberty.a with -fPIC
#pisitools.remove("/usr/lib/libbfd.a")
#pisitools.remove("/usr/lib/libiberty.a")
# pisitools.remove("/usr/include/libiberty.h")
autotools.make("-C libiberty clean")
autotools.make('CFLAGS="-fPIC %s" -C libiberty' % get.CFLAGS())
autotools.make("-C bfd clean")
autotools.make('CFLAGS="-fPIC %s" -C bfd' % get.CFLAGS())
pisitools.insinto("/usr/lib", "bfd/libbfd.a")
pisitools.insinto("/usr/lib", "libiberty/libiberty.a")
pisitools.insinto("/usr/include", "include/libiberty.h")
pisitools.insinto("/usr/include", "include/demangle.h")
# Copy plugin-api.h file to build LLVM with LLVM gold plugin
pisitools.insinto("/usr/include", "include/plugin-api.h")
# Prevent programs to link against libbfd and libopcodes dynamically,
# they are changing far too often
pisitools.remove("/usr/lib/libopcodes.so")
pisitools.remove("/usr/lib/libbfd.so")
# Remove libtool files, which reference the .so libs
pisitools.remove("/usr/lib/libopcodes.la")
pisitools.remove("/usr/lib/libbfd.la")
# Remove unneded man , info
unneeded_man={"dlltool.1","nlmconv.1","windres.1","windmc.1"}
for i in unneeded_man:
pisitools.remove("/usr/share/man/man1/%s" %i)
pisitools.remove("/usr/share/info/configure.info")
pisitools.remove("/usr/share/info/standards.info")
@@ -0,0 +1,31 @@
--- binutils-2.24/bfd/srec.c 2013-11-04 16:33:37.000000000 +0100
+++ binutils-2.24-1/bfd/srec.c 2014-10-24 21:46:38.973046641 +0200
@@ -455,7 +455,7 @@
{
file_ptr pos;
char hdr[3];
- unsigned int bytes;
+ unsigned int bytes, min_bytes;
bfd_vma address;
bfd_byte *data;
unsigned char check_sum;
@@ -478,6 +478,19 @@
}
check_sum = bytes = HEX (hdr + 1);
+ min_bytes = 3;
+ if (hdr[0] == '2' || hdr[0] == '8')
+ min_bytes = 4;
+ else if (hdr[0] == '3' || hdr[0] == '7')
+ min_bytes = 5;
+ if (bytes < min_bytes)
+ {
+ (*_bfd_error_handler) (_("%B:%d: byte count %d too small\n"),
+ abfd, lineno, bytes);
+ bfd_set_error (bfd_error_bad_value);
+ goto error_return;
+ }
+
if (bytes * 2 > bufsize)
{
if (buf != NULL)
@@ -0,0 +1,70 @@
diff --git a/bfd/elf.c b/bfd/elf.c
index c884d1d..c8ac826 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -608,9 +608,10 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect)
if (shdr->contents == NULL)
{
_bfd_error_handler
- (_("%B: Corrupt size field in group section header: 0x%lx"), abfd, shdr->sh_size);
+ (_("%B: corrupt size field in group section header: 0x%lx"), abfd, shdr->sh_size);
bfd_set_error (bfd_error_bad_value);
- return FALSE;
+ -- num_group;
+ continue;
}
memset (shdr->contents, 0, amt);
@@ -618,8 +619,17 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect)
if (bfd_seek (abfd, shdr->sh_offset, SEEK_SET) != 0
|| (bfd_bread (shdr->contents, shdr->sh_size, abfd)
!= shdr->sh_size))
- return FALSE;
-
+ {
+ _bfd_error_handler
+ (_("%B: invalid size field in group section header: 0x%lx"), abfd, shdr->sh_size);
+ bfd_set_error (bfd_error_bad_value);
+ -- num_group;
+ /* PR 17510: If the group contents are even partially
+ corrupt, do not allow any of the contents to be used. */
+ memset (shdr->contents, 0, amt);
+ continue;
+ }
+
/* Translate raw contents, a flag word followed by an
array of elf section indices all in target byte order,
to the flag word followed by an array of elf section
@@ -651,6 +661,21 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect)
}
}
}
+
+ /* PR 17510: Corrupt binaries might contain invalid groups. */
+ if (num_group != (unsigned) elf_tdata (abfd)->num_group)
+ {
+ elf_tdata (abfd)->num_group = num_group;
+
+ /* If all groups are invalid then fail. */
+ if (num_group == 0)
+ {
+ elf_tdata (abfd)->group_sect_ptr = NULL;
+ elf_tdata (abfd)->num_group = num_group = -1;
+ (*_bfd_error_handler) (_("%B: no valid group sections found"), abfd);
+ bfd_set_error (bfd_error_bad_value);
+ }
+ }
}
}
@@ -716,6 +741,7 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect)
{
(*_bfd_error_handler) (_("%B: no group info for section %A"),
abfd, newsect);
+ return FALSE;
}
return TRUE;
}
--
1.7.1
@@ -0,0 +1,26 @@
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index 2fb631c..987be40 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -504,6 +504,18 @@ _bfd_XXi_swap_aouthdr_in (bfd * abfd,
{
int idx;
+ /* PR 17512: Corrupt PE binaries can cause seg-faults. */
+ if (a->NumberOfRvaAndSizes > 16)
+ {
+ (*_bfd_error_handler)
+ (_("%B: aout header specifies an invalid number of data-directory entries: %d"),
+ abfd, a->NumberOfRvaAndSizes);
+ /* Paranoia: If the number is corrupt, then assume that the
+ actual entries themselves might be corrupt as well. */
+ a->NumberOfRvaAndSizes = 0;
+ }
+
+
for (idx = 0; idx < a->NumberOfRvaAndSizes; idx++)
{
/* If data directory is empty, rva also should be 0. */
--
1.7.1
@@ -0,0 +1,547 @@
diff --git a/bfd/elf.c b/bfd/elf.c
index c8ac826..3fcf2d8 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1578,38 +1578,67 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
Elf_Internal_Ehdr *ehdr;
const struct elf_backend_data *bed;
const char *name;
+ bfd_boolean ret = TRUE;
+ static bfd_boolean * sections_being_created = NULL;
+ static unsigned int nesting = 0;
if (shindex >= elf_numsections (abfd))
return FALSE;
+ if (++ nesting > 3)
+ {
+ /* PR17512: A corrupt ELF binary might contain a recursive group of
+ sections, each the string indicies pointing to the next in the
+ loop. Detect this here, by refusing to load a section that we are
+ already in the process of loading. We only trigger this test if
+ we have nested at least three sections deep as normal ELF binaries
+ can expect to recurse at least once. */
+
+ if (sections_being_created == NULL)
+ {
+ /* FIXME: It would be more efficient to attach this array to the bfd somehow. */
+ sections_being_created = (bfd_boolean *)
+ bfd_zalloc (abfd, elf_numsections (abfd) * sizeof (bfd_boolean));
+ }
+ if (sections_being_created [shindex])
+ {
+ (*_bfd_error_handler)
+ (_("%B: warning: loop in section dependencies detected"), abfd);
+ return FALSE;
+ }
+ sections_being_created [shindex] = TRUE;
+ }
+
hdr = elf_elfsections (abfd)[shindex];
ehdr = elf_elfheader (abfd);
name = bfd_elf_string_from_elf_section (abfd, ehdr->e_shstrndx,
hdr->sh_name);
if (name == NULL)
- return FALSE;
+ goto fail;
bed = get_elf_backend_data (abfd);
switch (hdr->sh_type)
{
case SHT_NULL:
/* Inactive section. Throw it away. */
- return TRUE;
+ goto success;
- case SHT_PROGBITS: /* Normal section with contents. */
- case SHT_NOBITS: /* .bss section. */
- case SHT_HASH: /* .hash section. */
- case SHT_NOTE: /* .note section. */
+ case SHT_PROGBITS: /* Normal section with contents. */
+ case SHT_NOBITS: /* .bss section. */
+ case SHT_HASH: /* .hash section. */
+ case SHT_NOTE: /* .note section. */
case SHT_INIT_ARRAY: /* .init_array section. */
case SHT_FINI_ARRAY: /* .fini_array section. */
case SHT_PREINIT_ARRAY: /* .preinit_array section. */
case SHT_GNU_LIBLIST: /* .gnu.liblist section. */
case SHT_GNU_HASH: /* .gnu.hash section. */
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
case SHT_DYNAMIC: /* Dynamic linking information. */
if (! _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex))
- return FALSE;
+ goto fail;
+
if (hdr->sh_link > elf_numsections (abfd))
{
/* PR 10478: Accept Solaris binaries with a sh_link
@@ -1623,11 +1652,11 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
break;
/* Otherwise fall through. */
default:
- return FALSE;
+ goto fail;
}
}
else if (elf_elfsections (abfd)[hdr->sh_link] == NULL)
- return FALSE;
+ goto fail;
else if (elf_elfsections (abfd)[hdr->sh_link]->sh_type != SHT_STRTAB)
{
Elf_Internal_Shdr *dynsymhdr;
@@ -1656,24 +1685,26 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
}
}
}
- break;
+ goto success;
- case SHT_SYMTAB: /* A symbol table */
+ case SHT_SYMTAB: /* A symbol table. */
if (elf_onesymtab (abfd) == shindex)
- return TRUE;
+ goto success;
if (hdr->sh_entsize != bed->s->sizeof_sym)
- return FALSE;
+ goto fail;
+
if (hdr->sh_info * hdr->sh_entsize > hdr->sh_size)
{
if (hdr->sh_size != 0)
- return FALSE;
+ goto fail;
/* Some assemblers erroneously set sh_info to one with a
zero sh_size. ld sees this as a global symbol count
of (unsigned) -1. Fix it here. */
hdr->sh_info = 0;
- return TRUE;
+ goto success;
}
+
BFD_ASSERT (elf_onesymtab (abfd) == 0);
elf_onesymtab (abfd) = shindex;
elf_tdata (abfd)->symtab_hdr = *hdr;
@@ -1690,7 +1721,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
&& (abfd->flags & DYNAMIC) != 0
&& ! _bfd_elf_make_section_from_shdr (abfd, hdr, name,
shindex))
- return FALSE;
+ goto fail;
/* Go looking for SHT_SYMTAB_SHNDX too, since if there is one we
can't read symbols without that section loaded as well. It
@@ -1716,26 +1747,29 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
break;
}
if (i != shindex)
- return bfd_section_from_shdr (abfd, i);
+ ret = bfd_section_from_shdr (abfd, i);
}
- return TRUE;
+ goto success;
- case SHT_DYNSYM: /* A dynamic symbol table */
+ case SHT_DYNSYM: /* A dynamic symbol table. */
if (elf_dynsymtab (abfd) == shindex)
- return TRUE;
+ goto success;
if (hdr->sh_entsize != bed->s->sizeof_sym)
- return FALSE;
+ goto fail;
+
if (hdr->sh_info * hdr->sh_entsize > hdr->sh_size)
{
if (hdr->sh_size != 0)
- return FALSE;
+ goto fail;
+
/* Some linkers erroneously set sh_info to one with a
zero sh_size. ld sees this as a global symbol count
of (unsigned) -1. Fix it here. */
hdr->sh_info = 0;
- return TRUE;
+ goto success;
}
+
BFD_ASSERT (elf_dynsymtab (abfd) == 0);
elf_dynsymtab (abfd) = shindex;
elf_tdata (abfd)->dynsymtab_hdr = *hdr;
@@ -1744,34 +1778,38 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
/* Besides being a symbol table, we also treat this as a regular
section, so that objcopy can handle it. */
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
- case SHT_SYMTAB_SHNDX: /* Symbol section indices when >64k sections */
+ case SHT_SYMTAB_SHNDX: /* Symbol section indices when >64k sections. */
if (elf_symtab_shndx (abfd) == shindex)
- return TRUE;
+ goto success;
BFD_ASSERT (elf_symtab_shndx (abfd) == 0);
elf_symtab_shndx (abfd) = shindex;
elf_tdata (abfd)->symtab_shndx_hdr = *hdr;
elf_elfsections (abfd)[shindex] = &elf_tdata (abfd)->symtab_shndx_hdr;
- return TRUE;
+ goto success;
- case SHT_STRTAB: /* A string table */
+ case SHT_STRTAB: /* A string table. */
if (hdr->bfd_section != NULL)
- return TRUE;
+ goto success;
+
if (ehdr->e_shstrndx == shindex)
{
elf_tdata (abfd)->shstrtab_hdr = *hdr;
elf_elfsections (abfd)[shindex] = &elf_tdata (abfd)->shstrtab_hdr;
- return TRUE;
+ goto success;
}
+
if (elf_elfsections (abfd)[elf_onesymtab (abfd)]->sh_link == shindex)
{
symtab_strtab:
elf_tdata (abfd)->strtab_hdr = *hdr;
elf_elfsections (abfd)[shindex] = &elf_tdata (abfd)->strtab_hdr;
- return TRUE;
+ goto success;
}
+
if (elf_elfsections (abfd)[elf_dynsymtab (abfd)]->sh_link == shindex)
{
dynsymtab_strtab:
@@ -1780,8 +1818,9 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
elf_elfsections (abfd)[shindex] = hdr;
/* We also treat this as a regular section, so that objcopy
can handle it. */
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name,
- shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name,
+ shindex);
+ goto success;
}
/* If the string table isn't one of the above, then treat it as a
@@ -1799,9 +1838,9 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
{
/* Prevent endless recursion on broken objects. */
if (i == shindex)
- return FALSE;
+ goto fail;
if (! bfd_section_from_shdr (abfd, i))
- return FALSE;
+ goto fail;
if (elf_onesymtab (abfd) == i)
goto symtab_strtab;
if (elf_dynsymtab (abfd) == i)
@@ -1809,7 +1848,8 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
}
}
}
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
case SHT_REL:
case SHT_RELA:
@@ -1824,7 +1864,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
if (hdr->sh_entsize
!= (bfd_size_type) (hdr->sh_type == SHT_REL
? bed->s->sizeof_rel : bed->s->sizeof_rela))
- return FALSE;
+ goto fail;
/* Check for a bogus link to avoid crashing. */
if (hdr->sh_link >= num_sec)
@@ -1832,8 +1872,9 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
((*_bfd_error_handler)
(_("%B: invalid link %lu for reloc section %s (index %u)"),
abfd, hdr->sh_link, name, shindex));
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name,
- shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name,
+ shindex);
+ goto success;
}
/* For some incomprehensible reason Oracle distributes
@@ -1874,7 +1915,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
if ((elf_elfsections (abfd)[hdr->sh_link]->sh_type == SHT_SYMTAB
|| elf_elfsections (abfd)[hdr->sh_link]->sh_type == SHT_DYNSYM)
&& ! bfd_section_from_shdr (abfd, hdr->sh_link))
- return FALSE;
+ goto fail;
/* If this reloc section does not use the main symbol table we
don't treat it as a reloc section. BFD can't adequately
@@ -1889,14 +1930,18 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
|| hdr->sh_info >= num_sec
|| elf_elfsections (abfd)[hdr->sh_info]->sh_type == SHT_REL
|| elf_elfsections (abfd)[hdr->sh_info]->sh_type == SHT_RELA)
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name,
- shindex);
+ {
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name,
+ shindex);
+ goto success;
+ }
if (! bfd_section_from_shdr (abfd, hdr->sh_info))
- return FALSE;
+ goto fail;
+
target_sect = bfd_section_from_elf_index (abfd, hdr->sh_info);
if (target_sect == NULL)
- return FALSE;
+ goto fail;
esdt = elf_section_data (target_sect);
if (hdr->sh_type == SHT_RELA)
@@ -1908,7 +1953,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
amt = sizeof (*hdr2);
hdr2 = (Elf_Internal_Shdr *) bfd_alloc (abfd, amt);
if (hdr2 == NULL)
- return FALSE;
+ goto fail;
*hdr2 = *hdr;
*p_hdr = hdr2;
elf_elfsections (abfd)[shindex] = hdr2;
@@ -1924,34 +1969,40 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
target_sect->use_rela_p = 1;
}
abfd->flags |= HAS_RELOC;
- return TRUE;
+ goto success;
}
case SHT_GNU_verdef:
elf_dynverdef (abfd) = shindex;
elf_tdata (abfd)->dynverdef_hdr = *hdr;
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
case SHT_GNU_versym:
if (hdr->sh_entsize != sizeof (Elf_External_Versym))
- return FALSE;
+ goto fail;
+
elf_dynversym (abfd) = shindex;
elf_tdata (abfd)->dynversym_hdr = *hdr;
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
case SHT_GNU_verneed:
elf_dynverref (abfd) = shindex;
elf_tdata (abfd)->dynverref_hdr = *hdr;
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
case SHT_SHLIB:
- return TRUE;
+ goto success;
case SHT_GROUP:
if (! IS_VALID_GROUP_SECTION_HEADER (hdr, GRP_ENTRY_SIZE))
- return FALSE;
+ goto fail;
+
if (!_bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex))
- return FALSE;
+ goto fail;
+
if (hdr->contents != NULL)
{
Elf_Internal_Group *idx = (Elf_Internal_Group *) hdr->contents;
@@ -1977,7 +2028,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
}
}
}
- break;
+ goto success;
default:
/* Possibly an attributes section. */
@@ -1985,14 +2036,14 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
|| hdr->sh_type == bed->obj_attrs_section_type)
{
if (! _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex))
- return FALSE;
+ goto fail;
_bfd_elf_parse_attributes (abfd, hdr);
- return TRUE;
+ goto success;
}
/* Check for any processor-specific section types. */
if (bed->elf_backend_section_from_shdr (abfd, hdr, name, shindex))
- return TRUE;
+ goto success;
if (hdr->sh_type >= SHT_LOUSER && hdr->sh_type <= SHT_HIUSER)
{
@@ -2004,9 +2055,12 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
"specific section `%s' [0x%8x]"),
abfd, name, hdr->sh_type);
else
- /* Allow sections reserved for applications. */
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name,
- shindex);
+ {
+ /* Allow sections reserved for applications. */
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name,
+ shindex);
+ goto success;
+ }
}
else if (hdr->sh_type >= SHT_LOPROC
&& hdr->sh_type <= SHT_HIPROC)
@@ -2027,8 +2081,11 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
"`%s' [0x%8x]"),
abfd, name, hdr->sh_type);
else
- /* Otherwise it should be processed. */
- return _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ {
+ /* Otherwise it should be processed. */
+ ret = _bfd_elf_make_section_from_shdr (abfd, hdr, name, shindex);
+ goto success;
+ }
}
else
/* FIXME: We should handle this section. */
@@ -2036,10 +2093,17 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
(_("%B: don't know how to handle section `%s' [0x%8x]"),
abfd, name, hdr->sh_type);
- return FALSE;
+ goto fail;
}
- return TRUE;
+ fail:
+ ret = FALSE;
+ success:
+ if (sections_being_created)
+ sections_being_created [shindex] = FALSE;
+ if (-- nesting == 0)
+ sections_being_created = NULL;
+ return ret;
}
/* Return the local symbol specified by ABFD, R_SYMNDX. */
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index 987be40..c7d6067 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -1705,7 +1705,12 @@ pe_print_edata (bfd * abfd, void * vfile)
_("\nExport Address Table -- Ordinal Base %ld\n"),
edt.base);
- for (i = 0; i < edt.num_functions; ++i)
+ /* PR 17512: Handle corrupt PE binaries. */
+ if (edt.eat_addr + (edt.num_functions * 4) - adj >= datasize)
+ fprintf (file, _("\tInvalid Export Address Table rva (0x%lx) or entry count (0x%lx)\n"),
+ (long) edt.eat_addr,
+ (long) edt.num_functions);
+ else for (i = 0; i < edt.num_functions; ++i)
{
bfd_vma eat_member = bfd_get_32 (abfd,
data + edt.eat_addr + (i * 4) - adj);
@@ -1741,7 +1746,16 @@ pe_print_edata (bfd * abfd, void * vfile)
fprintf (file,
_("\n[Ordinal/Name Pointer] Table\n"));
- for (i = 0; i < edt.num_names; ++i)
+ /* PR 17512: Handle corrupt PE binaries. */
+ if (edt.npt_addr + (edt.num_names * 4) - adj >= datasize)
+ fprintf (file, _("\tInvalid Name Pointer Table rva (0x%lx) or entry count (0x%lx)\n"),
+ (long) edt.npt_addr,
+ (long) edt.num_names);
+ else if (edt.ot_addr + (edt.num_names * 2) - adj >= datasize)
+ fprintf (file, _("\tInvalid Ordinal Table rva (0x%lx) or entry count (0x%lx)\n"),
+ (long) edt.ot_addr,
+ (long) edt.num_names);
+ else for (i = 0; i < edt.num_names; ++i)
{
bfd_vma name_ptr = bfd_get_32 (abfd,
data +
diff --git a/bfd/elf.c b/bfd/elf.c
index 949221f..b5fc84b 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1580,6 +1580,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
const char *name;
bfd_boolean ret = TRUE;
static bfd_boolean * sections_being_created = NULL;
+ static bfd * sections_being_created_abfd = NULL;
static unsigned int nesting = 0;
if (shindex >= elf_numsections (abfd))
@@ -1592,13 +1593,19 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
loop. Detect this here, by refusing to load a section that we are
already in the process of loading. We only trigger this test if
we have nested at least three sections deep as normal ELF binaries
- can expect to recurse at least once. */
-
+ can expect to recurse at least once.
+
+ FIXME: It would be better if this array was attached to the bfd,
+ rather than being held in a static pointer. */
+
+ if (sections_being_created_abfd != abfd)
+ sections_being_created = NULL;
if (sections_being_created == NULL)
{
/* FIXME: It would be more efficient to attach this array to the bfd somehow. */
sections_being_created = (bfd_boolean *)
bfd_zalloc (abfd, elf_numsections (abfd) * sizeof (bfd_boolean));
+ sections_being_created_abfd = abfd;
}
if (sections_being_created [shindex])
{
@@ -2102,7 +2109,10 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
if (sections_being_created)
sections_being_created [shindex] = FALSE;
if (-- nesting == 0)
- sections_being_created = NULL;
+ {
+ sections_being_created = NULL;
+ sections_being_created_abfd = abfd;
+ }
return ret;
}
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index 6129085..1a5cb31 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -1611,6 +1611,15 @@ pe_print_edata (bfd * abfd, void * vfile)
}
}
+ /* PR 17512: Handle corrupt PE binaries. */
+ if (datasize < 36)
+ {
+ fprintf (file,
+ _("\nThere is an export table in %s, but it is too small (%d)\n"),
+ section->name, (int) datasize);
+ return TRUE;
+ }
+
fprintf (file, _("\nThere is an export table in %s at 0x%lx\n"),
section->name, (unsigned long) addr);
--
1.7.1
@@ -0,0 +1,16 @@
diff --git a/bfd/ihex.c b/bfd/ihex.c
index 8d3590d..9b3b813 100644
--- a/bfd/ihex.c
+++ b/bfd/ihex.c
@@ -321,7 +321,7 @@ ihex_scan (bfd *abfd)
{
if (! ISHEX (buf[i]))
{
- ihex_bad_byte (abfd, lineno, hdr[i], error);
+ ihex_bad_byte (abfd, lineno, buf[i], error);
goto error_return;
}
}
--
1.7.1
@@ -0,0 +1,50 @@
diff --git a/bfd/elf.c b/bfd/elf.c
index 3fcf2d8..949221f 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -629,7 +629,7 @@ setup_group (bfd *abfd, Elf_Internal_Shdr *hdr, asection *newsect)
memset (shdr->contents, 0, amt);
continue;
}
-
+
/* Translate raw contents, a flag word followed by an
array of elf section indices all in target byte order,
to the flag word followed by an array of elf section
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index c7d6067..6129085 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -515,7 +515,6 @@ _bfd_XXi_swap_aouthdr_in (bfd * abfd,
a->NumberOfRvaAndSizes = 0;
}
-
for (idx = 0; idx < a->NumberOfRvaAndSizes; idx++)
{
/* If data directory is empty, rva also should be 0. */
diff --git a/bfd/srec.c b/bfd/srec.c
index 9ed2080..5f9a546 100644
--- a/bfd/srec.c
+++ b/bfd/srec.c
@@ -246,7 +246,7 @@ srec_bad_byte (bfd *abfd,
}
else
{
- char buf[10];
+ char buf[40];
if (! ISPRINT (c))
sprintf (buf, "\\%03o", (unsigned int) c);
@@ -452,7 +452,7 @@ srec_scan (bfd *abfd)
case 'S':
{
file_ptr pos;
- char hdr[3];
+ unsigned char hdr[3];
unsigned int bytes, min_bytes;
bfd_vma address;
bfd_byte *data;
--
1.7.1
@@ -0,0 +1,128 @@
diff --git a/binutils/ar.c b/binutils/ar.c
index ebd9528..117826d 100644
--- a/binutils/ar.c
+++ b/binutils/ar.c
@@ -1034,6 +1034,15 @@ extract_file (bfd *abfd)
bfd_size_type size;
struct stat buf;
+ /* PR binutils/17533: Do not allow directory traversal
+ outside of the current directory tree. */
+ if (! is_valid_archive_path (bfd_get_filename (abfd)))
+ {
+ non_fatal (_("illegal pathname found in archive member: %s"),
+ bfd_get_filename (abfd));
+ return;
+ }
+
if (bfd_stat_arch_elt (abfd, &buf) != 0)
/* xgettext:c-format */
fatal (_("internal stat error on %s"), bfd_get_filename (abfd));
diff --git a/binutils/bucomm.c b/binutils/bucomm.c
index fd73070..b8deff5 100644
--- a/binutils/bucomm.c
+++ b/binutils/bucomm.c
@@ -624,3 +624,29 @@ bfd_get_archive_filename (const bfd *abfd)
bfd_get_filename (abfd));
return buf;
}
+
+/* Returns TRUE iff PATHNAME, a filename of an archive member,
+ is valid for writing. For security reasons absolute paths
+ and paths containing /../ are not allowed. See PR 17533. */
+
+bfd_boolean
+is_valid_archive_path (char const * pathname)
+{
+ const char * n = pathname;
+
+ if (IS_ABSOLUTE_PATH (n))
+ return FALSE;
+
+ while (*n)
+ {
+ if (*n == '.' && *++n == '.' && ( ! *++n || IS_DIR_SEPARATOR (*n)))
+ return FALSE;
+
+ while (*n && ! IS_DIR_SEPARATOR (*n))
+ n++;
+ while (IS_DIR_SEPARATOR (*n))
+ n++;
+ }
+
+ return TRUE;
+}
diff --git a/binutils/bucomm.h b/binutils/bucomm.h
index a93c378..a71a8fb 100644
--- a/binutils/bucomm.h
+++ b/binutils/bucomm.h
@@ -21,6 +21,8 @@
#ifndef _BUCOMM_H
#define _BUCOMM_H
+/* In bucomm.c. */
+
/* Return the filename in a static buffer. */
const char *bfd_get_archive_filename (const bfd *);
@@ -56,20 +58,22 @@ bfd_vma parse_vma (const char *, const char *);
off_t get_file_size (const char *);
+bfd_boolean is_valid_archive_path (char const *);
+
extern char *program_name;
-/* filemode.c */
+/* In filemode.c. */
void mode_string (unsigned long, char *);
-/* version.c */
+/* In version.c. */
extern void print_version (const char *);
-/* rename.c */
+/* In rename.c. */
extern void set_times (const char *, const struct stat *);
extern int smart_rename (const char *, const char *, int);
-/* libiberty. */
+/* In libiberty. */
void *xmalloc (size_t);
void *xrealloc (void *, size_t);
diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi
index eee77b1..39eb1d2 100644
--- a/binutils/doc/binutils.texi
+++ b/binutils/doc/binutils.texi
@@ -234,7 +234,8 @@ a normal archive. Instead the elements of the first archive are added
individually to the second archive.
The paths to the elements of the archive are stored relative to the
-archive itself.
+archive itself. For security reasons absolute paths and paths with a
+@code{/../} component are not allowed.
@cindex compatibility, @command{ar}
@cindex @command{ar} compatibility
diff --git a/binutils/objcopy.c b/binutils/objcopy.c
index 3b353ad..8454bc6 100644
--- a/binutils/objcopy.c
+++ b/binutils/objcopy.c
@@ -2295,6 +2295,12 @@ copy_archive (bfd *ibfd, bfd *obfd, const char *output_target,
bfd_boolean del = TRUE;
bfd_boolean ok_object;
+ /* PR binutils/17533: Do not allow directory traversal
+ outside of the current directory tree by archive members. */
+ if (! is_valid_archive_path (bfd_get_filename (this_element)))
+ fatal (_("illegal pathname found in archive member: %s"),
+ bfd_get_filename (this_element));
+
/* Create an output file for this member. */
output_name = concat (dir, "/",
bfd_get_filename (this_element), (char *) 0);
--
1.7.1
@@ -0,0 +1,48 @@
diff --git a/bfd/archive.c b/bfd/archive.c
index 40a3395..b905213 100644
--- a/bfd/archive.c
+++ b/bfd/archive.c
@@ -1293,6 +1293,9 @@ _bfd_slurp_extended_name_table (bfd *abfd)
amt = namedata->parsed_size;
if (amt + 1 == 0)
goto byebye;
+ /* PR binutils/17533: A corrupt archive can contain an invalid size. */
+ if (amt > (bfd_size_type) bfd_get_size (abfd))
+ goto byebye;
bfd_ardata (abfd)->extended_names_size = amt;
bfd_ardata (abfd)->extended_names = (char *) bfd_zalloc (abfd, amt + 1);
@@ -1300,6 +1303,8 @@ _bfd_slurp_extended_name_table (bfd *abfd)
{
byebye:
free (namedata);
+ bfd_ardata (abfd)->extended_names = NULL;
+ bfd_ardata (abfd)->extended_names_size = 0;
return FALSE;
}
@@ -1308,7 +1313,6 @@ _bfd_slurp_extended_name_table (bfd *abfd)
if (bfd_get_error () != bfd_error_system_call)
bfd_set_error (bfd_error_malformed_archive);
bfd_release (abfd, (bfd_ardata (abfd)->extended_names));
- bfd_ardata (abfd)->extended_names = NULL;
goto byebye;
}
@@ -1316,11 +1320,12 @@ _bfd_slurp_extended_name_table (bfd *abfd)
text, the entries in the list are newline-padded, not null
padded. In SVR4-style archives, the names also have a
trailing '/'. DOS/NT created archive often have \ in them
- We'll fix all problems here.. */
+ We'll fix all problems here. */
{
char *ext_names = bfd_ardata (abfd)->extended_names;
char *temp = ext_names;
char *limit = temp + namedata->parsed_size;
+
for (; temp < limit; ++temp)
{
if (*temp == ARFMAG[1])
--
1.7.1
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,78 @@
index c5249f0..69946de 100644
--- a/ld/testsuite/ld-plugin/lto.exp
+++ b/ld/testsuite/ld-plugin/lto.exp
@@ -57,7 +57,7 @@ set lto_link_tests {
"" "-O2"
{lto-3c.c} {} "libdummy.a"}
{"Build liblto-3.a"
- "" "-flto"
+ "" "-flto -ffat-lto-objects"
{lto-3b.c} {} "liblto-3.a"}
{"Build libdummy.a 5a"
"" "-flto"
@@ -111,7 +111,7 @@ set lto_link_tests {
"" ""
{pr12758a.s} {} "libdummy.a"}
{"Build libpr12758.a"
- "" "-flto -O2"
+ "" "-flto -O2 -ffat-lto-objects"
{pr12758b.c} {} "libpr12758.a"}
{"PR ld/12758"
"-O2 -Wl,-e,foo -nostdlib -flto -fuse-linker-plugin tmpdir/pr12758a.o -Wl,--start-group tmpdir/libpr12758.a -Wl,--end-group" ""
@@ -120,13 +120,13 @@ set lto_link_tests {
"" ""
{pr12760a.c} {} "libdummy.a"}
{"Build libpr12760.a"
- "" "-flto -O2"
+ "" "-flto -O2 -ffat-lto-objects"
{pr12760b.c} {} "libpr12760.a"}
{"PR ld/12760"
"-O2 -Wl,-e,foo -nostdlib -flto -fuse-linker-plugin tmpdir/pr12760a.o -Wl,--start-group tmpdir/libpr12760.a -Wl,--end-group" ""
{dummy.c} {} "pr12760.exe" "c" "warning: Bad bar"}
{"Build libpr13183.a"
- "-T" "-flto -O2"
+ "-T" "-flto -O2 -ffat-lto-objects"
{pr13183a.c} {} "libpr13183.a"}
{"Build libdummy.a PR ld/13183"
"" "-flto -O2"
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index 8df42ae..175449a 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -1643,7 +1643,7 @@ proc check_lto_available { } {
set f [open $src "w"]
puts $f ""
close $f
- set status [remote_exec host $CC "-shared -B[pwd]/tmpdir/ld/ -flto -fuse-linker-plugin $src -o $output"]
+ set status [remote_exec host $CC "-shared -B[pwd]/tmpdir/ld/ -flto -ffat-lto-objects -fuse-linker-plugin $src -o $output"]
if { [lindex $status 0] == 0 } {
set lto_available_saved 1
} else {
diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
index b14f13c..765d85f 100644
--- a/ld/testsuite/ld-plugin/lto.exp
+++ b/ld/testsuite/ld-plugin/lto.exp
@@ -324,7 +324,20 @@ if { [is_elf_format] && [check_lto_shared_available] } {
set testname "Build liblto-11.a"
remote_file host delete "tmpdir/liblto-11.a"
-set catch_output [run_host_cmd "$ar" "rc tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"]
+set plugin_names {
+ liblto_plugin.so
+ liblto_plugin-0.dll
+ cyglto_plugin-0.dll
+}
+set plug_opt ""
+foreach plug $plugin_names {
+ set plug_so [run_host_cmd $CC "--print-prog-name $plug"]
+ if { $plug_so ne $plug } then {
+ set plug_opt "--plugin $plug_so"
+ break
+ }
+}
+set catch_output [run_host_cmd "$ar" "rc $plug_opt tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"]
if {![string match "" $catch_output]} {
unresolved $testname
restore_notify
@@ -0,0 +1,99 @@
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 9a2fe89..13f86f0 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1480,6 +1480,8 @@ gld${EMULATION_NAME}_before_allocation (void)
const char *rpath;
asection *sinterp;
bfd *abfd;
+ struct elf_link_hash_entry *ehdr_start = NULL;
+ struct bfd_link_hash_entry ehdr_start_save;
if (is_elf_hash_table (link_info.hash))
{
@@ -1504,6 +1506,16 @@ gld${EMULATION_NAME}_before_allocation (void)
_bfd_elf_link_hash_hide_symbol (&link_info, h, TRUE);
if (ELF_ST_VISIBILITY (h->other) != STV_INTERNAL)
h->other = (h->other & ~ELF_ST_VISIBILITY (-1)) | STV_HIDDEN;
+ /* Don't leave the symbol undefined. Undefined hidden
+ symbols typically won't have dynamic relocations, but
+ we most likely will need dynamic relocations for
+ __ehdr_start if we are building a PIE or shared
+ library. */
+ ehdr_start = h;
+ ehdr_start_save = h->root;
+ h->root.type = bfd_link_hash_defined;
+ h->root.u.def.section = bfd_abs_section_ptr;
+ h->root.u.def.value = 0;
}
}
@@ -1620,6 +1632,14 @@ ${ELF_INTERPRETER_SET_DEFAULT}
if (!bfd_elf_size_dynsym_hash_dynstr (link_info.output_bfd, &link_info))
einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+
+ if (ehdr_start != NULL)
+ {
+ /* If we twiddled __ehdr_start to defined earlier, put it back
+ as it was. */
+ ehdr_start->root.type = ehdr_start_save.type;
+ ehdr_start->root.u = ehdr_start_save.u;
+ }
}
EOF
diff --git a/ld/testsuite/ld-elf/ehdr_start-shared.d b/ld/testsuite/ld-elf/ehdr_start-shared.d
new file mode 100644
index 0000000..c17516a
--- /dev/null
+++ b/ld/testsuite/ld-elf/ehdr_start-shared.d
@@ -0,0 +1,9 @@
+#source: ehdr_start.s
+#ld: -e _start -shared
+#nm: -n
+#target: *-*-linux* *-*-gnu* *-*-nacl*
+#xfail: cris*-*-* frv-*-*
+
+#...
+[0-9a-f]*000 [Adrt] __ehdr_start
+#pass
diff --git a/ld/testsuite/ld-elf/ehdr_start-userdef.d b/ld/testsuite/ld-elf/ehdr_start-userdef.d
index 2a88e98..b58ae3f 100644
--- a/ld/testsuite/ld-elf/ehdr_start-userdef.d
+++ b/ld/testsuite/ld-elf/ehdr_start-userdef.d
@@ -2,6 +2,7 @@
#ld: -e _start -T ehdr_start-userdef.t
#readelf: -Ws
#target: *-*-linux* *-*-gnu* *-*-nacl*
+#xfail: frv-*-*
#...
Symbol table '\.symtab' contains [0-9]+ entries:
diff --git a/ld/testsuite/ld-elf/ehdr_start-weak.d b/ld/testsuite/ld-elf/ehdr_start-weak.d
index 8bd9035..24ae34c 100644
--- a/ld/testsuite/ld-elf/ehdr_start-weak.d
+++ b/ld/testsuite/ld-elf/ehdr_start-weak.d
@@ -2,6 +2,7 @@
#ld: -e _start -T ehdr_start-missing.t
#nm: -n
#target: *-*-linux* *-*-gnu* *-*-nacl*
+#xfail: frv-*-*
#...
\s+[wU] __ehdr_start
diff --git a/ld/testsuite/ld-elf/ehdr_start.d b/ld/testsuite/ld-elf/ehdr_start.d
index 52e5b54..d538b66 100644
--- a/ld/testsuite/ld-elf/ehdr_start.d
+++ b/ld/testsuite/ld-elf/ehdr_start.d
@@ -2,6 +2,7 @@
#ld: -e _start
#nm: -n
#target: *-*-linux* *-*-gnu* *-*-nacl*
+#xfail: frv-*-*
#...
[0-9a-f]*000 [Adrt] __ehdr_start
--
1.7.1
@@ -0,0 +1,310 @@
diff -cpr ../binutils-2.24.orig/binutils/config.in binutils/config.in
*** ../binutils-2.24.orig/binutils/config.in 2014-10-31 11:50:20.455222877 +0000
--- binutils/config.in 2014-10-31 11:59:05.021241036 +0000
***************
*** 18,23 ****
--- 18,26 ----
/* Should ar and ranlib use -D behavior by default? */
#undef DEFAULT_AR_DETERMINISTIC
+ /* Should strings use -a behavior by default? */
+ #undef DEFAULT_STRINGS_ALL
+
/* Define to 1 if translation of program messages to the user's native
language is requested. */
#undef ENABLE_NLS
diff -cpr ../binutils-2.24.orig/binutils/configure binutils/configure
*** ../binutils-2.24.orig/binutils/configure 2014-10-31 11:50:20.590223736 +0000
--- binutils/configure 2014-10-31 12:01:46.570102643 +0000
*************** with_gnu_ld
*** 772,777 ****
--- 772,778 ----
enable_libtool_lock
enable_targets
enable_deterministic_archives
+ enable_default_strings_all
enable_werror
enable_build_warnings
enable_nls
*************** Optional Features:
*** 1421,1426 ****
--- 1422,1429 ----
--enable-targets alternative target configurations
--enable-deterministic-archives
ar and ranlib default to -D behavior
+ --disable-default-strings-all
+ strings defaults to --data behavior
--enable-werror treat compile warnings as errors
--enable-build-warnings enable build-time compiler warnings
--disable-nls do not use Native Language Support
*************** cat >>confdefs.h <<_ACEOF
*** 11615,11620 ****
--- 11594,11618 ----
_ACEOF
+ # Check whether --enable-default-strings-all was given.
+ if test "${enable_default_strings_all+set}" = set; then :
+ enableval=$enable_default_strings_all;
+ if test "${enableval}" = no; then
+ default_strings_all=0
+ else
+ default_strings_all=1
+ fi
+ else
+ default_strings_all=1
+ fi
+
+
+
+ cat >>confdefs.h <<_ACEOF
+ #define DEFAULT_STRINGS_ALL $default_strings_all
+ _ACEOF
+
+
GCC_WARN_CFLAGS="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
diff -cpr ../binutils-2.24.orig/binutils/configure.in binutils/configure.in
*** ../binutils-2.24.orig/binutils/configure.in 2014-10-31 11:50:20.430222717 +0000
--- binutils/configure.in 2014-10-31 12:00:48.092790946 +0000
*************** fi], [default_ar_deterministic=0])
*** 57,62 ****
--- 57,74 ----
AC_DEFINE_UNQUOTED(DEFAULT_AR_DETERMINISTIC, $default_ar_deterministic,
[Should ar and ranlib use -D behavior by default?])
+ AC_ARG_ENABLE(default-strings-all,
+ [AS_HELP_STRING([--disable-default-strings-all],
+ [strings defaults to --data behavior])], [
+ if test "${enableval}" = no; then
+ default_strings_all=0
+ else
+ default_strings_all=1
+ fi], [default_strings_all=1])
+
+ AC_DEFINE_UNQUOTED(DEFAULT_STRINGS_ALL, $default_strings_all,
+ [Should strings use -a behavior by default?])
+
AM_BINUTILS_WARNINGS
AC_CONFIG_HEADERS(config.h:config.in)
diff -cpr ../binutils-2.24.orig/binutils/doc/binutils.texi binutils/doc/binutils.texi
*** ../binutils-2.24.orig/binutils/doc/binutils.texi 2014-10-31 11:50:20.579223666 +0000
--- binutils/doc/binutils.texi 2014-10-31 11:59:23.052339164 +0000
*************** strings [@option{-afovV}] [@option{-}@va
*** 2653,2667 ****
@c man begin DESCRIPTION strings
! For each @var{file} given, @sc{gnu} @command{strings} prints the printable
! character sequences that are at least 4 characters long (or the number
! given with the options below) and are followed by an unprintable
! character. By default, it only prints the strings from the initialized
! and loaded sections of object files; for other types of files, it prints
! the strings from the whole file.
! @command{strings} is mainly useful for determining the contents of non-text
! files.
@c man end
--- 2653,2676 ----
@c man begin DESCRIPTION strings
! For each @var{file} given, @sc{gnu} @command{strings} prints the
! printable character sequences that are at least 4 characters long (or
! the number given with the options below) and are followed by an
! unprintable character.
!
! Depending upon how the strings program was configured it will default
! to either displaying all the printable sequences that it can find in
! each file, or only those sequences that are in loadable, initialized
! data sections. If the file type in unrecognizable, or if strings is
! reading from stdin then it will always display all of the printable
! sequences that it can find.
!
! For backwards compatibility any file that occurs after a command line
! option of just @option{-} will also be scanned in full, regardless of
! the presence of any @option{-d} option.
! @command{strings} is mainly useful for determining the contents of
! non-text files.
@c man end
*************** files.
*** 2671,2678 ****
@item -a
@itemx --all
@itemx -
! Do not scan only the initialized and loaded sections of object files;
! scan the whole files.
@item -f
@itemx --print-file-name
--- 2680,2704 ----
@item -a
@itemx --all
@itemx -
! Scan the whole file, regardless of what sections it contains or
! whether those sections are loaded or initialized. Normally this is
! the default behaviour, but strings can be configured so that the
! @option{-d} is the default instead.
!
! The @option{-} option is position dependent and forces strings to
! perform full scans of any file that is mentioned after the @option{-}
! on the command line, even if the @option{-d} option has been
! specified.
!
! @item -d
! @itemx --data
! Only print strings from initialized, loaded data sections in the
! file. This may reduce the amount of garbage in the output, but it
! also exposes the strings program to any security flaws that may be
! present in the BFD library used to scan and load sections. Strings
! can be configured so that this option is the default behaviour. In
! such cases the @option{-a} option can be used to avoid using the BFD
! library and instead just print all of the strings found in the file.
@item -f
@itemx --print-file-name
diff -cpr ../binutils-2.24.orig/binutils/NEWS binutils/NEWS
*** ../binutils-2.24.orig/binutils/NEWS 2014-10-31 11:50:20.338222131 +0000
--- binutils/NEWS 2014-10-31 11:59:52.315493579 +0000
***************
*** 1,5 ****
--- 1,10 ----
-*- text -*-
+ * Add --data option to strings to only print strings in loadable, initialized
+ data sections. Change the default behaviour to be --all, but add a new
+ configure time option of --disable-default-strings-all to restore the old
+ default behaviour.
+
Changes in 2.24:
* Objcopy now supports wildcard characters in command line options that take
diff -cpr ../binutils-2.24.orig/binutils/strings.c binutils/strings.c
*** ../binutils-2.24.orig/binutils/strings.c 2014-10-31 11:50:20.464222934 +0000
--- binutils/strings.c 2014-10-31 12:01:33.901035485 +0000
***************
*** 23,29 ****
Options:
--all
-a
! - Do not scan only the initialized data section of object files.
--print-file-name
-f Print the name of the file before each string.
--- 23,32 ----
Options:
--all
-a
! - Scan each file in its entirety.
!
! --data
! -d Scan only the initialized data section(s) of object files.
--print-file-name
-f Print the name of the file before each string.
*************** static int encoding_bytes;
*** 107,112 ****
--- 110,116 ----
static struct option long_options[] =
{
{"all", no_argument, NULL, 'a'},
+ {"data", no_argument, NULL, 'd'},
{"print-file-name", no_argument, NULL, 'f'},
{"bytes", required_argument, NULL, 'n'},
{"radix", required_argument, NULL, 't'},
*************** typedef struct
*** 128,134 ****
static void strings_a_section (bfd *, asection *, void *);
static bfd_boolean strings_object_file (const char *);
! static bfd_boolean strings_file (char *file);
static void print_strings (const char *, FILE *, file_ptr, int, int, char *);
static void usage (FILE *, int);
static long get_char (FILE *, file_ptr *, int *, char **);
--- 132,138 ----
static void strings_a_section (bfd *, asection *, void *);
static bfd_boolean strings_object_file (const char *);
! static bfd_boolean strings_file (char *);
static void print_strings (const char *, FILE *, file_ptr, int, int, char *);
static void usage (FILE *, int);
static long get_char (FILE *, file_ptr *, int *, char **);
*************** main (int argc, char **argv)
*** 158,168 ****
string_min = 4;
print_addresses = FALSE;
print_filenames = FALSE;
! datasection_only = TRUE;
target = NULL;
encoding = 's';
! while ((optc = getopt_long (argc, argv, "afhHn:ot:e:T:Vv0123456789",
long_options, (int *) 0)) != EOF)
{
switch (optc)
--- 162,175 ----
string_min = 4;
print_addresses = FALSE;
print_filenames = FALSE;
! if (DEFAULT_STRINGS_ALL)
! datasection_only = FALSE;
! else
! datasection_only = TRUE;
target = NULL;
encoding = 's';
! while ((optc = getopt_long (argc, argv, "adfhHn:ot:e:T:Vv0123456789",
long_options, (int *) 0)) != EOF)
{
switch (optc)
*************** main (int argc, char **argv)
*** 171,176 ****
--- 178,187 ----
datasection_only = FALSE;
break;
+ case 'd':
+ datasection_only = TRUE;
+ break;
+
case 'f':
print_filenames = TRUE;
break;
*************** usage (FILE *stream, int status)
*** 635,642 ****
{
fprintf (stream, _("Usage: %s [option(s)] [file(s)]\n"), program_name);
fprintf (stream, _(" Display printable strings in [file(s)] (stdin by default)\n"));
! fprintf (stream, _(" The options are:\n\
-a - --all Scan the entire file, not just the data section\n\
-f --print-file-name Print the name of the file before each string\n\
-n --bytes=[number] Locate & print any NUL-terminated sequence of at\n\
-<number> least [number] characters (default 4).\n\
--- 646,663 ----
{
fprintf (stream, _("Usage: %s [option(s)] [file(s)]\n"), program_name);
fprintf (stream, _(" Display printable strings in [file(s)] (stdin by default)\n"));
! fprintf (stream, _(" The options are:\n"));
!
! if (DEFAULT_STRINGS_ALL)
! fprintf (stream, _("\
! -a - --all Scan the entire file, not just the data section [default]\n\
! -d --data Only scan the data sections in the file\n"));
! else
! fprintf (stream, _("\
-a - --all Scan the entire file, not just the data section\n\
+ -d --data Only scan the data sections in the file [default]\n"));
+
+ fprintf (stream, _("\
-f --print-file-name Print the name of the file before each string\n\
-n --bytes=[number] Locate & print any NUL-terminated sequence of at\n\
-<number> least [number] characters (default 4).\n\
Only in binutils: strings.c.rej
+117
View File
@@ -0,0 +1,117 @@
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>binutils</Name>
<Homepage>http://www.gnu.org/software/binutils/</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>Assembler and linker tools</Summary>
<Description>Contains commands like as, ld, nm, objdump, ar, ranlib for compiling assembly code to the machine language, and for linking and manipulating the binary object files.</Description>
<Archive sha1sum="7ac75404ddb3c4910c7594b51ddfc76d4693debb" type="tarbz2">http://ftp.gnu.org/gnu/binutils/binutils-2.24.tar.bz2</Archive>
<Patches>
<Patch>binutils-2.24-lto-testsuite.patch</Patch>
<Patch>binutils-2.24-gold-testsuite-plugin.patch</Patch>
<Patch>binutils-2.24-shared-pie.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8484.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8485.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8501.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8502.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8503.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8504.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8737.patch</Patch>
<Patch>binutils-2.24-CVE-2014-8738.patch</Patch>
<Patch>binutils-2.24-strings-all-default.patch</Patch>
</Patches>
</Source>
<Package>
<Name>binutils</Name>
<RuntimeDependencies>
<Dependency>zlib</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="header">/usr/include</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="10">
<Date>2014-11-28</Date>
<Version>2.24</Version>
<Comment>Fix CVE issues.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="9">
<Date>2014-09-12</Date>
<Version>2.24</Version>
<Comment>Rebuild for new glibc.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="8">
<Date>2014-09-06</Date>
<Version>2.24</Version>
<Comment>Rebuild for new gcc, add pie and lto testsuite patch.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-14</Date>
<Version>2.24</Version>
<Comment>Add upstream patch.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-04-30</Date>
<Version>2.24</Version>
<Comment>Rebuild for new gcc.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-03-29</Date>
<Version>2.24</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>2.23.2</Version>
<Comment>Back to 2.23.2, cleanup.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-23</Date>
<Version>2.23.52.0.2</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>2.23.51.0.9</Version>
<Comment>New release.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2013-01-16</Date>
<Version>2.23.51.0.8</Version>
<Comment>New toolchain up.</Comment>
<Name>Erdinç Gültekin</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>binutils</Name>
<Summary xml:lang="tr">Makine dili derleme ve bağlama araçları</Summary>
<Description xml:lang="tr">Assembly kodlarını makine diline derlemek, oluşan obje dosyalarını bağlamak ve ikili dosyalar üzerinde işlemler yapmak için kullanılan as, ld, nm, objdump, ar, ranlib gibi komutları içermektedir.</Description>
<Description xml:lang="fr">Contient des commandes telles que as, ld, nm, objdump, ar, ranlib pour compiler du code assembleur en langage machine ainsi que pour chaîner (link) et manipuler les fichiers binaires objets.</Description>
</Source>
</PISI>
+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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
autotools.configure()
def build():
autotools.make()
def check():
#autotools.make("check")
pass
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.rename("/usr/bin/yacc", "yacc.bison")
pisitools.rename("/usr/share/man/man1/yacc.1", "yacc.bison.1")
#pisitools.removeDir("/usr/lib/")
pisitools.dodoc("AUTHORS", "NEWS", "ChangeLog", "README", "COPYING")
+100
View File
@@ -0,0 +1,100 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>bison</Name>
<Homepage>http://www.gnu.org/software/bison/bison.html</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>A yacc-compatible parser generator</Summary>
<Description>A yacc-compatible parser generator. Once you are proficient with Bison, you can use it to develop a wide range of language parsers, from those used in simple desk calculators to complex programming languages</Description>
<Archive sha1sum="aeb1e3544007124009e5203afe86a5676580d444" type="tarxz">mirrors://gnu/bison/bison-3.0.2.tar.xz</Archive>
<BuildDependencies>
<Dependency>m4</Dependency>
<Dependency>gettext</Dependency>
<Dependency>patch</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>bison</Name>
<RuntimeDependencies>
<!-- m4 1.4.16 required?-->
<Dependency>m4</Dependency>
<Dependency>gettext</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="data">/usr/share/bison</Path>
<Path fileType="localedata">/usr/share/locale</Path>
</Files>
</Package>
<History>
<Update release="7">
<Date>2014-09-06</Date>
<Version>3.0.2</Version>
<Comment>Rebuild, fix pspec.xml.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-11</Date>
<Version>3.0.2</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-03-24</Date>
<Version>3.0.2</Version>
<Comment>Version bump</Comment>
<Name>Burak Fazıl Ertürk</Name>
<Email>burakerturk@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-11-18</Date>
<Version>3.0.1</Version>
<Comment>Version bump</Comment>
<Name>Richard de Bruin</Name>
<Email>richdb@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>3.0</Version>
<Comment>Version bump, clean.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-23</Date>
<Version>2.7.1</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>2.7</Version>
<Comment>Version bump</Comment>
<Name>Ertan Güven</Name>
<Email>ertangvn@istanbul.com</Email>
</Update>
<Update release="1">
<Date>2012-10-24</Date>
<Version>2.6.4</Version>
<Comment>First release</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>bison</Name>
<Summary xml:lang="tr">Yacc uyumlu yazım ayrıştırma üreteci</Summary>
<Description xml:lang="tr">Yacc uyumlu yazım ayrıştırma üreteci. Bison'da ustalık kazandığınızda, basit hesap makinalarından, karmaşık programlama dillerine kadar uzanan geniş yazım ayrıştırıcılar geliştirebilirsiniz.</Description>
<Description xml:lang="fr">Un générateur d'analyseur syntaxique compatible avec yacc. Une fois que vous maîtrisez Bison, vous pouvez l'utiliser pour développer des analyseur léxicaux pour un grand nombres de langages, de ceux qui sont utilisés dans les simples calculatrices de bureau aux complexes langages de programmation.</Description>
</Source>
</PISI>
+22
View File
@@ -0,0 +1,22 @@
# -*- 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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
WorkDir = "."
def setup():
pisitools.dosed("main.c", "len + 13", "len + 14")
def build():
autotools.make()
def install():
pisitools.dobin("btyacc")
pisitools.newman("manpage", "btyacc.1")
pisitools.dodoc("README*")
@@ -0,0 +1,10 @@
--- a/mstring.c
+++ b/mstring.c
@@ -1,6 +1,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
+#include <string.h>
#include <ctype.h>
#include "mstring.h"
@@ -0,0 +1,22 @@
Respect CC, append to CFLAGS (but not -g), append to LDFLAGS, use system LD -jer
--- a/Makefile 1999-07-15 19:40:12.000000000 +0200
+++ b/Makefile 2009-09-04 15:27:15.000000000 +0200
@@ -8,14 +8,13 @@
HDRS = defs.h mstring.h
-CFLAGS = -g -Wall -Wstrict-prototypes -Wmissing-prototypes
+CFLAGS += -Wall -Wstrict-prototypes -Wmissing-prototypes
-LDFLAGS = -static
+LDFLAGS += -static
LIBS =
-CC = gcc
-LINKER = gcc
+LINKER = $(CC)
# LINKER = cl
# CC = cl
+54
View File
@@ -0,0 +1,54 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>btyacc</Name>
<Homepage>http://www.siber.com/btyacc</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>freedist</License>
<IsA>app:console</IsA>
<Summary>Backtracking YACC - modified from Berkeley YACC</Summary>
<Description>This is original Berkeley Yacc modified to better fit production environment (and to have less bugs, too).</Description>
<Archive sha1sum="4a70f78d9695fa1101c49ab1cdbfda5ab740c027" type="targz">http://www.siber.com/btyacc/btyacc-3-0.tar.gz</Archive>
<Patches>
<Patch level="1">btyacc-3.0-includes.patch</Patch>
<Patch level="1">btyacc-3.0-makefile.patch</Patch>
</Patches>
</Source>
<Package>
<Name>btyacc</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<History>
<Update release="3">
<Date>2014-05-11</Date>
<Version>3.0</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-11-13</Date>
<Version>3.0</Version>
<Comment>Release bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-10-15</Date>
<Version>3.0</Version>
<Comment>First release</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
</History>
</PISI>
+15
View File
@@ -0,0 +1,15 @@
#!/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 pythonmodules
from pisi.actionsapi import pisitools
def install():
pisitools.dosed("src/core.c", "^#include \<linux\/ptrace\.h\>", deleteLine=True)
pythonmodules.install()
pisitools.dodoc("README", "OKUBENİ")
+67
View File
@@ -0,0 +1,67 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>catbox</Name>
<Homepage>http://pisilinux.org</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>library</IsA>
<Summary>Python sandboxing module</Summary>
<Description>catbox is a Python sandboxing module commonly used by the package management system of PiSi Linux, PiSi.</Description>
<Archive sha1sum="665015a412bec41abf18e6126f2d0fbb6b1c094a" type="targz">https://github.com/baris/catbox/archive/catbox-1.6.1.tar.gz</Archive>
</Source>
<Package>
<Name>catbox</Name>
<RuntimeDependencies>
<Dependency>python</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<History>
<Update release="5">
<Date>2014-05-11</Date>
<Version>1.6.1</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-02-08</Date>
<Version>1.6.1</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-10-22</Date>
<Version>1.6</Version>
<Comment>Rebuild.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-07-24</Date>
<Version>1.6</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2010-10-11</Date>
<Version>1.2</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>catbox</Name>
<Summary xml:lang="tr">Python için sandbox modülü</Summary>
</Source>
</PISI>
+31
View File
@@ -0,0 +1,31 @@
#!/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 shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
def setup():
if shelltools.isDirectory("zlib"):
shelltools.unlinkDir("zlib")
autotools.configure("--prefix=/usr")
def build():
autotools.make()
def check():
autotools.make("check")
def install():
autotools.install()
# Create symlinks
for cc in ("gcc", "g++", "cc", "c++"): # , "clang" , "clang++"
pisitools.dosym("../../../bin/ccache", "/usr/lib/ccache/bin/%s" % cc)
#pisitools.dosym("../../../bin/ccache", "/usr/lib/ccache/bin/%s-%s" % (get.HOST(), cc))
#pisitools.dodoc("LICENSE.txt", "README.txt")
+76
View File
@@ -0,0 +1,76 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>ccache</Name>
<Homepage>http://ccache.samba.org/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv3+</License>
<IsA>app:console</IsA>
<Summary>Fast C/C++ compiler cache</Summary>
<Description>ccache is a compiler cache. It speeds up recompilation of C/C++ code by caching previous compiles and detecting when the same compile is being done.</Description>
<Archive sha1sum="0feaad22c35ecee7c9782ca51a948be69b242114" type="tarxz">http://samba.org/ftp/ccache/ccache-3.2.tar.xz</Archive>
</Source>
<Package>
<Name>ccache</Name>
<RuntimeDependencies>
<Dependency>gcc</Dependency>
<Dependency>zlib</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="executable">/usr/lib/ccache/bin</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="6">
<Date>2014-11-23</Date>
<Version>3.2</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-05-11</Date>
<Version>3.1.9</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-10-22</Date>
<Version>3.1.9</Version>
<Comment>Rebuild.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-08-01</Date>
<Version>3.1.9</Version>
<Comment>Version bump</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>3.1.9</Version>
<Comment>Version bump</Comment>
<Name>Ertan Güven</Name>
<Email>ertan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-12-15</Date>
<Version>3.1.8</Version>
<Comment>First release</Comment>
<Name>canatan</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>ccache</Name>
<Summary xml:lang="tr">Hızlı C/C++ derleme önbelleği</Summary>
<Description xml:lang="tr">ccache bir derleme önbelleğidir. Önceki derlemeleri önbelleğinde saklayıp, aynı derlemelerde bu önbelleği kullanarak C/C++ kodlarının yeniden derlenmelerini hızlandırır.</Description>
<Description xml:lang="fr">Cache de Compilation rapide</Description>
<Summary xml:lang="es">Cache veloz de compilador</Summary>
</Source>
</PISI>
+21
View File
@@ -0,0 +1,21 @@
#!/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 pisitools
from pisi.actionsapi import get
def setup():
autotools.autoreconf("-fi")
autotools.configure()
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("AUTHORS", "ChangeLog*", "NEWS", "README" ,"COPYING")
+11
View File
@@ -0,0 +1,11 @@
diff -ur chrpath-0.13.orig/Makefile.am chrpath-0.13/Makefile.am
--- chrpath-0.13.orig/Makefile.am 2004-09-19 11:29:28.000000000 +0300
+++ chrpath-0.13/Makefile.am 2007-10-09 17:00:06.000000000 +0300
@@ -1,6 +1,6 @@
SUBDIRS = testsuite deb
-docdir = $(prefix)/doc/$(PACKAGE)-$(VERSION)
+docdir = $(prefix)/share/doc/$(PACKAGE)
doc_DATA = AUTHORS COPYING ChangeLog INSTALL NEWS README
+60
View File
@@ -0,0 +1,60 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>chrpath</Name>
<Homepage>http://freshmeat.net/projects/chrpath/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>Change the dynamic library load path (rpath) of binaries</Summary>
<Description>chrpath allows you to modify the dynamic library load path (rpath and runpath) of compiled programs and libraries.</Description>
<Archive sha1sum="174bb38c899229f4c928734b20e730f61191795a" type="targz">http://source.pisilinux.org/1.0/chrpath-0.16.tar.gz</Archive>
<Patches>
<Patch level="1">docdir.patch</Patch>
</Patches>
</Source>
<Package>
<Name>chrpath</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="4">
<Date>2014-05-11</Date>
<Version>0.16</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2014-03-29</Date>
<Version>0.16</Version>
<Comment>Version bump</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-08-28</Date>
<Version>0.13</Version>
<Comment>Clean chrpath</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-07-14</Date>
<Version>0.13</Version>
<Comment>First release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>chrpath</Name>
<Summary xml:lang="tr">Dinamik kitaplık yükleme yolunu (rpath) değiştirme aracı</Summary>
<Description xml:lang="tr">chrpath ile derlenmiş kitaplıkların ve programların dinamik kitaplık yükleme yolunu (rpath ve runpath) değiştirebilirsiniz.</Description>
</Source>
</PISI>
+25
View File
@@ -0,0 +1,25 @@
#!/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 pisitools
from pisi.actionsapi import get
def setup():
autotools.configure("--disable-static \
--enable-shared \
--with-isl=system \
--with-gmp=system \
--with-ppl")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("README*")
File diff suppressed because it is too large Load Diff
+110
View File
@@ -0,0 +1,110 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>cloog</Name>
<Homepage>http://www.cloog.org/</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv2+</License>
<IsA>app:console</IsA>
<IsA>library</IsA>
<Summary>Chunky Loop Generator</Summary>
<Description>cloog is CLooG is a free software and library to generate code for scanning Z-polyhedra. It is used by the GCC Graphite optimization framework.</Description>
<Archive sha1sum="2dc70313e8e2c6610b856d627bce9c9c3f848077" type="targz">http://www.bastoul.net/cloog/pages/download/cloog-0.18.1.tar.gz</Archive>
<BuildDependencies>
<Dependency>gmp-devel</Dependency>
<Dependency>ppl-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">cloog-0.18.1-isl-compat.patch</Patch>
</Patches>
</Source>
<Package>
<Name>cloog</Name>
<RuntimeDependencies>
<Dependency>gmp</Dependency>
<Dependency>isl</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc/cloog/</Path>
<Path fileType="info">/usr/share/info</Path>
</Files>
</Package>
<Package>
<Name>cloog-devel</Name>
<Summary>Development files for cloog</Summary>
<RuntimeDependencies>
<Dependency release="current">cloog</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="header">/usr/lib/pkgconfig/cloog.pc</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2014-09-06</Date>
<Version>0.18.1</Version>
<Comment>Rebuild for new isl and new toolchain.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-11</Date>
<Version>0.18.1</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-03-29</Date>
<Version>0.18.1</Version>
<Comment>Version bump</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-08-27</Date>
<Version>0.18.0</Version>
<Comment>Clean cloog.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-07-26</Date>
<Version>0.18.0</Version>
<Comment>Move pc files to devel pack, rebuild.</Comment>
<Name>Erdinç Gültekin</Name>
<Email>erdincgultekin@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-04-23</Date>
<Version>0.18.0</Version>
<Comment>Dep fixed</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2012-02-16</Date>
<Version>0.18.0</Version>
<Comment>New release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-06-22</Date>
<Version>0.17.0</Version>
<Comment>First release</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
</History>
</PISI>
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>cloog-ppl</Name>
<Summary xml:lang="tr">Parçalı döngü üreticisi</Summary>
<Description xml:lang="tr">cloog-ppl Z-polyhedra taraması için kod üreten, GCC Graphite iyileştirme altyapısı tarafından kullanılan bir yazılım ve kitaplıktır.</Description>
</Source>
<Package>
<Name>cloog-ppl-devel</Name>
<Summary xml:lang="tr">cloog-ppl için geliştirme dosyaları</Summary>
</Package>
</PISI>
+23
View File
@@ -0,0 +1,23 @@
# -*- 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 autotools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
autotools.rawConfigure("--parallel=%s \
--system-libs \
--no-qt-gui \
--prefix=/usr \
--datadir=/share/cmake \
--docdir=/share/doc/cmake \
--mandir=/share/man" % get.makeJOBS().replace("-j", ""))
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
@@ -0,0 +1,26 @@
diff --git a/Modules/FindFreetype.cmake b/Modules/FindFreetype.cmake
index 179dc00..0f5a2b4 100644
--- a/Modules/FindFreetype.cmake
+++ b/Modules/FindFreetype.cmake
@@ -62,10 +62,10 @@ find_path(FREETYPE_INCLUDE_DIR_ft2build ft2build.h
ENV GTKMM_BASEPATH
[HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]
- PATH_SUFFIXES include/freetype2 include
+ PATH_SUFFIXES include/freetype2 include/freetype include
)
-find_path(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
+find_path(FREETYPE_INCLUDE_DIR_freetype2 config/ftheader.h
HINTS
ENV FREETYPE_DIR
PATHS
@@ -76,7 +76,7 @@ find_path(FREETYPE_INCLUDE_DIR_freetype2 freetype/config/ftheader.h
ENV GTKMM_BASEPATH
[HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]
[HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]
- PATH_SUFFIXES include/freetype2 include
+ PATH_SUFFIXES include/freetype2 include/freetype include include/freetype2/freetype
)
find_library(FREETYPE_LIBRARY
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>cmake</Name>
<Homepage>http://www.cmake.org</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>BSD</License>
<IsA>app:console</IsA>
<Summary>Cross-platform, open-source make system</Summary>
<Description>CMake, the cross-platform, open-source make system. CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice.</Description>
<Archive sha1sum="379472e3578902a1d6f8b68a9987773151d6f21a" type="targz">http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz</Archive>
<BuildDependencies>
<Dependency>curl-devel</Dependency>
<Dependency>expat-devel</Dependency>
<Dependency>libarchive-devel</Dependency>
<Dependency>ncurses-devel</Dependency>
<Dependency>zlib-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>cmake</Name>
<RuntimeDependencies>
<Dependency>curl</Dependency>
<Dependency>expat</Dependency>
<Dependency>libarchive</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>ncurses</Dependency>
<Dependency>zlib</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="data">/usr/share/cmake</Path>
<Path fileType="data">/usr/share/aclocal/</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="11">
<Date>2014-12-17</Date>
<Version>3.0.2</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="10">
<Date>2014-08-23</Date>
<Version>3.0.1</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="9">
<Date>2014-05-11</Date>
<Version>2.8.12.2</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="8">
<Date>2014-03-29</Date>
<Version>2.8.12.2</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2013-12-11</Date>
<Version>2.8.12.1</Version>
<Comment>Fix finding freetype issue.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2013-11-24</Date>
<Version>2.8.12.1</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-10-23</Date>
<Version>2.8.12</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-28</Date>
<Version>2.8.11.2</Version>
<Comment>Clean cmake.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-08-01</Date>
<Version>2.8.10.2</Version>
<Comment>Fix deps.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-17</Date>
<Version>2.8.10.2</Version>
<Comment>Version bump</Comment>
<Name>Ertan Güven</Name>
<Email>ertan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-12-01</Date>
<Version>2.8.10</Version>
<Comment>First release</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>cmake</Name>
<Summary xml:lang="tr">Cmake, açık kaynak kodlu ve birden fazla platformda çalışan bir 'make' sistemidir.</Summary>
<Description xml:lang="tr">Cmake, açık kaynak kodlu ve birden fazla platformda çalışan bir 'make' sistemidir. Yazılım derleme sürecini kontrol etmek için kullanılan CMake, derleyici bağımsız yapılandırma dosyalarının oluşturulmasını sağlar.</Description>
<Description xml:lang="fr">CMake, système make open-source et multi-plateforme. CMake est utilisé pour contrôler le processus de compilation de logiciel en utilisant une plate-forme de fichiers de configuration simple et indépendante de compilateur. CMake génère des makefiles et un environnement de travail natifs pouvant être utilisés dans l'environnement du compilateur de votre choix.</Description>
</Source>
</PISI>
+3
View File
@@ -0,0 +1,3 @@
<PISI>
<Name>system.devel</Name>
</PISI>
+72
View File
@@ -0,0 +1,72 @@
#!/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 shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
WorkDir = "%s-%s" % (get.srcNAME(), get.srcVERSION())
WITHSSP = False
XTRA_FIXCFLAGS = "" if WITHSSP else "-fno-stack-protector"
CFLAGS = "%s %s %s" % (get.CFLAGS(),
"-fomit-frame-pointer -fno-exceptions -fno-asynchronous-unwind-tables -Os -g3 -Werror-implicit-function-declaration -Wno-unused -Wno-switch",
XTRA_FIXCFLAGS)
MAKE_FLAGS = "CC=\"%s\" \
CFLAGS=\"%s\" \
PDIET=/usr/lib/dietlibc \
STRIP=:" % (get.CC(), CFLAGS)
MAKE_TEST_FLAGS = "CC=\"%s\" \
CFLAGS=\"%s -fno-builtin\" \
PDIET=/usr/lib/dietlibc \
STRIP=:" % (get.CC(), CFLAGS)
def setup():
shelltools.cd(get.workDIR())
for f, l in [("dietlibc-github-c3f1cf67fcc186bb859e64a085bf98aaa6182a82.patch", 1),
("dietlibc-0.33-biarch.patch", 0)]:
shelltools.move(f, WorkDir)
shelltools.cd(WorkDir)
shelltools.system("patch --remove-empty-files --no-backup-if-mismatch -p%d -i %s" % (l, f))
shelltools.cd("..")
shelltools.cd(WorkDir)
pisitools.dosed("Makefile", "^prefix\?=.*", "prefix=/usr/lib/dietlibc")
pisitools.dosed("Makefile", "^(BINDIR=)[^\/]+(.*)", r"\1/usr\2")
pisitools.dosed("Makefile", "^(MAN1DIR=)[^\/]+(.*)", r"\1/usr/share\2")
pisitools.dosed("dietfeatures.h", "#define (WANT_LARGEFILE_BACKCOMPAT|WANT_VALGRIND_SUPPORT)", deleteLine=True)
if not WITHSSP:
pisitools.dosed("dietfeatures.h", "^(#define WANT_SSP)$", r"// \1")
pisitools.dosed("dietfeatures.h", ".*(#define WANT_STACKGAP).*", r"\1")
def build():
autotools.make("%s all" % MAKE_FLAGS)
# Build tests
# autotools.make("%s -C test all DIET=\"%s/bin-*/diet\" -k" % (MAKE_TEST_FLAGS, get.curDIR()))
# autotools.make("%s -C test/inet all DIET=\"%s/bin-*/diet\"" % (MAKE_TEST_FLAGS, get.curDIR()))
#def check():
# shelltools.cd("test")
# shelltools.chmod("runtests-X.sh", 0755)
# shelltools.system("ulimit -m $[ 128*1024 ] -v $[ 256*1024 ] -d $[ 128*1024 ] -s 512")
# shelltools.system("./runtests-X.sh")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
# Simple wrapper for gcc
host_gcc = "/usr/bin/%s-dietlibc-gcc" % get.HOST()
shelltools.echo("%s%s" % (get.installDIR(), host_gcc), """\
#!/bin/bash
exec /usr/bin/diet %s "$@"
""" % get.CC())
shelltools.chmod("%s%s" % (get.installDIR(), host_gcc), 0755)
pisitools.dosym(host_gcc, "/usr/bin/dietlibc-gcc")
pisitools.dodoc("AUTHOR", "BUGS", "CAVEAT", "CHANGES", "FAQ", "README*", "THANKS", "TODO")
@@ -0,0 +1,117 @@
diff -Naurp dietlibc-0.33.20120825/diet.c~ dietlibc-0.33.20120825/diet.c
--- diet.c~ 2013-11-03 18:56:45.416768005 +0100
+++ diet.c 2013-11-03 18:59:06.785762840 +0100
@@ -71,6 +71,7 @@ int main(int argc,char *argv[]) {
int shared=0;
#endif
char* shortplatform=0;
+ char* shortplatform32=0;
#ifdef WANT_SAFEGUARD
char safeguard1[]="-include";
char* safeguard2;
@@ -187,11 +188,26 @@ int main(int argc,char *argv[]) {
shortplatform="parisc";
#endif
#ifdef __x86_64__
- shortplatform=(m==32?"i386":(m==33?"x32":"x86_64"));
+ shortplatform="x86_64";
+ shortplatform32="i386";
#endif
#ifdef __ia64__
shortplatform="ia64";
#endif
+ /* Check for -m32 on biarch platforms */
+ /* NOTE: though it's wrong to pass both -m32/-m64 flags to
+ * gcc at once, we pick up the last one only */
+ if (shortplatform32) {
+ int i, m64=1;
+ for (i=0; i<argc; ++i) {
+ if (!strcmp(argv[i],"-m32"))
+ m64=0;
+ else if (!strcmp(argv[i],"-m64"))
+ m64=1;
+ }
+ if (!m64)
+ shortplatform=shortplatform32;
+ }
{
char *tmp=platform+strlen(platform);
strcpy(tmp,shortplatform);
diff -Naurp dietlibc-0.33.20120825/Makefile~ dietlibc-0.33.20120825/Makefile
--- Makefile~ 2013-11-03 19:10:57.392736875 +0100
+++ Makefile 2013-11-03 19:15:01.344727962 +0100
@@ -56,6 +56,7 @@ MYARCH=parisc
else
ifeq ($(MYARCH),x86_64)
ARCH=x86_64
+ARCH32=i386
else
ifeq ($(MYARCH),ia64)
ARCH=ia64
@@ -88,15 +89,22 @@ ILIBDIR=$(LIBDIR)-$(ARCH)
HOME=$(shell pwd)
-WHAT= $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o $(OBJDIR)/dyn_stop.o \
+LIBS= $(OBJDIR)/start.o $(OBJDIR)/dyn_start.o $(OBJDIR)/dyn_stop.o \
$(OBJDIR)/dietlibc.a $(OBJDIR)/liblatin1.a \
$(OBJDIR)/libcompat.a $(OBJDIR)/libm.a \
$(OBJDIR)/librpc.a $(OBJDIR)/libpthread.a \
- $(OBJDIR)/libcrypt.a \
- $(OBJDIR)/diet $(OBJDIR)/diet-i $(OBJDIR)/elftrunc \
- $(OBJDIR)/dnsd
+ $(OBJDIR)/libcrypt.a
-all: $(WHAT)
+all: all_32 libs $(OBJDIR)/diet $(OBJDIR)/diet-i
+
+libs: $(LIBS)
+
+ifeq (,$(ARCH32))
+all_32:
+else
+all_32:
+ $(MAKE) MYARCH=$(ARCH32) CC="$(CC) -m32" libs
+endif
profiling: $(OBJDIR)/libgmon.a $(OBJDIR)/pstart.o
@@ -363,17 +371,19 @@ t:
t1:
$(CROSS)$(CC) -g -o t1 t.c
-install-bin: $(OBJDIR)/start.o $(OBJDIR)/dietlibc.a $(OBJDIR)/librpc.a $(OBJDIR)/liblatin1.a $(OBJDIR)/libcompat.a $(OBJDIR)/elftrunc $(OBJDIR)/diet-i
- $(INSTALL) -d $(DESTDIR)$(ILIBDIR) $(DESTDIR)$(MAN1DIR) $(DESTDIR)$(BINDIR)
+install-lib: $(OBJDIR)/start.o $(OBJDIR)/dietlibc.a $(OBJDIR)/librpc.a $(OBJDIR)/liblatin1.a $(OBJDIR)/libcompat.a
+ $(INSTALL) -d $(DESTDIR)$(ILIBDIR)
$(INSTALL) $(OBJDIR)/start.o $(DESTDIR)$(ILIBDIR)/start.o
$(INSTALL) -m 644 $(OBJDIR)/libm.a $(OBJDIR)/libpthread.a $(OBJDIR)/librpc.a \
$(OBJDIR)/liblatin1.a $(OBJDIR)/libcompat.a $(OBJDIR)/libcrypt.a $(DESTDIR)$(ILIBDIR)
$(INSTALL) -m 644 $(OBJDIR)/dietlibc.a $(DESTDIR)$(ILIBDIR)/libc.a
+
+install-bin: $(OBJDIR)/diet-i
+ $(INSTALL) -d $(DESTDIR)$(MAN1DIR) $(DESTDIR)$(BINDIR)
ifeq ($(MYARCH),$(ARCH))
$(INSTALL) $(OBJDIR)/diet-i $(DESTDIR)$(BINDIR)/diet
-$(INSTALL) $(PICODIR)/diet-dyn-i $(DESTDIR)$(BINDIR)/diet-dyn
endif
- $(INSTALL) -m 755 $(OBJDIR)/elftrunc $(OBJDIR)/dnsd $(DESTDIR)$(BINDIR)
$(INSTALL) -m 644 diet.1 $(DESTDIR)$(MAN1DIR)/diet.1
install-profiling:
@@ -393,8 +403,14 @@ install-pic:
install-headers:
for i in `find include -name \*.h`; do install -m 644 -D $$i $(DESTDIR)$(prefix)/$$i; done
+ifeq (,$(ARCH32))
+install-32:
+else
+install-32:
+ $(MAKE) MYARCH=$(ARCH32) CC="$(CC) -m32" install-lib
+endif
-install: install-bin install-profiling install-pic install-headers
+install: install-32 install-lib install-bin install-profiling install-pic install-headers
uninstall:
for i in start.o libm.a libpthread.a librpc.a liblatin1.a libcompat.a libcrypt.a libc.a; do rm -f $(DESTDIR)$(ILIBDIR)/$$i; done
+59
View File
@@ -0,0 +1,59 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>dietlibc</Name>
<Homepage>http://www.fefe.de/dietlibc</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>library</IsA>
<Summary>A libc optimized for small size</Summary>
<Description>dietlibc is a libc that is optimized for small size. It can be used to create small statically linked binaries for Linux on various architectures.</Description>
<Archive sha1sum="6e387601e3f7077cef91361ec8e320199cd5b9b5" type="tarxz">http://pkgs.fedoraproject.org/repo/pkgs/dietlibc/dietlibc-0.33.20120825.tar.xz/016865b8c40d40a57b2ddb5862f2e338/dietlibc-0.33.20120825.tar.xz</Archive>
<Archive sha1sum="5d9c53cfc338257644e64f6c35f24546393eb2aa" type="gz">http://pkgs.fedoraproject.org/repo/pkgs/dietlibc/dietlibc-github-c3f1cf67fcc186bb859e64a085bf98aaa6182a82.patch.gz/734e14b59b7f017ae5843ee9b9b6d34e/dietlibc-github-c3f1cf67fcc186bb859e64a085bf98aaa6182a82.patch.gz</Archive>
<AdditionalFiles>
<AdditionalFile permission="0644" target="../dietlibc-0.33-biarch.patch">dietlibc-0.33-biarch.patch</AdditionalFile>
</AdditionalFiles>
<Patches>
<!--Patch level="0">dietlibc-0.33-biarch.patch</Patch-->
</Patches>
</Source>
<Package>
<Name>dietlibc</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="header">/usr/lib/dietlibc/include</Path>
<Path fileType="library">/usr/lib/dietlibc/lib-i386</Path>
<Path fileType="library">/usr/lib/dietlibc/lib-x86_64</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<History>
<Update release="3">
<Date>2014-05-11</Date>
<Version>0.33.20120825</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-11-03</Date>
<Version>0.33.20120825</Version>
<Comment>Version bump</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2010-10-11</Date>
<Version>0.32</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>dietlibc</Name>
<Summary xml:lang="tr">Düşük boyut için optimize edilmiş C kütüphanesi</Summary>
<Description xml:lang="tr">dietlibc, düşük boyutlu olması için optimize edilmiş bir C kütüphanesidir. Farklı mimarilerde statik bağlanmış ve düşük boyutlu ikili dosyalar oluşturmak için kullanılabilir.</Description>
</Source>
</PISI>
+18
View File
@@ -0,0 +1,18 @@
# -*- 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 autotools
from pisi.actionsapi import pisitools
def setup():
autotools.configure()
def build():
autotools.make()
def install():
autotools.install()
pisitools.dodoc("README", "CHANGES")
+77
View File
@@ -0,0 +1,77 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>diffstat</Name>
<Homepage>http://invisible-island.net/diffstat/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>as-is</License>
<IsA>app:console</IsA>
<Summary>Diffstat reads the output of the diff command and displays a histogram of the insertions, deletions, and modifications in each file</Summary>
<Description>Diffstat reads the output of the diff command and displays a histogram of the insertions, deletions, and modifications in each file.Diffstat is commonly used to provide a summary of the changes in large, complex patch files.</Description>
<Archive sha1sum="85f81d9e6ec704cb8cf82eb404ca9dd69d6469ff" type="targz">ftp://invisible-island.net/diffstat/diffstat-1.59.tgz</Archive>
<BuildDependencies>
<Dependency>xz</Dependency>
<Dependency>gzip</Dependency>
<Dependency>bzip2</Dependency>
<Dependency>ncompress</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>diffstat</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="7">
<Date>2014-11-23</Date>
<Version>1.59</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-05-11</Date>
<Version>1.58</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-03-29</Date>
<Version>1.58</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-10-22</Date>
<Version>1.57</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-02-18</Date>
<Version>1.56</Version>
<Comment>version bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-08-15</Date>
<Version>1.55</Version>
<Comment>First release</Comment>
<Name>Ramazan Utku</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>diffstat</Name>
<Description xml:lang="es">Diffstat lee la salida del comando diff y muestra un histograma de inserciones, borrados y modificaciones en cada archivo. Se usa comúnmente para mostrar un resumen de las modificaciones en archivos lagos y complejos.</Description>
</Source>
</PISI>
+44
View File
@@ -0,0 +1,44 @@
#!/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
def setup():
pisitools.flags.add("-fexceptions")
autotools.autoreconf("-vfi")
# Remove -Wall from default flags. The makefiles enable enough warnings
# themselves, and they use -Werror.
pisitools.cflags.remove("-Wall")
autotools.configure("\
--disable-nls \
--enable-dwz \
--enable-thread-safety \
--program-prefix=\"eu-\" \
--with-bzlib \
--with-lzma \
--with-zlib \
")
def build():
autotools.make()
#def check():
#autotools.make("check")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
# Don't remove all the static libs as libebl.a is needed by other packages
pisitools.remove("/usr/lib/libelf.a")
pisitools.remove("/usr/lib/libasm.a")
pisitools.remove("/usr/lib/libdw.a")
pisitools.dodoc("AUTHORS", "COPYING", "ChangeLog", "NEWS", "NOTES", "README", "THANKS", "TODO")
@@ -0,0 +1,37 @@
From 7f1eec317db79627b473c5b149a22a1b20d1f68f Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mjw@redhat.com>
Date: Wed, 9 Apr 2014 11:33:23 +0200
Subject: [PATCH] CVE-2014-0172 Check for overflow before calling malloc to
uncompress data.
https://bugzilla.redhat.com/show_bug.cgi?id=1085663
Reported-by: Florian Weimer <fweimer@redhat.com>
Signed-off-by: Mark Wielaard <mjw@redhat.com>
diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c
index 79daeac..34ea373 100644
--- a/libdw/dwarf_begin_elf.c
+++ b/libdw/dwarf_begin_elf.c
@@ -1,5 +1,5 @@
/* Create descriptor from ELF descriptor for processing file.
- Copyright (C) 2002-2011 Red Hat, Inc.
+ Copyright (C) 2002-2011, 2014 Red Hat, Inc.
This file is part of elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -282,6 +282,12 @@ check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn, bool inscngrp)
memcpy (&size, data->d_buf + 4, sizeof size);
size = be64toh (size);
+ /* Check for unsigned overflow so malloc always allocated
+ enough memory for both the Elf_Data header and the
+ uncompressed section data. */
+ if (unlikely (sizeof (Elf_Data) + size < size))
+ break;
+
Elf_Data *zdata = malloc (sizeof (Elf_Data) + size);
if (unlikely (zdata == NULL))
break;
--
1.9.2
@@ -0,0 +1,43 @@
From e922ec4e3bcd7c164a9ce424accac4394e7d5afd Mon Sep 17 00:00:00 2001
From: Matthias Klose <doko@ubuntu.com>
Date: Tue, 07 Jan 2014 09:25:29 +0000
Subject: tests: backtrace-subr.sh (check_native_core) should check core file name.
Needed when /proc/sys/kernel/core_uses_pid is set to 0. Try to rename
the core file, and if it does still fail, skip the test.
Signed-off-by: Mark Wielaard <mjw@redhat.com>
---
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 63b7bed..7e9dcf4 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,9 @@
+2014-01-07 Matthias Klose <doko@ubuntu.com>
+
+ * backtrace-subr.sh (check_native_core): Check to see if core file
+ was created without ".PID" extension, if so mv core to core.PID.
+ Skip test if no core file was created or could be found.
+
2014-01-04 Mark Wielaard <mjw@redhat.com>
* backtrace-data.c (main): Don't assert if raise returns.
diff --git a/tests/backtrace-subr.sh b/tests/backtrace-subr.sh
index e7ece91..62b873c 100644
--- a/tests/backtrace-subr.sh
+++ b/tests/backtrace-subr.sh
@@ -111,6 +111,11 @@ check_native_core()
# Skip the test if we cannot adjust core ulimit.
core="core.`ulimit -c unlimited || exit 77; set +ex; testrun ${abs_builddir}/$child --gencore; true`"
+ # see if /proc/sys/kernel/core_uses_pid is set to 0
+ if [ -f core ]; then
+ mv core "$core"
+ fi
+ if [ ! -f "$core" ]; then exit 77; fi
if [ "x$SAVED_VALGRIND_CMD" != "x" ]; then
VALGRIND_CMD="$SAVED_VALGRIND_CMD"
--
cgit v0.9.2
+97
View File
@@ -0,0 +1,97 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>elfutils</Name>
<Homepage>http://www.redhat.com/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>OpenSoftware</License>
<IsA>app:console</IsA>
<IsA>library</IsA>
<Summary>Libraries/utilities to handle ELF objects</Summary>
<Description>elfutils contains libraries and utilities to handle ELF objects and is a replacement for libelf.</Description>
<Archive sha1sum="a300a1cd1543b65532e333a6e9f931db76841558" type="tarbz2">https://fedorahosted.org/releases/e/l/elfutils/0.160/elfutils-0.160.tar.bz2</Archive>
<BuildDependencies>
<Dependency>bzip2</Dependency>
<Dependency>xz-devel</Dependency>
<Dependency>zlib-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>elfutils</Name>
<RuntimeDependencies>
<Dependency>xz</Dependency>
<Dependency>zlib</Dependency>
<Dependency>bzip2</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="header">/usr/include</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2014-11-23</Date>
<Version>0.160</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-11</Date>
<Version>0.158</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-04-29</Date>
<Version>0.158</Version>
<Comment>Add upstream patch.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-02-22</Date>
<Version>0.158</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>0.156</Version>
<Comment>Clean elfutils.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-08-01</Date>
<Version>0.156</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>0.155</Version>
<Comment>New release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-07-30</Date>
<Version>0.154</Version>
<Comment>First release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+8
View File
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>elfutils</Name>
<Summary xml:lang="tr">Derlenmiş objeleri işlemek için gereken aletler koleksiyonu</Summary>
<Description xml:lang="tr">elfutils derlenmiş objeleri işlemek için gereken çeşitli araçlar içerir.</Description>
</Source>
</PISI>
+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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
pisitools.flags.add("-fPIC")
shelltools.export("AUTOPOINT", "true")
autotools.autoreconf("-vfi")
# do not enable nls http://bugs.gentoo.org/121408
autotools.configure("--disable-nls \
--disable-dependency-tracking")
def build():
autotools.make("-j1")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dosym("flex", "/usr/bin/lex")
pisitools.dodoc("NEWS", "README")
@@ -0,0 +1,15 @@
We don't need texlive in the core bootstrap cycle
Index: flex-2.5.37/doc/Makefile.am
===================================================================
--- flex-2.5.37.orig/doc/Makefile.am
+++ flex-2.5.37/doc/Makefile.am
@@ -2,7 +2,7 @@ help2man = @HELP2MAN@
info_TEXINFOS = flex.texi
dist_man_MANS = flex.1
-dist_doc_DATA= flex.pdf
+#dist_doc_DATA= flex.pdf
CLEANFILES = \
flex.hks \
+81
View File
@@ -0,0 +1,81 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>flex</Name>
<Homepage>http://flex.sourceforge.net/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>FLEX</License>
<IsA>app:console</IsA>
<Summary>GNU lexical analyser generator</Summary>
<Description>Flex is a tool for generating scanners. A scanner, sometimes called a tokenizer, is a program which recognizes lexical patterns in text</Description>
<Archive sha1sum="40866373afd3ab88a7f7fe26c9b27b035aa1f2a9" type="targz">mirrors://sourceforge/flex/flex-2.5.39.tar.gz</Archive>
<BuildDependencies>
<Dependency>patch</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">flex-2.5.37-notex.patch</Patch>
</Patches>
</Source>
<Package>
<Name>flex</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="header">/usr/include</Path>
<Path fileType="localedata">/usr/share/locale</Path>
</Files>
</Package>
<History>
<Update release="6">
<Date>2014-06-02</Date>
<Version>2.5.39</Version>
<Comment>Version bump.</Comment>
<Name>Vedat Demir</Name>
<Email>vedat@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-05-11</Date>
<Version>2.5.38</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2014-03-29</Date>
<Version>2.5.38</Version>
<Comment>Version bump</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-08-28</Date>
<Version>2.5.37</Version>
<Comment>Clean flex.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-18</Date>
<Version>2.5.37</Version>
<Comment>v.bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-07-14</Date>
<Version>2.5.35</Version>
<Comment>First release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>flex</Name>
<Summary xml:lang="tr">GNU sözcüksel analiz üreteci</Summary>
<Description xml:lang="tr">Flex, metin içindeki sözcüksel kalıpları tanıyan, analiz aracı üretecidir.</Description>
<Description xml:lang="fr">Flex est un outil de génération d'analyseur (scanner). Un analyseur (également appelé tokenizer en anglais) est un programme qui repère les motifs lexicaux (ou lexème) dans du texte. </Description>
</Source>
</PISI>
+140
View File
@@ -0,0 +1,140 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
import os
snapshot = False
if snapshot:
verMajor, verMinor = get.srcVERSION().replace("pre", "").split("_", 1)
WorkDir = "gcc-4.7-%s" % verMinor
else:
verMajor = get.srcVERSION()
arch = get.ARCH().replace("x86_64", "x86-64")
#opt_unwind = "--with-system-libunwind" if get.ARCH() == "x86_64" else "--without-system-libunwind"
opt_arch = "--with-arch_32=i686" if get.ARCH() == "x86_64" else "--with-arch=i686"
opt_multilib = "--enable-multilib" if get.ARCH() == "x86_64" else ""
# WARNING: even -fomit-frame-pointer may break the build, stack protector, fortify source etc. are off limits
cflags = "-O2 -g"
def removePisiLinuxSection(_dir):
for root, dirs, files in os.walk(_dir):
for name in files:
# FIXME: should we do this only on nonshared or all ?
# if ("crt" in name and name.endswith(".o")) or name.endswith("nonshared.a"):
if ("crt" in name and name.endswith(".o")) or name.endswith(".a"):
i = os.path.join(root, name)
shelltools.system('objcopy -R ".comment.PISILINUX.OPTs" -R ".note.gnu.build-id" %s' % i)
def exportFlags():
# we set real flags with new configure settings, these are just safe optimizations
shelltools.export("CFLAGS", cflags)
shelltools.export("CXXFLAGS", cflags)
# shelltools.export("LDFLAGS", "")
# FIXME: this may not be necessary for biarch
shelltools.export("CC", "gcc")
shelltools.export("CXX", "g++")
shelltools.export("LC_ALL", "en_US.UTF-8")
def setup():
exportFlags()
# Maintainer mode off, do not force recreation of generated files
#shelltools.system("contrib/gcc_update --touch")
pisitools.dosed("gcc/Makefile.in", "\.\/fixinc\.sh", "-c true")
pisitools.dosed("gcc/configure", "^(ac_cpp='\$CPP\s\$CPPFLAGS)", r"\1 -O2")
pisitools.dosed("libiberty/configure", "^(ac_cpp='\$CPP\s\$CPPFLAGS)", r"\1 -O2")
shelltools.cd("../")
shelltools.makedirs("build")
shelltools.cd("build")
shelltools.system('.././gcc-%s/configure \
--prefix=/usr \
--bindir=/usr/bin \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--includedir=/usr/include \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-bugurl=http://bugs.pisilinux.org \
--enable-languages=c,c++,fortran,lto,objc,obj-c++ \
--disable-libgcj \
--enable-shared \
--enable-threads=posix \
--with-system-zlib \
--enable-__cxa_atexit \
--disable-libunwind-exceptions \
--enable-clocale=gnu \
--disable-libstdcxx-pch \
--disable-libssp \
--enable-gnu-unique-object \
--enable-linker-build-id \
--enable-cloog-backend=isl \
--disable-cloog-version-check \
--enable-lto \
--enable-plugin \
--with-linker-hash-style=gnu \
--with-pkgversion="Pisi Linux" \
--disable-werror \
--enable-checking=release \
--build=%s \
%s \
%s ' % ( verMajor , get.HOST(), opt_arch, opt_multilib))
def build():
exportFlags()
shelltools.cd("../build")
autotools.make('BOOT_CFLAGS="%s" profiledbootstrap' % cflags)
def install():
shelltools.cd("../build")
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
#autotools.install()
for header in ["limits.h","syslimits.h"]:
pisitools.insinto("/usr/lib/gcc/%s/%s/include" % (get.HOST(), verMajor) , "gcc/include-fixed/%s" % header)
# Not needed
pisitools.removeDir("/usr/lib/gcc/*/*/include-fixed")
pisitools.removeDir("/usr/lib/gcc/*/*/install-tools")
# This one comes with binutils
#pisitools.remove("/usr/lib*/libiberty.a")
# cc symlink
pisitools.dosym("/usr/bin/gcc" , "/usr/bin/cc")
# /lib/cpp symlink for legacy X11 stuff
pisitools.dosym("/usr/bin/cpp", "/lib/cpp")
# Remove our options section from crt stuff
removePisiLinuxSection("%s/usr/lib/" % get.installDIR())
if get.ARCH() == "x86_64":
removePisiLinuxSection("%s/usr/lib32/" % get.installDIR())
# autoload gdb pretty printers
gdbpy_dir = "/usr/share/gdb/auto-load/usr/lib/"
pisitools.dodir(gdbpy_dir)
gdbpy_files = shelltools.ls("%s/usr/lib/libstdc++*gdb.py*" % get.installDIR())
for i in gdbpy_files:
pisitools.domove("/usr/lib/%s" % shelltools.baseName(i), gdbpy_dir)
if arch == "x86-64":
pisitools.remove("/usr/lib32/libstdc++*gdb.py*")
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,71 @@
diff -Naur gcc-4.9-20140604-old/gcc/graphite-clast-to-gimple.c gcc-4.9-20140604/gcc/graphite-clast-to-gimple.c
--- gcc-4.9-20140604-old/gcc/graphite-clast-to-gimple.c 2014-03-03 21:39:22.000000000 +1000
+++ gcc-4.9-20140604/gcc/graphite-clast-to-gimple.c 2014-06-25 15:07:57.958697105 +1000
@@ -28,6 +28,8 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/deprecated/int.h>
+#include <isl/deprecated/ilp_int.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
diff -Naur gcc-4.9-20140604-old/gcc/graphite-interchange.c gcc-4.9-20140604/gcc/graphite-interchange.c
--- gcc-4.9-20140604-old/gcc/graphite-interchange.c 2014-01-03 08:23:26.000000000 +1000
+++ gcc-4.9-20140604/gcc/graphite-interchange.c 2014-06-25 15:10:06.882899243 +1000
@@ -29,6 +29,9 @@
#include <isl/map.h>
#include <isl/union_map.h>
#include <isl/ilp.h>
+#include <isl/deprecated/int.h>
+#include <isl/deprecated/ilp_int.h>
+#include <isl/deprecated/constraint_int.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
diff -Naur gcc-4.9-20140604-old/gcc/graphite-optimize-isl.c gcc-4.9-20140604/gcc/graphite-optimize-isl.c
--- gcc-4.9-20140604-old/gcc/graphite-optimize-isl.c 2014-01-03 08:23:26.000000000 +1000
+++ gcc-4.9-20140604/gcc/graphite-optimize-isl.c 2014-06-25 15:16:57.038386166 +1000
@@ -28,6 +28,8 @@
#include <isl/band.h>
#include <isl/aff.h>
#include <isl/options.h>
+#include <isl/deprecated/int.h>
+#include <isl/deprecated/aff_int.h>
#endif
#include "system.h"
@@ -373,7 +375,7 @@
{
for (i = ScheduleDimensions - 1 ; i >= 0 ; i--)
{
- if (isl_band_member_is_zero_distance (Band, i))
+ if (isl_band_member_is_coincident (Band, i))
{
isl_map *TileMap;
isl_union_map *TileUMap;
diff -Naur gcc-4.9-20140604-old/gcc/graphite-poly.c gcc-4.9-20140604/gcc/graphite-poly.c
--- gcc-4.9-20140604-old/gcc/graphite-poly.c 2014-01-03 08:23:26.000000000 +1000
+++ gcc-4.9-20140604/gcc/graphite-poly.c 2014-06-25 15:18:01.207157796 +1000
@@ -28,6 +28,8 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/deprecated/int.h>
+#include <isl/deprecated/ilp_int.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
diff -Naur gcc-4.9-20140604-old/gcc/graphite-sese-to-poly.c gcc-4.9-20140604/gcc/graphite-sese-to-poly.c
--- gcc-4.9-20140604-old/gcc/graphite-sese-to-poly.c 2014-04-08 20:59:40.000000000 +1000
+++ gcc-4.9-20140604/gcc/graphite-sese-to-poly.c 2014-06-25 15:19:46.575140398 +1000
@@ -26,6 +26,9 @@
#include <isl/union_map.h>
#include <isl/constraint.h>
#include <isl/aff.h>
+#include <isl/deprecated/int.h>
+#include <isl/deprecated/aff_int.h>
+#include <isl/deprecated/constraint_int.h>
#include <cloog/cloog.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
+107
View File
@@ -0,0 +1,107 @@
#!/bin/sh
# gfilt: Unix shell script driver for gcc / STL Error Decryptor
#
# Leor Zolman leor@bdsoft.com
# BD Software www.bdsoft.com
# Updated: 1/30/2008
#
# Installation: Place this file and gSTLFilt.pl somewhere in your PATH
# (Make sure Perl is also in your PATH)
#
# Usage: gfilt [mixture of compiler and Decryptor options] file(s)
#
# Purpose: Serve as a substitute for the g++ compiler driver, in-
# corporating STLFilt functionality transparently.
# Distinguishes compiler options/args from Decryptor options,
# makes sure all recognized Decryptor options are passed on
# the Decryptor script command line while other options/
# args are passed on the compiler command line.
# Filter all compiler output, and send results to stdout.
#
# (Note: stdout and stderr output streams from the compiler
# are combined by this process, so the two can no longer be
# individually redirected afterwards. If this is an issue
# for anyone, please let me know.)
#
# Exit status: The status code returned by the compiler
#
# Contents of the environment variable GFILTOPTS are passed as
# options to the STLFILT script (see the setting of DOPTS below.)
#
# 01/30/08 - Gets gSTLFilt.pl from same dir as this script
# Expanded the usage message a bit
# 06/29/05 - added more explanatory comments, fixed COPTS handling
# 02/16/05 - fixed multi-line case statement to work for freeBSD
# 12/17/04 - Added recognition of several script options that
# were missing from the case: with, meta, nullarg
# Added more comments.
# 02/21/03 - Exit status is now status of compilation
#
# Note: If packaged in a ZIP file, this file uses CR-LF line termination.
# If packaged in a .tar file, it'll have Unix-style termination.
#########################################################################
# Configuration section:
COMPILER=c++ # Your g++ compiler command
STLFILT="`dirname $0`/gSTLFilt.pl" # Assumes gSTLFilt.pl is in same dir as gfilt
# default options to Decryptor script:
DOPTS="/hdr:m /cand:s /iter:L ${GFILTOPTS:-}"
PAGER=less # pager of choice, or leave blank for no paging
COPTS= # compiler options
# End of configuration section
#########################################################################
if $COMPILER --version | grep " 3\." >/dev/null # if gcc 3.x...
then
COPTS="-fmessage-length=0 $COPTS" # ...this option is needed.
fi
if [ $# -eq 0 ]; then
echo "gfilt: wrapper for gcc/c++ compiler with STL Error Decryptor"
echo "usage: $0 [all-options] [compiler-arguments]"
echo " [NOTE: compiler and decryptor options may be mixed]"
exit 0
fi
GCC_ARGS=
DECRYPTOR_ARGS=
for arg
do
case $arg in
[-/]iter:* | [-/]cand:* | [/-]hdr:* | \
[-/]with:* | [-/]path:* | [/-]showback:* | \
[/-]width:* | [-/]lognative | [-/]banner:* | [-/]nullarg:* | \
[-/]break:* | [-/]cbreak:* | [-/]closewrap:* | [-/]meta | [-/]meta:*)
DECRYPTOR_ARGS="$DECRYPTOR_ARGS $arg";;
*)
GCC_ARGS="$GCC_ARGS $arg";;
esac
done
#
# Note that there are several options the Perl script accepts.
# see the comments at the top of gSTLFilt.pl for details.
#
TMPFILE=/tmp/gfilt$$.tmp
touch $TMPFILE
trap "rm $TMPFILE; exit 1" 1 2 3 15
$COMPILER $COPTS $GCC_ARGS >$TMPFILE 2>&1
STATUS=$?
if [ "$PAGER" != "" ]; then
perl $STLFILT $DOPTS $DECRYPTOR_ARGS < $TMPFILE | $PAGER
else
perl $STLFILT $DOPTS $DECRYPTOR_ARGS < $TMPFILE
fi
rm $TMPFILE
exit $STATUS
+21
View File
@@ -0,0 +1,21 @@
diff -Nuar gcc-4.9.0.orig/gcc/config/i386/linux64.h gcc-4.9.0/gcc/config/i386/linux64.h
--- gcc-4.9.0.orig/gcc/config/i386/linux64.h 2014-01-03 00:23:26.000000000 +0200
+++ gcc-4.9.0/gcc/config/i386/linux64.h 2014-05-15 13:21:11.968021447 +0300
@@ -28,5 +28,5 @@
#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
diff -Nuar gcc-4.9.0.orig/gcc/config/i386/t-linux64 gcc-4.9.0/gcc/config/i386/t-linux64
--- gcc-4.9.0.orig/gcc/config/i386/t-linux64 2014-01-03 00:23:26.000000000 +0200
+++ gcc-4.9.0/gcc/config/i386/t-linux64 2014-05-15 13:11:48.198012307 +0300
@@ -33,6 +33,6 @@
comma=,
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib$(call if_multiarch,:x86_64-linux-gnu)
MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
@@ -0,0 +1,17 @@
--- gcc/c-family/c-opts.c (revision 200330)
+++ gcc/c-family/c-opts.c (working copy)
@@ -1338,10 +1338,14 @@ c_finish_options (void)
/* Give CPP the next file given by -include, if any. */
static void
push_command_line_include (void)
{
+ // This can happen if disabled by -imacros for example.
+ if (include_cursor > deferred_count)
+ return;
+
if (!done_preinclude)
{
done_preinclude = true;
if (flag_hosted && std_inc && !cpp_opts->preprocessed)
{
@@ -0,0 +1,69 @@
diff -Nuar gcc-4.7.1.old/gcc/output.h gcc-4.7.1/gcc/output.h
--- gcc-4.7.1.old/gcc/output.h 2012-03-22 12:40:31.000000000 +0200
+++ gcc-4.7.1/gcc/output.h 2012-07-22 08:03:30.669774211 +0300
@@ -661,6 +661,7 @@
extern void default_file_start (void);
extern void file_end_indicate_exec_stack (void);
extern void file_end_indicate_split_stack (void);
+extern void pisilinux_file_end_indicate_optflags (void);
extern void default_elf_asm_output_external (FILE *file, tree,
const char *);
diff -Nuar gcc-4.7.1.old/gcc/toplev.c gcc-4.7.1/gcc/toplev.c
--- gcc-4.7.1.old/gcc/toplev.c 2012-01-05 17:08:42.000000000 +0200
+++ gcc-4.7.1/gcc/toplev.c 2012-07-22 08:05:04.729598301 +0300
@@ -674,6 +674,8 @@
/* Invoke registered plugin callbacks. */
invoke_plugin_callbacks (PLUGIN_FINISH_UNIT, NULL);
+
+ pisilinux_file_end_indicate_optflags ();
/* This must be at the end. Some target ports emit end of file directives
into the assembly file here, and hence we can not output anything to the
diff -Nuar gcc-4.7.1.old/gcc/varasm.c gcc-4.7.1/gcc/varasm.c
--- gcc-4.7.1.old/gcc/varasm.c 2012-04-24 09:10:53.000000000 +0300
+++ gcc-4.7.1/gcc/varasm.c 2012-07-22 08:01:31.878259309 +0300
@@ -7165,14 +7165,34 @@
switch_to_section (get_section (".note.GNU-stack", flags, NULL));
}
-/* Emit a special section directive to indicate that this object file
- was compiled with -fsplit-stack. This is used to let the linker
- detect calls between split-stack code and non-split-stack code, so
- that it can modify the split-stack code to allocate a sufficiently
- large stack. We emit another special section if there are any
- functions in this file which have the no_split_stack attribute, to
- prevent the linker from warning about being unable to convert the
- functions if they call non-split-stack code. */
+/* This is a generic routine emitting a PisiLinux specific section for
+ QA check marks. */
+
+void
+pisilinux_file_end_indicate_optflags (void)
+{
+ unsigned int flags = SECTION_DEBUG | SECTION_STRINGS | SECTION_MERGE | (SECTION_ENTSIZE & 1);
+
+ /*
+ o/O: optimize was off/on
+ s/S: size optimisation was off/on
+ p/P: stack-protector was off/on
+ w/W: warnings were off/on
+ g/G: debug was off/on
+ */
+
+ char opts_buffer[6];
+
+ opts_buffer[0] = (optimize >= 2) ? 'O' : 'o';
+ opts_buffer[1] = (optimize >= 1 && optimize_size) ? 'S' : 's';
+ opts_buffer[2] = (flag_stack_protect >= 1) ? 'P' : 'p';
+ opts_buffer[3] = (warn_uninitialized >= 1 && warn_sequence_point >= 1) ? 'W' : 'w';
+ opts_buffer[4] = (debug_info_level > DINFO_LEVEL_NONE) ? 'G' : 'g';
+ opts_buffer[5] = '\0';
+
+ switch_to_section (get_section (".comment.PISILINUX.OPTs", flags, NULL));
+ ASM_OUTPUT_ASCII (asm_out_file, opts_buffer, strlen (opts_buffer) + 1);
+}
void
file_end_indicate_split_stack (void)
+238
View File
@@ -0,0 +1,238 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>gcc</Name>
<Homepage>http://gcc.gnu.org</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv3+</License>
<License>LGPLv3+</License>
<IsA>app:console</IsA>
<IsA>library</IsA>
<Summary>The GNU Compiler Collection, includes C, C++, Objective-C and Fortran compilers</Summary>
<Description>The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, as well as libraries for these languages</Description>
<Archive sha1sum="79dbcb09f44232822460d80b033c962c0237c6d8" type="tarbz2">ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.2/gcc-4.9.2.tar.bz2</Archive>
<BuildDependencies>
<Dependency>binutils</Dependency>
<Dependency>bison</Dependency>
<Dependency>gettext</Dependency>
<Dependency>ncurses</Dependency>
<Dependency>zlib</Dependency>
<Dependency>gnuconfig</Dependency>
<Dependency>patch</Dependency>
<Dependency>sed</Dependency>
<Dependency>texinfo</Dependency>
<Dependency>gmp</Dependency>
<Dependency>mpfr</Dependency>
<Dependency>libmpc</Dependency>
<Dependency>ppl</Dependency>
<Dependency>cloog</Dependency>
<Dependency>isl</Dependency>
<Dependency>elfutils</Dependency>
</BuildDependencies>
<Patches>
<!-- Pisilinux Patches -->
<!-- Fix paths in 64bit -->
<Patch level="1">pisilinux/64.patch</Patch>
<Patch>gcc-4.9-isl-0.13-hack.patch</Patch>
<Patch level="0">pisilinux/gcc-4.8-filename-output.patch</Patch>
<!-- Add gcc options to output file in PISILINUX.OPTs section -->
<Patch level="1">pisilinux/gcc_47_based-record_gcc_options.patch</Patch>
</Patches>
</Source>
<Package>
<Name>libquadmath</Name>
<IsA>library</IsA>
<PartOf>system.base</PartOf>
<Summary>The GNU Fortran Compiler Quadmath Runtime Library</Summary>
<Files>
<Path fileType="library">/usr/lib/libquadmath.so*</Path>
<Path fileType="library">/usr/lib/libquadmath.spec*</Path>
<Path fileType="library">/usr/lib32/libquadmath.so*</Path>
<Path fileType="library">/usr/lib32/libquadmath.spec*</Path>
<Path fileType="info">/usr/share/info/libquadmath.info</Path>
</Files>
</Package>
<Package>
<Name>libgcc</Name>
<IsA>library</IsA>
<PartOf>system.base</PartOf>
<Summary>Contains a shared library of support routines used by GCC's runtime, and thus by every program on the system</Summary>
<Files>
<Path fileType="config">/etc</Path>
<Path fileType="library">/usr/lib/libstdc++.so*</Path>
<Path fileType="library">/usr/lib/libgcc_s.so*</Path>
<Path fileType="library">/usr/lib32/libstdc++.so*</Path>
<Path fileType="library">/usr/lib32/libgcc_s.so*</Path>
<Path fileType="library">/usr/share/gcc-*</Path>
<Path fileType="library">/usr/share/gdb</Path>
</Files>
</Package>
<Package>
<Name>libgomp</Name>
<IsA>library</IsA>
<Summary>Contains GCC shared support library which is needed for OpenMP 2.5 support</Summary>
<Files>
<Path fileType="library">/usr/lib/libgomp.so*</Path>
<Path fileType="library">/usr/lib/libgomp.spec*</Path>
<Path fileType="library">/usr/lib32/libgomp.so*</Path>
<Path fileType="library">/usr/lib32/libgomp.spec*</Path>
<Path fileType="info">/usr/share/info/libgomp.info</Path>
</Files>
</Package>
<Package>
<Name>libgfortran</Name>
<RuntimeDependencies>
<Dependency>libquadmath</Dependency>
</RuntimeDependencies>
<IsA>library</IsA>
<Summary>Contains GCC shared support library for gfortran</Summary>
<Files>
<Path fileType="library">/usr/lib/libgfortran.so*</Path>
<Path fileType="library">/usr/lib32/libgfortran.so*</Path>
</Files>
</Package>
<Package>
<Name>libobjc</Name>
<IsA>library</IsA>
<Summary>Contains GCC shared support library for objc</Summary>
<Files>
<Path fileType="library">/usr/lib/libobjc.so*</Path>
<Path fileType="library">/usr/lib32/libobjc.so*</Path>
</Files>
</Package>
<Package>
<Name>gcc-l10n</Name>
<PartOf>system.locale</PartOf>
<Summary>Contains available GCC localization files, includes also turkish translations</Summary>
<RuntimeDependencies>
<Dependency>gcc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="localedata">/usr/share/locale</Path>
</Files>
</Package>
<Package>
<Name>gcc</Name>
<RuntimeDependencies>
<Dependency>gmp</Dependency>
<Dependency>isl</Dependency>
<Dependency>mpfr</Dependency>
<Dependency>cloog</Dependency>
<Dependency>libmpc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/lib</Path>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="library">/usr/lib32</Path>
<Path fileType="library">/usr/libexec</Path>
<Path fileType="header">/usr/include</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="info">/usr/share/info</Path>
</Files>
<AdditionalFiles>
<AdditionalFile owner="root" permission="0755" target="/usr/bin/gfilt">gfilt</AdditionalFile>
<AdditionalFile owner="root" permission="0644" target="/usr/libexec/gSTLFilt.pl">gSTLFilt.pl</AdditionalFile>
</AdditionalFiles>
</Package>
<History>
<Update release="12">
<Date>2014-11-28</Date>
<Version>4.9.2</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="11">
<Date>2014-09-12</Date>
<Version>4.9.1</Version>
<Comment>Rebuild for new glibc.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="10">
<Date>2014-09-06</Date>
<Version>4.9.1</Version>
<Comment>Version bump, cleanup.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="9">
<Date>2014-05-11</Date>
<Version>4.9.0</Version>
<Comment>Rebuild, add patch.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="8">
<Date>2014-04-28</Date>
<Version>4.9.0</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-04-01</Date>
<Version>4.8.2</Version>
<Comment>Rebuild for dependency changes.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2013-11-11</Date>
<Version>4.8.2</Version>
<Comment>backport ICE fix
http://gcc.gnu.org/bugzilla//show_bug.cgi?id=56710 - commit 3d1f8279
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57653</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-10-22</Date>
<Version>4.8.2</Version>
<Comment>Cleanup, version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-10-14</Date>
<Version>4.8.1</Version>
<Comment>Rebuild.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-23</Date>
<Version>4.8.1</Version>
<Comment>Version bump, cleanup patches.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2012-10-14</Date>
<Version>4.7.2</Version>
<Comment>Cleanup package, add some patches.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-10-14</Date>
<Version>4.7.2</Version>
<Comment>First release</Comment>
<Name>Erdem Artan</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>gcc</Name>
<Summary xml:lang="tr">C/C++ ve Fortran derleyicisi</Summary>
<Description xml:lang="tr">C, C++, Objective-C, Fortran programlama dilleri ile bu dillere ait kütüphaneleri içeren, GNU derleyici paketi</Description>
<Description xml:lang="fr">La collection de compilateurs GNU inclus des façades pour le C, C++, Objective-C, Fortran, hava et Ada ainsi que des librairies pour ces langages (libstdc++, libgcj...)</Description>
</Source>
</PISI>
+26
View File
@@ -0,0 +1,26 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
if get.buildTYPE() != "emul32":
pisitools.flags.add("-fPIC")
autotools.configure("--disable-static")
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
def build():
autotools.make("CFLAGS=-O2 LDFLAGS=-s")
def install():
autotools.install()
pisitools.dodoc("README", "ChangeLog", "NEWS", "COPYING", "AUTHORS")
+82
View File
@@ -0,0 +1,82 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>glpk</Name>
<Homepage>http://www.gnu.org/software/glpk/glpk.html</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>library</IsA>
<Summary>GNU Linear Programming Kit</Summary>
<Description>The GLPK (GNU Linear Programming Kit) package is intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library.</Description>
<Archive sha1sum="893058aada022a8dfc63c675ebcd7e7e86a3a363" type="targz">mirrors://gnu/glpk/glpk-4.55.tar.gz</Archive>
</Source>
<Package>
<Name>glpk</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>glpk-devel</Name>
<Summary>Development files for glpk</Summary>
<RuntimeDependencies>
<Dependency release="current">glpk</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
</Files>
</Package>
<History>
<Update release="6">
<Date>2014-09-06</Date>
<Version>4.55</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-05-11</Date>
<Version>4.54</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2014-02-27</Date>
<Version>4.52</Version>
<Comment>Rebuild Unused</Comment>
<Name>Varol Maksutoğlu</Name>
<Email>waroi@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-08-28</Date>
<Version>4.52</Version>
<Comment>Version bump, clean glpk.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-18</Date>
<Version>4.48</Version>
<Comment>v.bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-08-16</Date>
<Version>4.47</Version>
<Comment>First release</Comment>
<Name>Ramazan Utku</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+13
View File
@@ -0,0 +1,13 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>glpk</Name>
<Description xml:lang="fr">Le paquet GLPK (GNU Linear Programming Kit - Kit de Programmation Linéaire) a pour objectif de résoudre le problème de programmation linéaire (LP) de grande envergure, la programmation d'entiers mixés (MIP), et autres problèmes de la sorte. Il s'agit d'un ensemble de routines écrites en C ANSI et organisées de manière à former une librairie que l'on peut appeler.</Description>
<Summary xml:lang="tr">GNU Doğrusal Programlama Kiti</Summary>
</Source>
<Package>
<Name>glpk-devel</Name>
<Summary xml:lang="tr">glpk için geliştirme dosyaları</Summary>
</Package>
</PISI>
+33
View File
@@ -0,0 +1,33 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
options = "--enable-cxx"
if get.buildTYPE() == "emul32":
shelltools.export("ABI", "32")
autotools.configure(options)
def build():
autotools.make()
def check():
autotools.make("check")
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
if get.buildTYPE() == "emul32": return
pisitools.doinfo("doc/*info*")
pisitools.dodoc("AUTHORS", "ChangeLog", "COPYING*", "NEWS", "README")
+116
View File
@@ -0,0 +1,116 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>gmp</Name>
<Homepage>http://gmplib.org/</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>LGPLv3+</License>
<IsA>library</IsA>
<Summary>Arbitrary precision arithmetic library</Summary>
<Description>GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. There is no practical limit to the precision except the ones implied by the available memory in the machine GMP runs on. GMP has a rich set of functions, and the functions have a regular interface.</Description>
<Archive sha1sum="1aaf78358ab9e34aeb61f3ae08174ee9118ece98" type="tarxz">mirrors://gnu/gmp/gmp-6.0.0a.tar.xz</Archive>
</Source>
<Package>
<Name>gmp</Name>
<RuntimeDependencies>
<Dependency>libgcc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="info">/usr/share/info</Path>
</Files>
</Package>
<Package>
<Name>gmp-devel</Name>
<Summary>Development files for gmp</Summary>
<RuntimeDependencies>
<Dependency release="current">gmp</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="library">/usr/lib/*.a</Path>
</Files>
</Package>
<Package>
<Name>gmp-32bit</Name>
<PartOf>emul32</PartOf>
<Summary>32-bit shared libraries for gmp</Summary>
<BuildType>emul32</BuildType>
<RuntimeDependencies>
<Dependency release="current">gmp</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib32</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2014-09-06</Date>
<Version>6.0.0</Version>
<Comment>
Rebuild with new options, fix version number.
Clean up actions.py, remove unneeded lines, we have auto-emul32 :)
</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-11</Date>
<Version>6.0.0a</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-04-01</Date>
<Version>6.0.0a</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-10-22</Date>
<Version>5.1.3</Version>
<Comment>Minor version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>5.1.2</Version>
<Comment>Clean gmp.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-23</Date>
<Version>5.1.2</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-16</Date>
<Version>5.1.1</Version>
<Comment>New release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-09-30</Date>
<Version>5.0.5</Version>
<Comment>First release</Comment>
<Name>Erdem Artan</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+15
View File
@@ -0,0 +1,15 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>gmp</Name>
<Summary xml:lang="tr">İstenilen duyarlıkta çalışabilen aritmetik işlem kitaplığı</Summary>
<Description xml:lang="tr">GMP işaretli tamsayılar, rasyonel ve ondalık sayılar üzerinde istenilen kadar duyarlı aritmetik işlemler yapan bir kitaplıktır. Yüklü olduğu makinenin hafıza sınırı dışında herhangi bir duyarlılık limiti yoktur. Zengin fonksiyonları ve düzenli bir arabirimi vardır.</Description>
<Description xml:lang="fr">GMP est une librairie libre pour l'arithmétique à précision arbitraire, opérant sur : les entiers signés, les nombres rationnels et les nombres à virgule flottante. Il n'y a aucune limite pratique sur la précision des calculs exceptée celle impliquée par la mémoire présente sur la machine exécutant GMP. GMP est dotée d'un large panel de fonctions, dotées d'interfaces régulières.</Description>
<Description xml:lang="es">GMP es una librería libre para aritmética con precisión arbitraria, operando con signed integers, números racionales, y punto flotante. Practicamente no hay límite de precisión excepto los de la memoria disponible en el equipo donde se está ejecutando GMP. GMP tiene un amplio conjunto de funciones y las funciones tienen una interfaz regular.</Description>
</Source>
<Package>
<Name>gmp-devel</Name>
<Summary xml:lang="tr">gmp için geliştirme dosyaları</Summary>
</Package>
</PISI>
+16
View File
@@ -0,0 +1,16 @@
#!/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 autotools
from pisi.actionsapi import pisitools
def check():
autotools.make("check")
def install():
pisitools.doexe("config.*", "/usr/share/gnuconfig")
pisitools.dodoc("ChangeLog")
+84
View File
@@ -0,0 +1,84 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>gnuconfig</Name>
<Homepage>http://savannah.gnu.org/projects/config</Homepage>
<Packager>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Packager>
<License>GPLv2+</License>
<IsA>data</IsA>
<Summary>Base config files for autofoo</Summary>
<Description>gnuconfig contains updated config.sub and config.guess files from GNU.</Description>
<Archive sha1sum="e10971ecff82199b077abad03a264b186273b623" type="targz">http://source.pisilinux.org/1.0/config-20141105.tar.gz</Archive>
</Source>
<Package>
<Name>gnuconfig</Name>
<Files>
<Path fileType="data">/usr/share/gnuconfig</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2014-12-04</Date>
<Version>20141105</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-11</Date>
<Version>20140511</Version>
<Comment>Version bump.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-04-01</Date>
<Version>20140401</Version>
<Comment>New git snapshot.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-08-27</Date>
<Version>20130930</Version>
<Comment>Clean, new git snapshot.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-04-07</Date>
<Version>20130212</Version>
<Comment>Fix git archive</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-02-27</Date>
<Version>20130217</Version>
<Comment>New git archive</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-01-23</Date>
<Version>20130123</Version>
<Comment>bump</Comment>
<Name>Erdinç Gültekin</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-07-13</Date>
<Version>20120712</Version>
<Comment>First release</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>gnuconfig</Name>
<Summary xml:lang="tr">Autofoo için temel config dosyaları</Summary>
<Description xml:lang="tr">gnuconfig güncel GNU config.sub ve config.guess dosyaları içerir.</Description>
<Description xml:lang="fr">fichiers GNU config.sub et config.guess mis à jour.</Description>
</Source>
</PISI>
@@ -0,0 +1,27 @@
#!/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 shelltools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
autotools.autoreconf("-fiv")
autotools.configure("--disable-static \
--enable-doctool")
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
@@ -0,0 +1,131 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>gobject-introspection</Name>
<Homepage>http://live.gnome.org/GObjectIntrospection</Homepage>
<Packager>
<Name>Pisi Linux Admins</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>LGPLv2+</License>
<License>GPLv2+</License>
<IsA>library</IsA>
<IsA>app:console</IsA>
<Summary>Introspection system for GObject-based libraries</Summary>
<Description>gobject-introspection can scan C header and source files in order to generate introspection typelib files. It also provides an API to examine typelib files, useful for creating language bindings among other things.</Description>
<Archive sha1sum="6eb5476838650f8b3cdd14100081f3416eebf6b7" type="tarxz">mirrors://gnome/gobject-introspection/1.40/gobject-introspection-1.40.0.tar.xz</Archive>
<BuildDependencies>
<Dependency>cairo-devel</Dependency>
<Dependency>python-devel</Dependency>
<Dependency>python-mako</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>gobject-introspection</Name>
<RuntimeDependencies>
<Dependency>libffi</Dependency>
<Dependency>glib2</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib/lib*.so*</Path>
<Path fileType="data">/usr/lib/girepository-1.0/*.typelib</Path>
<Path fileType="localedata">/usr/share/locale</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>gobject-introspection-devel</Name>
<Summary>Development files for gobject-introspection</Summary>
<RuntimeDependencies>
<Dependency release="current">gobject-introspection</Dependency>
<!-- gobject-introspection's pc file needs libffi's pc file>
<Dependency>libffi-devel</Dependency-->
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="library">/usr/lib/gobject-introspection</Path>
<Path fileType="executable">/usr/bin/g-ir-*</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="data">/usr/share/gir-1.0</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="data">/usr/share/gobject-introspection-1.0</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="10">
<Date>2014-05-11</Date>
<Version>1.40.0</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="9">
<Date>2014-04-14</Date>
<Version>1.40.0</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="8">
<Date>2014-04-06</Date>
<Version>1.38.0</Version>
<Comment>Rebuild</Comment>
<Name>Varol Maksutoğlu</Name>
<Email>waroi@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-02-01</Date>
<Version>1.38.0</Version>
<Comment>Rebuild Unused</Comment>
<Name>Varol Maksutoğlu</Name>
<Email>waroi@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2013-10.12</Date>
<Version>1.38.0</Version>
<Comment>V.Bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2013-07-24</Date>
<Version>1.37.4</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-04-07</Date>
<Version>1.36.0</Version>
<Comment>Version bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-02-24</Date>
<Version>1.35.8</Version>
<Comment>V.Bump.</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-04</Date>
<Version>1.35.4</Version>
<Comment>New version bump to 1.35.4.</Comment>
<Name>Idris Kalp</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-12-31</Date>
<Version>1.34.2</Version>
<Comment>First release</Comment>
<Name>Idris Kalp</Name>
<Email>yaralikurt15@hotmail.com</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,13 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>gobject-introspection</Name>
<Summary xml:lang="en">Introspection system for GObject-based libraries</Summary>
<Description xml:lang="en">gobject-introspection can scan C header and source files in order to generate introspection typelib files. It also provides an API to examine typelib files, useful for creating language bindings among other things.</Description>
</Source>
<Package>
<Name>gobject-introspection-devel</Name>
<Summary xml:lang="en">Development files for gobject-introspection</Summary>
</Package>
</PISI>
+41
View File
@@ -0,0 +1,41 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
autotools.autoreconf("-vif")
autotools.configure("--disable-error-on-warning \
--disable-static \
--enable-posix \
--enable-networking \
--enable-regex \
--enable-nls \
--disable-rpath \
--with-threads \
--with-modules")
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
# Put flags in front of the libs. Needed for --as-needed.
replace = (r"(\\\$deplibs) (\\\$compiler_flags)", r"\2 \1")
#pisitools.dosed("libtool", *replace)
#pisitools.dosed("*/libtool", *replace)
def build():
autotools.make()
def install():
autotools.install()
major = ".".join(get.srcVERSION().split(".")[:2])
pisitools.dodir("/etc/env.d")
shelltools.echo("%s/etc/env.d/50guile" % get.installDIR(), 'GUILE_LOAD_PATH="/usr/share/guile/%s"' % major)
pisitools.dodoc("AUTHORS", "ChangeLog", "HACKING", "NEWS", "README", "THANKS")
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>guile</Name>
<Homepage>http://www.gnu.org/software/guile/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2+</License>
<License>LGPLv2+</License>
<IsA>app:console</IsA>
<IsA>library</IsA>
<Summary>GNU Scheme interpreter and library</Summary>
<Description>GUILE (GNU's Ubiquitous Intelligent Language for Extension) is a library implementation of the Scheme programming language, written in C. GUILE provides a machine-independent execution platform that can be linked in as a library during the building of extensible programs.</Description>
<Archive sha1sum="ae86544b39048a160f4db1c0653a79b40b6c1ee6" type="tarxz">mirrors://gnu/guile/guile-2.0.11.tar.xz</Archive>
<BuildDependencies>
<Dependency>gc-devel</Dependency>
</BuildDependencies>
<Patches>
</Patches>
</Source>
<Package>
<Name>guile</Name>
<RuntimeDependencies>
<Dependency>gc</Dependency>
<Dependency>gmp</Dependency>
<Dependency>libffi</Dependency>
<Dependency>libtool-ltdl</Dependency>
<Dependency>libunistring</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="config">/etc</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="info">/usr/share/info</Path>
<Path fileType="library">/usr/lib/lib*</Path>
<Path fileType="data">/usr/share/guile</Path>
<Path fileType="data">/usr/share/emacs</Path>
<Path fileType="library">/usr/lib/guile/2.0</Path>
</Files>
</Package>
<Package>
<Name>guile-devel</Name>
<Summary>Development files for guile</Summary>
<RuntimeDependencies>
<Dependency release="current">guile</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="executable">/usr/bin/guile-snarf</Path>
<Path fileType="executable">/usr/bin/guile-config</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2014-11-30</Date>
<Version>2.0.11</Version>
<Comment>Rebuild</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2014-05-24</Date>
<Version>2.0.11</Version>
<Comment>Rebuild for gcc.</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2014-05-11</Date>
<Version>2.0.9</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2014-02-25</Date>
<Version>2.0.9</Version>
<Comment>Rebuild Unused</Comment>
<Name>Varol Maksutoğlu</Name>
<Email>waroi@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-08-27</Date>
<Version>2.0.9</Version>
<Comment>Clean guile.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-22</Date>
<Version>2.09</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-18</Date>
<Version>2.0.7</Version>
<Comment>v.bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-10-03</Date>
<Version>2.0.6</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+15
View File
@@ -0,0 +1,15 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>guile</Name>
<Summary xml:lang="tr">GNU Scheme yorumlayıcısı ve kitaplığı</Summary>
<Summary xml:lang="fr">Interpréteur et librairie GNU Scheme.</Summary>
<Summary xml:lang="pl">Język GNU Extension language.</Summary>
</Source>
<Package>
<Name>guile-devel</Name>
<Summary xml:lang="tr">guile için geliştirme dosyaları</Summary>
<Summary xml:lang="pl">Pliki nagłówkowe guile.</Summary>
</Package>
</PISI>
+25
View File
@@ -0,0 +1,25 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
autotools.configure("--prefix=/opt/icecream \
--localstatedir=/var \
--enable-shared")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
"""
for chost in ["", "%s-pc-linux-gnu-" % get.ARCH()]:
for i in ["c++", "cc", "g++", "gcc"]:
pisitools.dosym("icecc", "/opt/icecream/bin/%s%s" % (chost, i))
"""
+21
View File
@@ -0,0 +1,21 @@
# -*- coding: utf-8 -*-
serviceType = "server"
serviceDesc = _({"en": "Icecream Daemon",
"tr": "Icecream Servisi"})
from comar.service import *
@synchronized
def start():
startService(command="/opt/icecream/sbin/iceccd",
args="-d -m 5 > /dev/null",
pidfile="/run/iceccd.pid",
donotify=True)
@synchronized
def stop():
stopService(pidfile="/run/iceccd.pid",
donotify=True)
def status():
return isServiceRunning("/run/iceccd.pid")
+20
View File
@@ -0,0 +1,20 @@
serviceType = "server"
serviceDesc = _({"en": "Icecream Scheduler",
"tr": "Icecream Zamanlayıcı"})
from comar.service import *
@synchronized
def start():
startService(command="/opt/icecream/sbin/icecc-scheduler",
args="-d > /dev/null",
pidfile="run/icecc-scheduler.pid",
donotify=True)
@synchronized
def stop():
stopService(pidfile="/run/icecc-scheduler.pid",
donotify=True)
def status():
return isServiceRunning("/run/icecc-scheduler.pid")
@@ -0,0 +1,11 @@
[Unit]
Description=Icecream Daemon
After=network.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/iceccd.pid
ExecStart=/opt/icecream/sbin/iceccd -d -m 5 > /dev/null
[Install]
WantedBy=multi-user.target
@@ -0,0 +1,10 @@
[Unit]
Description=Icecream Scheduler
[Service]
Type=forking
PIDFile=/run/icecc-scheduler.pid
ExecStart=/opt/icecream/sbin/icecc-scheduler -d > /dev/null
[Install]
WantedBy=multi-user.target
+104
View File
@@ -0,0 +1,104 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>icecream</Name>
<Homepage>http://en.opensuse.org/Icecream</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>service</IsA>
<Summary>Distributed C(++) compiling tool</Summary>
<Description>Icecream is a program for distributed compiling of C/C++ code across several machines based on ideas and code by distcc.</Description>
<Archive sha1sum="b1edce8d2385aa0caf93f731e292463bde98e8b0" type="tarbz2">ftp://ftp.suse.com/pub/projects/icecream/icecc-1.0.1.tar.bz2</Archive>
<BuildDependencies>
<Dependency>librsync-devel</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>icecream</Name>
<RuntimeDependencies>
<Dependency>librsync</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>libcap-ng</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/opt/icecream/sbin/iceccd</Path>
<Path fileType="executable">/opt/icecream/bin/icecc</Path>
<Path fileType="executable">/usr/libexec/icecc</Path>
<Path fileType="library">/opt/icecream/lib</Path>
<Path fileType="executable">/opt/icecream/bin</Path>
<Path fileType="header">/opt/icecream/include/</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="data">/usr/share/icecc</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="data">/lib/systemd/system/icecream-daemon.service</Path>
</Files>
<AdditionalFiles>
<AdditionalFile owner="root" permission="0644" target="/lib/systemd/system/icecream-daemon.service">icecream-daemon.service</AdditionalFile>
</AdditionalFiles>
<Provides>
<COMAR script="daemon.py">System.Service</COMAR>
</Provides>
</Package>
<Package>
<Name>icecream-scheduler</Name>
<Summary>Icecream scheduler which should only run on the master icecream node</Summary>
<RuntimeDependencies>
<Dependency>icecream</Dependency>
<Dependency>libgcc</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/opt/icecream/sbin/icecc-scheduler</Path>
<Path fileType="data">/lib/systemd/system/icecream-scheduler.service</Path>
</Files>
<AdditionalFiles>
<AdditionalFile owner="root" permission="0644" target="/lib/systemd/system/icecream-scheduler.service">icecream-scheduler.service</AdditionalFile>
</AdditionalFiles>
<Provides>
<COMAR script="scheduler.py">System.Service</COMAR>
</Provides>
</Package>
<History>
<Update release="5">
<Date>2014-05-11</Date>
<Version>1.0.1</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2013-10-22</Date>
<Version>1.0.1</Version>
<Comment>Rebuild.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2013-07-24</Date>
<Version>1.0.1</Version>
<Comment>Version bump.</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-02-18</Date>
<Version>0.9.98.3</Version>
<Comment>v.bump</Comment>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-10-09</Date>
<Version>0.9.7</Version>
<Comment>First release</Comment>
<Name>Erdem Artan</Name>
<Email>admins@pisilinux.org</Email>
</Update>
</History>
</PISI>
+11
View File
@@ -0,0 +1,11 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>icecream</Name>
<Summary xml:lang="tr">Dağıtık C(++) derleme aracı</Summary>
<Description xml:lang="tr">Icecream; C/C++ kaynak kodunun, birden fazla makinede dağıtık olarak derlenmesi fikrine dayanan, &quot;distcc&quot; kodu temelinde yazılmış bir uygulamadır.</Description>
<Description xml:lang="fr">Icecream est un programme de compilation de code C/C++ distribuée sur plusieurs machines basé sur le code et les idées directrices de distcc.</Description>
<Summary xml:lang="es">Herramienta de compilación C(++) distribuida</Summary>
<Description xml:lang="es">Icecream es un programa para compilación de código C/C++ distribuida en varios servidores, basado en ideas y código de distcc.</Description>
</Source>
</PISI>
+20
View File
@@ -0,0 +1,20 @@
#!/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 autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
autotools.configure()
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("AUTHORS", "README", "TODO", "COPYING", "doc/I18N-HOWTO")
+59
View File
@@ -0,0 +1,59 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>intltool</Name>
<Homepage>http://www.gnome.org/</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>Utility for internationalizing various kinds of data files</Summary>
<Description>intltool automatically extracts translatable strings from oaf, glade, bonobo ui, nautilus theme, .desktop files, etc. and puts them in the po files.</Description>
<Archive sha1sum="7fddbd8e1bf94adbf1bc947cbf3b8ddc2453f8ad" type="targz">http://source.pisilinux.org/1.0/intltool-0.50.2.tar.gz</Archive>
<BuildDependencies>
<Dependency>perl</Dependency>
<Dependency>perl-XML-Parser</Dependency>
</BuildDependencies>
</Source>
<Package>
<Name>intltool</Name>
<RuntimeDependencies>
<Dependency>perl-XML-Parser</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="data">/usr/share/aclocal</Path>
<Path fileType="data">/usr/share/intltool</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<History>
<Update release="3">
<Date>2014-05-11</Date>
<Version>0.50.2</Version>
<Comment>Release bump.</Comment>
<Name>Marcin Bojara</Name>
<Email>marcin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2013-08-28</Date>
<Version>0.50.2</Version>
<Comment>Clean intltool.</Comment>
<Name>Serdar Soytetir</Name>
<Email>kaptan@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2012-09-19</Date>
<Version>0.50.2</Version>
<Comment>First release</Comment>
<Name>Yusuf Aydemir</Name>
<Email>yusuf.aydemir@pisilinux.org</Email>
</Update>
</History>
</PISI>
+9
View File
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>intltool</Name>
<Summary xml:lang="tr">Çeşitli kaynak kod dosyalarından satırları ayıklamak için kullanılan betikler</Summary>
<Description xml:lang="tr">Çeşitli kaynak kod dosyalarından satırları ayıklamak için kullanılan betikler.</Description>
<Description xml:lang="fr">Scripts d'extraction depuis divers fichiers sources de chaînes traduisibles.</Description>
</Source>
</PISI>

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