mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
llvm: convert to new package format
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
b8a2375f67
commit
164f08682b
@ -1,68 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
. config/options $1
|
||||
|
||||
# llvm fails to build with LTO support
|
||||
strip_lto
|
||||
|
||||
if [ "$TARGET_ARCH" = i386 ]; then
|
||||
LLVM_ARCH=x86
|
||||
elif [ "$TARGET_ARCH" = x86_64 ]; then
|
||||
LLVM_ARCH=x86_64
|
||||
fi
|
||||
|
||||
LLVM_DIR=`ls -d $BUILD/llvm-[0-9]*`
|
||||
|
||||
cd $LLVM_DIR
|
||||
|
||||
mkdir -p .build-target && cd .build-target
|
||||
../configure --host=$TARGET_NAME \
|
||||
--build=$HOST_NAME \
|
||||
--prefix=/usr \
|
||||
--enable-polly \
|
||||
--enable-optimized \
|
||||
--disable-profiling \
|
||||
--disable-assertions \
|
||||
--disable-expensive-checks \
|
||||
--disable-debug-runtime \
|
||||
--disable-debug-symbols \
|
||||
--enable-jit \
|
||||
--disable-docs \
|
||||
--disable-doxygen \
|
||||
--enable-threads \
|
||||
--enable-pthreads \
|
||||
--enable-pic \
|
||||
--enable-shared \
|
||||
--enable-embed-stdcxx \
|
||||
--enable-timestamps \
|
||||
--enable-targets=$LLVM_ARCH \
|
||||
--disable-libffi \
|
||||
--disable-ltdl-install \
|
||||
|
||||
LLVM_TBLGEN="$ROOT/$TOOLCHAIN/bin/llvm-tblgen" \
|
||||
make
|
||||
|
||||
LLVM_TBLGEN="$ROOT/$TOOLCHAIN/bin/llvm-tblgen" \
|
||||
$MAKEINSTALL
|
||||
|
||||
#TCLSH="$ROOT/$TOOLCHAIN/bin/tclsh" \
|
@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
. config/options $1
|
||||
|
||||
mkdir -p $INSTALL/usr/lib
|
||||
cp -P $PKG_BUILD/.build-target/Release/lib/libLLVM-*.so $INSTALL/usr/lib
|
||||
|
@ -1,36 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="llvm"
|
||||
PKG_VERSION="3.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://llvm.org/"
|
||||
PKG_URL="http://llvm.org/releases/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS=""
|
||||
PKG_BUILD_DEPENDS="toolchain llvm-host"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="toolchain/lang"
|
||||
PKG_SHORTDESC="llvm: Low Level Virtual Machine"
|
||||
PKG_LONGDESC="Low-Level Virtual Machine (LLVM) is a compiler infrastructure designed for compile-time, link-time, run-time, and "idle-time" optimization of programs from arbitrary programming languages. It currently supports compilation of C, Objective-C, and C++ programs, using front-ends derived from GCC 4.0, GCC 4.2, and a custom new front-end, "clang". It supports x86, x86-64, ia64, PowerPC, and SPARC, with support for Alpha and ARM under development."
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
107
packages/devel/llvm/package.mk
Normal file
107
packages/devel/llvm/package.mk
Normal file
@ -0,0 +1,107 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="llvm"
|
||||
PKG_VERSION="3.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://llvm.org/"
|
||||
PKG_URL="http://llvm.org/releases/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS=""
|
||||
PKG_BUILD_DEPENDS_TARGET="toolchain llvm:host"
|
||||
PKG_BUILD_DEPENDS_HOST="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="toolchain/lang"
|
||||
PKG_SHORTDESC="llvm: Low Level Virtual Machine"
|
||||
PKG_LONGDESC="Low-Level Virtual Machine (LLVM) is a compiler infrastructure designed for compile-time, link-time, run-time, and idle-time optimization of programs from arbitrary programming languages. It currently supports compilation of C, Objective-C, and C++ programs, using front-ends derived from GCC 4.0, GCC 4.2, and a custom new front-end, "clang". It supports x86, x86-64, ia64, PowerPC, and SPARC, with support for Alpha and ARM under development."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
# package specific configure options
|
||||
PKG_CONFIGURE_OPTS_HOST="--enable-polly \
|
||||
--enable-optimized \
|
||||
--disable-profiling \
|
||||
--disable-assertions \
|
||||
--disable-expensive-checks \
|
||||
--disable-debug-runtime \
|
||||
--disable-debug-symbols \
|
||||
--enable-jit \
|
||||
--disable-docs \
|
||||
--disable-doxygen \
|
||||
--enable-threads \
|
||||
--enable-pthreads \
|
||||
--enable-pic \
|
||||
--enable-shared \
|
||||
--enable-embed-stdcxx \
|
||||
--enable-timestamps \
|
||||
--disable-libffi \
|
||||
--enable-ltdl-install"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-polly \
|
||||
--enable-optimized \
|
||||
--disable-profiling \
|
||||
--disable-assertions \
|
||||
--disable-expensive-checks \
|
||||
--disable-debug-runtime \
|
||||
--disable-debug-symbols \
|
||||
--enable-jit \
|
||||
--disable-docs \
|
||||
--disable-doxygen \
|
||||
--enable-threads \
|
||||
--enable-pthreads \
|
||||
--enable-pic \
|
||||
--enable-shared \
|
||||
--enable-embed-stdcxx \
|
||||
--enable-timestamps \
|
||||
--disable-libffi \
|
||||
--disable-ltdl-install"
|
||||
|
||||
if [ "$TARGET_ARCH" = i386 ]; then
|
||||
PKG_CONFIGURE_OPTS_HOST="$PKG_CONFIGURE_OPTS_HOST --enable-targets=x86"
|
||||
PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --enable-targets=x86"
|
||||
elif [ "$TARGET_ARCH" = x86_64 ]; then
|
||||
PKG_CONFIGURE_OPTS_HOST="$PKG_CONFIGURE_OPTS_HOST --enable-targets=x86_64"
|
||||
PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --enable-targets=x86_64"
|
||||
fi
|
||||
|
||||
PKG_MAKE_OPTS_TARGET="LLVM_TBLGEN=$ROOT/$TOOLCHAIN/bin/llvm-tblgen"
|
||||
PKG_MAKEINSTALL_OPTS_TARGET="LLVM_TBLGEN=$ROOT/$TOOLCHAIN/bin/llvm-tblgen"
|
||||
|
||||
pre_configure_host() {
|
||||
( cd ../autoconf
|
||||
aclocal --force --verbose -I m4
|
||||
autoconf --force --verbose -I m4 -o ../configure
|
||||
)
|
||||
}
|
||||
|
||||
pre_configure_target() {
|
||||
# llvm fails to build with LTO support
|
||||
strip_lto
|
||||
}
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/bin
|
||||
rm -rf $INSTALL/usr/lib/BugpointPasses.so
|
||||
rm -rf $INSTALL/usr/lib/LLVMHello.so
|
||||
rm -rf $INSTALL/usr/lib/libLTO.so
|
||||
rm -rf $INSTALL/usr/lib/libprofile_rt.so
|
||||
}
|
@ -1,69 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
. config/options $1
|
||||
|
||||
$SCRIPTS/unpack llvm
|
||||
|
||||
setup_toolchain host
|
||||
|
||||
if [ "$TARGET_ARCH" = i386 ]; then
|
||||
ARCH=x86
|
||||
elif [ "$TARGET_ARCH" = x86_64 ]; then
|
||||
ARCH=x86_64
|
||||
fi
|
||||
|
||||
LLVM_DIR=`ls -d $BUILD/llvm-[0-9]*`
|
||||
|
||||
cd $LLVM_DIR
|
||||
|
||||
cd autoconf
|
||||
aclocal --force --verbose -I m4
|
||||
autoconf --force --verbose -I m4 -o ../configure
|
||||
cd ..
|
||||
|
||||
mkdir -p .build-host && cd .build-host
|
||||
../configure --host=$HOST_NAME \
|
||||
--build=$HOST_NAME \
|
||||
--prefix=$ROOT/$TOOLCHAIN \
|
||||
--enable-polly \
|
||||
--enable-optimized \
|
||||
--disable-profiling \
|
||||
--disable-assertions \
|
||||
--disable-expensive-checks \
|
||||
--disable-debug-runtime \
|
||||
--disable-debug-symbols \
|
||||
--enable-jit \
|
||||
--disable-docs \
|
||||
--disable-doxygen \
|
||||
--enable-threads \
|
||||
--enable-pthreads \
|
||||
--enable-pic \
|
||||
--enable-shared \
|
||||
--enable-embed-stdcxx \
|
||||
--enable-timestamps \
|
||||
--enable-targets=$ARCH \
|
||||
--disable-libffi \
|
||||
--enable-ltdl-install \
|
||||
|
||||
make
|
||||
make install
|
@ -1,36 +0,0 @@
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv)
|
||||
#
|
||||
# This Program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This Program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
||||
# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA.
|
||||
# http://www.gnu.org/copyleft/gpl.html
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="llvm"
|
||||
PKG_VERSION=""
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://llvm.org/"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS=""
|
||||
PKG_BUILD_DEPENDS="ccache gcc-final libffi-host"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="toolchain/lang"
|
||||
PKG_SHORTDESC="llvm: Low Level Virtual Machine"
|
||||
PKG_LONGDESC="Low-Level Virtual Machine (LLVM) is a compiler infrastructure designed for compile-time, link-time, run-time, and "idle-time" optimization of programs from arbitrary programming languages. It currently supports compilation of C, Objective-C, and C++ programs, using front-ends derived from GCC 4.0, GCC 4.2, and a custom new front-end, "clang". It supports x86, x86-64, ia64, PowerPC, and SPARC, with support for Alpha and ARM under development."
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
Loading…
x
Reference in New Issue
Block a user