open-src/lib/libglu/Makefile
changeset 1391 e266e6d6f657
child 1418 536e3ec8f101
equal deleted inserted replaced
1390:5f1ee31e8d15 1391:e266e6d6f657
       
     1 ###############################################################################
       
     2 #
       
     3 # Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
       
     4 #
       
     5 # Permission is hereby granted, free of charge, to any person obtaining a
       
     6 # copy of this software and associated documentation files (the "Software"),
       
     7 # to deal in the Software without restriction, including without limitation
       
     8 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
       
     9 # and/or sell copies of the Software, and to permit persons to whom the
       
    10 # Software is furnished to do so, subject to the following conditions:
       
    11 #
       
    12 # The above copyright notice and this permission notice (including the next
       
    13 # paragraph) shall be included in all copies or substantial portions of the
       
    14 # Software.
       
    15 #
       
    16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
       
    17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
       
    18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
       
    19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
       
    20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
       
    21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
       
    22 # DEALINGS IN THE SOFTWARE.
       
    23 #
       
    24 #
       
    25 
       
    26 # Package name used in tarballs
       
    27 MODULE_NAME=glu
       
    28 
       
    29 # Package metadata
       
    30 UPSTREAM	= The Mesa 3-D Graphics Library
       
    31 UPSTREAM_URL	= http://mesa3d.org/
       
    32 UPSTREAM_SET	= yes
       
    33 
       
    34 MODULE_LICENSE          = Mesa License (Mixed: MIT, LGPLv2, others)
       
    35 MODULE_LICENSE_SET      = yes
       
    36 MODULE_LICENSE_PREPEND	= $(GPL_CHOICE_FILE)
       
    37 MODULE_DESC		= the Mesa 3-D Graphics Libraries
       
    38 ORACLE_TPNO		= 9926
       
    39 
       
    40 # ARC cases that covered this module
       
    41 # LSARC/2005/109 MESA, Open Source OpenGL clone
       
    42 MODULE_ARC_CASES = LSARC/2005/109
       
    43 
       
    44 # Version number (used in path names)
       
    45 MODULE_VERSION=9.0.0
       
    46 
       
    47 # Checksums for upstream tarball
       
    48 TARBALL_MD5  = be9249132ff49275461cf92039083030
       
    49 TARBALL_SHA1 = c2814bbaf1e60e28a75ec80f4646047c0da742bd
       
    50 
       
    51 # Source tarball
       
    52 SOURCE_TARBALL_NAME=glu-$(MODULE_VERSION).tar.bz2
       
    53 SOURCE_TARBALL_NAME_SET=yes
       
    54 
       
    55 # Download site for source
       
    56 SOURCE_URL=ftp://ftp.freedesktop.org/pub/mesa/glu/$(SOURCE_TARBALL_NAME)
       
    57 SOURCE_URL_SET=yes
       
    58 GIT_URL=$(FDO_GIT_URL)/mesa/glu
       
    59 GIT_URL_SET=yes
       
    60 
       
    61 # Directory created by unpacking source
       
    62 SOURCE_DIRNAME=glu-$(MODULE_VERSION)
       
    63 SOURCE_DIRNAME_SET=yes
       
    64 SOURCE_DIR = $(BUILD_DIR)/$(SOURCE_DIRNAME)
       
    65 
       
    66 # Patches to apply to source after unpacking, in order
       
    67 SOURCE_PATCHES=glu-exports.patch
       
    68 
       
    69 # Build mesa with this define (CR 7032292)
       
    70 MODULE_CFLAGS = -D__EXTENSIONS__
       
    71 
       
    72 # Override LDFLAGS passed to configure to not include CFLAGS, since that
       
    73 # breaks building libGLU with Sun Studio C++ compiler
       
    74 MODULE_CONFIG_ENV = LDFLAGS="$(DEFAULT_CONFIG_LDFLAGS) $(ARCH_FLAGS) $(MODTYPE_LDFLAGS) $(MODULE_CFLAGS) $(MODULE_LDFLAGS)"
       
    75 
       
    76 # Add proto area to path to find makedepend
       
    77 MODULE_BUILD_ENV = PATH="$(PROTODIR)/$(X11_BIN_DIR):$(PATH)"
       
    78 MODULE_CONFIG_ENV += $(MODULE_BUILD_ENV)
       
    79 
       
    80 # Need to use GNU Make to build
       
    81 MODULE_MAKE=$(GNUMAKE)
       
    82 MODULE_MAKE_SET=yes
       
    83 
       
    84 # Need to use GNU indent
       
    85 MODULE_INDENT=$(GNUINDENT)
       
    86 MODULE_INDENT_SET=yes
       
    87 
       
    88 # To build with gcc, uncomment these lines and comment out the MODULE_CFLAGS
       
    89 MODULE_COMPILER=gcc
       
    90 MODULE_COMPILER_SET=yes
       
    91 
       
    92 # Tell Sun compiler to not apply optimizations that increase binary sizes
       
    93 # Without this flag, Studio 12 binaries are almost 2x bigger (CR 6808868)
       
    94 #MODULE_CFLAGS = -xspace
       
    95 
       
    96 # Add include paths and linker paths needed for DRM modules
       
    97 MODULE_CPPFLAGS = -I$(PROTODIR)/usr/include/libdrm
       
    98 
       
    99 MODULE_LDFLAGS= -L$(PROTODIR)$(X11_SERVERLIBS_DIR)$(ARCHLIBSUBDIR) \
       
   100 		-R$(X11_SERVERLIBS_DIR)$(ARCHLIBSUBDIR) -z ignore
       
   101 
       
   102 ### Include common rulesets
       
   103 include ../Makefile.inc
       
   104 
       
   105 HEADERS_TO_MOVE = glu.h glu_mangle.h
       
   106 HEADERS_TO_DIRECT_LINK = glu.h
       
   107 LIBRARY_TO_LINK = libGLU.so.1.3.1
       
   108 
       
   109 # Run just once after all other install steps are done for both 32/64-bit
       
   110 install: install_ogl_layout
       
   111 
       
   112 install_ogl_layout:
       
   113 	-rm -f $(PROTODIR)/usr/lib/libGLU.so.1
       
   114 	-rm -f $(PROTODIR)/usr/lib/libGLU.so
       
   115 	-rm -f $(PROTODIR)/usr/lib/$(SUBDIR64)/libGLU.so.1
       
   116 	-rm -f $(PROTODIR)/usr/lib/$(SUBDIR64)/libGLU.so
       
   117 	mv $(PROTODIR)/usr/include/GL/glu.h $(PROTODIR)/usr/include/mesa
       
   118 	mv $(PROTODIR)/usr/include/GL/glu_mangle.h $(PROTODIR)/usr/include/mesa
       
   119 	ln -s $(HEADERS_TO_DIRECT_LINK:%=../mesa/%) \
       
   120 		$(PROTODIR)/usr/include/GL
       
   121 	mkdir -p $(PROTODIR)/usr/lib/GL/$(SUBDIR64) \
       
   122 		$(PROTODIR)/usr/lib/mesa/$(SUBDIR64)
       
   123 	mv $(LIBRARY_TO_LINK:%=$(PROTODIR)/usr/lib/%) \
       
   124 		$(PROTODIR)/usr/lib/mesa/
       
   125 	mv $(LIBRARY_TO_LINK:%=$(PROTODIR)/usr/lib/$(SUBDIR64)/%) \
       
   126 		$(PROTODIR)/usr/lib/mesa/$(SUBDIR64)/
       
   127 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/mesa/libGLU.so.1
       
   128 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/mesa/libGLU.so
       
   129 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/mesa/$(SUBDIR64)/libGLU.so.1
       
   130 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/mesa/$(SUBDIR64)/libGLU.so
       
   131 	(cd $(PROTODIR)/usr/lib/GL; ln -s $(LIBRARY_TO_LINK:%=../mesa/%) .)
       
   132 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/GL/libGLU.so.1
       
   133 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/GL/libGLU.so
       
   134 	(cd $(PROTODIR)/usr/lib/GL/$(SUBDIR64); ln -s $(LIBRARY_TO_LINK:%=../../mesa/$(SUBDIR64)/%) .)
       
   135 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/GL/$(SUBDIR64)/libGLU.so.1
       
   136 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/GL/$(SUBDIR64)/libGLU.so
       
   137 	(cd $(PROTODIR)/usr/lib; ln -s $(LIBRARY_TO_LINK:%=GL/%) .)
       
   138 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/libGLU.so.1
       
   139 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/libGLU.so
       
   140 	(cd $(PROTODIR)/usr/lib/$(SUBDIR64); ln -s $(LIBRARY_TO_LINK:%=../GL/$(SUBDIR64)/%) .)
       
   141 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/lib/$(SUBDIR64)/libGLU.so.1
       
   142 	ln -s libGLU.so.1 $(PROTODIR)/usr/lib/$(SUBDIR64)/libGLU.so
       
   143 	(cd $(PROTODIR)/usr/X11/lib; ln -s $(LIBRARY_TO_LINK:%=GL/%) .)
       
   144 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/X11/lib/libGLU.so.1
       
   145 	ln -s libGLU.so.1 $(PROTODIR)/usr/X11/lib/libGLU.so
       
   146 	(cd $(PROTODIR)/usr/X11/lib/$(SUBDIR64); ln -s $(LIBRARY_TO_LINK:%=../GL/$(SUBDIR64)/%) .)
       
   147 	ln -s libGLU.so.1.3.1 $(PROTODIR)/usr/X11/lib/$(SUBDIR64)/libGLU.so.1
       
   148 	ln -s libGLU.so.1 $(PROTODIR)/usr/X11/lib/$(SUBDIR64)/libGLU.so