Makefile 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include $(TOPDIR)/rules.mk
  4. PKG_NAME:= openjdk7
  5. PKG_VERSION:= 2.4.5
  6. PKG_RELEASE:= 1
  7. PKG_MD5SUM:= 6dcc544657ade213d01017354a6f9858
  8. PKG_DESCR:= OpenJDK 7 Java VM
  9. PKG_SECTION:= lang
  10. PKG_BUILDDEP:= gettext-tiny-host glib-host flex-host bison-host qemu-host
  11. PKG_BUILDDEP+= fastjar-host libICE-host libSM-host libX11-host util-macros-host libXt-host
  12. PKG_BUILDDEP+= xineramaproto-host libXinerama-host recordproto-host libXi-host libXtst-host freetype-host
  13. PKG_BUILDDEP+= renderproto-host libXrender-host alsa-lib-host libffi-host gcj-host ecj-host jikes-host
  14. PKG_BUILDDEP+= classpath-host jamvm-host ant-host cups-host openjdk7-host nss
  15. PKG_BUILDDEP+= alsa-lib xproto libjpeg-turbo zlib giflib libpng freetype cups
  16. PKG_BUILDDEP+= libX11 libXt libXp libXinerama libXrender libXtst libiconv-tiny
  17. PKG_DEPENDS:= zlib libstdcxx libffi libpthread libxtst libxi libgcc cups
  18. PKG_DEPENDS+= libfreetype libxrender libx11 libxext libpthread nss
  19. PKG_URL:= http://openjdk.org/
  20. PKG_SITES:= http://icedtea.classpath.org/download/source/
  21. DISTFILES:= icedtea-$(PKG_VERSION).tar.gz
  22. WRKDIST= ${WRKDIR}/icedtea-${PKG_VERSION}
  23. GCJ_VER:= 4.7.3
  24. PKG_HOST_DEPENDS:= linux
  25. PKG_ARCH_DEPENDS:= arm mips ppc x86 x86_64
  26. PKG_LIBC_DEPENDS:= uclibc eglibc glibc
  27. PKG_SYSTEM_DEPENDS:= !lemote-yeelong
  28. include $(TOPDIR)/mk/host.mk
  29. include $(TOPDIR)/mk/package.mk
  30. include $(TOPDIR)/mk/qemu.mk
  31. $(eval $(call HOST_template,OPENJDK7,openjdk7,$(PKG_VERSION)-${PKG_RELEASE}))
  32. $(eval $(call PKG_template,OPENJDK7,openjdk7,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  33. # for UINTPTR_MAX in stdint.h
  34. TARGET_CFLAGS+= -D__STDC_LIMIT_MACROS
  35. # segfaults with march=pentium-m/atom
  36. TARGET_CFLAGS:= $(subst march=pentium-m,march=i686,$(TARGET_CFLAGS))
  37. TARGET_CFLAGS:= $(subst march=atom,march=i686,$(TARGET_CFLAGS))
  38. TARGET_CFLAGS:= $(filter-out -fhonour-copts,$(TARGET_CFLAGS))
  39. BOOTSTRAPJDK:= ${STAGING_HOST_DIR}/bootstrap-jdk
  40. JDKARCH:= $(CPU_ARCH)
  41. ifeq ($(ARCH),x86)
  42. JDKARCH:= i386
  43. endif
  44. ifeq ($(CPU_ARCH),x86_64)
  45. JDKARCH:= amd64
  46. endif
  47. ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y)
  48. JDKARCH:= mipsel
  49. endif
  50. CONFIGURE_BACKEND:= --enable-zero
  51. CONFIGURE_COMMON:= --disable-docs \
  52. --with-jdk-home=$(BOOTSTRAPJDK) \
  53. --with-java=$(BOOTSTRAPJDK)/bin/java \
  54. --with-javac=$(BOOTSTRAPJDK)/bin/javac \
  55. --with-javah=$(BOOTSTRAPJDK)/bin/javah \
  56. --with-jar=$(BOOTSTRAPJDK)/bin/jar \
  57. --with-rmic=$(BOOTSTRAPJDK)/bin/rmic \
  58. --with-native2ascii=$(BOOTSTRAPJDK)/bin/native2ascii \
  59. --with-gcj=$(STAGING_HOST_DIR)/usr/bin/gcj \
  60. --enable-nss \
  61. --without-hotspot-build \
  62. --disable-system-jpeg \
  63. --disable-system-lcms \
  64. --disable-system-zlib \
  65. --disable-system-png \
  66. --disable-system-gif \
  67. --disable-system-gtk \
  68. --disable-system-gio \
  69. --disable-system-kerberos \
  70. --disable-system-fontconfig \
  71. --disable-compile-against-syscalls \
  72. --without-rhino
  73. CONFIGURE_ARGS+= $(CONFIGURE_BACKEND)
  74. CONFIGURE_ARGS+= $(CONFIGURE_COMMON)
  75. CONFIGURE_ARGS+= --disable-bootstrap
  76. CONFIGURE_ENV+= LD_LIBRARY_PATH=$(STAGING_HOST_DIR)/usr/lib
  77. MAKE_ENV+= ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/bin \
  78. ALT_OPENWIN_HOME=$(STAGING_DIR)/usr/ \
  79. ALT_CUPS_HEADERS_PATH=$(STAGING_DIR)/usr/include/ \
  80. ALT_FREETYPE_HEADERS_PATH=$(STAGING_DIR)/usr/include/ \
  81. OTHER_CFLAGS='$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_LDFLAGS)' \
  82. OTHER_CXXFLAGS='$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_LDFLAGS)' \
  83. OTHER_LDFLAGS='$(TARGET_LDFLAGS)' \
  84. GCC_HONOUR_COPTS=s CROSS_COMPILE_ARCH=$(JDKARCH) QEMU=$(QEMU) \
  85. LD_LIBRARY_PATH=$(STAGING_HOST_DIR)/usr/lib
  86. ALL_TARGET:= icedtea
  87. # host stuff
  88. OPENJDK_NATIVE_ENV+= JAVACFLAGS="-cp ${STAGING_HOST_DIR}/usr/share/java/libgcj-$(GCJ_VER).jar"
  89. OPENJDK_NATIVE_ENV+= LD_LIBRARY_PATH=$(STAGING_HOST_DIR)/usr/lib:$(STAGING_HOST_DIR)/usr/lib64
  90. OPENJDK_NATIVE_ENV+= ADK_ECJ=$(STAGING_HOST_DIR)/usr/bin/ecj
  91. OPENJDK_NATIVE_ENV+= BOOTCLASSPATH="$(STAGING_HOST_DIR)/usr/share/jamvm/classes.zip:$(STAGING_HOST_DIR)/usr/share/classpath/glibj.zip"
  92. OPENJDK_NATIVE_ENV+= FFI_LDFLAGS="$(LDFLAGS_FOR_BUILD)" \
  93. ALT_CUPS_HEADERS_PATH="$(STAGING_HOST_DIR)/usr/include" \
  94. ALT_FREETYPE_HEADERS_PATH="$(STAGING_HOST_DIR)/usr/include" \
  95. ALT_FREETYPE_LIB_PATH="$(STAGING_HOST_DIR)/usr/lib"
  96. HOST_STYLE:= auto
  97. HOST_CONFIGURE_ENV+= $(OPENJDK_NATIVE_ENV)
  98. HOST_MAKE_ENV+= $(OPENJDK_NATIVE_ENV)
  99. HOST_ALL_TARGET:= icedtea-boot
  100. HOST_CONFIGURE_ARGS+=\
  101. --enable-bootstrap \
  102. --enable-zero \
  103. --with-jdk-home=$(STAGING_HOST_DIR)/usr/lib/jvm \
  104. --with-java=$(STAGING_HOST_DIR)/usr/bin/java \
  105. --with-javac=$(STAGING_HOST_DIR)/usr/bin/ecj \
  106. --with-ecj-jar=${STAGING_HOST_DIR}/usr/share/java/ecj.jar \
  107. --without-hotspot-build \
  108. --disable-system-jpeg \
  109. --disable-system-lcms \
  110. --disable-system-zlib \
  111. --disable-system-png \
  112. --disable-system-gif \
  113. --disable-system-gtk \
  114. --disable-system-gio \
  115. --disable-system-kerberos \
  116. --disable-system-fontconfig \
  117. --disable-compile-against-syscalls \
  118. --without-rhino \
  119. --disable-docs
  120. hostpost-install:
  121. -rm -rf $(STAGING_HOST_DIR)/bootstrap-jdk
  122. $(CP) $(WRKBUILD)/openjdk.build-boot/j2sdk-image $(STAGING_HOST_DIR)/bootstrap-jdk
  123. openjdk7-install:
  124. $(INSTALL_DIR) $(IDIR_OPENJDK7)/usr/lib/jvm/jre
  125. $(INSTALL_DIR) $(IDIR_OPENJDK7)/usr/bin
  126. $(CP) $(WRKBUILD)/openjdk.build/j2re-image/bin $(IDIR_OPENJDK7)/usr/lib/jvm/jre
  127. $(CP) $(WRKBUILD)/openjdk.build/j2re-image/lib $(IDIR_OPENJDK7)/usr/lib/jvm/jre
  128. (cd $(IDIR_OPENJDK7)/usr/bin && ln -sf ../lib/jvm/jre/bin/java .)
  129. (cd $(IDIR_OPENJDK7)/usr/lib/jvm/jre/lib/$(JDKARCH) && ln -sf server/libjvm.so .)
  130. include ${TOPDIR}/mk/host-bottom.mk
  131. include ${TOPDIR}/mk/pkg-bottom.mk