# Contributor: Borys Zhukov # Maintainer: Borys Zhukov pkgname=ocaml pkgver=3.12.1 pkgrel=1 pkgdesc="Main implementation of the Caml programming language" url="http://caml.inria.fr" arch="all" license="QPL-1.0/GPLv2" makedepends="ncurses-dev zlib-dev gdbm-dev" install="" options="textrels" subpackages="$pkgname-doc" source="http://caml.inria.fr/pub/distrib/ocaml-3.12/$pkgname-$pkgver.tar.gz 010_all_execstacks.patch 020_all_configure.patch 040_all_yaccldflags.patch 050_all_objinfoldflags.patch 060_all_linkorder.patch " _builddir="$srcdir/$pkgname-$pkgver" prepare() { local i cd "$_builddir" for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; esac done } build() { cd "$_builddir" #strip out -fomit-frame-pointer due to -pg local _cflags="$CFLAGS" CFLAGS="-fPIC" for i in $_cflags; do case $i in -fomit-frame-pointer);; *) CFLAGS="$CFLAGS $i";; esac done LDFLAGS="$LDFLAGS -fno-pie" ./configure -cc "${CC:-gcc}" \ -bindir /usr/bin \ -libdir /usr/lib/ocaml \ -mandir /usr/share/man \ -no-tk \ || return 1 make -j1 world.opt || return 1 } package() { cd "$_builddir" make BINDIR="$pkgdir"/usr/bin LIBDIR="$pkgdir"/usr/lib/ocaml MANDIR="$pkgdir"/usr/share/man install || return 1 install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE install -Dm644 INSTALL "$pkgdir"/usr/share/doc/$pkgname/INSTALL install -Dm644 Changes "$pkgdir"/usr/share/doc/$pkgname/Changes install -Dm644 README "$pkgdir"/usr/share/doc/$pkgname/README find "$pkgdir"/usr/lib/ocaml -name \*.ml -delete } md5sums="814a047085f0f901ab7d8e3a4b7a9e65 ocaml-3.12.1.tar.gz ef0810371df5ca55843f8faf6707cd6f 010_all_execstacks.patch 2a88918e39e30016b1575b3ac740bb63 020_all_configure.patch 2c7171ae2c8c77ceadabbd4db7f6e01b 040_all_yaccldflags.patch baed56051b58c3a7aef9248e85771de0 050_all_objinfoldflags.patch b52c8999a7bf66fc3eab0de79cd2b4cc 060_all_linkorder.patch" sha256sums="4f81ab86258be0eea1507dd5338c8670490f8616249821e731f8ac1c64caa4a7 ocaml-3.12.1.tar.gz 083649669bcafb2778336f776bfa37e0448a2e52b104447ef3a4bc212f1df87b 010_all_execstacks.patch ff91dc8def0a2829bca64cdd8af5cb59073ca958753f18172d3bbc3bfede6c11 020_all_configure.patch f663febae991b57c8b02cfe2b25f7ee0cbc1c6307f6d1b8b4148fda6b8f8d871 040_all_yaccldflags.patch 29e4fb60d61c73cca31da65c0742c17a6f67ef18c04b24d591cbc44c3b8dec9a 050_all_objinfoldflags.patch 1ce54407303ff6e03c7c8ba39bac7ede7d252e8fcf56b5bde54ffe4c3843b3e9 060_all_linkorder.patch" sha512sums="9d594721816bb5e0edbb50e35496bc5f228a4419b05d518ea7fc72975b18c27ee0f34247efc3bdd264214eb285e72ddb42516fbae2f499a780e62ea4f9b85756 ocaml-3.12.1.tar.gz 2f408565a249e26bceaf1055e7923b103bb0e94f2381b1294aa8de286e6c06942ae89958e1c1dc275fe85ad56ff95484c3ca8a836cd29edaf27dadb1d06f4706 010_all_execstacks.patch 7ff4ad6dfbfbf97d44269fae8cb3bee1ea4e55ae7c83385a5acf27c1041a8c96e9dbf25f6359be65d263f4b6ae854b447855eda9e6ac64da3d48a3083456c5a8 020_all_configure.patch 007a787fd57e209302c999b1fb018bae94fe2150f7ecbbddec7e637444ee8e3f9965b14d0f89eab4e68cf5c374cc7e4bdc1087120be64efe7a953a21cd160bce 040_all_yaccldflags.patch 02c3dcf8c18bafc984f1396c576704b20a566e08a963bad877295018ede86dd530a6f770bab156506532564606f148454407e2497c19985a52a1d68625f1330f 050_all_objinfoldflags.patch 888f3aac57751fc6944f62e8cb14e3c17184f331144a58058ee8ac49a3a9add49f7a6e0f6024a36b960d0b8e8db9e80fbf91318c63241f86248caab4b2fdd99e 060_all_linkorder.patch"