|
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 |