Index: tinyos-tools/tinyos-tools-1.2.3_p20070606.ebuild =================================================================== --- tinyos-tools/tinyos-tools-1.2.3_p20070606.ebuild (revision 63) +++ tinyos-tools/tinyos-tools-1.2.3_p20070606.ebuild (working copy) @@ -12,7 +12,7 @@ LICENSE="Intel" SLOT="0" KEYWORDS="~x86 ~amd64" -IUSE="" +IUSE="javacomm" #DEPEND=">=dev-tinyos/tos-2.0.0" # !dev-tinyos/listen @@ -110,10 +110,12 @@ src_install() { emake DESTDIR="${D}" install || die "emake install failed" - local JNI="$(java-config -O)/jre" - einfo "installing libgetenv.so and libtoscomm.so in ${JNI}" - into ${JNI} - dobin ${S}/tinyos/java/env/libgetenv.so - dobin ${S}/tinyos/java/serial/libtoscomm.so + if ! use javacomm; then + local JNI="$(java-config -O)/jre" + einfo "installing libgetenv.so and libtoscomm.so in ${JNI}" + into ${JNI} + dobin ${S}/tinyos/java/env/libgetenv.so + dobin ${S}/tinyos/java/serial/libtoscomm.so + fi } Index: tos-sdk-java/tos-sdk-java-2.0.1_p20070606.ebuild =================================================================== --- tos-sdk-java/tos-sdk-java-2.0.1_p20070606.ebuild (revision 63) +++ tos-sdk-java/tos-sdk-java-2.0.1_p20070606.ebuild (working copy) @@ -16,7 +16,7 @@ LICENSE="Intel" SLOT="2" KEYWORDS="~x86 ~amd64" -IUSE="doc" +IUSE="doc javacomm" DEPEND=">=dev-tinyos/tinyos-tools-1.2.3 >=dev-tinyos/tos-${PV} dev-tinyos/eselect-tinyos" @@ -47,6 +47,12 @@ einfo " java makefile clean target " epatch ${FILESDIR}/message_Makefile_clean-mig-target.patch + # replace the TOSComm Serial implementation with JavaComm-based code + if use javacomm; then + einfo "Using JavaComm-based serial communication instead of TOSComm." + cp -f ${FILESDIR}/SerialByteSource-JavaComm.java \ + ${S}/support/sdk/java/net/tinyos/packet/SerialByteSource.java + fi } src_compile() {