[oe-commits] Koen Kooi : erlang: start updating erlang to R13B01

git version control git at git.openembedded.org
Thu Aug 27 19:40:26 UTC 2009


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 0d12f0b648edb69c5927a5c73ed1541a3d33352c
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=0d12f0b648edb69c5927a5c73ed1541a3d33352c

Author: Koen Kooi <koen at openembedded.org>
Date:   Thu Aug 27 20:57:21 2009 +0200

erlang: start updating erlang to R13B01

* now it's Crofton's turn to work on it :)

---

 conf/checksums.ini                     |    4 ++
 recipes/erlang/erlang-native_R13B01.bb |   24 +++++++++++
 recipes/erlang/erlang_R13B01.bb        |   72 ++++++++++++++++++++++++++++++++
 3 files changed, 100 insertions(+), 0 deletions(-)

diff --git a/conf/checksums.ini b/conf/checksums.ini
index 6db50c4..7cfea9d 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -19050,6 +19050,10 @@ sha256=e2c19fa6178ed42f0576650db6f94942cac366feadf82c2a679b35197c65f745
 md5=1fe3707d9bed898bc51444cb529fdd79
 sha256=d5a8530dfee0b2348c4ad0107409fa73ac3233f31e2300ece625a2abd9eb4da7
 
+[http://erlang.org/download/otp_src_R13B01.tar.gz]
+md5=b3db581de6c13e1ec93d74e54a7b4231
+sha256=f0964946f3cdd224500a7a6df1c2ee2bf9ef2d3684ab82c2dd6c22b98986bc80
+
 [ftp://ftp.bitrot.de/pub/otpkeygen/otpkeygen-src_1.3.0.tar.gz]
 md5=ec1c0a93a586361298faebce4fac9dbd
 sha256=b6129acb788726ab159ed790a85a625651fff5cdff3a2cd0517f19ccd41c2a54
diff --git a/recipes/erlang/erlang-native_R13B01.bb b/recipes/erlang/erlang-native_R13B01.bb
new file mode 100644
index 0000000..bc0e343
--- /dev/null
+++ b/recipes/erlang/erlang-native_R13B01.bb
@@ -0,0 +1,24 @@
+include erlang.inc
+
+inherit native
+
+# EXTRA_OEMAKE = 'OTP_SMALL_BUILD=true'
+EXTRA_OECONF = '--without-ssl'
+
+do_configure() {
+    TARGET=${HOST_SYS} \
+    ac_cv_prog_javac_ver_1_2=no \
+    oe_runconf
+}
+
+do_compile_prepend() {
+    export TARGET=${HOST_SYS}
+}
+
+do_stage_prepend() {
+    export TARGET=${HOST_SYS}
+}
+
+do_install_prepend() {
+    export TARGET=${HOST_SYS}
+}
diff --git a/recipes/erlang/erlang_R13B01.bb b/recipes/erlang/erlang_R13B01.bb
new file mode 100644
index 0000000..e85a297
--- /dev/null
+++ b/recipes/erlang/erlang_R13B01.bb
@@ -0,0 +1,72 @@
+include erlang.inc
+DEPENDS += "erlang-native openssl"
+
+SRC_URI += "file://erts-configure.in.patch;patch=1 \
+            file://erts-emulator-Makefile.in.patch;patch=1 \
+            file://erts-etc-unix-Install.src.patch;patch=1 \
+            file://lib-crypto-c_src-Makefile.in.patch;patch=1 \
+            file://lib-erl_interface-src-Makefile.in.patch;patch=1 \
+            file://Makefile.in.patch;patch=1 \
+            "
+
+EXTRA_OEMAKE = "BUILD_CC='${BUILD_CC}'"
+
+EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${layout_exec_prefix}"
+
+EXTRA_OECONF_append_arm = " --disable-smp-support --disable-hipe"
+EXTRA_OECONF_append_armeb = " --disable-smp-support --disable-hipe"
+EXTRA_OECONF_append_mipsel = " --disable-smp-support --disable-hipe"
+EXTRA_OECONF_append_sh3 = " --disable-smp-support --disable-hipe"
+EXTRA_OECONF_append_sh4 = " --disable-smp-support --disable-hipe"
+
+NATIVE_BIN = "${TMPDIR}/work/erlang-native-${PV}-${PR}/otp_src_${UPSTREAM_VERSION}/bin"
+
+do_configure() {
+
+    cd ${S}/erts; autoreconf; cd -
+
+    . ${CONFIG_SITE}
+
+    ac_cv_prog_javac_ver_1_2=no \
+    SHLIB_LD='${CC}' \
+    oe_runconf
+
+    sed -i -e 's|$(ERL_TOP)/bin/dialyzer|${NATIVE_BIN}/dialyzer --output_plt $@ -pa $(ERL_TOP)/lib/kernel/ebin -pa $(ERL_TOP)/lib/stdlib/ebin|' lib/dialyzer/src/Makefile
+}
+
+do_compile() {
+    TARGET=${TARGET_SYS} \
+    PATH=${NATIVE_BIN}:$PATH \
+    oe_runmake noboot
+}
+
+do_install() {
+    TARGET=${TARGET_SYS} \
+    PATH=${NATIVE_BIN}:$PATH \
+    oe_runmake 'INSTALL_PREFIX=${D}' install
+    for f in erl start
+        do sed -i -e 's:ROOTDIR=.*:ROOTDIR=/usr/lib/erlang:' \
+        	${D}/usr/lib/erlang/erts-*/bin/$f ${D}/usr/lib/erlang/bin/$f
+    done
+}
+
+def get_erlang_libs(d):
+    import os, bb
+    install_root = bb.data.getVar('D', d, 1)
+    libdir = bb.data.getVar('libdir', d, 1)[1:]
+    libs = ["${bindir}/dialyzer", "${libdir}/erlang/bin/dialyzer"]
+    erlang_lib = os.path.join(install_root, libdir, "erlang/lib")
+    for fname in os.listdir(erlang_lib):
+        if not "-" in fname: continue
+        if fname.startswith("compiler-"): continue
+        if fname.startswith("kernel-"): continue
+        if fname.startswith("sasl-"): continue
+        if fname.startswith("stdlib-"): continue
+        if fname.startswith("tools-"): continue
+        libs.append(os.path.join("${libdir}", "erlang/lib", fname))
+    libs.sort()
+    return libs
+
+FILES_${PN}-dbg += " ${libdir}/erlang/bin/.debug ${libdir}/erlang/*/bin/.debug ${libdir}/erlang/lib/*/bin/.debug"
+FILES_${PN}-libs += " ${@' '.join(get_erlang_libs(d))}"
+PACKAGES =+ "${PN}-libs"





More information about the Openembedded-commits mailing list