Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Feb 2002 11:18:52 +0100
From:      Ernst de Haan <ernsth@nl.euro.net>
To:        portmgr@FreeBSD.org
Cc:        ports@FreeBSD.org, java@FreeBSD.org, sobomax@FreeBSD.org, kevlo@FreeBSD.org, sebster@sebster.org
Subject:   Request for changing bsd.port.mk and adding bsd.java.mk
Message-ID:  <200202251018.g1PAIqi02136@zaphod.euronet.nl>

next in thread | raw e-mail | index | archive | help

--------------Boundary-00=_GB3371A0GFVL5VDBIE8Z
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

Hi,


In order to make writing Java-based ports much easier, I've developped a 
bsd.java.mk.

Below I explain how this bsd.java.mk works. My request is threefold. First I 
would ask for permission to modify bsd.port.mk to include bsd.java.mk (see 
attached diff). Secondly, I would like to add the attached bsd.java.mk file 
as Mk/bsd.java.mk in the ports CVS module. Third, I would like to get the 
right to make updates to this latter file.

When this bsd.java.mk is added, it will have *no* effect on current ports, 
these will keep working. Note that this bsd.java.mk is specific for FreeBSD, 
I do not know if that is a problem.


This bsd.java.mk is loosely based on the following proposal:

http://www.metaverse.nl/~ernst/freebsd-java-proposal-20011116.html

It is loosely modelled after bsd.ruby.mk.

The current bsd.java.mk allows ports to use the following construction to use 
a Java runtime environment in their Makefile:

   USE_JAVA=	[ "YES" | "1.1" | "1.2" | "1.3" | "1.4" ]

If it set to "YES" then the default version of Java will be used, currently 
1.3, this can be overridden (for example in /etc/make.conf) by defining 
DEFAULT_JAVA_VER.

After setting USE_JAVA to a valid value, the port writer can use the 
following variables in the targets:

   JAVA_VENDOR: Vendor of the Java
   JAVA_VER: Java version, for example "1.1.8" or "1.3.1"
   JAVA_OS: Target OS for the JDK/JRE, "FreeBSD" or "Linux"
   JAVA_HOME: Home directory of the Java runtime environment
   JAVA_PORT: The location for the JDK/JRE port
   JAVA_CLASSES: Reference to classes.zip or rt.jar
   JAVAC: Points to a Java compiler (possibly Jikes)
   APPLETVIEWER: Appletviewer location
   JAVA: Points to JRE or JDK java executable
   JAVADOC: Points to the javadoc utility
   JAVAH: Points to the javah utility
   JAVAP: Points to the javap utility
   JAVA_N2A: Points to the native2ascii utility
   RMIC: Points to the rmic program
   RMIREGISTRY: Points to the rmiregistry program
   JAVA_SERIALVER: Points to the serialver program

And only for JDK 1.2+:

   JAVA_POLICYTOOL: Points to the policytool program
   RMID: Points to the rmid program

The correct JDK/JRE will be added to BUILD_DEPENDS unless 
JAVA_NO_BUILD_DEPENDS. It will be added to RUN_DEPENDS unless 
JAVA_NO_RUN_DEPENDS is defined.

Any and all comments are welcome, of course.


Ernst

-- 
Ernst de Haan
EuroNet Internet B.V.

    "Come to me all who are weary and burdened
        and I will give you rest" -- Jesus Christ

--------------Boundary-00=_GB3371A0GFVL5VDBIE8Z
Content-Type: text/x-diff;
  charset="iso-8859-1";
  name="bsd.port.mk.diff"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bsd.port.mk.diff"

SW5kZXg6IGJzZC5wb3J0Lm1rCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL25jdnMvcG9ydHMv
TWsvYnNkLnBvcnQubWssdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDAwCmRpZmYgLWQgLXUgLXIx
LjQwMCBic2QucG9ydC5tawotLS0gYnNkLnBvcnQubWsJMjQgRmViIDIwMDIgMTY6NTQ6MzQgLTAw
MDAJMS40MDAKKysrIGJzZC5wb3J0Lm1rCTI1IEZlYiAyMDAyIDA5OjQ5OjI3IC0wMDAwCkBAIC03
ODEsNiArNzgxLDggQEAKIC5pbmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2QucnVieS5tayIKIC5l
bmRpZgogCisuaW5jbHVkZSAiJHtQT1JUU0RJUn0vTWsvYnNkLmphdmEubWsiCisKIC5pZiBkZWZp
bmVkKFVTRV9RVCkgfHwgZGVmaW5lZChVU0VfUVQyKSB8fCBkZWZpbmVkKFVTRV9RVF9WRVIpIHx8
IGRlZmluZWQoVVNFX0tERUxJQlNfVkVSKSB8fCBkZWZpbmVkKFVTRV9LREVCQVNFX1ZFUikKIC5p
bmNsdWRlICIke1BPUlRTRElSfS9Nay9ic2Qua2RlLm1rIgogLmVuZGlmCg==

--------------Boundary-00=_GB3371A0GFVL5VDBIE8Z
Content-Type: text/plain;
  charset="iso-8859-1";
  name="bsd.java.mk"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bsd.java.mk"

Iy0qLSBtb2RlOiBGdW5kYW1lbnRhbDsgdGFiLXdpZHRoOiA0OyAtKi0KIyBleDp0cz00CiMKIyBi
c2QuamF2YS5tayAtIFN1cHBvcnQgZm9yIEphdmEtYmFzZWQgcG9ydHMuCiMKIyBDcmVhdGVkIGJ5
OiBFcm5zdCBkZSBIYWFuIDx6bmVyZEBGcmVlQlNELm9yZz4KIwojICRGcmVlQlNEJAojCgouaWYg
IWRlZmluZWQoSmF2YV9JbmNsdWRlKQoKSmF2YV9JbmNsdWRlPQkJCQlic2QuamF2YS5tawpKYXZh
X0luY2x1ZGVfTUFJTlRBSU5FUj0Jem5lcmRARnJlZUJTRC5vcmcKCi4JaWYgZGVmaW5lZChVU0Vf
SkFWQSkKCiMgVGhlIGNvbXBsZXRlIGxpc3Qgb2YgSmF2YSB2ZXJzaW9ucyBzdXBwb3J0ZWQuCkpB
VkFfVkVSU0lPTlM9CQkxLjEgMS4yIDEuMyAxLjQKCiMgVGhlIGRlZmF1bHQgSmF2YSB2ZXJzaW9u
LiBUaGlzIHNldHRpbmcgY2FuIGJlIG92ZXJyaWRkZW4uCkRFRkFVTFRfSkFWQV9WRVI/PQkxLjMK
CiMgQ2hlY2sgdGhhdCB0aGUgREVGQVVMVF9KQVZBX1ZFUiBzZXR0aW5nIGlzIHZhbGlkCi4JCWZv
ciBfVE1QX0pBVkFfVkVSIGluICR7SkFWQV9WRVJTSU9OU30KLgkJCWlmICR7REVGQVVMVF9KQVZB
X1ZFUn0gPT0gJHtfVE1QX0pBVkFfVkVSfQpfREVGQVVMVF9KQVZBX1ZFUl9WQUxJRD0JeWVzCi4J
CQllbmRpZgouCQllbmRmb3IKLgkJaWYgIWRlZmluZWQoX0RFRkFVTFRfSkFWQV9WRVJfVkFMSUQp
Ci5CRUdJTjoKCUAke0VDSE99ICIke1BLR05BTUV9OiBcIiR7REVGQVVMVF9KQVZBX1ZFUn1cIiBp
cyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgREVGQVVMVF9KQVZBX1ZFUi4gSXQgc2hvdWxkIGJlIG9u
ZSBvZjogJHtKQVZBX1ZFUlNJT05TfS4iOwoJQCR7RkFMU0V9Ci4JCWVuZGlmCgojIElmIFVTRV9K
QVZBIGlzIG5vdCBzcGVjaWZ5aW5nIGEgdmVyc2lvbiwgdGhlbiB1c2UgdGhlIGRlZmF1bHQgb25l
LgouCQlpZiAke1VTRV9KQVZBfSA9PSAiWUVTIiB8fCAke1VTRV9KQVZBfSA9PSAieWVzIgpVU0Vf
SkFWQT0JJHtERUZBVUxUX0pBVkFfVkVSfQouCQllbmRpZgoKIyBBcHBseSBkaWZmZXJlbnQgc2V0
dGluZ3MgZm9yIGRpZmZlcmVudCB2YWx1ZXMgb2YgVVNFX0pBVkEuCi4JCWlmICgke1VTRV9KQVZB
fSA9PSAiMS4xIikKSkFWQV9WRU5ET1I9CUZyZWVCU0QKSkFWQV9WRVI9CTEuMS44CkpBVkFfT1M9
CUZyZWVCU0QKSkFWQV9IT01FPQkke0xPQ0FMQkFTRX0vamRrMS4xLjgKSkFWQV9QT1JUPQlqYXZh
L2pkawouCQllbGlmICR7VVNFX0pBVkF9ID09ICIxLjIiCkpBVkFfVkVORE9SPQlGcmVlQlNECkpB
VkFfVkVSPQkxLjIuMgpKQVZBX09TPQlGcmVlQlNECkpBVkFfSE9NRT0JJHtMT0NBTEJBU0V9L2pk
azEuMi4yCkpBVkFfUE9SVD0JamF2YS9qZGsxMi1iZXRhCkpBVkFfQ0xBU1NFUz0JJHtKQVZBX0hP
TUV9L2pyZS9saWIvcnQuamFyCi4JCWVsaWYgJHtVU0VfSkFWQX0gPT0gIjEuMyIKSkFWQV9WRU5E
T1I9CUZyZWVCU0QKSkFWQV9WRVI9CTEuMy4xCkpBVkFfT1M9CUZyZWVCU0QKSkFWQV9IT01FPQkk
e0xPQ0FMQkFTRX0vamRrMS4zLjEKSkFWQV9QT1JUPQlqYXZhL2pkazEzCkpBVkFfQ0xBU1NFUz0J
JHtKQVZBX0hPTUV9L2pyZS9saWIvcnQuamFyCi4JCWVsaWYgJHtVU0VfSkFWQX0gPT0gIjEuNCIK
SkFWQV9WRU5ET1I9CVN1bgpKQVZBX1ZFUj0JMS40LjAKSkFWQV9PUz0JTGludXgKSkFWQV9IT01F
PQkke0xPQ0FMQkFTRX0vbGludXgtamRrMS40LjAKSkFWQV9QT1JUPQlqYXZhL2xpbnV4LWpkazE0
CkpBVkFfQ0xBU1NFUz0JJHtKQVZBX0hPTUV9L2pyZS9saWIvcnQuamFyCi4JCWVsc2UKLkJFR0lO
OgoJQCR7RUNIT30gIiR7UEtHTkFNRX06IFwiJHtVU0VfSkFWQX1cIiBpcyBub3QgYSB2YWxpZCB2
YWx1ZSBmb3IgVVNFX0pBVkEuIEl0IHNob3VsZCBiZSBvbmUgb2Y6ICR7SkFWQV9WRVJTSU9OU30u
IjsKCUAke0ZBTFNFfQouCQllbmRpZgoKIyBEZWZpbmUgdGhlIGxvY2F0aW9uIG9mIHRoZSBKYXZh
IGNvbXBpbGVyLiBVc2UgSmlrZXMgaWYgdGhhdCBpcyBhbHJlYWR5CiMgaW5zdGFsbGVkLCB1bmxl
c3MgTk9fSklLRVMgaXMgZGVmaW5lZC4KLgkJdW5kZWYgSkFWQUMKLgkJaWYgIWRlZmluZWQoTk9f
SklLRVMpCkpJS0VTX1BBVEg9CSR7TE9DQUxCQVNFfS9iaW4vamlrZXMKLgkJCWlmIGV4aXN0cygk
e0pJS0VTX1BBVEh9KQpKQVZBQz0JCSR7SklLRVNfUEFUSH0KLgkJCWVuZGlmCi4JCWVuZGlmCi4J
CQlpZiAhZGVmaW5lZChKQVZBQykKSkFWQUM9CQkke0pBVkFfSE9NRX0vYmluL2phdmFjCi4JCWVu
ZGlmCgojIERlZmluZSB0aGUgbG9jYXRpb24gb2Ygc29tZSBtb3JlIGV4ZWN1dGFibGVzLgpBUFBM
RVRWSUVXRVI9CSR7SkFWQV9IT01FfS9iaW4vYXBwbGV0dmlld2VyCkpBVkE9CQkke0pBVkFfSE9N
RX0vYmluL2phdmEKSkFWQURPQz0JJHtKQVZBX0hPTUV9L2Jpbi9qYXZhZG9jCkpBVkFIPQkJJHtK
QVZBX0hPTUV9L2Jpbi9qYXZhaApKQVZBUD0JCSR7SkFWQV9IT01FfS9iaW4vamF2YXAKSkFWQV9O
MkE9CSR7SkFWQV9IT01FfS9iaW4vbmF0aXZlMmFzY2lpClJNSUM9CQkke0pBVkFfSE9NRX0vYmlu
L3JtaWMKUk1JUkVHSVNUUlk9CSR7SkFWQV9IT01FfS9iaW4vcm1pcmVnaXN0cnkKSkFWQV9TRVJJ
QUxWRVI9CSR7SkFWQV9IT01FfS9iaW4vc2VyaWFsdmVyCgojIFNvbWUgZXhlY3V0YWJsZXMgb25s
eSBleGlzdHMgaW4gSkRLIDEuMiBhbmQgdXAKLgkJaWYgJHtVU0VfSkFWQX0gIT0gIjEuMSIKSkFW
QV9QT0xJQ1lUT09MPQkke0pBVkFfSE9NRX0vYmluL3BvbGljeXRvb2wKUk1JRD0JCSR7SkFWQV9I
T01FfS9iaW4vcm1pZAouCQllbmRpZgoKIyBTZXQgdGhlIGxvY2F0aW9uIG9mIHRoZSBaSVAgb3Ig
SkFSIGZpbGUgd2l0aCBhbGwgc3RhbmRhcmQgSmF2YSBjbGFzc2VzLgouCQlpZiAke1VTRV9KQVZB
fSA9PSAiMS4xIgpKQVZBX0NMQVNTRVM9CSR7SkFWQV9IT01FfS9saWIvY2xhc3Nlcy56aXAKLgkJ
ZWxzZQpKQVZBX0NMQVNTRVM9CSR7SkFWQV9IT01FfS9qcmUvbGliL3J0LmphcgouCQllbmRpZgoK
IyBBZGQgdGhlIEphdmEgcG9ydCB0byB0aGUgZGVwZW5kZW5jaWVzCkRFUEVORF9KQVZBPQkke0pB
VkF9OiR7UE9SVFNESVJ9LyR7SkFWQV9QT1JUfQouCQlpZiAhZGVmaW5lZChKQVZBX05PX0JVSUxE
X0RFUEVORFMpCkJVSUxEX0RFUEVORFMrPQkJJHtERVBFTkRfSkFWQX0KLgkJZW5kaWYKLgkJaWYg
IWRlZmluZWQoSkFWQV9OT19SVU5fREVQRU5EUykKUlVOX0RFUEVORFMrPQkJJHtERVBFTkRfSkFW
QX0KLgkJZW5kaWYKLgllbmRpZgouZW5kaWYK

--------------Boundary-00=_GB3371A0GFVL5VDBIE8Z--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200202251018.g1PAIqi02136>