diff --git a/packages/devel/llvm/build b/packages/devel/llvm/build deleted file mode 100755 index 5269272964..0000000000 --- a/packages/devel/llvm/build +++ /dev/null @@ -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" \ diff --git a/packages/devel/llvm/install b/packages/devel/llvm/install deleted file mode 100755 index e35717f56f..0000000000 --- a/packages/devel/llvm/install +++ /dev/null @@ -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 - diff --git a/packages/devel/llvm/meta b/packages/devel/llvm/meta deleted file mode 100644 index fedfc7d600..0000000000 --- a/packages/devel/llvm/meta +++ /dev/null @@ -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" diff --git a/packages/devel/llvm/package.mk b/packages/devel/llvm/package.mk new file mode 100644 index 0000000000..1c689bd520 --- /dev/null +++ b/packages/devel/llvm/package.mk @@ -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 +} diff --git a/packages/toolchain/lang/llvm-host/build b/packages/toolchain/lang/llvm-host/build deleted file mode 100755 index ff7e4d43dc..0000000000 --- a/packages/toolchain/lang/llvm-host/build +++ /dev/null @@ -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 diff --git a/packages/toolchain/lang/llvm-host/meta b/packages/toolchain/lang/llvm-host/meta deleted file mode 100644 index 77eaaabe23..0000000000 --- a/packages/toolchain/lang/llvm-host/meta +++ /dev/null @@ -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"