commit | author | age
|
3c9fca
|
1 |
# CDDL HEADER START |
F |
2 |
# |
|
3 |
# The contents of this file are subject to the terms of the |
|
4 |
# Common Development and Distribution License (the "License"). |
|
5 |
# You may not use this file except in compliance with the License. |
|
6 |
# |
|
7 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
|
8 |
# or http://www.opensolaris.org/os/licensing. |
|
9 |
# See the License for the specific language governing permissions |
|
10 |
# and limitations under the License. |
|
11 |
# |
|
12 |
# When distributing Covered Code, include this CDDL HEADER in each |
|
13 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
|
14 |
# If applicable, add the following below this CDDL HEADER, with the |
|
15 |
# fields enclosed by brackets "[]" replaced with your own identifying |
|
16 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
|
17 |
# |
|
18 |
# CDDL HEADER END |
|
19 |
# |
|
20 |
# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. |
|
21 |
# Copyright (c) 2016. Adam Stevko. All rights reserved. |
|
22 |
# Copyright (c) 2020, Andreas Wacknitz |
|
23 |
# Copyright (c) 2023, Friedrich Kink |
|
24 |
# |
|
25 |
|
|
26 |
BUILD_STYLE= justmake |
|
27 |
include ../../../make-rules/shared-macros.mk |
|
28 |
|
|
29 |
COMPONENT_NAME= lua |
|
30 |
COMPONENT_MJR_VERSION= 5.4 |
|
31 |
COMPONENT_MNR_VERSION= 6 |
|
32 |
COMPONENT_VERSION= $(COMPONENT_MJR_VERSION).$(COMPONENT_MNR_VERSION) |
|
33 |
COMPONENT_SUMMARY= Lua is a powerful, fast, lightweight, embeddable scripting language. |
|
34 |
COMPONENT_PROJECT_URL= https://www.lua.org/ |
|
35 |
COMPONENT_FMRI= runtime/lua-54 |
|
36 |
COMPONENT_CLASSIFICATION= Development/Other Languages |
|
37 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
|
38 |
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
|
39 |
COMPONENT_ARCHIVE_URL= https://www.lua.org/ftp/$(COMPONENT_ARCHIVE) |
|
40 |
COMPONENT_ARCHIVE_HASH= sha256:7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88 |
|
41 |
COMPONENT_LICENSE= MIT |
|
42 |
COMPONENT_LICENSE_FILE= $(COMPONENT_NAME).license |
|
43 |
|
|
44 |
LUA_TESTS= $(COMPONENT_NAME)-$(COMPONENT_VERSION)-tests |
|
45 |
COMPONENT_ARCHIVE_1= $(LUA_TESTS).tar.gz |
|
46 |
COMPONENT_ARCHIVE_HASH_1= sha256:63ed5f5bcfd15dfd2f72e04c2f8c10585bb8de9e558df62b335cb9e5c1a4ef34 |
|
47 |
COMPONENT_ARCHIVE_URL_1= $(COMPONENT_PROJECT_URL)tests/$(COMPONENT_ARCHIVE_1) |
|
48 |
|
|
49 |
CLEAN_PATHS += $(LUA_TESTS) |
|
50 |
|
|
51 |
include $(WS_MAKE_RULES)/common.mk |
|
52 |
|
|
53 |
COMPONENT_BUILD_TARGETS= solaris |
|
54 |
|
|
55 |
# This is because lua uses $(CC) to build it's shared libraries. |
|
56 |
CC += $(CC_BITS) |
|
57 |
|
|
58 |
CFLAGS += $(CC_PIC) $(CPP_LARGEFILES) |
|
59 |
|
|
60 |
# Original patch from userland-gate used LD_OPTIONS_SO and LD_OPTIONS directly in the src/Makefile |
|
61 |
# of Lua SOURCE_DIR. This caused that gcc picked wrong linking flags and liblua.so would not be |
|
62 |
# created. Till there is a better way, let's stick to this. |
|
63 |
MYLDFLAGS= $(shell echo $(LD_OPTIONS_SO) $(LD_OPTIONS) | $(GSED) -e 's/^/-Wl,/g' -e 's/ /,'/g) |
|
64 |
|
|
65 |
COMPONENT_BUILD_ARGS += CC="$(CC)" |
|
66 |
COMPONENT_BUILD_ARGS += MYCFLAGS="$(CFLAGS)" |
|
67 |
COMPONENT_BUILD_ARGS += MYLDFLAGS="$(MYLDFLAGS)" |
|
68 |
COMPONENT_INSTALL_ARGS += INSTALL=$(INSTALL) |
|
69 |
COMPONENT_INSTALL_ARGS += INSTALL_TOP=$(PROTOUSRDIR) |
|
70 |
$(INSTALL_64): COMPONENT_INSTALL_ARGS += INSTALL_LIB=$(PROTOUSRLIBDIR64) |
|
71 |
$(INSTALL_64): COMPONENT_INSTALL_ARGS += INSTALL_BIN=$(PROTOUSRBINDIR) |
|
72 |
|
|
73 |
$(TEST_64): install |
|
74 |
(gzip -dc $(USERLAND_ARCHIVES)$(LUA_TESTS).tar.gz | tar xopf -; \ |
|
75 |
cd $(LUA_TESTS); $(ENV) LD_LIBRARY_PATH=$(PROTOUSRLIBDIR64) \ |
|
76 |
$(PROTOUSRBINDIR)/$(COMPONENT_NAME)$(COMPONENT_MJR_VERSION) -e"_U=true" all.lua) |
|
77 |
|
|
78 |
# Auto-generated dependencies |
|
79 |
REQUIRED_PACKAGES += system/library |
|
80 |
REQUIRED_PACKAGES += system/library/math |