Andreas Wacknitz
2024-03-31 783118944874d559e30eea1600352e3feb5263a7
commit | author | age
6ac39f 1 #
AP 2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL)". You may
4 # only use this file in accordance with the terms of the CDDL.
5 #
6 # A full copy of the text of the CDDL should have accompanied this
7 # source. A copy of the CDDL is also available via the Internet at
8 # http://www.illumos.org/license/CDDL.
9 #
10
11 #
12 # Copyright 2018 Alexander Pyhalov
13 #
14
15 include ../../../make-rules/shared-macros.mk
16
17 COMPONENT_NAME=        ccl
1e44d5 18 COMPONENT_VERSION=    1.12.2
6ac39f 19 COMPONENT_SUMMARY=    ccl - Clozure Common Lisp
AP 20 COMPONENT_PROJECT_URL=    https://ccl.clozure.com/
21 COMPONENT_SRC=        ccl
22 COMPONENT_ARCHIVE=    ccl-$(COMPONENT_VERSION)-solarisx86.tar.gz
1e44d5 23 COMPONENT_ARCHIVE_HASH=    sha256:f058137c92349ccce86a2725c68f4129ed660d07d834b0794de441339366dc8d
6ac39f 24 COMPONENT_ARCHIVE_URL=  https://github.com/Clozure/ccl/releases/download/v$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
AP 25 COMPONENT_FMRI=    runtime/ccl
26 COMPONENT_CLASSIFICATION=    Development/Other Languages
27 COMPONENT_LICENSE=    Apache-2.0
1e44d5 28 COMPONENT_LICENSE_FILE=    LICENSE
6ac39f 29
AP 30 include $(WS_MAKE_RULES)/prep.mk
31 include $(WS_MAKE_RULES)/justmake.mk
32 include $(WS_MAKE_RULES)/ips.mk
33
34 # We need libsocket to be linked into ccl, despite of linker opinion about it.
35 # Otherwise we receive
36 # Error: Can't resolve foreign symbol "socket"
37 # when sockets are used
38 LD_Z_IGNORE=
39
40 COMPONENT_COPY_ACTION = cp -r $(SOURCE_DIR)/* $(@D)
41
42 BUILD_CCL_64 = $(BUILD_DIR_64)/.built_ccl
43 MY_INSTALL = $(BUILD_DIR_64)/.my_installed
44
45 CCL_DIRECTORY = /usr/lib/ccl
46
47 INST_FILES = bin compiler doc examples level-0  level-1
48 INST_FILES += lib  library  objc-bridge  solarisx64-headers 
49 INST_FILES += sx86-boot64 sx86cl64 sx86cl64.image  tools  xdump
50
51 COMPONENT_BUILD_ARGS += -C $(BUILD_DIR_$(BITS))/lisp-kernel/solarisx64
52
53 COMPONENT_BUILD_ENV += CC="$(CC)"
54 COMPONENT_BUILD_ENV += CFLAGS="$(CFLAGS)"
55
56
57 $(BUILD_CCL_64):    $(BUILD_64)
58     cd $(BUILD_DIR_64) ; $(ENV) $(COMPONENT_BUILD_ENV) \
59         ./sx86cl64  --no-init --batch --quiet  --eval "(ccl:rebuild-ccl :full t)" \
60     --eval "(quit)"
61     $(TOUCH) $(@)
62
63 $(MY_INSTALL): $(BUILD_CCL_64)
64     [ -d $(PROTO_DIR)/$(CCL_DIRECTORY) ] || $(MKDIR) $(PROTO_DIR)/$(CCL_DIRECTORY)
65     cd $(@D); cp -r $(INST_FILES) $(PROTO_DIR)/$(CCL_DIRECTORY) 
66     rm -fr $(PROTO_DIR)/usr/lib/ccl/solarisx64-headers/.svn
67     $(TOUCH) $@
68
69 build:    $(BUILD_64) $(BUILD_CCL_64)
70
71 install: $(MY_INSTALL)
72
73 test: $(NO_TESTS)
74
b68583 75 # Auto-generated dependencies
1e44d5 76 REQUIRED_PACKAGES += shell/ksh93
6ac39f 77 REQUIRED_PACKAGES += system/library
AP 78 REQUIRED_PACKAGES += system/library/math