Opened 15 years ago

Last modified 6 years ago

#21500 new submission

icedtea 1.11 Proposed Port

Reported by: mvfranz@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.8.0
Keywords: Cc: ryandesign (Ryan Carsten Schmidt), kiniry@…, petrrr
Port: icedtea

Description

Hi,

I have a Portfile that works for building IcedTea 1.11 On intel for Leopard and Snow Leopard. I would like this to be included. People more familiar with Macports should review and comment as there is lots of things going on to get this to work.

This allows OpenJDK 7 to be built using ecj and Apple's 1.5 JDK. Currently only Intel is supported, but there is Zero and Shark that work for PPC (just not BSD).

I do not have access to a PowerPC Mac to test.

Attachments (10)

patch-configure.ac.diff (923 bytes) - added by mvfranz@… 15 years ago.
Patches to IcedTea's configure script
patch-Makefile.am.diff (11.4 KB) - added by mvfranz@… 15 years ago.
Changes to IcedTea Makefile.am
patch-openjdk-hotspot-make-bsd-Makefile.diff (1.3 KB) - added by mvfranz@… 15 years ago.
patch-openjdk-hotspot-make-bsd-makefiles-vm.make.diff (361 bytes) - added by mvfranz@… 15 years ago.
patch-patches-ecj-icedtea.patch.diff (4.0 KB) - added by mvfranz@… 15 years ago.
patch-SYSTEM_ZLIB.diff (2.9 KB) - added by mvfranz@… 15 years ago.
patch-openjdk-hotspot-src-share-vm-utilities-globalDefinitions.hpp.diff (960 bytes) - added by mvfranz@… 15 years ago.
patch-openjdk-hotspot-src-os-bsd-vm-os_bsd.cpp.diff (427 bytes) - added by mvfranz@… 15 years ago.
ecj.in (327 bytes) - added by mvfranz@… 15 years ago.
special script to run ecj
Portfile (5.1 KB) - added by mvfranz@… 15 years ago.
Portfile with proper install script

Download all attachments as: .zip

Change History (20)

Changed 15 years ago by mvfranz@…

Attachment: patch-configure.ac.diff added

Patches to IcedTea's configure script

Changed 15 years ago by mvfranz@…

Attachment: patch-Makefile.am.diff added

Changes to IcedTea Makefile.am

Changed 15 years ago by mvfranz@…

Changed 15 years ago by mvfranz@…

Changed 15 years ago by mvfranz@…

Attachment: patch-SYSTEM_ZLIB.diff added

comment:1 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Port: icedtea added
Summary: IcedTea 1.11 Proposed Porticedtea 1.11 Proposed Port

My notes so far:

  • "/opt/local" is hardcoded in some files; you must arrange to use ${prefix} instead, for example by putting "@PREFIX@ in those files and then using reinplace in the portfile
  • why are you making a tmp directory in /var/tmp? ${workpath} is a port's temporary work area; can't you make a directory in there?
  • in the configure.args, the number of parallel jobs should be taken from the variable ${build.jobs} which is based on the setting build_make_jobs in macports.conf
  • in the destroot phase, why use tar to copy files? Can't use use the tcl "file copy" procedure?
  • patchfile patch-openjdk-hotspot-src-share-vm-utilities-globalDefinitions.hpp.diff is referenced by the port but missing from this ticket

comment:2 in reply to:  1 ; Changed 15 years ago by mvfranz@…

Replying to ryandesign@…: All great points.

My notes so far:

  • "/opt/local" is hardcoded in some files; you must arrange to use ${prefix} instead, for example by putting "@PREFIX@ in those files and then using reinplace in the portfile

I will change the hard coded values of /opt/local.

  • why are you making a tmp directory in /var/tmp? ${workpath} is a port's temporary work area; can't you make a directory in there?

I can change the temp directory without a problem

  • in the configure.args, the number of parallel jobs should be taken from the variable ${build.jobs} which is based on the setting build_make_jobs in macports.conf

I will use the ${build.jobs} variable. I had copied some of this from the openjdk6 port.

  • in the destroot phase, why use tar to copy files? Can't use use the tcl "file copy" procedure?

This I copied from the openjdk6 port. It worked there, so I did the easiest thing. Let me try to figure out a tcl based implementation.

  • patchfile patch-openjdk-hotspot-src-share-vm-utilities-globalDefinitions.hpp.diff is referenced by the port but missing from this ticket

I attached the missing file.

I'll upload a new Portfile when I have something working.

comment:3 in reply to:  2 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to mvfranz@…:

I will use the ${build.jobs} variable. I had copied some of this from the openjdk6 port.

Ah, ok. We should change openjdk6 too then.

  • in the destroot phase, why use tar to copy files? Can't use use the tcl "file copy" procedure?

This I copied from the openjdk6 port. It worked there, so I did the easiest thing. Let me try to figure out a tcl based implementation.

I would think it would just be something like

file copy ${worksrcpath}/openjdk/build/bsd-i586/j2sdk-image ${destroot}${prefix}/share/java/${name}

Changed 15 years ago by mvfranz@…

Changed 15 years ago by mvfranz@…

Attachment: ecj.in added

special script to run ecj

comment:4 Changed 15 years ago by mvfranz@…

I have attached ecj.in and patch-openjdk-hotspot-src-os-bsd-vm-os_bsd.cpp.diff that use the @@PREFIX@@ that are replaced in the Portfile. I also uploaded a new version of the Porfile.

I was not able to figure out how to use copy and move to replace the use of tar to preform the install. The copy works, but the rename seems to be ignored.

comment:5 Changed 15 years ago by mvfranz@…

To get this work on Snow Leopard the following changes are required in the Portfile.

build.args CC=gcc-4.0 CXX=g++-4.0 \

configure.compiler  gcc-4.0

It seems that the default Snow Leopard compiler will not work for compiling the OpenJDK.

Changed 15 years ago by mvfranz@…

Attachment: Portfile added

Portfile with proper install script

comment:6 Changed 15 years ago by kiniry@…

Cc: kiniry@… added

Cc Me!

comment:7 Changed 10 years ago by petrrr

Cc: Peter.Danecek@… added

Cc Me!

comment:8 Changed 6 years ago by kencu (Ken)

this ancient portfile is terribly out of date now. Any objections to closing this?

comment:9 Changed 6 years ago by JacksonIsaac (Jackson Isaac)

Instead of closing this can we try getting this into macports ?

I am giving it a try but not sure how easy or complex it would be.

comment:10 Changed 6 years ago by pmetzger (Perry E. Metzger)

JacksonIsaac: nothing is stopping you from doing the work. I think, however, that we can close this.

Note: See TracTickets for help on using tickets.