bump(profiles): sync with upstream

Packages updated:
  eclass
  licenses
  profiles
  scripts
This commit is contained in:
David Michael 2017-07-19 12:58:28 -07:00
parent a1d5775603
commit 269204200a
971 changed files with 5873 additions and 9569 deletions

View File

@ -171,6 +171,10 @@ setup_mpm() {
eerror "You have selected a non-threaded MPM but USE=threads is enabled"
die "invalid use flag combination"
fi
if [[ "${PV}" != 2.2* ]] && [[ "${MY_MPM}" = *prefork* ]] && use apache2_modules_http2 ; then
die "http2 does not work with prefork MPM."
fi
}
# @VARIABLE: MODULE_CRITICAL

View File

@ -1,80 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @DEAD
# Removal on 2017-05-01.
# @ECLASS: aspell-dict.eclass
# @MAINTAINER:
# maintainer-needed@gentoo.org
# @AUTHOR:
# Original author: Seemant Kulleen
# @BLURB: An eclass to streamline the construction of ebuilds for new aspell dicts
# @DESCRIPTION:
# The aspell-dict eclass is designed to streamline the construction of
# ebuilds for the new aspell dictionaries (from gnu.org) which support
# aspell-0.50. Support for aspell-0.60 has been added by Sergey Ulanov.
# @ECLASS-VARIABLE: ASPELL_LANG
# @REQUIRED
# @DESCRIPTION:
# Which language is the dictionary for? It's used for the DESCRIPTION of the
# package.
# @ECLASS-VARIABLE: ASPOSTFIX
# @REQUIRED
# @DESCRIPTION:
# What major version of aspell is this dictionary for?
case ${EAPI} in
0|1) EXPORT_FUNCTIONS src_compile src_install ;;
*) EXPORT_FUNCTIONS src_configure src_compile src_install ;;
esac
#MY_P=${PN}-${PV%.*}-${PV#*.*.}
MY_P=${P%.*}-${PV##*.}
MY_P=aspell${ASPOSTFIX}-${MY_P/aspell-/}
SPELLANG=${PN/aspell-/}
S="${WORKDIR}/${MY_P}"
DESCRIPTION="${ASPELL_LANG} language dictionary for aspell"
HOMEPAGE="http://aspell.net"
SRC_URI="mirror://gnu/aspell/dict/${SPELLANG}/${MY_P}.tar.bz2"
IUSE=""
SLOT="0"
if [ x${ASPOSTFIX} = x6 ] ; then
RDEPEND=">=app-text/aspell-0.60"
DEPEND="${RDEPEND}"
else
RDEPEND=">=app-text/aspell-0.50"
DEPEND="${RDEPEND}"
fi
# @FUNCTION: aspell-dict_src_configure
# @DESCRIPTION:
# The aspell-dict src_configure function which is exported.
aspell-dict_src_configure() {
./configure || die
}
# @FUNCTION: aspell-dict_src_compile
# @DESCRIPTION:
# The aspell-dict src_compile function which is exported.
aspell-dict_src_compile() {
case ${EAPI} in
0|1) aspell-dict_src_configure ;;
esac
emake || die
}
# @FUNCTION: aspell-dict_src_install
# @DESCRIPTION:
# The aspell-dict src_install function which is exported.
aspell-dict_src_install() {
make DESTDIR="${D}" install || die
for doc in README info ; do
[ -s "$doc" ] && dodoc $doc
done
}

View File

@ -3,7 +3,7 @@
# @ECLASS: bsdmk.eclass
# @MAINTAINER:
# maintainer-needed@gentoo.org
# bsd@gentoo.org
# @BLURB: Some functions for BSDmake
inherit toolchain-funcs portability flag-o-matic

View File

@ -1,63 +1,55 @@
# Copyright 1999-2012 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: cannadic.eclass
# @MAINTAINER:
# cjk@gentoo.org
# @AUTHOR:
# Original author: Mamoru KOMACHI <usata@gentoo.org>
# Mamoru KOMACHI <usata@gentoo.org>
# @BLURB: Function for Canna compatible dictionaries
# @DESCRIPTION:
# The cannadic eclass is used for installation and setup of Canna
# compatible dictionaries within the Portage system.
inherit eutils
EXPORT_FUNCTIONS src_install pkg_setup pkg_postinst pkg_postrm
EXPORT_FUNCTIONS pkg_setup pkg_postinst pkg_postrm src_install
IUSE=""
HOMEPAGE="http://canna.sourceforge.jp/" # you need to change this!
HOMEPAGE="http://canna.osdn.jp/" # you need to change this!
SRC_URI="mirror://gentoo/${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
S="${WORKDIR}"
DICSDIRFILE="${FILESDIR}/*.dics.dir"
CANNADICS="${CANNADICS}" # (optional)
DOCS="README*"
# You don't need to modify these
#local cannadir dicsdir
cannadir="${ROOT}/var/lib/canna/dic/canna"
dicsdir="${ROOT}/var/lib/canna/dic/dics.d"
CANNADIC_CANNA_DIR="${EROOT:-${ROOT}}"var/lib/canna/dic/canna
CANNADIC_DICS_DIR="${EROOT:-${ROOT}}"var/lib/canna/dic/dics.d
readonly CANNADIC_CANNA_DIR CANNADIC_DICS_DIR
# @FUNCTION: cannadic_pkg_setup
# @DESCRIPTION:
# Sets up cannadic dir
# Sets up ${CANNADIC_CANNA_DIR}
cannadic_pkg_setup() {
keepdir $cannadir
fowners bin:bin $cannadir
fperms 0775 $cannadir
keepdir "${CANNADIC_CANNA_DIR}"
fowners bin:bin "${CANNADIC_CANNA_DIR}"
fperms 0775 "${CANNADIC_CANNA_DIR}"
}
# @FUNCTION: cannadic-install
# @DESCRIPTION:
# Installs dictionaries to cannadir
# Installs dictionaries to ${CANNADIC_CANNA_DIR}
cannadic-install() {
insinto $cannadir
insopts -m0664 -o bin -g bin
doins "$@"
insinto "${CANNADIC_CANNA_DIR}"
insopts -m 0664 -o bin -g bin
doins "${@}"
}
# @FUNCTION: dicsdir-install
# @DESCRIPTION:
# Installs dics.dir from ${DICSDIRFILE}
dicsdir-install() {
insinto ${dicsdir}
doins ${DICSDIRFILE}
insinto "${CANNADIC_DICS_DIR}"
doins "${DICSDIRFILE}"
}
# @FUNCTION: cannadic_src_install
@ -65,14 +57,16 @@ dicsdir-install() {
# Installs all dictionaries under ${WORKDIR}
# plus dics.dir and docs
cannadic_src_install() {
for f in *.c[btl]d *.t ; do
cannadic-install $f
done 2>/dev/null
local f
for f in *.c[btl]d *.t; do
if [[ -s "${f}" ]]; then
cannadic-install "${f}"
fi
done 2> /dev/null
dicsdir-install || die
dodoc ${DOCS}
einstalldocs
}
# @FUNCTION: update-cannadic-dir
@ -84,24 +78,24 @@ cannadic_src_install() {
# Licensed under the GNU General Public License, version 2. See the file
# /usr/portage/license/GPL-2 or <http://www.gnu.org/copyleft/gpl.txt>.
update-cannadic-dir() {
einfo
einfo "Updating dics.dir for Canna ..."
einfo
# write new dics.dir file in case we are interrupted
cat >${cannadir}/dics.dir.update-new<<-EOF
cat <<-EOF > "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
# dics.dir -- automatically generated file by Portage.
# DO NOT EDIT BY HAND.
EOF
for file in ${dicsdir}/*.dics.dir ; do
echo "# $file" >> ${cannadir}/dics.dir.update-new
cat $file >> ${cannadir}/dics.dir.update-new
einfo "Added $file."
local f
for f in "${CANNADIC_DICS_DIR}"/*.dics.dir; do
echo "# ${f}" >> "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
cat "${f}" >> "${CANNADIC_CANNA_DIR}"/dics.dir.update-new
einfo "Added ${f}."
done
mv ${cannadir}/dics.dir.update-new ${cannadir}/dics.dir
mv "${CANNADIC_CANNA_DIR}"/dics.dir.update-new "${CANNADIC_CANNA_DIR}"/dics.dir
einfo
einfo "Done."
@ -113,15 +107,14 @@ update-cannadic-dir() {
# Updates dics.dir and print out notice after install
cannadic_pkg_postinst() {
update-cannadic-dir
einfo
einfo "Please restart cannaserver to fit the changes."
einfo "You need to modify your config file (~/.canna) to enable dictionaries."
if [ -n "${CANNADICS}" ] ; then
einfo "e.g) add $(for d in ${CANNADICS}; do
echo -n "\"$d\" "
done)to section use-dictionary()."
einfo "For details, see documents under /usr/share/doc/${PF}"
if [[ -n "${CANNADICS}" ]]; then
einfo "e.g) add $(for d in ${CANNADICS}; do echo -n "\"${d}\" "; done)to section use-dictionary()."
einfo "For details, see documents under /usr/share/doc/${PF}."
fi
einfo "If you do not have ~/.canna, you can find sample files in /usr/share/canna."
@ -135,14 +128,13 @@ cannadic_pkg_postinst() {
# Updates dics.dir and print out notice after uninstall
cannadic_pkg_postrm() {
update-cannadic-dir
einfo
einfo "Please restart cannaserver to fit changes."
einfo "and modify your config file (~/.canna) to disable dictionary."
if [ -n "${CANNADICS}" ] ; then
einfo "e.g) delete $(for d in ${CANNADICS}; do
echo -n "\"$d\" "
done)from section use-dictionary()."
if [[ -n "${CANNADICS}" ]]; then
einfo "e.g) delete $(for d in ${CANNADICS}; do echo -n "\"${d}\" "; done)from section use-dictionary()."
fi
einfo

View File

@ -29,12 +29,13 @@ ECARGO_VENDOR="${ECARGO_HOME}/gentoo"
# @DESCRIPTION:
# Generates the URIs to put in SRC_URI to help fetch dependencies.
cargo_crate_uris() {
for crate in $*; do
local crate
for crate in "$@"; do
local name version url
name="${crate%-*}"
version="${crate##*-}"
url="https://crates.io/api/v1/crates/${name}/${version}/download -> ${crate}.crate"
echo $url
echo "${url}"
done
}
@ -93,7 +94,7 @@ cargo_src_unpack() {
cargo_gen_config() {
debug-print-function ${FUNCNAME} "$@"
cat <<- EOF > ${ECARGO_HOME}/config
cat <<- EOF > "${ECARGO_HOME}/config"
[source.gentoo]
directory = "${ECARGO_VENDOR}"

View File

@ -281,7 +281,7 @@ _cdrom_glob_match() {
shopt -s extglob nocaseglob nullglob || die
# The first person to make this work without an eval wins a
# cookie. It breaks without it when spaces are present.
eval "ARRAY=( ${p} )"
eval "ARRAY=( ${p%\?()} )"
echo ${ARRAY[0]}
)
}

View File

@ -32,7 +32,8 @@ chromium_suid_sandbox_check_kernel_config() {
# (bug #552576, bug #556286).
ERROR_ADVISE_SYSCALLS="CONFIG_ADVISE_SYSCALLS is required for the renderer (bug #552576)"
ERROR_COMPAT_VDSO="CONFIG_COMPAT_VDSO causes segfaults (bug #556286)"
CONFIG_CHECK="~PID_NS ~NET_NS ~SECCOMP_FILTER ~USER_NS ~ADVISE_SYSCALLS ~!COMPAT_VDSO"
ERROR_GRKERNSEC="CONFIG_GRKERNSEC breaks sandbox (bug #613668)"
CONFIG_CHECK="~PID_NS ~NET_NS ~SECCOMP_FILTER ~USER_NS ~ADVISE_SYSCALLS ~!COMPAT_VDSO ~!GRKERNSEC"
check_extra_config
fi
}

View File

@ -87,23 +87,6 @@ _CMAKE_UTILS_ECLASS=1
# but not used. Might give false-positives.
# "no" to disable (default) or anything else to enable.
# @ECLASS-VARIABLE: PREFIX
# @DESCRIPTION:
# Eclass respects PREFIX variable, though it's not recommended way to set
# install/lib/bin prefixes.
# Use -DCMAKE_INSTALL_PREFIX=... CMake variable instead.
: ${PREFIX:=/usr}
# @ECLASS-VARIABLE: WANT_CMAKE
# @DESCRIPTION:
# Specify if cmake-utils eclass should depend on cmake optionally or not.
# This is useful when only part of application is using cmake build system.
# Valid values are: always [default], optional (where the value is the useflag
# used for optionality)
#
# This is banned in EAPI 6 and later.
: ${WANT_CMAKE:=always}
# @ECLASS-VARIABLE: CMAKE_EXTRA_CACHE_FILE
# @DESCRIPTION:
# Specifies an extra cache file to pass to cmake. This is the analog of EXTRA_ECONF
@ -111,32 +94,25 @@ _CMAKE_UTILS_ECLASS=1
# Should be set by user in a per-package basis in /etc/portage/package.env.
case ${EAPI} in
2|4|5) : ${CMAKE_WARN_UNUSED_CLI:=no} ;;
5) : ${CMAKE_WARN_UNUSED_CLI:=no} ;;
6) : ${CMAKE_WARN_UNUSED_CLI:=yes} ;;
*) die "EAPI=${EAPI:-0} is not supported" ;;
esac
inherit toolchain-funcs multilib flag-o-matic eutils multiprocessing versionator
inherit toolchain-funcs multilib ninja-utils flag-o-matic eutils \
multiprocessing versionator
EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install
CMAKEDEPEND=""
case ${WANT_CMAKE} in
always)
;;
*)
[[ ${EAPI} == [2345] ]] || die "WANT_CMAKE is banned in EAPI 6 and later"
IUSE+=" ${WANT_CMAKE}"
CMAKEDEPEND+="${WANT_CMAKE}? ( "
;;
esac
[[ ${WANT_CMAKE} ]] && eqawarn "\${WANT_CMAKE} has been removed and is a no-op now"
[[ ${PREFIX} ]] && die "\${PREFIX} has been removed and is a no-op now"
case ${CMAKE_MAKEFILE_GENERATOR} in
emake)
CMAKEDEPEND+=" sys-devel/make"
DEPEND="sys-devel/make"
;;
ninja)
CMAKEDEPEND+=" dev-util/ninja"
DEPEND="dev-util/ninja"
;;
*)
eerror "Unknown value for \${CMAKE_MAKEFILE_GENERATOR}"
@ -145,14 +121,9 @@ case ${CMAKE_MAKEFILE_GENERATOR} in
esac
if [[ ${PN} != cmake ]]; then
CMAKEDEPEND+=" >=dev-util/cmake-${CMAKE_MIN_VERSION}"
DEPEND+=" >=dev-util/cmake-${CMAKE_MIN_VERSION}"
fi
[[ ${WANT_CMAKE} = always ]] || CMAKEDEPEND+=" )"
DEPEND="${CMAKEDEPEND}"
unset CMAKEDEPEND
# Internal functions used by cmake-utils_use_*
_cmake_use_me_now() {
debug-print-function ${FUNCNAME} "$@"
@ -160,7 +131,7 @@ _cmake_use_me_now() {
local arg=$2
[[ ! -z $3 ]] && arg=$3
[[ ${EAPI} == [2345] ]] || die "${FUNCNAME[1]} is banned in EAPI 6 and later: use -D$1<related_CMake_variable>=\"\$(usex $2)\" instead"
[[ ${EAPI} == 5 ]] || die "${FUNCNAME[1]} is banned in EAPI 6 and later: use -D$1<related_CMake_variable>=\"\$(usex $2)\" instead"
local uper capitalised x
[[ -z $2 ]] && die "cmake-utils_use-$1 <USE flag> [<flag name>]"
@ -182,7 +153,7 @@ _cmake_use_me_now_inverted() {
local arg=$2
[[ ! -z $3 ]] && arg=$3
if [[ ${EAPI} != [2345] && "${FUNCNAME[1]}" != cmake-utils_use_find_package ]] ; then
if [[ ${EAPI} != 5 && "${FUNCNAME[1]}" != cmake-utils_use_find_package ]] ; then
die "${FUNCNAME[1]} is banned in EAPI 6 and later: use -D$1<related_CMake_variable>=\"\$(usex $2)\" instead"
fi
@ -282,7 +253,7 @@ cmake_comment_add_subdirectory() {
# Comment out an add_subdirectory call in CMakeLists.txt in the current directory
# Banned in EAPI 6 and later - use cmake_comment_add_subdirectory instead.
comment_add_subdirectory() {
[[ ${EAPI} == [2345] ]] || die "comment_add_subdirectory is banned in EAPI 6 and later - use cmake_comment_add_subdirectory instead"
[[ ${EAPI} == 5 ]] || die "comment_add_subdirectory is banned in EAPI 6 and later - use cmake_comment_add_subdirectory instead"
cmake_comment_add_subdirectory "$@"
}
@ -314,7 +285,7 @@ cmake-utils_use_enable() { _cmake_use_me_now ENABLE_ "$@" ; }
# if foo is enabled and -DCMAKE_DISABLE_FIND_PACKAGE_LibFoo=ON if it is disabled.
# This can be used to make find_package optional.
cmake-utils_use_find_package() {
if [[ ${EAPI} != [2345] && "$#" != 2 ]] ; then
if [[ ${EAPI} != 5 && "$#" != 2 ]] ; then
die "Usage: cmake-utils_use_find_package <USE flag> <package name>"
fi
@ -450,12 +421,15 @@ _cmake_cleanup_cmake() {
_cmake_modify-cmakelists
}
enable_cmake-utils_src_prepare() {
# @FUNCTION: cmake-utils_src_prepare
# @DESCRIPTION:
# Apply ebuild and user patches.
cmake-utils_src_prepare() {
debug-print-function ${FUNCNAME} "$@"
pushd "${S}" > /dev/null || die
if [[ ${EAPI} != [2345] ]]; then
if [[ ${EAPI} != 5 ]]; then
default_src_prepare
_cmake_cleanup_cmake
else
@ -484,10 +458,14 @@ enable_cmake-utils_src_prepare() {
# }
# @CODE
enable_cmake-utils_src_configure() {
# @FUNCTION: cmake-utils_src_configure
# @DESCRIPTION:
# General function for configuring with cmake. Default behaviour is to start an
# out-of-source build.
cmake-utils_src_configure() {
debug-print-function ${FUNCNAME} "$@"
[[ ${EAPI} == [2345] ]] && _cmake_cleanup_cmake
[[ ${EAPI} == 5 ]] && _cmake_cleanup_cmake
_cmake_check_build_dir
@ -575,8 +553,6 @@ enable_cmake-utils_src_configure() {
fi
fi
[[ ${EAPI} == 2 ]] && ! use prefix && local EPREFIX=
if [[ ${EPREFIX} ]]; then
cat >> "${build_rules}" <<- _EOF_ || die
# in Prefix we need rpath and must ensure cmake gets our default linker path
@ -588,13 +564,13 @@ enable_cmake-utils_src_configure() {
ELSE ()
SET(CMAKE_PREFIX_PATH "${EPREFIX}${PREFIX}" CACHE STRING "" FORCE)
SET(CMAKE_PREFIX_PATH "${EPREFIX}/usr" CACHE STRING "" FORCE)
SET(CMAKE_SKIP_BUILD_RPATH OFF CACHE BOOL "" FORCE)
SET(CMAKE_SKIP_RPATH OFF CACHE BOOL "" FORCE)
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE CACHE BOOL "")
SET(CMAKE_INSTALL_RPATH "${EPREFIX}${PREFIX}/lib;${EPREFIX}/usr/${CHOST}/lib/gcc;${EPREFIX}/usr/${CHOST}/lib;${EPREFIX}/usr/$(get_libdir);${EPREFIX}/$(get_libdir)" CACHE STRING "" FORCE)
SET(CMAKE_INSTALL_RPATH "${EPREFIX}/usr/lib;${EPREFIX}/usr/${CHOST}/lib/gcc;${EPREFIX}/usr/${CHOST}/lib;${EPREFIX}/usr/$(get_libdir);${EPREFIX}/$(get_libdir)" CACHE STRING "" FORCE)
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE CACHE BOOL "" FORCE)
SET(CMAKE_INSTALL_NAME_DIR "${EPREFIX}${PREFIX}/lib" CACHE STRING "" FORCE)
SET(CMAKE_INSTALL_NAME_DIR "${EPREFIX}/usr/lib" CACHE STRING "" FORCE)
ENDIF (NOT APPLE)
_EOF_
@ -611,7 +587,7 @@ enable_cmake-utils_src_configure() {
[[ "${NOCOLOR}" = true || "${NOCOLOR}" = yes ]] && echo 'SET (CMAKE_COLOR_MAKEFILE OFF CACHE BOOL "pretty colors during make" FORCE)' >> "${common_config}"
# Wipe the default optimization flags out of CMake
if [[ ${CMAKE_BUILD_TYPE} != Gentoo ]] && ! has "${EAPI}" 2 3 4 5; then
if [[ ${CMAKE_BUILD_TYPE} != Gentoo && ${EAPI} != 5 ]]; then
cat >> ${common_config} <<- _EOF_ || die
SET (CMAKE_ASM_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
SET (CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
@ -630,7 +606,7 @@ enable_cmake-utils_src_configure() {
local mycmakeargstype=$(declare -p mycmakeargs 2>&-)
if [[ "${mycmakeargstype}" != "declare -a mycmakeargs="* ]]; then
if [[ -n "${mycmakeargstype}" ]] ; then
if [[ ${EAPI} == [2345] ]]; then
if [[ ${EAPI} == 5 ]]; then
eqawarn "Declaring mycmakeargs as a variable is deprecated. Please use an array instead."
else
die "Declaring mycmakeargs as a variable is banned in EAPI=${EAPI}. Please use an array instead."
@ -654,10 +630,10 @@ enable_cmake-utils_src_configure() {
${warn_unused_cli}
-C "${common_config}"
-G "$(_cmake_generator_to_use)"
-DCMAKE_INSTALL_PREFIX="${EPREFIX}${PREFIX}"
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
"${mycmakeargs_local[@]}"
-DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}"
$([[ ${EAPI} == [2345] ]] && echo -DCMAKE_INSTALL_DO_STRIP=OFF)
$([[ ${EAPI} == 5 ]] && echo -DCMAKE_INSTALL_DO_STRIP=OFF)
-DCMAKE_USER_MAKE_RULES_OVERRIDE="${build_rules}"
-DCMAKE_TOOLCHAIN_FILE="${toolchain_file}"
"${MYCMAKEARGS}"
@ -674,50 +650,16 @@ enable_cmake-utils_src_configure() {
popd > /dev/null || die
}
enable_cmake-utils_src_compile() {
# @FUNCTION: cmake-utils_src_compile
# @DESCRIPTION:
# General function for compiling with cmake.
# Automatically detects the build type. All arguments are passed to emake.
cmake-utils_src_compile() {
debug-print-function ${FUNCNAME} "$@"
cmake-utils_src_make "$@"
}
_ninjaopts_from_makeopts() {
if [[ ${NINJAOPTS+set} == set ]]; then
return 0
fi
local ninjaopts=()
set -- ${MAKEOPTS}
while (( $# )); do
case $1 in
-j|-l)
if [[ $# -eq 1 || $2 == -* ]]; then
if [[ $1 == -j ]]; then
# absurdly high job limit
ninjaopts+=( $1 9999 )
else # -l
# remove load limit (like make does for -l)
ninjaopts+=( $1 0 )
fi
shift 1
else
ninjaopts+=( $1 $2 )
shift 2
fi
;;
-j*|-l*)
ninjaopts+=( $1 )
shift 1
;;
-k)
# -k 0 = any number of tasks can fail
ninjaopts+=( $1 0 )
shift 1
;;
*) shift ;;
esac
done
export NINJAOPTS="${ninjaopts[*]}"
}
# @FUNCTION: _cmake_ninja_src_make
# @INTERNAL
# @DESCRIPTION:
@ -727,16 +669,7 @@ _cmake_ninja_src_make() {
[[ -e build.ninja ]] || die "build.ninja not found. Error during configure stage."
_ninjaopts_from_makeopts
if [[ "${CMAKE_VERBOSE}" != "OFF" ]]; then
set -- ninja ${NINJAOPTS} -v "$@"
else
set -- ninja ${NINJAOPTS} "$@"
fi
echo "$@"
"$@" || die
eninja "$@"
}
# @FUNCTION: _cmake_emake_src_make
@ -771,7 +704,10 @@ cmake-utils_src_make() {
popd > /dev/null || die
}
enable_cmake-utils_src_test() {
# @FUNCTION: cmake-utils_src_test
# @DESCRIPTION:
# Function for testing the package. Automatically detects the build type.
cmake-utils_src_test() {
debug-print-function ${FUNCNAME} "$@"
_cmake_check_build_dir
@ -804,7 +740,10 @@ enable_cmake-utils_src_test() {
fi
}
enable_cmake-utils_src_install() {
# @FUNCTION: cmake-utils_src_install
# @DESCRIPTION:
# Function for installing the package. Automatically detects the build type.
cmake-utils_src_install() {
debug-print-function ${FUNCNAME} "$@"
_cmake_check_build_dir
@ -817,51 +756,4 @@ enable_cmake-utils_src_install() {
popd > /dev/null || die
}
# @FUNCTION: cmake-utils_src_prepare
# @DESCRIPTION:
# Apply ebuild and user patches.
cmake-utils_src_prepare() {
_cmake_execute_optionally "src_prepare" "$@"
}
# @FUNCTION: cmake-utils_src_configure
# @DESCRIPTION:
# General function for configuring with cmake. Default behaviour is to start an
# out-of-source build.
cmake-utils_src_configure() {
_cmake_execute_optionally "src_configure" "$@"
}
# @FUNCTION: cmake-utils_src_compile
# @DESCRIPTION:
# General function for compiling with cmake.
# Automatically detects the build type. All arguments are passed to emake.
cmake-utils_src_compile() {
_cmake_execute_optionally "src_compile" "$@"
}
# @FUNCTION: cmake-utils_src_test
# @DESCRIPTION:
# Function for testing the package. Automatically detects the build type.
cmake-utils_src_test() {
_cmake_execute_optionally "src_test" "$@"
}
# @FUNCTION: cmake-utils_src_install
# @DESCRIPTION:
# Function for installing the package. Automatically detects the build type.
cmake-utils_src_install() {
_cmake_execute_optionally "src_install" "$@"
}
# Optionally executes phases based on WANT_CMAKE variable/USE flag.
_cmake_execute_optionally() {
local phase="$1" ; shift
if [[ ${WANT_CMAKE} = always ]]; then
enable_cmake-utils_${phase} "$@"
else
use ${WANT_CMAKE} && enable_cmake-utils_${phase} "$@"
fi
}
fi

View File

@ -1,4 +1,4 @@
# Copyright 1999-2010 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: common-lisp-3.eclass

View File

@ -1,14 +1,17 @@
# Copyright 1999-2012 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# Author Matthew Kennedy <mkennedy@gentoo.org>
#
# Sundry code common to many Common Lisp related ebuilds.
# Some handy constants
# @ECLASS: common-lisp-common.eclass
# @MAINTAINER:
# Common Lisp project <common-lisp@gentoo.org>
# @AUTHOR: Matthew Kennedy <mkennedy@gentoo.org>
# @BLURB: eclass for installing Common Lisp packages.
# @DESCRIPTION:
# Sundry code common to many Common Lisp related ebuilds.
inherit eutils multilib
# Some handy constants
CLFASLROOT=/usr/$(get_libdir)/common-lisp/
CLSOURCEROOT=/usr/share/common-lisp/source/
CLSYSTEMROOT=/usr/share/common-lisp/systems/

View File

@ -1,8 +1,12 @@
# Copyright 1999-2011 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# Author Matthew Kennedy <mkennedy@gentoo.org>
#
# @ECLASS: common-lisp.eclass
# @MAINTAINER:
# Common Lisp project <common-lisp@gentoo.org>
# @AUTHOR: Matthew Kennedy <mkennedy@gentoo.org>
# @BLURB: eclass for installing Common Lisp packages.
# @DESCRIPTION:
# This eclass supports the common-lisp-controller installation of many
# Common Lisp libraries

View File

@ -1,6 +1,15 @@
# Copyright 1999-2012 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @DEAD
# Michał Górny <mgorny@gentoo.org> (30 Jun 2017)
# This eclass is no longer useful. Most of it has been superseded by
# new EAPI features such as REQUIRED_USE and USE dependencies.
# The remaining functions are very specialized (probably to PHP)
# and were not used for a long time. The last consumer is now redundant
# to a new stable version and will be removed soon.
# The eclass will be removed in 30 days.
# @ECLASS: confutils.eclass
# @MAINTAINER:
# No maintainer <maintainer-needed@gentoo.org>

View File

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: distutils-r1.eclass
@ -191,6 +191,12 @@ fi
# (allowing any implementation). If multiple values are specified,
# implementations matching any of the patterns will be accepted.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# If the restriction needs to apply conditionally to a USE flag,
# the variable should be set conditionally as well (e.g. in an early
# phase function or other convenient location).
@ -666,23 +672,20 @@ distutils-r1_run_phase() {
_distutils-r1_run_common_phase() {
local DISTUTILS_ORIG_BUILD_DIR=${BUILD_DIR}
if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
local best_impl patterns=( "${DISTUTILS_ALL_SUBPHASE_IMPLS[@]-*}" )
_distutils_try_impl() {
local pattern
for pattern in "${patterns[@]}"; do
if [[ ${EPYTHON} == ${pattern} ]]; then
best_impl=${MULTIBUILD_VARIANT}
fi
done
}
python_foreach_impl _distutils_try_impl
unset -f _distutils_try_impl
if [[ ${DISTUTILS_SINGLE_IMPL} ]]; then
# reuse the dedicated code branch
_distutils-r1_run_foreach_impl "${@}"
else
local -x EPYTHON PYTHON
local -x PATH=${PATH} PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
python_setup "${DISTUTILS_ALL_SUBPHASE_IMPLS[@]}"
local PYTHON_COMPAT=( "${best_impl}" )
local MULTIBUILD_VARIANTS=( "${EPYTHON/./_}" )
# store for restoring after distutils-r1_run_phase.
local _DISTUTILS_INITIAL_CWD=${PWD}
multibuild_foreach_variant \
distutils-r1_run_phase "${@}"
fi
_distutils-r1_run_foreach_impl "${@}"
}
# @FUNCTION: _distutils-r1_run_foreach_impl
@ -693,15 +696,6 @@ _distutils-r1_run_common_phase() {
_distutils-r1_run_foreach_impl() {
debug-print-function ${FUNCNAME} "${@}"
if [[ ${DISTUTILS_NO_PARALLEL_BUILD} ]]; then
[[ ${EAPI} == [45] ]] || die "DISTUTILS_NO_PARALLEL_BUILD is banned in EAPI ${EAPI}"
eqawarn "DISTUTILS_NO_PARALLEL_BUILD is no longer meaningful. Now all builds"
eqawarn "are non-parallel. Please remove it from the ebuild."
unset DISTUTILS_NO_PARALLEL_BUILD # avoid repeated warnings
fi
# store for restoring after distutils-r1_run_phase.
local _DISTUTILS_INITIAL_CWD=${PWD}
set -- distutils-r1_run_phase "${@}"
@ -770,10 +764,14 @@ distutils-r1_src_compile() {
fi
}
_clean_egg_info() {
# Work around for setuptools test behavior (bug 534058).
# https://bitbucket.org/pypa/setuptools/issue/292
rm -rf "${BUILD_DIR}"/lib/*.egg-info
# @FUNCTION: _distutils-r1_clean_egg_info
# @INTERNAL
# @DESCRIPTION:
# Clean up potential stray egg-info files left by setuptools test phase.
# Those files ended up being unversioned, and caused issues:
# https://bugs.gentoo.org/534058
_distutils-r1_clean_egg_info() {
rm -rf "${BUILD_DIR}"/lib/*.egg-info || die
}
distutils-r1_src_test() {
@ -781,7 +779,7 @@ distutils-r1_src_test() {
if declare -f python_test >/dev/null; then
_distutils-r1_run_foreach_impl python_test
_distutils-r1_run_foreach_impl _clean_egg_info
_distutils-r1_run_foreach_impl _distutils-r1_clean_egg_info
fi
if declare -f python_test_all >/dev/null; then
@ -789,6 +787,33 @@ distutils-r1_src_test() {
fi
}
# @FUNCTION: _distutils-r1_check_namespace_pth
# @INTERNAL
# @DESCRIPTION:
# Check if any *-nspkg.pth files were installed (by setuptools)
# and warn about the policy non-conformance if they were.
_distutils-r1_check_namespace_pth() {
local f pth=()
while IFS= read -r -d '' f; do
pth+=( "${f}" )
done < <(find "${ED}" -name '*-nspkg.pth' -print0)
if [[ ${pth[@]} ]]; then
ewarn "The following *-nspkg.pth files were found installed:"
ewarn
for f in "${pth[@]}"; do
ewarn " ${f#${ED%/}}"
done
ewarn
ewarn "The presence of those files may break namespaces in Python 3.5+. Please"
ewarn "read our documentation on reliable handling of namespaces and update"
ewarn "the ebuild accordingly:"
ewarn
ewarn " https://wiki.gentoo.org/wiki/Project:Python/Namespace_packages"
fi
}
distutils-r1_src_install() {
debug-print-function ${FUNCNAME} "${@}"
@ -812,6 +837,8 @@ distutils-r1_src_install() {
"${cmd}" "QA: python_install_all() didn't call distutils-r1_python_install_all"
fi
_distutils-r1_check_namespace_pth
}
# -- distutils.eclass functions --

View File

@ -1,459 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @DEAD
# Removal on 2017-03-24.
# Author: George Shapovalov <george@gentoo.org>
# No maintainer <maintainer-needed@gentoo.org>
#
# This eclass provides the framework for ada lib installation with the split and
# SLOTted gnat compilers (gnat-xxx, gnatbuild.eclass). Each lib gets built once
# for every installed gnat compiler. Activation of a particular bunary module is
# performed by eselect-gnat, when the active compiler gets switched
#
# The ebuilds should define the lib_compile and lib_install functions that are
# called from the (exported) gnat_src_compile function of eclass. These
# functions should operate similarly to the starndard src_compile and
# src_install. The only difference, that they should use $SL variable instead of
# $S (this is where the working copy of source is held) and $DL instead of $D as
# its installation point.
inherit flag-o-matic eutils multilib
# The environment is set locally in src_compile and src_install functions
# by the common code sourced here and in gnat-eselect module.
# This is the standard location for this code (belongs to eselect-gnat,
# since eselect should work even in the absense of portage tree and we can
# guarantee to some extent presence of gnat-eselect when anything gnat-related
# gets processed. See #192505)
#
# Note!
# It may not be safe to source this at top level. Only source inside local
# functions!
GnatCommon="/usr/share/gnat/lib/gnat-common.bash"
# !!NOTE!!
# src_install should not be exported!
# Instead gnat_src_install should be explicitly called from within src_install.
EXPORT_FUNCTIONS pkg_setup pkg_postinst src_compile
DESCRIPTION="Common procedures for building Ada libs using split gnat compilers"
# make sure we have an appropriately recent eselect-gnat installed, as we are
# using some common code here.
DEPEND=">=app-eselect/eselect-gnat-1.3"
# ----------------------------------
# Globals
# Lib install locations
#
# Gnat profile dependent files go under ${LibTop}/${Gnat_Profile}/${PN}
# and common files go under SpecsDir, DataDir..
# In order not to pollute PATH and LDPATH attempt should be mabe to install
# binaries and what makes sence for individual packages under
# ${AdalibLibTop}/${Gnat_Profile}/bin
PREFIX=/usr
AdalibSpecsDir=${PREFIX}/include/ada
AdalibDataDir=${PREFIX}/share/ada
AdalibLibTop=${PREFIX}/$(get_libdir)/ada
# build-time locations
# SL is a "localized" S, - location where sources are copied for
#bi profile-specific build
SL=${WORKDIR}/LocalSource
# DL* are "localized destinations" where ARCH/SLOT dependent stuff should be
# installed in lib_install. There are three:
#
DL=${WORKDIR}/LocalDest
# a generic location for the lib (.a, .so) files
#
DLbin=${WORKDIR}/LocalBinDest
# binaries that should be in the PATH, will be moved to common Ada bin dir
#
DLgpr=${WORKDIR}/LocalGPRDest
# gpr's should go here.
# file containing environment formed by gnat-eselect (build-time)
BuildEnv=${WORKDIR}/BuildEnv
# environment for installed lib. Profile-specific stuff should use %DL% as a top
# of their location. This (%DL%) will be substituted with a proper location upon
# install
LibEnv=${WORKDIR}/LibEnv
# env file prepared by gnat.eselect only lists new settings for env vars
# we need to change that to prepend, rather than replace action..
# Takes one argument - the file to expand. This file should contain only
# var=value like lines.. (commenst are Ok)
expand_BuildEnv() {
local line
for line in $(cat $1); do
EnvVar=$(echo ${line}|cut -d"=" -f1)
if [[ "${EnvVar}" == "PATH" ]] ; then
echo "export ${line}:\${${EnvVar}}" >> $1.tmp
else
echo "export ${line}" >> $1.tmp
fi
done
mv $1.tmp $1
}
# ------------------------------------
# Dependency processing related stuff
# A simple wrapper to get the relevant part of the DEPEND
# params:
# $1 - should contain dependency specification analogous to DEPEND,
# if omitted, DEPEND is processed
get_ada_dep() {
[[ -z "$1" ]] && DEP="${DEPEND}" || DEP="$1"
local TempStr
for fn in $DEP; do # here $DEP should *not* be in ""
[[ $fn =~ "virtual/ada" ]] && TempStr=${fn/*virtual\//}
# above match should be to full virtual/ada, as simply "ada" is a common
# part of ${PN}, even for some packages under dev-ada
done
# debug-print-function $FUNCNAME "TempStr=${TempStr:0:8}"
[[ -n ${TempStr} ]] && echo ${TempStr:0:8}
}
# This function is used to check whether the requested gnat profile matches the
# requested Ada standard
# !!ATTN!!
# This must match dependencies as specified in virtual/ada !!!
#
# params:
# $1 - the requested gnat profile in usual form (e.g. x86_64-pc-linux-gnu-gnat-gcc-4.1)
# $2 - Ada standard specification, as would be specified in DEPEND.
# Valid values: ada-1995, ada-2005, ada
#
# This used to treat ada-1995 and ada alike, but some packages (still
# requested by users) no longer compile with new compilers (not the
# standard issue, but rather compiler becoming stricter most of the time).
# Plus there are some "intermediary versions", not fully 2005 compliant
# but already causing problems. Therefore, now we do exact matching.
belongs_to_standard() {
# debug-print-function $FUNCNAME $*
. ${GnatCommon} || die "failed to source gnat-common lib"
local GnatSlot=$(get_gnat_SLOT $1)
local ReducedSlot=${GnatSlot//\./}
#
if [[ $2 == 'ada' ]] ; then
# debug-print-function "ada or ada-1995 match"
return 0 # no restrictions imposed
elif [[ "$2" == 'ada-1995' ]] ; then
if [[ $(get_gnat_Pkg $1) == "gcc" ]]; then
# debug-print-function "got gcc profile, GnatSlot=${ReducedSlot}"
[[ ${ReducedSlot} -le "42" ]] && return 0 || return 1
elif [[ $(get_gnat_Pkg $1) == "gpl" ]]; then
# debug-print-function "got gpl profile, GnatSlot=${ReducedSlot}"
[[ ${ReducedSlot} -lt "41" ]] && return 0 || return 1
else
return 1 # unknown compiler encountered
fi
elif [[ "$2" == 'ada-2005' ]] ; then
if [[ $(get_gnat_Pkg $1) == "gcc" ]]; then
# debug-print-function "got gcc profile, GnatSlot=${ReducedSlot}"
[[ ${ReducedSlot} -ge "43" ]] && return 0 || return 1
elif [[ $(get_gnat_Pkg $1) == "gpl" ]]; then
# debug-print-function "got gpl profile, GnatSlot=${ReducedSlot}"
[[ ${ReducedSlot} -ge "41" ]] && return 0 || return 1
else
return 1 # unknown compiler encountered
fi
else
return 1 # unknown standard requested, check spelling!
fi
}
# ------------------------------------
# Helpers
#
# The purpose of this one is to remove all parts of the env entry specific to a
# given lib. Usefull when some lib wants to act differently upon detecting
# itself installed..
#
# params:
# $1 - name of env var to process
# $2 (opt) - name of the lib to filter out (defaults to ${PN})
filter_env_var() {
local entries=(${!1//:/ })
local libName=${2:-${PN}}
local env_str
for entry in ${entries[@]} ; do
# this simply checks if $libname is a substring of the $entry, should
# work fine with all the present libs
if [[ ${entry/${libName}/} == ${entry} ]] ; then
env_str="${env_str}:${entry}"
fi
done
echo ${env_str}
}
# A simpler helper, for the libs that need to extract active gnat location
# Returns a first entry for a specified env var. Relies on the (presently true)
# convention that first gnat's entries are listed and then of the other
# installed libs.
#
# params:
# $1 - name of env var to process
get_gnat_value() {
local entries=(${!1//:/ })
echo ${entries[0]}
}
# Returns a name of active gnat profile. Performs some validity checks. No input
# parameters, analyzes the system setup directly.
get_active_profile() {
# get common code and settings
. ${GnatCommon} || die "failed to source gnat-common lib"
local profiles=( $(get_env_list) )
if [[ ${profiles[@]} == "${MARKER}*" ]]; then
return
# returning empty string
fi
if (( 1 == ${#profiles[@]} )); then
local active=${profiles[0]#${MARKER}}
else
die "${ENVDIR} contains multiple gnat profiles, please cleanup!"
fi
if [[ -f ${SPECSDIR}/${active} ]]; then
echo ${active}
else
die "The profile active in ${ENVDIR} does not correspond to any installed gnat!"
fi
}
# ------------------------------------
# Functions
# Checks the gnat backend SLOT and filters flags correspondingly
# To be called from scr_compile for each profile, before actual compilation
# Parameters:
# $1 - gnat profile, e.g. x86_64-pc-linux-gnu-gnat-gcc-3.4
gnat_filter_flags() {
debug-print-function $FUNCNAME $*
# We only need to filter so severely if backends < 3.4 is detected, which
# means basically gnat-3.15
GnatProfile=$1
if [ -z ${GnatProfile} ]; then
# should not get here!
die "please specify a valid gnat profile for flag stripping!"
fi
local GnatSLOT="${GnatProfile//*-/}"
if [[ ${GnatSLOT} < 3.4 ]] ; then
filter-mfpmath sse 387
filter-flags -mmmx -msse -mfpmath -frename-registers \
-fprefetch-loop-arrays -falign-functions=4 -falign-jumps=4 \
-falign-loops=4 -msse2 -frerun-loop-opt -maltivec -mabi=altivec \
-fsigned-char -fno-strict-aliasing -pipe
export ADACFLAGS=${ADACFLAGS:-${CFLAGS}}
export ADACFLAGS=${ADACFLAGS//-Os/-O2}
export ADACFLAGS=${ADACFLAGS//pentium-mmx/i586}
export ADACFLAGS=${ADACFLAGS//pentium[234]/i686}
export ADACFLAGS=${ADACFLAGS//k6-[23]/k6}
export ADACFLAGS=${ADACFLAGS//athlon-tbird/i686}
export ADACFLAGS=${ADACFLAGS//athlon-4/i686}
export ADACFLAGS=${ADACFLAGS//athlon-[xm]p/i686}
# gcc-2.8.1 has no amd64 support, so the following two are safe
export ADACFLAGS=${ADACFLAGS//athlon64/i686}
export ADACFLAGS=${ADACFLAGS//athlon/i686}
else
export ADACFLAGS=${ADACFLAGS:-${CFLAGS}}
fi
export ADAMAKEFLAGS=${ADAMAKEFLAGS:-"-cargs ${ADACFLAGS} -margs"}
export ADABINDFLAGS=${ADABINDFLAGS:-""}
}
gnat_pkg_setup() {
debug-print-function $FUNCNAME $*
# check whether all the primary compilers are installed
. ${GnatCommon} || die "failed to source gnat-common lib"
for fn in $(cat ${PRIMELIST}); do
if [[ ! -f ${SPECSDIR}/${fn} ]]; then
elog "The ${fn} Ada compiler profile is specified as primary, but is not installed."
elog "Please rectify the situation before emerging Ada library!"
elog "Please either install again all the missing compilers listed"
elog "as primary, or edit /etc/ada/primary_compilers and update the"
elog "list of primary compilers there."
einfo ""
ewarn "If you do the latter, please don't forget to rebuild all"
ewarn "affected libs!"
die "Primary compiler is missing"
fi
done
export ADAC=${ADAC:-gnatgcc}
export ADAMAKE=${ADAMAKE:-gnatmake}
export ADABIND=${ADABIND:-gnatbind}
}
gnat_pkg_postinst() {
einfo "Updating gnat configuration to pick up ${PN} library..."
eselect gnat update
elog "The environment has been set up to make gnat automatically find files"
elog "for the installed library. In order to immediately activate these"
elog "settings please run:"
elog
#elog "env-update"
elog "source /etc/profile"
einfo
einfo "Otherwise the settings will become active next time you login"
}
# standard lib_compile plug. Adapted from base.eclass
lib_compile() {
debug-print-function $FUNCNAME $*
[ -z "$1" ] && lib_compile all
cd ${SL}
while [ "$1" ]; do
case $1 in
configure)
debug-print-section configure
econf || die "died running econf, $FUNCNAME:configure"
;;
make)
debug-print-section make
emake || die "died running emake, $FUNCNAME:make"
;;
all)
debug-print-section all
lib_compile configure make
;;
esac
shift
done
}
# Cycles through installed gnat profiles and calls lib_compile and then
# lib_install in turn.
# Use this function to build/install profile-specific binaries. The code
# building/installing common stuff (docs, etc) can go before/after, as needed,
# so that it is called only once..
#
# lib_compile and lib_install are passed the active gnat profile name - may be used or
# discarded as needed..
gnat_src_compile() {
debug-print-function $FUNCNAME $*
# We source the eselect-gnat module and use its functions directly, instead of
# duplicating code or trying to violate sandbox in some way..
. ${GnatCommon} || die "failed to source gnat-common lib"
compilers=( $(find_primary_compilers ) )
if [[ -n ${compilers[@]} ]] ; then
local i
local AdaDep=$(get_ada_dep)
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
if $(belongs_to_standard ${compilers[${i}]} ${AdaDep}); then
einfo "compiling for gnat profile ${compilers[${i}]}"
# copy sources
mkdir "${DL}" "${DLbin}" "${DLgpr}"
cp -dpR "${S}" "${SL}"
# setup environment
# As eselect-gnat also manages the libs, this will ensure the right
# lib profiles are activated too (in case we depend on some Ada lib)
generate_envFile ${compilers[${i}]} ${BuildEnv} && \
expand_BuildEnv "${BuildEnv}" && \
. "${BuildEnv}" || die "failed to switch to ${compilers[${i}]}"
# many libs (notably xmlada and gtkada) do not like to see
# themselves installed. Need to strip them from ADA_*_PATH
# NOTE: this should not be done in pkg_setup, as we setup
# environment right above
export ADA_INCLUDE_PATH=$(filter_env_var ADA_INCLUDE_PATH)
export ADA_OBJECTS_PATH=$(filter_env_var ADA_OBJECTS_PATH)
# call compilation callback
cd "${SL}"
gnat_filter_flags ${compilers[${i}]}
lib_compile ${compilers[${i}]} || die "failed compiling for ${compilers[${i}]}"
# call install callback
cd "${SL}"
lib_install ${compilers[${i}]} || die "failed installing profile-specific part for ${compilers[${i}]}"
# move installed and cleanup
mv "${DL}" "${DL}-${compilers[${i}]}"
mv "${DLbin}" "${DLbin}-${compilers[${i}]}"
mv "${DLgpr}" "${DLgpr}-${compilers[${i}]}"
rm -rf "${SL}"
else
einfo "skipping gnat profile ${compilers[${i}]}"
fi
done
else
ewarn "Please note!"
elog "Treatment of installed Ada compilers has recently changed!"
elog "Libs are now being built only for \"primary\" compilers."
elog "Please list gnat profiles (as reported by \"eselect gnat list\")"
elog "that you want to regularly use (i.e., not just for testing)"
elog "in ${PRIMELIST}, one per line."
die "please make sure you have at least one gnat compiler installed and set as primary!"
fi
}
# This function simply moves gnat-profile-specific stuff into proper locations.
# Use src_install in ebuild to install the rest of the package
gnat_src_install() {
debug-print-function $FUNCNAME $*
# prep lib specs directory
. ${GnatCommon} || die "failed to source gnat-common lib"
dodir ${SPECSDIR}/${PN}
compilers=( $(find_primary_compilers) )
if [[ -n ${compilers[@]} ]] ; then
local i
local AdaDep=$(get_ada_dep)
for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do
if $(belongs_to_standard ${compilers[${i}]} ${AdaDep}); then
debug-print-section "installing for gnat profile ${compilers[${i}]}"
local DLlocation=${AdalibLibTop}/${compilers[${i}]}
dodir ${DLlocation}
cp -dpR "${DL}-${compilers[${i}]}" "${D}/${DLlocation}/${PN}"
cp -dpR "${DLbin}-${compilers[${i}]}" "${D}/${DLlocation}"/bin
cp -dpR "${DLgpr}-${compilers[${i}]}" "${D}/${DLlocation}"/gpr
# create profile-specific specs file
cp ${LibEnv} "${D}/${SPECSDIR}/${PN}/${compilers[${i}]}"
sed -i -e "s:%DL%:${DLlocation}/${PN}:g" "${D}/${SPECSDIR}/${PN}/${compilers[${i}]}"
sed -i -e "s:%DLbin%:${DLlocation}/bin:g" "${D}/${SPECSDIR}/${PN}/${compilers[${i}]}"
sed -i -e "s:%DLgpr%:${DLlocation}/gpr:g" "${D}/${SPECSDIR}/${PN}/${compilers[${i}]}"
else
einfo "skipping gnat profile ${compilers[${i}]}"
fi
done
else
die "please make sure you have at least one gnat compiler installed!"
fi
}

View File

@ -22,7 +22,7 @@ if [[ -z ${_GOLANG_BASE} ]]; then
_GOLANG_BASE=1
DEPEND=">=dev-lang/go-1.7:="
DEPEND=">=dev-lang/go-1.8"
# Do not complain about CFLAGS etc since go projects do not use them.
QA_FLAGS_IGNORED='.*'

View File

@ -1,114 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gpe.eclass
# @MAINTAINER:
# gpe@gentoo.org
# @AUTHOR:
# Original Authors:
# Rene Wagner <rw@handhelds.org>
# Ned Ludd <solar@gentoo.org>
# Angelo Arrifano <miknix@gentoo.org>
# EAPI->EAPI2 patch: loki_val
# multiple suggestions: Betelgeuse
# Based on gnome2.eclass and gpe.bbclass (the latter from OpenEmbedded)
# @BLURB: Provides common functionality for the G Palmtop Environment.
inherit libtool toolchain-funcs
case "${EAPI:-0}" in
0|1)
EXPORT_FUNCTIONS src_unpack src_compile src_install
;;
*)
EXPORT_FUNCTIONS src_unpack src_prepare src_configure src_compile src_install
;;
esac
# @ECLASS-VARIABLE: ELTCONF
# @DESCRIPTION:
# Extra options passed to elibtoolize on gnome2 eclass.
ELTCONF=""
# @ECLASS-VARIABLE: GPE_DOCS
# @DESCRIPTION:
# Documentation files to be installed with dodoc.
GPE_DOCS=""
[[ -z "${GPE_MIRROR}" ]] && GPE_MIRROR="http://gpe.linuxtogo.org/download/source"
[[ -z "${GPE_TARBALL_SUFFIX}" ]] && GPE_TARBALL_SUFFIX="gz"
SRC_URI="${GPE_MIRROR}/${P}.tar.${GPE_TARBALL_SUFFIX}"
HOMEPAGE="http://gpe.linuxtogo.org"
IUSE="nls"
GPECONF="${GPECONF} --enable-debug=no --disable-debug"
RDEPEND=""
DEPEND="
>=dev-util/intltool-0.29
virtual/pkgconfig"
# @FUNCTION: gpe_src_unpack
# @DESCRIPTION:
# Unpacks and applies some required patches for GPE.
gpe_src_unpack() {
unpack ${A}
cd "${S}"
has "${EAPI:-0}" 0 1 && gpe_src_prepare "$@"
}
# Do not call, use gpe_src_unpack() instead.
gpe_src_prepare() {
# let portage handle stripping.
# sort is needed, see #272161 .
for file in $(find . -name 'Makefile*' | sort) ; do
sed -i -e s/'install -s'/'install'/g \
-e s/'install -Ds'/'install -D'/g \
-e 's/$(INSTALL) -s/$(INSTALL) /g' \
-e 's;strip ;#strip ;g' \
${file} \
||die "Sedding ${file} failed."
done
[[ -f configure ]] && elibtoolize
}
# @FUNCTION: gpe_src_configure
# @DESCRIPTION:
# Configures a GPE package in a cross-compile aware environment.
gpe_src_configure() {
tc-export CC
[[ -f configure ]] && econf "$@" ${GPECONF}
}
# @FUNCTION: gpe_src_compile
# @DESCRIPTION:
# (Cross-)Compiles a GPE package.
gpe_src_compile() {
tc-export CC
has "${EAPI:-0}" 0 1 && gpe_src_configure "$@"
emake PREFIX=/usr || die "emake failed"
}
# @FUNCTION: gpe_src_install
# @DESCRIPTION:
# Installs a GPE package in the correct way.
gpe_src_install() {
local use_nls=yes
use nls || use_nls=no
if [ -f configure ]; then
einstall "$@" || die "einstall failed"
else
emake STRIP=true DESTDIR=${D} PREFIX=/usr \
ENABLE_NLS=${use_nls} "$@" install || die "emake install failed"
fi
use nls || rm -rf ${D}/usr/share/locale
# manual document installation
if [[ "${GPE_DOCS}" ]]; then
dodoc ${GPE_DOCS} || die "dodoc failed"
fi
}

View File

@ -1,42 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gst-plugins10-bad.eclass
# @MAINTAINER:
# gstreamer@gentoo.org
# @AUTHOR:
# Gilles Dartiguelongue <eva@gentoo.org>
# Saleem Abdulrasool <compnerd@gentoo.org>
# foser <foser@gentoo.org>
# zaheerm <zaheerm@gentoo.org>
# @BLURB: Manages build for invididual ebuild for gst-plugins-bad.
# @DESCRIPTION:
# See gst-plugins10.eclass documentation.
GST_ORG_MODULE="gst-plugins-bad"
inherit eutils gst-plugins10
case "${EAPI:-0}" in
1|2|3|4|5)
;;
0)
die "EAPI=\"${EAPI}\" is not supported anymore"
;;
*)
die "EAPI=\"${EAPI}\" is not supported yet"
;;
esac
if [[ ${PN} != ${GST_ORG_MODULE} ]]; then
# -bad-0.10.20 uses orc optionally instead of liboil unconditionally.
# While <0.10.20 configure always check for liboil, it is used only by
# non-split plugins in gst/ (legacyresample and mpegdemux), so we only
# builddep for all old packages, and have a RDEPEND in old versions of
# media-libs/gst-plugins-bad
if [[ ${SLOT} = "0.10" ]] && ! version_is_at_least "0.10.20"; then
DEPEND="${DEPEND} >=dev-libs/liboil-0.3.8"
fi
fi

View File

@ -1,30 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gst-plugins-base.eclass
# @MAINTAINER:
# gstreamer@gentoo.org
# @AUTHOR:
# Gilles Dartiguelongue <eva@gentoo.org>
# Saleem Abdulrasool <compnerd@gentoo.org>
# foser <foser@gentoo.org>
# zaheerm <zaheerm@gentoo.org>
# @BLURB: Manages build for invididual ebuild for gst-plugins-base.
# @DESCRIPTION:
# See gst-plugins10.eclass documentation.
GST_ORG_MODULE="gst-plugins-base"
inherit gst-plugins10
case "${EAPI:-0}" in
1|2|3|4|5)
;;
0)
die "EAPI=\"${EAPI}\" is not supported anymore"
;;
*)
die "EAPI=\"${EAPI}\" is not supported yet"
;;
esac

View File

@ -1,41 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gst-plugins-good.eclass
# @MAINTAINER:
# gstreamer@gentoo.org
# @AUTHOR:
# Gilles Dartiguelongue <eva@gentoo.org>
# Saleem Abdulrasool <compnerd@gentoo.org>
# foser <foser@gentoo.org>
# zaheerm <zaheerm@gentoo.org>
# @BLURB: Manages build for invididual ebuild for gst-plugins-good.
# @DESCRIPTION:
# See gst-plugins10.eclass documentation.
GST_ORG_MODULE="gst-plugins-good"
inherit eutils gst-plugins10
case "${EAPI:-0}" in
1|2|3|4|5)
;;
0)
die "EAPI=\"${EAPI}\" is not supported anymore"
;;
*)
die "EAPI=\"${EAPI}\" is not supported yet"
;;
esac
if [[ ${PN} != ${GST_ORG_MODULE} ]]; then
# -good-0.10.24 uses orc optionally instead of liboil unconditionally.
# While <0.10.24 configure always checks for liboil, it is linked to only by
# non-split plugins in gst/, so we only builddep for all old packages, and have
# a RDEPEND in old versions of media-libs/gst-plugins-good
if [[ ${SLOT} = "0.10" ]] && ! version_is_at_least "0.10.24"; then
DEPEND="${DEPEND} >=dev-libs/liboil-0.3.8"
fi
fi

View File

@ -1,30 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gst-plugins-ugly.eclass
# @MAINTAINER:
# gstreamer@gentoo.org
# @AUTHOR:
# Gilles Dartiguelongue <eva@gentoo.org>
# Saleem Abdulrasool <compnerd@gentoo.org>
# foser <foser@gentoo.org>
# zaheerm <zaheerm@gentoo.org>
# @BLURB: Manages build for invididual ebuild for gst-plugins-ugly.
# @DESCRIPTION:
# See gst-plugins10.eclass documentation.
GST_ORG_MODULE="gst-plugins-ugly"
inherit gst-plugins10
case "${EAPI:-0}" in
1|2|3|4|5)
;;
0)
die "EAPI=\"${EAPI}\" is not supported anymore"
;;
*)
die "EAPI=\"${EAPI}\" is not supported yet"
;;
esac

View File

@ -1,298 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: gst-plugins10.eclass
# @MAINTAINER:
# gstreamer@gentoo.org
# @AUTHOR:
# Gilles Dartiguelongue <eva@gentoo.org>
# Saleem Abdulrasool <compnerd@gentoo.org>
# foser <foser@gentoo.org>
# zaheerm <zaheerm@gentoo.org>
# @BLURB: Manages build for invididual ebuild for gst-plugins.
# @DESCRIPTION:
# Eclass to make external gst-plugins emergable on a per-plugin basis and
# to solve the problem with gst-plugins generating far too much unneeded
# dependancies.
#
# GStreamer consuming applications should depend on the specific plugins they
# need as defined in their source code.
#
# In case of spider usage, obtain recommended plugins to use from Gentoo
# developers responsible for gstreamer <gstreamer@gentoo.org> or the application
# developer.
inherit eutils multilib toolchain-funcs versionator
GST_EXPF=""
case "${EAPI:-0}" in
2|3|4|5)
GST_EXPF="src_configure src_compile src_install"
;;
1)
GST_EXPF="src_compile src_install"
;;
0)
die "EAPI=\"${EAPI:-0}\" is not supported anymore"
;;
*)
die "EAPI=\"${EAPI}\" is not supported yet"
;;
esac
EXPORT_FUNCTIONS ${GST_EXPF}
# @ECLASS-VARIABLE: GST_LA_PUNT
# @DESCRIPTION:
# Should we delete all the .la files?
# NOT to be used without due consideration.
# Defaults to no for EAPI < 5.
if has "${EAPI:-0}" 0 1 2 3; then
: ${GST_LA_PUNT:="no"}
else
: ${GST_LA_PUNT:="yes"}
fi
# @ECLASS-VARIABLE: GST_PLUGINS_BUILD
# @DESCRIPTION:
# Defines the plugins to be built.
# May be set by an ebuild and contain more than one indentifier, space
# seperated (only src_configure can handle mutiple plugins at this time).
: ${GST_PLUGINS_BUILD:=${PN/gst-plugins-/}}
# @ECLASS-VARIABLE: GST_PLUGINS_BUILD_DIR
# @DESCRIPTION:
# Actual build directory of the plugin.
# Most often the same as the configure switch name.
: ${GST_PLUGINS_BUILD_DIR:=${PN/gst-plugins-/}}
# @ECLASS-VARIABLE: GST_TARBALL_SUFFIX
# @DESCRIPTION:
# Most projects hosted on gstreamer.freedesktop.org mirrors provide tarballs as
# tar.bz2 or tar.xz. This eclass defaults to bz2 for EAPI 0, 1, 2, 3 and
# defaults to xz for everything else. This is because the gstreamer mirrors
# are moving to only have xz tarballs for new releases.
if has "${EAPI:-0}" 0 1 2 3; then
: ${GST_TARBALL_SUFFIX:="bz2"}
else
: ${GST_TARBALL_SUFFIX:="xz"}
fi
# Even though xz-utils are in @system, they must still be added to DEPEND; see
# https://archives.gentoo.org/gentoo-dev/msg_a0d4833eb314d1be5d5802a3b710e0a4.xml
if [[ ${GST_TARBALL_SUFFIX} == "xz" ]]; then
DEPEND="${DEPEND} app-arch/xz-utils"
fi
# @ECLASS-VARIABLE: GST_ORG_MODULE
# @DESCRIPTION:
# Name of the module as hosted on gstreamer.freedesktop.org mirrors.
# Leave unset if package name matches module name.
: ${GST_ORG_MODULE:=$PN}
# @ECLASS-VARIABLE: GST_ORG_PVP
# @INTERNAL
# @DESCRIPTION:
# Major and minor numbers of the version number.
: ${GST_ORG_PVP:=$(get_version_component_range 1-2)}
DESCRIPTION="${BUILD_GST_PLUGINS} plugin for gstreamer"
HOMEPAGE="https://gstreamer.freedesktop.org/"
SRC_URI="https://gstreamer.freedesktop.org/src/${GST_ORG_MODULE}/${GST_ORG_MODULE}-${PV}.tar.${GST_TARBALL_SUFFIX}"
LICENSE="GPL-2"
case ${GST_ORG_PVP} in
0.10) SLOT="0.10" ;;
1.*) SLOT="1.0" ;;
*) die "Unkown gstreamer release."
esac
S="${WORKDIR}/${GST_ORG_MODULE}-${PV}"
RDEPEND="
>=dev-libs/glib-2.6:2
media-libs/gstreamer:${SLOT}
"
DEPEND="
>=sys-apps/sed-4
virtual/pkgconfig
"
if [[ ${PN} != ${GST_ORG_MODULE} ]]; then
# Do not run test phase for invididual plugin ebuilds.
RESTRICT="test"
RDEPEND="${RDEPEND} >=media-libs/${GST_ORG_MODULE}-${PV}:${SLOT}"
else
IUSE="nls"
DEPEND="${DEPEND} nls? ( >=sys-devel/gettext-0.17 )"
fi
#if [[ ${SLOT} == "0.10" ]]; then
# XXX: verify with old ebuilds.
# DEPEND="${DEPEND} dev-libs/liboil"
#fi
DEPEND="${DEPEND} ${RDEPEND}"
# @FUNCTION: gst-plugins10_get_plugins
# @INTERNAL
# @DESCRIPTION:
# Get the list of plugins requiring external dependencies.
gst-plugins10_get_plugins() {
# Must be called from src_prepare/src_configure
GST_PLUGINS_LIST=$(sed -rn 's/^AG_GST_CHECK_FEATURE\((\w+),.*/ \1 /p' \
"${S}"/configure.* | LC_ALL='C' tr '[:upper:]' '[:lower:]')
}
# @FUNCTION: gst-plugins10_find_plugin_dir
# @USAGE: gst-plugins10_find_plugin_dir [<build_dir>]
# @INTERNAL
# @DESCRIPTION:
# Finds plugin build directory and cd to it.
# Defaults to ${GST_PLUGINS_BUILD_DIR} if argument is not provided
gst-plugins10_find_plugin_dir() {
local build_dir=${1:-${GST_PLUGINS_BUILD_DIR}}
if [[ ! -d ${S}/ext/${build_dir} ]]; then
if [[ ! -d ${S}/sys/${build_dir} ]]; then
ewarn "No such plugin directory"
die
fi
einfo "Building system plugin in ${build_dir}..."
cd "${S}"/sys/${build_dir}
else
einfo "Building external plugin in ${build_dir}..."
cd "${S}"/ext/${build_dir}
fi
}
# @FUNCTION: gst-plugins10_system_link
# @USAGE: gst-plugins10_system_link gst-libs/gst/audio:gstreamer-audio [...]
# @DESCRIPTION:
# Walks through makefiles in order to make sure build will link against system
# librairies.
# Takes a list of path fragments and corresponding pkgconfig libraries
# separated by colon (:). Will replace the path fragment by the output of
# pkgconfig.
gst-plugins10_system_link() {
local directory libs pkgconfig pc tuple
pkgconfig=$(tc-getPKG_CONFIG)
for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do
gst-plugins10_find_plugin_dir ${plugin_dir}
for tuple in $@ ; do
directory="$(echo ${tuple} | cut -f1 -d':')"
pc="$(echo ${tuple} | cut -f2 -d':')-${SLOT}"
libs="$(${pkgconfig} --libs-only-l ${pc})"
sed -e "s:\$(top_builddir)/${directory}/.*\.la:${libs}:" \
-i Makefile.am Makefile.in || die
done
done
}
# @FUNCTION: gst-plugins10_remove_unversioned_binaries
# @INTERNAL
# @DESCRIPTION:
# Remove the unversioned binaries gstreamer provides to prevent file collision
# with other slots. DEPRECATED
gst-plugins10_remove_unversioned_binaries() {
cd "${D}"/usr/bin
local gst_bins
for gst_bins in *-${SLOT} ; do
[[ -e ${gst_bins} ]] || continue
rm ${gst_bins/-${SLOT}/}
einfo "Removed ${gst_bins/-${SLOT}/}"
done
}
# @FUNCTION: gst-plugins10_src_configure
# @DESCRIPTION:
# Handles logic common to configuring gstreamer plugins
gst-plugins10_src_configure() {
local plugin gst_conf
if has ${EAPI:-0} 0 1 2 3 ; then
gst_conf="${gst_conf} --disable-dependency-tracking"
fi
if has ${EAPI:-0} 0 1 2 3 4 ; then
gst_conf="${gst_conf} --disable-silent-rules"
fi
gst-plugins10_get_plugins
for plugin in ${GST_PLUGINS_LIST} ; do
if has ${plugin} ${GST_PLUGINS_BUILD} ; then
gst_conf="${gst_conf} --enable-${plugin}"
else
gst_conf="${gst_conf} --disable-${plugin}"
fi
done
if grep -q "ORC_CHECK" configure.* ; then
if in_iuse orc ; then
gst_conf="${gst_conf} $(use_enable orc)"
else
gst_conf="${gst_conf} --disable-orc"
fi
fi
if grep -q "AM_MAINTAINER_MODE" configure.* ; then
gst_conf="${gst_conf} --disable-maintainer-mode"
fi
if grep -q "disable-schemas-compile" configure ; then
gst_conf="${gst_conf} --disable-schemas-compile"
fi
if [[ ${PN} == ${GST_ORG_MODULE} ]]; then
gst_conf="${gst_conf} $(use_enable nls)"
fi
einfo "Configuring to build ${GST_PLUGINS_BUILD} plugin(s) ..."
econf \
--with-package-name="Gentoo GStreamer ebuild" \
--with-package-origin="https://www.gentoo.org" \
${gst_conf} $@
}
# @FUNCTION: gst-plugins10_src_compile
# @DESCRIPTION:
# Compiles requested gstreamer plugin.
gst-plugins10_src_compile() {
local plugin_dir
has ${EAPI:-0} 0 1 && gst-plugins10_src_configure "$@"
for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do
gst-plugins10_find_plugin_dir ${plugin_dir}
if has "${EAPI:-0}" 0 1 2 3 ; then
emake || die
else
default
fi
done
}
# @FUNCTION: gst-plugins10_src_install
# @DESCRIPTION:
# Installs requested gstreamer plugin.
gst-plugins10_src_install() {
local plugin_dir
for plugin_dir in ${GST_PLUGINS_BUILD_DIR} ; do
gst-plugins10_find_plugin_dir ${plugin_dir}
if has "${EAPI:-0}" 0 1 2 3 ; then
emake install DESTDIR="${D}" || die
[[ -e README ]] && dodoc README
else
default
fi
done
[[ ${GST_LA_PUNT} = "yes" ]] && prune_libtool_files --modules
}

View File

@ -479,6 +479,8 @@ _calculate_src_uri() {
4.14.11*)
# KDEPIM 4.14 snapshot with Gentoo patches
SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${_kmname_pv}.tar.xz" ;;
16.12.3)
SRC_URI="mirror://kde/Attic/applications/16.12.3/src/${_kmname_pv}.tar.xz" ;;
??.?.[6-9]? | ??.??.[4-9]?)
# Unstable KDE Applications releases
SRC_URI="mirror://kde/unstable/applications/${PV}/src/${_kmname}-${PV}.tar.xz" ;;

View File

@ -184,9 +184,6 @@ kde4-meta_src_extract() {
if [[ ${PV} =~ 4.4.11 ]]; then
postfix="bz2"
KMTARPARAMS+=" --bzip2"
elif [[ ${PV} =~ _pre20160211 ]]; then
postfix="gz"
KMTARPARAMS+=" --gz"
else
postfix="xz"
KMTARPARAMS+=" --xz"
@ -200,9 +197,6 @@ kde4-meta_src_extract() {
# Detect real toplevel dir from tarball name - it will be used upon extraction
# and in _list_needed_subdirectories
topdir="${tarball%.tar.*}/"
if [[ ${topdir} =~ _pre20160211 ]]; then
topdir="${topdir%-$PV*}/"
fi
ebegin "Unpacking parts of ${tarball} to ${WORKDIR}"

View File

@ -35,21 +35,12 @@ case ${CATEGORY} in
[[ ${KDE_BUILD_TYPE} = live ]] && : ${FRAMEWORKS_MINIMAL:=9999}
;;
kde-plasma)
if [[ $(get_version_component_range 2) -ge 9 ]]; then
: ${QT_MINIMAL:=5.7.1}
fi
if ! [[ $(get_version_component_range 2) -le 9 && $(get_version_component_range 3) -lt 50 ]]; then
: ${FRAMEWORKS_MINIMAL:=5.34.0}
fi
: ${QT_MINIMAL:=5.7.1}
if [[ ${KDE_BUILD_TYPE} = live && $(get_version_component_range 2) -ne 8 ]]; then
: ${FRAMEWORKS_MINIMAL:=9999}
: ${QT_MINIMAL:=5.7.1}
fi
;;
kde-apps)
if [[ $(get_version_component_range 1) -ge 17 ]]; then
: ${FRAMEWORKS_MINIMAL:=5.32.0}
fi
if [[ ${KDE_BUILD_TYPE} = live ]]; then
: ${QT_MINIMAL:=5.7.1}
fi
@ -64,12 +55,12 @@ esac
# @ECLASS-VARIABLE: FRAMEWORKS_MINIMAL
# @DESCRIPTION:
# Minimal Frameworks version to require for the package.
: ${FRAMEWORKS_MINIMAL:=5.29.0}
: ${FRAMEWORKS_MINIMAL:=5.34.0}
# @ECLASS-VARIABLE: PLASMA_MINIMAL
# @DESCRIPTION:
# Minimal Plasma version to require for the package.
: ${PLASMA_MINIMAL:=5.4.1}
: ${PLASMA_MINIMAL:=5.9.5}
# @ECLASS-VARIABLE: KDE_APPS_MINIMAL
# @DESCRIPTION:

View File

@ -79,6 +79,17 @@ EXPORT_FUNCTIONS pkg_setup pkg_nofetch src_unpack src_prepare src_configure src_
# Defaults to "doc". Otherwise, use alternative KDE handbook path.
: ${KDE_DOC_DIR:=doc}
# @ECLASS-VARIABLE: KDE_QTHELP
# @DESCRIPTION:
# If set to "false", do nothing.
# Otherwise, add "doc" to IUSE, add the appropriate dependency, generate
# and install Qt compressed help files with -DBUILD_QCH=ON when USE=doc.
if [[ ${CATEGORY} = kde-frameworks && ( $(get_version_component_range 2) -ge 36 || ${KDE_BUILD_TYPE} = live ) ]]; then
: ${KDE_QTHELP:=true}
else
: ${KDE_QTHELP:=false}
fi
# @ECLASS-VARIABLE: KDE_TEST
# @DESCRIPTION:
# If set to "false", do nothing.
@ -131,7 +142,7 @@ KDE_UNRELEASED=( )
if [[ ${KDEBASE} = kdevelop ]]; then
HOMEPAGE="https://www.kdevelop.org/"
elif [[ ${KDEBASE} = kdel10n ]]; then
HOMEPAGE="http://l10n.kde.org"
HOMEPAGE="https://l10n.kde.org"
elif [[ ${KMNAME} = kdepim ]]; then
HOMEPAGE="https://www.kde.org/applications/office/kontact/"
else
@ -223,6 +234,18 @@ case ${KDE_HANDBOOK} in
;;
esac
case ${KDE_QTHELP} in
false) ;;
*)
IUSE+=" doc"
COMMONDEPEND+=" doc? ( $(add_qt_dep qt-docs) )"
DEPEND+=" doc? (
$(add_qt_dep qthelp)
>=app-doc/doxygen-1.8.13-r1
)"
;;
esac
case ${KDE_TEST} in
false) ;;
*)
@ -294,6 +317,8 @@ _calculate_src_uri() {
case ${CATEGORY} in
kde-apps)
case ${PV} in
16.12.3)
SRC_URI="mirror://kde/Attic/applications/16.12.3/src/${_kmname}-${PV}.tar.xz" ;;
??.?.[6-9]? | ??.??.[6-9]? )
SRC_URI="mirror://kde/unstable/applications/${PV}/src/${_kmname}-${PV}.tar.xz"
RESTRICT+=" mirror"
@ -536,6 +561,7 @@ kde5_src_prepare() {
if [[ ${KDE_HANDBOOK} = forceoptional ]] ; then
punt_bogus_dep KF5 DocTools
sed -i -e "/kdoctools_install/ s/^/#DONT/" CMakeLists.txt || die
fi
fi
@ -557,17 +583,18 @@ kde5_src_prepare() {
pushd ${po} > /dev/null || die
local lang
for lang in *; do
if [[ -d ${lang} ]] && ! has ${lang} ${LINGUAS} ; then
rm -r ${lang} || die
if [[ -e ${lang} ]] && ! has ${lang/.po/} ${LINGUAS} ; then
case ${lang} in
cmake_modules | \
CMakeLists.txt | \
${PN}.pot) ;;
*) rm -r ${lang} || die ;;
esac
if [[ -e CMakeLists.txt ]] ; then
cmake_comment_add_subdirectory ${lang}
sed -e "/add_subdirectory([[:space:]]*${lang}\/.*[[:space:]]*)/d" \
-i CMakeLists.txt || die
fi
elif [[ -f ${lang} ]] && ! has ${lang/.po/} ${LINGUAS} ; then
if [[ ${lang} != CMakeLists.txt && ${lang} != ${PN}.pot ]] ; then
rm ${lang} || die
fi
fi
done
popd > /dev/null || die
@ -643,6 +670,10 @@ kde5_src_configure() {
cmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Designer=ON )
fi
if [[ ${KDE_QTHELP} != false ]]; then
cmakeargs+=( -DBUILD_QCH=$(usex doc) )
fi
# install mkspecs in the same directory as qt stuff
cmakeargs+=(-DKDE_INSTALL_USE_QT_SYS_PATHS=ON)
@ -700,10 +731,18 @@ kde5_src_install() {
cmake-utils_src_install
# We don't want ${PREFIX}/share/doc/HTML to be compressed,
# We don't want QCH and tags files to be compressed, because then
# cmake can't find the tags and qthelp viewers can't find the docs
local p=$(best_version dev-qt/qtcore:5)
local pv=$(echo ${p/%-r[0-9]*/} | rev | cut -d - -f 1 | rev)
if [[ -d ${ED%/}/usr/share/doc/qt-${pv} ]]; then
docompress -x /usr/share/doc/qt-${pv}
fi
# We don't want /usr/share/doc/HTML to be compressed,
# because then khelpcenter can't find the docs
if [[ -d ${ED}/${PREFIX}/share/doc/HTML ]]; then
docompress -x ${PREFIX}/share/doc/HTML
if [[ -d ${ED%/}/usr/share/doc/HTML ]]; then
docompress -x /usr/share/doc/HTML
fi
}
@ -735,14 +774,6 @@ kde5_pkg_postinst() {
einfo "Use it at your own risk."
einfo "Do _NOT_ file bugs at bugs.gentoo.org because of this ebuild!"
fi
# for kf5-based applications tell user that he SHOULD NOT be using kde-plasma/plasma-workspace:4
if [[ ${KDEBASE} != kde-base || ${CATEGORY} = kde-apps ]] && \
has_version 'kde-plasma/plasma-workspace:4'; then
echo
ewarn "WARNING! Your system configuration still contains \"kde-plasma/plasma-workspace:4\","
ewarn "indicating a Plasma 4 setup. With this setting you are unsupported by KDE team."
ewarn "Please consider upgrading to Plasma 5."
fi
fi
}

View File

@ -506,10 +506,20 @@ detect_version() {
OKV_DICT=(["2"]="${KV_MAJOR}.$((${KV_PATCH_ARR} - 1))" ["3"]="2.6.39" ["4"]="3.19")
if [[ ${RELEASETYPE} == -rc ]] || [[ ${RELEASETYPE} == -pre ]]; then
OKV=${K_BASE_VER:-$OKV_DICT["${KV_MAJOR}"]}
KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz
${KERNEL_BASE_URI}/linux-${OKV}.tar.xz"
UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz"
# as of 12/5/2017, the rc patch is no longer offered as a compressed
# file, and no longer is it mirrored on kernel.org
if [[ ${KV_MAJOR} -ge 4 ]] && [[ ${KV_PATCH} -ge 12 ]]; then
KERNEL_URI="https://git.kernel.org/torvalds/p/v${KV_FULL}/v${OKV} -> patch-${KV_FULL}.patch
${KERNEL_BASE_URI}/linux-${OKV}.tar.xz"
UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.patch"
else
KERNEL_URI="${KERNEL_BASE_URI}/testing/patch-${CKV//_/-}.xz
${KERNEL_BASE_URI}/linux-${OKV}.tar.xz"
UNIPATCH_LIST_DEFAULT="${DISTDIR}/patch-${CKV//_/-}.xz"
fi
fi
if [[ ${RELEASETYPE} == -git ]]; then

View File

@ -3,6 +3,8 @@
# @ECLASS: l10n.eclass
# @MAINTAINER:
# Ulrich Müller <ulm@gentoo.org>
# @AUTHOR:
# Ben de Groot <yngwin@gentoo.org>
# @BLURB: convenience functions to handle localizations
# @DESCRIPTION:

View File

@ -139,11 +139,11 @@ latex-package_src_doinstall() {
do
[ -n "${LATEX_PACKAGE_SKIP}" ] && has ${i##*/} ${LATEX_PACKAGE_SKIP} && continue
einfo "Making documentation: $i"
if pdflatex ${LATEX_DOC_ARGUMENTS} --interaction=batchmode $i &> /dev/null ; then
pdflatex ${LATEX_DOC_ARGUMENTS} --interaction=batchmode $i &> /dev/null || die
if pdflatex ${LATEX_DOC_ARGUMENTS} --halt-on-error --interaction=nonstopmode $i ; then
pdflatex ${LATEX_DOC_ARGUMENTS} --halt-on-error --interaction=nonstopmode $i || die
else
einfo "pdflatex failed, trying texi2dvi"
texi2dvi -q -c --language=latex $i &> /dev/null || die
texi2dvi -q -c --language=latex $i || die
fi
done
fi
@ -205,7 +205,7 @@ latex-package_src_compile() {
for i in `find \`pwd\` -maxdepth 1 -type f -name "*.ins"`
do
einfo "Extracting from $i"
latex --interaction=batchmode $i &> /dev/null || die
latex --halt-on-error --interaction=nonstopmode $i || die
done
}

View File

@ -4,7 +4,6 @@
# @ECLASS: mercurial.eclass
# @MAINTAINER:
# Christoph Junghans <junghans@gentoo.org>
# Dirkjan Ochtman <djc@gentoo.org>
# @AUTHOR:
# Next gen author: Krzysztof Pawlik <nelchael@gentoo.org>
# Original author: Aron Griffis <agriffis@gentoo.org>

View File

@ -0,0 +1,192 @@
# Copyright 2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: meson.eclass
# @MAINTAINER:
# William Hubbs <williamh@gentoo.org>
# Mike Gilbert <floppym@gentoo.org>
# @BLURB: common ebuild functions for meson-based packages
# @DESCRIPTION:
# This eclass contains the default phase functions for packages which
# use the meson build system.
#
# @EXAMPLE:
# Typical ebuild using meson.eclass:
#
# @CODE
# EAPI=6
#
# inherit meson
#
# ...
#
# src_configure() {
# local emesonargs=(
# -Dqt4=$(usex qt4 true false)
# -Dthreads=$(usex threads true false)
# -Dtiff=$(usex tiff true false)
# )
# meson_src_configure
# }
#
# ...
#
# @CODE
case ${EAPI:-0} in
6) ;;
*) die "EAPI=${EAPI} is not supported" ;;
esac
if [[ -z ${_MESON_ECLASS} ]]; then
inherit ninja-utils python-utils-r1 toolchain-funcs
fi
EXPORT_FUNCTIONS src_configure src_compile src_test src_install
if [[ -z ${_MESON_ECLASS} ]]; then
_MESON_ECLASS=1
DEPEND=">=dev-util/meson-0.40.0
>=dev-util/ninja-1.7.2"
# @ECLASS-VARIABLE: BUILD_DIR
# @DEFAULT_UNSET
# @DESCRIPTION:
# Build directory, location where all generated files should be placed.
# If this isn't set, it defaults to ${WORKDIR}/${P}-build.
# @ECLASS-VARIABLE: EMESON_SOURCE
# @DEFAULT_UNSET
# @DESCRIPTION:
# The location of the source files for the project; this is the source
# directory to pass to meson.
# If this isn't set, it defaults to ${S}
# @VARIABLE: emesonargs
# @DEFAULT_UNSET
# @DESCRIPTION:
# Optional meson arguments as Bash array; this should be defined before
# calling meson_src_configure.
# @FUNCTION: _meson_create_cross_file
# @INTERNAL
# @DESCRIPTION:
# Creates a cross file. meson uses this to define settings for
# cross-compilers. This function is called from meson_src_configure.
_meson_create_cross_file() {
# Reference: http://mesonbuild.com/Cross-compilation.html
# system roughly corresponds to uname -s (lowercase)
local system=unknown
case ${CHOST} in
*-aix*) system=aix ;;
*-cygwin*) system=cygwin ;;
*-darwin*) system=darwin ;;
*-freebsd*) system=freebsd ;;
*-linux*) system=linux ;;
*-solaris*) system=sunos ;;
esac
local cpu_family=$(tc-arch)
case ${cpu_family} in
amd64) cpu_family=x86_64 ;;
arm64) cpu_family=aarch64 ;;
esac
# This may require adjustment based on CFLAGS
local cpu=${CHOST%%-*}
cat > "${T}/meson.${CHOST}" <<-EOF
[binaries]
ar = '${AR}'
c = '${CC}'
cpp = '${CXX}'
strip = '${STRIP}'
[host_machine]
system = '${system}'
cpu_family = '${cpu_family}'
cpu = '${cpu}'
endian = '$(tc-endian)'
EOF
}
# @FUNCTION: meson_src_configure
# @DESCRIPTION:
# This is the meson_src_configure function.
meson_src_configure() {
debug-print-function ${FUNCNAME} "$@"
# Common args
local mesonargs=(
--buildtype plain
--libdir "$(get_libdir)"
--localstatedir "${EPREFIX}/var/lib"
--prefix "${EPREFIX}/usr"
--sysconfdir "${EPREFIX}/etc"
--wrap-mode nodownload
)
# Both meson(1) and _meson_create_cross_file need these
local -x AR=$(tc-getAR)
local -x CC=$(tc-getCC)
local -x CXX=$(tc-getCXX)
local -x STRIP=$(tc-getSTRIP)
if tc-is-cross-compiler; then
_meson_create_cross_file || die "unable to write meson cross file"
mesonargs+=(
--cross-file "${T}/meson.${CHOST}"
)
# In cross mode, meson uses these as the native/build programs
AR=$(tc-getBUILD_AR)
CC=$(tc-getBUILD_CC)
CXX=$(tc-getBUILD_CXX)
STRIP=$(tc-getBUILD_STRIP)
fi
# https://bugs.gentoo.org/625396
python_export_utf8_locale
# Append additional arguments from ebuild
mesonargs+=("${emesonargs[@]}")
BUILD_DIR="${BUILD_DIR:-${WORKDIR}/${P}-build}"
set -- meson "${mesonargs[@]}" "$@" \
"${EMESON_SOURCE:-${S}}" "${BUILD_DIR}"
echo "$@"
"$@" || die
}
# @FUNCTION: meson_src_compile
# @DESCRIPTION:
# This is the meson_src_compile function.
meson_src_compile() {
debug-print-function ${FUNCNAME} "$@"
eninja -C "${BUILD_DIR}"
}
# @FUNCTION: meson_src_test
# @DESCRIPTION:
# This is the meson_src_test function.
meson_src_test() {
debug-print-function ${FUNCNAME} "$@"
eninja -C "${BUILD_DIR}" test
}
# @FUNCTION: meson_src_install
# @DESCRIPTION:
# This is the meson_src_install function.
meson_src_install() {
debug-print-function ${FUNCNAME} "$@"
DESTDIR="${D}" eninja -C "${BUILD_DIR}" install
einstalldocs
}
fi

View File

@ -26,7 +26,7 @@ case ${EAPI} in
;;
esac
inherit flag-o-matic toolchain-funcs mozcoreconf-v4
inherit flag-o-matic toolchain-funcs mozcoreconf-v5
# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
# @DESCRIPTION:

View File

@ -1,7 +1,7 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# @ECLASS: mozconfig-v6.52.eclass
# @ECLASS: mozconfig-v6.53.eclass
# @MAINTAINER:
# mozilla team <mozilla@gentoo.org>
# @BLURB: the new mozilla common configuration eclass for FF33 and newer, v6
@ -26,7 +26,7 @@ case ${EAPI} in
;;
esac
inherit flag-o-matic toolchain-funcs mozcoreconf-v4
inherit flag-o-matic toolchain-funcs mozcoreconf-v5
# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
# @DESCRIPTION:

View File

@ -0,0 +1,280 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
#
# @ECLASS: mozcoreconf-v5.eclass
# @MAINTAINER:
# Mozilla team <mozilla@gentoo.org>
# @BLURB: core options and configuration functions for mozilla
# @DESCRIPTION:
#
# inherit mozconfig-v6.* or above for mozilla configuration support
# @ECLASS-VARIABLE: MOZILLA_FIVE_HOME
# @DESCRIPTION:
# This is an eclass-generated variable that defines the rpath that the mozilla
# product will be installed in. Read-only
if [[ ! ${_MOZCORECONF} ]]; then
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='ncurses,sqlite,ssl,threads'
inherit multilib toolchain-funcs flag-o-matic python-any-r1 versionator
IUSE="${IUSE} custom-cflags custom-optimization"
DEPEND="virtual/pkgconfig
${PYTHON_DEPS}"
# @FUNCTION: mozconfig_annotate
# @DESCRIPTION:
# add an annotated line to .mozconfig
#
# Example:
# mozconfig_annotate "building on ultrasparc" --enable-js-ultrasparc
# => ac_add_options --enable-js-ultrasparc # building on ultrasparc
mozconfig_annotate() {
declare reason=$1 x ; shift
[[ $# -gt 0 ]] || die "mozconfig_annotate missing flags for ${reason}\!"
for x in ${*}; do
echo "ac_add_options ${x} # ${reason}" >>.mozconfig
done
}
# @FUNCTION: mozconfig_use_enable
# @DESCRIPTION:
# add a line to .mozconfig based on a USE-flag
#
# Example:
# mozconfig_use_enable truetype freetype2
# => ac_add_options --enable-freetype2 # +truetype
mozconfig_use_enable() {
declare flag=$(use_enable "$@")
mozconfig_annotate "$(use $1 && echo +$1 || echo -$1)" "${flag}"
}
# @FUNCTION mozconfig_use_with
# @DESCRIPTION
# add a line to .mozconfig based on a USE-flag
#
# Example:
# mozconfig_use_with kerberos gss-api /usr/$(get_libdir)
# => ac_add_options --with-gss-api=/usr/lib # +kerberos
mozconfig_use_with() {
declare flag=$(use_with "$@")
mozconfig_annotate "$(use $1 && echo +$1 || echo -$1)" "${flag}"
}
# @FUNCTION mozconfig_use_extension
# @DESCRIPTION
# enable or disable an extension based on a USE-flag
#
# Example:
# mozconfig_use_extension gnome gnomevfs
# => ac_add_options --enable-extensions=gnomevfs
mozconfig_use_extension() {
declare minus=$(use $1 || echo -)
mozconfig_annotate "${minus:-+}$1" --enable-extensions=${minus}${2}
}
moz_pkgsetup() {
# Ensure we use C locale when building
export LANG="C"
export LC_ALL="C"
export LC_MESSAGES="C"
export LC_CTYPE="C"
# Ensure we use correct toolchain
export HOST_CC="$(tc-getBUILD_CC)"
export HOST_CXX="$(tc-getBUILD_CXX)"
tc-export CC CXX LD PKG_CONFIG
# Ensure that we have a sane build enviroment
export MOZILLA_CLIENT=1
export BUILD_OPT=1
export NO_STATIC_LIB=1
export USE_PTHREADS=1
export ALDFLAGS=${LDFLAGS}
# ensure MOZCONFIG is not defined
eval unset MOZCONFIG
# set MOZILLA_FIVE_HOME
export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
# nested configure scripts in mozilla products generate unrecognized options
# false positives when toplevel configure passes downwards.
export QA_CONFIGURE_OPTIONS=".*"
if [[ $(gcc-major-version) -eq 3 ]]; then
ewarn "Unsupported compiler detected, DO NOT file bugs for"
ewarn "outdated compilers. Bugs opened with gcc-3 will be closed"
ewarn "invalid."
fi
python-any-r1_pkg_setup
}
# @FUNCTION: mozconfig_init
# @DESCRIPTION:
# Initialize mozilla configuration and populate with core settings.
# This should be called in src_configure before any other mozconfig_* functions.
mozconfig_init() {
declare enable_optimize pango_version myext x
declare XUL=$([[ ${PN} == xulrunner ]] && echo true || echo false)
declare FF=$([[ ${PN} == firefox ]] && echo true || echo false)
declare SM=$([[ ${PN} == seamonkey ]] && echo true || echo false)
declare TB=$([[ ${PN} == thunderbird ]] && echo true || echo false)
####################################
#
# Setup the initial .mozconfig
# See http://www.mozilla.org/build/configure-build.html
#
####################################
case ${PN} in
*xulrunner)
cp xulrunner/config/mozconfig .mozconfig \
|| die "cp xulrunner/config/mozconfig failed" ;;
*firefox)
cp browser/config/mozconfig .mozconfig \
|| die "cp browser/config/mozconfig failed" ;;
seamonkey)
# Must create the initial mozconfig to enable application
: >.mozconfig || die "initial mozconfig creation failed"
mozconfig_annotate "" --enable-application=suite ;;
*thunderbird)
# Must create the initial mozconfig to enable application
: >.mozconfig || die "initial mozconfig creation failed"
mozconfig_annotate "" --enable-application=mail ;;
esac
####################################
#
# CFLAGS setup and ARCH support
#
####################################
# Set optimization level
if [[ $(gcc-major-version) -ge 7 ]]; then
mozconfig_annotate "Workaround known breakage" --enable-optimize=-O2
elif [[ ${ARCH} == hppa ]]; then
mozconfig_annotate "more than -O0 causes a segfault on hppa" --enable-optimize=-O0
elif [[ ${ARCH} == x86 ]]; then
mozconfig_annotate "less then -O2 causes a segfault on x86" --enable-optimize=-O2
elif use custom-optimization || [[ ${ARCH} =~ (alpha|ia64) ]]; then
# Set optimization level based on CFLAGS
if is-flag -O0; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-O0
elif [[ ${ARCH} == ppc ]] && has_version '>=sys-libs/glibc-2.8'; then
mozconfig_annotate "more than -O1 segfaults on ppc with glibc-2.8" --enable-optimize=-O1
elif is-flag -O4; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-O4
elif is-flag -O3; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-O3
elif is-flag -O1; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-O1
elif is-flag -Os; then
mozconfig_annotate "from CFLAGS" --enable-optimize=-Os
else
mozconfig_annotate "Gentoo's default optimization" --enable-optimize=-O2
fi
else
# Enable Mozilla's default
mozconfig_annotate "mozilla default" --enable-optimize
fi
# Strip optimization so it does not end up in compile string
filter-flags '-O*'
# Strip over-aggressive CFLAGS
use custom-cflags || strip-flags
# Additional ARCH support
case "${ARCH}" in
arm)
# Reduce the memory requirements for linking
append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
;;
alpha)
# Historically we have needed to add -fPIC manually for 64-bit.
# Additionally, alpha should *always* build with -mieee for correct math
# operation
append-flags -fPIC -mieee
;;
ia64)
# Historically we have needed to add this manually for 64-bit
append-flags -fPIC
;;
ppc64)
append-flags -fPIC -mminimal-toc
# Reduce the memory requirements for linking
append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
;;
esac
# We need to append flags for gcc-6 support
if [[ $(gcc-major-version) -ge 6 ]]; then
append-cxxflags -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2
fi
# Go a little faster; use less RAM
append-flags "$MAKEEDIT_FLAGS"
# Use the MOZILLA_FIVE_HOME for the rpath
append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
# Set MOZILLA_FIVE_HOME in mozconfig
mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
####################################
#
# mozconfig setup
#
####################################
mozconfig_annotate disable_update_strip \
--disable-updater \
--disable-strip \
--disable-install-strip
# jemalloc won't build with older glibc
! has_version ">=sys-libs/glibc-2.4" && mozconfig_annotate "we have old glibc" --disable-jemalloc
}
# @FUNCTION: mozconfig_final
# @DESCRIPTION:
# Apply EXTRA_ECONF values to .mozconfig
# Display a table describing all configuration options paired
# with reasons, then clean up extensions list.
# This should be called in src_configure at the end of all other mozconfig_* functions.
mozconfig_final() {
declare ac opt hash reason
# Apply EXTRA_ECONF entries to .mozconfig
if [[ -n ${EXTRA_ECONF} ]]; then
IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
for opt in "${ac[@]}"; do
mozconfig_annotate "EXTRA_ECONF" --${opt#--}
done
fi
echo
echo "=========================================================="
echo "Building ${PF} with the following configuration"
grep ^ac_add_options .mozconfig | while read ac opt hash reason; do
[[ -z ${hash} || ${hash} == \# ]] \
|| die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
done
echo "=========================================================="
echo
# Resolve multiple --enable-extensions down to one
declare exts=$(sed -n 's/^ac_add_options --enable-extensions=\([^ ]*\).*/\1/p' \
.mozconfig | xargs)
sed -i '/^ac_add_options --enable-extensions/d' .mozconfig
echo "ac_add_options --enable-extensions=${exts// /,}" >> .mozconfig
}
_MOZCORECONF=1
fi

View File

@ -450,6 +450,11 @@ multilib_toolchain_setup() {
done
export _DEFAULT_ABI_SAVED="true"
# Set CBUILD only if not cross-compiling.
if [[ ${CBUILD} == "${CHOST}" ]]; then
export CBUILD=$(get_abi_CHOST $1)
fi
# Set the CHOST native first so that we pick up the native
# toolchain and not a cross-compiler by accident #202811.
export CHOST=$(get_abi_CHOST ${DEFAULT_ABI})
@ -459,7 +464,6 @@ multilib_toolchain_setup() {
export FC="$(tc-getFC) $(get_abi_CFLAGS)"
export LD="$(tc-getLD) $(get_abi_LDFLAGS)"
export CHOST=$(get_abi_CHOST $1)
export CBUILD=$(get_abi_CHOST $1)
export PKG_CONFIG_LIBDIR=${EPREFIX}/usr/$(get_libdir)/pkgconfig
export PKG_CONFIG_PATH=${EPREFIX}/usr/share/pkgconfig
fi

View File

@ -1,7 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: mysql-multilib.eclass
# @ECLASS: mysql-multilib-r1.eclass
# @MAINTAINER:
# Maintainers:
# - MySQL Team <mysql-bugs@gentoo.org>
@ -406,6 +406,7 @@ multilib_src_configure() {
# The build forces this to be defined when cross-compiling. We pass it
# all the time for simplicity and to make sure it is actually correct.
-DSTACK_DIRECTION=$(tc-stack-grows-down && echo -1 || echo 1)
-DPKG_CONFIG_EXECUTABLE="${EPREFIX}/usr/bin/$(tc-getPKG_CONFIG)"
)
if use test ; then
@ -414,10 +415,6 @@ multilib_src_configure() {
mycmakeargs+=( -DINSTALL_MYSQLTESTDIR='' )
fi
if in_iuse systemd ; then
mycmakeargs+=( -DWITH_SYSTEMD=$(usex systemd) )
fi
if use openssl || use libressl ; then
mycmakeargs+=( -DWITH_SSL=system )
else
@ -447,6 +444,12 @@ multilib_src_configure() {
mycmakeargs+=( -DWITH_EDITLINE=bundled )
if multilib_is_native_abi && use server ; then
# systemd is only linked to for server notification
if in_iuse systemd ; then
mycmakeargs+=( -DWITH_SYSTEMD=$(usex systemd) )
fi
if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
@ -505,6 +508,7 @@ multilib_src_configure() {
-DWITHOUT_EMBEDDED_SERVER=1
-DEXTRA_CHARSETS=none
-DINSTALL_SQLBENCHDIR=
-DWITH_SYSTEMD=NO
)
fi

View File

@ -227,9 +227,9 @@ if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
# 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or perfomance suffers
mysql_version_is_at_least "10.0.5" && IUSE="${IUSE} odbc xml"
if [[ ${HAS_TOOLS_PATCH} ]] ; then
REQUIRED_USE="${REQUIRED_USE} !server? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
REQUIRED_USE="${REQUIRED_USE} !server? ( !oqgraph !sphinx ) tokudb? ( jemalloc !tcmalloc )"
else
REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph !sphinx ) tokudb? ( jemalloc !tcmalloc )"
fi
# MariaDB 10.1 introduces InnoDB/XtraDB compression with external libraries
# Choices are bzip2, lz4, lzma, lzo. bzip2 and lzma enabled by default as they are system libraries
@ -265,7 +265,7 @@ fi
REQUIRED_USE="
${REQUIRED_USE} tcmalloc? ( !jemalloc ) jemalloc? ( !tcmalloc )
static? ( yassl )"
static? ( yassl !openssl !libressl )"
#
# DEPENDENCIES:

View File

@ -240,9 +240,9 @@ if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
mysql_version_is_at_least "5.2.10" && IUSE="${IUSE} pam"
# 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or perfomance suffers
mysql_version_is_at_least "10.0.5" && IUSE="${IUSE} tokudb odbc xml" && \
REQUIRED_USE="${REQUIRED_USE} odbc? ( extraengine ) xml? ( extraengine ) tokudb? ( jemalloc )"
REQUIRED_USE="${REQUIRED_USE} odbc? ( extraengine ) xml? ( extraengine ) tokudb? ( jemalloc !tcmalloc )"
mysql_check_version_range "5.5.33 to 5.5.99" && IUSE="${IUSE} tokudb" && \
REQUIRED_USE="${REQUIRED_USE} tokudb? ( jemalloc )"
REQUIRED_USE="${REQUIRED_USE} tokudb? ( jemalloc !tcmalloc )"
fi
if mysql_version_is_at_least "5.5"; then

View File

@ -0,0 +1,57 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: ninja-utils.eclass
# @MAINTAINER:
# Michał Górny <mgorny@gentoo.org>
# Mike Gilbert <floppym@gentoo.org>
# @AUTHOR:
# Michał Górny <mgorny@gentoo.org>
# Mike Gilbert <floppym@gentoo.org>
# @BLURB: common bits to run dev-util/ninja builder
# @DESCRIPTION:
# This eclass provides a single function -- eninja -- that can be used
# to run the ninja builder alike emake. It does not define any
# dependencies, you need to depend on dev-util/ninja yourself. Since
# ninja is rarely used stand-alone, most of the time this eclass will
# be used indirectly by the eclasses for other build systems (CMake,
# Meson).
if [[ -z ${_NINJA_UTILS_ECLASS} ]]; then
case ${EAPI:-0} in
0|1|3) die "EAPI=${EAPI:-0} is not supported (too old)";;
# copied from cmake-utils
2|4|5|6) ;;
*) die "EAPI=${EAPI} is not yet supported" ;;
esac
# @ECLASS-VARIABLE: NINJAOPTS
# @DEFAULT_UNSET
# @DESCRIPTION:
# The default set of options to pass to Ninja. Similar to MAKEOPTS,
# supposed to be set in make.conf. If unset, eninja() will convert
# MAKEOPTS instead.
inherit multiprocessing
# @FUNCTION: eninja
# @USAGE: [<args>...]
# @DESCRIPTION:
# Call Ninja, passing the NINJAOPTS (or converted MAKEOPTS), followed
# by the supplied arguments. This function dies if ninja fails. Starting
# with EAPI 6, it also supports being called via 'nonfatal'.
eninja() {
local nonfatal_args=()
[[ ${EAPI:-0} != [245] ]] && nonfatal_args+=( -n )
if [[ -z ${NINJAOPTS+set} ]]; then
NINJAOPTS="-j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0)"
fi
set -- ninja -v ${NINJAOPTS} "$@"
echo "$@" >&2
"$@" || die "${nonfatal_args[@]}" "${*} failed"
}
_NINJA_UTILS_ECLASS=1
fi

View File

@ -15,7 +15,7 @@
# This eclass provides a unified interface for compiling and installing standalone
# PHP extensions (modules).
inherit flag-o-matic autotools multilib eutils
inherit autotools multilib
EXPORT_FUNCTIONS src_unpack src_prepare src_configure src_compile src_install

View File

@ -1,97 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: php-pear-lib-r1.eclass
# @MAINTAINER:
# Gentoo PHP team <php-bugs@gentoo.org>
# @AUTHOR:
# Author: Luca Longinotti <chtekk@gentoo.org>
# @BLURB: Provides means for an easy installation of PEAR-based libraries.
# @DESCRIPTION:
# This class provides means for an easy installation of PEAR-based libraries,
# such as Creole, Jargon, Phing etc., while retaining the functionality to put
# the libraries into version-dependant directories.
inherit multilib
EXPORT_FUNCTIONS pkg_setup src_install
# Silence repoman warnings
case "${EAPI:-0}" in
5)
PHP_DEPEND="dev-lang/php:*"
;;
*)
PHP_DEPEND="dev-lang/php"
;;
esac
DEPEND="${PHP_DEPEND}
>=dev-php/pear-1.9.0"
RDEPEND="${DEPEND}"
if [[ -n $PHP_PEAR_CHANNEL ]] ; then
PHP_PEAR_PV=${PV/_rc/RC}
[[ -z ${PHP_PEAR_PN} ]] && die "Missing PHP_PEAR_PN. Please notify the maintainer"
PHP_PEAR_P=${PHP_PEAR_PN}-${PHP_PEAR_PV}
S="${WORKDIR}/${PHP_PEAR_P}"
SRC_URI="http://${PHP_PEAR_URI}/get/${PHP_PEAR_P}.tgz"
fi
# @FUNCTION: php-pear-lib-r1_pkg_setup
# @DESCRIPTION:
# Adds required PEAR channel if necessary
php-pear-lib-r1_pkg_setup() {
if [[ -n $PHP_PEAR_CHANNEL ]] ; then
if [[ -f $PHP_PEAR_CHANNEL ]]; then
pear channel-add $PHP_PEAR_CHANNEL || einfo "Ignore any errors about existing channels"
else
die "Could not find channel file $PHP_PEAR_CHANNEL"
fi
fi
}
# @FUNCTION: php-pear-lib-r1_src_install
# @DESCRIPTION:
# Takes care of standard install for PEAR-based libraries.
php-pear-lib-r1_src_install() {
# SNMP support
addpredict /usr/share/snmp/mibs/.index
addpredict /var/lib/net-snmp/
addpredict /var/lib/net-snmp/mib_indexes
addpredict /session_mm_cli0.sem
PHP_BIN="/usr/bin/php"
cd "${S}"
# metadata_dir needs to be set relative to ${D} for >=dev-php/PEAR-PEAR-1.10
if [[ -f "${WORKDIR}"/package2.xml ]] ; then
mv -f "${WORKDIR}/package2.xml" "${S}"
local WWW_DIR="/usr/share/webapps/${PN}/${PVR}/htdocs"
peardev -d php_bin="${PHP_BIN}" -d www_dir="${WWW_DIR}" -d metadata_dir="/usr/share/php" \
install --force --loose --nodeps --offline --packagingroot="${D}" \
"${S}/package2.xml" || die "Unable to install PEAR package"
else
mv -f "${WORKDIR}/package.xml" "${S}"
local WWW_DIR="/usr/share/webapps/${PN}/${PVR}/htdocs"
peardev -d php_bin="${PHP_BIN}" -d www_dir="${WWW_DIR}" -d metadata_dir="/usr/share/php" \
install --force --loose --nodeps --offline --packagingroot="${D}" \
"${S}/package.xml" || die "Unable to install PEAR package"
fi
rm -Rf "${D}/usr/share/php/.channels" \
"${D}/usr/share/php/.depdblock" \
"${D}/usr/share/php/.depdb" \
"${D}/usr/share/php/.filemap" \
"${D}/usr/share/php/.lock" \
"${D}/usr/share/php/.registry"
einfo
einfo "Installing to /usr/share/php ..."
einfo
}

View File

@ -97,9 +97,10 @@ php-pear-r2_src_install() {
php-pear-r2_pkg_postinst() {
# Add unknown channels
if [[ -f "${EROOT}usr/share/php/.packagexml/${PEAR_P}-channel.xml" ]] ; then
if "${EROOT}usr/bin/peardev" channel-info "${PHP_PEAR_DOMAIN}" &> /dev/null; then
"${EROOT}usr/bin/peardev" channel-info "${PHP_PEAR_DOMAIN}" &> /dev/null
if [[ $? -ne 0 ]]; then
"${EROOT}usr/bin/peardev" channel-add \
"${EROOT}usr/share/php/.packagexml/${PEAR_PN}-channel.xml" \
"${EROOT}usr/share/php/.packagexml/${PEAR_P}-channel.xml" \
|| einfo "Ignore any errors about existing channels"
fi
fi

View File

@ -0,0 +1,175 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit multibuild postgres
EXPORT_FUNCTIONS pkg_setup src_prepare src_compile src_install src_test
# @ECLASS: postgres-multi.eclass
# @MAINTAINER:
# PostgreSQL <pgsql-bugs@gentoo.org>
# @AUTHOR: Aaron W. Swenson <titanofold@gentoo.org>
# @BLURB: An eclass to build PostgreSQL-related packages against multiple slots
# @DESCRIPTION:
# postgres-multi enables ebuilds, particularly PostgreSQL extensions, to
# build and install for one or more PostgreSQL slots as specified by
# POSTGRES_TARGETS use flags.
case ${EAPI:-0} in
5|6) ;;
*) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;;
esac
# @ECLASS-VARIABLE: POSTGRES_COMPAT
# @REQUIRED
# @DESCRIPTION:
# A Bash array containing a list of compatible PostgreSQL slots as
# defined by the developer. Must be declared before inheriting this
# eclass. Example: POSTGRES_COMPAT=( 9.4 9.{5,6} )
if ! declare -p POSTGRES_COMPAT &>/dev/null; then
die 'Required variable POSTGRES_COMPAT not declared.'
fi
# @ECLASS-VARIABLE: _POSTGRES_INTERSECT_SLOTS
# @INTERNAL
# @DESCRIPTION:
# A Bash array containing the intersect of POSTGRES_TARGETS and
# POSTGRES_COMPAT.
export _POSTGRES_INTERSECT_SLOTS=( )
# @FUNCTION: _postgres-multi_multibuild_wrapper
# @INTERNAL
# @USAGE: _postgres-multi_multibuild_wrapper <command> [<arg> ...]
# @DESCRIPTION:
# For the given variant, set the values of the PG_SLOT, PG_CONFIG, and
# PKG_CONFIG_PATH environment variables accordingly and replace any
# appearance of @PG_SLOT@ in the command and arguments with value of
# ${PG_SLOT}.
_postgres-multi_multibuild_wrapper() {
debug-print-function ${FUNCNAME} "${@}"
export PG_SLOT=${MULTIBUILD_VARIANT}
export PG_CONFIG=$(which pg_config${MULTIBUILD_VARIANT//./})
if [[ -n ${PKG_CONFIG_PATH} ]] ; then
PKG_CONFIG_PATH="$(${PG_CONFIG} --libdir)/pkgconfig:${PKG_CONFIG_PATH}"
else
PKG_CONFIG_PATH="$(${PG_CONFIG} --libdir)/pkgconfig"
fi
export PKG_CONFIG_PATH
$(echo "${@}" | sed "s/@PG_SLOT@/${PG_SLOT}/g")
}
# @FUNCTION: postgres-multi_foreach
# @USAGE: postgres-multi_foreach <command> <arg> [<arg> ...]
# @DESCRIPTION:
# Run the given command in the package's build directory for each
# PostgreSQL slot in the intersect of POSTGRES_TARGETS and
# POSTGRES_COMPAT and user-enabled slots. The PG_CONFIG and
# PKG_CONFIG_PATH environment variables are updated on each iteration to
# point to the matching pg_config command and pkg-config metadata files,
# respectively, for the current slot. Any appearance of @PG_SLOT@ in the
# command or arguments will be substituted with the slot (e.g., 9.5) of
# the current iteration.
postgres-multi_foreach() {
local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[@]}")
multibuild_foreach_variant \
_postgres-multi_multibuild_wrapper run_in_build_dir ${@}
}
# @FUNCTION: postgres-multi_forbest
# @USAGE: postgres-multi_forbest <command> <arg> [<arg> ...]
# @DESCRIPTION:
# Run the given command in the package's build directory for the highest
# slot in the intersect of POSTGRES_COMPAT and POSTGRES_TARGETS. The
# PG_CONFIG and PKG_CONFIG_PATH environment variables are set to the
# matching pg_config command and pkg-config metadata files,
# respectively. Any appearance of @PG_SLOT@ in the command or arguments
# will be substituted with the matching slot (e.g., 9.5).
postgres-multi_forbest() {
# POSTGRES_COMPAT is reverse sorted once in postgres.eclass so
# element 0 has the highest slot version.
local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[0]}")
multibuild_foreach_variant \
_postgres-multi_multibuild_wrapper run_in_build_dir ${@}
}
# @FUNCTION: postgres-multi_pkg_setup
# @USAGE: postgres-multi_pkg_setup
# @DESCRIPTION:
# Initialize internal environment variable(s). This is required if
# pkg_setup() is declared in the ebuild.
postgres-multi_pkg_setup() {
local user_slot
for user_slot in "${POSTGRES_COMPAT[@]}"; do
use "postgres_targets_postgres${user_slot/\./_}" && \
_POSTGRES_INTERSECT_SLOTS+=( "${user_slot}" )
done
if [[ "${#_POSTGRES_INTERSECT_SLOTS[@]}" -eq "0" ]]; then
die "One of the postgres_targets_postgresSL_OT use flags must be enabled"
fi
einfo "Multibuild variants: ${_POSTGRES_INTERSECT_SLOTS[@]}"
}
# @FUNCTION: postgres-multi_src_prepare
# @USAGE: postgres-multi_src_prepare
# @DESCRIPTION:
# Calls eapply_user then copies ${S} into a build directory for each
# intersect of POSTGRES_TARGETS and POSTGRES_COMPAT.
postgres-multi_src_prepare() {
if [[ "${#_POSTGRES_INTERSECT_SLOTS[@]}" -eq "0" ]]; then
eerror "Internal array _POSTGRES_INTERSECT_SLOTS is empty."
die "Did you forget to call postgres-multi_pkg_setup?"
fi
# Check that the slot has been emerged (Should be prevented by
# Portage, but won't be caught by /usr/bin/ebuild)
local slot
for slot in ${_POSTGRES_INTERSECT_SLOTS[@]} ; do
if [[ -z $(which pg_config${slot/.} 2> /dev/null) ]] ; then
eerror
eerror "postgres_targets_postgres${slot/.} use flag is enabled, but hasn't been emerged."
eerror
die "a postgres_targets use flag is enabled, but not emerged"
fi
done
case ${EAPI:-0} in
0|1|2|3|4|5) epatch_user ;;
6) eapply_user ;;
esac
local MULTIBUILD_VARIANT
local MULTIBUILD_VARIANTS=("${_POSTGRES_INTERSECT_SLOTS[@]}")
multibuild_copy_sources
}
# @FUNCTION: postgres-multi_src_compile
# @USAGE: postgres-multi_src_compile
# @DESCRIPTION:
# Runs `emake' in each build directory
postgres-multi_src_compile() {
postgres-multi_foreach emake
}
# @FUNCTION: postgres-multi_src_install
# @USAGE: postgres-multi_src_install
# @DESCRIPTION:
# Runs `emake install DESTDIR="${D}"' in each build directory.
postgres-multi_src_install() {
postgres-multi_foreach emake install DESTDIR="${D}"
}
# @FUNCTION: postgres-multi_src_test
# @USAGE: postgres-multi_src_test
# @DESCRIPTION:
# Runs `emake installcheck' in each build directory.
postgres-multi_src_test() {
postgres-multi_foreach emake installcheck
}

View File

@ -0,0 +1,159 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit user
EXPORT_FUNCTIONS pkg_setup
# @ECLASS: postgres.eclass
# @MAINTAINER:
# PostgreSQL <pgsql-bugs@gentoo.org>
# @AUTHOR: Aaron W. Swenson <titanofold@gentoo.org>
# @BLURB: An eclass for PostgreSQL-related packages
# @DESCRIPTION:
# This eclass provides common utility functions that many
# PostgreSQL-related packages perform, such as checking that the
# currently selected PostgreSQL slot is within a range, adding a system
# user to the postgres system group, and generating dependencies.
case ${EAPI:-0} in
5|6) ;;
*) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;;
esac
# @ECLASS-VARIABLE: POSTGRES_COMPAT
# @DEFAULT_UNSET
# @DESCRIPTION:
# A Bash array containing a list of compatible PostgreSQL slots as
# defined by the developer. If declared, must be declared before
# inheriting this eclass. Example: POSTGRES_COMPAT=( 9.4 9.{5,6} )
# @ECLASS-VARIABLE: POSTGRES_USEDEP
# @DEFAULT_UNSET
# @DESCRIPTION:
# Add the 2-Style and/or 4-Style use dependencies without brackets to be used
# for POSTGRES_DEP. If declared, must be done before inheriting this eclass.
# @ECLASS-VARIABLE: POSTGRES_DEP
# @DESCRIPTION:
# An automatically generated dependency string suitable for use in
# DEPEND and RDEPEND declarations.
# @ECLASS-VARIABLE: POSTGRES_REQ_USE
# @DESCRIPTION:
# An automatically generated REQUIRED_USE-compatible string built upon
# POSTGRES_COMPAT. REQUIRED_USE="... ${POSTGRES_REQ_USE}" is only
# required if the package must build against one of the PostgreSQL slots
# declared in POSTGRES_COMPAT.
if declare -p POSTGRES_COMPAT &> /dev/null ; then
# Reverse sort the given POSTGRES_COMPAT so that the most recent
# slot is preferred over an older slot.
# -- do we care if dependencies are deterministic by USE flags?
readarray -t POSTGRES_COMPAT < <(printf '%s\n' "${POSTGRES_COMPAT[@]}" | sort -nr)
POSTGRES_DEP=""
POSTGRES_REQ_USE=" || ("
for slot in "${POSTGRES_COMPAT[@]}" ; do
POSTGRES_DEP+=" postgres_targets_postgres${slot/\./_}? ( dev-db/postgresql:${slot}="
declare -p POSTGRES_USEDEP &>/dev/null && \
POSTGRES_DEP+="[${POSTGRES_USEDEP}]"
POSTGRES_DEP+=" )"
IUSE+=" postgres_targets_postgres${slot/\./_}"
POSTGRES_REQ_USE+=" postgres_targets_postgres${slot/\./_}"
done
POSTGRES_REQ_USE+=" )"
else
POSTGRES_DEP="dev-db/postgresql:="
declare -p POSTGRES_USEDEP &>/dev/null && \
POSTGRES_DEP+="[${POSTGRES_USEDEP}]"
fi
# @FUNCTION: postgres_check_slot
# @DESCRIPTION:
# Verify that the currently selected PostgreSQL slot is set to one of
# the slots defined in POSTGRES_COMPAT. Automatically dies unless a
# POSTGRES_COMPAT slot is selected. Should be called in pkg_pretend().
postgres_check_slot() {
if ! declare -p POSTGRES_COMPAT &>/dev/null; then
die 'POSTGRES_COMPAT not declared.'
fi
# Don't die because we can't run postgresql-config during pretend.
[[ "$EBUILD_PHASE" = "pretend" && -z "$(which postgresql-config 2> /dev/null)" ]] \
&& return 0
if has $(postgresql-config show 2> /dev/null) "${POSTGRES_COMPAT[@]}"; then
return 0
else
eerror "PostgreSQL slot must be set to one of: "
eerror " ${POSTGRES_COMPAT[@]}"
die "Incompatible PostgreSQL slot eselected"
fi
}
# @FUNCTION: postgres_new_user
# @DESCRIPTION:
# Creates the "postgres" system group and user -- which is separate from
# the database user -- in addition to the developer defined user. Takes
# the same arguments as "enewuser".
postgres_new_user() {
enewgroup postgres 70
enewuser postgres 70 /bin/bash /var/lib/postgresql postgres
if [[ $# -gt 0 ]] ; then
if [[ "$1" = "postgres" ]] ; then
ewarn "Username 'postgres' implied, skipping"
else
local groups=$5
[[ -n "${groups}" ]] && groups+=",postgres" || groups="postgres"
enewuser "$1" "${2:--1}" "${3:--1}" "${4:--1}" "${groups}"
fi
fi
}
# @FUNCTION: postgres_pkg_setup
# @USAGE: postgres_pkg_setup
# @DESCRIPTION:
# Initialize environment variable(s) according to the best
# installed version of PostgreSQL that is also in POSTGRES_COMPAT. This
# is required if pkg_setup() is declared in the ebuild.
# Exports PG_SLOT, PG_CONFIG, and PKG_CONFIG_PATH.
postgres_pkg_setup() {
debug-print-function ${FUNCNAME} "${@}"
local compat_slot
local best_slot
for compat_slot in "${POSTGRES_COMPAT[@]}"; do
if use "postgres_targets_postgres${compat_slot/\./_}"; then
best_slot="${compat_slot}"
break
fi
done
if [[ -z "${best_slot}" ]]; then
local flags f
for f in "${POSTGRES_COMPAT[@]}"; do
flags+=" postgres${f/./_}"
done
eerror "POSTGRES_TARGETS must contain at least one of:"
eerror " ${flags}"
die "No suitable POSTGRES_TARGETS enabled."
fi
export PG_SLOT=${best_slot}
export PG_CONFIG=$(which pg_config${best_slot//./})
local pg_pkg_config_path="$(${PG_CONFIG} --libdir)/pkgconfig"
if [[ -n "${PKG_CONFIG_PATH}" ]]; then
export PKG_CONFIG_PATH="${pg_pkg_config_path}:${PKG_CONFIG_PATH}"
else
export PKG_CONFIG_PATH="${pg_pkg_config_path}"
fi
elog "PostgreSQL Target: ${best_slot}"
}

View File

@ -224,7 +224,7 @@ python_gen_any_dep() {
local depstr=${1}
[[ ${depstr} ]] || die "No dependency string provided"
local PYTHON_PKG_DEP out=
local i PYTHON_PKG_DEP out=
for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
local PYTHON_USEDEP="python_targets_${i}(-),python_single_target_${i}(+)"
python_export "${i}" PYTHON_PKG_DEP

View File

@ -231,7 +231,7 @@ _python_set_globals() {
PYTHON_DEPS=${deps}
PYTHON_REQUIRED_USE=${requse}
PYTHON_USEDEP=${usedep}
readonly PYTHON_DEPS PYTHON_REQUIRED_USE PYTHON_USEDEP
readonly PYTHON_DEPS PYTHON_REQUIRED_USE
fi
}
_python_set_globals
@ -242,10 +242,25 @@ if [[ ! ${_PYTHON_R1} ]]; then
# @FUNCTION: _python_validate_useflags
# @INTERNAL
# @DESCRIPTION:
# Enforce the proper setting of PYTHON_TARGETS.
# Enforce the proper setting of PYTHON_TARGETS, if PYTHON_COMPAT_OVERRIDE
# is not in effect. If it is, just warn that the flags will be ignored.
_python_validate_useflags() {
debug-print-function ${FUNCNAME} "${@}"
if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
if [[ ! ${_PYTHON_COMPAT_OVERRIDE_WARNED} ]]; then
ewarn "WARNING: PYTHON_COMPAT_OVERRIDE in effect. The following Python"
ewarn "implementations will be enabled:"
ewarn
ewarn " ${PYTHON_COMPAT_OVERRIDE}"
ewarn
ewarn "Dependencies won't be satisfied, and PYTHON_TARGETS will be ignored."
_PYTHON_COMPAT_OVERRIDE_WARNED=1
fi
# we do not use flags with PCO
return
fi
local i
for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
@ -267,8 +282,11 @@ _python_validate_useflags() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
# Remember to escape or quote the patterns to prevent shell filename
# expansion.
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# When all implementations are requested, please use ${PYTHON_USEDEP}
# instead. Please also remember to set an appropriate REQUIRED_USE
@ -287,19 +305,15 @@ _python_validate_useflags() {
python_gen_usedep() {
debug-print-function ${FUNCNAME} "${@}"
local impl pattern
local matches=()
local impl matches=()
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
matches+=(
"python_targets_${impl}(-)?"
"-python_single_target_${impl}(-)"
)
break
fi
done
if _python_impl_matches "${impl}" "${@}"; then
matches+=(
"python_targets_${impl}(-)?"
"-python_single_target_${impl}(-)"
)
fi
done
[[ ${matches[@]} ]] || die "No supported implementations match python_gen_usedep patterns: ${@}"
@ -315,6 +329,12 @@ python_gen_usedep() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# Example:
# @CODE
# PYTHON_COMPAT=( python{2_7,3_4} )
@ -328,16 +348,12 @@ python_gen_usedep() {
python_gen_useflags() {
debug-print-function ${FUNCNAME} "${@}"
local impl pattern
local matches=()
local impl matches=()
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
matches+=( "python_targets_${impl}" )
break
fi
done
if _python_impl_matches "${impl}" "${@}"; then
matches+=( "python_targets_${impl}" )
fi
done
echo "${matches[@]}"
@ -350,6 +366,12 @@ python_gen_useflags() {
# of Python implementations which are both in PYTHON_COMPAT and match
# any of the patterns passed as the remaining parameters.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# In order to enforce USE constraints on the packages, verbatim
# '${PYTHON_USEDEP}' (quoted!) may be placed in the dependency
# specification. It will get expanded within the function into a proper
@ -372,27 +394,22 @@ python_gen_useflags() {
python_gen_cond_dep() {
debug-print-function ${FUNCNAME} "${@}"
local impl pattern
local matches=()
local impl matches=()
local dep=${1}
shift
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
# substitute ${PYTHON_USEDEP} if used
# (since python_gen_usedep() will not return ${PYTHON_USEDEP}
# the code is run at most once)
if [[ ${dep} == *'${PYTHON_USEDEP}'* ]]; then
local usedep=$(python_gen_usedep "${@}")
dep=${dep//\$\{PYTHON_USEDEP\}/${usedep}}
fi
matches+=( "python_targets_${impl}? ( ${dep} )" )
break
if _python_impl_matches "${impl}" "${@}"; then
# substitute ${PYTHON_USEDEP} if used
# (since python_gen_usedep() will not return ${PYTHON_USEDEP}
# the code is run at most once)
if [[ ${dep} == *'${PYTHON_USEDEP}'* ]]; then
local usedep=$(python_gen_usedep "${@}")
dep=${dep//\$\{PYTHON_USEDEP\}/${usedep}}
fi
done
matches+=( "python_targets_${impl}? ( ${dep} )" )
fi
done
echo "${matches[@]}"
@ -407,6 +424,12 @@ python_gen_cond_dep() {
# patterns are passed, the output dependencies will be generated only
# for the implementations matching them.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# Use this function when you need to request different USE flags
# on the Python interpreter depending on package's USE flags. If you
# only need a single set of interpreter USE flags, just set
@ -429,27 +452,102 @@ python_gen_cond_dep() {
python_gen_impl_dep() {
debug-print-function ${FUNCNAME} "${@}"
local impl pattern
local matches=()
local impl matches=()
local PYTHON_REQ_USE=${1}
shift
local patterns=( "${@-*}" )
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern in "${patterns[@]}"; do
if [[ ${impl} == ${pattern} ]]; then
local PYTHON_PKG_DEP
python_export "${impl}" PYTHON_PKG_DEP
matches+=( "python_targets_${impl}? ( ${PYTHON_PKG_DEP} )" )
break
fi
done
if _python_impl_matches "${impl}" "${patterns[@]}"; then
local PYTHON_PKG_DEP
python_export "${impl}" PYTHON_PKG_DEP
matches+=( "python_targets_${impl}? ( ${PYTHON_PKG_DEP} )" )
fi
done
echo "${matches[@]}"
}
# @FUNCTION: python_gen_any_dep
# @USAGE: <dependency-block> [<impl-pattern>...]
# @DESCRIPTION:
# Generate an any-of dependency that enforces a version match between
# the Python interpreter and Python packages. <dependency-block> needs
# to list one or more dependencies with verbatim '${PYTHON_USEDEP}'
# references (quoted!) that will get expanded inside the function.
# Optionally, patterns may be specified to restrict the dependency
# to a subset of Python implementations supported by the ebuild.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# This should be used along with an appropriate python_check_deps()
# that checks which of the any-of blocks were matched, and python_setup
# call that enables use of the matched implementation.
#
# Example use:
# @CODE
# DEPEND="$(python_gen_any_dep '
# dev-python/foo[${PYTHON_USEDEP}]
# || ( dev-python/bar[${PYTHON_USEDEP}]
# dev-python/baz[${PYTHON_USEDEP}] )' -2)"
#
# python_check_deps() {
# has_version "dev-python/foo[${PYTHON_USEDEP}]" \
# && { has_version "dev-python/bar[${PYTHON_USEDEP}]" \
# || has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
# }
#
# src_compile() {
# python_foreach_impl usual_code
#
# # some common post-build task that requires Python 2
# python_setup -2
# emake frobnicate
# }
# @CODE
#
# Example value:
# @CODE
# || (
# (
# dev-lang/python:2.7
# dev-python/foo[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
# || ( dev-python/bar[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
# dev-python/baz[python_targets_python2_7(-)?,python_single_target_python2_7(+)?] )
# )
# (
# dev-lang/python:3.3
# dev-python/foo[python_targets_python3_3(-)?,python_single_target_python3_3(+)?]
# || ( dev-python/bar[python_targets_python3_3(-)?,python_single_target_python3_3(+)?]
# dev-python/baz[python_targets_python3_3(-)?,python_single_target_python3_3(+)?] )
# )
# )
# @CODE
python_gen_any_dep() {
debug-print-function ${FUNCNAME} "${@}"
local depstr=${1}
[[ ${depstr} ]] || die "No dependency string provided"
shift
local i PYTHON_PKG_DEP out=
for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
if _python_impl_matches "${i}" "${@-*}"; then
local PYTHON_USEDEP="python_targets_${i}(-),python_single_target_${i}(+)"
python_export "${i}" PYTHON_PKG_DEP
local i_depstr=${depstr//\$\{PYTHON_USEDEP\}/${PYTHON_USEDEP}}
# note: need to strip '=' slot operator for || deps
out="( ${PYTHON_PKG_DEP%=} ${i_depstr} ) ${out}"
fi
done
echo "|| ( ${out})"
}
# @ECLASS-VARIABLE: BUILD_DIR
# @DESCRIPTION:
# The current build directory. In global scope, it is supposed to
@ -487,23 +585,13 @@ python_copy_sources() {
# @DESCRIPTION:
# Set up the enabled implementation list.
_python_obtain_impls() {
if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
if [[ ! ${_PYTHON_COMPAT_OVERRIDE_WARNED} ]]; then
ewarn "WARNING: PYTHON_COMPAT_OVERRIDE in effect. The following Python"
ewarn "implementations will be enabled:"
ewarn
ewarn " ${PYTHON_COMPAT_OVERRIDE}"
ewarn
ewarn "Dependencies won't be satisfied, and PYTHON_TARGETS will be ignored."
_PYTHON_COMPAT_OVERRIDE_WARNED=1
fi
_python_validate_useflags
if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
MULTIBUILD_VARIANTS=( ${PYTHON_COMPAT_OVERRIDE} )
return
fi
_python_validate_useflags
MULTIBUILD_VARIANTS=()
local impl
@ -552,59 +640,63 @@ python_foreach_impl() {
multibuild_foreach_variant _python_multibuild_wrapper "${@}"
}
# @FUNCTION: python_parallel_foreach_impl
# @USAGE: <command> [<args>...]
# @DESCRIPTION:
# Run the given command for each of the enabled Python implementations.
# If additional parameters are passed, they will be passed through
# to the command.
#
# The function will return 0 status if all invocations succeed.
# Otherwise, the return code from first failing invocation will
# be returned.
#
# For each command being run, EPYTHON, PYTHON and BUILD_DIR are set
# locally, and the former two are exported to the command environment.
#
# This command used to be the parallel variant of python_foreach_impl.
# However, the parallel run support has been removed to simplify
# the eclasses and make them more predictable and therefore it is now
# only a deprecated alias to python_foreach_impl.
python_parallel_foreach_impl() {
debug-print-function ${FUNCNAME} "${@}"
[[ ${EAPI} == [45] ]] || die "${FUNCNAME} is banned in EAPI ${EAPI}"
if [[ ! ${_PYTHON_PARALLEL_WARNED} ]]; then
eqawarn "python_parallel_foreach_impl() is no longer meaningful. All runs"
eqawarn "are non-parallel now. Please replace the call with python_foreach_impl."
_PYTHON_PARALLEL_WARNED=1
fi
local MULTIBUILD_VARIANTS
_python_obtain_impls
multibuild_foreach_variant _python_multibuild_wrapper "${@}"
}
# @FUNCTION: python_setup
# @USAGE: [<impl-pattern>...]
# @DESCRIPTION:
# Find the best (most preferred) Python implementation that is enabled
# and matches at least one of the patterns passed (or '*' if no patterns
# passed). Set the Python build environment up for that implementation.
# Find the best (most preferred) Python implementation that is suitable
# for running common Python code. Set the Python build environment up
# for that implementation. This function has two modes of operation:
# pure and any-of dep.
#
# The pure mode is used if python_check_deps() function is not declared.
# In this case, an implementation is considered suitable if it is
# supported (in PYTHON_COMPAT), enabled (via USE flags) and matches
# at least one of the patterns passed (or '*' if no patterns passed).
#
# Implementation restrictions in the pure mode need to be accompanied
# by appropriate REQUIRED_USE constraints. Otherwise, the eclass may
# fail at build time due to unsatisfied dependencies.
#
# The any-of dep mode is used if python_check_deps() is declared.
# In this mode, an implementation is considered suitable if it is
# supported, matches at least one of the patterns and python_check_deps()
# has successful return code. USE flags are not considered.
#
# The python_check_deps() function in the any-of mode needs to be
# accompanied by appropriate any-of dependencies.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# This function needs to be used when Python is being called outside
# of python_foreach_impl calls (e.g. for shared processes like doc
# building). python_foreach_impl sets up the build environment itself.
#
# If the specific commands support only a subset of Python
# implementations, patterns need to be passed to restrict the allowed
# implementations.
#
# Example:
# Pure mode example:
# @CODE
# DEPEND="doc? ( dev-python/epydoc[$(python_gen_usedep 'python2*')] )"
# REQUIRED_USE="doc? ( $(python_gen_useflags 'python2*') )"
#
# src_compile() {
# #...
# if use doc; then
# python_setup 'python2*'
# make doc
# fi
# }
# @CODE
#
# Any-of mode example:
# @CODE
# DEPEND="doc? (
# $(python_gen_any_dep 'dev-python/epydoc[${PYTHON_USEDEP}]' 'python2*') )"
#
# python_check_deps() {
# has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
# }
#
# src_compile() {
# #...
@ -617,19 +709,48 @@ python_parallel_foreach_impl() {
python_setup() {
debug-print-function ${FUNCNAME} "${@}"
local best_impl patterns=( "${@-*}" )
_python_try_impl() {
local pattern
for pattern in "${patterns[@]}"; do
if [[ ${EPYTHON} == ${pattern} ]]; then
best_impl=${EPYTHON}
fi
done
}
python_foreach_impl _python_try_impl
unset -f _python_try_impl
_python_validate_useflags
local pycompat=( "${PYTHON_COMPAT[@]}" )
if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
pycompat=( ${PYTHON_COMPAT_OVERRIDE} )
fi
if [[ ! ${best_impl} ]]; then
local has_check_deps
declare -f python_check_deps >/dev/null && has_check_deps=1
# (reverse iteration -- newest impl first)
local found
for (( i = ${#_PYTHON_SUPPORTED_IMPLS[@]} - 1; i >= 0; i-- )); do
local impl=${_PYTHON_SUPPORTED_IMPLS[i]}
# check PYTHON_COMPAT[_OVERRIDE]
has "${impl}" "${pycompat[@]}" || continue
# match USE flags only if override is not in effect
# and python_check_deps() is not defined
if [[ ! ${PYTHON_COMPAT_OVERRIDE} && ! ${has_check_deps} ]]; then
use "python_targets_${impl}" || continue
fi
# check patterns
_python_impl_matches "${impl}" "${@-*}" || continue
python_export "${impl}" EPYTHON PYTHON
# if python_check_deps() is declared, switch into any-of mode
if [[ ${has_check_deps} ]]; then
# first check if the interpreter is installed
python_is_installed "${impl}" || continue
# then run python_check_deps
local PYTHON_USEDEP="python_targets_${impl}(-),python_single_target_${impl}(+)"
python_check_deps || continue
fi
found=1
break
done
if [[ ! ${found} ]]; then
eerror "${FUNCNAME}: none of the enabled implementation matched the patterns."
eerror " patterns: ${@-'(*)'}"
eerror "Likely a REQUIRED_USE constraint (possibly USE-conditional) is missing."
@ -638,7 +759,6 @@ python_setup() {
die "${FUNCNAME}: no enabled implementation satisfy requirements"
fi
python_export "${best_impl}" EPYTHON PYTHON
python_wrapper_setup
}

View File

@ -271,8 +271,11 @@ if [[ ! ${_PYTHON_SINGLE_R1} ]]; then
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
# Remember to escape or quote the patterns to prevent shell filename
# expansion.
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# When all implementations are requested, please use ${PYTHON_USEDEP}
# instead. Please also remember to set an appropriate REQUIRED_USE
@ -291,19 +294,15 @@ if [[ ! ${_PYTHON_SINGLE_R1} ]]; then
python_gen_usedep() {
debug-print-function ${FUNCNAME} "${@}"
local impl pattern
local matches=()
local impl matches=()
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
matches+=(
"python_targets_${impl}(-)?"
"python_single_target_${impl}(+)?"
)
break
fi
done
if _python_impl_matches "${impl}" "${@}"; then
matches+=(
"python_targets_${impl}(-)?"
"python_single_target_${impl}(+)?"
)
fi
done
[[ ${matches[@]} ]] || die "No supported implementations match python_gen_usedep patterns: ${@}"
@ -319,6 +318,12 @@ python_gen_usedep() {
# are both in PYTHON_COMPAT and match any of the patterns passed
# as parameters to the function.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# Example:
# @CODE
# PYTHON_COMPAT=( python{2_7,3_4} )
@ -332,8 +337,7 @@ python_gen_usedep() {
python_gen_useflags() {
debug-print-function ${FUNCNAME} "${@}"
local flag_prefix impl pattern
local matches=()
local flag_prefix impl matches=()
if [[ ${#_PYTHON_SUPPORTED_IMPLS[@]} -eq 1 ]]; then
flag_prefix=python_targets
@ -342,12 +346,9 @@ python_gen_useflags() {
fi
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
matches+=( "${flag_prefix}_${impl}" )
break
fi
done
if _python_impl_matches "${impl}" "${@}"; then
matches+=( "${flag_prefix}_${impl}" )
fi
done
echo "${matches[@]}"
@ -360,6 +361,12 @@ python_gen_useflags() {
# of Python implementations which are both in PYTHON_COMPAT and match
# any of the patterns passed as the remaining parameters.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# In order to enforce USE constraints on the packages, verbatim
# '${PYTHON_USEDEP}' (quoted!) may be placed in the dependency
# specification. It will get expanded within the function into a proper
@ -382,8 +389,7 @@ python_gen_useflags() {
python_gen_cond_dep() {
debug-print-function ${FUNCNAME} "${@}"
local flag_prefix impl pattern
local matches=()
local flag_prefix impl matches=()
if [[ ${#_PYTHON_SUPPORTED_IMPLS[@]} -eq 1 ]]; then
flag_prefix=python_targets
@ -395,20 +401,17 @@ python_gen_cond_dep() {
shift
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern; do
if [[ ${impl} == ${pattern} ]]; then
# substitute ${PYTHON_USEDEP} if used
# (since python_gen_usedep() will not return ${PYTHON_USEDEP}
# the code is run at most once)
if [[ ${dep} == *'${PYTHON_USEDEP}'* ]]; then
local usedep=$(python_gen_usedep "${@}")
dep=${dep//\$\{PYTHON_USEDEP\}/${usedep}}
fi
matches+=( "${flag_prefix}_${impl}? ( ${dep} )" )
break
if _python_impl_matches "${impl}" "${@}"; then
# substitute ${PYTHON_USEDEP} if used
# (since python_gen_usedep() will not return ${PYTHON_USEDEP}
# the code is run at most once)
if [[ ${dep} == *'${PYTHON_USEDEP}'* ]]; then
local usedep=$(python_gen_usedep "${@}")
dep=${dep//\$\{PYTHON_USEDEP\}/${usedep}}
fi
done
matches+=( "${flag_prefix}_${impl}? ( ${dep} )" )
fi
done
echo "${matches[@]}"
@ -423,6 +426,12 @@ python_gen_cond_dep() {
# patterns are passed, the output dependencies will be generated only
# for the implementations matching them.
#
# The patterns can be either fnmatch-style patterns (matched via bash
# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
# appropriately all enabled Python 2/3 implementations (alike
# python_is_python3). Remember to escape or quote the fnmatch patterns
# to prevent accidental shell filename expansion.
#
# Use this function when you need to request different USE flags
# on the Python interpreter depending on package's USE flags. If you
# only need a single set of interpreter USE flags, just set
@ -459,14 +468,11 @@ python_gen_impl_dep() {
local patterns=( "${@-*}" )
for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
for pattern in "${patterns[@]}"; do
if [[ ${impl} == ${pattern} ]]; then
local PYTHON_PKG_DEP
python_export "${impl}" PYTHON_PKG_DEP
matches+=( "${flag_prefix}_${impl}? ( ${PYTHON_PKG_DEP} )" )
break
fi
done
if _python_impl_matches "${impl}" "${patterns[@]}"; then
local PYTHON_PKG_DEP
python_export "${impl}" PYTHON_PKG_DEP
matches+=( "${flag_prefix}_${impl}? ( ${PYTHON_PKG_DEP} )" )
fi
done
echo "${matches[@]}"

View File

@ -47,6 +47,18 @@ _PYTHON_ALL_IMPLS=(
)
readonly _PYTHON_ALL_IMPLS
# @ECLASS-VARIABLE: PYTHON_COMPAT_NO_STRICT
# @INTERNAL
# @DESCRIPTION:
# Set to a non-empty value in order to make eclass tolerate (ignore)
# unknown implementations in PYTHON_COMPAT.
#
# This is intended to be set by the user when using ebuilds that may
# have unknown (newer) implementations in PYTHON_COMPAT. The assumption
# is that the ebuilds are intended to be used within multiple contexts
# which can involve revisions of this eclass that support a different
# set of Python implementations.
# @FUNCTION: _python_impl_supported
# @USAGE: <impl>
# @INTERNAL
@ -79,6 +91,7 @@ _python_impl_supported() {
fi
;;
*)
[[ ${PYTHON_COMPAT_NO_STRICT} ]] && return 1
die "Invalid implementation in PYTHON_COMPAT: ${impl}"
esac
}
@ -149,6 +162,40 @@ _python_set_impls() {
fi
}
# @FUNCTION: _python_impl_matches
# @USAGE: <impl> <pattern>...
# @INTERNAL
# @DESCRIPTION:
# Check whether the specified <impl> matches at least one
# of the patterns following it. Return 0 if it does, 1 otherwise.
#
# <impl> can be in PYTHON_COMPAT or EPYTHON form. The patterns can be
# either:
# a) fnmatch-style patterns, e.g. 'python2*', 'pypy'...
# b) '-2' to indicate all Python 2 variants (= !python_is_python3)
# c) '-3' to indicate all Python 3 variants (= python_is_python3)
_python_impl_matches() {
[[ ${#} -ge 2 ]] || die "${FUNCNAME}: takes at least 2 parameters"
local impl=${1} pattern
shift
for pattern; do
if [[ ${pattern} == -2 ]]; then
! python_is_python3 "${impl}"
return
elif [[ ${pattern} == -3 ]]; then
python_is_python3 "${impl}"
return
# unify value style to allow lax matching
elif [[ ${impl/./_} == ${pattern/./_} ]]; then
return 0
fi
done
return 1
}
# @ECLASS-VARIABLE: PYTHON
# @DEFAULT_UNSET
# @DESCRIPTION:
@ -810,11 +857,19 @@ python_newscript() {
# The <new-path> can either be an absolute target system path (in which
# case it needs to start with a slash, and ${ED} will be prepended to
# it) or relative to the implementation's site-packages directory
# (then it must not start with a slash).
# (then it must not start with a slash). The relative path can be
# specified either using the Python package notation (separated by dots)
# or the directory notation (using slashes).
#
# When not set explicitly, the modules are installed to the top
# site-packages directory.
#
# In the relative case, the exact path is determined directly
# by each python_doscript/python_newscript function. Therefore,
# python_moduleinto can be safely called before establishing the Python
# interpreter and/or a single call can be used to set the path correctly
# for multiple implementations, as can be seen in the following example.
#
# Example:
# @CODE
# src_install() {
@ -823,12 +878,6 @@ python_newscript() {
# python_foreach_impl python_domodule baz.py
# }
# @CODE
# Set the current module root. The new value will be stored
# in the 'python_moduleroot' environment variable. The new value need
# be relative to the site-packages root.
#
# Alternatively, you can set the variable directly.
python_moduleinto() {
debug-print-function ${FUNCNAME} "${@}"
@ -867,7 +916,7 @@ python_domodule() {
local PYTHON_SITEDIR=${PYTHON_SITEDIR}
[[ ${PYTHON_SITEDIR} ]] || python_export PYTHON_SITEDIR
d=${PYTHON_SITEDIR#${EPREFIX}}/${python_moduleroot}
d=${PYTHON_SITEDIR#${EPREFIX}}/${python_moduleroot//.//}
fi
(
@ -994,7 +1043,7 @@ python_wrapper_setup() {
for x in "${nonsupp[@]}"; do
cat >"${workdir}"/bin/${x} <<-_EOF_ || die
#!/bin/sh
echo "${x} is not supported by ${EPYTHON}" >&2
echo "${ECLASS}: ${FUNCNAME}: ${x} is not supported by ${EPYTHON} (PYTHON_COMPAT)" >&2
exit 127
_EOF_
chmod +x "${workdir}"/bin/${x} || die

View File

@ -16,8 +16,8 @@
if [[ -z ${_QMAKE_UTILS_ECLASS} ]]; then
_QMAKE_UTILS_ECLASS=1
[[ ${EAPI:-0} == [012345] ]] && inherit multilib
inherit eutils toolchain-funcs
[[ ${EAPI:-0} == [012345] ]] && inherit eutils multilib
inherit estack toolchain-funcs
# @FUNCTION: qt4_get_bindir
# @DESCRIPTION:
@ -184,7 +184,7 @@ eqmake4() {
# Make sure the CONFIG variable is correctly set for both release and debug builds.
local config_add=release
local config_remove=debug
if use_if_iuse debug; then
if in_iuse debug && use debug; then
config_add=debug
config_remove=release
fi

View File

@ -85,12 +85,7 @@ case ${PV} in
# official stable release
QT5_BUILD_TYPE="release"
MY_P=${QT5_MODULE}-opensource-src-${PV}
# bug 586646
if [[ ${PV} = 5.6.1 ]]; then
SRC_URI="https://download.qt.io/official_releases/qt/${PV%.*}/${PV}-1/submodules/${MY_P}-1.tar.xz"
else
SRC_URI="https://download.qt.io/official_releases/qt/${PV%.*}/${PV}/submodules/${MY_P}.tar.xz"
fi
SRC_URI="https://download.qt.io/official_releases/qt/${PV%.*}/${PV}/submodules/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
;;
esac

View File

@ -42,35 +42,24 @@ if [ "${PV#9999}" != "${PV}" ] ; then
SCM="git-r3"
fi
# @ECLASS-VARIABLE: PYTHON_COMPAT
# @DESCRIPTION:
# Tells the eclass the package has python code and forwards it to python-r1.eclass.
PYTHON_ECLASS=""
CATKIN_PYTHON_USEDEP=""
if [ -n "${PYTHON_COMPAT}" ] ; then
PYTHON_ECLASS="python-r1"
fi
# This should be temporary. ROS only really works with one global python
# version. The idea here is to have a ROS_COMPAT in the same vein as
# PYTHON_COMPAT where packages would define what distro they can work on, then
# we'd have ros_distro_gentoo_python_2_7 & co plus the OSRF ones (lunar, etc.).
# Note that this uncondtionally pulls python but in the ROS world there will
# most certainly be something pulling python anyway.
PYTHON_COMPAT=( python2_7 )
inherit ${SCM} ${PYTHON_ECLASS} cmake-utils flag-o-matic
inherit ${SCM} python-r1 cmake-utils flag-o-matic
CATKIN_DO_PYTHON_MULTIBUILD=""
if [ -n "${PYTHON_COMPAT}" ] ; then
CATKIN_PYTHON_USEDEP="[${PYTHON_USEDEP}]"
CATKIN_DO_PYTHON_MULTIBUILD="yes"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
fi
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
IUSE="test"
RDEPEND="
dev-util/catkin${CATKIN_PYTHON_USEDEP}
dev-python/empy${CATKIN_PYTHON_USEDEP}
RDEPEND="${PYTHON_DEPS}"
DEPEND="${RDEPEND}
dev-util/catkin[${PYTHON_USEDEP}]
dev-python/empy[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
RDEPEND="${RDEPEND} ${PYTHON_DEPS}"
DEPEND="${DEPEND} ${PYTHON_DEPS}"
fi
# @ECLASS-VARIABLE: CATKIN_HAS_MESSAGES
# @DESCRIPTION:
@ -85,16 +74,16 @@ fi
if [ -n "${CATKIN_HAS_MESSAGES}" ] ; then
IUSE="${IUSE} +ros_messages_python +ros_messages_cxx ros_messages_eus ros_messages_lisp ros_messages_nodejs"
RDEPEND="${RDEPEND}
ros_messages_cxx? ( dev-ros/gencpp:=${CATKIN_PYTHON_USEDEP} )
ros_messages_eus? ( dev-ros/geneus:=${CATKIN_PYTHON_USEDEP} )
ros_messages_python? ( dev-ros/genpy:=${CATKIN_PYTHON_USEDEP} )
ros_messages_lisp? ( dev-ros/genlisp:=${CATKIN_PYTHON_USEDEP} )
ros_messages_nodejs? ( dev-ros/gennodejs:=${CATKIN_PYTHON_USEDEP} )
ros_messages_cxx? ( dev-ros/gencpp:= dev-ros/gencpp[${PYTHON_USEDEP}] )
ros_messages_eus? ( dev-ros/geneus:= dev-ros/geneus[${PYTHON_USEDEP}] )
ros_messages_python? ( dev-ros/genpy:= dev-ros/genpy[${PYTHON_USEDEP}] )
ros_messages_lisp? ( dev-ros/genlisp:= dev-ros/genlisp[${PYTHON_USEDEP}] )
ros_messages_nodejs? ( dev-ros/gennodejs:= dev-ros/gennodejs[${PYTHON_USEDEP}] )
dev-ros/message_runtime
"
DEPEND="${DEPEND} ${RDEPEND}
dev-ros/message_generation
dev-ros/genmsg${CATKIN_PYTHON_USEDEP}
dev-ros/genmsg[${PYTHON_USEDEP}]
"
if [ -n "${CATKIN_MESSAGES_TRANSITIVE_DEPS}" ] ; then
for i in ${CATKIN_MESSAGES_TRANSITIVE_DEPS} ; do
@ -147,7 +136,7 @@ HOMEPAGE="http://wiki.ros.org/${PN}"
# by installing a recursive CMakeLists.txt to handle bundles.
ros-catkin_src_prepare() {
# If no multibuild, just use cmake IN_SOURCE support
[ -n "${CATKIN_IN_SOURCE_BUILD}" ] && [ -z "${CATKIN_DO_PYTHON_MULTIBUILD}" ] && export CMAKE_IN_SOURCE_BUILD=yes
[ -n "${CATKIN_IN_SOURCE_BUILD}" ] && export CMAKE_IN_SOURCE_BUILD=yes
cmake-utils_src_prepare
@ -155,31 +144,20 @@ ros-catkin_src_prepare() {
catkin_init_workspace || die
fi
# If python multibuild, copy the sources
[ -n "${CATKIN_IN_SOURCE_BUILD}" ] && [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] && python_copy_sources
# Most packages require C++11 these days. Do it here, in src_prepare so that
# ebuilds can override it in src_configure.
append-cxxflags '-std=c++11'
}
# @FUNCTION: ros-catkin_src_configure_internal
# @FUNCTION: ros-catkin_python_setup
# @DESCRIPTION:
# Internal decoration of cmake-utils_src_configure to handle multiple python installs.
ros-catkin_src_configure_internal() {
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
local sitedir="$(python_get_sitedir)"
local mycmakeargs=(
"${mycmakeargs[@]}"
-DPYTHON_EXECUTABLE="${PYTHON}"
-DPYTHON_INSTALL_DIR="${sitedir#${EPREFIX}/usr/}"
)
python_export PYTHON_SCRIPTDIR
if [ -n "${CATKIN_IN_SOURCE_BUILD}" ] ; then
export CMAKE_USE_DIR="${BUILD_DIR}"
fi
fi
cmake-utils_src_configure "${@}"
# Sets up python environment for ROS packages.
ros-catkin_python_setup() {
# Todo: Need to match this with ros distro.
local pyimpl="${PYTHON_COMPAT[0]}"
python_export "${pyimpl}" EPYTHON PYTHON
python_wrapper_setup
python_export PYTHON_SCRIPTDIR
}
# @VARIABLE: mycatkincmakeargs
@ -192,6 +170,8 @@ ros-catkin_src_configure_internal() {
# @DESCRIPTION:
# Configures a catkin-based package.
ros-catkin_src_configure() {
ros-catkin_python_setup
export CATKIN_PREFIX_PATH="${EPREFIX}/usr"
export ROS_ROOT="${EPREFIX}/usr/share/ros"
if [ -n "${CATKIN_HAS_MESSAGES}" ] ; then
@ -203,38 +183,42 @@ ros-catkin_src_configure() {
use ros_messages_nodejs || ROS_LANG_DISABLE="${ROS_LANG_DISABLE}:gennodejs"
export ROS_LANG_DISABLE
fi
local mycmakeargs=(
"$(cmake-utils_use test CATKIN_ENABLE_TESTING)"
"-DCATKIN_BUILD_BINARY_PACKAGE=ON"
"-DCATKIN_PREFIX_PATH=${SYSROOT:-${EROOT}}/usr"
"${mycatkincmakeargs[@]}"
)
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
python_foreach_impl ros-catkin_src_configure_internal "${@}"
else
ros-catkin_src_configure_internal "${@}"
local sitedir="$(python_get_sitedir)"
mycmakeargs+=(
-DPYTHON_EXECUTABLE="${PYTHON}"
-DPYTHON_INSTALL_DIR="${sitedir#${EPREFIX}/usr/}"
)
if [ -n "${CATKIN_IN_SOURCE_BUILD}" ] ; then
export CMAKE_USE_DIR="${BUILD_DIR}"
fi
cmake-utils_src_configure "${@}"
}
# @FUNCTION: ros-catkin_src_compile
# @DESCRIPTION:
# Builds a catkin-based package.
ros-catkin_src_compile() {
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
if [ -n "${CATKIN_IN_SOURCE_BUILD}" ] ; then
export CMAKE_USE_DIR="${BUILD_DIR}"
fi
python_foreach_impl cmake-utils_src_compile "${@}"
else
cmake-utils_src_compile "${@}"
fi
ros-catkin_python_setup
cmake-utils_src_compile "${@}"
}
# @FUNCTION: ros-catkin_src_test_internal
# @FUNCTION: ros-catkin_src_test
# @DESCRIPTION:
# Decorator around cmake-utils_src_test to ensure tests are built before running them.
ros-catkin_src_test_internal() {
# Run the tests of a catkin-based package.
ros-catkin_src_test() {
cd "${BUILD_DIR}" || die
ros-catkin_python_setup
# Regenerate env for tests, PYTHONPATH is not set properly otherwise...
if [ -f catkin_generated/generate_cached_setup.py ] ; then
einfo "Regenerating setup_cached.sh for tests"
@ -248,25 +232,16 @@ ros-catkin_src_test_internal() {
cmake-utils_src_test "${@}"
}
# @FUNCTION: ros-catkin_src_test
# @FUNCTION: ros-catkin_src_install
# @DESCRIPTION:
# Run the tests of a catkin-based package.
ros-catkin_src_test() {
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
python_foreach_impl ros-catkin_src_test_internal "${@}"
else
ros-catkin_src_test_internal "${@}"
fi
}
# Installs a catkin-based package.
ros-catkin_src_install() {
ros-catkin_python_setup
# @FUNCTION: ros-catkin_src_install_with_python
# @DESCRIPTION:
# Decorator around cmake-utils_src_install to ensure python scripts are properly handled w.r.t. python-exec2.
ros-catkin_src_install_with_python() {
python_export PYTHON_SCRIPTDIR
if [ -n "${CATKIN_IN_SOURCE_BUILD}" ] ; then
export CMAKE_USE_DIR="${BUILD_DIR}"
fi
cmake-utils_src_install "${@}"
if [ ! -f "${T}/.catkin_python_symlinks_generated" -a -d "${D}/${PYTHON_SCRIPTDIR}" ]; then
dodir /usr/bin
@ -277,15 +252,4 @@ ros-catkin_src_install_with_python() {
fi
}
# @FUNCTION: ros-catkin_src_install
# @DESCRIPTION:
# Installs a catkin-based package.
ros-catkin_src_install() {
if [ -n "${CATKIN_DO_PYTHON_MULTIBUILD}" ] ; then
python_foreach_impl ros-catkin_src_install_with_python "${@}"
else
cmake-utils_src_install "${@}"
fi
}
EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install

View File

@ -336,7 +336,7 @@ ruby_fakegem_binwrapper() {
# calling the script by default (see for instance the
# JRuby-specific commands).
local rubycmd=
for implementation in ${USE_RUBY}; do
for implementation in $(_ruby_get_all_impls); do
# ignore non-enabled implementations
use ruby_targets_${implementation} || continue
if [ -z $rubycmd ]; then
@ -505,7 +505,7 @@ all_fakegem_install() {
[[ -d ${dir} ]] || continue
pushd ${dir} &>/dev/null || die
dohtml -r * || die "failed to install documentation"
dodoc -r * || die "failed to install documentation"
popd &>/dev/null || die
done
fi

View File

@ -14,13 +14,10 @@
# and their incorporation into the Gentoo Linux system.
#
# Currently available targets are:
# * ruby19 - Ruby (MRI) 1.9.x
# * ruby20 - Ruby (MRI) 2.0.x
# * ruby21 - Ruby (MRI) 2.1.x
# * ruby22 - Ruby (MRI) 2.2.x
# * ruby23 - Ruby (MRI) 2.3.x
# * ruby24 - Ruby (MRI) 2.4.x
# * jruby - JRuby
# * rbx - Rubinius
#
# This eclass does not define the implementation of the configure,
@ -109,6 +106,24 @@ ruby_implementation_depend() {
_ruby_implementation_depend $1
}
# @FUNCTION: _ruby_get_all_impls
# @INTERNAL
# @RETURN: list of valid values in USE_RUBY
# Return a list of valid implementations in USE_RUBY, skipping the old
# implementations that are no longer supported.
_ruby_get_all_impls() {
local i
for i in ${USE_RUBY}; do
case ${i} in
# removed implementations
ruby19|ruby20|jruby)
;;
*)
echo ${i};;
esac
done
}
# @FUNCTION: ruby_samelib
# @RETURN: use flag string with current ruby implementations
# @DESCRIPTION:
@ -118,7 +133,7 @@ ruby_implementation_depend() {
# more complex dependencies.
ruby_samelib() {
local res=
for _ruby_implementation in $USE_RUBY; do
for _ruby_implementation in $(_ruby_get_all_impls); do
has -${_ruby_implementation} $@ || \
res="${res}ruby_targets_${_ruby_implementation}?,"
done
@ -159,7 +174,7 @@ ruby_implementation_command() {
_ruby_atoms_samelib() {
local atoms=$(_ruby_atoms_samelib_generic "$*")
for _ruby_implementation in $USE_RUBY; do
for _ruby_implementation in $(_ruby_get_all_impls); do
echo "${atoms//RUBYTARGET/ruby_targets_${_ruby_implementation}}"
done
}
@ -243,7 +258,7 @@ ruby_add_bdepend() {
# Gets an array of ruby use targets enabled by the user
ruby_get_use_implementations() {
local i implementation
for implementation in ${USE_RUBY}; do
for implementation in $(_ruby_get_all_impls); do
use ruby_targets_${implementation} && i+=" ${implementation}"
done
echo $i
@ -254,7 +269,7 @@ ruby_get_use_implementations() {
# Gets an array of ruby use targets that the ebuild sets
ruby_get_use_targets() {
local t implementation
for implementation in ${USE_RUBY}; do
for implementation in $(_ruby_get_all_impls); do
t+=" ruby_targets_${implementation}"
done
echo $t
@ -278,7 +293,7 @@ ruby_get_use_targets() {
# RDEPEND="${DEPEND}"
ruby_implementations_depend() {
local depend
for _ruby_implementation in ${USE_RUBY}; do
for _ruby_implementation in $(_ruby_get_all_impls); do
depend="${depend}${depend+ }ruby_targets_${_ruby_implementation}? ( $(ruby_implementation_depend $_ruby_implementation) )"
done
echo "${depend}"
@ -358,7 +373,7 @@ _ruby_invoke_environment() {
_ruby_each_implementation() {
local invoked=no
for _ruby_implementation in ${USE_RUBY}; do
for _ruby_implementation in $(_ruby_get_all_impls); do
# only proceed if it's requested
use ruby_targets_${_ruby_implementation} || continue
@ -374,7 +389,7 @@ _ruby_each_implementation() {
if [[ ${invoked} == "no" ]]; then
eerror "You need to select at least one compatible Ruby installation target via RUBY_TARGETS in make.conf."
eerror "Compatible targets for this package are: ${USE_RUBY}"
eerror "Compatible targets for this package are: $(_ruby_get_all_impls)"
eerror
eerror "See https://www.gentoo.org/proj/en/prog_lang/ruby/index.xml#doc_chap3 for more information."
eerror

View File

@ -27,10 +27,10 @@ if [[ ! ${_RUBY_UTILS} ]]; then
# provide for a better first installation experience.
# All RUBY_TARGETS
RUBY_TARGETS_PREFERENCE="ruby21 "
RUBY_TARGETS_PREFERENCE="ruby22 ruby21 "
# All other active ruby targets
RUBY_TARGETS_PREFERENCE+="ruby22 ruby23 ruby24"
RUBY_TARGETS_PREFERENCE+="ruby23 ruby24"
_ruby_implementation_depend() {

View File

@ -1,4 +1,4 @@
# Copyright 1999-2014 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: ssl-cert.eclass
@ -66,7 +66,8 @@ gen_cnf() {
# These can be overridden in the ebuild
SSL_DAYS="${SSL_DAYS:-730}"
SSL_BITS="${SSL_BITS:-1024}"
SSL_BITS="${SSL_BITS:-4096}"
SSL_MD="${SSL_MD:-sha256}"
SSL_COUNTRY="${SSL_COUNTRY:-US}"
SSL_STATE="${SSL_STATE:-California}"
SSL_LOCALITY="${SSL_LOCALITY:-Santa Barbara}"
@ -166,6 +167,7 @@ gen_crt() {
if [ "${1}" ] ; then
ebegin "Generating self-signed X.509 Certificate for CA"
openssl x509 -extfile "${SSL_CONF}" \
-${SSL_MD} \
-days ${SSL_DAYS} -req -signkey "${base}.key" \
-in "${base}.csr" -out "${base}.crt" &>/dev/null
else
@ -173,7 +175,7 @@ gen_crt() {
ebegin "Generating authority-signed X.509 Certificate"
openssl x509 -extfile "${SSL_CONF}" \
-days ${SSL_DAYS} -req -CAserial "${SSL_SERIAL}" \
-CAkey "${ca}.key" -CA "${ca}.crt" \
-CAkey "${ca}.key" -CA "${ca}.crt" -${SSL_MD} \
-in "${base}.csr" -out "${base}.crt" &>/dev/null
fi
eend $?

View File

@ -178,12 +178,12 @@ systemd_newuserunit() {
}
# @FUNCTION: systemd_install_serviced
# @USAGE: <conf-file> [<service.d>]
# @USAGE: <conf-file> [<service>]
# @DESCRIPTION:
# Install the file <conf-file> as service.d/00gentoo.conf template.
# The <service.d> argument specifies the configured service name.
# If not specified, the configuration file name will be used with .conf
# suffix stripped (e.g. foo.service.conf -> foo.service).
# Install <conf-file> as the template <service>.d/00gentoo.conf.
# If <service> is not specified
# <conf-file> with the .conf suffix stripped is used
# (e.g. foo.service.conf -> foo.service.d/00gentoo.conf).
systemd_install_serviced() {
debug-print-function ${FUNCNAME} "${@}"

View File

@ -75,7 +75,7 @@ add_src_uri() {
else
a+=".bz2"
fi
set -- mirror://gentoo https://dev.gentoo.org/~vapier/dist
set -- mirror://gentoo https://dev.gentoo.org/~vapier/dist https://dev.gentoo.org/~tamiko/distfiles
SRC_URI="${SRC_URI} ${@/%//${a}}"
}
add_src_uri binutils-${BVER}-patches-${PATCHVER}.tar ${PATCHVER}

View File

@ -572,7 +572,7 @@ tc-endian() {
case ${host} in
aarch64*be) echo big;;
aarch64) echo little;;
alpha*) echo big;;
alpha*) echo little;;
arm*b*) echo big;;
arm*) echo little;;
cris*) echo little;;
@ -792,6 +792,73 @@ gcc-specs-stack-check() {
}
# @FUNCTION: tc-enables-pie
# @RETURN: Truth if the current compiler generates position-independent code (PIC) which can be linked into executables
# @DESCRIPTION:
# Return truth if the current compiler generates position-independent code (PIC)
# which can be linked into executables.
tc-enables-pie() {
local ret="$($(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P - <<-EOF 2> /dev/null
#if defined(__PIE__)
true
#endif
EOF
)"
[[ ${ret} == true ]]
}
# @FUNCTION: tc-enables-ssp
# @RETURN: Truth if the current compiler enables stack smashing protection (SSP) on at least minimal level
# @DESCRIPTION:
# Return truth if the current compiler enables stack smashing protection (SSP)
# on level corresponding to any of the following options:
# -fstack-protector
# -fstack-protector-strong
# -fstack-protector-all
tc-enables-ssp() {
local ret="$($(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P - <<-EOF 2> /dev/null
#if defined(__SSP__) || defined(__SSP_STRONG__) || defined(__SSP_ALL__)
true
#endif
EOF
)"
[[ ${ret} == true ]]
}
# @FUNCTION: tc-enables-ssp-strong
# @RETURN: Truth if the current compiler enables stack smashing protection (SSP) on at least middle level
# @DESCRIPTION:
# Return truth if the current compiler enables stack smashing protection (SSP)
# on level corresponding to any of the following options:
# -fstack-protector-strong
# -fstack-protector-all
tc-enables-ssp-strong() {
local ret="$($(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P - <<-EOF 2> /dev/null
#if defined(__SSP_STRONG__) || defined(__SSP_ALL__)
true
#endif
EOF
)"
[[ ${ret} == true ]]
}
# @FUNCTION: tc-enables-ssp-all
# @RETURN: Truth if the current compiler enables stack smashing protection (SSP) on maximal level
# @DESCRIPTION:
# Return truth if the current compiler enables stack smashing protection (SSP)
# on level corresponding to any of the following options:
# -fstack-protector-all
tc-enables-ssp-all() {
local ret="$($(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P - <<-EOF 2> /dev/null
#if defined(__SSP_ALL__)
true
#endif
EOF
)"
[[ ${ret} == true ]]
}
# @FUNCTION: gen_usr_ldscript
# @USAGE: [-a] <list of libs to create linker scripts for>
# @DESCRIPTION:

View File

@ -254,7 +254,7 @@ setup_flags() {
# this flag for us, so no need to do it manually.
version_is_at_least 2.16 ${PV} || append-cppflags -U_FORTIFY_SOURCE
# building glibc with SSP is fraught with difficulty, especially
# building glibc <2.25 with SSP is fraught with difficulty, especially
# due to __stack_chk_fail_local which would mean significant changes
# to the glibc build process. See bug #94325 #293721
# Note we have to handle both user-given CFLAGS and gcc defaults via
@ -262,16 +262,24 @@ setup_flags() {
# added before user flags, and we can't just filter-flags because
# _filter_hardened doesn't support globs.
filter-flags -fstack-protector*
gcc-specs-ssp && append-flags $(test-flags -fno-stack-protector)
if ! version_is_at_least 2.25 ; then
tc-enables-ssp && append-flags $(test-flags -fno-stack-protector)
fi
if use hardened && gcc-specs-pie ; then
# Force PIC macro definition for all compilations since they're all
# either -fPIC or -fPIE with the default-PIE compiler.
append-cppflags -DPIC
else
# Don't build -fPIE without the default-PIE compiler and the
# hardened-pie patch
filter-flags -fPIE
if [[ $(gcc-major-version) -lt 6 ]]; then
# Starting with gcc-6 (and fully upstreamed pie patches) we control
# default enabled/disabled pie via use flags. So nothing to do
# here. #618160
if use hardened && tc-enables-pie ; then
# Force PIC macro definition for all compilations since they're all
# either -fPIC or -fPIE with the default-PIE compiler.
append-cppflags -DPIC
else
# Don't build -fPIE without the default-PIE compiler and the
# hardened-pie patch
filter-flags -fPIE
fi
fi
}
@ -311,7 +319,7 @@ want__thread() {
[[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
# only test gcc -- cant test linking yet
# only test gcc -- can't test linking yet
tc-has-tls -c ${CTARGET}
WANT__THREAD=$?
@ -533,7 +541,7 @@ toolchain-glibc_pkg_pretend() {
ewarn "hypervisor, which is probably not what you want."
fi
use hardened && ! gcc-specs-pie && \
use hardened && ! tc-enables-pie && \
ewarn "PIE hardening not applied, as your compiler doesn't default to PIE"
# Make sure host system is up to date #394453
@ -585,7 +593,7 @@ get_kheader_version() {
}
check_nptl_support() {
# don't care about the compiler here as we arent using it
# don't care about the compiler here as we aren't using it
just_headers && return
local run_kv build_kv want_kv
@ -778,11 +786,20 @@ glibc_do_configure() {
[[ -d ports ]] && addons+=",ports"
popd > /dev/null
myconf+=( $(use_enable hardened stackguard-randomization) )
if has_version '<sys-libs/glibc-2.13' ; then
myconf+=( --enable-old-ssp-compat )
fi
if version_is_at_least 2.25 ; then
myconf+=( --enable-stack-protector=all )
fi
if version_is_at_least 2.25 ; then
myconf+=( --enable-stackguard-randomization )
else
myconf+=( $(use_enable hardened stackguard-randomization) )
fi
[[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
if [[ $1 == "linuxthreads" ]] ; then
@ -926,8 +943,8 @@ toolchain-glibc_headers_configure() {
mkdir -p "${builddir}"
cd "${builddir}"
# if we don't have a compiler yet, we cant really test it now ...
# hopefully they don't affect header geneation, so let's hope for
# if we don't have a compiler yet, we can't really test it now ...
# hopefully they don't affect header generation, so let's hope for
# the best here ...
local v vars=(
ac_cv_header_cpuid_h=yes
@ -941,7 +958,7 @@ toolchain-glibc_headers_configure() {
libc_cv_mlong_double_128ibm=yes
libc_cv_ppc_machine=yes
libc_cv_ppc_rel16=yes
libc_cv_predef_{fortify_source,stack_protector}=no
libc_cv_predef_fortify_source=no
libc_cv_visibility_attribute=yes
libc_cv_z_combreloc=yes
libc_cv_z_execstack=yes
@ -955,6 +972,11 @@ toolchain-glibc_headers_configure() {
ac_cv_lib_audit_audit_log_user_avc_message=no
ac_cv_lib_cap_cap_init=no
)
if ! version_is_at_least 2.25 ; then
vars+=(
libc_cv_predef_stack_protector=no
)
fi
einfo "Forcing cached settings:"
for v in "${vars[@]}" ; do
einfo " ${v}"
@ -1314,7 +1336,7 @@ toolchain-glibc_src_install() {
src_strip
}
# Simple test to make sure our new glibc isnt completely broken.
# Simple test to make sure our new glibc isn't completely broken.
# Make sure we don't test with statically built binaries since
# they will fail. Also, skip if this glibc is a cross compiler.
#

View File

@ -153,7 +153,7 @@ if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then
tc_version_is_at_least 4.8 && IUSE+=" graphite" IUSE_DEF+=( sanitize )
tc_version_is_at_least 4.9 && IUSE+=" cilk +vtv"
tc_version_is_at_least 5.0 && IUSE+=" jit mpx"
tc_version_is_at_least 6.0 && IUSE+=" pie ssp +pch"
tc_version_is_at_least 6.0 && IUSE+=" +pie +ssp +pch"
fi
IUSE+=" ${IUSE_DEF[*]/#/+}"
@ -178,6 +178,12 @@ fi
tc_version_is_at_least 4.5 && RDEPEND+=" >=dev-libs/mpc-0.8.1:0"
if in_iuse objc-gc ; then
if tc_version_is_at_least 7 ; then
RDEPEND+=" objc-gc? ( >=dev-libs/boehm-gc-7.4.2 )"
fi
fi
if in_iuse graphite ; then
if tc_version_is_at_least 5.0 ; then
RDEPEND+=" graphite? ( >=dev-libs/isl-0.14 )"
@ -233,7 +239,8 @@ S=$(
gentoo_urls() {
local devspace="HTTP~vapier/dist/URI HTTP~rhill/dist/URI
HTTP~zorry/patches/gcc/URI HTTP~blueness/dist/URI"
HTTP~zorry/patches/gcc/URI HTTP~blueness/dist/URI
HTTP~tamiko/distfiles/URI"
devspace=${devspace//HTTP/https:\/\/dev.gentoo.org\/}
echo mirror://gentoo/$1 ${devspace//URI/$1}
}

View File

@ -25,8 +25,8 @@ esac
# @ECLASS-VARIABLE: VALA_MIN_API_VERSION
# @DESCRIPTION:
# Minimum vala API version (e.g. 0.26).
VALA_MIN_API_VERSION=${VALA_MIN_API_VERSION:-0.26}
# Minimum vala API version (e.g. 0.32).
VALA_MIN_API_VERSION=${VALA_MIN_API_VERSION:-0.32}
# @ECLASS-VARIABLE: VALA_MAX_API_VERSION
# @DESCRIPTION:
@ -49,7 +49,7 @@ vala_api_versions() {
local minimal_supported_minor_version minor_version
# Dependency atoms are not generated for Vala versions older than 0.${minimal_supported_minor_version}.
minimal_supported_minor_version="26"
minimal_supported_minor_version="32"
for ((minor_version = ${VALA_MAX_API_VERSION#*.}; minor_version >= ${VALA_MIN_API_VERSION#*.}; minor_version = minor_version - 2)); do
if ((minor_version >= minimal_supported_minor_version)); then

View File

@ -1,17 +0,0 @@
**********************************************************
*** 7PLUS ASCII-Encoder/Decoder, (c) Axel Bauda, DG1BBQ ***
**********************************************************
***
*** File converter for transfer of arbitrary binary data
*** via store & forward.
***
*** 7PLUS is HAMWARE. No commercial use. No Sale. Pass on only in it's
*** entirety! There is no warranty for the proper functioning. Use at own
*** risk.
***
*** TABSIZE when editing: 2; don't insert real TABs (^I), use spaces instead.
***
*** When porting or modifying this source, make SURE it can still be compiled
*** on all systems! Do this by using #ifdef directives! Please let me know
*** about the modifications or portations, so I can include them in the origi-
*** nal 7PLUS source.

View File

@ -0,0 +1,177 @@
END USER LICENSE AGREEMENT
(AMD GPU-PRO)
IMPORTANT-READ CAREFULLY: DO NOT INSTALL, COPY OR USE THE ENCLOSED SOFTWARE,
DOCUMENTATION (AS DEFINED BELOW), OR ANY PORTION THEREOF, (COLLECTIVELY
"SOFTWARE") UNTIL YOU HAVE CAREFULLY READ AND AGREED TO THE FOLLOWING TERMS AND
CONDITIONS. THIS IS A LEGAL AGREEMENT ("AGREEMENT") BETWEEN YOU (EITHER AN
INDIVIDUAL OR AN ENTITY) (COLLECTIVELY "YOU" AND "YOUR") AND ADVANCED MICRO
DEVICES, INC. ("AMD").
IF YOU DO NOT AGREE TO THE TERMS OF THIS AGREEMENT, DO NOT INSTALL, COPY OR USE
THIS SOFTWARE. BY INSTALLING, COPYING OR USING THE SOFTWARE YOU AGREE TO ALL
THE TERMS AND CONDITIONS OF THIS AGREEMENT.
1. DEFINITIONS
1. “Documentation” means install scripts and online or electronic
documentation associated, included, or provided in connection with the
Software, or any portion thereof.
2. “Intellectual Property Rights” means all copyrights, trademarks, trade
secrets, patents, mask works, and all related, similar, or other
intellectual property rights recognized in any jurisdiction worldwide,
including all applications and registrations with respect thereto.
3. “Free Software License” means an open source or other license that
requires, as a condition of use, modification or distribution, that any
resulting software must be (a) disclosed or distributed in source code
form; (b) licensed for the purpose of making derivative works; or (c)
redistributable at no charge.
2. LICENSE
Subject to the terms and conditions of this Agreement, AMD hereby grants You a
non-exclusive, royalty-free, revocable, non-transferable, limited, copyright
license to use the Software solely in conjunction with systems or components
that include or incorporate AMD processors, as applicable.
3. RESTRICTIONS
Except for the limited license expressly granted in Section 2 herein, You have
no other rights in the Software, whether express, implied, arising by estoppel
or otherwise. Further restrictions regarding Your use of the Software are set
forth below. You may not:
1. modify or create derivative works of the Software;
2. distribute, assign or otherwise transfer the Software;
3. decompile, reverse engineer, disassemble or otherwise reduce the Software
to a human-perceivable form (except as allowed by applicable law);
4. alter or remove any copyright, trademark or patent notice(s) in the
Software; or
5. use the Software to: (i) develop inventions directly derived from
confidential information to seek patent protection; (ii) assist in the
analysis of Your patents and patent applications; or (iii) modify existing
patents.;
6. use, modify and/or distribute any of the Software so that any part becomes
subject to a Free Software License.
4. FEEDBACK
You have no obligation to give AMD any suggestions, comments or other feedback
(“Feedback”) relating to the Software. However, AMD may use and include any
Feedback that it receives from You to improve the Software or other AMD
products, software and technologies. Accordingly, for any Feedback You provide
to AMD, You grant AMD and its affiliates and subsidiaries a worldwide,
non-exclusive, irrevocable, royalty-free, perpetual license to, directly or
indirectly, use, reproduce, license, sublicense, distribute, make, have made,
sell and otherwise commercialize the Feedback in the Software or other AMD
products, software and technologies. You further agree not to provide any
Feedback that (a) You know is subject to any Intellectual Property Rights of
any third party or (b) is subject to license terms which seek to require any
products incorporating or derived from such Feedback, or other AMD intellectual
property, to be licensed to or otherwise shared with any third party.
5. OWNERSHIP AND COPYRIGHT OF SOFTWARE
The Software, including all Intellectual Property Rights therein, is and
remains the sole and exclusive property of AMD or its licensors, and You shall
have no right, title or interest therein except as expressly set forth in this
Agreement. You agree to prevent any unauthorized copying of the Software. All
title in and to the Software, all copies thereof (in whole or in part, and in
any form), and all rights and Intellectual Property Rights therein shall remain
vested in AMD. Except as expressly provided in Section 2 herein, AMD does not
grant any express or implied right to You under AMD patents, copyrights,
trademarks, or trade secret information.
6. WARRANTY DISCLAIMER
THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. AMD DISCLAIMS
ALL WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
TITLE, NON-INFRINGEMENT, THAT THE SOFTWARE WILL RUN UNINTERRUPTED OR ERROR-FREE
OR WARRANTIES ARISING FROM CUSTOM OF TRADE OR COURSE OF USAGE. THE ENTIRE RISK
ASSOCIATED WITH THE USE OF THE SOFTWARE IS ASSUMED BY YOU. Some jurisdictions
do not allow the exclusion of implied warranties, so the above exclusion may
not apply to You.
7. LIMITATION OF LIABILITY AND INDEMNIFICATION
AMD AND ITS LICENSORS WILL NOT, UNDER ANY CIRCUMSTANCES BE LIABLE TO YOU FOR
ANY PUNITIVE, DIRECT, INCIDENTAL, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES
ARISING FROM USE OF THE SOFTWARE OR THIS AGREEMENT EVEN IF AMD AND ITS
LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event
shall AMD's total liability to You for all damages, losses, and causes of
action (whether in contract, tort (including negligence) or otherwise) exceed
the amount of $100 USD. You agree to defend, indemnify and hold harmless AMD
and its licensors, and any of their directors, officers, employees, affiliates
or agents from and against any and all loss, damage, liability and other
expenses (including reasonable attorneys' fees), resulting from Your use of the
Software or violation of the terms and conditions of this Agreement.
8. EXPORT RESTRICTIONS
You shall adhere to all applicable U.S., European, and other export laws,
including but not limited to the U.S. Export Administration Regulations
("EAR"), (15 C.F.R. Sections 730 through 774), and E.U. Council Regulation (EC)
No 428/2009 of 5 May 2009. Further, pursuant to Section 740.6 of the EAR, You
hereby certify that, except pursuant to a license granted by the United States
Department of Commerce Bureau of Industry and Security or as otherwise
permitted pursuant to a License Exception under the EAR, You will not (1)
export, re-export or release to a national of a country in Country Groups D:1,
E:1 or E:2 any restricted technology, software, or source code You receive from
AMD, or (2) export to Country Groups D:1, E:1 or E:2 the direct product of such
technology or software, if such foreign produced direct product is subject to
national security controls as identified on the Commerce Control List
(currently found in Supplement 1 to Part 774 of EAR). For the most current
Country Group listings, or for additional information about the EAR or Your
obligations under those regulations, please refer to the U.S. Bureau of
Industry and Security's website at http://www.bis.doc.gov/.
9. U.S. GOVERNMENT RESTRICTED RIGHTS
The Software is provided with "RESTRICTED RIGHTS." Use, duplication, or
disclosure by the Government is subject to the restrictions as set forth in FAR
52.227-14 and DFAR252.227-7013, et seq., or its successor. Use of the Software
by the Government constitutes acknowledgement of AMD's proprietary rights in
them.
10. TERMINATION OF LICENSE
This Agreement will terminate immediately without notice from AMD or judicial
resolution if (1) You fail to comply with any provisions of this Agreement, or
(2) You provide AMD with notice that You would like to terminate this
Agreement. Upon termination of this Agreement, You must delete or destroy all
copies of the Software. Upon termination or expiration of this Agreement, all
provisions survive except for Section 2.
11. GOVERNING LAW
This Agreement is made under and shall be construed according to the laws of
the State of California, excluding conflicts of law rules. Each party submits
to the jurisdiction of the state and federal courts of Santa Clara County and
the Northern District of California for the purposes of this Agreement. You
acknowledge that Your breach of this Agreement may cause irreparable damage and
agree that AMD shall be entitled to seek injunctive relief under this
Agreement, as well as such further relief as may be granted by a court of
competent jurisdiction.
12. GENERAL PROVISIONS
You may not assign this Agreement without the prior written consent of AMD and
any assignment without such consent will be null and void. The parties do not
intend that any agency or partnership relationship be created between them by
this Agreement. Each provision of this Agreement shall be interpreted in such a
manner as to be effective and valid under applicable law. However, in the event
that any provision of this Agreement becomes or is declared unenforceable by
any court of competent jurisdiction, such provision shall be deemed deleted and
the remainder of this Agreement shall remain in full force and effect.
13. ENTIRE AGREEMENT
This Agreement sets forth the entire agreement and understanding between the
parties with respect to the Software and supersedes and merges all prior oral
and written agreements, discussions and understandings between them regarding
the subject matter of this Agreement. No waiver or modification of any
provision of this Agreement shall be binding unless made in writing and signed
by an authorized representative of each party.

View File

@ -1,104 +0,0 @@
Agere Systems WinModem End User SOFTWARE LICENSE AGREEMENT
The terms and conditions of this Agreement will apply to the Agere
Systems WinModem Software (hereafter "Software") supplied under this Agreement
and any derivatives obtained therefrom, including any copy. The term Software
includes programs and related documentation supplied herewith.
The following file is made available under the standard Linux license,
a copy of which may be found at .
serial.c
serial24.c
These additional files are not derived from any Linux open source content,
and are subject to the following restrictions.
ltmodem.c
linuxif.h
ltmdmobj.o
Makefile
ltinst
ltuninst
readme.txt
1.0 TITLE AND LICENSE GRANT
1.1 The Software is copyrighted and/or contains proprietary
information protected by law. All Software and all copies
thereof are and will remain the sole property of Agere Systems or
its suppliers. Agere Systems hereby grants you a non-exclusive right
to use the Software, in whatever form recorded, which is furnished to
you under or in contemplation of this Agreement, in an Agere Systems
winmodem. Any other use of the Software or removal of the Software from
a country in which use is licensed shall automatically terminate this license.
1.2 You agree to use your best efforts to see that any user of the Software
licensed hereunder complies with the terms and conditions of this Agreement.
2.0 SOFTWARE USE
2.1 You are permitted to make copies of the Software provided that any such copy
shall contain the same copyright notice and proprietary marking included on
the original Software.
2.2 You agree not to merge or combine any portion of the Software with any other
software, other than the Linux operating system, unless expressly permitted by
the laws of the jurisdiction where you are located. Any portion of the Software
merged or combined with the other software will continue to be the subject of the
terms and conditions of this Agreement and you agree to reproduce on the merged
or combined portion of the Software the copyright and other proprietary rights
notices included in the original Software.
2.3 Redistribution and Usage
Agere permits use and limited redistribution of this Licensed Software in source and
binary forms, with or without modification, subject to the following terms and conditions,
in addition to the terms mentioned in this agreement.
2.3.1 Agere Systems reserves the right not to allow a third party to reuse or
redistribute the software, at its sole discretion.
2.3.2 User hereby agrees not to remove or alter any copyright, trademark, credits
and other proprietary notices contained within or associated with the Licensed
Software, and shall include all such unaltered copyright, trademark, credits and
other proprietary notices on or in every copy of the Software.
2.3.3 Notwithstanding any other provisions in this Agreement to the contrary, any
modifications or alterations made to the Licensed Software shall cause any
warranties and intellectual property indemnifications to become null and
void and of no further effect.
3.0 DISCLAIMER OF WARRANTY
3.1 You understand and acknowledge that the Software may contain errors, bugs or other
defects. The Software is provided on AS-IS basis, without warranty of any kind.
3.2 Agere Systems has used reasonable efforts to minimize defects or errors in the Software.
HOWEVER, YOU ASSUME THE RISK OF ANY AND ALL DAMAGE OR LOSS FROM USE OR INABILITY TO USE
THE SOFTWARE. Specifically, but not in limitation of the foregoing disclaimers, Agere
Systems does not warrant that the functions of the Software will meet your requirements
or that the Software operation will be error-free or uninterrupted.
3.3 Agere Systems bears no responsibility for supplying assistance for fixing or for
communicating known errors to you pertaining to the Software supplied hereunder.
3.4 YOU UNDERSTAND THAT AGERE SYSTEMS, ITS AFFILIATES, CONTRACTORS, SUPPLIERS, AND AGENTS
MAKE NO WARRANTIES, EXPRESS OR IMPLIED, AND SPECIFICALLY DISCLAIM ANY WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
4.0 EXCLUSIVE REMEDIES AND LIMITATION OF LIABILITIES
4.1 Regardless of any other provisions of this Agreement, neither Agere Systems nor its
affiliates, contractors, suppliers, or agents shall be liable for any indirect, incidental,
or consequential damages (including lost profits) sustained or incurred in connection with
the use, operation, or inability to use the Software or for damages due to causes beyond
the reasonable control of Agere Systems, its affiliates, contractors, suppliers, and agents
attributable to any service, products, or action of any other person.
4.2 This Agreement shall be construed in accordance with and governed by the laws of the
State of New York.
YOU ACKNOWLEDGE THAT YOU HAVE READ THIS AGREEMENT AND UNDERSTAND IT, AND THAT BY DOWNLOADING OR USING
THE SOFTWARE, YOU AGREE TO BE BOUND BY ITS TERMS AND CONDITIONS. YOU FURTHER AGREE THAT THIS AGREEMENT
IS THE COMPLETE AND EXCLUSIVE STATEMENT OF THE RIGHTS AND LIABILITIES OF THE PARTIES. THIS AGREEMENT
SUPERCEDES ALL PRIOR ORAL AGREEMENTS, PROPOSALS OR UNDERSTANDINGS, AND ANY OTHER COMMUNICATIONS BETWEEN
US RELATING TO THE SUBJECT MATTER OF THIS AGREEMENT.

View File

@ -1,721 +0,0 @@
CrossOver Office Standard License Grant
YOU REALLY WANT TO READ THIS, ESPECIALLY THE PART ABOUT THE MANDATORY CAR WASH
FOR CODEWEAVERS EMPLOYEES...
If you don't like this license grant:
a. Let us know, we'd appreciate the feedback.
b. Stop right now, and ask for a refund. We'll cheerfully do so.
The main thing we want you to know:
This is a license for one user. The license is not necessarily for a
specific user, or a specific computer, but it is for one person at a
time. If you need to support more than one person, please contact us
for volume pricing and site licensing. We do offer educational
discounts.
----------------< Start of Formal License Grant >-----------------------
1. License. The software accompanying this License (hereinafter "Software"),
regardless of the media on which it is distributed, are licensed to you
by CodeWeavers ("VENDOR"). You own the medium on which the Software is
recorded, but VENDOR and VENDOR's Licensors (referred to collectively as
"VENDOR") retain title to the Software and related documentation. You
may:
a. run the Software on any computer, so long as no more than one
person per license is ever using the Software at any one time.
b. transfer all your license rights in the Software, the backup copy
of the Software, the related documentation and a copy of this
License to another party, provided the other party reads and agrees
to accept the terms and conditions of this License.
2. Free Software. The Software contained in this product includes some
components of Free Software, including software from the Wine Project,
Tcl, Tk, iTcl, and the Loki Software Setup software.
The Wine project is licensed under terms of the GNU Lesser Public
License, which is included below as Appendix A. The best source for the
Wine source code is the main Wine web page at http://www.winehq.com.
Tcl/Tk/and iTcl are licensed under a 'BSD-style' license, which is
included below as Appendix B.
The Loki Setup software is licensed under the terms of the GNU General
Public License, Version 2. A copy of this license is provided with this
distribution as the file GPLV2. All changes to the Loki Setup software
have been submitted back to Loki (www.lokigames.com). With the demise of
Loki, the best source for this source code is now the following web site:
www.icculus.org.
We have made no changes to the Tcl/Tk, and iTcl software, and we suggest
that individuals wishing to obtain this software contact the sponsors of
those software projects directly. The web site for this project is
www.tcl.tk.
We include source code with each CD purchase of CrossOver Office. Current
source code for Free Software contained within CrossOver products is also
generally available at our web site, www.codeweavers.com. However,
individuals wishing to obtain source directly from us will be cheerfully
provided with a copy of any Free Software source upon request. We reserve
the right to charge a nominal processing fee for transmission of the
source code. Send such requests to info@codeweavers.com.
CodeWeavers strongly believes in the Free Software movement. We believe
that the spirit of this movement makes it important for you to be able to
obtain these components for yourself, make changes, and then use those
changes with our Software. To that end, you are explicitly granted
license to build alternate versions of the Wine software for use in
conjunction with the Software.
IN NO WAY IS THIS LICENSE GRANT INTENDED TO SUPERCEDE THE LICENSE
AGREEMENTS OF ANY FREE SOFTWARE COMPONENTS THAT ARE DISTRIBUTED IN
CONJUNCTION WITH THE SOFTWARE.
3. Restrictions. The Software contains copyrighted material, trade secrets
and other proprietary material. In order to protect them, and except as
permitted by applicable legislation or by the Free Software licenses
detailed in Section 2, you may not:
a. decompile, reverse engineer, disassemble or otherwise reduce the
Software to a human-perceivable form
b. rent, lend, loan, distribute or create derivative works based upon
the Software in whole or in part.
4. Term. This License is granted to you immediately upon purchase of a
license from CodeWeavers, or other related third party.
This License is effective until terminated. You may terminate this
License at any time by destroying the Software, related documentation and
all copies thereof.
This License will terminate immediately without notice from VENDOR if:
a. you use the Software in a fashion that exceeds the rights granted
to you by this license, OR
b. you fail to conclude the purchase transaction, OR
c. you request a refund.
If the Software was given to you for purposes of evaluation, then this
License will terminate at the end of the specified evaluation period,
typically 30 days.
Upon termination you must destroy the Software, related documentation and
all copies thereof.
5. Export Law Assurance. You agree and certify that neither the Software nor
any other technical data received from VENDOR, nor the direct product
thereof, will be exported outside the United States except as authorized
and as permitted by the laws and regulations of the United States. If the
Software has been rightfully obtained by you outside of the United
States, you agree that you will not reexport the Software nor any other
technical data received from VENDOR, nor the direct product thereof,
except as permitted by the laws and regulations of the United States and
the laws and regulations of the jurisdiction in which you obtained the
Software.
6. Government End Users. If you are acquiring the Software on behalf of any
unit or agency of the United States Government, the following provisions
apply. The Government agrees:
a. if the Software is supplied to the Department of Defense (DoD), the
Software is classified as "Commercial Computer Software" and the
Government is acquiring only "restricted rights" in the Software
and its documentation as that term is defined in Clause 252.227-
7013(c)(1) of the DFARS; and
b. if the Software is supplied to any unit or agency of the United
States Government other than DoD, the Government's rights in the
Software and its documentation will be as defined in Clause 52.227-
19(c)(2) of the FAR or, in the case of NASA, in Clause 18-52.227-86
(d) of the NASA Supplement to the FAR.
7. Limited Warranty on Media. VENDOR warrants the tangible media on which
the Software is recorded to be free from defects in materials and
workmanship under normal use for a period of ninety (90) days from the
date of purchase as evidenced by a copy of the receipt. VENDOR's entire
liability and your exclusive remedy will be replacement of the media not
meeting VENDOR's limited warranty and which is returned to VENDOR or an
VENDOR authorized representative with a copy of the receipt. VENDOR will
have no responsibility to replace an media damaged by accident, abuse or
misapplication. ANY IMPLIED WARRANTIES ON THE TANGIBLE MEDIA, INCLUDING
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE, ARE LIMITED IN DURATION TO NINETY (90) DAYS FROM THE DATE OF
DELIVERY. THIS WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS, AND YOU MAY ALSO
HAVE OTHER RIGHTS WHICH VARY BY JURISDICTION.
8. Disclaimer of Warranty on Software. You expressly acknowledge and agree
that use of the Software is at your sole risk. The Software and related
documentation are provided "AS IS" and without warranty of any kind and
VENDOR EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE. VENDOR DOES NOT WARRANT THAT THE
FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT
THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR
THAT DEFECTS IN THE SOFTWARE WILL BE CORRECTED. THE ENTIRE RISK AS TO THE
RESULTS AND PERFORMANCE OF THE SOFTWARE IS ASSUMED BY YOU. FURTHERMORE,
VENDOR DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE OR
THE RESULTS OF THE USE OF THE SOFTWARE OR RELATED DOCUMENTATION IN TERMS
OF THEIR CORRECTNESS, ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE.
NO ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY VENDOR OR VENDOR'S
AUTHORIZED REPRESENTATIVE SHALL CREATE A WARRANTY OR IN ANY WAY INCREASE
THE SCOPE OF THIS WARRANTY. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU (AND
NOT VENDOR OR VENDOR'S AUTHORIZED REPRESENTATIVE) ASSUME THE ENTIRE COST
OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. SOME JURISDICTIONS DO
NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY
NOT APPLY TO YOU.
9. Limitation of Liability. UNDER NO CIRCUMSTANCES INCLUDING NEGLIGENCE,
SHALL VENDOR, OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AGENTS, BE LIABLE
TO YOU FOR ANY INCIDENTAL, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES
(INCLUDING DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION,
LOSS OF BUSINESS INFORMATION, AND THE LIKE) ARISING OUT OF THE USE,
MISUSE OR INABILITY TO USE THE SOFTWARE OR RELATED DOCUMENTATION, EVEN IF
VENDOR OR VENDOR'S AUTHORIZED REPRESENTATIVE HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS DO NOT ALLOW THE
LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL
DAMAGES, SO THE ABOVE LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU. In no
event shall VENDOR's total liability to you for all damages, losses, and
causes of action (whether in contract, tort (including negligence) or
otherwise) exceed the amount paid by you for the Software.
10. Controlling Law and Severability. This License shall be governed by and
construed in accordance with the laws of the United States and the State
of Minnesota, as applied to agreements entered into and to be performed
entirely within Minnesota between Minnesota residents. If for any reason
a court of competent jurisdiction finds any provision of this License or
portion thereof, to be unenforceable, that provision of the License shall
be enforced to the maximum extent permissible so as to effect the intent
of the parties, and the remainder of this License shall continue in full
force and effect.
Appendix A - Wine License
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
Appendix B - TCL License
This software is copyrighted by the Regents of the University of California,
Sun Microsystems, Inc., Scriptics Corporation, and other parties. The following
terms apply to all files associated with the software unless explicitly
disclaimed in individual files.
The authors hereby grant permission to use, copy, modify, distribute, and
license this software and its documentation for any purpose, provided that
existing copyright notices are retained in all copies and that this notice is
included verbatim in any distributions. No written agreement, license, or
royalty fee is required for any of the authorized uses. Modifications to this
software may be copyrighted by their authors and need not follow the licensing
terms described here, provided that the new terms are clearly indicated on the
first page of each file where they apply.
IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR
DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF
THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN
IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS
IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
GOVERNMENT USE: If you are acquiring this software on behalf of the U.S.
government, the Government shall have only "Restricted Rights" in the software
and related documentation as defined in the Federal Acquisition Regulations
(FARs) in Clause 52.227.19 (c) (2). If you are acquiring the software on behalf
of the Department of Defense, the software shall be classified as "Commercial
Computer Software" and the Government shall have only "Restricted Rights" as
defined in Clause 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing,
the authors grant the U.S. Government and others acting in its behalf
permission to use and distribute the software in accordance with the terms
specified in this license.
----------------< End of Formal License Grant >-----------------------
OKAY, WE WERE JUST KIDDING. THERE'S NOTHING IN HERE ABOUT CARWASHES. BUT YOU
REALLY SHOULD READ THESE THINGS, YOU KNOW. (It's the Beige Honda minivan, if
you really insist).
For those of you that do really care about license agreements, we close with
one final description of our motivation behind this document.
The key legal principal operating here is that, under copyright law, you have
no rights to use this software. If you are a purchasing customer (or have been
granted a temporary evaluation license), then we grant you a right to use the
software. All humor aside, this is not intended as a License Agreement, in
which we attempt to coerce or bind you to terms you are not aware of. Instead,
this is a License Grant - a document that details the way in which your
purchase entitles you to use our software. The key point is that you have no
rights other than those explicitly described in this agreement. If you have
further thoughts about this license please email us at info@codeweavers.com; we
are always open to suggestions.

View File

@ -0,0 +1,419 @@
CockroachDB Community License Agreement
Please read this CockroachDB Community License Agreement (the "Agreement")
carefully before using CockroachDB (as defined below), which is offered by
Cockroach Labs, Inc. or its affiliated Legal Entities ("Cockroach Labs").
By downloading CockroachDB or using it in any manner, You agree that You have
read and agree to be bound by the terms of this Agreement. If You are
accessing CockroachDB on behalf of a Legal Entity, You represent and warrant
that You have the authority to agree to these terms on its behalf and the
right to bind that Legal Entity to this Agreement. Use of CockroachDB is
expressly conditioned upon Your assent to all the terms of this Agreement, to
the exclusion of all other terms.
1. Definitions. In addition to other terms defined elsewhere in this
Agreement, the terms below have the following meanings.
(a) "CockroachDB" shall mean the SQL database software provided by Cockroach
Labs, including both CockroachDB Community and CockroachDB Enterprise
editions, as defined below.
(b) "CockroachDB Community Edition" shall mean the open source version of
CockroachDB, available free of charge at
https://github.com/cockroachdb/cockroach
(c) "Cockroach Enterprise Edition" shall mean the additional features made
available by Cockroach Labs, the use of which is subject to additional
terms set out below.
(d) "Contribution" shall mean any work of authorship, including the original
version of the Work and any modifications or additions to that Work or
Derivative Works thereof, that is intentionally submitted Cockroach Labs
for inclusion in the Work by the copyright owner or by an individual or
Legal Entity authorized to submit on behalf of the copyright owner. For
the purposes of this definition, "submitted" means any form of
electronic, verbal, or written communication sent to Cockroach Labs or
its representatives, including but not limited to communication on
electronic mailing lists, source code control systems, and issue
tracking systems that are managed by, or on behalf of, Cockroach Labs
for the purpose of discussing and improving the Work, but excluding
communication that is conspicuously marked or otherwise designated in
writing by the copyright owner as "Not a Contribution."
(e) "Contributor" shall mean any copyright owner or individual or Legal
Entity authorized by the copyright owner, other than Cockroach Labs,
from whom Cockroach Labs receives a Contribution that Cockroach Labs
subsequently incorporates within the Work.
(f) "Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work, such as a
translation, abridgement, condensation, or any other recasting,
transformation, or adaptation for which the editorial revisions,
annotations, elaborations, or other modifications represent, as a whole,
an original work of authorship. For the purposes of this License,
Derivative Works shall not include works that remain separable from, or
merely link (or bind by name) to the interfaces of, the Work and
Derivative Works thereof.
(g) "Legal Entity" shall mean the union of the acting entity and all other
entities that control, are controlled by, or are under common control
with that entity. For the purposes of this definition, "control" means
(i) the power, direct or indirect, to cause the direction or management
of such entity, whether by contract or otherwise, or (ii) ownership of
fifty percent (50%) or more of the outstanding shares, or (iii)
beneficial ownership of such entity.
(h) "License" shall mean the terms and conditions for use, reproduction, and
distribution of a Work as defined by this Agreement.
(i) "Licensor" shall mean Cockroach Labs or a Contributor, as applicable.
(j) "Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but not
limited to compiled object code, generated documentation, and
conversions to other media types.
(k) "Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation source,
and configuration files.
(l) "Third Party Works" shall mean Works, including Contributions, and other
technology owned by a person or Legal Entity other than Cockroach Labs,
as indicated by a copyright notice that is included in or attached to
such Works or technology.
(m) "Work" shall mean the work of authorship, whether in Source or Object
form, made available under a License, as indicated by a copyright notice
that is included in or attached to the work.
(n) "You" (or "Your") shall mean an individual or Legal Entity exercising
permissions granted by this License.
2. Licenses.
(a) License to CockroachDB Community Edition. The License for CockroachDB
Community Edition is the Apache License, Version 2.0 ("Apache License").
The Apache License includes a grant of patent license, as well as
redistribution rights that are contingent on several requirements.
Please see
http://www.apache.org/licenses/LICENSE-2.0
for full terms. CockroachDB Community Edition is a no-cost, entry-level
license and as such, contains the following disclaimers: NOTWITHSTANDING
ANYTHING TO THE CONTRARY HEREIN, COCKROACHDB COMMUNITY EDITION IS
PROVIDED "AS IS" AND "AS AVAILABLE", AND ALL EXPRESS OR IMPLIED
WARRANTIES ARE EXCLUDED AND DISCLAIMED, INCLUDING WITHOUT LIMITATION THE
IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
NON-INFRINGEMENT, AND ANY WARRANTIES ARISING BY STATUTE OR OTHERWISE IN
LAW OR FROM COURSE OF DEALING, COURSE OF PERFORMANCE, OR USE IN TRADE.
For clarity, the terms of this Agreement, other than the relevant
definitions in Section 1 and this Section 2(a) do not apply to
CockroachDB Community Edition.
(b) License to CockroachDB Enterprise Edition.
i Grant of Copyright License: Subject to the terms of this Agreement,
Licensor hereby grants to You a worldwide, non-exclusive,
non-transferable limited license to reproduce, prepare Enterprise
Derivative Works (as defined below) of, publicly display, publicly
perform, sublicense, and distribute CockroachDB Enterprise Edition
for Your business purposes, for so long as You are not in violation
of this Section 2(b) and are current on all payments required by
Section 4 below.
ii Grant of Patent License: Subject to the terms of this Agreement,
Licensor hereby grants to You a worldwide, non-exclusive,
non-transferable limited patent license to make, have made, use,
offer to sell, sell, import, and otherwise transfer CockroachDB
Enterprise Edition, where such license applies only to those patent
claims licensable by Licensor that are necessarily infringed by
their Contribution(s) alone or by combination of their
Contribution(s) with the Work to which such Contribution(s) was
submitted. If You institute patent litigation against any entity
(including a cross-claim or counterclaim in a lawsuit) alleging that
the Work or a Contribution incorporated within the Work constitutes
direct or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate as
of the date such litigation is filed.
iii License to Third Party Works: From time to time Cockroach Labs may
use, or provide You access to, Third Party Works in connection
CockroachDB Enterprise Edition. You acknowledge and agree that in
addition to this Agreement, Your use of Third Party Works is subject
to all other terms and conditions set forth in the License provided
with or contained in such Third Party Works. Some Third Party Works
may be licensed to You solely for use with CockroachDB Enterprise
Edition under the terms of a third party License, or as otherwise
notified by Cockroach Labs, and not under the terms of this
Agreement. You agree that the owners and third party licensors of
Third Party Works are intended third party beneficiaries to this
Agreement.
3. Support. From time to time, in its sole discretion, Cockroach Labs may
offer professional services or support for CockroachDB, which may now or in
the future be subject to additional fees.
4. Fees for CockroachDB Enterprise Edition or CockroachDB Support.
(a) Fees. The License to CockroachDB Enterprise Edition is conditioned upon
Your payment of the fees specified on
https://cockroachlabs.com/pricing
which You agree to pay to Cockroach Labs in accordance with the payment
terms set out on that page. Any professional services or support for
CockroachDB may also be subject to Your payment of fees, which will be
specified by Cockroach Labs when you sign up to receive such
professional services or support. Cockroach Labs reserves the right to
change the fees at any time with prior written notice; for recurring
fees, any such adjustments will take effect as of the next pay period.
(b) Overdue Payments and Taxes. Overdue payments are subject to a service
charge equal to the lesser of 1.5% per month or the maximum legal
interest rate allowed by law, and You shall pay all Cockroach Labs
reasonable costs of collection, including court costs and attorneys
fees. Fees are stated and payable in U.S. dollars and are exclusive of
all sales, use, value added and similar taxes, duties, withholdings and
other governmental assessments (but excluding taxes based on Cockroach
Labs income) that may be levied on the transactions contemplated by
this Agreement in any jurisdiction, all of which are Your responsibility
unless you have provided Cockroach Labs with a valid tax-exempt
certificate.
(c) Record-keeping and Audit. If fees for CockroachDB Enterprise Edition
are based on the number of cores or servers running on CockroachDB
Enterprise Edition or another use-based unit of measurement, You must
maintain complete and accurate records with respect to Your use of
CockroachDB Enterprise Edition and will provide such records to
Cockroach Labs for inspection or audit upon Cockroach Labs reasonable
request. If an inspection or audit uncovers additional usage by You for
which fees are owed under this Agreement, then You shall pay for such
additional usage at Cockroach Labs then-current rates.
5. Trial License. If You have signed up for a trial or evaluation of
CockroachDB Enterprise Edition, Your License to CockroachDB Enterprise
Edition is granted without charge for the trial or evaluation period
specified when You signed up, or if no term was specified, for thirty (30)
calendar days, provided that Your License is granted solely for purposes of
Your internal evaluation of Cockroach Enterprise Edition during the trial
or evaluation period (a "Trial License"). You may not use CockroachDB
Enterprise Edition under a Trial License more than once in any twelve (12)
month period. Cockroach Labs may revoke a Trial License at any time and
for any reason. Sections 3, 4, 9 and 11 of this Agreement do not apply to
Trial Licenses.
6. Redistribution. You may reproduce and distribute copies of the Work or
Derivative Works thereof in any medium, with or without modifications, and
in Source or Object form, provided that You meet the following conditions:
(a) You must give any other recipients of the Work or Derivative Works a
copy of this License; and
(b) You must cause any modified files to carry prominent notices stating
that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works that You
distribute, all copyright, patent, trademark, and attribution notices
from the Source form of the Work, excluding those notices that do not
pertain to any part of the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its distribution,
then any Derivative Works that You distribute must include a readable
copy of the attribution notices contained within such NOTICE file,
excluding those notices that do not pertain to any part of the
Derivative Works, in at least one of the following places: within a
NOTICE text file distributed as part of the Derivative Works; within the
Source form or documentation, if provided along with the Derivative
Works; or, within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents of the
NOTICE file are for informational purposes only and do not modify the
License. You may add Your own attribution notices within Derivative
Works that You distribute, alongside or as an addendum to the NOTICE
text from the Work, provided that such additional attribution notices
cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may
provide additional or different license terms and conditions for use,
reproduction, or distribution of Your modifications, or for any such
Derivative Works as a whole, provided Your use, reproduction, and
distribution of the Work otherwise complies with the conditions stated
in this License.
(e) Enterprise Derivative Works: Derivative Works of CockroachDB Enterprise
Edition ("Enterprise Derivative Works") may be made, reproduced and
distributed in any medium, with or without modifications, in Source or
Object form, provided that each Enterprise Derivative Work will be
considered to include a License to CockroachDB Enterprise Edition and
thus will be subject to the payment of fees to Cockroach Labs by any
user of the Enterprise Derivative Work.
7. Submission of Contributions. Unless You explicitly state otherwise, any
Contribution intentionally submitted for inclusion in CockroachDB by You to
Cockroach Labs shall be under the terms and conditions of
https://cla-assistant.io/cockroachdb/cockroach
(which is based off of the Apache License), without any additional terms or
conditions, payments of royalties or otherwise to Your benefit.
Notwithstanding the above, nothing herein shall supersede or modify the
terms of any separate license agreement You may have executed with
Cockroach Labs regarding such Contributions.
8. Trademarks. This License does not grant permission to use the trade names,
trademarks, service marks, or product names of Licensor, except as required
for reasonable and customary use in describing the origin of the Work and
reproducing the content of the NOTICE file.
9. Limited Warranty.
(a) Warranties. Cockroach Labs warrants to You that: (i) CockroachDB
Enterprise Edition will materially perform in accordance with the
applicable documentation for ninety (90) days after initial delivery to
You; and (ii) any professional services performed by Cockroach Labs
under this Agreement will be performed in a workmanlike manner, in
accordance with general industry standards.
(b) Exclusions. Cockroach Labs warranties in this Section 9 do not extend
to problems that result from: (i) Your failure to implement updates
issued by Cockroach Labs during the warranty period; (ii) any
alterations or additions (including Enterprise Derivative Works and
Contributions) to CockroachDB not performed by or at the direction of
Cockroach Labs; (iii) failures that are not reproducible by Cockroach
Labs; (iv) operation of CockroachDB Enterprise Edition in violation of
this Agreement or not in accordance with its documentation; (v) failures
caused by software, hardware or products not licensed or provided by
Cockroach Labs hereunder; or (vi) Third Party Works.
(c) Remedies. In the event of a breach of a warranty under this Section 9,
Cockroach Labs will, at its discretion and cost, either repair, replace
or re-perform the applicable Works or services or refund a portion of
fees previously paid to Cockroach Labs that are associated with the
defective Works or services. This is Your exclusive remedy, and
Cockroach Labs sole liability, arising in connection with the limited
warranties herein.
10. Disclaimer of Warranty. Except as set out in Section 9, unless required
by applicable law, Licensor provides the Work (and each Contributor
provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied, arising out of course
of dealing, course of performance, or usage in trade, including, without
limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT,
MERCHANTABILITY, CORRECTNESS, RELIABILITY, or FITNESS FOR A PARTICULAR
PURPOSE, all of which are hereby disclaimed. You are solely responsible
for determining the appropriateness of using or redistributing Works and
assume any risks associated with Your exercise of permissions under the
applicable License for such Works.
11. Limited Indemnity.
(a) Indemnity. Cockroach Labs will defend, indemnify and hold You harmless
against any third party claims, liabilities or expenses incurred
(including reasonable attorneys fees), as well as amounts finally
awarded in a settlement or a non-appealable judgement by a court
("Losses"), to the extent arising from any claim or allegation by a
third party that CockroachDB Enterprise Edition infringes or
misappropriates a valid United States patent, copyright or trade secret
right of a third party; provided that You give Cockroach Labs: (i)
prompt written notice of any such claim or allegation; (ii) sole control
of the defense and settlement thereof; and (iii) reasonable cooperation
and assistance in such defense or settlement. If any Work within
CockroachDB Enterprise Edition becomes or, in Cockroach Labs opinion,
is likely to become, the subject of an injunction, Cockroach Labs may,
at its option, (A) procure for You the right to continue using such
Work, (B) replace or modify such Work so that it becomes non-infringing
without substantially compromising its functionality, or, if (A) and (B)
are not commercially practicable, then (C) terminate Your license to the
allegedly infringing Work and refund to You a prorated portion of the
prepaid and unearned fees for such infringing Work. The foregoing
states the entire liability of Cockroach Labs with respect to
infringement of patents, copyrights, trade secrets or other intellectual
property rights.
(b) Exclusions. The foregoing obligations shall not apply to: (i) Works
modified by any party other than Cockroach Labs (including Enterprise
Derivative Works and Contributions), if the alleged infringement relates
to such modification, (ii) Works combined or bundled with any products,
processes or materials not provided by Cockroach Labs where the alleged
infringement relates to such combination, (iii) use of a version of
CockroachDB Enterprise Edition other than the version that was current
at the time of such use, as long as a non-infringing version had been
released, (iv) any Works created to Your specifications, (v)
infringement or misappropriation of any proprietary right in which You
have an interest, or (vi) Third Party Works. You will defend, indemnify
and hold Cockroach Labs harmless against any Losses arising from any
such claim or allegation, subject to conditions reciprocal to those in
Section 11(a).
12. Limitation of Liability. In no event and under no legal or equitable
theory, whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts), and notwithstanding anything in this Agreement to the
contrary, shall Licensor or any Contributor be liable to You for (i) any
amounts in excess, in the aggregate, of the fees paid by You to Cockroach
Labs under this Agreement in the twelve (12) months preceding the date the
first cause of liability arose), or (ii) any indirect, special,
incidental, punitive, exemplary, reliance, or consequential damages of any
character arising as a result of this Agreement or out of the use or
inability to use the Work (including but not limited to damages for loss
of goodwill, profits, data or data use, work stoppage, computer failure or
malfunction, cost of procurement of substitute goods, technology or
services, or any and all other commercial damages or losses), even if such
Licensor or Contributor has been advised of the possibility of such
damages. THESE LIMITATIONS SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE
ESSENTIAL PURPOSE OF ANY LIMITED REMEDY.
13. Accepting Warranty or Additional Liability. While redistributing Works or
Derivative Works thereof, and without limiting your obligations under
Section 6, You may choose to offer, and charge a fee for, acceptance of
support, warranty, indemnity, or other liability obligations and/or rights
consistent with this License. However, in accepting such obligations, You
may act only on Your own behalf and on Your sole responsibility, not on
behalf of any other Contributor, and only if You agree to indemnify,
defend, and hold Cockroach Labs and each other Contributor harmless for
any liability incurred by, or claims asserted against, such Contributor by
reason of your accepting any such warranty or additional liability.
14. General.
(a) Relationship of Parties. You and Cockroach Labs are independent
contractors, and nothing herein shall be deemed to constitute either
party as the agent or representative of the other or both parties as
joint venturers or partners for any purpose.
(b) Export Control. You shall comply with the U.S. Foreign Corrupt
Practices Act and all applicable export laws, restrictions and
regulations of the U.S. Department of Commerce, and any other applicable
U.S. and foreign authority.
(c) Assignment. This Agreement and the rights and obligations herein may
not be assigned or transferred, in whole or in part, by You without the
prior written consent of Cockroach Labs. Any assignment in violation of
this provision is void. This Agreement shall be binding upon, and inure
to the benefit of, the successors and permitted assigns of the parties.
(d) Governing Law. This Agreement shall be governed by and construed under
the laws of the State of New York and the United States without regard
to conflicts of laws provisions thereof, and without regard to the
Uniform Computer Information Transactions Act.
(e) Attorneys Fees. In any action or proceeding to enforce rights under
this Agreement, the prevailing party shall be entitled to recover its
costs, expenses and attorneys fees.
(f) Severability. If any provision of this Agreement is held to be invalid,
illegal or unenforceable in any respect, that provision shall be limited
or eliminated to the minimum extent necessary so that this Agreement
otherwise remains in full force and effect and enforceable.
(g) Entire Agreement; Waivers; Modification. This Agreement constitutes the
entire agreement between the parties relating to the subject matter
hereof and supersedes all proposals, understandings, or discussions,
whether written or oral, relating to the subject matter of this
Agreement and all past dealing or industry custom. The failure of either
party to enforce its rights under this Agreement at any time for any
period shall not be construed as a waiver of such rights. No changes,
modifications or waivers to this Agreement will be effective unless in
writing and signed by both parties.

View File

@ -1,41 +0,0 @@
Folding@Home distributed computing client
Copyright 2001-2009. Stanford University. All Rights Reserved.
License Agreement:
Please carefully read the following terms and conditions before using this
software. Use of this software indicates acceptance of this license agreement
and disclaimer of all warranties.
Disclaimer of Warranty:
IN NO EVENT SHALL STANFORD UNIVERSITY BE LIABLE TO ANY PARTY FOR DIRECT,
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST
PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
STANFORD UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
STANFORD UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT
NOTLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE SOFTWARE AND ACCOMPANYING DOCUMENTATION PROVIDED
HEREUNDER IS PROVIDED "AS IS". Folding@home HAS NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Restrictions:
You may use this software on a computer system only if you own the system or
have the written permission of the owner.
You may not alter the software or associated data files, or de-compile or
reverse engineer the software.
You may only use unmodified versions of Folding@home obtained through
authorized distributors to connect to the Folding@Home servers. Use of other
software to connect to the Folding@home servers is strictly prohibited. This
prohibition includes 3rd party installers which download directly from Stanford
web sites, unless written permission is granted from Stanford University.
Distribution of this software is prohibited. It may only be obtained by
downloading from Stanford's web site (http://folding.stanford.edu and pages
linked therein) or the web site of one of our commercial partners (Sony,
NVIDIA, and ATI).

View File

@ -1,517 +0,0 @@
SYSTEMC OPEN SOURCE LICENSE
(SOFTWARE DOWNLOAD AND USE LICENSE AGREEMENT VERSION 2.3)
PLEASE READ THIS LICENSE AGREEMENT CAREFULLY BEFORE CLICKING ON
THE "ACCEPT" BUTTON, AS BY CLICKING ON THE "ACCEPT" BUTTON YOU
ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD AND AGREE TO BE
BOUND BY THIS LICENSE AGREEMENT AND ALL OF ITS TERMS AND
CONDITIONS.
OPEN SYSTEMC INITIATIVE
The purpose of the following license agreement (the "Agreement") is to encourage
interoperability and distributed development of a C++ modeling language known as
"SystemC" for system simulation and design (the "Purpose"). The SystemC software
licensed hereunder is licensed, without fee of any kind, for use pursuant to the terms
and conditions set forth in this Agreement.
LICENSE AGREEMENT
THE CONTRIBUTORS ARE WILLING TO LICENSE THE PROGRAM TO YOU ONLY
ON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS OF THIS LICENSE
AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS LICENSE
AGREEMENT, NO RIGHTS ARE GRANTED TO YOU HEREUNDER TO USE THE
PROGRAM. ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
CONSTITUTES YOUR ACCEPTANCE OF THIS AGREEMENT.
1. DEFINITIONS.
1.1 "Agreement" means this document.
1.2 "Contribution" means: (a) the Original Program; and (b) all Modifications
that Recipient deposits or contributes in accordance with Section 3 in furtherance
of the Purpose of this Agreement but does not include any software that has
been previously so deposited or contributed.
1.3 “Contribution Questionnaire” means the questionnaire attached hereto as
Exhibit C.
1.4 "Contributor" means any Recipient, including Synopsys, Inc. ("Synopsys”),
that makes a Contribution pursuant to Section 3. Any Recipient depositing, as
part or all of a Contribution, code which has previously been so deposited by
another Recipient is not the Contributor of such re-deposited code for the
purposes of this Agreement. A list of the Contributors is attached hereto as
Exhibit A.
1.5 "Contributor's Necessary Patent Claim" means a claim in any patent now
or hereafter owned or licensable by Contributor that is directly infringed solely by
the portion of an executing computer program translated, compiled or interpreted
from and corresponding directly and solely to the Contribution disclosed by
Contributor hereunder and the SystemC Kernel Code, except that Contributor's
Necessary Patent Claim shall not include any claim directed towards a data
structure, method, algorithm, process, technique, circuit representation, or circuit
implementation that is not completely and entirely described in the combination
of such Contribution and the SystemC Kernel Code.
1.6 "Copyright/Trade Secret Rights" means worldwide statutory and common
law rights associated solely with (i) works of authorship including copyrights,
copyright applications, copyright registrations and "moral rights", and (ii) the
protection of trade and industrial secrets and confidential information. Patents are
not included in Copyright/Trade Secret Rights.
1.7 "Distribute" means making a Distribution.
1.8 "Distribution" means any distribution, sublicensing or other transfer of the
Program (with or without Modifications) to any third party.
1.9 "Executable" means Original Program (with or without Modifications)
compiled into object code form along with only those header files from such
Original Program that are strictly necessary to make use of the object code.
1.10 “Marks” means, collectively, the registered and unregistered marks and
logos that OSCI has licensed or otherwise authorized Recipient to use. All marks
and logos are listed on Exhibit D, which list may be amended from time to time
by OSCI to add or delete any marks or logos.
1.11 "Modification" means: (a) any software code which comprises change(s)
to the Program including additions and/or deletions; (b) any specifications for the
Program; and (c) any reference implementation of the Program.
1.12 "Original Program" means the SystemC 1.1 version of the software
accompanying this Agreement as released by Synopsys.
1.13 “OSCI” means Open SystemC Initiative, a California nonprofit mutual
benefit corporation.
1.14 "Program" means the Original Program and each other Contribution and
any combination thereof.
1.15 "Recipient" means anyone who receives the Program under this
Agreement, including all Contributors.
1.16 For legal entities, "Recipient" includes any entity that controls, is controlled
by, or is under common control with Recipient. For purposes of this definition,
"control" means (a) the power, direct or indirect, to cause the direction or
management of such entity, whether by contract or otherwise, or (b) ownership of
fifty percent (50%) or more of the outstanding shares or beneficial ownership of
such entity.
1.17 "Source Code" means human readable text in an electronic form suitable
for modification that describe the functions and data structures, including C, C++,
and other language modules, plus any associated interface definition files, scripts
used to control compilation and installation of an Executable, or a list of source
code differential comparisons against the Original Program.
1.18 "SystemC Kernel Code" means the set of compilable source and header
files included in the Original Program that are necessary to build the target
SystemC library object module, but does not include operating system header
files, operating system library elements, documentation, example code, sample
code fragments, or other ancillary information.
2. GRANT OF RIGHTS
2.1 Subject to the terms of this Agreement, each Contributor hereby grants
Recipient a non-exclusive, worldwide, royalty-free license under Contributor's
Copyright/Trade Secrets to do the following:
(a) use, reproduce, prepare derivative works of, publicly display,
publicly perform and Distribute in source code and object code form the
Contribution of such Contributor and any such derivative works, subject to
the terms and conditions of this Agreement including Section 4; and
(b) use the know-how, information and knowledge embedded in the
Contribution, without any obligation to keep the foregoing confidential so
long as Recipient does not otherwise violate this Agreement.
2.2 Contributor grants to each Recipient, a world-wide, royalty-free, non-
exclusive license under Contributor's Necessary Patent Claims to make, use,
sell, offer for sale, or import the such Contributor's Contribution and the Program
only to the minimum extent necessary to exercise the rights granted in Section
2.1(a).
2.3 Each Contributor represents that to its knowledge it has sufficient rights in
its Contribution, if any, to grant the licenses set forth in Sections 2.1 and 2.2.
2.4 Except as expressly stated in Sections 2.1 and 2.2, Recipient receives no
rights or licenses to the intellectual property of any Contributor under this
Agreement, whether expressly, by implication, estoppel or otherwise. All rights in
the Program not expressly granted under this Agreement are reserved.
2.5 Recipient shall retain its entire right, title, and interest in and to
Contributions disclosed by Recipient hereunder, including all Copyrights/Trade
Secret Rights and patent rights embodied therein, subject to the underlying rights
embodied in the Original Program and further subject to those rights expressly
granted in this Agreement. Recipient agrees that Recipient shall not remove or
alter any proprietary notices contained in the Contributions licensed to Recipient
hereunder and shall reproduce and include such notices on any copies of the
Contributions made by Recipient in any media.
2.6 License to Marks.
(a) OSCI shall retain all right, title and interest in and to the Marks
worldwide, subject to the limited license granted to Recipient in this
Section 2.6. OSCI hereby grants Recipient a non-exclusive, royalty-free,
limited license to use the Marks solely in connection with its exercise of
the rights granted pursuant to this Agreement and to indicate that the
products being marketed by Recipient are compatible with, and meet the
standards of, the SystemC modeling language. All uses of the Marks shall
be in accordance with OSCIs trademark usage policy set forth in Exhibit
D.
(b) Recipient shall assist OSCI to the extent reasonably necessary to
protect and maintain the Marks worldwide, including, but not limited to,
giving prompt notice to OSCI of any known or potential infringement of the
Marks, and cooperating with OSCI in preparing and executing any
documents necessary to register the Marks, or as may be required by the
laws or rules of any country or jurisdiction. In its sole discretion, OSCI
may commence, prosecute or defend any action or claim concerning the
Marks. OSCI shall have the right to control any such litigation, and
Recipient shall fully cooperate with OSCI in any such litigation. OSCI shall
reimburse Recipient for the reasonable costs associated with providing
such assistance, except to the extent that such costs result from
Recipients breach of this Section 2.6. Recipient shall not commence any
action regarding the Marks without OSCIs prior written consent.
(c) All goodwill with respect to the Marks shall accrue for the sole
benefit of OSCI. Recipient shall maintain the quality of any products,
associated packaging, collateral and marketing materials on which it uses
any of the Marks in a manner consistent with all terms, conditions and
requirements set forth in this Section 2.6 and at a level that meets or
exceeds Recipients overall reputation for quality and that is at least
commensurate with industry standards.
2.7 RECIPIENT UNDERSTANDS THAT ALTHOUGH EACH CONTRIBUTOR
GRANTS THE LICENSES TO ITS CONTRIBUTIONS SET FORTH HEREIN, NO
ASSURANCES ARE PROVIDED BY ANY CONTRIBUTOR THAT THE
CONTRIBUTION ALONE OR IN COMBINATION WITH THE PROGRAM DOES
NOT INFRINGE THE PATENT OR OTHER INTELLECTUAL PROPERTY
RIGHTS OF ANY OTHER ENTITY. EACH CONTRIBUTOR DISCLAIMS ANY
LIABILITY TO RECIPIENT FOR CLAIMS BROUGHT BY ANY OTHER ENTITY
BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR
OTHERWISE. In addition, as a condition to exercising the rights and licenses
granted hereunder, each Recipient hereby assumes sole responsibility to secure
any other intellectual property rights needed, if any. For example, if a third party
patent license is required to allow Recipient to Distribute the Program, it is
Recipient's responsibility to acquire that license before Distributing the Program.
3. DESCRIPTION AND DEPOSIT OF CONTRIBUTIONS
3.1 To the extent Recipient wishes to become a Contributor by making a
Contribution, such Contributor shall:
(a) (i) deposit such Contribution in Source Code form at
http://www.systemc.org/ according to the Contribution instructions found at
such site, or (ii) disclose such Contribution at a meeting of any working
group of OSCI;
(b) (i) describe such Contribution in reasonable detail on Exhibit B
(including the additions or changes such Contributor made to create the
Contribution and the date of any such changes or additions), (ii)
completing a Contribution Questionnaire with respect to such Contribution,
and (iii) delivering both documents to OSCI. All Contributions made after
the date hereof shall be effectuated by Contributor (x) amending Exhibit B
and delivering such amended Exhibit B to OSCI, which amended exhibit
shall automatically replace the existing Exhibit B, (y) competing a
Contribution Questionnaire with respect to such Contribution, and (z)
delivering both documents to OSCI;
(c) cause such Contribution to contain a file documenting such
Contributor's name and contact information, additions or changes such
Contributor made to create the Contribution, and the date of any such
changes or additions;
(d) cause such Contribution to include in each file a prominent
statement substantially similar to the following: "The following code is
derived, directly or indirectly, from the SystemC source code Copyright (c)
1996-{date here} by all Contributors. All Rights reserved. The contents of
this file are subject to the restrictions and limitations set forth in the
SystemC Open Source License Version 2.3 (the "License"). You may not
use this file except in compliance with such restrictions and limitations.
You may obtain instructions on how to receive a copy of the License at
http://www.systemc.org/. Software distributed by Contributors under the
License is distributed exclusively on an "AS IS" basis, WITHOUT
WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License."; and
(e) cause such Contribution to include a text file titled "LEGAL" which
describes any intellectual property rights of which Contributor is aware that
it or any third party may hold in the functionality or code of such
Contribution.
3.2 OSCI or the administrators of the http://www.systemc.org/ web site shall
have the right to authorize removal from such site any Contribution at any time.
4. REQUIREMENTS OF DISTRIBUTION
4.1 A Recipient may choose to Distribute the Program in object code form
under its own license agreement, provided that:
(a) Recipient complies with the terms and conditions of this
Agreement; and
(b) the terms and conditions of Recipient's license agreement with its
licensees:
i. effectively disclaim on behalf of all Contributors all
warranties and conditions, express and implied, including
warranties or conditions of title and non-infringement, and implied
warranties or conditions of merchantability and fitness for a
particular purpose;
ii. effectively exclude on behalf of all Contributors all liability for
damages, including, but not limited to, direct, indirect, special,
incidental and consequential damages, such as lost profits;
iii. state that any provisions which differ from this Agreement
are offered by that Recipient alone and not by any other party; and
iv. state that source code for the Program is available from such
Recipient, and inform licensees how to obtain it in a reasonable
manner on or through a medium customarily used for software
exchange.
4.2 If a Recipient chooses to Distribute the Program in source code form then:
(a) the Program must be Distributed under this Agreement; and
(b) a copy of this Agreement must be included with each copy of the
Program.
4.3 Each Recipient must include the following in a conspicuous location in the
Program so Distributed or transferred:
Copyright (c) 1996-{date here}, by all Contributors. All rights
reserved.
4.4 In addition, each Recipient that creates and Distributes or otherwise
transfers a Modification whether or not such Modification has been deposited
pursuant to Section 3 must identify the originator of such Modification in a
manner that reasonably allows third parties to identify the originator of the
Modification.
5. INDEMNIFICATION
A Recipient who Distributes the Program (a "Distributor") may accept certain
responsibilities with respect to end users, business partners and the like. While this
license is intended to facilitate the commercial use of the Program, a Distributor shall
Distribute the Program in a manner which does not create potential liability for
Contributors. Therefore each Distributor hereby agrees to defend and indemnify every
Contributor ("Indemnified Contributor") against any losses, damages and costs
(collectively "Losses") arising from claims, lawsuits and other legal actions brought by a
third party against the Indemnified Contributor to the extent caused by the acts or
omissions of such Distributor, including but not limited to the terms and conditions under
which Distributor offered the Program, in connection with its Distribution of the Program.
The obligations in this section do not apply to any claims or Losses relating to any
actual or alleged intellectual property infringement of the Program. In order to qualify,
an Indemnified Contributor must: (a) promptly notify the Distributor in writing of such
claim, and (b) allow the Distributor to control, and cooperate with the Distributor in, the
defense and any related settlement negotiations. The Indemnified Contributor may
participate in the defense of any such claim at its own expense.
For example, a Recipient might include the Program in a commercial product offering,
Product X. That Recipient is then a Distributor. If that Distributor then makes
performance claims, or offers warranties, support, or indemnity or any other license
terms related to Product X, those performance claims, offers and other terms are such
Distributor's responsibility alone. Under this section, the Distributor would have to
defend claims against the Contributors related to those performance claims, offers, and
other terms, and if a court requires any Contributor to pay any damages as a result, the
Distributor must pay those damages.
6. NO WARRANTY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
PROVIDED EXCLUSIVELY ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT
LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. EACH RECIPIENT IS
SOLELY RESPONSIBLE FOR DETERMINING THE APPROPRIATENESS OF ITS USE AND
DISTRIBUTION OF THE PROGRAM AND ASSUMES ALL RISKS ASSOCIATED WITH ITS
EXERCISE OF RIGHTS UNDER THIS AGREEMENT, INCLUDING BUT NOT LIMITED TO
THE RISKS AND COSTS OF PROGRAM ERRORS, COMPLIANCE WITH APPLICABLE
LAWS, DAMAGE TO OR LOSS OF DATA, PROGRAMS OR EQUIPMENT, AND
UNAVAILABILITY OR INTERRUPTION OF OPERATIONS. THIS DISCLAIMER OR
WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS AGREEMENT. NO USE OF
THE PROGRAM OR ANY MODIFICATIONS THERETO ARE AUTHORIZED HEREUNDER
EXCEPT UNDER THIS DISCLAIMER.
7. DISCLAIMER OF LIABILITY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
8. U.S. GOVERNMENT USE
If Recipient is licensing the Program on behalf of any unit or agency of the United States
Government, then the Program and any related documentation is commercial computer
software, and, pursuant to FAR 12.212 or DFARS 227.7202 and their successors, as
applicable, shall be licensed to the Government under the terms and conditions of this
Agreement.
9. PATENT CLAIMS
If Recipient institutes patent litigation against any entity (including a cross-claim,
counterclaim or declaratory judgment claim in a lawsuit) alleging that the Program itself
(excluding combinations of the Program with other software or hardware) infringes such
Recipient's patent(s), then the rights granted to Recipient by each Contributor under
Section 2.2 shall terminate as of the date such litigation is filed.
10. TERMINATION
All Recipient's rights under this Agreement shall terminate if Recipient fails to comply
with any of the material terms or conditions of this Agreement and does not cure such
failure in a reasonable period of time after becoming aware of such noncompliance. If
such occurs, Recipient shall cease use and Distribution of the Program based upon the
rights granted to Recipient under this Agreement as soon as reasonably practicable.
However, Recipient's obligations under this Agreement and any licenses granted by
Recipient relating to the Program shall survive such termination.
11. LICENSE VERSIONS
OSCI may publish new versions (including revisions) of this Agreement from time to
time. Each new version of the Agreement will be given a distinguishing version number.
The Program may always be Distributed subject to the version of the Agreement under
which it was received. In addition, after a new version of the Agreement is published,
Contributor may elect to Distribute the Program under the new version. No one other
than OSCI, acting by a vote of at least 75% of the members of its Board of Directors,
has the right to modify this Agreement; provided that Exhibit B and Exhibit C may be
amended as specifically set forth in Section 3.1(b), and Exhibit D may be amended as
specifically set forth in Section 1.10.
12. ELECTRONIC ACCEPTANCE
This Agreement may be executed either electronically or on paper. By clicking on the
“Accept” button, Recipient warrants that it agrees to all of the terms of this Agreement,
that Recipient is authorized to enter into this Agreement, and that this Agreement is
legally binding upon Recipient. If Recipient does not agree to be bound by this
Agreement, then Recipient shall click the “Decline” button and Recipient shall not
receive any rights from the Contributors nor shall Recipient download any materials,
including the Program.
13. GENERAL
This Agreement represents the complete agreement concerning the subject matter
hereof and supersedes all prior agreements or representations, oral or written,
regarding the subject matter hereof. If any provision of this Agreement is invalid or
unenforceable under applicable law, it shall not affect the validity or enforceability of the
remainder of the terms of this Agreement, and without further action by the parties
hereto, such provision shall be reformed to the minimum extent necessary to make such
provision valid and enforceable.
This Agreement is governed by the laws of California, without reference to conflict of
laws principles. Each party waives its rights to a jury trial in any resulting litigation. Any
litigation relating to this Agreement shall be subject to the jurisdiction of the Federal
Courts of the Northern District of California, with venue lying in Santa Clara County,
California, or the Santa Clara County Superior Court. The application of the United
Nations Convention on Contracts for the International Sale of Goods is expressly
excluded. The provisions of this Agreement shall be construed fairly in accordance with
its terms and no rules of construction for or against either party shall be applied in the
interpreting this Agreement. Recipient shall not use the Program in violation of local
and other applicable laws including, but not limited to, the export control laws of the
United States.
EXHIBIT A
List of Contributors
1. Synopsys, Inc.
2. Cadence Design Systems, Inc.
3. CoWare, Inc.
EXHIBIT D
Trademark Usage Policy
I. LIST OF MARKS
1. Open SystemC
2. Open SystemC Initiative
3. OSCI, SystemC
4. SystemC Graphic Logo
5. All logos that incorporate the foregoing word marks
II. PROPER USE OF MARKS
Trademarks and service marks function as adjectives and generally should not be used as
nouns or verbs. Accordingly, as often as possible, the Marks should be used as adjectives
immediately preceding the generic noun that refers to the service in question. For example:
The SystemC™ software
The SystemC™ LRM
No Possessives or Plurals. Since they are not nouns, the Marks should never be used in the
possessive or plural forms. For example, it is not appropriate to write “SystemCs software.”
No Use as Verbs or as Puns. The Marks should never be used as verbs or as puns.
III. PROPER ATTRIBUTION
Trademark ownership is attributed in two ways, with the use of a symbol (TM, SM, ®) after the mark
and with a legal legend, usually found at the end of a document following the copyright notice.
Following are OSCIs rules for symbols and legends to attribute the Marks:
Symbols:
Which Symbol Do I Use?
The Marks generally function as trademarks rather than servicemarks. Unless you are
specifically directed otherwise, please use the ™ or ® symbol after the Marks.
Where Do I Place the ® Symbol?
The ™ or ® symbol is placed immediately after the mark, either in superscript or subscript.
When Do I Use the Symbol?
The ™ or ® symbol is to be used after the Marks in the following instances:
Most Prominent Uses : A ™ or ® symbol is required after prominent uses of the Marks, e.g., in
the headlines and large print text of web pages, advertisements, other promotional materials
and press releases, except where space limitations or specific style considerations prevent
compliance with this requirement.
First Use in Text: A ™ or ® symbol is required after the first use of each Mark in text, e.g.
advertising copy or the body of press releases, even though the symbol may have already
appeared in the headline or after another prominent use of the mark in the same document.
All Logos: The ™ or ® symbol must appear after all logos incorporating the Marks.
IV. Legends
All Marks that appear on a web page or in a press release, advertisement or other written
material (whether in print or electronic form) must be attributed in an appropriate legend. The
legend may be presented in “mouseprint” but must be large enough to be read easily. Legends
generally appear at the end of a document or the bottom of a web page but may be placed
elsewhere, e.g. the inside cover of documentation.
The OSCI Legend: The following legend should be used in all materials in which any of the
Marks appear:
[Insert the Marks] are trademarks or registered trademarks of Open SystemC Initiative, Inc. in
the United States and other countries and are used with permission.
V. MARKS NEVER COMBINED
The Marks should never be combined with the marks of any business other than OSCI. The
Marks should always appear visually separate from any other marks appearing in the same
materials such that each mark creates a distinct commercial impression. It would, for instance,
not be appropriate to superimpose the logo of another business over any OSCI logo.
VI. LOGOS
Logos incorporating the Marks can only be used in the format provided to you by OSCI for
incorporation into your materials or web pages. The logos provided to you by OSCI cannot be
modified in any way without OSCIs prior written approval. Logos copied from OSCI web pages
or other materials may not to be used. Please contact webmaster@systemc.org to obtain
electronic files containing the OSCI logos and to ask any questions regarding the logos.

View File

@ -1,668 +0,0 @@
SYSTEMC OPEN SOURCE LICENSE
(SOFTWARE DOWNLOAD AND USE LICENSE AGREEMENT VERSION 3.0)
PLEASE READ THIS LICENSE AGREEMENT CAREFULLY BEFORE CLICKING ON
THE "ACCEPT" BUTTON, AS BY CLICKING ON THE "ACCEPT" BUTTON YOU
ACKNOWLEDGE THAT YOU HAVE READ, UNDERSTOOD AND AGREE TO BE
BOUND BY THIS LICENSE AGREEMENT AND ALL OF ITS TERMS AND
CONDITIONS.
OPEN SYSTEMC INITIATIVE
The purpose of the following license agreement (the "Agreement") is to encourage
interoperability and development of a C++ modeling language known as "SystemC" for
system simulation and design (the "Purpose"). The SystemC software and other items
licensed hereunder are licensed, without fee of any kind, for use pursuant to the terms
and conditions set forth in this Agreement.
LICENSE AGREEMENT
THE CONTRIBUTORS ARE WILLING TO LICENSE THEIR RESPECTIVE CONTRIBUTIONS
TO YOU ONLY ON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS OF THIS
LICENSE AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
LICENSE AGREEMENT, THEN NO RIGHTS ARE GRANTED TO YOU HEREUNDER TO USE
ANY CONTRIBUTIONS. NOTWITHSTANDING ANYTHING TO CONTRARY, ANY USE,
REPRODUCTION OR DISTRIBUTION OF ANY CONTRIBUTION CONSTITUTES YOUR
ACCEPTANCE OF THIS AGREEMENT.
1. DEFINITIONS.
1.1 "Agreement" means this contract.
1.2 "Code Contribution" means any Contribution in the form of Source Code.
1.3 "Contribution" means any work of authorship that is deposited or
contributed in accordance with Section 3 in furtherance of the Purpose including,
without limitation, libraries, programs, specifications and User Documentation
and Modifications. Without limiting the generality of the foregoing, a list of all
Contributions which were deposited or contributed on or before July 13, 2006 is
set forth on Exhibit A attached hereto and incorporated herein by reference, all of
which are considered Contributions pursuant to this Agreement. A list of all
Contributions is available upon written request to OSCI and can also be found on
the Website. For purposes of clarification, all contributions licensed pursuant to
that certain SystemC Open Source License Agreement (Software Download and
Use License Agreement Version 2.4) shall constitute, and be treated as,
Contributions pursuant to this Agreement.
1.4 “Copyright Agreement” means any LRM and Copyright Contribution
Agreement entered into between OSCI and the signatory thereto at any time
prior to or after the date hereof.
1.5 Contribution Questionnaire” means the questionnaire attached hereto as
Exhibit C.
1.6 "Contributor" means any person or entity that makes a Contribution
pursuant to Section 3. For purposes of clarification, any person or entity
depositing or contributing, as part or all of a Contribution, a Contribution which
has previously been so deposited or contributed is not the Contributor of such re-
deposited Contribution for the purposes of this Agreement. A list of all
Contributors is available upon written request to OSCI and can also be found on
the Website.
1.7 "Contributor's Necessary Patent Claims" means those claims of all patents
owned or licensable by Contributor throughout the world that: (1) Contributor has
the right to license (within the scope set forth herein) without the obligation to pay
royalties or other consideration to third parties; and (2) are necessarily and
directly infringed solely by the portion of a computer program that either
implements, or is compiled from, either an unmodified Contribution or an OSCI
Release. For clarity, Contributors Necessary Patent Claims shall not include any
claim directed towards a data structure, method, algorithm, process, technique,
circuit representation, or circuit implementation that is not completely and entirely
described either in such Contributor's Contribution or in an OSCI Release.
Further, a Contributors Necessary Patent Claims shall not include any claim
based upon the combination of any Contribution or an OSCI Release with other
works of authorship, to the extent that the Contributors Necessary Patent Claims
are infringed as a result of such combination.
1.8 "Copyright Rights" means worldwide statutory and common law rights
associated solely with works of authorship including copyrights, copyright
applications, copyright registrations and "moral rights." For purposes of
clarification, patents are not included in Copyright Rights.
1.9 “Derivative” or “Derivative work” means a work based upon one or more
preexisting works, such as a translation, condensation, or any other form in
which a work may be recast, transformed, or adapted. A work consisting of
editorial revisions, annotations, elaborations, or other modifications, which, as a
whole, represent an original work of authorship, is a “derivative work”.
1.10 "Distribute" means making a Distribution.
1.11 "Distribution" means any distribution, sublicensing or other transfer of a
Contribution to any third party.
1.12 “Documentation” means, collectively, all User Documentation and OSCI
Documentation.
1.13 “Marks” means, collectively, the registered and unregistered marks and
logos that OSCI has licensed or otherwise authorized Recipient to use. All marks
and logos are listed on Exhibit D, which list may be amended from time to time
by OSCI to add or delete any marks or logos.
1.14 "Modification" means any additions or deletions to any Contribution.
1.15 “OSCI” means Open SystemC Initiative, a California nonprofit mutual
benefit corporation.
1.16 "OSCI Documentation" means the SystemC language reference manual
and any other materials assigned to OSCI pursuant to the Copyright Agreement.
1.17 “OSCI Release” means a Contribution or combination of Contributions
which is developed or created through the OSCI working group process, and the
final work approved for release by a OSCI working group, approved for release
by the OSCI steering group and approved for release by the board of directors of
OSCI. Examples of OSCI Releases include OSCI libraries and OSCI
specifications. OSCI Documentation shall be deemed to be included in the
definition of OSCI Release.
1.18 "Recipient" means any person or entity which receives any Contribution
under this Agreement. For legal entities, "Recipient" includes any entity that
controls, is controlled by, or is under common control with Recipient. For
purposes of this Section 1.18, "control" means beneficial ownership of fifty
percent (50%) or more of the outstanding shares or similar interest of such entity
entitled to vote for election of the board of directors or similar managing authority.
1.19 "Source Code" means human readable text in an electronic form suitable
for modification that describe the functions and data structures, including C, C++,
and other language modules, plus any associated interface definition files, scripts
used to control compilation and installation of a computer program, or a list of
source code differential comparisons.
1.20 "User Documentation" means all user guides, user manuals and other
similar materials related to any Contribution or an OSCI Release.
1.21 "Website” means OSCIs Internet website located at
http://www.systemc.org.
2. GRANT OF RIGHTS
2.1 Subject to the terms of this Agreement, each Contributor hereby grants to
each Recipient a non-exclusive, worldwide, royalty-free license under such
Contributor's Copyright Rights to do the following:
(a) use, reproduce, prepare Derivative works of, publicly display,
publicly perform and Distribute any Contributions of such Contributor and
Derivative works thereof; and
(b) use the know-how, information and knowledge embedded in the
Contribution, without any obligation to keep the foregoing confidential so
long as the Recipient does not otherwise violate this Agreement.
2.2 OSCI hereby grants to each Recipient a non-exclusive, worldwide, royalty-
free license under OSCI's Copyright Rights to use, reproduce, prepare Derivative
works of, publicly display, publicly perform and Distribute the OSCI
Documentation and any Derivative works thereof, subject to the terms and
conditions of this Agreement.
2.3 Subject to the terms of this Agreement, each Contributor hereby grants to
each Recipient, a worldwide, royalty-free, non-exclusive license under such
Contributor's Necessary Patent Claims to make, have made, use, sell, offer for
sale, or import: (a) such Contributor's Contributions; (b) those portions of a
computer program that either implements, or is compiled from, the Contributors
unmodified Contribution; and (c) those portions of a computer program that
implement, or are compiled from, an OSCI Release.
2.4 Each Contributor represents that, to its knowledge, it has sufficient rights
in and to each of its Contributions to grant the licenses set forth in Sections 2.1
and 2.3. OSCI represents that, to its knowledge, it has sufficient rights in the
OSCI Documentation to grant the license set forth in Section 2.2.
2.5 Except as expressly stated in Sections 2.1, 2.2 and 2.3, Recipient
receives no rights or licenses to the intellectual property of any Contributor or
OSCI under this Agreement, whether expressly, by implication, estoppel or
otherwise. All rights in and to any Contribution not expressly granted under this
Agreement are reserved.
2.6 Except as specifically set forth in any Copyright Agreement, Contributor
shall ensure that transfers or assignments of all or any part of its right, title, and
interest in and to any Contributions contributed or deposited by Contributor
hereunder, including all Copyright Rights and patent rights embodied therein,
shall be subject to the rights expressly granted in this Agreement including,
without limitation, the licenses granted in Sections 2.1 and 2.3. Recipient shall
not remove or alter any proprietary notices contained in the Contributions
licensed to Recipient hereunder and shall reproduce and include such notices on
any copies of the Contributions made by Recipient in any media.
2.7 License to Marks.
(a) OSCI shall retain all right, title and interest in and to the Marks
worldwide, subject to the limited license granted to Recipient in this
Section 2.7. OSCI hereby grants Recipient a non-exclusive, royalty-free,
limited license to use the Marks solely in connection with its exercise of
the rights granted pursuant to this Agreement and to indicate that the
products being marketed by Recipient are compatible with, and meet the
standards of, OSCI Releases. All uses of the Marks shall be in
accordance with OSCIs trademark usage policy set forth in Exhibit D.
(b) Recipient shall assist OSCI to the extent reasonably necessary to
protect and maintain the Marks worldwide, including, but not limited to,
giving prompt notice to OSCI of any known or potential infringement of the
Marks, and cooperating with OSCI in preparing and executing any
documents necessary to register the Marks, or as may be required by the
laws or rules of any country or jurisdiction. In its sole discretion, OSCI
may commence, prosecute or defend any action or claim concerning the
Marks. OSCI shall have the right to control any such litigation, and
Recipient shall fully cooperate with OSCI in any such litigation. OSCI shall
reimburse Recipient for the reasonable costs associated with providing
such assistance, except to the extent that such costs result from
Recipients breach of this Section 2.7. Recipient shall not commence any
action regarding the Marks without OSCIs prior written consent.
(c) All goodwill with respect to the Marks shall accrue for the sole
benefit of OSCI. Recipient shall maintain the quality of any products,
associated packaging, collateral and marketing materials on which it uses
any of the Marks in a manner consistent with all terms, conditions and
requirements set forth in this Section 2.7 and at a level that meets or
exceeds Recipients overall reputation for quality and that is at least
commensurate with industry standards.
2.8 RECIPIENT UNDERSTANDS THAT ALTHOUGH EACH CONTRIBUTOR AND
OSCI GRANTS THE LICENSES SET FORTH HEREIN, NO ASSURANCES ARE
PROVIDED BY ANY CONTRIBUTOR OR OSCI THAT ANY OSCI RELEASE OR ANY
CONTRIBUTION, EITHER ALONE OR IN COMBINATION WITH ANY OTHER
CONTRIBUTION, DOES NOT INFRINGE THE PATENT OR OTHER INTELLECTUAL
PROPERTY RIGHTS OF ANY OTHER ENTITY. MOREOVER, NO ASSURANCES
ARE MADE THAT ANY CONTRIBUTION OF ONE CONTRIBUTOR DOES NOT
INFRINGE THE INTELLECTUAL PROPERTY RIGHTS OF ANOTHER CONTRIBUTOR.
EACH CONTRIBUTOR AND OSCI DISCLAIM ANY LIABILITY TO RECIPIENT FOR
CLAIMS BROUGHT BY ANY OTHER ENTITY BASED ON INFRINGEMENT OF
INTELLECTUAL PROPERTY RIGHTS OR OTHERWISE. In addition, as a condition
to exercising the rights and licenses granted hereunder, each Recipient hereby
assumes sole responsibility to secure any other intellectual property rights
needed, if any. For example, if a third party patent license is required to allow
Recipient to Distribute a computer program, then it is Recipient's responsibility to
acquire that license before Distributing such computer program.
3. DESCRIPTION AND DEPOSIT OF CONTRIBUTIONS
3.1 To the extent Recipient wishes to become a Contributor by making a
Contribution, such Contributor shall:
(a) (i) deposit such Contribution at the Website according to the
Contribution instructions found at such Website, or (ii) disclose such
Contribution at a meeting of any working group of OSCI;
(b) (i) describe such Contribution in reasonable detail on Exhibit B
(including the additions or changes such Contributor made to create the
Contribution and the date of any such changes or additions), (ii)
completing a Contribution Questionnaire with respect to such Contribution,
and (iii) delivering both documents to the Secretary of OSCI. All
Contributions made after the date hereof shall be effectuated by
Contributor (x) amending Exhibit B and delivering such amended Exhibit B
to the Secretary of OSCI, which amended exhibit shall automatically
replace the existing Exhibit B, (y) completing a Contribution Questionnaire
with respect to such Contribution, and (z) delivering both documents to the
Secretary of OSCI;
(c) cause such Contribution to contain a file documenting such
Contributor's name and contact information, additions or changes such
Contributor made to create the Contribution, and the date of any such
changes or additions; and
(d) cause such Contribution to include in each file a prominent
statement substantially similar to the following: "Any code contained in this
Contribution is derived, directly or indirectly, from the SystemC source
code. Copyright (c) 1996-{current year here} by all Contributors. All
Rights reserved. The contents of this file are subject to the restrictions
and limitations set forth in the SystemC Open Source License Version 3.0
(the "License"). You may not use this file except in compliance with such
restrictions and limitations. You may obtain instructions on how to receive
a copy of the License at http://www.systemc.org/. Software distributed by
Contributors under the License is distributed exclusively on an "AS IS"
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
See the License for the specific language governing rights and limitations
under the License."
3.2 OSCI may from time to time publish policies and procedures regarding the
contribution or depositing of Contributions as well as establish additional details
regarding the contribution process. Without limiting the foregoing, OSCI or the
administrators of the Website shall have the right to remove any Contribution
from the Website at any time.
4. REQUIREMENTS OF DISTRIBUTION
4.1 A Recipient may choose to Distribute any Contribution or any compilation
of multiple Contributions (except for any Code Contributions) under its own
license agreement, provided that:
(a) Recipient complies with the terms and conditions of this
Agreement;
(b) as between Recipient and any other Contributor, Recipient
assumes all warranties and conditions, express and implied, and all
liability for damages arising out of its Distribution; and
(c) Recipient makes available to recipients of such Distribution the
Source Code for such Distributions, and inform them on how to obtain it in
a reasonable manner on or through a medium customarily used for
software exchange.
4.2 If a Recipient chooses to Distribute any Code Contribution or compilations
of Code Contributions then:
(a) such Code Contribution must be Distributed under this Agreement;
and
(b) a copy of this Agreement must be included with each copy of such
Code Contribution.
4.3 Each Recipient must include the following in a conspicuous location in the
Code Contribution so Distributed:
Copyright (c) 1996-{current year here}, by all Contributors.
All rights reserved.
4.4 In addition, each Recipient that creates and Distributes or otherwise
transfers a Modification whether or not such Modification has been deposited
pursuant to Section 3 must identify the originator of such Modification in a
manner that reasonably allows third parties to identify the originator of the
Modification.
4.5 A Recipient may choose to Distribute the OSCI Documentation under its
own license agreement, provided that Recipient complies with the terms and
conditions of this Agreement. Each Recipient must include the following in a
conspicuous location in the OSCI Documentation so Distributed or transferred:
Copyright (c) 1996-{current year here}, by Open SystemC
Initiative. All rights reserved.
In addition, each Recipient that creates and Distributes a modification or
Derivative work of the OSCI Documentation, whether or not such modification or
Derivative work has been contributed pursuant to a Copyright Agreement must
identify the originator of such modification or Derivative work in a manner that
reasonably allows third parties to identify the originator of the modification or
derivative work.
5. INDEMNIFICATION
Any Recipient which Distributes any Contribution and/or OSCI Release (a "Distributor")
may accept certain responsibilities with respect to end users, business partners and the
like. While this license is intended to facilitate the commercial use of Contributions
OSCI Documentation and OSCI Releases, a Distributor shall Distribute such
Contributions, OSCI Documentation and OSCI Releases in a manner which does not
create potential liability for the Contributors. Therefore each Distributor hereby agrees
to defend and indemnify every Contributor ("Indemnified Contributor") against any
losses, damages and costs (collectively "Losses") arising from claims, lawsuits and
other legal actions brought by a third party against the Indemnified Contributor to the
extent caused by the acts or omissions of such Distributor, including but not limited to
the terms and conditions under which Distributor offered such Contributions, OSCI
Documentation and/or OSCI Releases in connection with its Distribution thereof. The
obligations in this Section 5 do not apply to any claims or Losses relating to any actual
or alleged intellectual property infringement of any Contribution, OSCI Documentation or
OSCI Release. In order to qualify, an Indemnified Contributor must: (a) promptly notify
the Distributor in writing of such claim, and (b) allow the Distributor to control, and
cooperate with the Distributor in, the defense and any related settlement negotiations.
The Indemnified Contributor may participate in the defense of any such claim at its own
expense.
For example, a Recipient might include a Contribution in a commercial product offering,
Product X. That Recipient is then a Distributor. If that Distributor then makes
performance claims, or offers warranties, support, or indemnity or any other license
terms related to Product X, those performance claims, offers and other terms are such
Distributor's responsibility alone. Under this Section 5, the Distributor would have to
defend claims against the Contributors related to those performance claims, offers, and
other terms, and if a court requires any Contributor to pay any damages as a result, the
Distributor must pay those damages.
6. NO WARRANTY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, ALL CONTRIBUTIONS, OSCI
DOCUMENTATION AND OSCI RELEASES ARE PROVIDED EXCLUSIVELY ON AN "AS IS"
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF
TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
PURPOSE. EACH RECIPIENT IS SOLELY RESPONSIBLE FOR DETERMINING THE
APPROPRIATENESS OF ITS USE AND DISTRIBUTION OF ANY CONTRIBUTION, OSCI
DOCUMENTATION AND OSCI RELEASE AND ASSUMES ALL RISKS ASSOCIATED WITH
ITS EXERCISE OF RIGHTS UNDER THIS AGREEMENT, INCLUDING BUT NOT LIMITED TO
THE RISKS AND COSTS OF PROGRAM ERRORS, COMPLIANCE WITH APPLICABLE
LAWS, DAMAGE TO OR LOSS OF DATA, PROGRAMS OR EQUIPMENT, AND
UNAVAILABILITY OR INTERRUPTION OF OPERATIONS. THIS DISCLAIMER OR
WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS AGREEMENT. NO USE OF
ANY CONTRIBUTION, OSCI DOCUMENTATION OR OSCI RELEASE ARE AUTHORIZED
HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
7. DISCLAIMER OF LIABILITY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NONE OF THE RECIPIENTS,
CONTRIBUTORS OR OSCI SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, PUNITIVE, OR CONSEQUENTIAL DAMAGES
(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
DISTRIBUTION OF ANY CONTRIBUTION, OSCI DOCUMENTATION OR OSCI RELEASE OR
THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
8. U.S. GOVERNMENT USE
If Recipient is licensing any computer program on behalf of any unit or agency of the
United States Government, then such computer program is commercial computer
software, and, pursuant to FAR 12.212 or DFARS 227.7202 and their successors, as
applicable, shall be licensed to the Government under the terms and conditions of this
Agreement.
9. PATENT CLAIMS
If Recipient institutes patent litigation against any entity (including a cross-claim,
counterclaim or declaratory judgment claim in a lawsuit) alleging that any Contribution,
OSCI Release or combination of Contributions (excluding combinations of any
Contribution with other software or hardware) infringes such Recipient's patent(s), then
the rights granted to Recipient by each Contributor under Section 2 shall terminate as of
the date such litigation is filed.
10. TERMINATION
All Recipient's rights under this Agreement shall terminate if Recipient fails to comply
with any of the material terms or conditions of this Agreement and does not cure such
failure in a reasonable period of time after becoming aware of such noncompliance. If
such occurs, Recipient shall cease all use and Distribution of any Contributions of any
other Contributor, OSCI Documentation and OSCI Releases based upon the rights
granted to Recipient under this Agreement as soon as reasonably practicable.
However, Recipient's obligations under this Agreement and any licenses granted by
Recipient relating to any Contributions shall survive such termination.
11. LICENSE VERSIONS
OSCI may publish new versions (including revisions) of this Agreement from time to
time. Each new version of the Agreement will be given a distinguishing version number.
Any Contribution, OSCI Documentation or OSCI Release may always be Distributed
subject to the version of the Agreement under which it was received. In addition, after a
new version of the Agreement is published, Contributor may elect to Distribute any
Contribution, OSCI Documentation or OSCI Release under the new version. No one
other than OSCI, acting by a vote of at least seventy five percent (75%) of the members
of its Board of Directors, has the right to modify this Agreement; provided that Exhibit B
and Exhibit C may be amended as specifically set forth in Section 3.1(b), and Exhibit D
may be amended as specifically set forth in Section 1.13.
12. ELECTRONIC ACCEPTANCE
This Agreement may be executed either electronically or on paper. If this Agreement is
executed electronically, by clicking on the “Accept” button, Recipient warrants that it
agrees to all of the terms of this Agreement, that Recipient is authorized to enter into
this Agreement, and that this Agreement is legally binding upon Recipient. If Recipient
does not agree to be bound by this Agreement, then Recipient shall click the “Decline”
button and Recipient shall not receive any rights from the Contributors nor shall
Recipient download any Contributions, OSCI Documentation or OSCI Releases.
13. GENERAL
This Agreement represents the complete agreement concerning the subject matter hereof
and supersedes all prior agreements or representations, oral or written, regarding the
subject matter hereof. If any provision of this Agreement is invalid or unenforceable
under applicable law, it shall not affect the validity or enforceability of the remainder of the
terms of this Agreement, and without further action by the parties hereto, such provision
shall be reformed to the minimum extent necessary to make such provision valid and
enforceable. This Agreement shall be executed in multiple counterparts (either
electronically and/or on paper), each of which shall be deemed to be an original, but all of
which shall be one and the same Agreement. A facsimile or other copy of the Agreement
shall have the same force and effect as an originally executed copy thereof.
This Agreement is governed by the laws of California, without reference to conflict of
laws principles. Each party waives its rights to a jury trial in any resulting litigation. Any
litigation relating to this Agreement shall be subject to the jurisdiction of the Federal
Courts of the Northern District of California, with venue lying in Santa Clara County,
California, or the Santa Clara County Superior Court. The application of the United
Nations Convention on Contracts for the International Sale of Goods is expressly
excluded. The provisions of this Agreement shall be construed fairly in accordance with
its terms and no rules of construction for or against either party shall be applied in the
interpreting this Agreement. Recipient shall not use any Contribution, OSCI
Documentation or OSCI Release in violation of local and other applicable laws
including, but not limited to, the export control laws of the United States.
EXHIBIT A
List of Contributions as of July 13, 2006
Number Contribution
1. Updated TLM Proposal
2. TLM Extensions
3. Abstract titled "Transaction Level Modeling in SystemC"
4. Code and related material entitled "SCE-API Example - Standard Co-emulation APO v1.8
Spec and Routed Example"
5. Code and related material entitled "Simplebus v2.2 Example for SystemC v2.0.
6. Code and related material entitled "SystemC Generic Transaction Level Communication
Channel."
7. Review of TLM API code and related documents.
8. SystemC Verification Library version 1.0; versions 1.1, 1.2, 2.0, 2.0.1 of the SystemC modeling
language as released by OSCI and which are, or were, available for download on the website
prior to the agreement; version 2.1 (beta 11) of the SystemC modeling language to be
released and made available by OSCI for download on the website.
9. Code and related material entitled "System Design with SystemC Examples."
10. Presentation document titled "Towards a SystemC Transaction Level Modeling Standard,"
dated June 2004; presentation document titled "TLM Extensions," dated April 2004;
presentation document titled "Updated TLM Proposal," dated March 29, 2004; abstract titled
"Transaction Level Modeling in System C."
11. Code and related material entitled "MP3 Decoder Example plus Performance Benchmark."
12. SystemC October 12 Library.
13. Source code modifications to the SystemC Library embodied in the October 12, 2004 kit
(system_2_z_lib.oct_12_2004.tgz).
Source code modifications to the SystemC Regression Test Suite embodied in the October 12,
2004 kit (systemc_2_1_tests.oct_12_2004.tgz).
14. Synthesizable Subset 1.0.
15. TLM Contribution (Presentation documents; abstract; code; proposal dated 3/24/04).
16. Updated version of TLM kit
17. Code and related material “2.1 Beta Regression Tests”
18. Code and related material “OSCI SystemC 2.1 Beta”
19. SystemC 2.1
20. Assorted recommendations for enhancements, bug fixes and improved cross-platform support,
including project files for Microsoft Visual C++ versions 6.0 and 7.1 that are contained within
the files systemc-2.1.05may05.tgz and systemc_tests-2.105may05.tgz.
21. Minor modifications incorporated in SystemC 2.1 open source implementation dated July 14,
2005 to permit port to Microsoft VC++ Version 7.
22. Numerous modifications incorporated in SystemC 2.1 open source implementation dated July
14, 2005.
23. A collection of interfaces and implementations in SystemC for analysis objects.
A collection of interfaces and implementations in SystemC for configuring components in a
design.
24. Modifications to the most recent version of SCV which allow it to run under the SystemC-2.1v1
kit.
25. Set of header files intended to be included in the SystemC TLM Modelling library code. The
API provides for 1 interfaces: (a) “Atom at once (Variously called BA, PVT, CC) in which a
single atom is transported at once.
26. Modifications included in SystemC 2.2 library labeled “systemc-2.2.04feb06.tgz;”
Modifications included in SystemC 2.2 test suite labeled “systemc_tests-2.2.04feb06.tgz.”
27. Modifications to the SystemC 2.2 library to enable the port to gcc version 4;
Addition of compliance_1666 tests to the SystemC 2.2 regression test suite.
28. OSCI_TL3_2006_03_01.zip, including any updates of any of the foregoing, and
OSCI_SCML_Memory_and_Bitfield_2006_03_01.zip, including any updates of any of the
foregoing.
29. C++/SystemC Code for Mentors SMI System PVT channel implementation; An example of a
protocol specific SystemC PVT channel implementation; Design examples using the above
channel models; A white-paper describing the channel implementations.
EXHIBIT D
Trademark Usage Policy
I. LIST OF MARKS
1. Open SystemC
2. Open SystemC Initiative
3. OSCI
4. SystemC
5. SystemC Initiative
6. All logos that incorporate the foregoing word marks
II. PROPER USE OF MARKS
Trademarks and service marks function as adjectives and generally should not be used as
nouns or verbs. Accordingly, as often as possible, the Marks should be used as adjectives
immediately preceding the generic noun that refers to the service in question. For example:
The SystemC® software
The OSCI® LRM
No Possessives or Plurals. Since they are not nouns, the Marks should never be used in the
possessive or plural forms. For example, it is not appropriate to write “SystemCs software.”
No Use as Verbs or as Puns. The Marks should never be used as verbs or as puns.
III. PROPER ATTRIBUTION
Trademark ownership is attributed in two ways, with the use of a symbol (TM, SM, ®) after the mark
and with a legal legend, usually found at the end of a document following the copyright notice.
Following are OSCIs rules for symbols and legends to attribute the Marks:
Symbols:
Which Symbol Do I Use?
The Marks generally function as trademarks rather than servicemarks. Unless you are
specifically directed otherwise, please use the ® symbol after the Marks.
Where Do I Place the ® Symbol?
The ® symbol is placed immediately after the mark, either in superscript or subscript.
When Do I Use the Symbol?
The ® symbol is to be used after the Marks in the following instances:
Most Prominent Uses: A ® symbol is required after prominent uses of the Marks, e.g., in the
headlines and large print text of web pages, advertisements, other promotional materials and
press releases, except where space limitations or specific style considerations prevent
compliance with this requirement.
First Use in Text: A ® symbol is required after the first use of each Mark in text, e.g. advertising
copy or the body of press releases, even though the symbol may have already appeared in the
headline or after another prominent use of the mark in the same document.
All Logos: The ® symbol must appear after all logos incorporating the Marks.
IV. Legends
All Marks that appear on a web page or in a press release, advertisement or other written
material (whether in print or electronic form) must be attributed in an appropriate legend. The
legend may be presented in “mouseprint” but must be large enough to be read easily. Legends
generally appear at the end of a document or the bottom of a web page but may be placed
elsewhere, e.g. the inside cover of documentation.
The OSCI Legend: The following legend should be used in all materials in which any of the
Marks appear:
[Insert the Marks] are trademarks or registered trademarks of Open SystemC Initiative, Inc. in
the United States and other countries and are used with permission.
V. MARKS NEVER COMBINED
The Marks should never be combined with the marks of any business other than OSCI. The
Marks should always appear visually separate from any other marks appearing in the same
materials such that each mark creates a distinct commercial impression. It would, for instance,
not be appropriate to superimpose the logo of another business over any OSCI logo.
VI. LOGOS
Logos incorporating the Marks can only be used in the format provided to you by OSCI for
incorporation into your materials or web pages. The logos provided to you by OSCI cannot be
modified in any way without OSCIs prior written approval. Logos copied from OSCI web pages
or other materials may not to be used. Please contact support@opensystemc.org to obtain
electronic files containing the OSCI logos and to ask any questions regarding the logos.

View File

@ -0,0 +1,42 @@
The SOFTWARE PRODUCT (SUBLIME TEXT) is protected by copyright laws and
international copyright treaties, as well as other intellectual property laws and
treaties. The SOFTWARE PRODUCT is licensed, not sold.
1. LICENSES
SUBLIME TEXT is licensed as follows:
a. Installation and Usage.
Licenses are per user and valid for use on all supported operating
systems. License keys may be used on multiple computers and operating
systems, provided the license key holder is the primary user. Businesses
must purchase at least as many licenses as the number of people using
SUBLIME TEXT.
b. Backup Copies.
You may make copies of the license key and or SUBLIME TEXT for
backup and archival purposes.
2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS
a. Maintenance of Copyright Notices.
You must not remove or alter any copyright notices on any copy of
SUBLIME TEXT.
b. Distribution.
You may not distribute or sell license keys or SUBLIME TEXT to third
parties. Licenses will be revoked if distributed or sold to third parties.
c. Rental.
You may not rent, lease, or lend the license key or SUBLIME TEXT.
3. COPYRIGHT
All title, including but not limited to copyrights, in and to SUBLIME TEXT and
any copies thereof are owned by SUBLIME HQ PTY LTD.
4. NO WARRANTIES
SUBLIME HQ PTY LTD expressly disclaims any warranty for SUBLIME TEXT,
which is provided 'as is' without any express or implied warranty of any kind,
including but not limited to any warranties of merchantability, non-
infringement, or fitness of a particular purpose.
5. LIMITATION OF LIABILITY
In no event shall SUBLIME HQ PTY LTD be liable for any damages due to use
of SUBLIME TEXT, to the maximum extent permitted by law. This includes
without limitation, lost profits, business interruption, or lost information. In no
event will SUBLIME HQ PTY LTD be liable for loss of data or for indirect,
special, incidental, consequential (including lost profit), or other damages.
SUBLIME HQ PTY LTD shall have no liability with respect to the content of
SUBLIME TEXT or any part thereof, including but not limited to errors or
omissions contained therein, libel, trademark rights, business interruption,
loss of privacy or the disclosure of confidential information.

View File

@ -1,42 +0,0 @@
GAMESS User License Agreement
All GAMESS requestors MUST agree to the following license
aggrement which covers all versions of GAMESS (source code,
and binaries for Windows, Macintosh and ChemOffice).
With regard to the ab initio quantum chemistry code GAMESS,
together with its associated graphics and utility programs,
with which you have supplied me a copy, I agree to the following
conditions:
1. I will not supply a copy of the code to anyone outside my
institution or corporation for any reason whatsoever. Instead,
I will refer any requests for copies of the program to you at
ISUQCG. This in no way limits my making of copies of the code
for backup purposes, or for running on more than one computer
system at my institution or home.
2. I understand that copyright or ownership rights to GAMESS
are retained by ISUQCG and contributors to the GAMESS package.
I will not incorporate any part of GAMESS into any other program
system, either for sale or for non-profit distribution, without
written permission from ISUQCG,
3. I understand that no large program such as GAMESS can be
considered to be bug free, and accordingly the ISUQCG supplies
the GAMESS software on an "as is" basis, with no additional
responsibility or liability,
4. If results obtained with GAMESS are published in the
scientific literature, I will reference the program from the
article M.W.Schmidt, K.K.Baldridge, J.A.Boatz, S.T.Elbert,
M.S.Gordon, J.H.Jensen, S.Koseki, N.Matsunaga, K.A.Nguyen,
S.J.Su, T.L.Windus, M.Dupuis, J.A.Montgomery
J. Comput. Chem. 14, 1347-1363 (1993). Using specific methods
included in GAMESS may require citing additional articles,
as described in the manual. I agree to honor the request to
cite additional papers, as appropriate.
5. This license is considered a "Research Group" license.
Thus anyone directly associated with your research group is
covered by the license and may share your copy of GAMESS on
all of your group's computer resources.

View File

@ -1,161 +0,0 @@
This terms of use agreement (this “agreement”) (together with the documents referred to in it) is a legal agreement between you and Troupe Technology Limited incorporated and registered in England and Wales with company number 08293148 and whose registered office is at 18 Mitchell Road, West Malling, Kent ME19 4RF, United Kingdom (“we”, “us” or “our”) for the use of our Gitter platform (“Gitter”).
By using and/or registering to use Gitter (whether as a free user or a paid user), you must read, agree with and accept all of the terms and conditions contained in this agreement. This agreement is provided to you and concluded in English. You agree that any use by you of Gitter shall constitute your acceptance of the agreement. We recommend that you store or print-off a copy of the agreement (including all policies) for your records.
If you do not agree to the terms of this agreement, please refrain from using Gitter.
1. Applicable terms
1. This agreement refers to the following additional terms, which also apply to your use of Gitter:
a. our acceptable use policy, which sets out the permitted and prohibited uses of Gitter. When using Gitter, you must comply with this acceptable use policy;
b. our privacy policy, which sets out the terms on which we process any personal data we collect from you, or that you provide to us. By using Gitter, you consent to such processing and you warrant that all data provided by you is accurate;
c. our cookie policy, which sets out information about the cookies on Gitter; and
d. a Creative Commons licence, which sets out the terms on which public conversations may be used and shared.
2. Gitter is built on top of GitHub. You must, therefore, comply with GitHubs terms and conditions. You acknowledge that we have no control over GitHubs terms and conditions.
3. If you subscribe for any of our other services you will also have to agree to the terms that govern the service you have subscribed for.
2. Accessing Gitter
1. We have developed Gitter to enable better communication between people and teams. You may use Gitter as either a free user or as a paid user.
2. In consideration of you agreeing to abide by the terms of this agreement, we hereby grant to you a non-exclusive, non-transferable, licence to use Gitter on the terms of this agreement.
3. Access to Gitter is permitted on a temporary basis and we reserve the right to withdraw or amend the services or functionality that we provide on Gitter without notice. We will not be liable if for any reason Gitter is unavailable at any time or for any period.
4. From time to time, we may restrict access to some parts of Gitter, or the entire Gitter platform, to users who have registered with us. We will use reasonable endeavours to fix issues and bugs in Gitter as quickly as we can.
5. If you choose, or you are provided with, a user identification code, password or any other piece of information as part of our security procedures, you must treat such information as confidential, and you must not disclose it to any third party. We have the right to disable any user identification code or password, whether chosen by you or allocated by us, at any time, if in our opinion you have failed to comply with any of the provisions of this agreement.
6. You must not misuse Gitter by knowingly introducing viruses, Trojans, worms, logic bombs or other material which is malicious or technologically harmful. You must not attempt to gain unauthorised access to Gitter, the server on which Gitter is stored or any server, computer or database connected to Gitter. You must not attack Gitter via a denial-of-service attack or a distributed denial-of service attack.
7. If you breach clause 2.6, you will be committing a criminal offence under the Computer Misuse Act 1990. We will report any such breach to the relevant law enforcement authorities and we will co-operate with those authorities by disclosing your identity to them. In the event of such a breach, we reserve the right to immediately cease your right to use Gitter.
3. Public and private messaging
1. Gitter allows users to communicate with each other, including the ability to send, receive or view public messages (for example, messages in Github public repositories or public Gitter channels) or private messages (whether one-on-one private conversations, group private conversations or messages on Github private repositories (together “private messages”)). You acknowledge and agree that you shall not misuse this functionality and will comply with the terms of this agreement and our Acceptable Use Policy at all times.
2. You acknowledge and agree that private messages:
a. are permanently stored by us;
b. are available and accessible for a limited or unlimited period of time depending on your subscription level;
c. are not completely private and shall be stored, and will be accessible by, us and its employees, agents and representatives; and
d. may be disclosed by us if required by law or any order of the court or any relevant regulatory body.
3. You acknowledge and agree that public messages and other user generated content:
a. can be viewed by all users and are indexed by search engines;
b. are accessible for an unlimited period of time; and
c. are subject to the Creative Commons licence: Attribution + Noncommercial + ShareAlike (BY-NC-SA).
4. Payment, upgrading and downgrading
1. If you wish to subscribe for a paid account, you:
a. must pay to us the relevant [monthly] fee as set out on our pricing page;
b. agree and undertake to pay to us (without any deduction) the relevant monthly fee in advance in full (in USD) and authorise us to collect the full fee from you each month until you cancel your subscription. All fees and charges will be exclusive of VAT (or other sales taxes). You shall be responsible for, and shall pay, any fees charged by your bank or credit or debit card provider;
c. acknowledge, subject to clause 5, that the relevant monthly fees are non-refundable.
2. If you upgrade from a free account to a paid account, or upgrade to a higher level paid account from a paid account, we will immediately bill you and you agree to pay to us (without any deduction) the relevant monthly fee in full (in USD).
3. You may downgrade your account level at any time but doing so may cause the loss of features and functionality. We do not accept any liability for such loss.
4. We reserve our rights to amend the fees at any time.
5. Cancelation and refunds
Cooling off period
1. If you are a consumer, you have a legal right to cancel a contract under the Consumer Contracts (Information, Cancellation and Additional Charges) Regulations 2013 during the period set out below in clause 5.2. This means that during the relevant period if you change your mind or for any other reason you decide you do not want to use Gitter, you can notify us of your decision to cancel this agreement and receive a refund.
2. Your legal right to cancel this agreement starts from the date you receive confirmation of subscription from us, which is when this agreement between us is formed. You then have a period of fourteen (14) working days in which you may cancel (“cooling-off period”). Working days means that Saturdays, Sundays or public holidays in England are not included in this period.
3. To cancel this agreement during the cooling-off period, please contact us in writing to tell us by sending an e-mail to support@gitter.im. You may wish to keep a copy of your cancellation notification for your own records. If you send us your cancellation notice by e-mail or by post, then your cancellation is effective from the date you sent us the e-mail or posted the letter to us.
Cancellation after the cooling off period
4. After the expiry of the cooling-off period set out in clause 5.2, you may cancel your account at any time by [clicking on the Cancel your Account link on your account settings page]. You are solely responsible for properly cancelling your account.
5. If you cancel your Gitter account before the end of your current paid up month, your cancellation will take effect immediately and you will not be charged again. You will not, however, receive a refund in respect of the remaining dates in the paid up month.
6. Your indemnities and undertakings
1. You agree that when using Gitter you will comply with all applicable laws and this agreement. In particular, but without limitation, you agree not to:
a. use Gitter in any unlawful manner or in a manner which promotes or encourages illegal activity; or
b. breach any law, statute, contract, or regulation;
c. act in a manner that is obscene, defamatory, libelous, unlawfully threatening or unlawfully harassing;
d. provide false, inaccurate or misleading information;
e. use an anonymising proxy; or
f. attempt to gain unauthorised access to Gitter or any networks, servers or computer systems connected to Gitter.
2. (together the “Restricted Activities”)
3. Except as expressly set out in this agreement or as permitted by any local law, you undertake:
a. not to rent, lease, sub-license, loan, translate, merge, adapt, vary or modify Gitter or your access to Gitter;
b. not to engage in any of the Restricted Activities, nor control an account that is linked to any of the Restricted Activities;
c. not to make alterations to, or modifications of, the whole or any part of Gitter nor permit Gitter or any part of it to be combined with, or become incorporated in, any other programs or websites;
d. not to disassemble, de-compile, reverse engineer or create derivative works based on the whole or any part of Gitter, except those parts of Gitter that are published under open-source licences;
e. to include our copyright notice on all entire and partial copies of Gitter in any form; or
f. not to provide, or otherwise make available, Gitter in any form, in whole or in part (including, but not limited to, program listings, object and source program listings, object code and source code) to any person without prior written consent from us, except those parts of Gitter that are published under open-source licences.
4. Notwithstanding clause 6.1 and 6.2, you agree to indemnify us in full and on demand from and against any loss, damage, costs or expenses which we suffer or incur directly or indirectly as a result of your use of Gitter otherwise than in accordance with this agreement or any applicable laws.
5. You warrant to us that all the information you provide to us is true and accurate to the best of your knowledge.
7. Intellectual property rights
1. We are the owner or the licensee of all intellectual property rights in Gitter, and in the material published on it. Those works are protected by copyright laws and treaties around the world. All such rights are reserved.
2. The trade marks, service marks, and logos (“Trade Marks”) contained on Gitter are owned by us, our group companies or third party partners of us. You cannot use, copy, edit, vary, reproduce, publish, display, distribute, store, transmit, commercially exploit or disseminate the Trade Marks without the prior written consent of us, the relevant group company or the relevant third party partner of us.
3. Subject to the terms of the Creative Commons licence which governs user generated content:
a. you must not modify the paper or digital copies of any materials you have printed off or downloaded in any way, and you must not use any illustrations, photographs, video or audio sequences or any graphics separately from any accompanying text;
b. our status (and that of any identified contributors) as the authors of content on Gitter must always be acknowledged.
c. you must not use any part of the content on Gitter for commercial purposes without obtaining a licence to do so from us or our licensors.
d. if you print off, copy or download any part of Gitter in breach of this agreement, your right to use Gitter will cease immediately and you must, at our option, return or destroy any copies of the materials you have made.
8. Uploading content to Gitter
1. Whenever you make use of a feature that allows you to upload content to Gitter, or to make contact with other users of Gitter, you must comply with the content standards set out in our Acceptable Use Policy.
2. You warrant that any such contribution does comply with those standards, and you will be liable to us and indemnify us for any breach of that warranty.
3. Any content you upload to Gitter in a public message will be considered non-confidential and non-proprietary. To the extent it is necessary in order to complete your requests, you grant to us a perpetual, worldwide, non-exclusive, royalty free and fully paid licence to, without limitation, use, sublicence, copy, repost, transmit or otherwise distribute, publicly display, publicly perform, adapt, prepare derivative works of, compile, make available and otherwise communicate to the public the content
4. We also have the right to disclose your identity to any third party who is claiming that any content posted or uploaded by you to Gitter constitutes a violation of their intellectual property rights, or of their right to privacy.
5. We have the right to remove any posting you make on Gitter if, in our opinion, your post does not comply with the content standards set out in our Acceptable Use Policy.
6. You acknowledge and agree that Gitter acts merely as a passive conduit and/or host for the uploading storage and distribution of such content. The views expressed by other users on Gitter do not represent our views or values. We cannot and do not review the Content created or uploaded by its users, and neither we nor our subsidiaries, affiliates, successors, assigns, employees, agents, directors, officers and shareholders has any obligation, and does not undertake or assume any duty, to monitor Gitter for content that is inappropriate, that does not or might infringe any third party rights, or has otherwise been uploaded in breach of this agreement or applicable law.
7. You are solely responsible for all of the content that you upload, post or distribute to, on or through Gitter, and to the extent permissible by law, we exclude all liability with respect to content and the activities of users.
9. Changes to these terms
We may revise this agreement (or any of the documents referred to in this agreement) at any time by amending this page. Please check this page from time to time to take notice of any changes we made, as they are binding on you.
10. Duplicate accounts
We reserve the right to refuse the creation of duplicate accounts for the same user. In a case where duplicate accounts are detected, we reserve the right to close or merge these duplicate accounts without notification.
11. Eligibility
1. To be eligible for Gitter, you must (a) be at least 13 years old; (b) be a registered member of GitHub; and (c) agree to the terms of this agreement.
2. You further represent and warrant to us that if you are an individual and you open an account with us that you are not acting on behalf of an undisclosed principal or a third party beneficiary.
3. You undertake that your login may only be used by you and a login shared by multiple people is not permitted.
12. No warranty
1. Use of Gitter is at your own risk. Gitter is provided on an “as is” basis. We do not warrant or guarantee that Gitter and all or part of its contents will be always available or that its use will not be interrupted.
2. You acknowledge that Gitter may not be free of bugs or errors and you agree that the existence of any minor errors shall not constitute a breach of this agreement.
13. Our liability
1. Nothing in this agreement excludes or limits our liability for death or personal injury arising from our negligence, or our fraud or fraudulent misrepresentation, or any other liability that cannot be excluded or limited by English law.
2. To the extent permitted by law, we exclude all conditions, warranties, representations or other terms which may apply to Gitter or any content on it, whether express or implied.
3. Subject to clause 13.1, we will not be liable to any user for any loss or damage, whether in contract, tort (including negligence), breach of statutory duty, or otherwise, even if foreseeable, arising under or in connection with:
a. use of, or inability to use, Gitter; or
b. use of or reliance on any content displayed on Gitter.
4. We will not be liable for any loss or damage caused by a virus, distributed denial-of-service attack, or other technologically harmful material that may infect your computer equipment, computer programs, data or other proprietary material due to your use of Gitter or to your downloading of any content on it, or on any website linked to it.
5. We assume no responsibility for the content of websites linked on Gitter. Such links should not be interpreted as endorsement by us of those linked websites. We will not be liable for any loss or damage that may arise from your use of them.
6. Subject to clause 13.1, our maximum aggregate liability under or in connection with this agreement, or any collateral contract, whether in contract, tort (including negligence) or otherwise, shall in all circumstances be limited to a sum equal to US$100 or the amount you paid to us in fees in the previous 12 calendar months, whichever is greater.
14. Termination
1. Either party may terminate this agreement immediately and without notice to the other party. You may terminate this agreement by deleting your account and refraining to use Gitter.
2. Upon termination or expiry for any reason:
a. all rights granted to you under this agreement shall cease;
b. you must cease all activities authorised by this agreement;
c. we will not delete the content you have posted on Gitter; and
d. you must immediately delete your account and cease using Gitter and certify to us that you have done so.
3. Any provision of this agreement that expressly or by implication is intended to come into or continue in force on or after termination or expiry of this agreement shall remain in full force and effect.
15. Transfer of rights and obligations
1. This agreement is binding on you and us and on our respective successors and assignees.
2. You may not transfer, assign, charge or otherwise dispose of this agreement, or any of your rights or obligations arising under it, without our prior written consent.
3. We may assign, charge, novate or otherwise dispose of this agreement without our prior written consent.
16. General Terms
Communications
1. We are required to provide certain information to you in writing. By accepting this agreement, you agree that we can communicate with you electronically either by email or by posting notices on Gitter.
Entire Agreement
2. This agreement and any document expressly referred to in it constitutes the whole agreement between us and supersedes any previous discussions, correspondence, arrangements or understandings between us.
Law and Jurisdiction
2. This agreement and any dispute or claim arising out of or in connection with it or its subject matter or formation (including non-contractual disputes or claims) shall be governed by and construed in accordance with the law of England and Wales.
4. Any dispute or claim arising out of or in connection with this agreement will be subject to the exclusive jurisdiction of the courts of England and Wales.
Contact us
5. To contact us, please email support@gitter.im.
PLEASE NOTE: The in summary section is for information only and has been provided to help you to understand our legal terms and policies. The in summary section does not replace our terms and conditions of use and you must still read, agree with and accept all of our legal terms and policies before you can use Gitter. In the event of conflict between the in summary section and any of the terms of our legal agreements or policies, our legal agreements and/or policies shall prevail.

View File

@ -1,20 +0,0 @@
---------------------
LICENSE AGREEMENT
---------------------
The MAMMOTH user automatically accepts the following terms when using the program:
(1) Report errors, bugs or modificarions in the program to main author, Angel R Ortiz, e-mail: aro@cbm.uam.es
(2) Do not redistribute the program and/or its modifications. Interested users should contact directly to the author in order to obtain a copy of the program.
(3) This license is for scientific non-profit and non-commercial use only. Any other use of this software for other purposes, alone or integrated into other software, requires the prior consent of the author.
(4) The authors do not assume any responsibility for the licensed software and its use. The author will not assume any liability
for damages occurring through the use of the licensed software; does not guarantee the suitability of the licensed software for any application; and does not provide support.
(5) Acknowledge the use of the program in scientific publications:
Ortiz AR, Strauss CE, Olmea O.
MAMMOTH (Matching molecular models obtained from theory)
An automated method for model comparison.
Protein Sci. 2002 Nov;11(11):2606-21.

View File

@ -6,8 +6,10 @@ Free Cultural Works [3], even if it is distributed under a free
software license. Source code is the preferred form in which a
programmer would modify the work.
The "no-source-code" license label must never be used on its own, but
only along with the license under which the package is distributed.
Note to developers: The "no-source-code" license label must never be
used on its own, but only along with the license under which the
package is distributed. It should only be used together with licenses
that would qualify as free when used for source code.
[1] http://www.gnu.org/philosophy/free-sw.html
[2] http://opensource.org/osd

View File

@ -1,222 +0,0 @@
Oracle Technology Network Development and Distribution License Terms
Export Controls on the Programs
Selecting the "Accept License Agreement" button is a confirmation of your
agreement that you comply, now and during the trial term, with each of the
following statements:
-You are not a citizen, national, or resident of, and are not under control of,
the government of Cuba, Iran, Sudan, Libya, North Korea, Syria, nor any country
to which the United States has prohibited export.
-You will not download or otherwise export or re-export the Programs, directly
or indirectly, to the above mentioned countries nor to citizens, nationals or
residents of those countries.
-You are not listed on the United States Department of Treasury lists of
Specially Designated Nationals, Specially Designated Terrorists, and Specially
Designated Narcotic Traffickers, nor are you listed on the United States
Department of Commerce Table of Denial Orders.
You will not download or otherwise export or re-export the Programs, directly or
indirectly, to persons on the above mentioned lists.
You will not use the Programs for, and will not allow the Programs to be used
for, any purposes prohibited by United States law, including, without
limitation, for the development, design, manufacture or production of nuclear,
chemical or biological weapons of mass destruction.
EXPORT RESTRICTIONS
You agree that U.S. export control laws and other applicable export and import
laws govern your use of the programs, including technical data; additional
information can be found on Oracle®'s Global Trade Compliance web site
(http://www.oracle.com/products/export).
You agree that neither the programs nor any direct product thereof will be
exported, directly, or indirectly, in violation of these laws, or will be used
for any purpose prohibited by these laws including, without limitation, nuclear,
chemical, or biological weapons proliferation.
Oracle Employees: Under no circumstances are Oracle Employees authorized to
download software for the purpose of distributing it to customers. Oracle
products are available to employees for internal use or demonstration purposes
only. In keeping with Oracle's trade compliance obligations under U.S. and
applicable multilateral law, failure to comply with this policy could result in
disciplinary action up to and including termination.
Note: You are bound by the Oracle Technology Network ("OTN") License Agreement
terms. The OTN License Agreement terms also apply to all updates you receive
under your Technology Track subscription.
The OTN License Agreement terms below supercede any shrinkwrap license on the
OTN Technology Track software CDs and previous OTN License terms (including the
Oracle Program License as modified by the OTN Program Use Certificate).
Oracle Technology Network Development and Distribution License Agreement
"We," "us," and "our" refers to Oracle USA, Inc., for and on behalf of itself
and its subsidiaries and affiliates under common control. "You" and "your"
refers to the individual or entity that wishes to use the programs from Oracle.
"Programs" refers to the software product you wish to download and use and
program documentation. "License" refers to your right to use the programs under
the terms of this agreement. This agreement is governed by the substantive and
procedural laws of California. You and Oracle agree to submit to the exclusive
jurisdiction of, and venue in, the courts of San Francisco, San Mateo, or Santa
Clara counties in California in any dispute arising out of or relating to this
agreement.
We are willing to license the programs to you only upon the condition that you
accept all of the terms contained in this agreement. Read the terms carefully
and select the "Accept" button at the bottom of the page to confirm your
acceptance. If you are not willing to be bound by these terms, select the "Do
Not Accept" button and the registration process will not continue.
License Rights
We grant you a nonexclusive, nontransferable limited license to use the programs
for purposes of developing your applications. You may also distribute the
programs with your applications to your customers. If you want to use the
programs for any purpose other than as expressly permitted under this agreement
you must contact us, or an Oracle reseller, to obtain the appropriate license.
We may audit your use of the programs. Program documentation is either shipped
with the programs, or documentation may accessed online at
http://otn.oracle.com/docs.
Ownership and Restrictions
We retain all ownership and intellectual property rights in the programs. You
may make a sufficient number of copies of the programs for the licensed use and
one copy of the programs for backup purposes.
You may not:
- use the programs for any purpose other than as provided above;
- distribute the programs unless accompanied with your applications;
- charge your end users for use of the programs;
- remove or modify any program markings or any notice of our proprietary rights;
- use the programs to provide third party training on the content and/or
functionality of the programs, except for training your licensed users;
- assign this agreement or give the programs, program access or an interest in
the programs to any individual or entity except as provided under this
agreement;
- cause or permit reverse engineering (unless required by law for
interoperability), disassembly or decompilation of the programs;
- disclose results of any program benchmark tests without our prior consent; or,
- use any Oracle name, trademark or logo.
Program Distribution
We grant you a nonexclusive, nontransferable right to copy and distribute the
programs to your end users provided that you do not charge your end users for
use of the programs and provided your end users may only use the programs to run
your applications for their business operations. Prior to distributing the
programs you shall require your end users to execute an agreement binding them
to terms consistent with those contained in this section and the sections of
this agreement entitled "License Rights," "Ownership and Restrictions,"
"Export," "Disclaimer of Warranties and Exclusive Remedies," "No Technical
Support," "End of Agreement," "Relationship Between the Parties," and "Open
Source." You must also include a provision stating that your end users shall
have no right to distribute the programs, and a provision specifying us as a
third party beneficiary of the agreement. You are responsible for obtaining
these agreements with your end users.
You agree to: (a) defend and indemnify us against all claims and damages caused
by your distribution of the programs in breach of this agreements and/or failure
to include the required contractual provisions in your end user agreement as
stated above; (b) keep executed end user agreements and records of end user
information including name, address, date of distribution and identity of
programs distributed; (c) allow us to inspect your end user agreements and
records upon request; and, (d) enforce the terms of your end user agreements so
as to effect a timely cure of any end user breach, and to notify us of any
breach of the terms.
Export
You agree that U.S. export control laws and other applicable export and import
laws govern your use of the programs, including technical data; additional
information can be found on Oracle's Global Trade Compliance web site located at
http://www.oracle.com/products/export/index.html?content.html. You agree that
neither the programs nor any direct product thereof will be exported, directly,
or indirectly, in violation of these laws, or will be used for any purpose
prohibited by these laws including, without limitation, nuclear, chemical, or
biological weapons proliferation.
Disclaimer of Warranty and Exclusive Remedies
THE PROGRAMS ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. WE FURTHER
DISCLAIM ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING WITHOUT LIMITATION, ANY
IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
NONINFRINGEMENT.
IN NO EVENT SHALL WE BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE
OR CONSEQUENTIAL DAMAGES, OR DAMAGES FOR LOSS OF PROFITS, REVENUE, DATA OR DATA
USE, INCURRED BY YOU OR ANY THIRD PARTY, WHETHER IN AN ACTION IN CONTRACT OR
TORT, EVEN IF WE HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. OUR
ENTIRE LIABILITY FOR DAMAGES HEREUNDER SHALL IN NO EVENT EXCEED ONE THOUSAND
DOLLARS (U.S. $1,000).
No Technical Support
Our technical support organization will not provide technical support, phone
support, or updates to you for the programs licensed under this agreement.
Restricted Rights
If you distribute a license to the United States government, the programs,
including documentation, shall be considered commercial computer software and
you will place a legend, in addition to applicable copyright notices, on the
documentation, and on the media label, substantially similar to the following:
NOTICE OF RESTRICTED RIGHTS
"Programs delivered subject to the DOD FAR Supplement are 'commercial computer
software' and use, duplication, and disclosure of the programs, including
documentation, shall be subject to the licensing restrictions set forth in the
applicable Oracle license agreement. Otherwise, programs delivered subject to
the Federal Acquisition Regulations are 'restricted computer software' and use,
duplication, and disclosure of the programs, including documentation, shall be
subject to the restrictions in FAR 52.227-19, Commercial Computer
Software-Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway,
Redwood City, CA 94065."
End of Agreement
You may terminate this agreement by destroying all copies of the programs. We
have the right to terminate your right to use the programs if you fail to comply
with any of the terms of this agreement, in which case you shall destroy all
copies of the programs.
Relationship Between the Parties
The relationship between you and us is that of licensee/licensor. Neither party
will represent that it has any authority to assume or create any obligation,
express or implied, on behalf of the other party, nor to represent the other
party as agent, employee, franchisee, or in any other capacity. Nothing in this
agreement shall be construed to limit either party's right to independently
develop or distribute software that is functionally similar to the other party's
products, so long as proprietary information of the other party is not included
in such software.
Open Source
"Open Source" software - software available without charge for use, modification
and distribution - is often licensed under terms that require the user to make
the user's modifications to the Open Source software or any software that the
user 'combines' with the Open Source software freely available in source code
form. If you use Open Source software in conjunction with the programs, you must
ensure that your use does not: (i) create, or purport to create, obligations of
us with respect to the Oracle programs; or (ii) grant, or purport to grant, to
any third party any rights to or immunities under our intellectual property or
proprietary rights in the Oracle programs. For example, you may not develop a
software program using an Oracle program and an Open Source program where such
use results in a program file(s) that contains code from both the Oracle program
and the Open Source program (including without limitation libraries) if the Open
Source program is licensed under a license that requires any "modifications" be
made freely available. You also may not combine the Oracle program with programs
licensed under the GNU General Public License ("GPL") in any manner that could
cause, or could be interpreted or asserted to cause, the Oracle program or any
modifications thereto to become subject to the terms of the GPL.
Entire Agreement
You agree that this agreement is the complete agreement for the programs and
licenses, and this agreement supersedes all prior or contemporaneous agreements
or representations. If any term of this agreement is found to be invalid or
unenforceable, the remaining provisions will remain effective.
Last updated: 03/09/05
Should you have any questions concerning this License Agreement, or if you
desire to contact Oracle for any reason, please write:
Oracle USA, Inc.
500 Oracle Parkway,
Redwood City, CA 94065
Oracle may contact you to ask if you had a satisfactory experience installing
and using this OTN software download.

View File

@ -1,51 +0,0 @@
Copyright (C) 2009-2016 Advanced Micro Devices, Inc. All rights reserved.
REDISTRIBUTION: Permission is hereby granted, free of any license fees,
to any person obtaining a copy of this microcode (the "Software"), to
install, reproduce, copy and distribute copies, in binary form only, of
the Software and to permit persons to whom the Software is provided to
do the same, provided that the following conditions are met:
No reverse engineering, decompilation, or disassembly of this Software
is permitted.
Redistributions must reproduce the above copyright notice, this
permission notice, and the following disclaimers and notices in the
Software documentation and/or other materials provided with the
Software.
DISCLAIMER: THE USE OF THE SOFTWARE IS AT YOUR SOLE RISK. THE SOFTWARE
IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND AND COPYRIGHT
HOLDER AND ITS LICENSORS EXPRESSLY DISCLAIM ALL WARRANTIES, EXPRESS AND
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
COPYRIGHT HOLDER AND ITS LICENSORS DO NOT WARRANT THAT THE SOFTWARE WILL
MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF THE SOFTWARE WILL BE
UNINTERRUPTED OR ERROR-FREE. THE ENTIRE RISK ASSOCIATED WITH THE USE OF
THE SOFTWARE IS ASSUMED BY YOU. FURTHERMORE, COPYRIGHT HOLDER AND ITS
LICENSORS DO NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE
OR THE RESULTS OF THE USE OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS,
ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE.
DISCLAIMER: UNDER NO CIRCUMSTANCES INCLUDING NEGLIGENCE, SHALL COPYRIGHT
HOLDER AND ITS LICENSORS OR ITS DIRECTORS, OFFICERS, EMPLOYEES OR AGENTS
("AUTHORIZED REPRESENTATIVES") BE LIABLE FOR ANY INCIDENTAL, INDIRECT,
SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS
PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND THE
LIKE) ARISING OUT OF THE USE, MISUSE OR INABILITY TO USE THE SOFTWARE,
BREACH OR DEFAULT, INCLUDING THOSE ARISING FROM INFRINGEMENT OR ALLEGED
INFRINGEMENT OF ANY PATENT, TRADEMARK, COPYRIGHT OR OTHER INTELLECTUAL
PROPERTY RIGHT EVEN IF COPYRIGHT HOLDER AND ITS AUTHORIZED
REPRESENTATIVES HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN
NO EVENT SHALL COPYRIGHT HOLDER OR ITS AUTHORIZED REPRESENTATIVES TOTAL
LIABILITY FOR ALL DAMAGES, LOSSES, AND CAUSES OF ACTION (WHETHER IN
CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE) EXCEED THE AMOUNT OF
US$10.
Notice: The Software is subject to United States export laws and
regulations. You agree to comply with all domestic and international
export laws and regulations that apply to the Software, including but
not limited to the Export Administration Regulations administered by the
U.S. Department of Commerce and International Traffic in Arm Regulations
administered by the U.S. Department of State. These laws include
restrictions on destinations, end users and end use.

View File

@ -1,199 +0,0 @@
Sun Microsystems, Inc.
Binary Code License Agreement
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMEN
TAL LICENSE TERMS (COLLECTIVELY "AGREEMENT") CAREFULLY BEFO
RE OPENING THE SOFTWARE MEDIA PACKAGE. BY OPENING THE SOFT
WARE MEDIA PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMEN
T. IF YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, INDIC
ATE YOUR ACCEPTANCE OF THESE TERMS BY SELECTING THE "ACCEPT
" BUTTON AT THE END OF THIS AGREEMENT. IF YOU DO NOT AGREE
TO ALL THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO
YOUR PLACE OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS
ACCESSED ELECTRONICALLY, SELECT THE "DECLINE" BUTTON AT TH
E END OF THIS AGREEMENT.
1. LICENSE TO USE. Sun grants you a non-exclusive and non
-transferable license for the internal use only of the acco
mpanying software and documentation and any error correctio
ns provided by Sun (collectively "Software"), by the number
of users and the class of computer hardware for which the
corresponding fee has been paid.
2. RESTRICTIONS. Software is confidential and copyrighted
. Title to Software and all associated intellectual propert
y rights is retained by Sun and/or its licensors. Except a
s specifically authorized in any Supplemental License Terms
, you may not make copies of Software, other than a single
copy of Software for archival purposes. Unless enforcement
is prohibited by applicable law, you may not modify, decom
pile, or reverse engineer Software. Licensee acknowledges
that Licensed Software is not designed or intended for use
in the design, construction, operation or maintenance of an
y nuclear facility. Sun Microsystems, Inc. disclaims any ex
press or implied warranty of fitness for such uses. No ri
ght, title or interest in or to any trademark, service mark
, logo or trade name of Sun or its licensors is granted und
er this Agreement.
3. LIMITED WARRANTY. Sun warrants to you that for a perio
d of ninety (90) days from the date of purchase, as evidenc
ed by a copy of the receipt, the media on which Software is
furnished (if any) will be free of defects in materials an
d workmanship under normal use. Except for the foregoing,
Software is provided "AS IS". Your exclusive remedy and Su
n's entire liability under this limited warranty will be at
Sun's option to replace Software media or refund the fee p
aid for Software.
4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS AGREE
MENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AN
D WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABI
LITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT
ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS
ARE HELD TO BE LEGALLY INVALID.
5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED
BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT
, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CA
USED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF
OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN
IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES
. In no event will Sun's liability to you, whether in cont
ract, tort (including negligence), or otherwise, exceed the
amount paid by you for Software under this Agreement. The
foregoing limitations will apply even if the above stated
warranty fails of its essential purpose.
6. Termination. This Agreement is effective until termina
ted. You may terminate this Agreement at any time by destr
oying all copies of Software. This Agreement will terminat
e immediately without notice from Sun if you fail to comply
with any provision of this Agreement. Upon Termination, y
ou must destroy all copies of Software.
7. Export Regulations. All Software and technical data del
ivered under this Agreement are subject to US export contro
l laws and may be subject to export or import regulations i
n other countries. You agree to comply strictly with all s
uch laws and regulations and acknowledge that you have the
responsibility to obtain such licenses to export, re-export
, or import as may be required after delivery to you.
8. U.S. Government Restricted Rights. If Software is bein
g acquired by or on behalf of the U.S. Government or by a U
.S. Government prime contractor or subcontractor (at any ti
er), then the Government's rights in Software and accompany
ing documentation will be only as set forth in this Agreeme
nt; this is in accordance with 48 CFR 227.7201 through 227.
7202-4 (for Department of Defense (DOD) acquisitions) and w
ith 48 CFR 2.101 and 12.212 (for non-DOD acquisitions).
9. Governing Law. Any action related to this Agreement wi
ll be governed by California law and controlling U.S. feder
al law. No choice of law rules of any jurisdiction will ap
ply.
10. Severability. If any provision of this Agreement is hel
d to be unenforceable, this Agreement will remain in effect
with the provision omitted, unless omission would frustrat
e the intent of the parties, in which case this Agreement w
ill immediately terminate.
11. Integration. This Agreement is the entire agreement be
tween you and Sun relating to its subject matter. It super
sedes all prior or contemporaneous oral or written communic
ations, proposals, representations and warranties and preva
ils over any conflicting or additional terms of any quote,
order, acknowledgment, or other communication between the p
arties relating to its subject matter during the term of th
is Agreement. No modification of this Agreement will be bi
nding, unless in writing and signed by an authorized repres
entative of each party.
JAVA(TM) INTERFACE CLASSES
J2EE(TM) DEPLOYMENT SPECIFICATION INTERFACE CLASSES 1.1
SUPPLEMENTAL LICENSE TERMS
These supplemental license terms ("Supplemental Terms") add
to or modify the terms of the Binary Code License Agreemen
t (collectively, the "Agreement"). Capitalized terms not de
fined in these Supplemental Terms shall have the same meani
ngs ascribed to them in the Agreement. These Supplemental T
erms shall supersede any inconsistent or conflicting terms
in the Agreement, or in any license contained within the So
ftware.
1. Software Internal Use and Development License Grant. Sub
ject to the terms and conditions of this Agreement, includi
ng, but not limited to Section 3 (Java(TM) Technology Restr
ictions) of these Supplemental Terms, Sun grants you a non-
exclusive, non-transferable, limited license to reproduce i
nternally and use internally the binary form of the Softwar
e, complete and unmodified, for the sole purpose of designi
ng, developing and testing your Java applets and applicatio
ns ("Programs").
2. License to Distribute Software. In addition to the lice
nse granted in Section 1 (Software Internal Use and Develop
ment License Grant) of these Supplemental Terms, subject to
the terms and conditions of this Agreement, including but
not limited to Section 3 (Java Technology Restrictions), Su
n grants you a non-exclusive, non-transferable, limited lic
ense to reproduce and distribute the Software in binary for
m only, provided that you (i) distribute the Software compl
ete and unmodified and only bundled as part of your Program
s, (ii) do not distribute additional software intended to r
eplace any component(s) of the Software, (iii) do not remov
e or alter any proprietary legends or notices contained in
the Software, (iv) only distribute the Software subject to
a license agreement that protects Sun's interests consisten
t with the terms contained in this Agreement, and (v) agree
to defend and indemnify Sun and its licensors from and aga
inst any damages, costs, liabilities, settlement amounts an
d/or expenses (including attorneys' fees) incurred in conne
ction with any claim, lawsuit or action by any third party
that arises or results from the use or distribution of any
and all Programs and/or Software.
3. Java Technology Restrictions. You may not modify the Jav
a Platform Interface ("JPI", identified as classes containe
d within the "java" package or any subpackages of the "java
" package), by creating additional classes within the JPI o
r otherwise causing the addition to or modification of the
classes in the JPI. In the event that you create an additi
onal class and associated API(s) which (i) extends the func
tionality of the Java Platform, and (ii) is exposed to thir
d party software developers for the purpose of developing a
dditional software which invokes such additional API, you m
ust promptly publish broadly an accurate specification for
such API for free use by all developers. You may not create
, or authorize your licensees to create additional classes,
interfaces, or subpackages that are in any way identified
as "java", "javax", "sun" or similar convention as specifie
d by Sun in any naming convention designation.
4. Trademarks and Logos. You acknowledge and agree as betwe
en you and Sun that Sun owns the SUN, SOLARIS, JAVA, JINI,
FORTE, and iPLANET trademarks and all SUN, SOLARIS, JAVA, J
INI, FORTE, and iPLANET-related trademarks, service marks,
logos and other brand designations ("Sun Marks"), and you a
gree to comply with the Sun Trademark and Logo Usage Requir
ements currently located at http://www.sun.com/policies/tra
demarks. Any use you make of the Sun Marks inures to Sun's
benefit.
5. Source Code. Software may contain source code that is pr
ovided solely for reference purposes pursuant to the terms
of this Agreement. Source code may not be redistributed un
less expressly provided for in this Agreement.
6. Termination for Infringement. Either party may termina
te this Agreement immediately should any Software become, o
r in either party's opinion be likely to become, the subjec
t of a claim of infringement of any intellectual property r
ight.
For inquiries please contact: Sun Microsystems, Inc. 4150 N
etwork Circle, Santa Clara, California 95054.

View File

@ -0,0 +1,261 @@
YumaWorks License Agreement
yangcli-pro End User License Agreement
YumaWorks, Inc., Licensor, ("YumaWorks") is willing to license the software contained herein
("Licensed Software") only on the condition that you accept all of the terms in this Agreement.
PLEASE READ THE TERMS CAREFULLY. BY LOADING, DOWNLOADING, MODIFYING, OR
OTHERWISE USING THE LICENSED SOFTWARE, YOU AGREE TO BE BOUND BY THIS
LICENSE AGREEMENT.
If you do not agree to these terms, YumaWorks is unwilling to license the software to you. In
such event, you may not use the licensed software, and you should promptly contact
YumaWorks for instructions on erasing and/or inactivating it.
NOTE:
• THE LICENSED SOFTWARE IS LIMITED TO USE BY A SINGLE USER
• THE LICENSED SOFTWARE MAY INSTALLED ON ONE COMPUTER.
SEE EXHIBIT B.
• THE LICENSED SOFTWARE CANNOT BE DISTRIBUTED TO OTHERS.
• THE TEST RESULTS FROM USE OF THE LICENSED SOFTWARE TESTS CANNOT
BE PUBLISHED IN ANY WAY.
• THE SOFTWARE AND ACCOMPANYING USER DOCUMENTATION ARE PROTECTED
BY UNITED STATES COPYRIGHT LAW AND INTERNATIONAL TREATY.
UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND
CRIMINAL PENALTIES.
• THE SOFTWARE USES EXTERNAL LIBRARIES AND OPEN-SOURCE C MODULES
WHICH HAVE THEIR OWN LICENSE. REFER TO yumapro-legal-notices.pdf.
This License Agreement (the "Agreement") is made as of the purchase date (the "Effective
Date"), by and between YumaWorks, Inc., a California corporation that may be contacted at 685
Cochran St., #160, Simi Valley, CA, 93065 ("YumaWorks") and you ("Licensee").
RECITALS
A. YumaWorks owns the rights to grant licenses to certain computer software modules used in
implementing certain networking protocols described in Exhibit A.
B. YumaWorks desires to grant and Licensee desires to receive a non- exclusive license to such
YumaWorks computer software modules in accordance with the terms and conditions of this
Agreement.
NOW, THEREFORE, in consideration of the mutual promises contained herein, the parties
agree as follows:
1. DEFINITIONS
1.1 Licensed Software means YumaWorks's computer software modules and documentation
thereof, as specified in Exhibit A, including bug fixes and updates there to provided to
Licensee in connection with this Agreement.
1.2 Intellectual Property Rights means patent rights, copyright rights, trade secret rights,
and any other intellectual property rights.
1.3 Binary Code means the portion of the Licensed Software which is licensed to Licensee in
machine executable binary form, as specified in Exhibit A.
1.4 Source Code means the portion of the Licensed Software which is licensed to Licensee in
human-readable form, as specified in Exhibit A.
2. LICENSE GRANTS
2.1 Binary Code Use License. Subject to the terms and conditions of this Agreement, and
upon payment by Licensee to YumaWorks of the license fees set forth in Section 6.1,
YumaWorks grants Licensee a non-exclusive, non-transferable license to use the Binary Code
(if any) for internal use only, for the sole purpose of defining and managing networking devices
on its own internal (enterprise) network. Licensee may use the Binary Code (if any) as
specified in Exhibit B. Licensee agrees to comply with all reasonable monitoring requirements
imposed by YumaWorks to ensure compliance with the license restrictions.
2.2 No Sublicense Right. Licensee has no right to transfer, sublicense or otherwise distribute
the Licensed Software to any third party.
2.3 Other Restrictions in License Grants. Licensee may not: (i) disassemble, decompile or
reverse engineer the Binary Code nor permit any third party to do so; (ii) copy the Licensed
Software, except as necessary to use the Licensed Software in accordance with the license
granted under Sections 2.1, and except for a reasonable number of backup copies; or (iii) use
the Licensed Software in any manner to provide testing or other computer services to third
parties.
2.4 No Trademark License. Licensee has no right or license to use any trademark of
YumaWorks or its suppliers during or after the term of this Agreement. In particular, and
without limiting the foregoing, Licensee may not use any trademark of YumaWorks or the
name "YumaWorks", without consent of YumaWorks, in making any statement or
representation concerning results of testing and verification performed using the Licensed
Software.
2.5 Proprietary Notices. The Licensed Software is copyrighted. All proprietary notices
incorporated in, marked on, or affixed to the Licensed Software by YumaWorks or its suppliers
shall be duplicated by Licensee on all copies, in whole or in part, in any form and not altered,
removed, or obliterated.
2.6 Reservation. YumaWorks and its suppliers reserve all rights and licenses to the Licensed
Software not expressly granted to Licensee under this Agreement.
3. DELIVERY OF LICENSED SOFTWARE
Licensee may access the Licensed Software upon acceptance of this agreement.
4. WARRANTIES
4.1 No Warranty.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL YumaWorks, Inc. BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4.2 Warranty Exclusion and Disclaimer. THE WARRANTY WITH RESPECT TO THE
LICENSED SOFTWARE WILL BE VOID AND OF NO EFFECT IF LICENSEE MODIFIES THE
SOURCE CODE. THE WARRANTIES SET FORTH IN SECTION 4.1 ARE IN LIEU OF, AND
YumaWorks EXPRESSLY DISCLAIMS, ALL OTHER WARRANTIES, EXPRESS AND
IMPLIED, WRITTEN AND ORAL, INCLUDING BUT NOT LIMITED TO ANY IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NON-INFRINGEMENT. YumaWorks DOES NOT WARRANT THAT OPERATION OF THE
LICENSED SOFTWARE WILL BE ERROR FREE. SOME MODULES OF THE LICENSED
SOFTWARE ARE DERIVED FROM THIRD PARTY SOFTWARE AND NO SUCH THIRD
PARTY WARRANTS THE MODULES, ASSUMES ANY LIABILITY REGARDING USE OF
THE MODULES, OR UNDERTAKES TO FURNISH ANY SUPPORT OR INFORMATION
RELATING TO THE MODULES.
5. MAINTENANCE AND UPDATES
5.1 Maintenance. Subject to YumaWorks's limited resources, YumaWorks will, at no
additional charge to Licensee, provide Licensee with reasonable technical support for the
warranty period as specified in Section 4.1 via e-mail during YumaWorks's normal business
hours.
5.2 Updates. If and when YumaWorks develops updates to the Licensed Software from time
to time, YumaWorks, at its sole discretion, may, but has no obligation to, provide Licensee with
separately priced updates for the Licensed Software at the request of Licensee. All such
updates will be considered "Licensed Software" and subject to all terms and conditions of this
Agreement.
6. LICENSE FEE
6.1 License Fee. In consideration of the licenses granted in Section 2, above, Licensee shall
pay YumaWorks a non-refundable license fee in accordance with YumaWorks's then current
price list within thirty (30) days after the Effective Date.
6.2 Update Fee. In the event YumaWorks provides Licensee with an update to the Licensed
Software in accordance with Section 5.2, Licensee shall pay YumaWorks the then-current
YumaWorks standard update fee within thirty (30) days after receipt of such update.
6.3 Taxes and Duties. In addition to the license and update fees set forth above, Licensee
shall pay all sales, use, or other taxes and fees imposed as a result of payment of the fees set
forth above, if any, other than taxes measured by YumaWorks's net income.
7. INTELLECTUAL PROPERTY RIGHTS
7.1 Title. All right, title and interest in and to the Licensed Software, and all Intellectual
Property Rights embodied therein shall at all times remain with YumaWorks or its suppliers, as
applicable.
7.2 Confidential Information. Licensee acknowledges and agrees that the Licensed
Software contains confidential, proprietary information and trade secrets of YumaWorks. For
the longer of: (i) a period of five (5) years after the date of disclosure or (ii) the expiration or
termination of this Agreement, Licensee shall not disclose or make available any portion of the
Licensed Software or any information derived from the Licensed Software to any person or
entity except to those of Licensee's employees for whom access is necessary in order to
perform their jobs in accordance with this Agreement. The standard of care Licensee must
exercise to meet these obligations is the standard it exercises with respect to its own
confidential information of a similar nature, but in no event less than due care. This obligation
does not apply to information: (a) known by Licensee prior to its receipt from YumaWorks and
not subject to restriction on disclosure; (b) rightfully received by Licensee from a third party
without restriction on disclosure; or (c) publicly available other than as a result of any act or
omission of Licensee.
7.3 Contractors. In the event that Licensee elects to have a third party contractor modify the
Source Code pursuant to Section 2.1 above, Licensee will require such contractor to enter into
a written confidentiality agreement with Licensee which (i) is no less restrictive than this
Section 7, and (ii) requires such contractor to promptly deliver to Licensee all of YumaWorks
confidential information and the Source Code upon completion of such modifications and
certify in writing to Licensee that it has delivered all such materials.
8. LIMITATION OF LIABILITY
IN NO EVENT SHALL THE TOTAL CUMULATIVE LIABILITY OF YumaWorks IN
CONNECTION WITH THIS AGREEMENT FOR ALL CAUSES OF ACTION OF ANY KIND,
INCLUDING THOSE BASED UPON CONTRACT AND TORT (INCLUDING NEGLIGENCE
AND STRICT LIABILITY), EXCEED THE LICENSE FEES RECEIVED BY YumaWorks FROM
LICENSEE. IN NO EVENT WILL YumaWorks OR ITS SUPPLIERS BE LIABLE FOR LOSS
OF USE, DATA, OR PROFITS, BUSINESS INTERRUPTION OR ANY SPECIAL,
INCIDENTAL, INDIRECT, CONSEQUENTIAL, OR EXEMPLARY DAMAGES, HOWEVER
CAUSED, AND ON ANY THEORY OF LIABILITY, WHETHER CONTRACT OR TORT
(INCLUDING NEGLIGENCE AND STRICT LIABILITY), ARISING IN ANY WAY OUT OF THIS
AGREEMENT, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE AND
NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY REMEDY.
9. TERM AND TERMINATION
9.1 Term. The term of this Agreement shall be for a period of one (1) year from its Effective
Date of the Agreement, unless earlier terminated or canceled in accordance with the
provisions of this Agreement.
9.2 Termination.
9.2.1 Material Breach. Either party may terminate this Agreement if the other party breaches
any material term or condition of this Agreement and fails to cure that breach within thirty (30)
days after receiving written notice of the breach. Notwithstanding the foregoing, YumaWorks
may terminate this Agreement effective immediately upon written notice to Licensee without
any cure period in the event of breach of confidentiality obligation herein.
9.2.2 Financial Difficulties. Either party may terminate this Agreement effective immediately
upon written notice to the other party if the other party files a voluntary petition in bankruptcy
or otherwise seeks protection under any law for the protection of debtors; has a proceeding
instituted against it under any provision of the bankruptcy laws which is not dismissed within
sixty (60) days; is adjudged to be bankrupt; has a court assume jurisdiction of its assets under
a reorganization act; has a trustee or receiver appointed by a court for all or a substantial
portion of its assets; becomes insolvent, suspends or ceases to do business; makes an
assignment of all or a substantial portion of its assets for the benefit of its creditors; or admits
in writing its inability to pay its debts as they become due.
9.3 Effect of Termination/Expiration. Upon termination or expiration of this Agreement: (i)
the rights and licenses granted to Licensee pursuant to this Agreement automatically
terminate; (ii) Licensee shall, within thirty (30) days, ship to YumaWorks or destroy (including
the purging from any system or storage media) all items and information in Licensee's
possession that are confidential or proprietary to YumaWorks or its suppliers, including but not
limited to all Licensed Software and all copies thereof, if any, and an officer of Licensee shall
certify in writing to YumaWorks that all such confidential or proprietary items and information
have been returned to YumaWorks or destroyed; and (iii) all outstanding invoices for amounts
owed to YumaWorks by Licensee shall automatically accelerate and become due and payable
on the effective date of termination.
9.4 Survival. The provisions of Sections 2.4, 4.2, 7, 8, 9.3, 10.1, 10.5, and 10.8 shall survive
the expiration, cancellation, or termination of this Agreement.
10. GENERAL PROVISIONS
10.1 Governing Law. This Agreement shall be governed by the internal laws of the State of
California, excluding its conflict of laws rules. The parties consent to the personal and
exclusive jurisdiction and venue of the northern district of California federal and state courts,
as applicable.
10.2 Assignment. Licensee shall not assign this Agreement or any right hereunder, or
delegate any obligation created under this Agreement to any third party without prior written
consent of YumaWorks. YumaWorks, however, may assign this Agreement to any person or
entity with which it has merged or which has otherwise succeeded to all or substantially all of
the business and assets of YumaWorks, and which has assumed in writing or by operation of
law its obligations under this Agreement. Any attempted assignment or delegation without the
required written consent shall be null and void.
10.3 Modification. No modification to this Agreement nor any waiver of any rights shall be
effective unless consented to in writing and the waiver of any breach or default shall not
constitute a waiver of any other right or of any subsequent breach or default.
10.4 Force Majeure. Neither YumaWorks nor any of its suppliers shall be liable for any loss,
expense, or damage caused by delays or failures in performance resulting from acts of God,
supplier delay, or any other cause beyond the reasonable control of YumaWorks or its
suppliers.
10.5 Attorneys' Fees. In the event of any dispute resolution proceeding between the parties,
the prevailing party shall be entitled to recover its costs and reasonable attorneys' fees. A
"prevailing party" shall mean a party who receives all or substantially all of the relief sought by
such party.
10.6 Severability. If any provision of this Agreement is ruled unenforceable, it shall be
enforced to the extent permissible, the parties shall negotiate a substitute valid provision
which most nearly effects the parties' original intent, and the remainder of the Agreement shall
remain in effect.
10.7 Independent Contractor. The parties are each independent contractors and not joint
venturers, partners, agents, or representatives of the other. Neither party has any right to
create any obligation on the part of the other party.
10.8 Equitable Relief. Licensee acknowledges that any breach of its obligations under this
Agreement with respect to the intellectual property rights or confidential information of
YumaWorks will cause YumaWorks irreparable injury for which there are inadequate remedies
at law, and therefore, YumaWorks will be entitled to equitable relief in addition to all other
remedies provided by this Agreement or available at law.
10.9 Notice. All notices and requests required or authorized hereunder, shall be given in
writing either by personal delivery to the party to whom notice is given, or by registered or
certified airmail, postage prepaid, return receipt requested. The date upon which any such
notice is so personally delivered, or if the notice is given by registered or certified airmail, the
date upon which it is received as set forth on the returned receipt, shall be deemed to be the
date of such notice, irrespective of the date appearing therein.
If to YumaWorks :
YumaWorks, Inc.
685 Cochran St. #160
Simi Valley, CA 93065
Attn: Legal Department
Phone: 805.397-8277
If to Licensee:
Per the information on the Purchase Order.
The address of the parties may be changed by notice given in accordance with this section.
11. ENTIRE AGREEMENT. This Agreement constitutes the entire and exclusive agreement
between the parties with respect to the subject matter hereof. All previous and
contemporaneous discussions and oral and written agreements with respect to this subject
matter are superseded by this Agreement.
12. RESTRICTED RIGHTS LEGEND. This software is provided with RESTRICTED RIGHTS.
Use, duplication, or disclosure by the U.S. Government is subject to restrictions set forth in
subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at
DFARS 252.227-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software
- Restricted Rights at 48 CFR 52.227-19, as applicable. The "Manufacturer" for purposes of
these regulations is YumaWorks Inc, 685 Cochran St., #160, Simi Valley, CA, U.S.A

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
ARCH="alpha"
ACCEPT_KEYWORDS="alpha"

View File

@ -1,6 +1,9 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Tobias Klausmann <klausman@gentoo.org> (09 Mar 2017)
# warning "__NR_copy_file_range not defined for your architecture"
=sys-fs/udev-233
# Alexey Shvetsov <alexxy@gentoo.org> (21 May 2012)
# Need deps pecl-apc and pecl-uploadprogress bug #416897

View File

@ -1,6 +1,5 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Pacho Ramos <pacho@gentoo.org> (15 Feb 2014)
# libev isn't supported on this arch, use another default (#499498)

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Mike Frysinger <vapier@gentoo.org> (16 Mar 2015)
# Needs dev-lang/luajit tested #499974

View File

@ -1,6 +1,22 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Tobias Klausmann <klausman@gentoo.org> (18 May 2017)
# Stack protector code is not ported to alpha (and may not ever be)
>=sys-devel/gcc-6 ssp
# Tobias Klausmann <klausman@gentoo.org> (08 May 2017)
# USE=test requires valgrind, which will never be ported to alpha
app-misc/jq test
# Tobias Klausmann <klausman@gentoo.org> (02 Mar 2017)
# libilbc has not been ported to alpha and likely never will be.
media-video/ffmpeg libilbc
# Tobias Klausmann <klausman@gentoo.org> (02 Mar 2017)
# BSON requires pymongo and assorted other packages that are not available on
# alpha.
app-portage/g-sorcery bson
# Tobias Klausmann <klausman@gentoo.org> (27 Jan 2016)
# USE=test transitively pulls in greenlet, which is not available on alpha.
@ -80,11 +96,6 @@ app-text/tesseract scrollview
# no alpha support in media-libs/glfw
app-text/mupdf opengl
# Ian Delaney <idella4@gentoo.org> (05 Jan 2016)
# on behalf of Ilya Tumaykin <itumaykin+gentoo@gmail.com>
# dev-lang/luajit lacks alpha keyword. See bug #488318.
media-video/mpv luajit
# Justin Lecher <jlec@gentoo.org> (18 Nov 2015)
# requires dev-python/restkit which requires
# dev-python/socketpool which requires dev-python/gevent which requires
@ -112,11 +123,6 @@ dev-qt/qtchooser test
# Requires dev-python/ipython which triggers a long dep chain
dev-python/restkit cli
# Tobias Klausmann <klausman@gentoo.org> (19 Sep 2015)
# app-portage/g-sorcery pulls in pymongo and a whole host of deps that don't
# work on alpha. Mask USE flag for layman accordingly
app-portage/layman -g-sorcery
# Alexandre Rostovtsev <tetromino@gentoo.org> (10 Sep 2015)
# Requires wifi USE flag, which is masked for this arch
net-misc/networkmanager wext
@ -183,10 +189,6 @@ media-video/vlc opencv
# Missing keywords, bug #523686
>=dev-libs/libgdata-0.16.1 test
# Michał Górny <mgorny@gentoo.org> (30 Oct 2014)
# Requires non-keyworded >=x11-libs/libxkbcommon-0.4.
sys-apps/systemd xkb
# Tobias Klausmann <klausman@gentoo.org> (11 Oct 2014)
# app-emulation/qemu is not keyworded on alpha, masking flag that triggers
# dependency

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# When you add an entry to the top of this file, add your name, the date, and
# an explanation of why something is getting masked. Please be extremely

View File

@ -1,16 +1,20 @@
# Copyright 1999-2017 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License, v2
# $Id$
# Tobias Klausmann <klausman@gentoo.org> (03 March 2017)
# There is no luajit support on alpha. Bugs #554376, #608322.
luajit
luajittex
# Andreas Sturmlechner <asturm@gentoo.org> (25 Feb 2017)
# kwallet integration split from kde to distinct flag
kwallet
# Tobias Klausmann <klausman@gentoo.org> (07 Jun 2016)
# We currently do not have the resources to AT qt5 packages.
# This may change when/if qt4 goes away.
qt5
# Tobias Klausmann <klausman@gentoo.org> (23 May 2016)
# There is no luajit support on alpha. Bug #554376.
luajittex
# Tobias Klausmann <klausman@gentoo.org> (05 Feb 2016)
# Newer versions of libgadu depend on protobuf-c, which doesn't
# compile on alpha as of slot:0.
@ -159,9 +163,6 @@ mpd
# USE=d seems to break gcc-4.1.2 (#178896)
d
# This works
-x264
# uses gnat/ada which is too big to support currently
topal

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# This file requires eapi 5 or later. New entries go on top.
# Please use the same syntax as in use.mask

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License, v2
# $Id$
CFLAGS="-O2 -pipe"
CXXFLAGS="${CFLAGS}"

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Force building libc++ over libcxxrt.
sys-libs/libcxx libcxxrt

View File

@ -1,8 +1,9 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Disable libcxxabi since it collides with forced libcxxrt
# Build libcxxrt over libgcc_s since that is what clang defaults to.
sys-libs/libcxx libcxxabi libunwind
sys-libs/libcxxrt libunwind
# Needs to be fixed: cxx useflag enables plugins and gold.
@ -13,7 +14,7 @@ sys-devel/binutils cxx
# Force openssl on curl since cmakes needs it and is in @system because of
# libcxx on this profile. Mask the other ssl providers.
net-misc/curl curl_ssl_axtls curl_ssl_gnutls curl_ssl_nss curl_ssl_polarssl
net-misc/curl curl_ssl_axtls curl_ssl_gnutls curl_ssl_nss
# Needs to be fixed: build fails with clang++
# https://bugs.gentoo.org/show_bug.cgi?id=578506

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License, v2
# $Id$
# Don't remove gcc from here: clang uses it for crt{begin,end}*.o and its c++
# stack.

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License v2
# $Id$
# This file describes the packages needed to build a stage 1 based on this
# profile. Packages in this file are built in order.

View File

@ -1,6 +1,5 @@
#!/bin/bash
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
# $Id$
# Check if clang/clang++ exist before setting them so that we can more easily
# switch to this profile and build stages.

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License, v2
# $Id$
# System-wide defaults for the G/FBSD Portage system
ARCH="amd64-fbsd"

View File

@ -1,6 +1,10 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Michał Górny <mgorny@gentoo.org> (08 Apr 2017)
# Require sandbox to be multilib-capable to avoid failures when building
# multilib packages, #611292.
sys-apps/sandbox abi_x86_32
# Michał Górny <mgorny@gentoo.org> (24 Sep 2016)
# Force the host target to avoid dependency hell

View File

@ -1,6 +1,5 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Alexis Ballier <aballier@gentoo.org> (31 Jan 2017)
# nvidia drivers are unmasked here

View File

@ -1,6 +1,5 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
sys-libs/libcxx libcxxrt

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# Mask useflags that require deps with missing keywords.
# Anyone is allowed and _very welcome_ to add masks there.

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License, v2
# $Id$
# Unmask the flag which corresponds to ARCH.
-amd64-fbsd

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
ARCH="amd64"
ACCEPT_KEYWORDS="${ARCH}"

View File

@ -1,6 +1,5 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
MULTILIB_ABIS="amd64"

View File

@ -1,6 +1,5 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# James Le Cuirot <chewi@gentoo.org> (13 Aug 2016)
# Steam requires amd64 multilib. These are steam-overlay packages.
@ -24,8 +23,6 @@ app-accessibility/perlbox-voice
app-arch/stuffit
app-benchmarks/cpuburn
app-emulation/crossover-bin
app-emulation/crossover-office-bin
app-emulation/crossover-office-pro-bin
app-emulation/playonlinux
app-emulation/q4wine
app-emulation/winetricks
@ -119,6 +116,7 @@ games-misc/little-inferno
games-misc/papers-please
games-puzzle/hoh-bin
games-roguelike/adom
games-rpg/baldurs-gate-ee
games-rpg/dear-esther
games-rpg/dungeon-defenders
games-rpg/eschalon-book-1-demo
@ -166,7 +164,6 @@ sci-electronics/eagle
sci-libs/ipp
sys-libs/lib-compat-loki
www-plugins/nspluginwrapper
www-plugins/pipelight
# AMD64 Team; <amd64@gentoo.org>

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