* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-11-08 17:22 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-11-08 17:22 UTC (permalink / raw
To: gentoo-commits
commit: caf50f70a3bb2ae5cae826ea27381774a1a0aeb9
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Fri Nov 8 17:21:40 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Fri Nov 8 17:21:40 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=caf50f70
sys-cluster/charm-6.5.1-r3: Added patch to fix doc.
When building the documentation, we used to have to force <python-3. The added
patch makes this unecessary, which simplifies the ebuild and reduces its
dependencies. The patch was submitted to upstream (Bug 328:
https://charm.cs.illinois.edu/redmine/issues/328).
Package-Manager: portage-2.2.7
---
sys-cluster/charm/ChangeLog | 10 +
sys-cluster/charm/charm-6.5.1-r3.ebuild | 204 +++++++++++++++++++++
.../files/charm-6.5.1-fix-markupSanitizer.patch | 203 ++++++++++++++++++++
3 files changed, 417 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index ee0e794..cab86a4 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,16 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*charm-6.5.1-r3 (08 Nov 2013)
+
+ 08 Nov 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r3.ebuild,
+ +files/charm-6.5.1-fix-markupSanitizer.patch:
+ sys-cluster/charm-6.5.1-r3: Added patch to fix doc. When building the
+ documentation, we used to have to force <python-3. The added patch makes this
+ unecessary, which simplifies the ebuild and reduces its dependencies. The
+ patch was submitted to upstream (Bug 328:
+ https://charm.cs.illinois.edu/redmine/issues/328).
+
18 Oct 2013; Christoph Junghans <ottxor@gentoo.org> -charm-6.5.1-r1.ebuild,
-charm-6.5.1.ebuild:
remove old
diff --git a/sys-cluster/charm/charm-6.5.1-r3.ebuild b/sys-cluster/charm/charm-6.5.1-r3.ebuild
new file mode 100644
index 0000000..3f11990
--- /dev/null
+++ b/sys-cluster/charm/charm-6.5.1-r3.ebuild
@@ -0,0 +1,204 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/charm/charm-6.5.0.ebuild,v 1.1 2013/06/26 23:58:38 ottxor Exp $
+
+EAPI=5
+
+inherit eutils flag-o-matic fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Message-passing parallel language and runtime system"
+HOMEPAGE="http://charm.cs.uiuc.edu/"
+SRC_URI="http://charm.cs.uiuc.edu/distrib/${P}.tar.gz"
+
+LICENSE="charm"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mlogft mpi numa smp static-libs syncft tcp"
+
+RDEPEND="mpi? ( virtual/mpi )"
+DEPEND="
+ ${RDEPEND}
+ doc? (
+ >=app-text/poppler-0.12.3-r3[utils]
+ dev-tex/latex2html
+ virtual/tex-base
+ >=dev-python/beautifulsoup-4
+ dev-python/lxml
+ media-libs/netpbm
+ )"
+
+REQUIRED_USE="
+ doc? ( ${PYTHON_REQUIRED_USE} )
+ cmkopt? ( !charmdebug !charmtracing )
+ charmproduction? ( !charmdebug !charmtracing )"
+
+FORTRAN_STANDARD="90"
+
+get_opts() {
+ local CHARM_OPTS
+
+ # TCP instead of default UDP for socket comunication
+ # protocol
+ CHARM_OPTS+="$(usex tcp ' tcp' '')"
+
+ # enable direct SMP support using shared memory
+ CHARM_OPTS+="$(usex smp ' smp' '')"
+
+ CHARM_OPTS+="$(usex mlogft ' mlogft' '')"
+ CHARM_OPTS+="$(usex syncft ' syncft' '')"
+
+ # Build shared libraries by default.
+ CHARM_OPTS+=" --build-shared"
+
+ if use charmproduction; then
+ CHARM_OPTS+=" --with-production"
+ else
+ if use charmdebug; then
+ CHARM_OPTS+=" --enable-charmdebug"
+ fi
+
+ if use charmtracing; then
+ CHARM_OPTS+=" --enable-tracing --enable-tracing-commthread"
+ fi
+ fi
+
+ CHARM_OPTS+="$(usex numa ' --with-numa' '')"
+ echo $CHARM_OPTS
+}
+
+src_prepare() {
+ sed \
+ -e "/CMK_CF90/s:f90:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
+ -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
+ -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
+ -e '/CMK_F90_MODINC/s:-p:-I:g' \
+ -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
+ -i src/arch/$(usex mpi "mpi" "net")-linux*/*sh || die
+
+ sed \
+ -e "s:-o conv-cpm:${LDFLAGS} &:g" \
+ -e "s:-o charmxi:${LDFLAGS} &:g" \
+ -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
+ -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
+ -e "s:-o charmrun:${LDFLAGS} &:g" \
+ -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
+ -e "s:-o charmd:${LDFLAGS} &:g" \
+ -i \
+ src/scripts/Makefile \
+ src/arch/net/charmrun/Makefile || die
+
+ # CMK optimization
+ use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
+
+ # Fix QA notice. Filed report with upstream.
+ append-cflags -DALLOCA_H
+
+ epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
+ epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-markupSanitizer.patch"
+ epatch "${FILESDIR}/charm-6.5.1-static-library-fix.patch"
+}
+
+src_compile() {
+ local mybuildoptions="$(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '') $(get_opts) ${MAKEOPTS} -j1 ${CFLAGS}"
+
+ # Build charmm++ first.
+ einfo "running ./build charm++ ${mybuildoptions}"
+ ./build charm++ ${mybuildoptions} || die "Failed to build charm++"
+
+ # make pdf/html docs
+ if use doc; then
+ emake -j1 -C doc/charm++
+ fi
+}
+
+src_test() {
+ make -C tests/charm++ test TESTOPTS="++local" || die
+}
+
+src_install() {
+ # Make charmc play well with gentoo before we move it into /usr/bin. This
+ # patch cannot be applied during src_prepare() because the charmc wrapper
+ # is used during building.
+ epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
+
+ sed -e "s|gentoo-include|${P}|" \
+ -e "s|gentoo-libdir|$(get_libdir)|g" \
+ -e "s|VERSION|${P}/VERSION|" \
+ -i ./src/scripts/charmc || die "failed patching charmc script"
+
+ # In the following, some of the files are symlinks to ../tmp which we need
+ # to dereference first (see bug 432834).
+
+ local i
+
+ # Install binaries.
+ for i in bin/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dobin "${i}"
+ done
+
+ # Install headers.
+ insinto /usr/include/${P}
+ for i in include/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ doins "${i}"
+ done
+
+ # Install static libs. Charm has a lot of .o "libs" that it requires at
+ # runtime.
+ if use static-libs; then
+ for i in lib/*.{a,o}; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dolib "${i}"
+ done
+ fi
+
+ # Install shared libs.
+ for i in lib_so/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dolib.so "${i}"
+ done
+
+ # Basic docs.
+ dodoc CHANGES README
+
+ # Install examples.
+ if use examples; then
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
+ die "Failed to fix examples"
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:./charmrun:./charmrun ++local:" -i || \
+ die "Failed to fix examples"
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples/charm++/*
+ fi
+
+ # Install pdf/html docs
+ if use doc; then
+ cd "${S}/doc/charm++"
+ # Install pdfs.
+ insinto /usr/share/doc/${PF}/pdf
+ doins *.pdf
+ # Install html.
+ docinto html
+ dohtml -r manual/*
+ fi
+}
+
+pkg_postinst() {
+ einfo "Please test your charm installation by copying the"
+ einfo "content of /usr/share/doc/${PF}/examples to a"
+ einfo "temporary location and run 'make test'."
+}
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch b/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch
new file mode 100644
index 0000000..6ed4c19
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch
@@ -0,0 +1,203 @@
+From 88f5739d3f0d34c51f318fc460b843253b4242e0 Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Fri, 8 Nov 2013 09:58:55 -0700
+Subject: [PATCH 2/2] Make markupSanitizer.py support python 3.1 and 3.2
+
+The script only supports <python-3 because of how uni-code literals are
+treated in python-3.{1,2}. In python-2, a unicode string had to be prefixed
+with 'u', while this notation was dropped in python-3.{1,2}. I have added a
+check to the script so that it runs now with python-2.7 and python-3.{1,2,3}.
+---
+ doc/markupSanitizer.py | 179 ++++++++++++++++++++++++++-----------------------
+ 1 file changed, 95 insertions(+), 84 deletions(-)
+
+diff --git a/doc/markupSanitizer.py b/doc/markupSanitizer.py
+index f206cab..6fe247d 100755
+--- a/doc/markupSanitizer.py
++++ b/doc/markupSanitizer.py
+@@ -4,87 +4,98 @@ from bs4 import BeautifulSoup
+ import sys
+ import os
+
+-# Accept filename as user input
+-argc = len( sys.argv )
+-if (argc < 2): raise Exception
+-fileName = sys.argv[1];
+-
+-# Construct a DOM object
+-soup = BeautifulSoup(open(fileName), "lxml")
+-
+-# Assuming, tt tags are not spewed recklessly by latex2html,
+-# replace them with code tags
+-for t in soup('tt'):
+- t.wrap( soup.new_tag('code') )
+- t.unwrap()
+-
+-# Rewrap all div class=alltt blocks in pre tags
+-for d in soup('div','alltt'):
+- d.wrap( soup.new_tag('pre') )
+- d.unwrap()
+-
+-# Remove br and span tags from within pre sections
+-for p in soup('pre'):
+- for b in p('br'):
+- b.extract()
+- for s in p('span'):
+- s.unwrap()
+-
+-# Remove all useless class 'arabic' spans
+-for s in soup('span','arabic'):
+- s.unwrap()
+-
+-# Extract the navigation bar
+-navmenu = soup.find('div', 'navigation')
+-if navmenu:
+- navmenu.extract()
+-
+-# Wrap the remaining contents within a div
+-if not soup.find('div', id='maincontainer'):
+- soup.body['id'] = 'maincontainer'
+- soup.body.name = 'div'
+- soup.find('div', id='maincontainer').wrap( soup.new_tag('body') )
+-
+-if navmenu:
+- # If this navmenu doesn't already have a TOC, insert one
+- if not navmenu.find('ul','manual-toc'):
+- # Add a toc within the navmenu
+- navmenuTOC = BeautifulSoup(open("tmp-navmenu.html"), "lxml")
+- navmenuTOC = navmenuTOC.find('ul','manual-toc').extract()
+- navmenuTOC.append( BeautifulSoup("".join([
+- '<li><a href="http://charm.cs.illinois.edu">PPL Homepage</a></li>',
+- '<li><a href="http://charm.cs.illinois.edu/help">Other Manuals</a></li>'])
+- ) )
+- navmenu.append(navmenuTOC)
+-
+- # Insert navigation symbols to prev and next links
+- prevsymbol = soup.new_tag('span')
+- prevsymbol['class'] = 'navsymbol'
+- prevsymbol.string = u'\xab'
+- prv = navmenu.find('li',id='nav-prev')
+- if prv:
+- prv.find('a').insert(0, prevsymbol)
+-
+- nextsymbol = soup.new_tag('span')
+- nextsymbol['class'] = 'navsymbol'
+- nextsymbol.string = u'\xbb'
+- nxt = navmenu.find('li',id='nav-next')
+- if nxt:
+- nxt.find('a').append(nextsymbol)
+-
+- # Reinsert the navigation bar at the end
+- soup.body.append(navmenu)
+-
+-# Extract the title
+-titl = soup.find('title')
+-
+-# Replace the head section with the user-supplied head markup
+-soup.find('head').extract()
+-newhead = BeautifulSoup(open("../assets/head.html"), "lxml")
+-newhead = newhead.find('head').extract()
+-newhead.append(titl)
+-soup.html.body.insert_before(newhead)
+-
+-# Print cleaned up markup to stdout
+-print( soup.prettify(formatter="html") )
+-
++def main ():
++ # Accept filename as user input
++ argc = len( sys.argv )
++ if (argc < 2): raise Exception
++ fileName = sys.argv[1];
++
++ # Construct a DOM object
++ soup = BeautifulSoup(open(fileName), "lxml")
++
++ # Assuming, tt tags are not spewed recklessly by latex2html,
++ # replace them with code tags
++ for t in soup('tt'):
++ t.wrap( soup.new_tag('code') )
++ t.unwrap()
++
++ # Rewrap all div class=alltt blocks in pre tags
++ for d in soup('div','alltt'):
++ d.wrap( soup.new_tag('pre') )
++ d.unwrap()
++
++ # Remove br and span tags from within pre sections
++ for p in soup('pre'):
++ for b in p('br'):
++ b.extract()
++ for s in p('span'):
++ s.unwrap()
++
++ # Remove all useless class 'arabic' spans
++ for s in soup('span','arabic'):
++ s.unwrap()
++
++ # Extract the navigation bar
++ navmenu = soup.find('div', 'navigation')
++ if navmenu:
++ navmenu.extract()
++
++ # Wrap the remaining contents within a div
++ if not soup.find('div', id='maincontainer'):
++ soup.body['id'] = 'maincontainer'
++ soup.body.name = 'div'
++ soup.find('div', id='maincontainer').wrap( soup.new_tag('body') )
++
++ if navmenu:
++ # If this navmenu doesn't already have a TOC, insert one
++ if not navmenu.find('ul','manual-toc'):
++ # Add a toc within the navmenu
++ navmenuTOC = BeautifulSoup(open("tmp-navmenu.html"), "lxml")
++ navmenuTOC = navmenuTOC.find('ul','manual-toc').extract()
++ navmenuTOC.append( BeautifulSoup("".join([
++ '<li><a href="http://charm.cs.illinois.edu">PPL Homepage</a></li>',
++ '<li><a href="http://charm.cs.illinois.edu/help">Other Manuals</a></li>'])
++ ) )
++ navmenu.append(navmenuTOC)
++
++ # Insert navigation symbols to prev and next links
++ prevsymbol = soup.new_tag('span')
++ prevsymbol['class'] = 'navsymbol'
++ prevsymbol.string = u('\xab')
++ prv = navmenu.find('li',id='nav-prev')
++ if prv:
++ prv.find('a').insert(0, prevsymbol)
++
++ nextsymbol = soup.new_tag('span')
++ nextsymbol['class'] = 'navsymbol'
++ nextsymbol.string = u('\xbb')
++ nxt = navmenu.find('li',id='nav-next')
++ if nxt:
++ nxt.find('a').append(nextsymbol)
++
++ # Reinsert the navigation bar at the end
++ soup.body.append(navmenu)
++
++ # Extract the title
++ titl = soup.find('title')
++
++ # Replace the head section with the user-supplied head markup
++ soup.find('head').extract()
++ newhead = BeautifulSoup(open("../assets/head.html"), "lxml")
++ newhead = newhead.find('head').extract()
++ newhead.append(titl)
++ soup.html.body.insert_before(newhead)
++
++ # Print cleaned up markup to stdout
++ print( soup.prettify(formatter="html") )
++
++if sys.version < '3':
++ import codecs
++ def u (x):
++ return codecs.unicode_escape_decode(x)[0]
++else:
++ def u (x):
++ return x
++
++if __name__ == "__main__":
++ main()
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2014-11-15 0:21 Christoph Junghans
0 siblings, 0 replies; 17+ messages in thread
From: Christoph Junghans @ 2014-11-15 0:21 UTC (permalink / raw
To: gentoo-commits
commit: ab63448739af960f1d8f83caa6bf2b396901823f
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 15 00:01:01 2014 +0000
Commit: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Sat Nov 15 00:01:01 2014 +0000
URL: http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=ab634487
never version in gx86
---
sys-cluster/charm/ChangeLog | 157 --------
sys-cluster/charm/charm-6.6.0_rc1-r1.ebuild | 220 -----------
sys-cluster/charm/charm-6.6.0_rc1.ebuild | 222 ------------
sys-cluster/charm/charm-6.6.0_rc2.ebuild | 221 -----------
.../charm/files/charm-6.5.0-charmc-gentoo.patch | 25 --
.../charm/files/charm-6.5.1-CkReductionMgr.patch | 34 --
.../charm/files/charm-6.5.1-charmc-gentoo.patch | 39 --
.../charm/files/charm-6.5.1-cleanup-config.patch | 58 ---
.../files/charm-6.5.1-fix-markupSanitizer.patch | 203 -----------
| 30 --
.../files/charm-6.5.1-fix-string-parsing.patch | 50 ---
.../files/charm-6.5.1-static-library-fix.patch | 396 --------------------
.../files/charm-6.6.0-static-library-fix.patch | 403 ---------------------
sys-cluster/charm/metadata.xml | 18 -
14 files changed, 2076 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
deleted file mode 100644
index 9b9425c..0000000
--- a/sys-cluster/charm/ChangeLog
+++ /dev/null
@@ -1,157 +0,0 @@
-# ChangeLog for sys-cluster/charm
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: $
-
- 06 May 2014; Christoph Junghans <ottxor@gentoo.org> charm-6.6.0_rc2.ebuild:
- do not compress examples
-
- 20 Feb 2014; Christoph Junghans <ottxor@gentoo.org> charm-6.6.0_rc2.ebuild:
- fixed build, gcc doesn't understand -j1
-
-*charm-6.6.0_rc2 (19 Feb 2014)
-
- 19 Feb 2014; Nicolas Bock <nicolasbock@gentoo.org> +charm-6.6.0_rc2.ebuild:
- sys-cluster/charm-6.6.0_rc2: Version bump to new release candidate.
-
- 06 Jan 2014; Nicolas Bock <nicolasbock@gentoo.org> charm-6.6.0_rc1-r1.ebuild:
- sys-cluster/charm-6.6.0_rc1-r1: After ongoing problems with charm's git
- repository, I packaged the rc as a tar file and serve it from my personal dev
- webpage.
-
- 03 Jan 2014; Nicolas Bock <nicolasbock@gentoo.org> charm-6.6.0_rc1-r1.ebuild:
- sys-cluster/charm-6.6.0_rc1-r1: Add non-shallow option to git to avoid
- breakage of checked out repository.
-
-*charm-6.6.0_rc1-r1 (02 Jan 2014)
-
- 02 Jan 2014; Nicolas Bock <nicolasbock@gentoo.org> +charm-6.6.0_rc1-r1.ebuild:
- sys-cluster/charm-6.6.0_rc1-r1: Cleanup of python deps.
-
- 02 Jan 2014; Nicolas Bock <nicolasbock@gentoo.org> -Manifest,
- -charm-6.5.1-r2.ebuild, -charm-6.5.1-r3.ebuild:
- sys-cluster/charm: Removing versions moved to x86.
-
- 13 Dec 2013; Nicolas Bock <nicolasbock@gentoo.org> metadata.xml:
- sys-cluster/charm: Updated maintainer email to gentoo.org.
-
- 22 Nov 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.6.0_rc1.ebuild:
- sys-cluster/charm-6.6.0-rc1: Reorganized some variables.
-
- 20 Nov 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.6.0-static-library-fix.patch, charm-6.6.0_rc1.ebuild:
- sys-cluster/charm-6.6.0_rc1: Rewrote patch to enable shared mode. The patch
- is targeted now for v6.7.0 by upstream.
-
-*charm-6.6.0_rc1 (20 Nov 2013)
-
- 20 Nov 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.6.0_rc1.ebuild:
- sys-cluster/charm-6.6.0_rc1: Version bump.
-
-*charm-6.5.1-r3 (08 Nov 2013)
-
- 08 Nov 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r3.ebuild,
- +files/charm-6.5.1-fix-markupSanitizer.patch:
- sys-cluster/charm-6.5.1-r3: Added patch to fix doc. When building the
- documentation, we used to have to force <python-3. The added patch makes this
- unecessary, which simplifies the ebuild and reduces its dependencies. The
- patch was submitted to upstream (Bug 328:
- https://charm.cs.illinois.edu/redmine/issues/328).
-
- 18 Oct 2013; Christoph Junghans <ottxor@gentoo.org> -charm-6.5.1-r1.ebuild,
- -charm-6.5.1.ebuild:
- remove old
-
- 15 Oct 2013; Nicolas Bock <nicolasbock@gmail.com>
- files/charm-6.5.1-static-library-fix.patch:
- sys-cluster/charm-6.5.1-r2: Updated static library patch with upstream patch.
-
-*charm-6.5.1-r2 (14 Oct 2013)
-
- 14 Oct 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r2.ebuild,
- +files/charm-6.5.1-static-library-fix.patch:
- sys-cluster/charm-6.5.1-r2: Fixed shared library bug. When charm is built
- with --enable-shared, not all libraries are actually built as shared
- libraries. I have reported this bug upstream and submitted a patch. I
- backported this patch and added it to this revision.
-
- 01 Oct 2013; Christoph Junghans <ottxor@gentoo.org> charm-6.5.1-r1.ebuild:
- fixed deps
-
- 01 Oct 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.1-fix-navmenuGenerator.patch, charm-6.5.1-r1.ebuild:
- sys-cluster/charm-6.5.1-r1: Fix docs with -j1 Docs don't build when using
- anything more than -j1.
-
- 27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.1-r1.ebuild:
- sys-cluster/charm-6.5.1-r1: Added python dependencies The documentation is
- built partly with python2.x scripts. I added the necessary dependencies.
-
- 27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.1-r1.ebuild:
- sys-cluster/charm-6.5.1-r1: doc depends on python-2
-
- 27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.1-r1.ebuild:
- sys-cluster/charm-6.5.1-r1: Added another missing DEPEND.
-
- 27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.1-charmc-gentoo.patch, charm-6.5.1-r1.ebuild,
- files/charm-6.5.1-CkReductionMgr.patch,
- files/charm-6.5.1-cleanup-config.patch,
- files/charm-6.5.1-fix-string-parsing.patch:
- sys-clyster/charm-6.5.1-r1: Fix missing DEPEND. This addresses bug 486202.
- The ebuild had a missing DEPEND using the doc USE flag.
-
- 27 Sep 2013; Christoph Junghans <ottxor@gentoo.org>
- files/charm-6.5.1-fix-string-parsing.patch:
- fix broken patch
-
- 14 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- files/charm-6.5.1-fix-string-parsing.patch:
- sys-cluster/charm-6.5.1: Small fix in patch to make printing less verbose.
-
- 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- files/charm-6.5.1-fix-string-parsing.patch:
- sys-cluster/charm-6.5.1: Fix patch for the last time.
-
- 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- files/charm-6.5.1-fix-string-parsing.patch:
- sys-cluster/charm-6.5.1-r1: Backported patch just added to correct upstream
- version.
-
- 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.1-fix-string-parsing.patch, charm-6.5.1-r1.ebuild:
- sys-cluster/charm-6.5.1-r1: Added patch from ticket 294.
-
-*charm-6.5.1-r1 (11 Sep 2013)
-
- 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r1.ebuild,
- charm-6.5.1.ebuild:
- Version bump to sys-cluster/charm-6.5.1-r1 to push CkMigrationMgr patch to
- users.
-
- 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.1-CkReductionMgr.patch, charm-6.5.1.ebuild:
- Added patch to fix bug in CkReductionMgr::reduceMessages(). This issues has
- been reported upstream (issue #287).
-
- 23 Jul 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.1-cleanup-config.patch, charm-6.5.1.ebuild:
- sys-cluster/charm-6.5.1: Added patch to fix config.h The added patch
- addresses bug #252, https://charm.cs.illinois.edu/redmine/issues/252 until
- upstream fixes this problem.
-
- 03 Jul 2013; Nicolas Bock <nicolasbock@gmail.com> metadata.xml:
- Beautification.
-
- 03 Jul 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.1.ebuild,
- metadata.xml:
- Added more use flags, and fixed a few typos.
-
- 02 Jul 2013; Nicolas Bock <nicolasbock@gmail.com>
- +files/charm-6.5.0-charmc-gentoo.patch, charm-6.5.1.ebuild:
- Added missing patch.
-
-*charm-6.5.1 (02 Jul 2013)
-
- 02 Jul 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1.ebuild,
- +metadata.xml:
- Version bump to sys-cluster/charm-6.5.1
diff --git a/sys-cluster/charm/charm-6.6.0_rc1-r1.ebuild b/sys-cluster/charm/charm-6.6.0_rc1-r1.ebuild
deleted file mode 100644
index 5be505e..0000000
--- a/sys-cluster/charm/charm-6.6.0_rc1-r1.ebuild
+++ /dev/null
@@ -1,220 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=5
-
-FORTRAN_STANDARD="90"
-PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
-
-inherit eutils flag-o-matic fortran-2 multilib python-any-r1 toolchain-funcs
-
-DESCRIPTION="Message-passing parallel language and runtime system"
-HOMEPAGE="http://charm.cs.uiuc.edu/"
-SRC_URI="http://dev.gentoo.org/~nicolasbock/charm-${PV}.tar.bz2"
-
-LICENSE="charm"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mlogft mpi numa smp static-libs syncft tcp"
-
-RDEPEND="mpi? ( virtual/mpi )"
-DEPEND="
- ${RDEPEND}
- doc? (
- >=app-text/poppler-0.12.3-r3[utils]
- dev-tex/latex2html
- virtual/tex-base
- $(python_gen_any_dep '
- >=dev-python/beautifulsoup-4[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- ')
- media-libs/netpbm
- ${PYTHON_DEPS}
- )"
-
-REQUIRED_USE="
- doc? ( ${PYTHON_REQUIRED_USE} )
- cmkopt? ( !charmdebug !charmtracing )
- charmproduction? ( !charmdebug !charmtracing )"
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-get_opts() {
- local CHARM_OPTS
-
- # TCP instead of default UDP for socket comunication
- # protocol
- CHARM_OPTS+="$(usex tcp ' tcp' '')"
-
- # enable direct SMP support using shared memory
- CHARM_OPTS+="$(usex smp ' smp' '')"
-
- CHARM_OPTS+="$(usex mlogft ' mlogft' '')"
- CHARM_OPTS+="$(usex syncft ' syncft' '')"
-
- # Build shared libraries by default.
- CHARM_OPTS+=" --build-shared"
-
- if use charmproduction; then
- CHARM_OPTS+=" --with-production"
- else
- if use charmdebug; then
- CHARM_OPTS+=" --enable-charmdebug"
- fi
-
- if use charmtracing; then
- CHARM_OPTS+=" --enable-tracing --enable-tracing-commthread"
- fi
- fi
-
- CHARM_OPTS+="$(usex numa ' --with-numa' '')"
- echo $CHARM_OPTS
-}
-
-src_prepare() {
- sed \
- -e "/CMK_CF77/s:[fg]77:$(usex mpi "mpif90" "$(tc-getF77)"):g" \
- -e "/CMK_CF90/s:f95:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/CMK_CF90/s:\`which f90.*$::g" \
- -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
- -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
- -e '/CMK_F90_MODINC/s:-p:-I:g' \
- -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
- -i src/arch/$(usex mpi "mpi" "net")*-linux*/*sh || die
- sed \
- -e "/CMK_CF90/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/F90DIR/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95target/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95version/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -i src/arch/common/*.sh || die
-
- sed \
- -e "s:-o conv-cpm:${LDFLAGS} &:g" \
- -e "s:-o charmxi:${LDFLAGS} &:g" \
- -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
- -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
- -e "s:-o charmrun:${LDFLAGS} &:g" \
- -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
- -e "s:-o charmd:${LDFLAGS} &:g" \
- -i \
- src/scripts/Makefile \
- src/util/charmrun-src/Makefile || die
-
- # CMK optimization
- use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
-
- # Fix QA notice. Filed report with upstream.
- append-cflags -DALLOCA_H
-
- epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
- epatch "${FILESDIR}/charm-6.5.1-fix-markupSanitizer.patch"
- epatch "${FILESDIR}/charm-6.6.0-static-library-fix.patch"
-}
-
-src_compile() {
- local build_version="$(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '')"
- local build_options="$(get_opts)"
- local build_charmc_options="${MAKEOPTS} -j1"
- local build_commandline="${build_version} ${build_options} ${build_charmc_options}"
-
- # Build charmm++ first.
- einfo "running ./build charm++ ${build_commandline}"
- ./build charm++ ${build_commandline} || die "Failed to build charm++"
-
- # make pdf/html docs
- if use doc; then
- emake -j1 -C doc/charm++
- fi
-}
-
-src_test() {
- make -C tests/charm++ test TESTOPTS="++local" || die
-}
-
-src_install() {
- # Make charmc play well with gentoo before we move it into /usr/bin. This
- # patch cannot be applied during src_prepare() because the charmc wrapper
- # is used during building.
- epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
-
- sed -e "s|gentoo-include|${P}|" \
- -e "s|gentoo-libdir|$(get_libdir)|g" \
- -e "s|VERSION|${P}/VERSION|" \
- -i ./src/scripts/charmc || die "failed patching charmc script"
-
- # In the following, some of the files are symlinks to ../tmp which we need
- # to dereference first (see bug 432834).
-
- local i
-
- # Install binaries.
- for i in bin/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dobin "${i}"
- done
-
- # Install headers.
- insinto /usr/include/${P}
- for i in include/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- doins "${i}"
- done
-
- # Install static libs. Charm has a lot of .o "libs" that it requires at
- # runtime.
- if use static-libs; then
- for i in lib/*.{a,o}; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib "${i}"
- done
- fi
-
- # Install shared libs.
- for i in lib_so/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib.so "${i}"
- done
-
- # Basic docs.
- dodoc CHANGES README
-
- # Install examples.
- if use examples; then
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
- die "Failed to fix examples"
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:./charmrun:./charmrun ++local:" -i || \
- die "Failed to fix examples"
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/charm++/*
- fi
-
- # Install pdf/html docs
- if use doc; then
- cd "${S}/doc/charm++"
- # Install pdfs.
- insinto /usr/share/doc/${PF}/pdf
- doins *.pdf
- # Install html.
- docinto html
- dohtml -r manual/*
- fi
-}
-
-pkg_postinst() {
- einfo "Please test your charm installation by copying the"
- einfo "content of /usr/share/doc/${PF}/examples to a"
- einfo "temporary location and run 'make test'."
-}
diff --git a/sys-cluster/charm/charm-6.6.0_rc1.ebuild b/sys-cluster/charm/charm-6.6.0_rc1.ebuild
deleted file mode 100644
index 0b29427..0000000
--- a/sys-cluster/charm/charm-6.6.0_rc1.ebuild
+++ /dev/null
@@ -1,222 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=5
-
-FORTRAN_STANDARD="90"
-PYTHON_COMPAT=( python{2_6,2_7} )
-
-inherit eutils flag-o-matic fortran-2 git-r3 multilib python-any-r1 toolchain-funcs
-
-DESCRIPTION="Message-passing parallel language and runtime system"
-HOMEPAGE="http://charm.cs.uiuc.edu/"
-SRC_URI=""
-
-EGIT_REPO_URI="http://charm.cs.uiuc.edu/gerrit/charm"
-EGIT_BRANCH="charm"
-EGIT_COMMIT="57051a8f07496b9f8f696f59fad477c8a2bc3e4d"
-
-LICENSE="charm"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mlogft mpi numa smp static-libs syncft tcp"
-
-RDEPEND="mpi? ( virtual/mpi )"
-DEPEND="
- ${RDEPEND}
- doc? (
- >=app-text/poppler-0.12.3-r3[utils]
- dev-tex/latex2html
- virtual/tex-base
- >=dev-python/beautifulsoup-4
- dev-python/lxml
- media-libs/netpbm
- ${PYTHON_DEPS}
- )"
-
-REQUIRED_USE="
- doc? ( ${PYTHON_REQ_USE} )
- cmkopt? ( !charmdebug !charmtracing )
- charmproduction? ( !charmdebug !charmtracing )"
-
-get_opts() {
- local CHARM_OPTS
-
- # TCP instead of default UDP for socket comunication
- # protocol
- CHARM_OPTS+="$(usex tcp ' tcp' '')"
-
- # enable direct SMP support using shared memory
- CHARM_OPTS+="$(usex smp ' smp' '')"
-
- CHARM_OPTS+="$(usex mlogft ' mlogft' '')"
- CHARM_OPTS+="$(usex syncft ' syncft' '')"
-
- # Build shared libraries by default.
- CHARM_OPTS+=" --build-shared"
-
- if use charmproduction; then
- CHARM_OPTS+=" --with-production"
- else
- if use charmdebug; then
- CHARM_OPTS+=" --enable-charmdebug"
- fi
-
- if use charmtracing; then
- CHARM_OPTS+=" --enable-tracing --enable-tracing-commthread"
- fi
- fi
-
- CHARM_OPTS+="$(usex numa ' --with-numa' '')"
-
- echo $CHARM_OPTS
-}
-
-src_prepare() {
- sed \
- -e "/CMK_CF77/s:[fg]77:$(usex mpi "mpif90" "$(tc-getF77)"):g" \
- -e "/CMK_CF90/s:f95:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/CMK_CF90/s:\`which f90.*$::g" \
- -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
- -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
- -e '/CMK_F90_MODINC/s:-p:-I:g' \
- -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
- -i src/arch/$(usex mpi "mpi" "net")*-linux*/*sh || die
- sed \
- -e "/CMK_CF90/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/F90DIR/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95target/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95version/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -i src/arch/common/*.sh || die
-
- sed \
- -e "s:-o conv-cpm:${LDFLAGS} &:g" \
- -e "s:-o charmxi:${LDFLAGS} &:g" \
- -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
- -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
- -e "s:-o charmrun:${LDFLAGS} &:g" \
- -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
- -e "s:-o charmd:${LDFLAGS} &:g" \
- -i \
- src/scripts/Makefile \
- src/util/charmrun-src/Makefile || die
-
- # CMK optimization
- use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
-
- # Fix QA notice. Filed report with upstream.
- append-cflags -DALLOCA_H
-
- #epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
- #epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
- #epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
- epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
- epatch "${FILESDIR}/charm-6.5.1-fix-markupSanitizer.patch"
- epatch "${FILESDIR}/charm-6.6.0-static-library-fix.patch"
-}
-
-src_compile() {
- local build_version="$(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '')"
- local build_options="$(get_opts)"
- local build_charmc_options="${MAKEOPTS} -j1"
- local build_commandline="${build_version} ${build_options} ${build_charmc_options}"
-
- # Build charmm++ first.
- einfo "running ./build charm++ ${build_commandline}"
- ./build charm++ ${build_commandline} || die "Failed to build charm++"
-
- # make pdf/html docs
- if use doc; then
- emake -j1 -C doc/charm++
- fi
-}
-
-src_test() {
- make -C tests/charm++ test TESTOPTS="++local" || die
-}
-
-src_install() {
- # Make charmc play well with gentoo before we move it into /usr/bin. This
- # patch cannot be applied during src_prepare() because the charmc wrapper
- # is used during building.
- epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
-
- sed -e "s|gentoo-include|${P}|" \
- -e "s|gentoo-libdir|$(get_libdir)|g" \
- -e "s|VERSION|${P}/VERSION|" \
- -i ./src/scripts/charmc || die "failed patching charmc script"
-
- # In the following, some of the files are symlinks to ../tmp which we need
- # to dereference first (see bug 432834).
-
- local i
-
- # Install binaries.
- for i in bin/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dobin "${i}"
- done
-
- # Install headers.
- insinto /usr/include/${P}
- for i in include/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- doins "${i}"
- done
-
- # Install static libs. Charm has a lot of .o "libs" that it requires at
- # runtime.
- if use static-libs; then
- for i in lib/*.{a,o}; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib "${i}"
- done
- fi
-
- # Install shared libs.
- for i in lib_so/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib.so "${i}"
- done
-
- # Basic docs.
- dodoc CHANGES README
-
- # Install examples.
- if use examples; then
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
- die "Failed to fix examples"
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:./charmrun:./charmrun ++local:" -i || \
- die "Failed to fix examples"
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/charm++/*
- fi
-
- # Install pdf/html docs
- if use doc; then
- cd "${S}/doc/charm++"
- # Install pdfs.
- insinto /usr/share/doc/${PF}/pdf
- doins *.pdf
- # Install html.
- docinto html
- dohtml -r manual/*
- fi
-}
-
-pkg_postinst() {
- einfo "Please test your charm installation by copying the"
- einfo "content of /usr/share/doc/${PF}/examples to a"
- einfo "temporary location and run 'make test'."
-}
diff --git a/sys-cluster/charm/charm-6.6.0_rc2.ebuild b/sys-cluster/charm/charm-6.6.0_rc2.ebuild
deleted file mode 100644
index 604192e..0000000
--- a/sys-cluster/charm/charm-6.6.0_rc2.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=5
-
-FORTRAN_STANDARD="90"
-PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
-
-inherit eutils flag-o-matic fortran-2 multilib python-any-r1 toolchain-funcs
-
-DESCRIPTION="Message-passing parallel language and runtime system"
-HOMEPAGE="http://charm.cs.uiuc.edu/"
-SRC_URI="http://dev.gentoo.org/~nicolasbock/charm-${PV}.tar.bz2"
-
-LICENSE="charm"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mlogft mpi numa smp static-libs syncft tcp"
-
-RDEPEND="mpi? ( virtual/mpi )"
-DEPEND="
- ${RDEPEND}
- doc? (
- >=app-text/poppler-0.12.3-r3[utils]
- dev-tex/latex2html
- virtual/tex-base
- $(python_gen_any_dep '
- >=dev-python/beautifulsoup-4[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- ')
- media-libs/netpbm
- ${PYTHON_DEPS}
- )"
-
-REQUIRED_USE="
- doc? ( ${PYTHON_REQUIRED_USE} )
- cmkopt? ( !charmdebug !charmtracing )
- charmproduction? ( !charmdebug !charmtracing )"
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-get_opts() {
- local CHARM_OPTS
-
- # TCP instead of default UDP for socket comunication
- # protocol
- CHARM_OPTS+="$(usex tcp ' tcp' '')"
-
- # enable direct SMP support using shared memory
- CHARM_OPTS+="$(usex smp ' smp' '')"
-
- CHARM_OPTS+="$(usex mlogft ' mlogft' '')"
- CHARM_OPTS+="$(usex syncft ' syncft' '')"
-
- # Build shared libraries by default.
- CHARM_OPTS+=" --build-shared"
-
- if use charmproduction; then
- CHARM_OPTS+=" --with-production"
- else
- if use charmdebug; then
- CHARM_OPTS+=" --enable-charmdebug"
- fi
-
- if use charmtracing; then
- CHARM_OPTS+=" --enable-tracing --enable-tracing-commthread"
- fi
- fi
-
- CHARM_OPTS+="$(usex numa ' --with-numa' '')"
- echo $CHARM_OPTS
-}
-
-src_prepare() {
- sed \
- -e "/CMK_CF77/s:[fg]77:$(usex mpi "mpif90" "$(tc-getF77)"):g" \
- -e "/CMK_CF90/s:f95:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/CMK_CF90/s:\`which f90.*$::g" \
- -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
- -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
- -e '/CMK_F90_MODINC/s:-p:-I:g' \
- -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
- -i src/arch/$(usex mpi "mpi" "net")*-linux*/*sh || die
- sed \
- -e "/CMK_CF90/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/F90DIR/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95target/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/f95version/s:gfortran:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -i src/arch/common/*.sh || die
-
- sed \
- -e "s:-o conv-cpm:${LDFLAGS} &:g" \
- -e "s:-o charmxi:${LDFLAGS} &:g" \
- -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
- -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
- -e "s:-o charmrun:${LDFLAGS} &:g" \
- -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
- -e "s:-o charmd:${LDFLAGS} &:g" \
- -i \
- src/scripts/Makefile \
- src/util/charmrun-src/Makefile || die
-
- # CMK optimization
- use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
-
- # Fix QA notice. Filed report with upstream.
- append-cflags -DALLOCA_H
-
- epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
- epatch "${FILESDIR}/charm-6.5.1-fix-markupSanitizer.patch"
- epatch "${FILESDIR}/charm-6.6.0-static-library-fix.patch"
-}
-
-src_compile() {
- local build_version="$(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '')"
- local build_options="$(get_opts)"
- #parallel build broken, just ignore MAKEOPTS
- local build_commandline="${build_version} ${build_options}"
-
- # Build charmm++ first.
- einfo "running ./build charm++ ${build_commandline}"
- ./build charm++ ${build_commandline} || die "Failed to build charm++"
-
- # make pdf/html docs
- if use doc; then
- emake -j1 -C doc/charm++
- fi
-}
-
-src_test() {
- make -C tests/charm++ test TESTOPTS="++local" || die
-}
-
-src_install() {
- # Make charmc play well with gentoo before we move it into /usr/bin. This
- # patch cannot be applied during src_prepare() because the charmc wrapper
- # is used during building.
- epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
-
- sed -e "s|gentoo-include|${P}|" \
- -e "s|gentoo-libdir|$(get_libdir)|g" \
- -e "s|VERSION|${P}/VERSION|" \
- -i ./src/scripts/charmc || die "failed patching charmc script"
-
- # In the following, some of the files are symlinks to ../tmp which we need
- # to dereference first (see bug 432834).
-
- local i
-
- # Install binaries.
- for i in bin/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dobin "${i}"
- done
-
- # Install headers.
- insinto /usr/include/${P}
- for i in include/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- doins "${i}"
- done
-
- # Install static libs. Charm has a lot of .o "libs" that it requires at
- # runtime.
- if use static-libs; then
- for i in lib/*.{a,o}; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib "${i}"
- done
- fi
-
- # Install shared libs.
- for i in lib_so/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib.so "${i}"
- done
-
- # Basic docs.
- dodoc CHANGES README
-
- # Install examples.
- if use examples; then
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
- die "Failed to fix examples"
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:./charmrun:./charmrun ++local:" -i || \
- die "Failed to fix examples"
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/charm++/*
- docompress -x /usr/share/doc/${PF}/examples
- fi
-
- # Install pdf/html docs
- if use doc; then
- cd "${S}/doc/charm++"
- # Install pdfs.
- insinto /usr/share/doc/${PF}/pdf
- doins *.pdf
- # Install html.
- docinto html
- dohtml -r manual/*
- fi
-}
-
-pkg_postinst() {
- einfo "Please test your charm installation by copying the"
- einfo "content of /usr/share/doc/${PF}/examples to a"
- einfo "temporary location and run 'make test'."
-}
diff --git a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
deleted file mode 100644
index 34923e3..0000000
--- a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- src/scripts/charmc.old 2013-05-30 10:18:02.261819771 -0600
-+++ src/scripts/charmc 2013-05-30 10:19:50.839661634 -0600
-@@ -361,19 +361,9 @@
- PROG_EXT=".exe"
- fi
-
--CHARMLIB="$CHARMBIN/../lib"
--CHARMINC="$CHARMBIN/../include"
--CHARMLIBSO=
--if test -d "$CHARMBIN/../lib_so"
--then
-- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- #getting absolute path is harder than thought because of symbolic links and ..
-- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
-- #csh is ok too if it exists
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
-- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
--fi
-+CHARMLIB="/usr/gentoo-libdir"
-+CHARMINC="/usr/include/gentoo-include"
-+CHARMLIBSO="/usr/gentoo-libdir"
-
- ##############################################################################
- #
diff --git a/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch b/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
deleted file mode 100644
index ad07fc3..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6b537784e9c345dee7f7cfd108c6abc779a969ae Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Fri, 27 Sep 2013 10:50:45 -0600
-Subject: [PATCH 2/4] Fixed bug in CkReductionMgr::reduceMessages().
-
-The first contribution of a child node is a single message. In this case
-CkReductionMgr::reduceMessages() simply returns the message without calling
-the reducer. However, when using the CkReduction::set reducer this behavior is
-incorrect, and instead the reducer should be called even for one single
-message so that the message is wrapped into a setElement struct. In the
-current implementation, the reduction becomes corrupted because the
-CkReduction::set() method one tier up in the reduction sizes the remote
-contribution incorrectly assuming a setElement struct and not a simple
-message.
----
- src/ck-core/ckreduction.C | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/ck-core/ckreduction.C b/src/ck-core/ckreduction.C
-index 07853a2..ef3e906 100644
---- a/src/ck-core/ckreduction.C
-+++ b/src/ck-core/ckreduction.C
-@@ -850,7 +850,7 @@ CkReductionMsg *CkReductionMgr::reduceMessages(void)
- else
- {//Use the reducer to reduce the messages
- //if there is only one msg to be reduced just return that message
-- if(nMsgs == 1){
-+ if(nMsgs == 1 && msgArr[0]->reducer != CkReduction::set) {
- ret = msgArr[0];
- }else{
- if (msgArr[0]->reducer == CkReduction::random) {
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch
deleted file mode 100644
index f1502ce..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 664eb097d1c5d1a158b1f41badc79d369a06aab6 Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Fri, 27 Sep 2013 10:53:31 -0600
-Subject: [PATCH 4/4] Fix paths for gentoo.
-
----
- src/scripts/charmc | 16 +++-------------
- 1 file changed, 3 insertions(+), 13 deletions(-)
-
-diff --git a/src/scripts/charmc b/src/scripts/charmc
-index 4d37a6b..8ec2f70 100755
---- a/src/scripts/charmc
-+++ b/src/scripts/charmc
-@@ -361,19 +361,9 @@ then
- PROG_EXT=".exe"
- fi
-
--CHARMLIB="$CHARMBIN/../lib"
--CHARMINC="$CHARMBIN/../include"
--CHARMLIBSO=
--if test -d "$CHARMBIN/../lib_so"
--then
-- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- #getting absolute path is harder than thought because of symbolic links and ..
-- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
-- #csh is ok too if it exists
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
-- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
--fi
-+CHARMLIB="/usr/gentoo-libdir"
-+CHARMINC="/usr/include/gentoo-include"
-+CHARMLIBSO="/usr/gentoo-libdir"
-
- ##############################################################################
- #
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch b/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
deleted file mode 100644
index ec71eb2..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From b0af812652269a59457ad1bbf57165c0543bcd07 Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Fri, 27 Sep 2013 10:49:52 -0600
-Subject: [PATCH 1/4] Commented out colliding defines in conv-autoconfig.h
-
-The colliding defines (bug #252) are commented out in configure.
----
- src/scripts/configure | 5 +++++
- src/scripts/configure.in | 3 +++
- 2 files changed, 8 insertions(+)
-
-diff --git a/src/scripts/configure b/src/scripts/configure
-index acd582c..faf268f 100755
---- a/src/scripts/configure
-+++ b/src/scripts/configure
-@@ -1703,6 +1703,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
- ac_config_headers="$ac_config_headers conv-autoconfig.h"
-
-
-+ac_config_commands="$ac_config_commands config-cleanup"
-+
-+
- CHARMINC="."
- test -r ./conv-config.sh && . ./conv-config.sh
-
-@@ -5259,6 +5262,7 @@ for ac_config_target in $ac_config_targets
- do
- case $ac_config_target in
- "conv-autoconfig.h") CONFIG_HEADERS="$CONFIG_HEADERS conv-autoconfig.h" ;;
-+ "config-cleanup") CONFIG_COMMANDS="$CONFIG_COMMANDS config-cleanup" ;;
- "libs/ck-libs/ampi/ampiCC") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampiCC" ;;
- "libs/ck-libs/ampi/ampirun") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampirun" ;;
- "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-@@ -5812,6 +5816,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
-
-
- case $ac_file$ac_mode in
-+ "config-cleanup":C) sed -i -e 's:^#define\s\+PACKAGE://&:' conv-autoconfig.h ;;
- "default":C) chmod +x libs/ck-libs/ampi/ampiCC libs/ck-libs/ampi/ampirun
- ;;
-
-diff --git a/src/scripts/configure.in b/src/scripts/configure.in
-index d1285ed..cad9a42 100644
---- a/src/scripts/configure.in
-+++ b/src/scripts/configure.in
-@@ -3,6 +3,9 @@ AC_INIT(./Makefile)
-
- AC_CONFIG_HEADER(conv-autoconfig.h)
-
-+AC_CONFIG_COMMANDS([config-cleanup],
-+ [sed -i -e 's:^#define\s\+PACKAGE://&:' conv-autoconfig.h])
-+
- CHARMINC="."
- test -r ./conv-config.sh && . ./conv-config.sh
-
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch b/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch
deleted file mode 100644
index 6ed4c19..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-fix-markupSanitizer.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-From 88f5739d3f0d34c51f318fc460b843253b4242e0 Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Fri, 8 Nov 2013 09:58:55 -0700
-Subject: [PATCH 2/2] Make markupSanitizer.py support python 3.1 and 3.2
-
-The script only supports <python-3 because of how uni-code literals are
-treated in python-3.{1,2}. In python-2, a unicode string had to be prefixed
-with 'u', while this notation was dropped in python-3.{1,2}. I have added a
-check to the script so that it runs now with python-2.7 and python-3.{1,2,3}.
----
- doc/markupSanitizer.py | 179 ++++++++++++++++++++++++++-----------------------
- 1 file changed, 95 insertions(+), 84 deletions(-)
-
-diff --git a/doc/markupSanitizer.py b/doc/markupSanitizer.py
-index f206cab..6fe247d 100755
---- a/doc/markupSanitizer.py
-+++ b/doc/markupSanitizer.py
-@@ -4,87 +4,98 @@ from bs4 import BeautifulSoup
- import sys
- import os
-
--# Accept filename as user input
--argc = len( sys.argv )
--if (argc < 2): raise Exception
--fileName = sys.argv[1];
--
--# Construct a DOM object
--soup = BeautifulSoup(open(fileName), "lxml")
--
--# Assuming, tt tags are not spewed recklessly by latex2html,
--# replace them with code tags
--for t in soup('tt'):
-- t.wrap( soup.new_tag('code') )
-- t.unwrap()
--
--# Rewrap all div class=alltt blocks in pre tags
--for d in soup('div','alltt'):
-- d.wrap( soup.new_tag('pre') )
-- d.unwrap()
--
--# Remove br and span tags from within pre sections
--for p in soup('pre'):
-- for b in p('br'):
-- b.extract()
-- for s in p('span'):
-- s.unwrap()
--
--# Remove all useless class 'arabic' spans
--for s in soup('span','arabic'):
-- s.unwrap()
--
--# Extract the navigation bar
--navmenu = soup.find('div', 'navigation')
--if navmenu:
-- navmenu.extract()
--
--# Wrap the remaining contents within a div
--if not soup.find('div', id='maincontainer'):
-- soup.body['id'] = 'maincontainer'
-- soup.body.name = 'div'
-- soup.find('div', id='maincontainer').wrap( soup.new_tag('body') )
--
--if navmenu:
-- # If this navmenu doesn't already have a TOC, insert one
-- if not navmenu.find('ul','manual-toc'):
-- # Add a toc within the navmenu
-- navmenuTOC = BeautifulSoup(open("tmp-navmenu.html"), "lxml")
-- navmenuTOC = navmenuTOC.find('ul','manual-toc').extract()
-- navmenuTOC.append( BeautifulSoup("".join([
-- '<li><a href="http://charm.cs.illinois.edu">PPL Homepage</a></li>',
-- '<li><a href="http://charm.cs.illinois.edu/help">Other Manuals</a></li>'])
-- ) )
-- navmenu.append(navmenuTOC)
--
-- # Insert navigation symbols to prev and next links
-- prevsymbol = soup.new_tag('span')
-- prevsymbol['class'] = 'navsymbol'
-- prevsymbol.string = u'\xab'
-- prv = navmenu.find('li',id='nav-prev')
-- if prv:
-- prv.find('a').insert(0, prevsymbol)
--
-- nextsymbol = soup.new_tag('span')
-- nextsymbol['class'] = 'navsymbol'
-- nextsymbol.string = u'\xbb'
-- nxt = navmenu.find('li',id='nav-next')
-- if nxt:
-- nxt.find('a').append(nextsymbol)
--
-- # Reinsert the navigation bar at the end
-- soup.body.append(navmenu)
--
--# Extract the title
--titl = soup.find('title')
--
--# Replace the head section with the user-supplied head markup
--soup.find('head').extract()
--newhead = BeautifulSoup(open("../assets/head.html"), "lxml")
--newhead = newhead.find('head').extract()
--newhead.append(titl)
--soup.html.body.insert_before(newhead)
--
--# Print cleaned up markup to stdout
--print( soup.prettify(formatter="html") )
--
-+def main ():
-+ # Accept filename as user input
-+ argc = len( sys.argv )
-+ if (argc < 2): raise Exception
-+ fileName = sys.argv[1];
-+
-+ # Construct a DOM object
-+ soup = BeautifulSoup(open(fileName), "lxml")
-+
-+ # Assuming, tt tags are not spewed recklessly by latex2html,
-+ # replace them with code tags
-+ for t in soup('tt'):
-+ t.wrap( soup.new_tag('code') )
-+ t.unwrap()
-+
-+ # Rewrap all div class=alltt blocks in pre tags
-+ for d in soup('div','alltt'):
-+ d.wrap( soup.new_tag('pre') )
-+ d.unwrap()
-+
-+ # Remove br and span tags from within pre sections
-+ for p in soup('pre'):
-+ for b in p('br'):
-+ b.extract()
-+ for s in p('span'):
-+ s.unwrap()
-+
-+ # Remove all useless class 'arabic' spans
-+ for s in soup('span','arabic'):
-+ s.unwrap()
-+
-+ # Extract the navigation bar
-+ navmenu = soup.find('div', 'navigation')
-+ if navmenu:
-+ navmenu.extract()
-+
-+ # Wrap the remaining contents within a div
-+ if not soup.find('div', id='maincontainer'):
-+ soup.body['id'] = 'maincontainer'
-+ soup.body.name = 'div'
-+ soup.find('div', id='maincontainer').wrap( soup.new_tag('body') )
-+
-+ if navmenu:
-+ # If this navmenu doesn't already have a TOC, insert one
-+ if not navmenu.find('ul','manual-toc'):
-+ # Add a toc within the navmenu
-+ navmenuTOC = BeautifulSoup(open("tmp-navmenu.html"), "lxml")
-+ navmenuTOC = navmenuTOC.find('ul','manual-toc').extract()
-+ navmenuTOC.append( BeautifulSoup("".join([
-+ '<li><a href="http://charm.cs.illinois.edu">PPL Homepage</a></li>',
-+ '<li><a href="http://charm.cs.illinois.edu/help">Other Manuals</a></li>'])
-+ ) )
-+ navmenu.append(navmenuTOC)
-+
-+ # Insert navigation symbols to prev and next links
-+ prevsymbol = soup.new_tag('span')
-+ prevsymbol['class'] = 'navsymbol'
-+ prevsymbol.string = u('\xab')
-+ prv = navmenu.find('li',id='nav-prev')
-+ if prv:
-+ prv.find('a').insert(0, prevsymbol)
-+
-+ nextsymbol = soup.new_tag('span')
-+ nextsymbol['class'] = 'navsymbol'
-+ nextsymbol.string = u('\xbb')
-+ nxt = navmenu.find('li',id='nav-next')
-+ if nxt:
-+ nxt.find('a').append(nextsymbol)
-+
-+ # Reinsert the navigation bar at the end
-+ soup.body.append(navmenu)
-+
-+ # Extract the title
-+ titl = soup.find('title')
-+
-+ # Replace the head section with the user-supplied head markup
-+ soup.find('head').extract()
-+ newhead = BeautifulSoup(open("../assets/head.html"), "lxml")
-+ newhead = newhead.find('head').extract()
-+ newhead.append(titl)
-+ soup.html.body.insert_before(newhead)
-+
-+ # Print cleaned up markup to stdout
-+ print( soup.prettify(formatter="html") )
-+
-+if sys.version < '3':
-+ import codecs
-+ def u (x):
-+ return codecs.unicode_escape_decode(x)[0]
-+else:
-+ def u (x):
-+ return x
-+
-+if __name__ == "__main__":
-+ main()
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch b/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch
deleted file mode 100644
index a19a8db..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 8b699f6c49df26b979da397b47c7dc7a099ed6b6 Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Sat, 28 Sep 2013 07:47:36 -0600
-Subject: [PATCH] Properly test for None return value in navmenuGenerator.py
-
----
- doc/navmenuGenerator.py | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/doc/navmenuGenerator.py b/doc/navmenuGenerator.py
-index c10afb5..5e5b97c 100755
---- a/doc/navmenuGenerator.py
-+++ b/doc/navmenuGenerator.py
-@@ -13,7 +13,12 @@ fileName = sys.argv[1];
- soup = BeautifulSoup(open(fileName), "lxml")
-
- # Get just the table of contents from the index page
--toc = soup.find("ul","ChildLinks").extract()
-+toc = soup.find("ul","ChildLinks")
-+
-+if toc == None:
-+ sys.exit(0)
-+
-+toc = toc.extract()
-
- # Retain only part and chapter titles
- for sctn in toc.select("li > ul > li > ul"):
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
deleted file mode 100644
index 1cc6b43..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 14f407a5d183cdac7029cc54a9d8ae6b0cb5cbcd Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Fri, 27 Sep 2013 10:52:18 -0600
-Subject: [PATCH 3/4] charmrun.c: parsing of strings now parses "\n" into '\n'
-
-Since gdb lacks anything like ';' to separate several commands in one line,
-the commands need to be separated by a newline character. I have added some
-parsing logic so that the string "\n" will now be translated into the
-character '\n'.
----
- src/arch/net/charmrun/charmrun.c | 23 +++++++++++++++++++++--
- 1 file changed, 21 insertions(+), 2 deletions(-)
-
-diff --git a/src/arch/net/charmrun/charmrun.c b/src/arch/net/charmrun/charmrun.c
-index 6837712..8818cf8 100644
---- a/src/arch/net/charmrun/charmrun.c
-+++ b/src/arch/net/charmrun/charmrun.c
-@@ -454,8 +454,27 @@ static int pparam_setdef(def, value)
- if (*p) return -1;
- return 0;
- case 's' :
-- *def->where.s = strdup(value);
-- return 0;
-+ {
-+ /* Parse input string and convert a literal "\n" into '\n'. */
-+ *def->where.s = (char*) calloc(strlen(value)+1, sizeof(char));
-+ char* parsed_value = (char*) *def->where.s;
-+ int i;
-+ int j = 0;
-+ for(i = 0; i < strlen(value); i++)
-+ {
-+ if(i+1 < strlen(value))
-+ {
-+ if(value[i] == '\\' && value[i+1] == 'n')
-+ {
-+ parsed_value[j++] = '\n';
-+ i++;
-+ continue;
-+ }
-+ }
-+ parsed_value[j++] = value[i];
-+ }
-+ return 0;
-+ }
- case 'f' :
- *def->where.f = strtol(value, &p, 10);
- if (*p) return -1;
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch b/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
deleted file mode 100644
index 13efb21..0000000
--- a/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
+++ /dev/null
@@ -1,396 +0,0 @@
-From 3a7261ab3a00472dd4bde0619c145c69aecf80c3 Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Mon, 14 Oct 2013 07:15:14 -0600
-Subject: [PATCH] Some libraries are only built statically,
-
-preventing a Charm++ installation with only dynamic libraries.
-
-On a typical Linux system only shared libraries are installed, because of the
-usual security and bloat arguments. However, if I build charm with
---build-shared, and then install only what is in lib_so, the charmc script
-breaks because some Converse libraries are built purely as .o and don't end up
-in lib_so. One example is seed based load balancing, e.g. libldb-rand.o. As
-far as I can tell, this is not too hard to fix. In the main makefile, the
-targets libldb-*.o are renamed to libldb-*.a, and the charmc script now tests
-both .a and .so when linking the seed based load balancing code.
----
- src/scripts/Makefile | 136 +++++++++++++++++++++++++--------------------------
- src/scripts/charmc | 37 ++++++++------
- 2 files changed, 91 insertions(+), 82 deletions(-)
-
-diff --git a/src/scripts/Makefile b/src/scripts/Makefile
-index 51d0e7b..1550ed2 100644
---- a/src/scripts/Makefile
-+++ b/src/scripts/Makefile
-@@ -349,7 +349,7 @@ dirs+sources:
- # Converse Libraries
- #
- ###############################################################################
--CLBLIBS=$(L)/libldb-rand.o $(L)/libldb-spray.o $(L)/libldb-workstealing.o $(L)/libldb-neighbor.o $(L)/libldb-none.o $(L)/libldb-test.o $(L)/libldb-bluegene.o
-+CLBLIBS=$(L)/libldb-rand.a $(L)/libldb-spray.a $(L)/libldb-workstealing.a $(L)/libldb-neighbor.a $(L)/libldb-none.a $(L)/libldb-test.a $(L)/libldb-bluegene.a
-
- TRACELIBS = $(L)/libtrace-converse.a $(L)/libtracef_f.a
-
-@@ -363,32 +363,32 @@ TRACELIBS += $(L)/libtrace-projections.a $(L)/libtrace-summary.a \
- $(L)/libtrace-memory.a
- endif
-
--MEMLIBS=$(L)/libmemory-default.o $(L)/libmemory-os.o $(L)/libmemory-gnu.o \
-- $(L)/libmemory-gnuold.o $(L)/libmemory-verbose.o \
-- $(L)/libmemory-paranoid.o \
-- $(L)/libmemory-leak.o $(L)/libmemory-isomalloc.o \
-- $(L)/libmemory-os-verbose.o $(L)/libmemory-os-isomalloc.o \
-- $(L)/libmemory-os-leak.o $(L)/libmemory-os-paranoid.o \
-- $(L)/libmemory-os-lock.o $(L)/libmemory-os-wrapper.o
-+MEMLIBS=$(L)/libmemory-default.a $(L)/libmemory-os.a $(L)/libmemory-gnu.a \
-+ $(L)/libmemory-gnuold.a $(L)/libmemory-verbose.a \
-+ $(L)/libmemory-paranoid.a \
-+ $(L)/libmemory-leak.a $(L)/libmemory-isomalloc.a \
-+ $(L)/libmemory-os-verbose.a $(L)/libmemory-os-isomalloc.a \
-+ $(L)/libmemory-os-leak.a $(L)/libmemory-os-paranoid.a \
-+ $(L)/libmemory-os-lock.a $(L)/libmemory-os-wrapper.a
-
- BUILD_CHARMDEBUG=$(shell CHARMINC=.; if test -f ./conv-config.sh; then . ./conv-config.sh; echo $$CMK_CHARMDEBUG; fi )
-
- ifneq "$(BUILD_CHARMDEBUG)" "0"
--MEMLIBS += $(L)/libmemory-charmdebug.o $(L)/libmemory-charmdebug-mmap.o \
-- $(L)/libmemory-charmdebug-slot.o \
-- $(L)/libmemory-charmdebug-mmap-slot.o \
-- $(L)/libmemory-os-charmdebug.o $(L)/libmemory-hooks-charmdebug.o
-+MEMLIBS += $(L)/libmemory-charmdebug.a $(L)/libmemory-charmdebug-mmap.a \
-+ $(L)/libmemory-charmdebug-slot.a \
-+ $(L)/libmemory-charmdebug-mmap-slot.a \
-+ $(L)/libmemory-os-charmdebug.a $(L)/libmemory-hooks-charmdebug.a
- endif
-
--THREADLIBS=$(L)/libthreads-default.o $(L)/libthreads-default-tls.o \
-- $(L)/libthreads-qt.o $(L)/libthreads-qt-tls.o \
-- $(L)/libthreads-context.o $(L)/libthreads-context-tls.o \
-- $(L)/libthreads-uJcontext.o $(L)/libthreads-uJcontext-tls.o \
-- $(L)/libthreads-pthreads.o $(L)/libthreads-fibers.o \
-- $(L)/libthreads-stackcopy.o $(L)/libthreads-memoryalias.o \
-- $(L)/libthreads-qt-memoryalias.o \
-- $(L)/libthreads-context-memoryalias.o \
-- $(L)/libthreads-uJcontext-memoryalias.o
-+THREADLIBS=$(L)/libthreads-default.a $(L)/libthreads-default-tls.a \
-+ $(L)/libthreads-qt.a $(L)/libthreads-qt-tls.a \
-+ $(L)/libthreads-context.a $(L)/libthreads-context-tls.a \
-+ $(L)/libthreads-uJcontext.a $(L)/libthreads-uJcontext-tls.a \
-+ $(L)/libthreads-pthreads.a $(L)/libthreads-fibers.a \
-+ $(L)/libthreads-stackcopy.a $(L)/libthreads-memoryalias.a \
-+ $(L)/libthreads-qt-memoryalias.a \
-+ $(L)/libthreads-context-memoryalias.a \
-+ $(L)/libthreads-uJcontext-memoryalias.a
-
- CVLIBS=$(L)/libconv-core.a \
- $(L)/libconv-cplus-y.a $(L)/libconv-cplus-n.a \
-@@ -543,19 +543,19 @@ lz4.o: lz4.c lz4.h
- $(CHARMC) -o $@ $<
-
- ## Converse load balancers (seed balancers, -balance)
--$(L)/libldb-none.o: cldb.none.c $(CVHEADERS)
-+$(L)/libldb-none.a: cldb.none.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.none.c
-
--$(L)/libldb-rand.o: cldb.rand.c cldb.h $(CVHEADERS)
-+$(L)/libldb-rand.a: cldb.rand.c cldb.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.rand.c
-
--$(L)/libldb-neighbor.o: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
-+$(L)/libldb-neighbor.a: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.neighbor.c
-
--$(L)/libldb-workstealing.o: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
-+$(L)/libldb-workstealing.a: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.workstealing.c
-
--$(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
-+$(L)/libldb-spray.a: cldb.spray.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.spray.c
-
-
-@@ -565,138 +565,138 @@ $(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
- #//$(L)/libldb-prioritycentralizedopt.o: cldb.prioritycentralizedopt.c cldb.prioritycentralizedopt.h $(CVHEADERS)
- #// $(CHARMC) -o $@ cldb.prioritycentralizedopt.c
-
--$(L)/libldb-test.o: cldb.test.c $(CVHEADERS)
-+$(L)/libldb-test.a: cldb.test.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.test.c
-
--$(L)/libldb-bluegene.o: cldb.bluegene.c $(CVHEADERS)
-+$(L)/libldb-bluegene.a: cldb.bluegene.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.bluegene.c
-
- ## Memory allocation libraries (-memory)
- MEM_DEPS=memory.c memory-gnu.c memory-gnuold.c converse.h conv-mach.h $(CVHEADERS)
--$(L)/libmemory-default.o: $(MEM_DEPS)
-+$(L)/libmemory-default.a: $(MEM_DEPS)
- $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_DEFAULT memory.c
-
--$(L)/libmemory-os.o: $(MEM_DEPS)
-+$(L)/libmemory-os.a: $(MEM_DEPS)
- $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS memory.c
-
--$(L)/libmemory-os-verbose.o: memory-verbose.c $(MEM_DEPS)
-+$(L)/libmemory-os-verbose.a: memory-verbose.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
-
--$(L)/libmemory-os-paranoid.o: memory-paranoid.c $(MEM_DEPS)
-+$(L)/libmemory-os-paranoid.a: memory-paranoid.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
-
--$(L)/libmemory-os-leak.o: $(MEM_DEPS)
-+$(L)/libmemory-os-leak.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
-
--$(L)/libmemory-os-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
-+$(L)/libmemory-os-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
-
--$(L)/libmemory-os-lock.o: memory-lock.c $(MEM_DEPS)
-+$(L)/libmemory-os-lock.a: memory-lock.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LOCK memory.c || touch $@
-
--$(L)/libmemory-os-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-os-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
--$(L)/libmemory-os-wrapper.o: memory-os-wrapper.C $(MEM_DEPS)
-+$(L)/libmemory-os-wrapper.a: memory-os-wrapper.C $(MEM_DEPS)
- -$(CHARMC) -o $@ memory-os-wrapper.C || touch $@
-
--$(L)/libmemory-hooks-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-hooks-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_GNU_HOOKS -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
- # If the system doesn't have sbrk, these compilations may fail.
- # This is OK, but then we can't use "-memory gnu" or friends.
--$(L)/libmemory-gnu.o: $(MEM_DEPS)
-+$(L)/libmemory-gnu.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNU memory.c || touch $@
-
--$(L)/libmemory-gnuold.o: $(MEM_DEPS)
-+$(L)/libmemory-gnuold.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNUOLD memory.c || touch $@
-
--$(L)/libmemory-verbose.o: memory-verbose.c $(MEM_DEPS)
-+$(L)/libmemory-verbose.a: memory-verbose.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
-
--$(L)/libmemory-paranoid.o: memory-paranoid.c $(MEM_DEPS)
-+$(L)/libmemory-paranoid.a: memory-paranoid.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
-
--$(L)/libmemory-leak.o: memory-leak.c $(MEM_DEPS)
-+$(L)/libmemory-leak.a: memory-leak.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
-
--$(L)/libmemory-cache.o: memory-cache.c $(MEM_DEPS)
-+$(L)/libmemory-cache.a: memory-cache.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_CACHE memory.c || touch $@
-
--$(L)/libmemory-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
-+$(L)/libmemory-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
-
--$(L)/libmemory-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
--$(L)/libmemory-charmdebug-slot.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-slot.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCMK_SEPARATE_SLOT memory.c || touch $@
-
--$(L)/libmemory-charmdebug-mmap.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-mmap.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP memory.c || touch $@
-
--$(L)/libmemory-charmdebug-mmap-slot.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-mmap-slot.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP -DCMK_SEPARATE_SLOT memory.c || touch $@
-
- ## Thread libraries (-thread)
-
- LIBTHREADSDEPS = threads.c $(CVHEADERS) QUICK_THREADS
-
--$(L)/libthreads-default.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-default.a: $(LIBTHREADSDEPS)
- $(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads -I. threads.c
-
--$(L)/libthreads-default-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-default-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-qt.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt.a: $(LIBTHREADSDEPS)
- $(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c
-
--$(L)/libthreads-qt-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-context.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-context-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-uJcontext.o: $(LIBTHREADSDEPS) uJcontext.c
-+$(L)/libthreads-uJcontext.a: $(LIBTHREADSDEPS) uJcontext.c
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
-
--$(L)/libthreads-uJcontext-tls.o: $(LIBTHREADSDEPS) uJcontext.c
-+$(L)/libthreads-uJcontext-tls.a: $(LIBTHREADSDEPS) uJcontext.c
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c || touch $@
-
--$(L)/libthreads-pthreads.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-pthreads.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_PTHREADS=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-fibers.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-fibers.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_FIBERS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-stackcopy.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-stackcopy.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_STACKCOPY=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-qt-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-context-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-uJcontext-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-uJcontext-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
-
- ## Global swapping (-swapglobal)
--swapglobal-target: $(L)/libglobal-swap.o $(L)/libglobal-copy.o $(L)/loadsym.o
-+swapglobal-target: $(L)/libglobal-swap.a $(L)/libglobal-copy.a $(L)/loadsym.a
-
--$(L)/libglobal-swap.o: global-elfgot.C $(CVHEADERS)
-+$(L)/libglobal-swap.a: global-elfgot.C $(CVHEADERS)
- -$(CHARMC) -c global-elfgot.C -o $@ || touch $@
-
--$(L)/libglobal-copy.o: global-elfcopy.C $(CVHEADERS)
-+$(L)/libglobal-copy.a: global-elfcopy.C $(CVHEADERS)
- -$(CHARMC) -c global-elfcopy.C -o $@ || touch $@
-
--$(L)/loadsym.o: loadsym.c $(CVHEADERS)
-+$(L)/loadsym.a: loadsym.c $(CVHEADERS)
- -$(CHARMC) -c loadsym.c -o $@ || touch $@
-
- ###############################################################################
-diff --git a/src/scripts/charmc b/src/scripts/charmc
-index 4d37a6b..ee4e76c 100755
---- a/src/scripts/charmc
-+++ b/src/scripts/charmc
-@@ -340,6 +340,14 @@ printVersion()
- echo Charm++ Version $version
- }
-
-+getLibraryObject()
-+{
-+ if [[ -f "${CHARMLIB}/$1-$2.a" ]]; then
-+ echo "${CHARMLIB}/$1-$2.a"
-+ else
-+ echo "${CHARMLIBSO}/$1-$2.so"
-+ fi
-+}
-
- ##############################################################################
- #
-@@ -1616,13 +1624,12 @@ then
- fi
-
- BAL_EXT=`getExtention $BALANCE`
--if [ -z "$BAL_EXT" ]
--then
--# Balance has no extention-- is a library reference
-- BAL_OBJ="$CHARMLIB/libldb-$BALANCE.o"
-+if [[ -z "$BAL_EXT" ]]; then
-+ # Balance has no extension-- is a library reference
-+ BAL_OBJ=$(getLibraryObject "libldb" ${BALANCE})
- else
--# Balance has some extention-- must be a .o or .a file
-- BAL_OBJ="$BALANCE"
-+ # Balance has some extension-- must be a .o or .a file
-+ BAL_OBJ="$BALANCE"
- fi
-
- Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
-@@ -1638,10 +1645,11 @@ then
- fi
- fi
-
-+Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
-
- # Check for valid choice of MEMORY
-
--MEM_OBJ="$CHARMLIB/libmemory-$MEMORY.o"
-+MEM_OBJ=$(getLibraryObject "libmemory" ${MEMORY})
-
- if [ ! -r $MEM_OBJ -o ! -s $MEM_OBJ ]
- then
-@@ -1652,7 +1660,7 @@ fi
- # For memory wrapping around the OS allocator, need to add also the wrapper object
- case $MEMORY in
- os-*)
-- MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.o"
-+ MEM_OBJ="${MEM_OBJ} $(getLibraryObject 'libmemory' 'os-wrapper')"
- ;;
- esac
-
-@@ -1670,7 +1678,8 @@ then
- THREAD=${THREAD}-tls
- fi
- fi
--THREAD_OBJ="$CHARMLIB/libthreads-$THREAD.o"
-+
-+THREAD_OBJ=$(getLibraryObject "libthreads" ${THREAD})
-
- if [ ! -r $THREAD_OBJ -o ! -s $THREAD_OBJ ]
- then
-@@ -1836,7 +1845,7 @@ esac
-
- if [ "$BUILD_SHARE" = "0" ]
- then
-- MIDDLE_LIBS="$MEM_OBJ $THREAD_OBJ $MIDDLE_LIBS"
-+ MIDDLE_LIBS="$MIDDLE_LIBS $MEM_OBJ $THREAD_OBJ"
- fi
-
- if [ "$CHARM_SHARED" = "1" ]
-@@ -1848,17 +1857,17 @@ then
- then
- LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $PRE_LIBRARIES"
- else
-- LANG_LIBS="-L$CHARMLIBSO $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
-+ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $modInitObj $PRE_LIBRARIES"
- fi
- else
-- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
-+ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $OBJECTFILES $modInitObj $PRE_LIBRARIES"
- fi
- if [ "$TRACE_WITH_TAU" = 1 ]
- then
- echo "Linking with the TAU libraries: $TAU_LIBS"
-- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
-+ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
- else
-- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
-+ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
- fi
- Debugf "All libraries are: $ALL_LIBS"
-
---
-1.8.1.5
-
diff --git a/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch b/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch
deleted file mode 100644
index 1281a65..0000000
--- a/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch
+++ /dev/null
@@ -1,403 +0,0 @@
-From 5885fa33575116c8d5c8e6e2e4beb007279a7fdb Mon Sep 17 00:00:00 2001
-From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Mon, 14 Oct 2013 07:15:14 -0600
-Subject: [PATCH] Some libraries are only built statically,
-
-preventing a Charm++ installation with only dynamic libraries.
-
-On a typical Linux system only shared libraries are installed, because of the
-usual security and bloat arguments. However, if I build charm with
---build-shared, and then install only what is in lib_so, the charmc script
-breaks because some Converse libraries are built purely as .o and don't end up
-in lib_so. One example is seed based load balancing, e.g. libldb-rand.o. As
-far as I can tell, this is not too hard to fix. In the main makefile, the
-targets libldb-*.o are renamed to libldb-*.a, and the charmc script now tests
-both .a and .so when linking the seed based load balancing code.
----
- src/scripts/Makefile | 136 +++++++++++++++++++++++++--------------------------
- src/scripts/charmc | 39 +++++++++------
- 2 files changed, 92 insertions(+), 83 deletions(-)
-
-diff --git a/src/scripts/Makefile b/src/scripts/Makefile
-index a52b801..d0e5a03 100644
---- a/src/scripts/Makefile
-+++ b/src/scripts/Makefile
-@@ -358,7 +358,7 @@ dirs+sources:
- # Converse Libraries
- #
- ###############################################################################
--CLBLIBS=$(L)/libldb-rand.o $(L)/libldb-spray.o $(L)/libldb-workstealing.o $(L)/libldb-neighbor.o $(L)/libldb-none.o $(L)/libldb-test.o $(L)/libldb-bluegene.o
-+CLBLIBS=$(L)/libldb-rand.a $(L)/libldb-spray.a $(L)/libldb-workstealing.a $(L)/libldb-neighbor.a $(L)/libldb-none.a $(L)/libldb-test.a $(L)/libldb-bluegene.a
-
- TRACELIBS = $(L)/libtrace-converse.a $(L)/libtracef_f.a
-
-@@ -372,32 +372,32 @@ TRACELIBS += $(L)/libtrace-projections.a $(L)/libtrace-summary.a \
- $(L)/libtrace-memory.a $(L)/libtrace-autoPerf.a
- endif
-
--MEMLIBS=$(L)/libmemory-default.o $(L)/libmemory-os.o $(L)/libmemory-gnu.o \
-- $(L)/libmemory-gnuold.o $(L)/libmemory-verbose.o \
-- $(L)/libmemory-paranoid.o \
-- $(L)/libmemory-leak.o $(L)/libmemory-isomalloc.o \
-- $(L)/libmemory-os-verbose.o $(L)/libmemory-os-isomalloc.o \
-- $(L)/libmemory-os-leak.o $(L)/libmemory-os-paranoid.o \
-- $(L)/libmemory-os-lock.o $(L)/libmemory-os-wrapper.o
-+MEMLIBS=$(L)/libmemory-default.a $(L)/libmemory-os.a $(L)/libmemory-gnu.a \
-+ $(L)/libmemory-gnuold.a $(L)/libmemory-verbose.a \
-+ $(L)/libmemory-paranoid.a \
-+ $(L)/libmemory-leak.a $(L)/libmemory-isomalloc.a \
-+ $(L)/libmemory-os-verbose.a $(L)/libmemory-os-isomalloc.a \
-+ $(L)/libmemory-os-leak.a $(L)/libmemory-os-paranoid.a \
-+ $(L)/libmemory-os-lock.a $(L)/libmemory-os-wrapper.a
-
- BUILD_CHARMDEBUG=$(shell CHARMINC=.; if test -f ./conv-config.sh; then . ./conv-config.sh; echo $$CMK_CHARMDEBUG; fi )
-
- ifneq "$(BUILD_CHARMDEBUG)" "0"
--MEMLIBS += $(L)/libmemory-charmdebug.o $(L)/libmemory-charmdebug-mmap.o \
-- $(L)/libmemory-charmdebug-slot.o \
-- $(L)/libmemory-charmdebug-mmap-slot.o \
-- $(L)/libmemory-os-charmdebug.o $(L)/libmemory-hooks-charmdebug.o
-+MEMLIBS += $(L)/libmemory-charmdebug.a $(L)/libmemory-charmdebug-mmap.a \
-+ $(L)/libmemory-charmdebug-slot.a \
-+ $(L)/libmemory-charmdebug-mmap-slot.a \
-+ $(L)/libmemory-os-charmdebug.a $(L)/libmemory-hooks-charmdebug.a
- endif
-
--THREADLIBS=$(L)/libthreads-default.o $(L)/libthreads-default-tls.o \
-- $(L)/libthreads-qt.o $(L)/libthreads-qt-tls.o \
-- $(L)/libthreads-context.o $(L)/libthreads-context-tls.o \
-- $(L)/libthreads-uJcontext.o $(L)/libthreads-uJcontext-tls.o \
-- $(L)/libthreads-pthreads.o $(L)/libthreads-fibers.o \
-- $(L)/libthreads-stackcopy.o $(L)/libthreads-memoryalias.o \
-- $(L)/libthreads-qt-memoryalias.o \
-- $(L)/libthreads-context-memoryalias.o \
-- $(L)/libthreads-uJcontext-memoryalias.o
-+THREADLIBS=$(L)/libthreads-default.a $(L)/libthreads-default-tls.a \
-+ $(L)/libthreads-qt.a $(L)/libthreads-qt-tls.a \
-+ $(L)/libthreads-context.a $(L)/libthreads-context-tls.a \
-+ $(L)/libthreads-uJcontext.a $(L)/libthreads-uJcontext-tls.a \
-+ $(L)/libthreads-pthreads.a $(L)/libthreads-fibers.a \
-+ $(L)/libthreads-stackcopy.a $(L)/libthreads-memoryalias.a \
-+ $(L)/libthreads-qt-memoryalias.a \
-+ $(L)/libthreads-context-memoryalias.a \
-+ $(L)/libthreads-uJcontext-memoryalias.a
-
- CVLIBS=$(L)/libconv-core.a \
- $(L)/libconv-cplus-y.a $(L)/libconv-cplus-n.a \
-@@ -494,19 +494,19 @@ pup_f.o: pup_f.f90 $(CVHEADERS)
- -$(CHARMC) -c pup_f.f90 && $(CHARMC) -cpmod ../include pupmod.M || touch pup_f.o
-
- ## Converse load balancers (seed balancers, -balance)
--$(L)/libldb-none.o: cldb.none.c $(CVHEADERS)
-+$(L)/libldb-none.a: cldb.none.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.none.c
-
--$(L)/libldb-rand.o: cldb.rand.c cldb.h $(CVHEADERS)
-+$(L)/libldb-rand.a: cldb.rand.c cldb.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.rand.c
-
--$(L)/libldb-neighbor.o: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
-+$(L)/libldb-neighbor.a: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.neighbor.c
-
--$(L)/libldb-workstealing.o: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
-+$(L)/libldb-workstealing.a: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
- $(CHARMC) -o $@ cldb.workstealing.c
-
--$(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
-+$(L)/libldb-spray.a: cldb.spray.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.spray.c
-
-
-@@ -516,138 +516,138 @@ $(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
- #//$(L)/libldb-prioritycentralizedopt.o: cldb.prioritycentralizedopt.c cldb.prioritycentralizedopt.h $(CVHEADERS)
- #// $(CHARMC) -o $@ cldb.prioritycentralizedopt.c
-
--$(L)/libldb-test.o: cldb.test.c $(CVHEADERS)
-+$(L)/libldb-test.a: cldb.test.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.test.c
-
--$(L)/libldb-bluegene.o: cldb.bluegene.c $(CVHEADERS)
-+$(L)/libldb-bluegene.a: cldb.bluegene.c $(CVHEADERS)
- $(CHARMC) -o $@ cldb.bluegene.c
-
- ## Memory allocation libraries (-memory)
- MEM_DEPS=memory.c memory-gnu.c memory-gnuold.c converse.h conv-mach.h $(CVHEADERS)
--$(L)/libmemory-default.o: $(MEM_DEPS)
-+$(L)/libmemory-default.a: $(MEM_DEPS)
- $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_DEFAULT memory.c
-
--$(L)/libmemory-os.o: $(MEM_DEPS)
-+$(L)/libmemory-os.a: $(MEM_DEPS)
- $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS memory.c
-
--$(L)/libmemory-os-verbose.o: memory-verbose.c $(MEM_DEPS)
-+$(L)/libmemory-os-verbose.a: memory-verbose.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
-
--$(L)/libmemory-os-paranoid.o: memory-paranoid.c $(MEM_DEPS)
-+$(L)/libmemory-os-paranoid.a: memory-paranoid.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
-
--$(L)/libmemory-os-leak.o: $(MEM_DEPS)
-+$(L)/libmemory-os-leak.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
-
--$(L)/libmemory-os-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
-+$(L)/libmemory-os-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
-
--$(L)/libmemory-os-lock.o: memory-lock.c $(MEM_DEPS)
-+$(L)/libmemory-os-lock.a: memory-lock.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LOCK memory.c || touch $@
-
--$(L)/libmemory-os-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-os-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
--$(L)/libmemory-os-wrapper.o: memory-os-wrapper.C $(MEM_DEPS)
-+$(L)/libmemory-os-wrapper.a: memory-os-wrapper.C $(MEM_DEPS)
- -$(CHARMC) -o $@ memory-os-wrapper.C || touch $@
-
--$(L)/libmemory-hooks-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-hooks-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_GNU_HOOKS -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
- # If the system doesn't have sbrk, these compilations may fail.
- # This is OK, but then we can't use "-memory gnu" or friends.
--$(L)/libmemory-gnu.o: $(MEM_DEPS)
-+$(L)/libmemory-gnu.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNU memory.c || touch $@
-
--$(L)/libmemory-gnuold.o: $(MEM_DEPS)
-+$(L)/libmemory-gnuold.a: $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNUOLD memory.c || touch $@
-
--$(L)/libmemory-verbose.o: memory-verbose.c $(MEM_DEPS)
-+$(L)/libmemory-verbose.a: memory-verbose.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
-
--$(L)/libmemory-paranoid.o: memory-paranoid.c $(MEM_DEPS)
-+$(L)/libmemory-paranoid.a: memory-paranoid.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
-
--$(L)/libmemory-leak.o: memory-leak.c $(MEM_DEPS)
-+$(L)/libmemory-leak.a: memory-leak.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
-
--$(L)/libmemory-cache.o: memory-cache.c $(MEM_DEPS)
-+$(L)/libmemory-cache.a: memory-cache.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_CACHE memory.c || touch $@
-
--$(L)/libmemory-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
-+$(L)/libmemory-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
- -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
-
--$(L)/libmemory-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
-
--$(L)/libmemory-charmdebug-slot.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-slot.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCMK_SEPARATE_SLOT memory.c || touch $@
-
--$(L)/libmemory-charmdebug-mmap.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-mmap.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP memory.c || touch $@
-
--$(L)/libmemory-charmdebug-mmap-slot.o: memory-charmdebug.c $(MEM_DEPS)
-+$(L)/libmemory-charmdebug-mmap-slot.a: memory-charmdebug.c $(MEM_DEPS)
- -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP -DCMK_SEPARATE_SLOT memory.c || touch $@
-
- ## Thread libraries (-thread)
-
- LIBTHREADSDEPS = threads.c $(CVHEADERS) QUICK_THREADS
-
--$(L)/libthreads-default.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-default.a: $(LIBTHREADSDEPS)
- $(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads -I. threads.c
-
--$(L)/libthreads-default-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-default-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-qt.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt.a: $(LIBTHREADSDEPS)
- $(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c
-
--$(L)/libthreads-qt-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-context.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-context-tls.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context-tls.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-uJcontext.o: $(LIBTHREADSDEPS) uJcontext.c
-+$(L)/libthreads-uJcontext.a: $(LIBTHREADSDEPS) uJcontext.c
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
-
--$(L)/libthreads-uJcontext-tls.o: $(LIBTHREADSDEPS) uJcontext.c
-+$(L)/libthreads-uJcontext-tls.a: $(LIBTHREADSDEPS) uJcontext.c
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c || touch $@
-
--$(L)/libthreads-pthreads.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-pthreads.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_PTHREADS=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-fibers.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-fibers.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_FIBERS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
-
--$(L)/libthreads-stackcopy.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-stackcopy.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_STACKCOPY=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-qt-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-qt-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-context-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-context-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
-
--$(L)/libthreads-uJcontext-memoryalias.o: $(LIBTHREADSDEPS)
-+$(L)/libthreads-uJcontext-memoryalias.a: $(LIBTHREADSDEPS)
- -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
-
- ## Global swapping (-swapglobal)
--swapglobal-target: $(L)/libglobal-swap.o $(L)/libglobal-copy.o $(L)/loadsym.o
-+swapglobal-target: $(L)/libglobal-swap.a $(L)/libglobal-copy.a $(L)/loadsym.a
-
--$(L)/libglobal-swap.o: global-elfgot.C $(CVHEADERS)
-+$(L)/libglobal-swap.a: global-elfgot.C $(CVHEADERS)
- -$(CHARMC) -c global-elfgot.C -o $@ || touch $@
-
--$(L)/libglobal-copy.o: global-elfcopy.C $(CVHEADERS)
-+$(L)/libglobal-copy.a: global-elfcopy.C $(CVHEADERS)
- -$(CHARMC) -c global-elfcopy.C -o $@ || touch $@
-
--$(L)/loadsym.o: loadsym.c $(CVHEADERS)
-+$(L)/loadsym.a: loadsym.c $(CVHEADERS)
- -$(CHARMC) -c loadsym.c -o $@ || touch $@
-
- ###############################################################################
-diff --git a/src/scripts/charmc b/src/scripts/charmc
-index 0502c27..a984b18 100755
---- a/src/scripts/charmc
-+++ b/src/scripts/charmc
-@@ -346,6 +346,14 @@ printVersion()
- echo Charm++ Version $version
- }
-
-+getLibraryObject()
-+{
-+ if [[ -f "${CHARMLIB}/$1-$2.a" ]]; then
-+ echo "${CHARMLIB}/$1-$2.a"
-+ else
-+ echo "${CHARMLIBSO}/$1-$2.so"
-+ fi
-+}
-
- ##############################################################################
- #
-@@ -1697,13 +1705,12 @@ then
- fi
-
- BAL_EXT=`getExtention $BALANCE`
--if [ -z "$BAL_EXT" ]
--then
--# Balance has no extention-- is a library reference
-- BAL_OBJ="$CHARMLIB/libldb-$BALANCE.o"
-+if [[ -z "$BAL_EXT" ]]; then
-+ # Balance has no extension-- is a library reference
-+ BAL_OBJ=$(getLibraryObject "libldb" ${BALANCE})
- else
--# Balance has some extention-- must be a .o or .a file
-- BAL_OBJ="$BALANCE"
-+ # Balance has some extension-- must be a .o or .a file
-+ BAL_OBJ="$BALANCE"
- fi
-
- Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
-@@ -1719,10 +1726,11 @@ then
- fi
- fi
-
-+Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
-
- # Check for valid choice of MEMORY
-
--MEM_OBJ="$CHARMLIB/libmemory-$MEMORY.o"
-+MEM_OBJ=$(getLibraryObject "libmemory" ${MEMORY})
-
- if [ ! -r $MEM_OBJ -o ! -s $MEM_OBJ ]
- then
-@@ -1733,7 +1741,7 @@ fi
- # For memory wrapping around the OS allocator, need to add also the wrapper object
- case $MEMORY in
- os-*)
-- MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.o"
-+ MEM_OBJ="${MEM_OBJ} $(getLibraryObject 'libmemory' 'os-wrapper')"
- ;;
- esac
-
-@@ -1751,7 +1759,8 @@ then
- THREAD=${THREAD}-tls
- fi
- fi
--THREAD_OBJ="$CHARMLIB/libthreads-$THREAD.o"
-+
-+THREAD_OBJ=$(getLibraryObject "libthreads" ${THREAD})
-
- if [ ! -r $THREAD_OBJ -o ! -s $THREAD_OBJ ]
- then
-@@ -1931,7 +1940,7 @@ esac
-
- if [ "$BUILD_SHARE" = "0" ]
- then
-- MIDDLE_LIBS="$MEM_OBJ $THREAD_OBJ $MIDDLE_LIBS"
-+ MIDDLE_LIBS="$MIDDLE_LIBS $MEM_OBJ $THREAD_OBJ"
- fi
-
- if [ "$CHARM_SHARED" = "1" ]
-@@ -1943,23 +1952,23 @@ then
- then
- LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $PRE_LIBRARIES"
- else
-- LANG_LIBS="-L$CHARMLIBSO $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
-+ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $modInitObj $PRE_LIBRARIES"
- fi
- else
- # if interoperate, need a lib with moduleinit
- if [ "$MPI_INTEROPERATE" != "" ]
- then
-- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $BAL_OBJ $PRE_LIBRARIES"
-+ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $PRE_LIBRARIES"
- else
-- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
-+ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $OBJECTFILES $modInitObj $PRE_LIBRARIES"
- fi
- fi
- if [ "$TRACE_WITH_TAU" = 1 ]
- then
- echo "Linking with the TAU libraries: $TAU_LIBS"
-- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
-+ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
- else
-- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
-+ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
- fi
- Debugf "All libraries are: $ALL_LIBS"
-
---
-1.8.3.2
-
diff --git a/sys-cluster/charm/metadata.xml b/sys-cluster/charm/metadata.xml
deleted file mode 100644
index 762f22d..0000000
--- a/sys-cluster/charm/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <herd>sci</herd>
- <maintainer>
- <email>nicolasbock@gentoo.org</email>
- </maintainer>
- <use>
- <flag name="charmdebug">Enable the charm debugger</flag>
- <flag name="charmproduction">Optimize performance of Charm++ runtime</flag>
- <flag name="charmtracing">Enable tracing support in Charm++</flag>
- <flag name="cmkopt">Enable CMK optimisation</flag>
- <flag name="mlogft">Compile with Charm++ message logging fault tolerance support</flag>
- <flag name="numa">Support memory affinity with NUMA</flag>
- <flag name="syncft">Compile with Charm++ fault tolerance support</flag>
- <flag name="tcp">Use TCP (instead of UPD) for socket communication</flag>
- </use>
-</pkgmetadata>
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-11-20 19:47 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-11-20 19:47 UTC (permalink / raw
To: gentoo-commits
commit: 39f06977839d8a63808d0043fa6bf6331e508852
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Wed Nov 20 19:47:30 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Wed Nov 20 19:47:30 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=39f06977
sys-cluster/charm-6.6.0_rc1: Rewrote patch to enable shared mode.
The patch is targeted now for v6.7.0 by upstream.
Package-Manager: portage-2.2.7
---
sys-cluster/charm/ChangeLog | 5 +
sys-cluster/charm/charm-6.6.0_rc1.ebuild | 2 +-
.../files/charm-6.6.0-static-library-fix.patch | 403 +++++++++++++++++++++
3 files changed, 409 insertions(+), 1 deletion(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 5f9842d..9b32737 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,11 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 20 Nov 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.6.0-static-library-fix.patch, charm-6.6.0_rc1.ebuild:
+ sys-cluster/charm-6.6.0_rc1: Rewrote patch to enable shared mode. The patch
+ is targeted now for v6.7.0 by upstream.
+
*charm-6.6.0_rc1 (20 Nov 2013)
20 Nov 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.6.0_rc1.ebuild:
diff --git a/sys-cluster/charm/charm-6.6.0_rc1.ebuild b/sys-cluster/charm/charm-6.6.0_rc1.ebuild
index 0791c1c..0870df5 100644
--- a/sys-cluster/charm/charm-6.6.0_rc1.ebuild
+++ b/sys-cluster/charm/charm-6.6.0_rc1.ebuild
@@ -113,7 +113,7 @@ src_prepare() {
#epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
epatch "${FILESDIR}/charm-6.5.1-fix-markupSanitizer.patch"
- #epatch "${FILESDIR}/charm-6.5.1-static-library-fix.patch"
+ epatch "${FILESDIR}/charm-6.6.0-static-library-fix.patch"
}
src_compile() {
diff --git a/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch b/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch
new file mode 100644
index 0000000..1281a65
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.6.0-static-library-fix.patch
@@ -0,0 +1,403 @@
+From 5885fa33575116c8d5c8e6e2e4beb007279a7fdb Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Mon, 14 Oct 2013 07:15:14 -0600
+Subject: [PATCH] Some libraries are only built statically,
+
+preventing a Charm++ installation with only dynamic libraries.
+
+On a typical Linux system only shared libraries are installed, because of the
+usual security and bloat arguments. However, if I build charm with
+--build-shared, and then install only what is in lib_so, the charmc script
+breaks because some Converse libraries are built purely as .o and don't end up
+in lib_so. One example is seed based load balancing, e.g. libldb-rand.o. As
+far as I can tell, this is not too hard to fix. In the main makefile, the
+targets libldb-*.o are renamed to libldb-*.a, and the charmc script now tests
+both .a and .so when linking the seed based load balancing code.
+---
+ src/scripts/Makefile | 136 +++++++++++++++++++++++++--------------------------
+ src/scripts/charmc | 39 +++++++++------
+ 2 files changed, 92 insertions(+), 83 deletions(-)
+
+diff --git a/src/scripts/Makefile b/src/scripts/Makefile
+index a52b801..d0e5a03 100644
+--- a/src/scripts/Makefile
++++ b/src/scripts/Makefile
+@@ -358,7 +358,7 @@ dirs+sources:
+ # Converse Libraries
+ #
+ ###############################################################################
+-CLBLIBS=$(L)/libldb-rand.o $(L)/libldb-spray.o $(L)/libldb-workstealing.o $(L)/libldb-neighbor.o $(L)/libldb-none.o $(L)/libldb-test.o $(L)/libldb-bluegene.o
++CLBLIBS=$(L)/libldb-rand.a $(L)/libldb-spray.a $(L)/libldb-workstealing.a $(L)/libldb-neighbor.a $(L)/libldb-none.a $(L)/libldb-test.a $(L)/libldb-bluegene.a
+
+ TRACELIBS = $(L)/libtrace-converse.a $(L)/libtracef_f.a
+
+@@ -372,32 +372,32 @@ TRACELIBS += $(L)/libtrace-projections.a $(L)/libtrace-summary.a \
+ $(L)/libtrace-memory.a $(L)/libtrace-autoPerf.a
+ endif
+
+-MEMLIBS=$(L)/libmemory-default.o $(L)/libmemory-os.o $(L)/libmemory-gnu.o \
+- $(L)/libmemory-gnuold.o $(L)/libmemory-verbose.o \
+- $(L)/libmemory-paranoid.o \
+- $(L)/libmemory-leak.o $(L)/libmemory-isomalloc.o \
+- $(L)/libmemory-os-verbose.o $(L)/libmemory-os-isomalloc.o \
+- $(L)/libmemory-os-leak.o $(L)/libmemory-os-paranoid.o \
+- $(L)/libmemory-os-lock.o $(L)/libmemory-os-wrapper.o
++MEMLIBS=$(L)/libmemory-default.a $(L)/libmemory-os.a $(L)/libmemory-gnu.a \
++ $(L)/libmemory-gnuold.a $(L)/libmemory-verbose.a \
++ $(L)/libmemory-paranoid.a \
++ $(L)/libmemory-leak.a $(L)/libmemory-isomalloc.a \
++ $(L)/libmemory-os-verbose.a $(L)/libmemory-os-isomalloc.a \
++ $(L)/libmemory-os-leak.a $(L)/libmemory-os-paranoid.a \
++ $(L)/libmemory-os-lock.a $(L)/libmemory-os-wrapper.a
+
+ BUILD_CHARMDEBUG=$(shell CHARMINC=.; if test -f ./conv-config.sh; then . ./conv-config.sh; echo $$CMK_CHARMDEBUG; fi )
+
+ ifneq "$(BUILD_CHARMDEBUG)" "0"
+-MEMLIBS += $(L)/libmemory-charmdebug.o $(L)/libmemory-charmdebug-mmap.o \
+- $(L)/libmemory-charmdebug-slot.o \
+- $(L)/libmemory-charmdebug-mmap-slot.o \
+- $(L)/libmemory-os-charmdebug.o $(L)/libmemory-hooks-charmdebug.o
++MEMLIBS += $(L)/libmemory-charmdebug.a $(L)/libmemory-charmdebug-mmap.a \
++ $(L)/libmemory-charmdebug-slot.a \
++ $(L)/libmemory-charmdebug-mmap-slot.a \
++ $(L)/libmemory-os-charmdebug.a $(L)/libmemory-hooks-charmdebug.a
+ endif
+
+-THREADLIBS=$(L)/libthreads-default.o $(L)/libthreads-default-tls.o \
+- $(L)/libthreads-qt.o $(L)/libthreads-qt-tls.o \
+- $(L)/libthreads-context.o $(L)/libthreads-context-tls.o \
+- $(L)/libthreads-uJcontext.o $(L)/libthreads-uJcontext-tls.o \
+- $(L)/libthreads-pthreads.o $(L)/libthreads-fibers.o \
+- $(L)/libthreads-stackcopy.o $(L)/libthreads-memoryalias.o \
+- $(L)/libthreads-qt-memoryalias.o \
+- $(L)/libthreads-context-memoryalias.o \
+- $(L)/libthreads-uJcontext-memoryalias.o
++THREADLIBS=$(L)/libthreads-default.a $(L)/libthreads-default-tls.a \
++ $(L)/libthreads-qt.a $(L)/libthreads-qt-tls.a \
++ $(L)/libthreads-context.a $(L)/libthreads-context-tls.a \
++ $(L)/libthreads-uJcontext.a $(L)/libthreads-uJcontext-tls.a \
++ $(L)/libthreads-pthreads.a $(L)/libthreads-fibers.a \
++ $(L)/libthreads-stackcopy.a $(L)/libthreads-memoryalias.a \
++ $(L)/libthreads-qt-memoryalias.a \
++ $(L)/libthreads-context-memoryalias.a \
++ $(L)/libthreads-uJcontext-memoryalias.a
+
+ CVLIBS=$(L)/libconv-core.a \
+ $(L)/libconv-cplus-y.a $(L)/libconv-cplus-n.a \
+@@ -494,19 +494,19 @@ pup_f.o: pup_f.f90 $(CVHEADERS)
+ -$(CHARMC) -c pup_f.f90 && $(CHARMC) -cpmod ../include pupmod.M || touch pup_f.o
+
+ ## Converse load balancers (seed balancers, -balance)
+-$(L)/libldb-none.o: cldb.none.c $(CVHEADERS)
++$(L)/libldb-none.a: cldb.none.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.none.c
+
+-$(L)/libldb-rand.o: cldb.rand.c cldb.h $(CVHEADERS)
++$(L)/libldb-rand.a: cldb.rand.c cldb.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.rand.c
+
+-$(L)/libldb-neighbor.o: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
++$(L)/libldb-neighbor.a: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.neighbor.c
+
+-$(L)/libldb-workstealing.o: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
++$(L)/libldb-workstealing.a: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.workstealing.c
+
+-$(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
++$(L)/libldb-spray.a: cldb.spray.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.spray.c
+
+
+@@ -516,138 +516,138 @@ $(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
+ #//$(L)/libldb-prioritycentralizedopt.o: cldb.prioritycentralizedopt.c cldb.prioritycentralizedopt.h $(CVHEADERS)
+ #// $(CHARMC) -o $@ cldb.prioritycentralizedopt.c
+
+-$(L)/libldb-test.o: cldb.test.c $(CVHEADERS)
++$(L)/libldb-test.a: cldb.test.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.test.c
+
+-$(L)/libldb-bluegene.o: cldb.bluegene.c $(CVHEADERS)
++$(L)/libldb-bluegene.a: cldb.bluegene.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.bluegene.c
+
+ ## Memory allocation libraries (-memory)
+ MEM_DEPS=memory.c memory-gnu.c memory-gnuold.c converse.h conv-mach.h $(CVHEADERS)
+-$(L)/libmemory-default.o: $(MEM_DEPS)
++$(L)/libmemory-default.a: $(MEM_DEPS)
+ $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_DEFAULT memory.c
+
+-$(L)/libmemory-os.o: $(MEM_DEPS)
++$(L)/libmemory-os.a: $(MEM_DEPS)
+ $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS memory.c
+
+-$(L)/libmemory-os-verbose.o: memory-verbose.c $(MEM_DEPS)
++$(L)/libmemory-os-verbose.a: memory-verbose.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
+
+-$(L)/libmemory-os-paranoid.o: memory-paranoid.c $(MEM_DEPS)
++$(L)/libmemory-os-paranoid.a: memory-paranoid.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
+
+-$(L)/libmemory-os-leak.o: $(MEM_DEPS)
++$(L)/libmemory-os-leak.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
+
+-$(L)/libmemory-os-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
++$(L)/libmemory-os-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
+
+-$(L)/libmemory-os-lock.o: memory-lock.c $(MEM_DEPS)
++$(L)/libmemory-os-lock.a: memory-lock.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LOCK memory.c || touch $@
+
+-$(L)/libmemory-os-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-os-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+-$(L)/libmemory-os-wrapper.o: memory-os-wrapper.C $(MEM_DEPS)
++$(L)/libmemory-os-wrapper.a: memory-os-wrapper.C $(MEM_DEPS)
+ -$(CHARMC) -o $@ memory-os-wrapper.C || touch $@
+
+-$(L)/libmemory-hooks-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-hooks-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_GNU_HOOKS -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+ # If the system doesn't have sbrk, these compilations may fail.
+ # This is OK, but then we can't use "-memory gnu" or friends.
+-$(L)/libmemory-gnu.o: $(MEM_DEPS)
++$(L)/libmemory-gnu.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNU memory.c || touch $@
+
+-$(L)/libmemory-gnuold.o: $(MEM_DEPS)
++$(L)/libmemory-gnuold.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNUOLD memory.c || touch $@
+
+-$(L)/libmemory-verbose.o: memory-verbose.c $(MEM_DEPS)
++$(L)/libmemory-verbose.a: memory-verbose.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
+
+-$(L)/libmemory-paranoid.o: memory-paranoid.c $(MEM_DEPS)
++$(L)/libmemory-paranoid.a: memory-paranoid.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
+
+-$(L)/libmemory-leak.o: memory-leak.c $(MEM_DEPS)
++$(L)/libmemory-leak.a: memory-leak.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
+
+-$(L)/libmemory-cache.o: memory-cache.c $(MEM_DEPS)
++$(L)/libmemory-cache.a: memory-cache.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_CACHE memory.c || touch $@
+
+-$(L)/libmemory-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
++$(L)/libmemory-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
+
+-$(L)/libmemory-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-slot.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-slot.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCMK_SEPARATE_SLOT memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-mmap.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-mmap.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-mmap-slot.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-mmap-slot.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP -DCMK_SEPARATE_SLOT memory.c || touch $@
+
+ ## Thread libraries (-thread)
+
+ LIBTHREADSDEPS = threads.c $(CVHEADERS) QUICK_THREADS
+
+-$(L)/libthreads-default.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-default.a: $(LIBTHREADSDEPS)
+ $(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads -I. threads.c
+
+-$(L)/libthreads-default-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-default-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-qt.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt.a: $(LIBTHREADSDEPS)
+ $(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c
+
+-$(L)/libthreads-qt-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-context.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-context-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-uJcontext.o: $(LIBTHREADSDEPS) uJcontext.c
++$(L)/libthreads-uJcontext.a: $(LIBTHREADSDEPS) uJcontext.c
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
+
+-$(L)/libthreads-uJcontext-tls.o: $(LIBTHREADSDEPS) uJcontext.c
++$(L)/libthreads-uJcontext-tls.a: $(LIBTHREADSDEPS) uJcontext.c
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c || touch $@
+
+-$(L)/libthreads-pthreads.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-pthreads.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_PTHREADS=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-fibers.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-fibers.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_FIBERS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-stackcopy.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-stackcopy.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_STACKCOPY=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-qt-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-context-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-uJcontext-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-uJcontext-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
+
+ ## Global swapping (-swapglobal)
+-swapglobal-target: $(L)/libglobal-swap.o $(L)/libglobal-copy.o $(L)/loadsym.o
++swapglobal-target: $(L)/libglobal-swap.a $(L)/libglobal-copy.a $(L)/loadsym.a
+
+-$(L)/libglobal-swap.o: global-elfgot.C $(CVHEADERS)
++$(L)/libglobal-swap.a: global-elfgot.C $(CVHEADERS)
+ -$(CHARMC) -c global-elfgot.C -o $@ || touch $@
+
+-$(L)/libglobal-copy.o: global-elfcopy.C $(CVHEADERS)
++$(L)/libglobal-copy.a: global-elfcopy.C $(CVHEADERS)
+ -$(CHARMC) -c global-elfcopy.C -o $@ || touch $@
+
+-$(L)/loadsym.o: loadsym.c $(CVHEADERS)
++$(L)/loadsym.a: loadsym.c $(CVHEADERS)
+ -$(CHARMC) -c loadsym.c -o $@ || touch $@
+
+ ###############################################################################
+diff --git a/src/scripts/charmc b/src/scripts/charmc
+index 0502c27..a984b18 100755
+--- a/src/scripts/charmc
++++ b/src/scripts/charmc
+@@ -346,6 +346,14 @@ printVersion()
+ echo Charm++ Version $version
+ }
+
++getLibraryObject()
++{
++ if [[ -f "${CHARMLIB}/$1-$2.a" ]]; then
++ echo "${CHARMLIB}/$1-$2.a"
++ else
++ echo "${CHARMLIBSO}/$1-$2.so"
++ fi
++}
+
+ ##############################################################################
+ #
+@@ -1697,13 +1705,12 @@ then
+ fi
+
+ BAL_EXT=`getExtention $BALANCE`
+-if [ -z "$BAL_EXT" ]
+-then
+-# Balance has no extention-- is a library reference
+- BAL_OBJ="$CHARMLIB/libldb-$BALANCE.o"
++if [[ -z "$BAL_EXT" ]]; then
++ # Balance has no extension-- is a library reference
++ BAL_OBJ=$(getLibraryObject "libldb" ${BALANCE})
+ else
+-# Balance has some extention-- must be a .o or .a file
+- BAL_OBJ="$BALANCE"
++ # Balance has some extension-- must be a .o or .a file
++ BAL_OBJ="$BALANCE"
+ fi
+
+ Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
+@@ -1719,10 +1726,11 @@ then
+ fi
+ fi
+
++Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
+
+ # Check for valid choice of MEMORY
+
+-MEM_OBJ="$CHARMLIB/libmemory-$MEMORY.o"
++MEM_OBJ=$(getLibraryObject "libmemory" ${MEMORY})
+
+ if [ ! -r $MEM_OBJ -o ! -s $MEM_OBJ ]
+ then
+@@ -1733,7 +1741,7 @@ fi
+ # For memory wrapping around the OS allocator, need to add also the wrapper object
+ case $MEMORY in
+ os-*)
+- MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.o"
++ MEM_OBJ="${MEM_OBJ} $(getLibraryObject 'libmemory' 'os-wrapper')"
+ ;;
+ esac
+
+@@ -1751,7 +1759,8 @@ then
+ THREAD=${THREAD}-tls
+ fi
+ fi
+-THREAD_OBJ="$CHARMLIB/libthreads-$THREAD.o"
++
++THREAD_OBJ=$(getLibraryObject "libthreads" ${THREAD})
+
+ if [ ! -r $THREAD_OBJ -o ! -s $THREAD_OBJ ]
+ then
+@@ -1931,7 +1940,7 @@ esac
+
+ if [ "$BUILD_SHARE" = "0" ]
+ then
+- MIDDLE_LIBS="$MEM_OBJ $THREAD_OBJ $MIDDLE_LIBS"
++ MIDDLE_LIBS="$MIDDLE_LIBS $MEM_OBJ $THREAD_OBJ"
+ fi
+
+ if [ "$CHARM_SHARED" = "1" ]
+@@ -1943,23 +1952,23 @@ then
+ then
+ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $PRE_LIBRARIES"
+ else
+- LANG_LIBS="-L$CHARMLIBSO $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
++ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $modInitObj $PRE_LIBRARIES"
+ fi
+ else
+ # if interoperate, need a lib with moduleinit
+ if [ "$MPI_INTEROPERATE" != "" ]
+ then
+- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $BAL_OBJ $PRE_LIBRARIES"
++ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $PRE_LIBRARIES"
+ else
+- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
++ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $CMK_SYSINC $OBJECTFILES $modInitObj $PRE_LIBRARIES"
+ fi
+ fi
+ if [ "$TRACE_WITH_TAU" = 1 ]
+ then
+ echo "Linking with the TAU libraries: $TAU_LIBS"
+- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
++ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
+ else
+- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
++ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
+ fi
+ Debugf "All libraries are: $ALL_LIBS"
+
+--
+1.8.3.2
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-10-15 4:44 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-10-15 4:44 UTC (permalink / raw
To: gentoo-commits
commit: 85b30655d69274e378e7e236ba502f2a75bfaa23
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Tue Oct 15 04:43:33 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Tue Oct 15 04:43:33 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=85b30655
sys-cluster/charm-6.5.1-r2: Updated static library patch with upstream patch.
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 4 ++
.../files/charm-6.5.1-static-library-fix.patch | 74 +++++++++++++---------
2 files changed, 48 insertions(+), 30 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 5df95a4..e2f228b 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 15 Oct 2013; Nicolas Bock <nicolasbock@gmail.com>
+ files/charm-6.5.1-static-library-fix.patch:
+ sys-cluster/charm-6.5.1-r2: Updated static library patch with upstream patch.
+
*charm-6.5.1-r2 (14 Oct 2013)
14 Oct 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r2.ebuild,
diff --git a/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch b/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
index e320a9c..13efb21 100644
--- a/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
@@ -1,7 +1,9 @@
-From 6557d011109dd6ad23cde0fbd26b620e92bc005f Mon Sep 17 00:00:00 2001
+From 3a7261ab3a00472dd4bde0619c145c69aecf80c3 Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
Date: Mon, 14 Oct 2013 07:15:14 -0600
-Subject: [PATCH] Enable full static linking of Charm++ applications.
+Subject: [PATCH] Some libraries are only built statically,
+
+preventing a Charm++ installation with only dynamic libraries.
On a typical Linux system only shared libraries are installed, because of the
usual security and bloat arguments. However, if I build charm with
@@ -13,8 +15,8 @@ targets libldb-*.o are renamed to libldb-*.a, and the charmc script now tests
both .a and .so when linking the seed based load balancing code.
---
src/scripts/Makefile | 136 +++++++++++++++++++++++++--------------------------
- src/scripts/charmc | 42 +++++++++++-----
- 2 files changed, 97 insertions(+), 81 deletions(-)
+ src/scripts/charmc | 37 ++++++++------
+ 2 files changed, 91 insertions(+), 82 deletions(-)
diff --git a/src/scripts/Makefile b/src/scripts/Makefile
index 51d0e7b..1550ed2 100644
@@ -289,10 +291,25 @@ index 51d0e7b..1550ed2 100644
###############################################################################
diff --git a/src/scripts/charmc b/src/scripts/charmc
-index 4d37a6b..6957947 100755
+index 4d37a6b..ee4e76c 100755
--- a/src/scripts/charmc
+++ b/src/scripts/charmc
-@@ -1616,13 +1616,16 @@ then
+@@ -340,6 +340,14 @@ printVersion()
+ echo Charm++ Version $version
+ }
+
++getLibraryObject()
++{
++ if [[ -f "${CHARMLIB}/$1-$2.a" ]]; then
++ echo "${CHARMLIB}/$1-$2.a"
++ else
++ echo "${CHARMLIBSO}/$1-$2.so"
++ fi
++}
+
+ ##############################################################################
+ #
+@@ -1616,13 +1624,12 @@ then
fi
BAL_EXT=`getExtention $BALANCE`
@@ -302,11 +319,7 @@ index 4d37a6b..6957947 100755
- BAL_OBJ="$CHARMLIB/libldb-$BALANCE.o"
+if [[ -z "$BAL_EXT" ]]; then
+ # Balance has no extension-- is a library reference
-+ if [[ -f "${CHARMLIB}/libldb-$BALANCE.a" ]]; then
-+ BAL_OBJ="${CHARMLIB}/libldb-$BALANCE.a"
-+ else
-+ BAL_OBJ="${CHARMLIBSO}/libldb-$BALANCE.so"
-+ fi
++ BAL_OBJ=$(getLibraryObject "libldb" ${BALANCE})
else
-# Balance has some extention-- must be a .o or .a file
- BAL_OBJ="$BALANCE"
@@ -315,47 +328,48 @@ index 4d37a6b..6957947 100755
fi
Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
-@@ -1641,7 +1644,11 @@ fi
+@@ -1638,10 +1645,11 @@ then
+ fi
+ fi
+
++Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
# Check for valid choice of MEMORY
-MEM_OBJ="$CHARMLIB/libmemory-$MEMORY.o"
-+if [[ -f "${CHARMLIB}/libmemory-${MEMORY}.a" ]]; then
-+ MEM_OBJ="${CHARMLIB}/libmemory-${MEMORY}.a"
-+else
-+ MEM_OBJ="${CHARMLIBSO}/libmemory-${MEMORY}.so"
-+fi
++MEM_OBJ=$(getLibraryObject "libmemory" ${MEMORY})
if [ ! -r $MEM_OBJ -o ! -s $MEM_OBJ ]
then
-@@ -1652,7 +1659,11 @@ fi
+@@ -1652,7 +1660,7 @@ fi
# For memory wrapping around the OS allocator, need to add also the wrapper object
case $MEMORY in
os-*)
- MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.o"
-+ if [[ -f "${CHARMLIB}/libmemory-os-wrapper.a" ]]; then
-+ MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.a"
-+ else
-+ MEM_OBJ=$MEM_OBJ" $CHARMLIBSO/libmemory-os-wrapper.so"
-+ fi
++ MEM_OBJ="${MEM_OBJ} $(getLibraryObject 'libmemory' 'os-wrapper')"
;;
esac
-@@ -1670,7 +1681,12 @@ then
+@@ -1670,7 +1678,8 @@ then
THREAD=${THREAD}-tls
fi
fi
-THREAD_OBJ="$CHARMLIB/libthreads-$THREAD.o"
+
-+if [[ -f "${CHARMLIB}/libthreads-${THREAD}.o" ]]; then
-+ THREAD_OBJ="${CHARMLIB}/libthreads-${THREAD}.o"
-+else
-+ THREAD_OBJ="${CHARMLIBSO}/libthreads-${THREAD}.so"
-+fi
++THREAD_OBJ=$(getLibraryObject "libthreads" ${THREAD})
if [ ! -r $THREAD_OBJ -o ! -s $THREAD_OBJ ]
then
-@@ -1848,17 +1864,17 @@ then
+@@ -1836,7 +1845,7 @@ esac
+
+ if [ "$BUILD_SHARE" = "0" ]
+ then
+- MIDDLE_LIBS="$MEM_OBJ $THREAD_OBJ $MIDDLE_LIBS"
++ MIDDLE_LIBS="$MIDDLE_LIBS $MEM_OBJ $THREAD_OBJ"
+ fi
+
+ if [ "$CHARM_SHARED" = "1" ]
+@@ -1848,17 +1857,17 @@ then
then
LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $PRE_LIBRARIES"
else
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-10-14 21:07 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-10-14 21:07 UTC (permalink / raw
To: gentoo-commits
commit: 02049255ff7d747cdf139a8c7cbb325814a0acd0
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Mon Oct 14 21:06:34 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Mon Oct 14 21:06:34 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=02049255
sys-cluster/charm-6.5.1-r2: Fixed shared library bug.
When charm is built with --enable-shared, not all libraries are actually built
as shared libraries. I have reported this bug upstream and submitted a patch.
I backported this patch and added it to this revision.
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 9 +
sys-cluster/charm/charm-6.5.1-r2.ebuild | 209 +++++++++++
.../files/charm-6.5.1-static-library-fix.patch | 382 +++++++++++++++++++++
3 files changed, 600 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index e449e4d..5df95a4 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,15 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*charm-6.5.1-r2 (14 Oct 2013)
+
+ 14 Oct 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r2.ebuild,
+ +files/charm-6.5.1-static-library-fix.patch:
+ sys-cluster/charm-6.5.1-r2: Fixed shared library bug. When charm is built
+ with --enable-shared, not all libraries are actually built as shared
+ libraries. I have reported this bug upstream and submitted a patch. I
+ backported this patch and added it to this revision.
+
01 Oct 2013; Christoph Junghans <ottxor@gentoo.org> charm-6.5.1-r1.ebuild:
fixed deps
diff --git a/sys-cluster/charm/charm-6.5.1-r2.ebuild b/sys-cluster/charm/charm-6.5.1-r2.ebuild
new file mode 100644
index 0000000..4d1523e
--- /dev/null
+++ b/sys-cluster/charm/charm-6.5.1-r2.ebuild
@@ -0,0 +1,209 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/charm/charm-6.5.0.ebuild,v 1.1 2013/06/26 23:58:38 ottxor Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7} )
+
+inherit eutils flag-o-matic fortran-2 multilib toolchain-funcs python-single-r1
+
+DESCRIPTION="Message-passing parallel language and runtime system"
+HOMEPAGE="http://charm.cs.uiuc.edu/"
+SRC_URI="http://charm.cs.uiuc.edu/distrib/${P}.tar.gz"
+
+LICENSE="charm"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mlogft mpi numa smp static-libs syncft tcp"
+
+RDEPEND="mpi? ( virtual/mpi )"
+DEPEND="
+ ${RDEPEND}
+ doc? (
+ >=app-text/poppler-0.12.3-r3[utils]
+ dev-tex/latex2html
+ virtual/tex-base
+ >=dev-python/beautifulsoup-4[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ media-libs/netpbm
+ ${PYTHON_DEPS}
+ )"
+
+REQUIRED_USE="
+ doc? ( ${PYTHON_REQUIRED_USE} )
+ cmkopt? ( !charmdebug !charmtracing )
+ charmproduction? ( !charmdebug !charmtracing )"
+
+FORTRAN_STANDARD="90"
+
+get_opts() {
+ local CHARM_OPTS
+
+ # TCP instead of default UDP for socket comunication
+ # protocol
+ CHARM_OPTS+="$(usex tcp ' tcp' '')"
+
+ # enable direct SMP support using shared memory
+ CHARM_OPTS+="$(usex smp ' smp' '')"
+
+ CHARM_OPTS+="$(usex mlogft ' mlogft' '')"
+ CHARM_OPTS+="$(usex syncft ' syncft' '')"
+
+ # Build shared libraries by default.
+ CHARM_OPTS+=" --build-shared"
+
+ if use charmproduction; then
+ CHARM_OPTS+=" --with-production"
+ else
+ if use charmdebug; then
+ CHARM_OPTS+=" --enable-charmdebug"
+ fi
+
+ if use charmtracing; then
+ CHARM_OPTS+=" --enable-tracing --enable-tracing-commthread"
+ fi
+ fi
+
+ CHARM_OPTS+="$(usex numa ' --with-numa' '')"
+ echo $CHARM_OPTS
+}
+
+src_prepare() {
+ sed \
+ -e "/CMK_CF90/s:f90:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
+ -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
+ -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
+ -e '/CMK_F90_MODINC/s:-p:-I:g' \
+ -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
+ -i src/arch/$(usex mpi "mpi" "net")-linux*/*sh || die
+
+ sed \
+ -e "s:-o conv-cpm:${LDFLAGS} &:g" \
+ -e "s:-o charmxi:${LDFLAGS} &:g" \
+ -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
+ -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
+ -e "s:-o charmrun:${LDFLAGS} &:g" \
+ -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
+ -e "s:-o charmd:${LDFLAGS} &:g" \
+ -i \
+ src/scripts/Makefile \
+ src/arch/net/charmrun/Makefile || die
+
+ # CMK optimization
+ use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
+
+ # Fix QA notice. Filed report with upstream.
+ append-cflags -DALLOCA_H
+
+ epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
+ epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
+ epatch "${FILESDIR}/charm-6.5.1-static-library-fix.patch"
+}
+
+src_compile() {
+ local mybuildoptions="$(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '') $(get_opts) ${MAKEOPTS} -j1 ${CFLAGS}"
+
+ # Build charmm++ first.
+ einfo "running ./build charm++ ${mybuildoptions}"
+ ./build charm++ ${mybuildoptions} || die "Failed to build charm++"
+
+ # make pdf/html docs
+ if use doc; then
+ python-single-r1_pkg_setup
+ python_fix_shebang "${S}/doc"
+ einfo "forcing ${EPYTHON}"
+ emake -j1 -C doc/charm++
+ fi
+}
+
+src_test() {
+ make -C tests/charm++ test TESTOPTS="++local" || die
+}
+
+src_install() {
+ # Make charmc play well with gentoo before we move it into /usr/bin. This
+ # patch cannot be applied during src_prepare() because the charmc wrapper
+ # is used during building.
+ epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
+
+ sed -e "s|gentoo-include|${P}|" \
+ -e "s|gentoo-libdir|$(get_libdir)|g" \
+ -e "s|VERSION|${P}/VERSION|" \
+ -i ./src/scripts/charmc || die "failed patching charmc script"
+
+ # In the following, some of the files are symlinks to ../tmp which we need
+ # to dereference first (see bug 432834).
+
+ local i
+
+ # Install binaries.
+ for i in bin/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dobin "${i}"
+ done
+
+ # Install headers.
+ insinto /usr/include/${P}
+ for i in include/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ doins "${i}"
+ done
+
+ # Install static libs. Charm has a lot of .o "libs" that it requires at
+ # runtime.
+ if use static-libs; then
+ for i in lib/*.{a,o}; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dolib "${i}"
+ done
+ fi
+
+ # Install shared libs.
+ for i in lib_so/*; do
+ if [[ -L ${i} ]]; then
+ i=$(readlink -e "${i}") || die
+ fi
+ dolib.so "${i}"
+ done
+
+ # Basic docs.
+ dodoc CHANGES README
+
+ # Install examples.
+ if use examples; then
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
+ die "Failed to fix examples"
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:./charmrun:./charmrun ++local:" -i || \
+ die "Failed to fix examples"
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples/charm++/*
+ fi
+
+ # Install pdf/html docs
+ if use doc; then
+ cd "${S}/doc/charm++"
+ # Install pdfs.
+ insinto /usr/share/doc/${PF}/pdf
+ doins *.pdf
+ # Install html.
+ docinto html
+ dohtml -r manual/*
+ fi
+}
+
+pkg_postinst() {
+ einfo "Please test your charm installation by copying the"
+ einfo "content of /usr/share/doc/${PF}/examples to a"
+ einfo "temporary location and run 'make test'."
+}
diff --git a/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch b/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
new file mode 100644
index 0000000..e320a9c
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-static-library-fix.patch
@@ -0,0 +1,382 @@
+From 6557d011109dd6ad23cde0fbd26b620e92bc005f Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Mon, 14 Oct 2013 07:15:14 -0600
+Subject: [PATCH] Enable full static linking of Charm++ applications.
+
+On a typical Linux system only shared libraries are installed, because of the
+usual security and bloat arguments. However, if I build charm with
+--build-shared, and then install only what is in lib_so, the charmc script
+breaks because some Converse libraries are built purely as .o and don't end up
+in lib_so. One example is seed based load balancing, e.g. libldb-rand.o. As
+far as I can tell, this is not too hard to fix. In the main makefile, the
+targets libldb-*.o are renamed to libldb-*.a, and the charmc script now tests
+both .a and .so when linking the seed based load balancing code.
+---
+ src/scripts/Makefile | 136 +++++++++++++++++++++++++--------------------------
+ src/scripts/charmc | 42 +++++++++++-----
+ 2 files changed, 97 insertions(+), 81 deletions(-)
+
+diff --git a/src/scripts/Makefile b/src/scripts/Makefile
+index 51d0e7b..1550ed2 100644
+--- a/src/scripts/Makefile
++++ b/src/scripts/Makefile
+@@ -349,7 +349,7 @@ dirs+sources:
+ # Converse Libraries
+ #
+ ###############################################################################
+-CLBLIBS=$(L)/libldb-rand.o $(L)/libldb-spray.o $(L)/libldb-workstealing.o $(L)/libldb-neighbor.o $(L)/libldb-none.o $(L)/libldb-test.o $(L)/libldb-bluegene.o
++CLBLIBS=$(L)/libldb-rand.a $(L)/libldb-spray.a $(L)/libldb-workstealing.a $(L)/libldb-neighbor.a $(L)/libldb-none.a $(L)/libldb-test.a $(L)/libldb-bluegene.a
+
+ TRACELIBS = $(L)/libtrace-converse.a $(L)/libtracef_f.a
+
+@@ -363,32 +363,32 @@ TRACELIBS += $(L)/libtrace-projections.a $(L)/libtrace-summary.a \
+ $(L)/libtrace-memory.a
+ endif
+
+-MEMLIBS=$(L)/libmemory-default.o $(L)/libmemory-os.o $(L)/libmemory-gnu.o \
+- $(L)/libmemory-gnuold.o $(L)/libmemory-verbose.o \
+- $(L)/libmemory-paranoid.o \
+- $(L)/libmemory-leak.o $(L)/libmemory-isomalloc.o \
+- $(L)/libmemory-os-verbose.o $(L)/libmemory-os-isomalloc.o \
+- $(L)/libmemory-os-leak.o $(L)/libmemory-os-paranoid.o \
+- $(L)/libmemory-os-lock.o $(L)/libmemory-os-wrapper.o
++MEMLIBS=$(L)/libmemory-default.a $(L)/libmemory-os.a $(L)/libmemory-gnu.a \
++ $(L)/libmemory-gnuold.a $(L)/libmemory-verbose.a \
++ $(L)/libmemory-paranoid.a \
++ $(L)/libmemory-leak.a $(L)/libmemory-isomalloc.a \
++ $(L)/libmemory-os-verbose.a $(L)/libmemory-os-isomalloc.a \
++ $(L)/libmemory-os-leak.a $(L)/libmemory-os-paranoid.a \
++ $(L)/libmemory-os-lock.a $(L)/libmemory-os-wrapper.a
+
+ BUILD_CHARMDEBUG=$(shell CHARMINC=.; if test -f ./conv-config.sh; then . ./conv-config.sh; echo $$CMK_CHARMDEBUG; fi )
+
+ ifneq "$(BUILD_CHARMDEBUG)" "0"
+-MEMLIBS += $(L)/libmemory-charmdebug.o $(L)/libmemory-charmdebug-mmap.o \
+- $(L)/libmemory-charmdebug-slot.o \
+- $(L)/libmemory-charmdebug-mmap-slot.o \
+- $(L)/libmemory-os-charmdebug.o $(L)/libmemory-hooks-charmdebug.o
++MEMLIBS += $(L)/libmemory-charmdebug.a $(L)/libmemory-charmdebug-mmap.a \
++ $(L)/libmemory-charmdebug-slot.a \
++ $(L)/libmemory-charmdebug-mmap-slot.a \
++ $(L)/libmemory-os-charmdebug.a $(L)/libmemory-hooks-charmdebug.a
+ endif
+
+-THREADLIBS=$(L)/libthreads-default.o $(L)/libthreads-default-tls.o \
+- $(L)/libthreads-qt.o $(L)/libthreads-qt-tls.o \
+- $(L)/libthreads-context.o $(L)/libthreads-context-tls.o \
+- $(L)/libthreads-uJcontext.o $(L)/libthreads-uJcontext-tls.o \
+- $(L)/libthreads-pthreads.o $(L)/libthreads-fibers.o \
+- $(L)/libthreads-stackcopy.o $(L)/libthreads-memoryalias.o \
+- $(L)/libthreads-qt-memoryalias.o \
+- $(L)/libthreads-context-memoryalias.o \
+- $(L)/libthreads-uJcontext-memoryalias.o
++THREADLIBS=$(L)/libthreads-default.a $(L)/libthreads-default-tls.a \
++ $(L)/libthreads-qt.a $(L)/libthreads-qt-tls.a \
++ $(L)/libthreads-context.a $(L)/libthreads-context-tls.a \
++ $(L)/libthreads-uJcontext.a $(L)/libthreads-uJcontext-tls.a \
++ $(L)/libthreads-pthreads.a $(L)/libthreads-fibers.a \
++ $(L)/libthreads-stackcopy.a $(L)/libthreads-memoryalias.a \
++ $(L)/libthreads-qt-memoryalias.a \
++ $(L)/libthreads-context-memoryalias.a \
++ $(L)/libthreads-uJcontext-memoryalias.a
+
+ CVLIBS=$(L)/libconv-core.a \
+ $(L)/libconv-cplus-y.a $(L)/libconv-cplus-n.a \
+@@ -543,19 +543,19 @@ lz4.o: lz4.c lz4.h
+ $(CHARMC) -o $@ $<
+
+ ## Converse load balancers (seed balancers, -balance)
+-$(L)/libldb-none.o: cldb.none.c $(CVHEADERS)
++$(L)/libldb-none.a: cldb.none.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.none.c
+
+-$(L)/libldb-rand.o: cldb.rand.c cldb.h $(CVHEADERS)
++$(L)/libldb-rand.a: cldb.rand.c cldb.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.rand.c
+
+-$(L)/libldb-neighbor.o: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
++$(L)/libldb-neighbor.a: cldb.neighbor.c cldb.neighbor.h graph.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.neighbor.c
+
+-$(L)/libldb-workstealing.o: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
++$(L)/libldb-workstealing.a: cldb.workstealing.c cldb.workstealing.h graph.h $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.workstealing.c
+
+-$(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
++$(L)/libldb-spray.a: cldb.spray.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.spray.c
+
+
+@@ -565,138 +565,138 @@ $(L)/libldb-spray.o: cldb.spray.c $(CVHEADERS)
+ #//$(L)/libldb-prioritycentralizedopt.o: cldb.prioritycentralizedopt.c cldb.prioritycentralizedopt.h $(CVHEADERS)
+ #// $(CHARMC) -o $@ cldb.prioritycentralizedopt.c
+
+-$(L)/libldb-test.o: cldb.test.c $(CVHEADERS)
++$(L)/libldb-test.a: cldb.test.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.test.c
+
+-$(L)/libldb-bluegene.o: cldb.bluegene.c $(CVHEADERS)
++$(L)/libldb-bluegene.a: cldb.bluegene.c $(CVHEADERS)
+ $(CHARMC) -o $@ cldb.bluegene.c
+
+ ## Memory allocation libraries (-memory)
+ MEM_DEPS=memory.c memory-gnu.c memory-gnuold.c converse.h conv-mach.h $(CVHEADERS)
+-$(L)/libmemory-default.o: $(MEM_DEPS)
++$(L)/libmemory-default.a: $(MEM_DEPS)
+ $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_DEFAULT memory.c
+
+-$(L)/libmemory-os.o: $(MEM_DEPS)
++$(L)/libmemory-os.a: $(MEM_DEPS)
+ $(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS memory.c
+
+-$(L)/libmemory-os-verbose.o: memory-verbose.c $(MEM_DEPS)
++$(L)/libmemory-os-verbose.a: memory-verbose.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
+
+-$(L)/libmemory-os-paranoid.o: memory-paranoid.c $(MEM_DEPS)
++$(L)/libmemory-os-paranoid.a: memory-paranoid.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
+
+-$(L)/libmemory-os-leak.o: $(MEM_DEPS)
++$(L)/libmemory-os-leak.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
+
+-$(L)/libmemory-os-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
++$(L)/libmemory-os-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
+
+-$(L)/libmemory-os-lock.o: memory-lock.c $(MEM_DEPS)
++$(L)/libmemory-os-lock.a: memory-lock.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_LOCK memory.c || touch $@
+
+-$(L)/libmemory-os-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-os-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_OS_WRAPPED -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+-$(L)/libmemory-os-wrapper.o: memory-os-wrapper.C $(MEM_DEPS)
++$(L)/libmemory-os-wrapper.a: memory-os-wrapper.C $(MEM_DEPS)
+ -$(CHARMC) -o $@ memory-os-wrapper.C || touch $@
+
+-$(L)/libmemory-hooks-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-hooks-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -o $@ -DCMK_MEMORY_BUILD_GNU_HOOKS -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+ # If the system doesn't have sbrk, these compilations may fail.
+ # This is OK, but then we can't use "-memory gnu" or friends.
+-$(L)/libmemory-gnu.o: $(MEM_DEPS)
++$(L)/libmemory-gnu.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNU memory.c || touch $@
+
+-$(L)/libmemory-gnuold.o: $(MEM_DEPS)
++$(L)/libmemory-gnuold.a: $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_GNUOLD memory.c || touch $@
+
+-$(L)/libmemory-verbose.o: memory-verbose.c $(MEM_DEPS)
++$(L)/libmemory-verbose.a: memory-verbose.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_VERBOSE memory.c || touch $@
+
+-$(L)/libmemory-paranoid.o: memory-paranoid.c $(MEM_DEPS)
++$(L)/libmemory-paranoid.a: memory-paranoid.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_PARANOID memory.c || touch $@
+
+-$(L)/libmemory-leak.o: memory-leak.c $(MEM_DEPS)
++$(L)/libmemory-leak.a: memory-leak.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_LEAK memory.c || touch $@
+
+-$(L)/libmemory-cache.o: memory-cache.c $(MEM_DEPS)
++$(L)/libmemory-cache.a: memory-cache.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_CACHE memory.c || touch $@
+
+-$(L)/libmemory-isomalloc.o: memory-isomalloc.c $(MEM_DEPS)
++$(L)/libmemory-isomalloc.a: memory-isomalloc.c $(MEM_DEPS)
+ -$(CHARMC) -I. -o $@ -DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch $@
+
+-$(L)/libmemory-charmdebug.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-slot.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-slot.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCMK_SEPARATE_SLOT memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-mmap.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-mmap.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP memory.c || touch $@
+
+-$(L)/libmemory-charmdebug-mmap-slot.o: memory-charmdebug.c $(MEM_DEPS)
++$(L)/libmemory-charmdebug-mmap-slot.a: memory-charmdebug.c $(MEM_DEPS)
+ -$(CHARMC) -I. -optimize -o $@ -DCMK_MEMORY_BUILD_CHARMDEBUG -DCPD_USE_MMAP -DCMK_SEPARATE_SLOT memory.c || touch $@
+
+ ## Thread libraries (-thread)
+
+ LIBTHREADSDEPS = threads.c $(CVHEADERS) QUICK_THREADS
+
+-$(L)/libthreads-default.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-default.a: $(LIBTHREADSDEPS)
+ $(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads -I. threads.c
+
+-$(L)/libthreads-default-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-default-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_DEFAULT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-qt.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt.a: $(LIBTHREADSDEPS)
+ $(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c
+
+-$(L)/libthreads-qt-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_QT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-context.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-context-tls.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context-tls.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_CONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-uJcontext.o: $(LIBTHREADSDEPS) uJcontext.c
++$(L)/libthreads-uJcontext.a: $(LIBTHREADSDEPS) uJcontext.c
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
+
+-$(L)/libthreads-uJcontext-tls.o: $(LIBTHREADSDEPS) uJcontext.c
++$(L)/libthreads-uJcontext-tls.a: $(LIBTHREADSDEPS) uJcontext.c
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_JCONTEXT=1 -DCMK_THREADS_BUILD_TLS=1 -IQuickThreads -I. threads.c || touch $@
+
+-$(L)/libthreads-pthreads.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-pthreads.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_PTHREADS=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-fibers.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-fibers.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_FIBERS=1 -IQuickThreads threads.c 2> /dev/null || touch $@
+
+-$(L)/libthreads-stackcopy.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-stackcopy.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_BUILD_STACKCOPY=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_DEFAULT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-qt-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-qt-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_QT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-context-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-context-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_CONTEXT=1 -IQuickThreads threads.c || touch $@
+
+-$(L)/libthreads-uJcontext-memoryalias.o: $(LIBTHREADSDEPS)
++$(L)/libthreads-uJcontext-memoryalias.a: $(LIBTHREADSDEPS)
+ -$(CHARMC) -o $@ -DCMK_THREADS_ALIAS_STACK=1 -DCMK_THREADS_BUILD_JCONTEXT=1 -IQuickThreads -I. threads.c || touch $@
+
+ ## Global swapping (-swapglobal)
+-swapglobal-target: $(L)/libglobal-swap.o $(L)/libglobal-copy.o $(L)/loadsym.o
++swapglobal-target: $(L)/libglobal-swap.a $(L)/libglobal-copy.a $(L)/loadsym.a
+
+-$(L)/libglobal-swap.o: global-elfgot.C $(CVHEADERS)
++$(L)/libglobal-swap.a: global-elfgot.C $(CVHEADERS)
+ -$(CHARMC) -c global-elfgot.C -o $@ || touch $@
+
+-$(L)/libglobal-copy.o: global-elfcopy.C $(CVHEADERS)
++$(L)/libglobal-copy.a: global-elfcopy.C $(CVHEADERS)
+ -$(CHARMC) -c global-elfcopy.C -o $@ || touch $@
+
+-$(L)/loadsym.o: loadsym.c $(CVHEADERS)
++$(L)/loadsym.a: loadsym.c $(CVHEADERS)
+ -$(CHARMC) -c loadsym.c -o $@ || touch $@
+
+ ###############################################################################
+diff --git a/src/scripts/charmc b/src/scripts/charmc
+index 4d37a6b..6957947 100755
+--- a/src/scripts/charmc
++++ b/src/scripts/charmc
+@@ -1616,13 +1616,16 @@ then
+ fi
+
+ BAL_EXT=`getExtention $BALANCE`
+-if [ -z "$BAL_EXT" ]
+-then
+-# Balance has no extention-- is a library reference
+- BAL_OBJ="$CHARMLIB/libldb-$BALANCE.o"
++if [[ -z "$BAL_EXT" ]]; then
++ # Balance has no extension-- is a library reference
++ if [[ -f "${CHARMLIB}/libldb-$BALANCE.a" ]]; then
++ BAL_OBJ="${CHARMLIB}/libldb-$BALANCE.a"
++ else
++ BAL_OBJ="${CHARMLIBSO}/libldb-$BALANCE.so"
++ fi
+ else
+-# Balance has some extention-- must be a .o or .a file
+- BAL_OBJ="$BALANCE"
++ # Balance has some extension-- must be a .o or .a file
++ BAL_OBJ="$BALANCE"
+ fi
+
+ Debug "Finished with BAL_OBJ=$BAL_OBJ, TRACEMODE=$TRACEMODE..."
+@@ -1641,7 +1644,11 @@ fi
+
+ # Check for valid choice of MEMORY
+
+-MEM_OBJ="$CHARMLIB/libmemory-$MEMORY.o"
++if [[ -f "${CHARMLIB}/libmemory-${MEMORY}.a" ]]; then
++ MEM_OBJ="${CHARMLIB}/libmemory-${MEMORY}.a"
++else
++ MEM_OBJ="${CHARMLIBSO}/libmemory-${MEMORY}.so"
++fi
+
+ if [ ! -r $MEM_OBJ -o ! -s $MEM_OBJ ]
+ then
+@@ -1652,7 +1659,11 @@ fi
+ # For memory wrapping around the OS allocator, need to add also the wrapper object
+ case $MEMORY in
+ os-*)
+- MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.o"
++ if [[ -f "${CHARMLIB}/libmemory-os-wrapper.a" ]]; then
++ MEM_OBJ=$MEM_OBJ" $CHARMLIB/libmemory-os-wrapper.a"
++ else
++ MEM_OBJ=$MEM_OBJ" $CHARMLIBSO/libmemory-os-wrapper.so"
++ fi
+ ;;
+ esac
+
+@@ -1670,7 +1681,12 @@ then
+ THREAD=${THREAD}-tls
+ fi
+ fi
+-THREAD_OBJ="$CHARMLIB/libthreads-$THREAD.o"
++
++if [[ -f "${CHARMLIB}/libthreads-${THREAD}.o" ]]; then
++ THREAD_OBJ="${CHARMLIB}/libthreads-${THREAD}.o"
++else
++ THREAD_OBJ="${CHARMLIBSO}/libthreads-${THREAD}.so"
++fi
+
+ if [ ! -r $THREAD_OBJ -o ! -s $THREAD_OBJ ]
+ then
+@@ -1848,17 +1864,17 @@ then
+ then
+ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $PRE_LIBRARIES"
+ else
+- LANG_LIBS="-L$CHARMLIBSO $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
++ LANG_LIBS="-L$CHARMLIBSO $OBJECTFILES $modInitObj $PRE_LIBRARIES"
+ fi
+ else
+- LANG_LIBS="-L$CHARMLIB -I$CHARMINC $BAL_OBJ $OBJECTFILES $modInitObj $PRE_LIBRARIES"
++ LANG_LIBS="-L$CHARMLIB -I$CHARMINC $OBJECTFILES $modInitObj $PRE_LIBRARIES"
+ fi
+ if [ "$TRACE_WITH_TAU" = 1 ]
+ then
+ echo "Linking with the TAU libraries: $TAU_LIBS"
+- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
++ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS $TAU_LIBS"
+ else
+- ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
++ ALL_LIBS="$LANG_LIBS $MIDDLE_LIBS $BAL_OBJ $CMK_LIBS $POST_LIBRARIES $CMK_SYSLIBS"
+ fi
+ Debugf "All libraries are: $ALL_LIBS"
+
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-10-01 3:59 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-10-01 3:59 UTC (permalink / raw
To: gentoo-commits
commit: dbcfe1b03723acf9c1ec636072b0e1c9a1a9ebdf
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Tue Oct 1 03:57:16 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Tue Oct 1 03:57:16 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=dbcfe1b0
sys-cluster/charm-6.5.1-r1: Fix docs with -j1
Docs don't build when using anything more than -j1.
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 5 ++++
sys-cluster/charm/charm-6.5.1-r1.ebuild | 14 +++++-----
| 30 ++++++++++++++++++++++
3 files changed, 42 insertions(+), 7 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index d005b5f..21f92a3 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,11 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 01 Oct 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.1-fix-navmenuGenerator.patch, charm-6.5.1-r1.ebuild:
+ sys-cluster/charm-6.5.1-r1: Fix docs with -j1 Docs don't build when using
+ anything more than -j1.
+
27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.1-r1.ebuild:
sys-cluster/charm-6.5.1-r1: Added python dependencies The documentation is
built partly with python2.x scripts. I added the necessary dependencies.
diff --git a/sys-cluster/charm/charm-6.5.1-r1.ebuild b/sys-cluster/charm/charm-6.5.1-r1.ebuild
index d429138..9b027c8 100644
--- a/sys-cluster/charm/charm-6.5.1-r1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1-r1.ebuild
@@ -30,7 +30,7 @@ DEPEND="
)"
REQUIRED_USE="
- doc? ( ${PYTHON_REQUIRED_USE} )
+ doc? ( ${PYTHON_REQUIRED_USE} )
cmkopt? ( !charmdebug !charmtracing )
charmproduction? ( !charmdebug !charmtracing )"
@@ -98,6 +98,7 @@ src_prepare() {
epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-navmenuGenerator.patch"
}
src_compile() {
@@ -110,10 +111,9 @@ src_compile() {
# make pdf/html docs
if use doc; then
python-single-r1_pkg_setup
- python_fix_shebang ${S}/doc
+ python_fix_shebang "${S}/doc"
einfo "forcing ${EPYTHON}"
- einfo "running ./build doc ${mybuildoptions}"
- ./build doc ${mybuildoptions} || die "Failed to build charm++ documentation"
+ emake -j1 -C doc/charm++
fi
}
@@ -190,13 +190,13 @@ src_install() {
# Install pdf/html docs
if use doc; then
- cd "${S}"/doc
+ cd "${S}/doc/charm++"
# Install pdfs.
insinto /usr/share/doc/${PF}/pdf
- doins doc/pdf/*
+ doins *.pdf
# Install html.
docinto html
- dohtml -r doc/html/*
+ dohtml -r manual/*
fi
}
--git a/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch b/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch
new file mode 100644
index 0000000..a19a8db
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-navmenuGenerator.patch
@@ -0,0 +1,30 @@
+From 8b699f6c49df26b979da397b47c7dc7a099ed6b6 Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Sat, 28 Sep 2013 07:47:36 -0600
+Subject: [PATCH] Properly test for None return value in navmenuGenerator.py
+
+---
+ doc/navmenuGenerator.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/doc/navmenuGenerator.py b/doc/navmenuGenerator.py
+index c10afb5..5e5b97c 100755
+--- a/doc/navmenuGenerator.py
++++ b/doc/navmenuGenerator.py
+@@ -13,7 +13,12 @@ fileName = sys.argv[1];
+ soup = BeautifulSoup(open(fileName), "lxml")
+
+ # Get just the table of contents from the index page
+-toc = soup.find("ul","ChildLinks").extract()
++toc = soup.find("ul","ChildLinks")
++
++if toc == None:
++ sys.exit(0)
++
++toc = toc.extract()
+
+ # Retain only part and chapter titles
+ for sctn in toc.select("li > ul > li > ul"):
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-27 17:36 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-27 17:36 UTC (permalink / raw
To: gentoo-commits
commit: 5b9bc87a6b99628311e9b9ac47c73f2ca6b66baa
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Fri Sep 27 17:30:36 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Fri Sep 27 17:30:36 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=5b9bc87a
sys-clyster/charm-6.5.1-r1: Fix missing DEPEND.
This addresses bug 486202. The ebuild had a missing DEPEND using the doc USE
flag.
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 8 +++++
sys-cluster/charm/charm-6.5.1-r1.ebuild | 7 ++--
.../charm/files/charm-6.5.1-CkReductionMgr.patch | 10 +++---
.../charm/files/charm-6.5.1-charmc-gentoo.patch | 39 ++++++++++++++++++++++
.../charm/files/charm-6.5.1-cleanup-config.patch | 14 ++++----
.../files/charm-6.5.1-fix-string-parsing.patch | 14 ++++----
6 files changed, 71 insertions(+), 21 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 618de1d..ace12f1 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,14 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 27 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.1-charmc-gentoo.patch, charm-6.5.1-r1.ebuild,
+ files/charm-6.5.1-CkReductionMgr.patch,
+ files/charm-6.5.1-cleanup-config.patch,
+ files/charm-6.5.1-fix-string-parsing.patch:
+ sys-clyster/charm-6.5.1-r1: Fix missing DEPEND. This addresses bug 486202.
+ The ebuild had a missing DEPEND using the doc USE flag.
+
14 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
files/charm-6.5.1-fix-string-parsing.patch:
sys-cluster/charm-6.5.1: Small fix in patch to make printing less verbose.
diff --git a/sys-cluster/charm/charm-6.5.1-r1.ebuild b/sys-cluster/charm/charm-6.5.1-r1.ebuild
index 25b0560..1b7cb1b 100644
--- a/sys-cluster/charm/charm-6.5.1-r1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1-r1.ebuild
@@ -22,6 +22,7 @@ DEPEND="
>=app-text/poppler-0.12.3-r3[utils]
dev-tex/latex2html
virtual/tex-base
+ dev-python/beautifulsoup
)"
REQUIRED_USE="
@@ -112,8 +113,10 @@ src_test() {
}
src_install() {
- # Make charmc play well with gentoo before we move it into /usr/bin.
- epatch "${FILESDIR}/charm-6.5.0-charmc-gentoo.patch"
+ # Make charmc play well with gentoo before we move it into /usr/bin. This
+ # patch cannot be applied during src_prepare() because the charmc wrapper
+ # is used during building.
+ epatch "${FILESDIR}/charm-6.5.1-charmc-gentoo.patch"
sed -e "s|gentoo-include|${P}|" \
-e "s|gentoo-libdir|$(get_libdir)|g" \
diff --git a/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch b/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
index 8387180..ad07fc3 100644
--- a/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
@@ -1,7 +1,7 @@
-From f9cc5724818141201ba201e698c21aea62ecd362 Mon Sep 17 00:00:00 2001
+From 6b537784e9c345dee7f7cfd108c6abc779a969ae Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Thu, 5 Sep 2013 04:04:06 -0600
-Subject: [PATCH] Fixed bug in CkReductionMgr::reduceMessages().
+Date: Fri, 27 Sep 2013 10:50:45 -0600
+Subject: [PATCH 2/4] Fixed bug in CkReductionMgr::reduceMessages().
The first contribution of a child node is a single message. In this case
CkReductionMgr::reduceMessages() simply returns the message without calling
@@ -17,10 +17,10 @@ message.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/ck-core/ckreduction.C b/src/ck-core/ckreduction.C
-index f2ac8cd..d94f5b1 100644
+index 07853a2..ef3e906 100644
--- a/src/ck-core/ckreduction.C
+++ b/src/ck-core/ckreduction.C
-@@ -862,7 +862,7 @@ CkReductionMsg *CkReductionMgr::reduceMessages(void)
+@@ -850,7 +850,7 @@ CkReductionMsg *CkReductionMgr::reduceMessages(void)
else
{//Use the reducer to reduce the messages
//if there is only one msg to be reduced just return that message
diff --git a/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch
new file mode 100644
index 0000000..f1502ce
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-charmc-gentoo.patch
@@ -0,0 +1,39 @@
+From 664eb097d1c5d1a158b1f41badc79d369a06aab6 Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Fri, 27 Sep 2013 10:53:31 -0600
+Subject: [PATCH 4/4] Fix paths for gentoo.
+
+---
+ src/scripts/charmc | 16 +++-------------
+ 1 file changed, 3 insertions(+), 13 deletions(-)
+
+diff --git a/src/scripts/charmc b/src/scripts/charmc
+index 4d37a6b..8ec2f70 100755
+--- a/src/scripts/charmc
++++ b/src/scripts/charmc
+@@ -361,19 +361,9 @@ then
+ PROG_EXT=".exe"
+ fi
+
+-CHARMLIB="$CHARMBIN/../lib"
+-CHARMINC="$CHARMBIN/../include"
+-CHARMLIBSO=
+-if test -d "$CHARMBIN/../lib_so"
+-then
+- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- #getting absolute path is harder than thought because of symbolic links and ..
+- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
+- #csh is ok too if it exists
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
+- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
+-fi
++CHARMLIB="/usr/gentoo-libdir"
++CHARMINC="/usr/include/gentoo-include"
++CHARMLIBSO="/usr/gentoo-libdir"
+
+ ##############################################################################
+ #
+--
+1.8.1.5
+
diff --git a/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch b/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
index 89834e4..ec71eb2 100644
--- a/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
@@ -1,7 +1,7 @@
-From 04639c20479564a2b5e662d90de953e3f37b0360 Mon Sep 17 00:00:00 2001
+From b0af812652269a59457ad1bbf57165c0543bcd07 Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Tue, 23 Jul 2013 11:19:22 -0600
-Subject: [PATCH] Commented out colliding defines in conv-autoconfig.h
+Date: Fri, 27 Sep 2013 10:49:52 -0600
+Subject: [PATCH 1/4] Commented out colliding defines in conv-autoconfig.h
The colliding defines (bug #252) are commented out in configure.
---
@@ -10,7 +10,7 @@ The colliding defines (bug #252) are commented out in configure.
2 files changed, 8 insertions(+)
diff --git a/src/scripts/configure b/src/scripts/configure
-index 2629834..03dc778 100755
+index acd582c..faf268f 100755
--- a/src/scripts/configure
+++ b/src/scripts/configure
@@ -1703,6 +1703,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
@@ -23,7 +23,7 @@ index 2629834..03dc778 100755
CHARMINC="."
test -r ./conv-config.sh && . ./conv-config.sh
-@@ -5201,6 +5204,7 @@ for ac_config_target in $ac_config_targets
+@@ -5259,6 +5262,7 @@ for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"conv-autoconfig.h") CONFIG_HEADERS="$CONFIG_HEADERS conv-autoconfig.h" ;;
@@ -31,7 +31,7 @@ index 2629834..03dc778 100755
"libs/ck-libs/ampi/ampiCC") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampiCC" ;;
"libs/ck-libs/ampi/ampirun") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampirun" ;;
"default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
-@@ -5754,6 +5758,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
+@@ -5812,6 +5816,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
case $ac_file$ac_mode in
@@ -40,7 +40,7 @@ index 2629834..03dc778 100755
;;
diff --git a/src/scripts/configure.in b/src/scripts/configure.in
-index 69e5318..2cb18b6 100644
+index d1285ed..cad9a42 100644
--- a/src/scripts/configure.in
+++ b/src/scripts/configure.in
@@ -3,6 +3,9 @@ AC_INIT(./Makefile)
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
index 06bdf0d..1cc6b43 100644
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -1,21 +1,21 @@
-From 7a8bf20508f54a223c13e62c7c485a7de4aaeba0 Mon Sep 17 00:00:00 2001
+From 14f407a5d183cdac7029cc54a9d8ae6b0cb5cbcd Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Wed, 11 Sep 2013 14:13:30 -0600
-Subject: [PATCH] charmrun.c: parsing of strings now parses "\n" into '\n'
+Date: Fri, 27 Sep 2013 10:52:18 -0600
+Subject: [PATCH 3/4] charmrun.c: parsing of strings now parses "\n" into '\n'
Since gdb lacks anything like ';' to separate several commands in one line,
the commands need to be separated by a newline character. I have added some
parsing logic so that the string "\n" will now be translated into the
character '\n'.
---
- src/arch/net/charmrun/charmrun.c | 24 ++++++++++++++++++++++--
- 1 file changed, 22 insertions(+), 2 deletions(-)
+ src/arch/net/charmrun/charmrun.c | 23 +++++++++++++++++++++--
+ 1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/src/arch/net/charmrun/charmrun.c b/src/arch/net/charmrun/charmrun.c
-index 6837712..bf370c1 100644
+index 6837712..8818cf8 100644
--- a/src/arch/net/charmrun/charmrun.c
+++ b/src/arch/net/charmrun/charmrun.c
-@@ -454,8 +454,28 @@ static int pparam_setdef(def, value)
+@@ -454,8 +454,27 @@ static int pparam_setdef(def, value)
if (*p) return -1;
return 0;
case 's' :
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-27 16:18 Christoph Junghans
0 siblings, 0 replies; 17+ messages in thread
From: Christoph Junghans @ 2013-09-27 16:18 UTC (permalink / raw
To: gentoo-commits
commit: ebd74b77022f4ed4d46c764679a20482ccd9e1f5
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 27 16:18:01 2013 +0000
Commit: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Fri Sep 27 16:18:44 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=ebd74b77
fix broken patch
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 4 ++++
sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 618de1d..2ff10b6 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 27 Sep 2013; Christoph Junghans <ottxor@gentoo.org>
+ files/charm-6.5.1-fix-string-parsing.patch:
+ fix broken patch
+
14 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
files/charm-6.5.1-fix-string-parsing.patch:
sys-cluster/charm-6.5.1: Small fix in patch to make printing less verbose.
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
index 06bdf0d..50fd596 100644
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -15,7 +15,7 @@ diff --git a/src/arch/net/charmrun/charmrun.c b/src/arch/net/charmrun/charmrun.c
index 6837712..bf370c1 100644
--- a/src/arch/net/charmrun/charmrun.c
+++ b/src/arch/net/charmrun/charmrun.c
-@@ -454,8 +454,28 @@ static int pparam_setdef(def, value)
+@@ -454,8 +454,27 @@ static int pparam_setdef(def, value)
if (*p) return -1;
return 0;
case 's' :
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-14 12:43 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-14 12:43 UTC (permalink / raw
To: gentoo-commits
commit: dad7015ef424ca4268bda270ff929eff52fdeaeb
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Sat Sep 14 12:42:16 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Sat Sep 14 12:42:16 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=dad7015e
sys-cluster/charm-6.5.1: Small fix in patch to make printing less verbose.
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 4 ++++
sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch | 1 -
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 3eaa445..618de1d 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 14 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ files/charm-6.5.1-fix-string-parsing.patch:
+ sys-cluster/charm-6.5.1: Small fix in patch to make printing less verbose.
+
11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
files/charm-6.5.1-fix-string-parsing.patch:
sys-cluster/charm-6.5.1: Fix patch for the last time.
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
index cfb81aa..06bdf0d 100644
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -29,7 +29,6 @@ index 6837712..bf370c1 100644
+ int j = 0;
+ for(i = 0; i < strlen(value); i++)
+ {
-+ fprintf(stderr, "i = %d, j = %d, value[i] = \n", i, j);
+ if(i+1 < strlen(value))
+ {
+ if(value[i] == '\\' && value[i+1] == 'n')
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-11 20:32 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-11 20:32 UTC (permalink / raw
To: gentoo-commits
commit: 1adabc26ce1154bea0cffe6f09597fa8aae6eec6
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Wed Sep 11 20:24:49 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Wed Sep 11 20:24:49 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=1adabc26
sys-cluster/charm-6.5.1: Fix patch for the last time.
Package-Manager: portage-2.2.2
---
sys-cluster/charm/ChangeLog | 4 ++++
.../charm/files/charm-6.5.1-fix-string-parsing.patch | 16 +++++++++-------
2 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index c57b85a..3eaa445 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -4,6 +4,10 @@
11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
files/charm-6.5.1-fix-string-parsing.patch:
+ sys-cluster/charm-6.5.1: Fix patch for the last time.
+
+ 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ files/charm-6.5.1-fix-string-parsing.patch:
sys-cluster/charm-6.5.1-r1: Backported patch just added to correct upstream
version.
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
index 9655343..cfb81aa 100644
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -1,21 +1,21 @@
-From db515b327e423d0ca39a56df15c5e3225154daeb Mon Sep 17 00:00:00 2001
+From 7a8bf20508f54a223c13e62c7c485a7de4aaeba0 Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
Date: Wed, 11 Sep 2013 14:13:30 -0600
-Subject: [PATCH] charmrun.C: parsing of strings now parses "\n" into '\n'
+Subject: [PATCH] charmrun.c: parsing of strings now parses "\n" into '\n'
Since gdb lacks anything like ';' to separate several commands in one line,
the commands need to be separated by a newline character. I have added some
parsing logic so that the string "\n" will now be translated into the
character '\n'.
---
- src/arch/net/charmrun/charmrun.c | 22 ++++++++++++++++++++--
- 1 file changed, 20 insertions(+), 2 deletions(-)
+ src/arch/net/charmrun/charmrun.c | 24 ++++++++++++++++++++++--
+ 1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/src/arch/net/charmrun/charmrun.c b/src/arch/net/charmrun/charmrun.c
-index 6837712..54fc8bc 100644
+index 6837712..bf370c1 100644
--- a/src/arch/net/charmrun/charmrun.c
+++ b/src/arch/net/charmrun/charmrun.c
-@@ -454,8 +454,26 @@ static int pparam_setdef(def, value)
+@@ -454,8 +454,28 @@ static int pparam_setdef(def, value)
if (*p) return -1;
return 0;
case 's' :
@@ -25,7 +25,9 @@ index 6837712..54fc8bc 100644
+ /* Parse input string and convert a literal "\n" into '\n'. */
+ *def->where.s = (char*) calloc(strlen(value)+1, sizeof(char));
+ char* parsed_value = (char*) *def->where.s;
-+ for(int i = 0, j = 0; i < strlen(value); i++)
++ int i;
++ int j = 0;
++ for(i = 0; i < strlen(value); i++)
+ {
+ fprintf(stderr, "i = %d, j = %d, value[i] = \n", i, j);
+ if(i+1 < strlen(value))
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-11 20:16 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-11 20:16 UTC (permalink / raw
To: gentoo-commits
commit: 93b282b1f72581ee0bba1653a2132f50c5446076
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Wed Sep 11 20:16:10 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Wed Sep 11 20:16:10 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=93b282b1
sys-cluster/charm-6.5.1-r1: Backported patch just added to correct upstream version.
Package-Manager: portage-2.2.2
---
sys-cluster/charm/ChangeLog | 5 ++
.../files/charm-6.5.1-fix-string-parsing.patch | 54 ++++------------------
2 files changed, 15 insertions(+), 44 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index de06577..c57b85a 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -3,6 +3,11 @@
# $Header: $
11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ files/charm-6.5.1-fix-string-parsing.patch:
+ sys-cluster/charm-6.5.1-r1: Backported patch just added to correct upstream
+ version.
+
+ 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+files/charm-6.5.1-fix-string-parsing.patch, charm-6.5.1-r1.ebuild:
sys-cluster/charm-6.5.1-r1: Added patch from ticket 294.
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
index 420b2fe..9655343 100644
--- a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -1,55 +1,21 @@
-From b74a077290b82b7a22010d78502a9e60e9e44c1f Mon Sep 17 00:00:00 2001
+From db515b327e423d0ca39a56df15c5e3225154daeb Mon Sep 17 00:00:00 2001
From: Nicolas Bock <nicolasbock@gmail.com>
-Date: Wed, 11 Sep 2013 13:50:05 -0600
-Subject: [PATCH 2/2] charmrun.C: parsing of strings now parses "\n" into '\n'.
+Date: Wed, 11 Sep 2013 14:13:30 -0600
+Subject: [PATCH] charmrun.C: parsing of strings now parses "\n" into '\n'
Since gdb lacks anything like ';' to separate several commands in one line,
the commands need to be separated by a newline character. I have added some
parsing logic so that the string "\n" will now be translated into the
character '\n'.
---
- src/arch/net/charmrun/charmrun.C | 22 ++++++++++++++++++++--
- src/arch/netlrts/charmrun/charmrun.C | 22 ++++++++++++++++++++--
- 2 files changed, 40 insertions(+), 4 deletions(-)
+ src/arch/net/charmrun/charmrun.c | 22 ++++++++++++++++++++--
+ 1 file changed, 20 insertions(+), 2 deletions(-)
-diff --git a/src/arch/net/charmrun/charmrun.C b/src/arch/net/charmrun/charmrun.C
-index a23baa2..2830b8f 100644
---- a/src/arch/net/charmrun/charmrun.C
-+++ b/src/arch/net/charmrun/charmrun.C
-@@ -451,8 +451,26 @@ static int pparam_setdef(ppdef def, char *value)
- if (*p) return -1;
- return 0;
- case 's' :
-- *def->where.s = strdup(value);
-- return 0;
-+ {
-+ /* Parse input string and convert a literal "\n" into '\n'. */
-+ *def->where.s = (char*) calloc(strlen(value)+1, sizeof(char));
-+ char* parsed_value = (char*) *def->where.s;
-+ for(int i = 0, j = 0; i < strlen(value); i++)
-+ {
-+ fprintf(stderr, "i = %d, j = %d, value[i] = \n", i, j);
-+ if(i+1 < strlen(value))
-+ {
-+ if(value[i] == '\\' && value[i+1] == 'n')
-+ {
-+ parsed_value[j++] = '\n';
-+ i++;
-+ continue;
-+ }
-+ }
-+ parsed_value[j++] = value[i];
-+ }
-+ return 0;
-+ }
- case 'f' :
- *def->where.f = strtol(value, &p, 10);
- if (*p) return -1;
-diff --git a/src/arch/netlrts/charmrun/charmrun.C b/src/arch/netlrts/charmrun/charmrun.C
-index 232bf5c..77a7950 100644
---- a/src/arch/netlrts/charmrun/charmrun.C
-+++ b/src/arch/netlrts/charmrun/charmrun.C
-@@ -451,8 +451,26 @@ static int pparam_setdef(ppdef def, char *value)
+diff --git a/src/arch/net/charmrun/charmrun.c b/src/arch/net/charmrun/charmrun.c
+index 6837712..54fc8bc 100644
+--- a/src/arch/net/charmrun/charmrun.c
++++ b/src/arch/net/charmrun/charmrun.c
+@@ -454,8 +454,26 @@ static int pparam_setdef(def, value)
if (*p) return -1;
return 0;
case 's' :
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-11 20:05 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-11 20:05 UTC (permalink / raw
To: gentoo-commits
commit: 648828262ee99fd62b8c1933b9c8c170dd845ca0
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Wed Sep 11 20:04:56 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Wed Sep 11 20:04:56 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=64882826
sys-cluster/charm-6.5.1-r1: Added patch from ticket 294.
Package-Manager: portage-2.2.2
---
sys-cluster/charm/ChangeLog | 4 ++
sys-cluster/charm/charm-6.5.1-r1.ebuild | 1 +
.../files/charm-6.5.1-fix-string-parsing.patch | 83 ++++++++++++++++++++++
3 files changed, 88 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 61f5a30..de06577 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.1-fix-string-parsing.patch, charm-6.5.1-r1.ebuild:
+ sys-cluster/charm-6.5.1-r1: Added patch from ticket 294.
+
*charm-6.5.1-r1 (11 Sep 2013)
11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1-r1.ebuild,
diff --git a/sys-cluster/charm/charm-6.5.1-r1.ebuild b/sys-cluster/charm/charm-6.5.1-r1.ebuild
index 9161c8f..25b0560 100644
--- a/sys-cluster/charm/charm-6.5.1-r1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1-r1.ebuild
@@ -91,6 +91,7 @@ src_prepare() {
epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
+ epatch "${FILESDIR}/charm-6.5.1-fix-string-parsing.patch"
}
src_compile() {
diff --git a/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
new file mode 100644
index 0000000..420b2fe
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-fix-string-parsing.patch
@@ -0,0 +1,83 @@
+From b74a077290b82b7a22010d78502a9e60e9e44c1f Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Wed, 11 Sep 2013 13:50:05 -0600
+Subject: [PATCH 2/2] charmrun.C: parsing of strings now parses "\n" into '\n'.
+
+Since gdb lacks anything like ';' to separate several commands in one line,
+the commands need to be separated by a newline character. I have added some
+parsing logic so that the string "\n" will now be translated into the
+character '\n'.
+---
+ src/arch/net/charmrun/charmrun.C | 22 ++++++++++++++++++++--
+ src/arch/netlrts/charmrun/charmrun.C | 22 ++++++++++++++++++++--
+ 2 files changed, 40 insertions(+), 4 deletions(-)
+
+diff --git a/src/arch/net/charmrun/charmrun.C b/src/arch/net/charmrun/charmrun.C
+index a23baa2..2830b8f 100644
+--- a/src/arch/net/charmrun/charmrun.C
++++ b/src/arch/net/charmrun/charmrun.C
+@@ -451,8 +451,26 @@ static int pparam_setdef(ppdef def, char *value)
+ if (*p) return -1;
+ return 0;
+ case 's' :
+- *def->where.s = strdup(value);
+- return 0;
++ {
++ /* Parse input string and convert a literal "\n" into '\n'. */
++ *def->where.s = (char*) calloc(strlen(value)+1, sizeof(char));
++ char* parsed_value = (char*) *def->where.s;
++ for(int i = 0, j = 0; i < strlen(value); i++)
++ {
++ fprintf(stderr, "i = %d, j = %d, value[i] = \n", i, j);
++ if(i+1 < strlen(value))
++ {
++ if(value[i] == '\\' && value[i+1] == 'n')
++ {
++ parsed_value[j++] = '\n';
++ i++;
++ continue;
++ }
++ }
++ parsed_value[j++] = value[i];
++ }
++ return 0;
++ }
+ case 'f' :
+ *def->where.f = strtol(value, &p, 10);
+ if (*p) return -1;
+diff --git a/src/arch/netlrts/charmrun/charmrun.C b/src/arch/netlrts/charmrun/charmrun.C
+index 232bf5c..77a7950 100644
+--- a/src/arch/netlrts/charmrun/charmrun.C
++++ b/src/arch/netlrts/charmrun/charmrun.C
+@@ -451,8 +451,26 @@ static int pparam_setdef(ppdef def, char *value)
+ if (*p) return -1;
+ return 0;
+ case 's' :
+- *def->where.s = strdup(value);
+- return 0;
++ {
++ /* Parse input string and convert a literal "\n" into '\n'. */
++ *def->where.s = (char*) calloc(strlen(value)+1, sizeof(char));
++ char* parsed_value = (char*) *def->where.s;
++ for(int i = 0, j = 0; i < strlen(value); i++)
++ {
++ fprintf(stderr, "i = %d, j = %d, value[i] = \n", i, j);
++ if(i+1 < strlen(value))
++ {
++ if(value[i] == '\\' && value[i+1] == 'n')
++ {
++ parsed_value[j++] = '\n';
++ i++;
++ continue;
++ }
++ }
++ parsed_value[j++] = value[i];
++ }
++ return 0;
++ }
+ case 'f' :
+ *def->where.f = strtol(value, &p, 10);
+ if (*p) return -1;
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-09-11 17:27 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-09-11 17:27 UTC (permalink / raw
To: gentoo-commits
commit: 64302b37bf4fb940d3eb260d51b491b111094485
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Wed Sep 11 17:26:47 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Wed Sep 11 17:26:47 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=64302b37
Added patch to fix bug in CkReductionMgr::reduceMessages().
This issues has been reported upstream (issue #287).
Package-Manager: portage-2.2.1
---
sys-cluster/charm/ChangeLog | 5 ++++
sys-cluster/charm/charm-6.5.1.ebuild | 1 +
.../charm/files/charm-6.5.1-CkReductionMgr.patch | 34 ++++++++++++++++++++++
3 files changed, 40 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 60a0d00..f6f824c 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,11 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 11 Sep 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.1-CkReductionMgr.patch, charm-6.5.1.ebuild:
+ Added patch to fix bug in CkReductionMgr::reduceMessages(). This issues has
+ been reported upstream (issue #287).
+
23 Jul 2013; Nicolas Bock <nicolasbock@gmail.com>
+files/charm-6.5.1-cleanup-config.patch, charm-6.5.1.ebuild:
sys-cluster/charm-6.5.1: Added patch to fix config.h The added patch
diff --git a/sys-cluster/charm/charm-6.5.1.ebuild b/sys-cluster/charm/charm-6.5.1.ebuild
index 5405952..9161c8f 100644
--- a/sys-cluster/charm/charm-6.5.1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1.ebuild
@@ -90,6 +90,7 @@ src_prepare() {
append-cflags -DALLOCA_H
epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
+ epatch "${FILESDIR}/charm-6.5.1-CkReductionMgr.patch"
}
src_compile() {
diff --git a/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch b/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
new file mode 100644
index 0000000..8387180
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-CkReductionMgr.patch
@@ -0,0 +1,34 @@
+From f9cc5724818141201ba201e698c21aea62ecd362 Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Thu, 5 Sep 2013 04:04:06 -0600
+Subject: [PATCH] Fixed bug in CkReductionMgr::reduceMessages().
+
+The first contribution of a child node is a single message. In this case
+CkReductionMgr::reduceMessages() simply returns the message without calling
+the reducer. However, when using the CkReduction::set reducer this behavior is
+incorrect, and instead the reducer should be called even for one single
+message so that the message is wrapped into a setElement struct. In the
+current implementation, the reduction becomes corrupted because the
+CkReduction::set() method one tier up in the reduction sizes the remote
+contribution incorrectly assuming a setElement struct and not a simple
+message.
+---
+ src/ck-core/ckreduction.C | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/ck-core/ckreduction.C b/src/ck-core/ckreduction.C
+index f2ac8cd..d94f5b1 100644
+--- a/src/ck-core/ckreduction.C
++++ b/src/ck-core/ckreduction.C
+@@ -862,7 +862,7 @@ CkReductionMsg *CkReductionMgr::reduceMessages(void)
+ else
+ {//Use the reducer to reduce the messages
+ //if there is only one msg to be reduced just return that message
+- if(nMsgs == 1){
++ if(nMsgs == 1 && msgArr[0]->reducer != CkReduction::set) {
+ ret = msgArr[0];
+ }else{
+ if (msgArr[0]->reducer == CkReduction::random) {
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-07-23 17:51 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-07-23 17:51 UTC (permalink / raw
To: gentoo-commits
commit: 198e6ae019c8d45ac96f2bcd9397e5b8a6fa990c
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Tue Jul 23 17:50:56 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Tue Jul 23 17:50:56 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=198e6ae0
sys-cluster/charm-6.5.1: Added patch to fix config.h
The added patch addresses bug #252,
https://charm.cs.illinois.edu/redmine/issues/252
until upstream fixes this problem.
Package-Manager: portage-2.2.0_alpha188
---
sys-cluster/charm/ChangeLog | 6 +++
sys-cluster/charm/charm-6.5.1.ebuild | 2 +
.../charm/files/charm-6.5.1-cleanup-config.patch | 58 ++++++++++++++++++++++
3 files changed, 66 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index cb0fdfc..60a0d00 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,12 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 23 Jul 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.1-cleanup-config.patch, charm-6.5.1.ebuild:
+ sys-cluster/charm-6.5.1: Added patch to fix config.h The added patch
+ addresses bug #252, https://charm.cs.illinois.edu/redmine/issues/252 until
+ upstream fixes this problem.
+
03 Jul 2013; Nicolas Bock <nicolasbock@gmail.com> metadata.xml:
Beautification.
diff --git a/sys-cluster/charm/charm-6.5.1.ebuild b/sys-cluster/charm/charm-6.5.1.ebuild
index 5172428..5405952 100644
--- a/sys-cluster/charm/charm-6.5.1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1.ebuild
@@ -88,6 +88,8 @@ src_prepare() {
# Fix QA notice. Filed report with upstream.
append-cflags -DALLOCA_H
+
+ epatch "${FILESDIR}/charm-6.5.1-cleanup-config.patch"
}
src_compile() {
diff --git a/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch b/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
new file mode 100644
index 0000000..89834e4
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.1-cleanup-config.patch
@@ -0,0 +1,58 @@
+From 04639c20479564a2b5e662d90de953e3f37b0360 Mon Sep 17 00:00:00 2001
+From: Nicolas Bock <nicolasbock@gmail.com>
+Date: Tue, 23 Jul 2013 11:19:22 -0600
+Subject: [PATCH] Commented out colliding defines in conv-autoconfig.h
+
+The colliding defines (bug #252) are commented out in configure.
+---
+ src/scripts/configure | 5 +++++
+ src/scripts/configure.in | 3 +++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/src/scripts/configure b/src/scripts/configure
+index 2629834..03dc778 100755
+--- a/src/scripts/configure
++++ b/src/scripts/configure
+@@ -1703,6 +1703,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ ac_config_headers="$ac_config_headers conv-autoconfig.h"
+
+
++ac_config_commands="$ac_config_commands config-cleanup"
++
++
+ CHARMINC="."
+ test -r ./conv-config.sh && . ./conv-config.sh
+
+@@ -5201,6 +5204,7 @@ for ac_config_target in $ac_config_targets
+ do
+ case $ac_config_target in
+ "conv-autoconfig.h") CONFIG_HEADERS="$CONFIG_HEADERS conv-autoconfig.h" ;;
++ "config-cleanup") CONFIG_COMMANDS="$CONFIG_COMMANDS config-cleanup" ;;
+ "libs/ck-libs/ampi/ampiCC") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampiCC" ;;
+ "libs/ck-libs/ampi/ampirun") CONFIG_FILES="$CONFIG_FILES libs/ck-libs/ampi/ampirun" ;;
+ "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
+@@ -5754,6 +5758,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
+
+
+ case $ac_file$ac_mode in
++ "config-cleanup":C) sed -i -e 's:^#define\s\+PACKAGE://&:' conv-autoconfig.h ;;
+ "default":C) chmod +x libs/ck-libs/ampi/ampiCC libs/ck-libs/ampi/ampirun
+ ;;
+
+diff --git a/src/scripts/configure.in b/src/scripts/configure.in
+index 69e5318..2cb18b6 100644
+--- a/src/scripts/configure.in
++++ b/src/scripts/configure.in
+@@ -3,6 +3,9 @@ AC_INIT(./Makefile)
+
+ AC_CONFIG_HEADER(conv-autoconfig.h)
+
++AC_CONFIG_COMMANDS([config-cleanup],
++ [sed -i -e 's:^#define\s\+PACKAGE://&:' conv-autoconfig.h])
++
+ CHARMINC="."
+ test -r ./conv-config.sh && . ./conv-config.sh
+
+--
+1.8.1.5
+
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-07-02 17:08 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-07-02 17:08 UTC (permalink / raw
To: gentoo-commits
commit: 98b8429c7b085d4ee07887c4427193dd7e974ba5
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Tue Jul 2 17:08:36 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Tue Jul 2 17:08:36 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=98b8429c
Added missing patch.
Package-Manager: portage-2.2.0_alpha186
---
sys-cluster/charm/ChangeLog | 4 ++++
sys-cluster/charm/charm-6.5.1.ebuild | 3 +++
.../charm/files/charm-6.5.0-charmc-gentoo.patch | 25 ++++++++++++++++++++++
3 files changed, 32 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
index 3563efb..4d51c0e 100644
--- a/sys-cluster/charm/ChangeLog
+++ b/sys-cluster/charm/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 02 Jul 2013; Nicolas Bock <nicolasbock@gmail.com>
+ +files/charm-6.5.0-charmc-gentoo.patch, charm-6.5.1.ebuild:
+ Added missing patch.
+
*charm-6.5.1 (02 Jul 2013)
02 Jul 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.1.ebuild,
diff --git a/sys-cluster/charm/charm-6.5.1.ebuild b/sys-cluster/charm/charm-6.5.1.ebuild
index 25982f8..74ba894 100644
--- a/sys-cluster/charm/charm-6.5.1.ebuild
+++ b/sys-cluster/charm/charm-6.5.1.ebuild
@@ -75,6 +75,9 @@ src_prepare() {
src/scripts/Makefile \
src/arch/net/charmrun/Makefile || die
+ # Fix QA notice.
+ append-cflags -DALLOCA_H
+
einfo "charm opts: ${CHARM_OPTS}"
}
diff --git a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
new file mode 100644
index 0000000..34923e3
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
@@ -0,0 +1,25 @@
+--- src/scripts/charmc.old 2013-05-30 10:18:02.261819771 -0600
++++ src/scripts/charmc 2013-05-30 10:19:50.839661634 -0600
+@@ -361,19 +361,9 @@
+ PROG_EXT=".exe"
+ fi
+
+-CHARMLIB="$CHARMBIN/../lib"
+-CHARMINC="$CHARMBIN/../include"
+-CHARMLIBSO=
+-if test -d "$CHARMBIN/../lib_so"
+-then
+- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- #getting absolute path is harder than thought because of symbolic links and ..
+- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
+- #csh is ok too if it exists
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
+- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
+-fi
++CHARMLIB="/usr/gentoo-libdir"
++CHARMINC="/usr/include/gentoo-include"
++CHARMLIBSO="/usr/gentoo-libdir"
+
+ ##############################################################################
+ #
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-06-27 0:01 Christoph Junghans
0 siblings, 0 replies; 17+ messages in thread
From: Christoph Junghans @ 2013-06-27 0:01 UTC (permalink / raw
To: gentoo-commits
commit: 7e1c560b50e5451a874278c27bc0e7c87d0534e6
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 27 00:01:27 2013 +0000
Commit: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Thu Jun 27 00:01:27 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=7e1c560b
moved to gx86
---
sys-cluster/charm/ChangeLog | 43 -----
sys-cluster/charm/charm-6.5.0.ebuild | 178 ---------------------
.../charm/files/charm-6.5.0-charmc-gentoo.patch | 25 ---
sys-cluster/charm/metadata.xml | 12 --
4 files changed, 258 deletions(-)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
deleted file mode 100644
index dce9f9f..0000000
--- a/sys-cluster/charm/ChangeLog
+++ /dev/null
@@ -1,43 +0,0 @@
-# ChangeLog for sys-cluster/charm
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: $
-
- 26 Jun 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- Beautify.
-
- 26 Jun 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild,
- metadata.xml:
- Added new package: projections A performance analysis framework for Charm++
- applications
-
- 26 Jun 2013; Christoph Junghans <ottxor@gentoo.org> charm-6.5.0.ebuild:
- make use of usex
-
- 24 Jun 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- sys-cluster/charm-6.5.0: Reorganized DEPENDs.
-
- 24 Jun 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- sys-cluster/charm-6.5.0: Added mpi use flag.
-
- 31 May 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- Added die to test.
-
- 31 May 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- Added src_test().
-
- 31 May 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- The "-DALLOCA_H" compiler flag appears to be unnecessary...
-
- 30 May 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild,
- metadata.xml:
- More cleanup. Beautify!
-
- 30 May 2013; Nicolas Bock <nicolasbock@gmail.com> charm-6.5.0.ebuild:
- Added examples use flag.
-
-*charm-6.5.0 (30 May 2013)
-
- 30 May 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.0.ebuild,
- +files/charm-6.5.0-charmc-gentoo.patch, +metadata.xml:
- Version bump to sys-cluster/charm-6.5.0. This ebuild fixes bugs
- 471740 and 432834.
diff --git a/sys-cluster/charm/charm-6.5.0.ebuild b/sys-cluster/charm/charm-6.5.0.ebuild
deleted file mode 100644
index 9b34899..0000000
--- a/sys-cluster/charm/charm-6.5.0.ebuild
+++ /dev/null
@@ -1,178 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=5
-
-inherit eutils flag-o-matic fortran-2 multilib toolchain-funcs
-
-DESCRIPTION="Message-passing parallel language and runtime system"
-HOMEPAGE="http://charm.cs.uiuc.edu/"
-SRC_URI="http://charm.cs.uiuc.edu/distrib/${P}.tar.gz"
-
-LICENSE="charm"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="charmdebug charmtracing charmproduction cmkopt doc examples mpi smp static-libs tcp"
-
-RDEPEND="mpi? ( virtual/mpi )"
-DEPEND="
- ${RDEPEND}
- doc? (
- >=app-text/poppler-0.12.3-r3[utils]
- dev-tex/latex2html
- virtual/tex-base
- )"
-
-REQUIRED_USE="
- cmkopt? ( !charmdebug !charmtracing )
- charmproduction? ( !charmdebug !charmtracing )"
-
-FORTRAN_STANDARD="90"
-
-src_prepare() {
- # Build shared libraries by default.
- CHARM_OPTS="--build-shared"
- if use charmproduction; then
- CHARM_OPTS+=" --with-production"
- else
- if use charmdebug; then
- CHARM_OPTS+=" --with-charmdebug"
- fi
-
- if use charmtracing; then
- CHARM_OPTS+=" --with-tracing --with-tracing-commthread"
- fi
- fi
-
- # TCP instead of default UDP for socket comunication
- # protocol
- CHARM_OPTS+="$(usex tcp ' tcp' '')"
-
- # enable direct SMP support using shared memory
- CHARM_OPTS+="$(usex smp ' smp' '')"
-
- # CMK optimization
- use cmkopt && append-cppflags -DCMK_OPTIMIZE=1
-
- sed \
- -e "/CMK_CF90/s:f90:$(usex mpi "mpif90" "$(tc-getFC)"):g" \
- -e "/CMK_CXX/s:g++:$(usex mpi "mpic++" "$(tc-getCXX)"):g" \
- -e "/CMK_CC/s:gcc:$(usex mpi "mpicc" "$(tc-getCC)"):g" \
- -e '/CMK_F90_MODINC/s:-p:-I:g' \
- -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
- -i src/arch/$(usex mpi "mpi" "net")-linux*/*sh || die
-
- sed \
- -e "s:-o conv-cpm:${LDFLAGS} &:g" \
- -e "s:-o charmxi:${LDFLAGS} &:g" \
- -e "s:-o charmrun-silent:${LDFLAGS} &:g" \
- -e "s:-o charmrun-notify:${LDFLAGS} &:g" \
- -e "s:-o charmrun:${LDFLAGS} &:g" \
- -e "s:-o charmd_faceless:${LDFLAGS} &:g" \
- -e "s:-o charmd:${LDFLAGS} &:g" \
- -i \
- src/scripts/Makefile \
- src/arch/net/charmrun/Makefile || die
-
- einfo "charm opts: ${CHARM_OPTS}"
-}
-
-src_compile() {
- # Build charmm++ first.
- ./build charm++ $(usex mpi "mpi" "net")-linux$(usex amd64 "-amd64" '') \
- ${CHARM_OPTS} ${MAKEOPTS} ${CFLAGS} || die "Failed to build charm++"
-
- # make pdf/html docs
- if use doc; then
- cd "${S}"/doc
- make doc || die "failed to create pdf/html docs"
- fi
-}
-
-src_test() {
- make -C tests/charm++ test TESTOPTS="++local" || die
-}
-
-src_install() {
- # Make charmc play well with gentoo before we move it into /usr/bin.
- epatch "${FILESDIR}/charm-6.5.0-charmc-gentoo.patch"
-
- sed -e "s|gentoo-include|${P}|" \
- -e "s|gentoo-libdir|$(get_libdir)|g" \
- -e "s|VERSION|${P}/VERSION|" \
- -i ./src/scripts/charmc || die "failed patching charmc script"
-
- # In the following, some of the files are symlinks to ../tmp which we need
- # to dereference first (see bug 432834).
-
- local i
-
- # Install binaries.
- for i in bin/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dobin "${i}"
- done
-
- # Install headers.
- insinto /usr/include/${P}
- for i in include/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- doins "${i}"
- done
-
- # Install static libs. Charm has a lot of .o "libs" that it requires at
- # runtime.
- if use static-libs; then
- for i in lib/*.{a,o}; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib "${i}"
- done
- fi
-
- # Install shared libs.
- for i in lib_so/*; do
- if [[ -L ${i} ]]; then
- i=$(readlink -e "${i}") || die
- fi
- dolib.so "${i}"
- done
-
- # Basic docs.
- dodoc CHANGES README
-
- # Install examples.
- if use examples; then
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
- die "Failed to fix examples"
- find examples/ -name 'Makefile' | xargs sed \
- -r "s:./charmrun:./charmrun ++local:" -i || \
- die "Failed to fix examples"
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/charm++/*
- fi
-
- # Install pdf/html docs
- if use doc; then
- cd "${S}"/doc
- # Install pdfs.
- insinto /usr/share/doc/${PF}/pdf
- doins doc/pdf/*
- # Install html.
- docinto html
- dohtml -r doc/html/*
- fi
-}
-
-pkg_postinst() {
- einfo "Please test your charm installation by copying the"
- einfo "content of /usr/share/doc/${PF}/examples to a"
- einfo "temporary location and run 'make test'."
-}
diff --git a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
deleted file mode 100644
index 34923e3..0000000
--- a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- src/scripts/charmc.old 2013-05-30 10:18:02.261819771 -0600
-+++ src/scripts/charmc 2013-05-30 10:19:50.839661634 -0600
-@@ -361,19 +361,9 @@
- PROG_EXT=".exe"
- fi
-
--CHARMLIB="$CHARMBIN/../lib"
--CHARMINC="$CHARMBIN/../include"
--CHARMLIBSO=
--if test -d "$CHARMBIN/../lib_so"
--then
-- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- #getting absolute path is harder than thought because of symbolic links and ..
-- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
-- #csh is ok too if it exists
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
-- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
-- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
--fi
-+CHARMLIB="/usr/gentoo-libdir"
-+CHARMINC="/usr/include/gentoo-include"
-+CHARMLIBSO="/usr/gentoo-libdir"
-
- ##############################################################################
- #
diff --git a/sys-cluster/charm/metadata.xml b/sys-cluster/charm/metadata.xml
deleted file mode 100644
index 0e4959d..0000000
--- a/sys-cluster/charm/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <herd>sci</herd>
- <use>
- <flag name="charmdebug">Enable the charm debugger</flag>
- <flag name="charmproduction">Optimize performance of Charm++ runtime</flag>
- <flag name="charmtracing">Enable tracing support in Charm++</flag>
- <flag name="cmkopt">Enable CMK optimisation</flag>
- <flag name="tcp">Use TCP (instead of UPD) for socket communication</flag>
- </use>
-</pkgmetadata>
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/
@ 2013-05-30 18:27 Nicolas Bock
0 siblings, 0 replies; 17+ messages in thread
From: Nicolas Bock @ 2013-05-30 18:27 UTC (permalink / raw
To: gentoo-commits
commit: 55f5e6d4104fb2d81171d709ab53be68e7504c99
Author: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
AuthorDate: Thu May 30 18:26:41 2013 +0000
Commit: Nicolas Bock <nicolasbock <AT> gmail <DOT> com>
CommitDate: Thu May 30 18:26:41 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=55f5e6d4
Version bump to sys-cluster/charm-6.5.0.
This ebuild fixes bugs 471740 and 432834.
Package-Manager: portage-2.2.0_alpha177
---
sys-cluster/charm/ChangeLog | 10 ++
sys-cluster/charm/charm-6.5.0.ebuild | 176 +++++++++++++++++++++
.../charm/files/charm-6.5.0-charmc-gentoo.patch | 25 +++
sys-cluster/charm/metadata.xml | 10 ++
4 files changed, 221 insertions(+)
diff --git a/sys-cluster/charm/ChangeLog b/sys-cluster/charm/ChangeLog
new file mode 100644
index 0000000..1c91048
--- /dev/null
+++ b/sys-cluster/charm/ChangeLog
@@ -0,0 +1,10 @@
+# ChangeLog for sys-cluster/charm
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*charm-6.5.0 (30 May 2013)
+
+ 30 May 2013; Nicolas Bock <nicolasbock@gmail.com> +charm-6.5.0.ebuild,
+ +files/charm-6.5.0-charmc-gentoo.patch, +metadata.xml:
+ Version bump to sys-cluster/charm-6.5.0. This ebuild fixes bugs
+ 471740 and 432834.
diff --git a/sys-cluster/charm/charm-6.5.0.ebuild b/sys-cluster/charm/charm-6.5.0.ebuild
new file mode 100644
index 0000000..a43c91a
--- /dev/null
+++ b/sys-cluster/charm/charm-6.5.0.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit eutils flag-o-matic fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Message-passing parallel language and runtime system"
+HOMEPAGE="http://charm.cs.uiuc.edu/"
+SRC_URI="http://charm.cs.uiuc.edu/distrib/${P}.tar.gz"
+
+LICENSE="charm"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cmkopt charmshared tcp smp doc"
+
+DEPEND="
+ doc? (
+ >=app-text/poppler-0.12.3-r3[utils]
+ dev-tex/latex2html
+ virtual/tex-base )"
+RDEPEND=""
+
+case ${ARCH} in
+ x86)
+ CHARM_ARCH="net-linux" ;;
+
+ amd64)
+ CHARM_ARCH="net-linux-amd64" ;;
+esac
+
+FORTRAN_STANDARD="90"
+
+src_prepare() {
+ #epatch "${FILESDIR}"/${P}-gcc-4.7.patch
+
+ # For production, disable debugging features.
+ CHARM_OPTS="--with-production"
+
+ # TCP instead of default UDP for socket comunication
+ # protocol
+ if use tcp; then
+ CHARM_OPTS="${CHARM_OPTS} tcp"
+ fi
+
+ # enable direct SMP support using shared memory
+ if use smp; then
+ CHARM_OPTS="${CHARM_OPTS} smp"
+ fi
+
+ # CMK optimization
+ if use cmkopt; then
+ append-flags -DCMK_OPTIMIZE=1
+ fi
+
+ sed \
+ -e "/CMK_CF90/s:f90:${FC}:g" \
+ -e "/CMK_CXX/s:g++:$(tc-getCXX):g" \
+ -e "/CMK_CC/s:gcc:$(tc-getCC):g" \
+ -e '/CMK_F90_MODINC/s:-p:-I:g' \
+ -e "/CMK_LD/s:\"$: ${LDFLAGS} \":g" \
+ -i src/arch/net-linux*/*sh
+
+ sed \
+ -e "s:\(-o conv-cpm\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmxi\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmrun-silent\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmrun-notify\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmrun\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmd_faceless\):${LDFLAGS} \1:g" \
+ -e "s:\(-o charmd\):${LDFLAGS} \1:g" \
+ -i \
+ src/scripts/Makefile \
+ src/arch/net/charmrun/Makefile
+
+ append-cflags -DALLOCA_H
+
+ echo "charm opts: ${CHARM_OPTS}"
+}
+
+src_compile() {
+ # build charmm++ first
+ ./build charm++ ${CHARM_ARCH} ${CHARM_OPTS} ${MAKEOPTS} ${CFLAGS} || \
+ die "Failed to build charm++"
+
+ # make charmc play well with gentoo before
+ # we move it into /usr/bin
+ epatch "${FILESDIR}/charm-6.5.0-charmc-gentoo.patch"
+
+ # make pdf/html docs
+ if use doc; then
+ cd "${S}"/doc
+ make doc || die "failed to create pdf/html docs"
+ fi
+}
+
+src_install() {
+ sed -e "s|gentoo-include|${P}|" \
+ -e "s|gentoo-libdir|$(get_libdir)|g" \
+ -e "s|VERSION|${P}/VERSION|" \
+ -i ./src/scripts/charmc || die "failed patching charmc script"
+
+ # In the following, some of the files are symlinks to ../tmp which we need
+ # to dereference first (see bug 432834).
+
+ # Install binaries.
+ for i in bin/*; do
+ if [ -L $i ]; then
+ i=$( readlink -e $i )
+ else
+ i=$i
+ fi
+ dobin $i
+ done
+
+ # Install headers.
+ insinto /usr/include/${P}
+ for i in include/*; do
+ if [ -L $i ]; then
+ i=$( readlink -e $i )
+ else
+ i=$i
+ fi
+ doins $i
+ done
+
+ # Install static libs. Charm has a lot of .o "libs" that it requires at
+ # runtime.
+ for i in lib/*.{a,o}; do
+ if [ -L $i ]; then
+ i=$( readlink -e $i )
+ else
+ i=$i
+ fi
+ dolib $i
+ done
+
+ # Install shared libs.
+ if use charmshared; then
+ cd "${S}"/lib_so
+ dolib.so *.so*
+ fi
+
+ # Basic docs.
+ dodoc CHANGES README
+
+ # Install examples.
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:(../)+bin/charmc:/usr/bin/charmc:" -i || \
+ die "Failed to fix examples"
+ find examples/ -name 'Makefile' | xargs sed \
+ -r "s:./charmrun:./charmrun ++local:" -i || \
+ die "Failed to fix examples"
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples/charm++/*
+
+ # Install pdf/html docs
+ if use doc; then
+ cd "${S}"/doc
+ # Install pdfs.
+ insinto /usr/share/doc/${PF}/pdf
+ doins doc/pdf/*
+ # Install html.
+ docinto html
+ dohtml -r doc/html/*
+ fi
+}
+
+pkg_postinst() {
+ echo
+ einfo "Please test your charm installation by copying the"
+ einfo "content of /usr/share/doc/${PF}/examples to a"
+ einfo "temporary location and run 'make test'."
+ echo
+}
diff --git a/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
new file mode 100644
index 0000000..34923e3
--- /dev/null
+++ b/sys-cluster/charm/files/charm-6.5.0-charmc-gentoo.patch
@@ -0,0 +1,25 @@
+--- src/scripts/charmc.old 2013-05-30 10:18:02.261819771 -0600
++++ src/scripts/charmc 2013-05-30 10:19:50.839661634 -0600
+@@ -361,19 +361,9 @@
+ PROG_EXT=".exe"
+ fi
+
+-CHARMLIB="$CHARMBIN/../lib"
+-CHARMINC="$CHARMBIN/../include"
+-CHARMLIBSO=
+-if test -d "$CHARMBIN/../lib_so"
+-then
+- CHARMLIBSO=`cd $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- #getting absolute path is harder than thought because of symbolic links and ..
+- #ksh needs cd -P to resolve werid symbolic links, however -P is not portable
+- #csh is ok too if it exists
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`cd -P $CHARMBIN/../lib_so 2>/dev/null && pwd`
+- test -z "$CHARMLIBSO" && CHARMLIBSO=`csh -c "cd $CHARMBIN/../lib_so >& /dev/null && pwd"`
+- test -z "$CHARMLIBSO" && echo "$CHARMBIN/../lib_so: not found" && exit 1
+-fi
++CHARMLIB="/usr/gentoo-libdir"
++CHARMINC="/usr/include/gentoo-include"
++CHARMLIBSO="/usr/gentoo-libdir"
+
+ ##############################################################################
+ #
diff --git a/sys-cluster/charm/metadata.xml b/sys-cluster/charm/metadata.xml
new file mode 100644
index 0000000..715027f
--- /dev/null
+++ b/sys-cluster/charm/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <use>
+ <flag name="cmkopt">Enable CMK optimisation</flag>
+ <flag name="tcp">Use TCP (instead of UPD) for socket communication</flag>
+ <flag name="charmshared">Build shared libraries</flag>
+ </use>
+</pkgmetadata>
^ permalink raw reply related [flat|nested] 17+ messages in thread
end of thread, other threads:[~2014-11-15 0:21 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-08 17:22 [gentoo-commits] proj/sci:master commit in: sys-cluster/charm/, sys-cluster/charm/files/ Nicolas Bock
-- strict thread matches above, loose matches on Subject: below --
2014-11-15 0:21 Christoph Junghans
2013-11-20 19:47 Nicolas Bock
2013-10-15 4:44 Nicolas Bock
2013-10-14 21:07 Nicolas Bock
2013-10-01 3:59 Nicolas Bock
2013-09-27 17:36 Nicolas Bock
2013-09-27 16:18 Christoph Junghans
2013-09-14 12:43 Nicolas Bock
2013-09-11 20:32 Nicolas Bock
2013-09-11 20:16 Nicolas Bock
2013-09-11 20:05 Nicolas Bock
2013-09-11 17:27 Nicolas Bock
2013-07-23 17:51 Nicolas Bock
2013-07-02 17:08 Nicolas Bock
2013-06-27 0:01 Christoph Junghans
2013-05-30 18:27 Nicolas Bock
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox